{ config, lib, libNginx, ... }: with lib; let cfg = config.nixfiles.modules.rss-bridge; in { options.nixfiles.modules.rss-bridge = { enable = mkEnableOption "RSS-Bridge"; domain = mkOption { description = "Domain name sans protocol scheme."; type = with types; str; default = "rss-bridge.${config.networking.domain}"; }; }; config = mkIf cfg.enable { ark.directories = ["/var/lib/rss-bridge"]; nixfiles.modules.nginx = { enable = true; virtualHosts.${cfg.domain}.extraConfig = libNginx.config.internalOnly; }; services.rss-bridge = { enable = true; virtualHost = cfg.domain; whitelist = ["*"]; }; }; }