summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/deployment/rss/ratt.nix
blob: 2e7ecb45da8581ffed7c99bcf8c5dc94d5061ba8 (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
{ pkgs, lib, config, ... }:
let
  fqdn = "rss.euer.krebsco.de";
  ratt-path = "/var/lib/ratt/";
  out-path = "${ratt-path}/all.xml";
in {
  systemd.tmpfiles.rules = ["d ${ratt-path} 0750 nginx nginx - -" ];
  systemd.services.run-ratt = {
    enable = true;
    path = with pkgs; [ ratt xmlstarlet ];
    script = builtins.readFile ./ratt-hourly.sh;
    scriptArgs = "${./urls} ${out-path}";

    preStart = "install -v -m750 ${./ebk.yml} ${ratt-path}/ebk.yml"; # ratt requires the config file in the cwd
    serviceConfig.User = "nginx";
    serviceConfig.WorkingDirectory= ratt-path;
    startAt = "00/3:07"; # every 3 hours, fetch latest
  };

  services.nginx.virtualHosts."${fqdn}" = {
    locations."=/ratt/all.xml" = {
      alias = out-path;
    };
  };
}