36 lines
1.3 KiB
Nix
36 lines
1.3 KiB
Nix
{ lib, pkgs, config, baseDomain, ... }: {
|
|
imports = [
|
|
./hardware-config.nix
|
|
./mumble.nix
|
|
];
|
|
|
|
system.stateVersion = "23.05";
|
|
networking.hostName = "shirley";
|
|
# Fallback / for the monitoring v(x)lan
|
|
networking.useDHCP = true;
|
|
|
|
# We need to configure IPv6 statically, and if we start with that we can just also do it for IPv4
|
|
networking.interfaces.ens3.useDHCP = false;
|
|
networking.interfaces.ens3.ipv4.addresses = [ { address = "94.130.107.245"; prefixLength = 32; } ];
|
|
networking.interfaces.ens3.ipv6.addresses = [ { address = "2a01:4f8:c0c:83eb::1"; prefixLength = 64; } ];
|
|
networking.defaultGateway = { address = "172.31.1.1"; interface = "ens3"; };
|
|
networking.defaultGateway6 = { address = "fe80::1"; interface = "ens3"; };
|
|
networking.nameservers = [ "213.133.98.98" "213.133.99.99" "213.133.100.100" ];
|
|
|
|
services.nginx = {
|
|
enable = true;
|
|
enableReload = true;
|
|
recommendedGzipSettings = true;
|
|
recommendedOptimisation = true;
|
|
recommendedProxySettings = true;
|
|
recommendedTlsSettings = true;
|
|
|
|
virtualHosts.${baseDomain} = {
|
|
default = true;
|
|
enableACME = true;
|
|
forceSSL = true;
|
|
# TODO: Change this to be deployed by some sort of CI + rsync so we don't need to always update the package version
|
|
locations."/".root = pkgs.chaos-jetzt-website-pelican;
|
|
};
|
|
};
|
|
}
|