From 1b698ece70344b600bea931fff1b686c51035083 Mon Sep 17 00:00:00 2001 From: SebastianStork Date: Thu, 4 Sep 2025 21:30:04 +0200 Subject: [PATCH] Simplify `caddy.virtualHosts` declarations --- hosts/srv-external/default.nix | 48 ++++++++++++++++++---------------- hosts/srv-internal/default.nix | 30 ++++++++++++--------- hosts/srv-monitor/default.nix | 30 ++++++++++++--------- 3 files changed, 60 insertions(+), 48 deletions(-) diff --git a/hosts/srv-external/default.nix b/hosts/srv-external/default.nix index 98f973a..dc3c9b8 100644 --- a/hosts/srv-external/default.nix +++ b/hosts/srv-external/default.nix @@ -60,29 +60,33 @@ domain = "speedtest.sprouted.cloud"; }; - caddy.virtualHosts = { - forgejo = { - inherit (config.custom.services.forgejo) domain port; + caddy.virtualHosts = + let + inherit (config.custom) services; + in + { + forgejo = { + inherit (services.forgejo) domain port; + }; + hedgedoc = { + inherit (services.hedgedoc) domain port; + }; + it-tools = { + inherit (services.it-tools) domain port; + }; + stirling-pdf = { + inherit (services.stirling-pdf) domain port; + }; + openspeedtest = { + inherit (services.openspeedtest) domain port; + tls = false; + extraReverseProxyConfig = '' + request_buffers 35MiB + response_buffers 35MiB + flush_interval -1 + ''; + }; }; - hedgedoc = { - inherit (config.custom.services.hedgedoc) domain port; - }; - it-tools = { - inherit (config.custom.services.it-tools) domain port; - }; - stirling-pdf = { - inherit (config.custom.services.stirling-pdf) domain port; - }; - openspeedtest = { - inherit (config.custom.services.openspeedtest) domain port; - tls = false; - extraReverseProxyConfig = '' - request_buffers 35MiB - response_buffers 35MiB - flush_interval -1 - ''; - }; - }; }; }; } diff --git a/hosts/srv-internal/default.nix b/hosts/srv-internal/default.nix index 7d48298..c9cfa81 100644 --- a/hosts/srv-internal/default.nix +++ b/hosts/srv-internal/default.nix @@ -49,20 +49,24 @@ domain = "budget.${config.custom.services.tailscale.domain}"; }; - caddy.virtualHosts = { - syncthing-gui = { - inherit (config.custom.services.syncthing.gui) domain port; + caddy.virtualHosts = + let + inherit (config.custom) services; + in + { + syncthing-gui = { + inherit (services.syncthing.gui) domain port; + }; + filebrowser = { + inherit (services.filebrowser) domain port; + }; + radicale = { + inherit (services.radicale) domain port; + }; + actualbudget = { + inherit (services.actualbudget) domain port; + }; }; - filebrowser = { - inherit (config.custom.services.filebrowser) domain port; - }; - radicale = { - inherit (config.custom.services.radicale) domain port; - }; - actualbudget = { - inherit (config.custom.services.actualbudget) domain port; - }; - }; }; }; } diff --git a/hosts/srv-monitor/default.nix b/hosts/srv-monitor/default.nix index d39d0ae..94cbff8 100644 --- a/hosts/srv-monitor/default.nix +++ b/hosts/srv-monitor/default.nix @@ -57,20 +57,24 @@ domain = "logs.${config.custom.services.tailscale.domain}"; }; - caddy.virtualHosts = { - gatus = { - inherit (config.custom.services.gatus) domain port; + caddy.virtualHosts = + let + inherit (config.custom) services; + in + { + gatus = { + inherit (services.gatus) domain port; + }; + ntfy = { + inherit (services.ntfy) domain port; + }; + grafana = { + inherit (services.grafana) domain port; + }; + victorialogs = { + inherit (services.victorialogs) domain port; + }; }; - ntfy = { - inherit (config.custom.services.ntfy) domain port; - }; - grafana = { - inherit (config.custom.services.grafana) domain port; - }; - victorialogs = { - inherit (config.custom.services.victorialogs) domain port; - }; - }; }; }; }