{ config, lib, ... }: 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 { nixfiles.modules.nginx = { enable = true; virtualHosts.${cfg.domain}.extraConfig = nginxInternalOnly; }; services.rss-bridge = { enable = true; virtualHost = cfg.domain; whitelist = ["*"]; }; }; }