{ pkgs, lib, ... }: { boot = { extraModulePackages = []; kernelModules = ["kvm-amd"]; kernelPackages = pkgs.linuxPackages_latest; kernelParams = ["nohibernate"]; supportedFilesystems = lib.mkForce ["btrfs" "vfat" "f2fs" "zfs"]; zfs.devNodes = "/dev/"; # Initrd config initrd = { availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod"]; supportedFilesystems = ["btrfs" "vfat" "f2fs" "zfs"]; kernelModules = []; }; # Systemd-boot config loader = { systemd-boot.enable = true; systemd-boot.configurationLimit = 5; efi = { canTouchEfiVariables = true; efiSysMountPoint = "/boot/efi"; }; }; # ZFS Config # I use ZFS as my bulk data storage # zfs = { # enabled = true; # }; }; # ZFS mount stuff services.udev.extraRules = '' 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" ''; }