summaryrefslogtreecommitdiff
path: root/systems/atlas/miniflux.nix
blob: 6d3f8ca7316ed1b030fa11324779be891e2400e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{
  config,
  lib,
  secretsDir,
  ...
}:

{
  age.secrets.miniflux.file = secretsDir + "/miniflux.age";

  services = {
    miniflux = {
      enable = true;
      adminCredentialsFile = config.age.secrets.miniflux.path;
      config = {
        BASE_URL = "https://miniflux.${config.networking.domain}";
      };
    };

    nginx = {
      virtualHosts = {
        "miniflux.getchoo.com" = {
          locations."/" = {
            proxyPass = "http://unix:${lib.head config.systemd.sockets.miniflux.listenStreams}";
          };
        };
      };
    };
  };

  systemd = {
    services.miniflux = {
      requires = [ "miniflux.socket" ];
    };

    sockets.miniflux = {
      wantedBy = [ "sockets.target" ];
      listenStreams = [ "/run/miniflux.sock" ];
    };
  };
}