let volumePath = "/overseer/services"; restic-default = { user = "root"; timerConfig = { OnCalendar = "hourly"; Persistent = true; }; paths = [ # Pocket-ID "/var/lib/pocket-id" # homebox.nix "/var/lib/homebox/data" "/var/lib/forgejo" "/var/lib/mealie" # lubelogger.nix "${volumePath}/lubelogger" # trilium.nix "/var/lib/trilium/backup" # actualbudget "${volumePath}/actualbudget" "/var/lib/tuwunel" "/var/lib/paperless/export" # flamesites "${volumePath}/flamesites/swgalaxyproject" "${volumePath}/flamesites/nnsbluegrass" "/home/crow/swgalaxysite/public_html" "/home/crow/flamebandsite/public_html" ]; }; in { lib, config, ... }: { # Restic secrets sops.secrets."restic/borg-base/url" = { }; sops.secrets."restic/borg-base/key" = { }; services.restic.backups = { borg-base = restic-default // { repositoryFile = config.sops.secrets."restic/borg-base/url".path; passwordFile = config.sops.secrets."restic/borg-base/key".path; }; }; }