{ config, lib, pkgs, modulesPath, ... }: { imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "sd_mod" "btrfs" ]; boot.initrd.kernelModules = [ "btrfs" ]; boot.kernelModules = [ "kvm-intel" "btrfs" ]; boot.extraModulePackages = [ ]; boot.supportedFilesystems = [ "btrfs" ]; fileSystems."/" = { device = "/dev/disk/by-label/BUTTER"; fsType = "btrfs"; options = [ "compress=zstd" "subvol=root" ]; }; # fileSystems."/home" = { # device = "/dev/disk/by-label/BUTTER"; # fsType = "btrfs"; # options = [ "compress=zstd" "subvol=home" ]; # }; fileSystems."/nix" = { # device = "/dev/disk/by-uuid/3c89fa92-1d43-4c48-b228-e2725fa70ee9"; device = "/dev/disk/by-label/BUTTER"; fsType = "btrfs"; options = [ "compress=zstd" "noatime" "subvol=nix" ]; }; # fileSystems."/swap" = { # device = "/dev/disk/by-label/BUTTER"; # fsType = "btrfs"; # options = [ "noatime" "subvol=swap" ]; # }; fileSystems."/persistent" = { device = "/dev/disk/by-label/BUTTER"; fsType = "btrfs"; neededForBoot = true; options = [ "compress=zstd" "subvol=persist" ]; }; fileSystems."/boot" = { device = "/dev/disk/by-label/BOOT"; fsType = "vfat"; options = [ "fmask=0077" "dmask=0077" ]; }; # fileSystems = { # "/".options = [ "compress=zstd" ]; # "/home".options = [ "compress=zstd" ]; # "/persist".options = [ "compress=zstd" ]; # "/nix".options = [ "compress=zstd" "noatime" ]; # "/swap".options = [ "noatime" ]; # }; # swapDevices = [ # { device = "/swap/swapfile"; } # ]; # Enable OpenGL hardware.graphics = { enable = true; }; # Load nvidia driver for Xorg and Wayland services.xserver.videoDrivers = [ "nvidia" ]; hardware.nvidia = { # Modesetting is required. modesetting.enable = true; # Nvidia power management. Experimental, and can cause sleep/suspend to fail. # Enable this if you have graphical corruption issues or application crashes after waking # up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead # of just the bare essentials. powerManagement.enable = false; # Fine-grained power management. Turns off GPU when not in use. # Experimental and only works on modern Nvidia GPUs (Turing or newer). powerManagement.finegrained = false; # Use the NVidia open source kernel module (not to be confused with the # independent third-party "nouveau" open source driver). # Support is limited to the Turing and later architectures. Full list of # supported GPUs is at: # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus # Only available from driver 515.43.04+ open = false; # Enable the Nvidia settings menu, # accessible via `nvidia-settings`. nvidiaSettings = true; # Optionally, you may need to select the appropriate driver version for your specific GPU. package = config.boot.kernelPackages.nvidiaPackages.stable; }; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = false; # boot.loader.efiInstallAsRemovable = true; networking.networkmanager.enable = true; hardware.bluetooth.enable = true; hardware.bluetooth.powerOnBoot = true; # Fine since it's not a laptop. system.stateVersion = "25.11"; # No touchy }