nix-config/nixos/configurations.nix
dadada 5b97801911
refactor outputs.nix
Splits everything into separate files.
2022-08-15 19:33:27 +02:00

107 lines
2.7 KiB
Nix

# TODO refactor adapterModule and redundant module config
{ self
, admins
, agenix
, nixpkgs
, home-manager
, homePage
, nixos-hardware
, nvd
, scripts
, recipemd
, secretsPath
, ...
}:
let
nixosSystem = nixpkgs.lib.nixosSystem;
agenixModule = agenix.nixosModule;
adapterModule = system: {
nixpkgs.config.allowUnfreePredicate = pkg: true;
nixpkgs.overlays =
(nixpkgs.lib.attrValues self.overlays)
++ [
(final: prev: { homePage = homePage.defaultPackage.${system}; })
(final: prev: { s = scripts; })
(final: prev: { n = nvd; })
(final: prev: { recipemd = recipemd.defaultPackage.${system}; })
];
};
lib = nixpkgs.lib;
in
{
gorgon = nixosSystem rec {
system = "x86_64-linux";
specialArgs = { inherit admins secretsPath; };
modules =
(nixpkgs.lib.attrValues self.nixosModules)
++ [
(adapterModule system)
agenixModule
nixos-hardware.nixosModules.lenovo-thinkpad-t14s-amd-gen1
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.sharedModules =
(nixpkgs.lib.attrValues self.hmModules)
++ [
{ manual.manpages.enable = false; }
];
home-manager.users.dadada = import ../home/home;
}
./modules/profiles/laptop.nix
./gorgon/configuration.nix
];
};
ifrit = nixosSystem rec {
system = "x86_64-linux";
specialArgs = { inherit admins secretsPath; };
modules =
(nixpkgs.lib.attrValues self.nixosModules)
++ [
agenixModule
(adapterModule system)
./modules/profiles/server.nix
./ifrit/configuration.nix
./ifrit/hardware-configuration.nix
];
};
surgat = nixosSystem rec {
system = "x86_64-linux";
specialArgs = { inherit admins secretsPath; };
modules =
(nixpkgs.lib.attrValues self.nixosModules)
++ [
(adapterModule system)
agenixModule
./modules/profiles/server.nix
./surgat/configuration.nix
];
};
pruflas = nixosSystem rec {
system = "x86_64-linux";
specialArgs = { inherit admins secretsPath; };
modules =
(nixpkgs.lib.attrValues self.nixosModules)
++ [
(adapterModule system)
agenixModule
./modules/profiles/laptop.nix
./pruflas/configuration.nix
];
};
agares = nixosSystem rec {
system = "x86_64-linux";
specialArgs = { inherit admins secretsPath; };
modules =
(nixpkgs.lib.attrValues self.nixosModules)
++ [
(adapterModule system)
agenixModule
./modules/profiles/server.nix
./agares/configuration.nix
];
};
}