diff --git a/machines/gustave/pages.nix b/machines/gustave/pages.nix new file mode 100644 index 0000000..34c405a --- /dev/null +++ b/machines/gustave/pages.nix @@ -0,0 +1,53 @@ +{ lib, pkgs, ... }: +{ + services.codeberg-pages = { + enable = true; + package = pkgs.codeberg-pages-custom; + settings = { + ACME_ACCEPT_TERMS = "true"; + ACME_EMAIL = "julien@malka.sh"; + DNS_PROVIDER = "gandiv5"; + ENABLE_HTTP_SERVER = "false"; + GITEA_ROOT = "https://git.luj.fr"; + PORT = "8010"; + PAGES_DOMAIN = "luj-static.page"; + RAW_DOMAIN = "raw.luj-static.page"; + }; + }; + + networking.firewall.allowedTCPPorts = [ + 80 + 443 + ]; + + security.acme.acceptTerms = true; + security.acme.defaults.email = "julien@malka.sh"; + luj.nginx.enable = lib.mkForce false; + services.nginx = { + enable = true; + recommendedGzipSettings = true; + recommendedOptimisation = true; + recommendedProxySettings = true; + recommendedTlsSettings = true; + + streamConfig = '' + map $ssl_preread_server_name $sni_upstream { + hostnames; + default 0.0.0.0:8443; + *.luj-static.page 0.0.0.0:8010; + luj.sh 0.0.0.0:8010; + } + + server { + listen [::]:443; + ssl_preread on; + proxy_pass $sni_upstream; + } + + ''; + + defaultSSLListenPort = 8443; + + }; + +}