From bc81e75bead05fdf2cb6aaf3fec6e933ce8feb1a Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Sat, 22 Aug 2026 12:42:46 -0500 Subject: everything is working now --- hosts/ganymede/caddy.nix | 73 ++++++++++++++++++++++++++++++++++++------------ 1 file changed, 55 insertions(+), 18 deletions(-) (limited to 'hosts/ganymede/caddy.nix') diff --git a/hosts/ganymede/caddy.nix b/hosts/ganymede/caddy.nix index 06ca720..961b3b2 100644 --- a/hosts/ganymede/caddy.nix +++ b/hosts/ganymede/caddy.nix @@ -1,8 +1,12 @@ { pkgs, lib, + hosts, + config, ... }: { + users.users."caddy".extraGroups = ["fileserver"]; + services.caddy = { package = lib.mkForce (pkgs.caddy.withPlugins { plugins = [ @@ -17,30 +21,63 @@ api_key {env.PORKBUN_API_KEY} api_secret_key {env.PORKBUN_API_SECRET_KEY} } + + pki { + ca local { + name "Ganymede Home CA" + + root { + format pem_file + cert ${pkgs.writeText "caddy-root-ca.crt" hosts.ganymede.caddy-root-ca} + key ${config.collinux.secrets.caddy-root-ca-key.path} + } + } + } ''; virtualHosts = { - "lindsey.williamsfam.us.com".extraConfig = '' - redir https://williams-ryan-lindsey.blogspot.com permanent - ''; - - "daniel.williamsfam.us.com".extraConfig = '' - root * /media/public/www/daniel - file_server - ''; - - "williamsfam.us.com".extraConfig = '' - root * /media/public/www/root - file_server - ''; + "jta.williamsfam.us.com" = { + logFormat = lib.mkForce '' + output file /var/log/caddy/access-williamsfam.us.com.log + ''; + extraConfig = '' + root * /media/public/www/jta + + @hidden path */.* + respond @hidden "Not Found" 404 + + file_server + ''; + }; + "lindsey.williamsfam.us.com" = { + logFormat = lib.mkForce '' + output file /var/log/caddy/access-williamsfam.us.com.log + ''; + extraConfig = '' + redir https://williams-ryan-lindsey.blogspot.com permanent + ''; + }; + "daniel.williamsfam.us.com" = { + logFormat = lib.mkForce '' + output file /var/log/caddy/access-williamsfam.us.com.log + ''; + extraConfig = '' + root * /media/public/www/daniel + file_server + ''; + }; + "williamsfam.us.com" = { + logFormat = lib.mkForce '' + output file /var/log/caddy/access-williamsfam.us.com.log + ''; + extraConfig = '' + root * /media/public/www/root + file_server + ''; + }; }; }; - # merge logs from subdomains - services.caddy.virtualHosts."jta.williamsfam.us.com".logFormat = lib.mkForce '' - output file /var/log/caddy/access-williamsfam.us.com.log - ''; - collinux.services.glance.homelabServices."website" = { url = "https://williamsfam.us.com"; icon = "mdi:web"; -- cgit v1.3.1