131 lines
2.7 KiB
Nix
131 lines
2.7 KiB
Nix
|
|
{ config, pkgs, ... }:
|
|
|
|
{
|
|
|
|
fileSystems."/" =
|
|
{ device = "/dev/disk/by-partlabel/primary";
|
|
fsType = "btrfs";
|
|
};
|
|
|
|
fileSystems."/boot" =
|
|
{ device = "/dev/disk/by-partlabel/ESP";
|
|
fsType = "vfat";
|
|
};
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
# hardware
|
|
hardware.enableRedistributableFirmware = true;
|
|
|
|
# Bootloader
|
|
boot.loader.systemd-boot.enable = true;
|
|
boot.loader.efi.canTouchEfiVariables = true;
|
|
|
|
# Kernel
|
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
|
|
|
# Flakes
|
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
|
|
|
networking.networkmanager.enable = true;
|
|
|
|
# Set your time zone.
|
|
time.timeZone = "America/Los_Angeles";
|
|
|
|
# Select internationalisation properties.
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
|
|
i18n.extraLocaleSettings = {
|
|
LC_ADDRESS = "en_US.UTF-8";
|
|
LC_IDENTIFICATION = "en_US.UTF-8";
|
|
LC_MEASUREMENT = "en_US.UTF-8";
|
|
LC_MONETARY = "en_US.UTF-8";
|
|
LC_NAME = "en_US.UTF-8";
|
|
LC_NUMERIC = "en_US.UTF-8";
|
|
LC_PAPER = "en_US.UTF-8";
|
|
LC_TELEPHONE = "en_US.UTF-8";
|
|
LC_TIME = "en_US.UTF-8";
|
|
};
|
|
|
|
# Services
|
|
services.xserver.enable = true;
|
|
services.xserver.displayManager.gdm.enable = true;
|
|
services.xserver.desktopManager.gnome.enable = true;
|
|
services.xserver.displayManager.gdm.wayland = false;
|
|
services.xserver = {
|
|
layout = "us";
|
|
xkbVariant = "";
|
|
};
|
|
services.printing.enable = true;
|
|
|
|
# Enable sound with pipewire.
|
|
sound.enable = true;
|
|
hardware.pulseaudio.enable = false;
|
|
security.rtkit.enable = true;
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
alsa.support32Bit = true;
|
|
pulse.enable = true;
|
|
};
|
|
|
|
programs.java.enable = true;
|
|
|
|
# System packages
|
|
environment.systemPackages = with pkgs; [
|
|
git
|
|
curl
|
|
file
|
|
gdb
|
|
unar
|
|
lsof
|
|
pciutils
|
|
htop
|
|
sysstat
|
|
nmap
|
|
powertop
|
|
gnupg
|
|
p7zip
|
|
rsync
|
|
bumblebee
|
|
glxinfo
|
|
libgdiplus
|
|
gnome.gnome-tweaks
|
|
zerotierone
|
|
];
|
|
|
|
# Exclude gnome garbage
|
|
environment.gnome.excludePackages = (with pkgs; [
|
|
gnome-photos
|
|
gnome-tour
|
|
]) ++ (with pkgs.gnome; [
|
|
gnome-weather
|
|
cheese # webcam tool
|
|
gnome-music
|
|
gedit # text editor
|
|
epiphany # web browser
|
|
geary # email reader
|
|
evince # document viewer
|
|
gnome-characters
|
|
totem # video player
|
|
tali # poker game
|
|
iagno # go game
|
|
hitori # sudoku game
|
|
atomix # puzzle game
|
|
]);
|
|
services.xserver.excludePackages = [ pkgs.xterm ];
|
|
documentation.nixos.enable = false;
|
|
# GNUPG Stuff
|
|
services.pcscd.enable = true;
|
|
programs.gnupg.agent = {
|
|
enable = true;
|
|
pinentryFlavor = "gnome3";
|
|
enableSSHSupport = true;
|
|
};
|
|
|
|
services.openssh.enable = true;
|
|
|
|
system.stateVersion = "23.05";
|
|
|
|
}
|