diff options
author | sefidel <contact@sefidel.net> | 2024-01-24 19:18:11 +0900 |
---|---|---|
committer | sefidel <contact@sefidel.net> | 2024-01-24 19:18:11 +0900 |
commit | 497c3cd7864fdbcc546408d6d86ebfad37aa9b78 (patch) | |
tree | 6cd5bf30b9953156d71192fa96e34a863dda5926 /modules/services/rss.nix | |
parent | a1dc1ff8c07155f697a30145168820612b28b6cd (diff) | |
download | infra-modules.tar.gz infra-modules.zip |
wip: try to use infra-modules infra-modules
Diffstat (limited to 'modules/services/rss.nix')
-rw-r--r-- | modules/services/rss.nix | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/modules/services/rss.nix b/modules/services/rss.nix deleted file mode 100644 index c9663ee..0000000 --- a/modules/services/rss.nix +++ /dev/null @@ -1,64 +0,0 @@ -{ config, lib, pkgs, ... }: - -with lib; -let - cfg = config.modules.services.rss; -in -{ - options.modules.services.rss = { - enable = mkEnableOption "RSS Aggregator"; - domain = mkOption { type = types.str; }; - realHost = mkOption { type = types.str; default = "rss.${cfg.domain}"; }; - secrets.admin-password = mkOption { type = types.path; description = "path to file containing admin password"; }; - bridge = { - enable = mkEnableOption "RSS Bridge"; - domain = mkOption { type = types.str; default = cfg.domain; }; - realHost = mkOption { type = types.str; default = "rss-bridge.${cfg.bridge.domain}"; }; - whitelist = mkOption { type = types.listOf types.str; default = []; }; - }; - }; - - config = mkIf cfg.enable (mkMerge [ - { - services.freshrss = { - enable = true; - virtualHost = cfg.realHost; - baseUrl = "https://${cfg.realHost}"; - - defaultUser = "admin"; - passwordFile = cfg.secrets.admin-password; - - database = { - type = "pgsql"; - host = "/run/postgresql"; - }; - }; - - modules.persistence.directories = [ - "/var/lib/freshrss" - ]; - - services.nginx.virtualHosts.${cfg.realHost} = { - forceSSL = true; - useACMEHost = cfg.domain; - }; - } - (mkIf cfg.bridge.enable { - services.rss-bridge = { - enable = true; - virtualHost = cfg.bridge.realHost; - } // optionalAttrs (cfg.bridge.whitelist != []) { - whitelist = cfg.bridge.whitelist; - }; - - modules.persistence.directories = [ - "/var/lib/rss-bridge" - ]; - - services.nginx.virtualHosts.${cfg.bridge.realHost} = { - forceSSL = true; - useACMEHost = cfg.bridge.domain; - }; - }) - ]); -} |