main
1{lib, ...}: {
2 flake.modules.nixos."services/freshrss" = {config, ...}: {
3 services.freshrss = {
4 enable = true;
5 baseUrl = "https://rss.hpcesia.com";
6 webserver = "caddy";
7 virtualHost = "rss.hpcesia.com";
8 authType = "form";
9 defaultUser = "admin";
10 passwordFile = config.vaultix.secrets.freshrss-admin-password.path;
11 language = "zh-cn";
12 database.type = "sqlite";
13 };
14
15 services.restic.backups."${config.networking.hostName}-backup".paths =
16 lib.mkIf
17 (builtins.hasAttr "${config.networking.hostName}-backup" config.services.restic.backups)
18 [config.services.freshrss.dataDir];
19
20 vaultix.secrets.freshrss-admin-password = {
21 file = ./admin-password.age;
22 owner = "root";
23 group = "freshrss";
24 mode = "0440";
25 };
26 };
27}