{ nixos-hardware, ... }: let config = name: system: additional: { inherit name; value = { inherit system; modules = [ { networking.hostName = name; nixpkgs.hostPlatform = system; } ] ++ additional; }; }; filesystem = fsType: path: device: options: { fileSystems.${path} = { inherit device fsType; } // (if options == null then { } else { inherit options; }); }; fs.mergerfs = filesystem "fuse.mergerfs"; fs.btrfs = filesystem "btrfs"; fs.ext4 = filesystem "ext4"; fs.vfat = filesystem "vfat"; swap = device: { swapDevices = [ { inherit device; } ]; }; cpu = brand: { hardware.cpu.${brand}.updateMicrocode = true; }; qemu = { modulesPath, ... }: { imports = [ "${modulesPath}/profiles/qemu-guest.nix" ]; }; in { universal.modules = [ ( { pkgs, lib, ... }: { environment.systemPackages = with pkgs; [ mergerfs ]; hardware.enableRedistributableFirmware = true; networking.useDHCP = lib.mkDefault true; } ) ]; personal.modules = [ { services.fwupd.enable = true; } ]; } // builtins.listToAttrs [ (config "capsaicin" "x86_64-linux" [ (cpu "intel") (fs.btrfs "/" "/dev/disk/by-uuid/a1a32f8b-847c-4349-8743-05d25950db1d" null) (fs.btrfs "/mnt/hdd1tb" "/dev/disk/by-uuid/1b1451cd-89ce-4daa-afdb-37ceecbb9484" null) (fs.ext4 "/mnt/hdd500gb" "/dev/disk/by-uuid/d7a35003-4b60-4a5e-b87a-af7c18eefe04" null) (fs.vfat "/boot" "/dev/disk/by-uuid/5C2E-B6F1" null) (swap "/dev/disk/by-uuid/16f09a9c-74ef-4a32-b9c0-d3948d76f3a0") { boot.loader.systemd-boot.enable = true; zramSwap.enable = true; boot.initrd.kernelModules = [ ]; boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "sd_mod" ]; boot.kernelModules = [ "usbmon" "v4l2loopback" ]; boot.extraModulePackages = [ ]; } ]) (config "menthol" "x86_64-linux" [ (cpu "intel") (fs.btrfs "/" "/dev/disk/by-uuid/1a254d99-6480-4557-b3e8-e8ee745f5832" null) (swap "/dev/disk/by-uuid/455a7c78-fdc3-4dbb-b9f2-9518d960191b") { boot.loader.grub.enable = true; boot.loader.grub.device = "/dev/sda"; boot.initrd.kernelModules = [ ]; boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "sd_mod" "rtsx_pci_sdmmc" ]; boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [ ]; } ]) (config "glucose" "x86_64-linux" [ (cpu "intel") (fs.btrfs "/" "/dev/disk/by-uuid/abbb549e-19b4-4855-b3c7-0b81ab784b74" null) (swap "/dev/disk/by-uuid/dc948ee6-94fb-49b2-94d4-317aa41f1a9d") { boot.loader.grub.enable = true; boot.loader.grub.device = "/dev/sda"; boot.initrd.kernelModules = [ ]; boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "sd_mod" ]; boot.kernelModules = [ ]; boot.extraModulePackages = [ ]; } ]) (config "fructose" "x86_64-linux" [ (cpu "intel") (fs.btrfs "/" "/dev/disk/by-uuid/e1b611e6-485f-4c2e-81fa-2fbcb3a7f1ba" null) (swap "/dev/disk/by-uuid/83c561a1-08b9-4b48-bdfc-102098fd2059") { boot.loader.grub.enable = true; boot.loader.grub.device = "/dev/sda"; boot.initrd.kernelModules = [ ]; boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "sd_mod" ]; boot.kernelModules = [ ]; boot.extraModulePackages = [ ]; } ]) (config "aspartame" "x86_64-linux" [ qemu (fs.ext4 "/" "/dev/disk/by-uuid/2def7bee-b1e3-49ea-b46c-33f272aaa5b2" null) { boot.tmp.cleanOnBoot = true; zramSwap.enable = true; boot.loader.grub.device = "/dev/sda"; boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" ]; boot.initrd.kernelModules = [ ]; } ]) ]