2025-02-03 07:55:17 +01:00
|
|
|
{
|
|
|
|
|
inputs,
|
|
|
|
|
withSystem,
|
|
|
|
|
...
|
2025-12-13 21:41:52 +01:00
|
|
|
}: let
|
2025-02-03 07:55:17 +01:00
|
|
|
mkSystem = {
|
2025-12-13 21:41:52 +01:00
|
|
|
host,
|
2025-02-03 07:55:17 +01:00
|
|
|
modules ? [],
|
2025-02-18 20:17:57 +01:00
|
|
|
system ? "x86_64-linux",
|
2025-02-03 07:55:17 +01:00
|
|
|
}:
|
2025-02-18 20:17:57 +01:00
|
|
|
withSystem system (
|
|
|
|
|
{system, ...}: let
|
|
|
|
|
pkgsUnstable = import inputs.nixpkgs-unstable {
|
|
|
|
|
inherit system;
|
|
|
|
|
config.allowUnfree = true;
|
|
|
|
|
};
|
|
|
|
|
in
|
2025-02-03 07:55:17 +01:00
|
|
|
inputs.nixpkgs.lib.nixosSystem {
|
|
|
|
|
inherit system;
|
2025-12-13 21:41:52 +01:00
|
|
|
specialArgs = {inherit inputs pkgsUnstable;};
|
2025-02-03 07:55:17 +01:00
|
|
|
modules =
|
|
|
|
|
[
|
|
|
|
|
inputs.disko.nixosModules.disko
|
2025-02-18 20:17:57 +01:00
|
|
|
inputs.nixos-generators.nixosModules.all-formats
|
2025-02-03 07:55:17 +01:00
|
|
|
inputs.home-manager.nixosModules.home-manager
|
|
|
|
|
inputs.agenix.nixosModules.default
|
|
|
|
|
inputs.agenix-rekey.nixosModules.default
|
2025-02-20 00:02:02 +01:00
|
|
|
inputs.nix-index-database.nixosModules.nix-index
|
2025-02-18 20:17:57 +01:00
|
|
|
inputs.nixos-facter-modules.nixosModules.facter
|
2025-12-12 03:38:32 +01:00
|
|
|
inputs.dankMaterialShell.nixosModules.dankMaterialShell
|
2025-04-27 23:58:02 +02:00
|
|
|
inputs.niri.nixosModules.niri
|
2025-12-13 21:09:32 +01:00
|
|
|
inputs.determinate.nixosModules.default
|
2025-12-14 01:55:30 +01:00
|
|
|
inputs.nixos-wsl.nixosModules.default
|
2025-05-20 20:05:23 +02:00
|
|
|
../modules/base
|
2025-12-12 04:17:02 +01:00
|
|
|
../modules/system
|
2025-05-20 20:05:23 +02:00
|
|
|
../modules/programs
|
2025-12-12 04:02:55 +01:00
|
|
|
../modules/desktop
|
2025-12-12 04:30:57 +01:00
|
|
|
../modules/homelab
|
2025-12-13 21:41:52 +01:00
|
|
|
host
|
2025-02-03 07:55:17 +01:00
|
|
|
]
|
2025-12-13 21:41:52 +01:00
|
|
|
++ modules;
|
2025-02-03 07:55:17 +01:00
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
in {
|
2025-02-18 20:17:57 +01:00
|
|
|
config.flake.nixosConfigurations = {
|
2025-12-13 21:41:52 +01:00
|
|
|
laptop = mkSystem {host = ./laptop;};
|
|
|
|
|
desktop = mkSystem {host = ./desktop;};
|
|
|
|
|
work = mkSystem {host = ./work;};
|
|
|
|
|
homelab = mkSystem {host = ./homelab;};
|
|
|
|
|
bootstrap = mkSystem {host = ./bootstrap;};
|
2025-12-14 01:55:30 +01:00
|
|
|
desktop-wsl = mkSystem {host = ./desktop-wsl;};
|
2025-02-03 07:55:17 +01:00
|
|
|
};
|
|
|
|
|
}
|