My Nix Configuration
1{ pkgs, ... }: 2let 3 fileSystems = { 4 btrfs = true; 5 ext4 = true; 6 vfat = true; 7 zfs = true; 8 }; 9in 10{ 11 boot = { 12 extraModulePackages = [ ]; 13 kernelModules = [ "kvm-amd" ]; 14 kernelPackages = pkgs.linuxPackages_6_1; 15 kernelParams = [ "nohibernate" ]; 16 supportedFilesystems = fileSystems; 17 zfs.devNodes = "/dev/"; 18 19 # Initrd config 20 initrd = { 21 availableKernelModules = [ 22 "xhci_pci" 23 "ahci" 24 "nvme" 25 "usbhid" 26 "usb_storage" 27 "sd_mod" 28 ]; 29 supportedFilesystems = fileSystems; 30 kernelModules = [ ]; 31 }; 32 33 # Systemd-boot config 34 loader = { 35 systemd-boot.enable = true; 36 systemd-boot.configurationLimit = 5; 37 efi = { 38 canTouchEfiVariables = true; 39 efiSysMountPoint = "/boot/efi"; 40 }; 41 }; 42 43 kernel.sysctl = { 44 "net.ipv4.ip_forward" = 1; 45 "net.ipv6.conf.all.forwarding" = 1; 46 }; 47 48 # ZFS Config 49 # I use ZFS as my bulk data storage 50 # zfs = { 51 # enabled = true; 52 # }; 53 }; 54 # ZFS mount stuff 55 services.udev.extraRules = '' 56 ACTION=="add|change", KERNEL=="sd[a-z]*[0-9]*|mmcblk[0-9]*p[0-9]*|nvme[0-9]*n[0-9]*p[0-9]*", ENV{ID_FS_TYPE}=="zfs_member", ATTR{../queue/scheduler}="none" 57 ''; 58}