configuration.nix/nixos/configs/default.nix

61 lines
2.2 KiB
Nix
Raw Normal View History

toplevel@{ inputs, withSystem, ... }:
let
system = "x86_64-linux";
2024-07-05 20:03:30 +02:00
nixosModules = toplevel.config.flake.nixosModules;
2024-07-06 13:07:59 +02:00
hardwareConfigurations = {
2024-07-06 13:11:49 +02:00
nova = { lib, modulesPath, ... }: {
2024-07-06 13:07:59 +02:00
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot = {
initrd = {
availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ];
kernelModules = [ ];
luks.devices."nixos".device = "/dev/disk/by-uuid/712dd8ba-d5b4-438a-9a77-663b8c935cfe";
};
kernelModules = [ "kvm-intel" ];
extraModulePackages = [ ];
};
fileSystems = {
"/" = { device = "/dev/disk/by-uuid/47536cbe-7265-493b-a2e3-bbd376a6f9af"; fsType = "btrfs"; };
2024-07-06 16:52:29 +02:00
"/boot" = { device = "/dev/disk/by-uuid/4C3C-993A"; fsType = "vfat"; };
2024-07-06 13:07:59 +02:00
};
swapDevices = [ ];
networking.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
2024-07-06 13:11:49 +02:00
hardware.cpu.intel.updateMicrocode = lib.mkForce false;
2024-07-06 13:07:59 +02:00
};
};
2024-07-06 22:58:14 +02:00
essential = [ hardwareConfigurations.nova inputs.hosts.nixosModule ] ++ (with nixosModules; [ grub base sound wayland security ivand wireless wireguard ]);
in
{
2024-07-04 08:38:33 +02:00
flake.nixosConfigurations = {
2024-07-06 22:58:14 +02:00
nixos = withSystem system (ctx@{ config, inputs', ... }: inputs.nixpkgs.lib.nixosSystem {
specialArgs = {
inherit inputs inputs';
packages = config.packages;
};
modules = essential;
});
music = withSystem system (ctx@{ config, inputs', ... }: inputs.nixpkgs.lib.nixosSystem {
specialArgs = {
inherit inputs inputs';
packages = config.packages;
};
2024-07-11 10:17:40 +02:00
modules = essential ++ [ inputs.musnix.nixosModules.musnix nixosModules.music ];
2024-07-06 22:58:14 +02:00
});
nonya = withSystem system (ctx@{ config, inputs', ... }: inputs.nixpkgs.lib.nixosSystem {
specialArgs = {
inherit inputs inputs';
packages = config.packages;
};
modules = essential ++ [ nixosModules.nonya ];
});
2024-07-11 10:17:40 +02:00
ai = withSystem system (ctx@{ config, inputs', ... }: inputs.nixpkgs.lib.nixosSystem {
specialArgs = {
inherit inputs inputs';
packages = config.packages;
};
modules = essential ++ [ nixosModules.ai ];
});
2024-07-04 08:38:33 +02:00
};
}