Setup mail server and restructure some things

This commit is contained in:
fi 2023-09-14 14:43:49 +02:00
parent 4c382e629d
commit ba93d164cf
Signed by: fi
SSH key fingerprint: SHA256:d+6fQoDPMbSFK95zRVflRKZLRKF4cPSQb7VIxYkhFsA
90 changed files with 512 additions and 66 deletions

View file

@ -3,66 +3,90 @@ let
# Set of environment specific modules
environments = {
"proxmox" = [
./configuration/proxmox-vm
];
./config/environments/proxmox-vm
];
};
generateDefaults = hosts: builtins.mapAttrs (name: {
hostNixpkgs ? nixpkgs,
system ? "x86_64-linux",
# pkgs is explicitly defined so that overlays for each host can easily be created
pkgs ? hostNixpkgs.legacyPackages.${system},
environment ? "proxmox",
environment ? "",
site
}: {
inherit hostNixpkgs system pkgs environment site;
# define common and host modules and additionally add environment specific modules
modules = [
./configuration/common
./hosts/${name}
] ++ environments.${environment};
./config/common
./config/hosts/${name}
] ++ (if environment != "" then environments.${environment} else []);
}) hosts;
in
generateDefaults {
#fee = {
# site = "wg";
# environment = "bare-metal";
#};
hydra = {
site = "vs";
environment = "proxmox";
};
iperf = {
site = "vs";
environment = "proxmox";
};
jackett = {
site = "vs";
environment = "proxmox";
};
jellyfin = {
hostNixpkgs = nixpkgs-unstable;
site = "vs";
environment = "proxmox";
};
lifeline = {
site = "io";
};
mail-1 = {
site = "vs";
environment = "proxmox";
};
matrix = {
site = "vs";
environment = "proxmox";
};
metrics = {
site = "vs";
environment = "proxmox";
};
netbox = {
site = "vs";
environment = "proxmox";
};
nextcloud = {
site = "vs";
environment = "proxmox";
};
nitter = {
site = "vs";
environment = "proxmox";
};
coturn = {
site = "vs";
environment = "proxmox";
};
tor-relay = {
site = "vs";
environment = "proxmox";
};
web-public-2 = {
hostNixpkgs = nixpkgs-unstable;
site = "vs";
environment = "proxmox";
};
web-nonpublic-linuxcrewd = {
hostNixpkgs = nixpkgs-unstable;
site = "vs";
environment = "proxmox";
};
}