-
Notifications
You must be signed in to change notification settings - Fork 0
/
profiles.nix
31 lines (30 loc) · 1.03 KB
/
profiles.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
_:
let
secretsDir = ./shared/server/secrets;
# function to generate nixosSystem profile
genProfile =
{ hostname
, home-manager ? false
, keys ? { }
}: { inherit hostname home-manager keys; };
in
{
profiles = {
workstations = [
(genProfile { hostname = "thinkpad-x1-carbon"; home-manager = true; })
(genProfile { hostname = "nuc-12"; home-manager = true; })
(genProfile { hostname = "9900x-desktop"; home-manager = true; })
];
servers = [
(genProfile { hostname = "mars"; })
(genProfile { hostname = "tailscale-gateway"; })
(genProfile { hostname = "sdwan-gateway"; })
(genProfile { hostname = "dns-resolver"; })
(genProfile { hostname = "felix"; keys = { inherit (import (secretsDir + "/atuin-server.nix")) "env" "server.toml"; }; })
(genProfile { hostname = "reverse-proxy"; keys = { inherit (import (secretsDir + "/caddy-server.nix")) "ecc_server.crt" "ecc_server.key"; }; })
];
microvms = [
(genProfile { hostname = "firecracker"; })
];
};
}