2023-08-01 19:48:37 +01:00
|
|
|
{
|
|
|
|
tree,
|
|
|
|
lib,
|
|
|
|
...
|
2023-09-18 03:56:58 +01:00
|
|
|
}: let
|
|
|
|
inherit (lib.lists) forEach;
|
|
|
|
in {
|
2023-09-13 16:21:54 +01:00
|
|
|
imports = with tree;
|
|
|
|
[
|
2023-09-18 03:56:58 +01:00
|
|
|
presets.nixos.serverBase
|
|
|
|
presets.nixos.serverHetzner
|
2022-12-15 14:33:39 +00:00
|
|
|
|
2023-09-13 16:21:54 +01:00
|
|
|
profiles.nginx
|
2023-09-18 03:56:58 +01:00
|
|
|
profiles.firewallAllow.httpCommon
|
|
|
|
|
2023-09-14 19:44:27 +01:00
|
|
|
profiles.cross.arm64
|
2023-09-18 03:56:58 +01:00
|
|
|
profiles.chaosInternalWireGuard
|
2021-12-28 21:42:46 +00:00
|
|
|
|
2023-09-13 16:21:54 +01:00
|
|
|
./hardware.nix
|
|
|
|
./secrets.nix
|
|
|
|
]
|
2023-09-18 03:56:58 +01:00
|
|
|
++ (forEach [
|
2023-09-13 16:21:54 +01:00
|
|
|
"social"
|
2023-09-14 13:54:56 +01:00
|
|
|
"storage"
|
2023-09-13 16:21:54 +01:00
|
|
|
"music"
|
|
|
|
"quassel"
|
2023-09-19 17:53:44 +01:00
|
|
|
"piped-fi"
|
2023-09-13 16:21:54 +01:00
|
|
|
"mail"
|
|
|
|
] (name: ./containers + "/${name}"))
|
|
|
|
++ (with hosts.hetzner-vm.profiles; [
|
2023-09-18 03:56:58 +01:00
|
|
|
vaultUI
|
|
|
|
gitlabStaticSites
|
2023-09-13 16:21:54 +01:00
|
|
|
]);
|
2021-12-28 15:09:51 +00:00
|
|
|
|
2022-12-20 15:28:31 +00:00
|
|
|
# For Containers
|
|
|
|
networking.nat = {
|
|
|
|
enable = true;
|
|
|
|
internalInterfaces = ["ve-+"];
|
2023-09-20 16:18:44 +01:00
|
|
|
externalInterface = "enp1s0";
|
2022-12-20 15:28:31 +00:00
|
|
|
};
|
|
|
|
|
2021-12-28 15:09:51 +00:00
|
|
|
networking.hostName = "hetzner-vm";
|
|
|
|
|
2023-09-18 03:56:58 +01:00
|
|
|
home-manager.users.root.home.stateVersion = "23.05";
|
2023-09-11 23:22:18 +01:00
|
|
|
system.stateVersion = "23.05";
|
2021-12-28 15:09:51 +00:00
|
|
|
}
|