nix/nixos/default.nix

75 lines
1.7 KiB
Nix

{
inputs,
pkgs,
pkgs-stable,
attrs,
system,
...
}:
let
defaultModules = [
./configuration.nix
inputs.sops-nix.nixosModules.sops
inputs.nix-index-database.nixosModules.nix-index
# inputs.determinate.nixosModules.default # https://github.com/serokell/deploy-rs/issues/340
] ++ builtins.attrValues
(builtins.mapAttrs
(name: _: ./modules/${name})
(builtins.readDir ./modules));
in
{
t14 = inputs.nixpkgs.lib.nixosSystem {
inherit pkgs;
specialArgs = {
inherit inputs system attrs;
host = {
hostName = "t14";
inherit (attrs) username;
};
};
modules = defaultModules ++ [
./t14/configuration.nix
inputs.nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen1
];
};
consensus = inputs.nixpkgs-stable.lib.nixosSystem {
pkgs = pkgs-stable;
specialArgs = {
pkgs-unstable = pkgs;
inherit inputs system attrs;
host = {
hostName = "consensus";
inherit (attrs) username;
};
};
modules = defaultModules ++ [
./consensus/configuration.nix
];
};
zen = inputs.nixpkgs-stable.lib.nixosSystem {
pkgs = pkgs-stable;
specialArgs = {
inherit inputs system attrs;
host = {
hostName = "zen";
inherit (attrs) username;
};
};
modules = defaultModules ++ [
./zen/configuration.nix
];
};
oracle1 = inputs.nixpkgs-stable.lib.nixosSystem {
pkgs = pkgs-stable;
specialArgs = {
inherit inputs system attrs;
host = {
hostName = "oracle1";
inherit (attrs) username;
};
};
modules = defaultModules ++ [
./oracle/configuration.nix
];
};
}