{ pkgs, lib, config, machine, ... }: { hardware.cpu.intel.updateMicrocode = true; nix = { # Too CPU hungry for the DL10J, for too little Mio saved autoOptimiseStore = false; maxJobs = machine.CPUs; }; powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand"; # https://insanity.industries/post/sata-power-consumption/ services.udev.extraRules = '' SUBSYSTEM=="scsi_host", KERNEL=="host*", ATTR{link_power_management_policy}="med_power_with_dipm" ''; boot.loader = { grub = { enable = true; version = 2; copyKernels = true; configurationLimit = 9; efiSupport = true; # Because canTouchEfiVariables doesn't work on this system efiInstallAsRemovable = true; devices = [ # Completed in the importing configuration ]; /* mirroredBoots = [ { devices = [ "${disk_id}" ]; path = "/boot${bootnum}"; } ]; */ }; efi = { canTouchEfiVariables = false; efiSysMountPoint = "/boot/efi"; }; }; boot.initrd = { availableKernelModules = [ "ahci" "ehci_pci" # useless ? "i2c_i801" # SMBus "mei_me" # Communication controller "nvme" # NVME M.2 disk #"rtl8188ee" # Wireless "rtsx_usb_sdmmc" # SD card #"snd_hda_intel" # Audio "uas" # USB storage "xhci_hcd" # USB #"i915" # VGA "igb" # Ethernet # Make the AES modules available at initrd, # to speedup the deciphering of the root. #"aes_x86_64" "aesni_intel" "cryptd" ]; kernelModules = [ "igb" # Ethernet "nvme" # NVME M.2 disk "rtsx_usb_sdmmc" # SD card ]; }; boot.kernelModules = [ ]; boot.extraModulePackages = [ ]; boot.kernelParams = [ "gfxpayload=text" "console=ttyS0,115200n8" "console=ttyS1,115200n8" "console=tty0" ]; # rtlwifi/rtl8188efw.bin hardware.enableRedistributableFirmware = true; environment.systemPackages = with pkgs; [ pciutils nvme-cli ]; }