{ pkgs, lib, ... }: { # config copied from https://github.com/arachnist/nibylandia/blob/main/nixos/zorigami/default.nix systemd.services.fedifetcher = { path = [ pkgs.fedifetcher ]; description = "fetch fedi posts"; script = '' fedifetcher ''; environment = lib.mapAttrs' (n: v: (lib.nameValuePair ("ff_" + builtins.replaceStrings [ "-" ] [ "_" ] n) (builtins.toString v))) { server = "social.nekover.se"; state-dir = "/var/lib/fedifetcher"; lock-file = "/run/fedifetcher/fedifetcher.lock"; from-lists = 1; from-notifications = 1; max-bookmarks = 80; max-favourites = 40; max-follow-requests = 80; max-followers = 80; max-followings = 80; remember-hosts-for-days = 30; remember-users-for-hours = 168; reply-interval-in-hours = 2; }; serviceConfig = { DynamicUser = true; User = "fedifetcher"; RuntimeDirectory = "fedifetcher"; RuntimeDirectoryPreserve = true; StateDirectory = "fedifetcher"; UMask = "0077"; EnvironmentFile = [ "/secrets/mastodon-fedifetcher-access-token.secret" ]; }; }; systemd.timers.fedifetcher = { wantedBy = [ "multi-user.target" ]; timerConfig = { OnCalendar = "*:0/5"; }; }; }