{ config, lib, unstable, ... }: let cfg = config.profile.services.caddy; inherit (lib) mkIf attrsets strings lists ; in { config = mkIf cfg.enable { services.caddy = { enable = true; package = unstable.caddy; }; services.caddy.globalConfig = # caddy '' servers { metrics } ''; environment.etc."caddy/static/tigor.web.id/index.html" = { text = let domains = attrsets.mapAttrsToList ( name: _: strings.removePrefix "https://" name ) config.services.caddy.virtualHosts; sortedDomains = lists.sort (a: b: a < b) domains; list = map ( domain: # html ''
'') sortedDomains; items = strings.concatStringsSep "\n" list; in # html ''