created mkHost and mkHomeConfiguration

This commit is contained in:
William 2026-02-19 08:08:27 -03:00
parent 1f9812fea0
commit d51f6f14db
8 changed files with 178 additions and 191 deletions

View file

@ -1,33 +1,19 @@
{ inputs, lib, ... }:
{ inputs, ... }:
let
mkHost = inputs.self.lib.mkHost;
in
{
flake.nixosConfigurations.alexandria = inputs.nixpkgs-stable.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
inputs.agenix.nixosModules.default
{ networking.hostName = "alexandria"; }
{
nixpkgs.overlays = [
inputs.agenix.overlays.default
inputs.self.overlays.default
];
}
((inputs.import-tree.initFilter (p: lib.hasSuffix ".nix" p)) ./_alexandria)
]
++ (with inputs.self.modules.nixos; [
# system aspects
base
cli
flake.nixosConfigurations.alexandria = mkHost {
hostname = "alexandria";
nixpkgs = inputs.nixpkgs-stable;
extraModules = with inputs.self.modules.nixos; [
# base aspects
server
# user aspects
user
root
# other aspects
fwupd
libvirtd
]);
];
};
}

View file

@ -1,34 +1,17 @@
{ inputs, lib, ... }:
{ inputs, ... }:
let
mkHost = inputs.self.lib.mkHost;
in
{
flake.nixosConfigurations.io = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
inputs.agenix.nixosModules.default
{ networking.hostName = "io"; }
{
nixpkgs.overlays = [
inputs.agenix.overlays.default
inputs.self.overlays.default
];
}
((inputs.import-tree.initFilter (p: lib.hasSuffix ".nix" p)) ./_io)
(inputs.self.factory.ephemeral {
rootDevice = "/dev/mapper/cryptroot";
})
]
++ (with inputs.self.modules.nixos; [
# system aspects
base
cli
flake.nixosConfigurations.io = mkHost {
hostname = "io";
ephemeralRootDev = "/dev/mapper/cryptroot";
extraModules = with inputs.self.modules.nixos; [
# base aspects
desktop
# user aspects
user
root
# Other aspects
# other aspects
ai
bluetooth
dev
@ -36,6 +19,6 @@
networkmanager
niri
podman
]);
];
};
}

View file

@ -1,34 +1,17 @@
{ inputs, lib, ... }:
{ inputs, ... }:
let
mkHost = inputs.self.lib.mkHost;
in
{
flake.nixosConfigurations.rotterdam = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
inputs.agenix.nixosModules.default
{ networking.hostName = "rotterdam"; }
{
nixpkgs.overlays = [
inputs.agenix.overlays.default
inputs.self.overlays.default
];
}
((inputs.import-tree.initFilter (p: lib.hasSuffix ".nix" p)) ./_rotterdam)
(inputs.self.factory.ephemeral {
rootDevice = "/dev/mapper/cryptroot";
})
]
++ (with inputs.self.modules.nixos; [
# system aspects
base
cli
flake.nixosConfigurations.rotterdam = mkHost {
hostname = "rotterdam";
ephemeralRootDev = "/dev/mapper/cryptroot";
extraModules = with inputs.self.modules.nixos; [
# base aspects
desktop
gaming
# user aspects
user
root
# other aspects
ai
bluetooth
@ -38,6 +21,6 @@
networkmanager
niri
podman
]);
];
};
}

View file

@ -1,31 +1,18 @@
{ inputs, lib, ... }:
{
flake.nixosConfigurations.trantor = inputs.nixpkgs-stable.lib.nixosSystem {
system = "aarch64-linux";
specialArgs = { inherit inputs; };
modules = [
inputs.agenix.nixosModules.default
{ networking.hostName = "trantor"; }
{
nixpkgs.overlays = [
inputs.agenix.overlays.default
inputs.self.overlays.default
];
}
((inputs.import-tree.initFilter (p: lib.hasSuffix ".nix" p)) ./_trantor)
(inputs.self.factory.ephemeral {
rootDevice = "/dev/disk/by-id/scsi-360b207ed25d84372a95d1ecf842f8e20-part2";
})
]
++ (with inputs.self.modules.nixos; [
# system aspects
base
cli
server
{ inputs, ... }:
# user aspects
user
root
]);
let
mkHost = inputs.self.lib.mkHost;
in
{
flake.nixosConfigurations.trantor = mkHost {
hostname = "trantor";
system = "aarch64-linux";
nixpkgs = inputs.nixpkgs-stable;
ephemeralRootDev = "/dev/disk/by-id/scsi-360b207ed25d84372a95d1ecf842f8e20-part2";
extraModules = with inputs.self.modules.nixos; [
# base aspects
server
];
};
}