forked from kalipso/infrastructure
[nix] generate hosts
This commit is contained in:
@@ -95,104 +95,117 @@ let
|
|||||||
] ++ defaultModules ++ modules;
|
] ++ defaultModules ++ modules;
|
||||||
|
|
||||||
inputsMod = inputs // { malobeo = self; };
|
inputsMod = inputs // { malobeo = self; };
|
||||||
|
|
||||||
|
hosts = import ./modules/host_builer.nix {};
|
||||||
in
|
in
|
||||||
{
|
builtins.mapAttrs (host: settings: nixosSystem {
|
||||||
louise = nixosSystem {
|
system = if (settings.type == "rpi") then "aarch64-linux" else "x86_64-linux";
|
||||||
system = "x86_64-linux";
|
|
||||||
specialArgs.inputs = inputs;
|
specialArgs.inputs = inputs;
|
||||||
modules = defaultModules ++ [
|
modules = (if (settings.type != "microvm") then
|
||||||
./louise/configuration.nix
|
defaultModules ++ [ ./${host}/configuration.nix ]
|
||||||
];
|
else
|
||||||
};
|
makeMicroVM "${host}" "${settings.network.address}" "${settings.network.mac}" [
|
||||||
|
./${host}/configuration.nix
|
||||||
bakunin = nixosSystem {
|
]);
|
||||||
system = "x86_64-linux";
|
}) hosts.malobeo.hosts //
|
||||||
specialArgs.inputs = inputs;
|
{
|
||||||
modules = defaultModules ++ [
|
testvm = nixosSystem {
|
||||||
./bakunin/configuration.nix
|
system = "x86_64-linux";
|
||||||
inputs.disko.nixosModules.disko
|
specialArgs.inputs = inputs;
|
||||||
];
|
specialArgs.self = self;
|
||||||
};
|
modules = defaultModules ++ [ ./testvm ];
|
||||||
|
};
|
||||||
lucia = nixosSystem {
|
}
|
||||||
system = "aarch64-linux";
|
#{
|
||||||
specialArgs.inputs = inputs;
|
# louise = nixosSystem {
|
||||||
modules = defaultModules ++ [
|
# system = "x86_64-linux";
|
||||||
./lucia/configuration.nix
|
# specialArgs.inputs = inputs;
|
||||||
./lucia/hardware_configuration.nix
|
# modules = defaultModules ++ [
|
||||||
];
|
# ./louise/configuration.nix
|
||||||
};
|
# ];
|
||||||
|
# };
|
||||||
fanny = nixosSystem {
|
#
|
||||||
system = "x86_64-linux";
|
# bakunin = nixosSystem {
|
||||||
specialArgs.inputs = inputsMod;
|
# system = "x86_64-linux";
|
||||||
modules = defaultModules ++ [
|
# specialArgs.inputs = inputs;
|
||||||
self.nixosModules.malobeo.vpn
|
# modules = defaultModules ++ [
|
||||||
./fanny/configuration.nix
|
# ./bakunin/configuration.nix
|
||||||
];
|
# inputs.disko.nixosModules.disko
|
||||||
};
|
# ];
|
||||||
|
# };
|
||||||
durruti = nixosSystem {
|
#
|
||||||
system = "x86_64-linux";
|
# lucia = nixosSystem {
|
||||||
specialArgs.inputs = inputs;
|
# system = "aarch64-linux";
|
||||||
specialArgs.self = self;
|
# specialArgs.inputs = inputs;
|
||||||
modules = makeMicroVM "durruti" "10.0.0.5" "52:DA:0D:F9:EF:F9" [
|
# modules = defaultModules ++ [
|
||||||
./durruti/configuration.nix
|
# ./lucia/configuration.nix
|
||||||
];
|
# ./lucia/hardware_configuration.nix
|
||||||
};
|
# ];
|
||||||
|
# };
|
||||||
vpn = nixosSystem {
|
#
|
||||||
system = "x86_64-linux";
|
# fanny = nixosSystem {
|
||||||
specialArgs.inputs = inputs;
|
# system = "x86_64-linux";
|
||||||
specialArgs.self = self;
|
# specialArgs.inputs = inputsMod;
|
||||||
modules = makeMicroVM "vpn" "10.0.0.10" "D0:E5:CA:F0:D7:E6" [
|
# modules = defaultModules ++ [
|
||||||
self.nixosModules.malobeo.vpn
|
# self.nixosModules.malobeo.vpn
|
||||||
./vpn/configuration.nix
|
# ./fanny/configuration.nix
|
||||||
];
|
# ];
|
||||||
};
|
# };
|
||||||
|
#
|
||||||
infradocs = nixosSystem {
|
# durruti = nixosSystem {
|
||||||
system = "x86_64-linux";
|
# system = "x86_64-linux";
|
||||||
specialArgs.inputs = inputs;
|
# specialArgs.inputs = inputs;
|
||||||
specialArgs.self = self;
|
# specialArgs.self = self;
|
||||||
modules = makeMicroVM "infradocs" "10.0.0.11" "D0:E5:CA:F0:D7:E7" [
|
# modules = makeMicroVM "durruti" "10.0.0.5" "52:DA:0D:F9:EF:F9" [
|
||||||
self.nixosModules.malobeo.vpn
|
# ./durruti/configuration.nix
|
||||||
./infradocs/configuration.nix
|
# ];
|
||||||
];
|
# };
|
||||||
};
|
#
|
||||||
|
# vpn = nixosSystem {
|
||||||
uptimekuma = nixosSystem {
|
# system = "x86_64-linux";
|
||||||
system = "x86_64-linux";
|
# specialArgs.inputs = inputs;
|
||||||
specialArgs.inputs = inputs;
|
# specialArgs.self = self;
|
||||||
specialArgs.self = self;
|
# modules = makeMicroVM "vpn" "10.0.0.10" "D0:E5:CA:F0:D7:E6" [
|
||||||
modules = makeMicroVM "uptimekuma" "10.0.0.12" "D0:E5:CA:F0:D7:E8" [
|
# self.nixosModules.malobeo.vpn
|
||||||
./uptimekuma/configuration.nix
|
# ./vpn/configuration.nix
|
||||||
];
|
# ];
|
||||||
};
|
# };
|
||||||
|
#
|
||||||
nextcloud = nixosSystem {
|
# infradocs = nixosSystem {
|
||||||
system = "x86_64-linux";
|
# system = "x86_64-linux";
|
||||||
specialArgs.inputs = inputs;
|
# specialArgs.inputs = inputs;
|
||||||
specialArgs.self = self;
|
# specialArgs.self = self;
|
||||||
modules = makeMicroVM "nextcloud" "10.0.0.13" "D0:E5:CA:F0:D7:E9" [
|
# modules = makeMicroVM "infradocs" "10.0.0.11" "D0:E5:CA:F0:D7:E7" [
|
||||||
./nextcloud/configuration.nix
|
# self.nixosModules.malobeo.vpn
|
||||||
];
|
# ./infradocs/configuration.nix
|
||||||
};
|
# ];
|
||||||
|
# };
|
||||||
overwatch = nixosSystem {
|
#
|
||||||
system = "x86_64-linux";
|
# uptimekuma = nixosSystem {
|
||||||
specialArgs.inputs = inputs;
|
# system = "x86_64-linux";
|
||||||
specialArgs.self = self;
|
# specialArgs.inputs = inputs;
|
||||||
modules = makeMicroVM "overwatch" "10.0.0.14" "D0:E5:CA:F0:D7:E0" [
|
# specialArgs.self = self;
|
||||||
./overwatch/configuration.nix
|
# modules = makeMicroVM "uptimekuma" "10.0.0.12" "D0:E5:CA:F0:D7:E8" [
|
||||||
];
|
# ./uptimekuma/configuration.nix
|
||||||
};
|
# ];
|
||||||
|
# };
|
||||||
testvm = nixosSystem {
|
#
|
||||||
system = "x86_64-linux";
|
# nextcloud = nixosSystem {
|
||||||
specialArgs.inputs = inputs;
|
# system = "x86_64-linux";
|
||||||
specialArgs.self = self;
|
# specialArgs.inputs = inputs;
|
||||||
modules = defaultModules ++ [ ./testvm ];
|
# specialArgs.self = self;
|
||||||
};
|
# modules = makeMicroVM "nextcloud" "10.0.0.13" "D0:E5:CA:F0:D7:E9" [
|
||||||
|
# ./nextcloud/configuration.nix
|
||||||
}
|
# ];
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
# overwatch = nixosSystem {
|
||||||
|
# system = "x86_64-linux";
|
||||||
|
# specialArgs.inputs = inputs;
|
||||||
|
# specialArgs.self = self;
|
||||||
|
# modules = makeMicroVM "overwatch" "10.0.0.14" "D0:E5:CA:F0:D7:E0" [
|
||||||
|
# ./overwatch/configuration.nix
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
#}
|
||||||
|
|||||||
Reference in New Issue
Block a user