{ pkgs, config, ... }: { sops.secrets.restic-tsuki = {sopsFile = ../../../secrets/restic/secrets.yaml;}; sops.secrets.restic-osu = {sopsFile = ../../../secrets/restic/secrets.yaml;}; environment.systemPackages = [pkgs.restic]; services.restic = { backups = { tsuki = { user = "root"; paths = ["/home"]; exclude = [ "*.qcow2" "*.iso" "/home/*/Downloads" "/home/*/Games" "/home/*/Videos" "/home/*/osu!" "/home/*/.cache" "/home/*/.wine" "/home/*/.rustup" "/home/*/.cargo" "/home/*/.factorio" "/home/*/.mplayer" "/home/*/.steam" "/home/*/.eclipse" "/home/*/.bundle" "/home/*/.local/share/Trash" "/home/*/.local/share/Steam" "/home/*/.local/share/.var" ]; pruneOpts = [ "--keep-daily=7" "--keep-weekly=6" "--keep-monthly=5" ]; initialize = true; repository = "/nas/restic"; passwordFile = config.sops.secrets.restic-tsuki.path; timerConfig = { OnCalendar = "daily"; RandomizedDelaySec = "10m"; Persistent = true; }; }; osu = { user = "root"; paths = ["/home/*/osu!"]; pruneOpts = ["--keep-last=2"]; initialize = true; repository = "/nas/osu-backups"; passwordFile = config.sops.secrets.restic-osu.path; timerConfig = { OnCalendar = "weekly"; RandomizedDelaySec = "30m"; Persistent = true; }; }; }; }; }