nixfiles/hosts/hetzner-arm/hetzner-arm.nix

52 lines
926 B
Nix

{
tree,
lib,
...
}: let
inherit (lib.lists) forEach;
in {
imports = with tree;
[
presets.nixos.serverBase
presets.nixos.serverHetzner
presets.nixos.serverEncryptedDrive
profiles.nginx
profiles.firewallAllow.httpCommon
profiles.chaosInternalWireGuard
./hardware.nix
./secrets.nix
]
++ (forEach [
"social"
"storage"
"music"
"quassel"
"postgresql"
"mail"
"forgejo"
"caldav"
"owncast"
"jellyfin"
"grocy"
"rss"
] (name: ./containers + "/${name}"))
++ (with hosts.hetzner-arm.profiles; [
staticSites
]);
# For Containers
networking.nat = {
enable = true;
internalInterfaces = ["ve-+"];
externalInterface = "enp1s0";
};
networking.hostName = "hetzner-arm";
home-manager.users.root.home.stateVersion = "23.05";
system.stateVersion = "23.05";
}