From fcdcccaed6748dc53a748a170125158262510d2b Mon Sep 17 00:00:00 2001 From: emilylange Date: Mon, 18 Sep 2023 11:12:19 +0200 Subject: [PATCH] nixos/caddy: ensure vhosts come after user-specified `cfg.extraConfig` This solves an issue, where loading the nixos-unstable module in nixos-stable using `disabledModules` and `imports` resulted in the following Caddyfile: ``` ``` instead of ``` ``` This is important in cases where `cfg.extraConfig` contains so called Caddyfile snippets. See https://caddyserver.com/docs/caddyfile/concepts#structure Co-authored-by: Lin Jian --- nixos/modules/services/web-servers/caddy/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/web-servers/caddy/default.nix b/nixos/modules/services/web-servers/caddy/default.nix index cec0b379f67a..ce74e243a181 100644 --- a/nixos/modules/services/web-servers/caddy/default.nix +++ b/nixos/modules/services/web-servers/caddy/default.nix @@ -36,6 +36,7 @@ let ${cfg.globalConfig} } ${cfg.extraConfig} + ${concatMapStringsSep "\n" mkVHostConf virtualHosts} ''; Caddyfile-formatted = pkgs.runCommand "Caddyfile-formatted" { nativeBuildInputs = [ cfg.package ]; } '' @@ -340,7 +341,6 @@ in groups = config.users.groups; }) acmeHosts; - services.caddy.extraConfig = concatMapStringsSep "\n" mkVHostConf virtualHosts; services.caddy.globalConfig = '' ${optionalString (cfg.email != null) "email ${cfg.email}"} ${optionalString (cfg.acmeCA != null) "acme_ca ${cfg.acmeCA}"}