{ config, pkgs, ... }: let extraArgs = [ "--exclude='.cache'" "--exclude='.rustup'" "--exclude='.cargo'" "--exclude='.config/Element/Cache'" "--exclude='.config/discord/Cache'" ]; niceness = { Nice = 19; IOSchedulingClass = "idle"; }; in { services = { restic.backups.home-to-bolty = { passwordFile = "/etc/nixos/secrets/restic-password-bolty"; paths = ["/home"]; repository = "rest:http://bolty:8000/"; timerConfig = {OnCalendar = "hourly";}; extraBackupArgs = extraArgs; }; restic.backups.home-to-b2 = { passwordFile = "/etc/nixos/secrets/restic-password-b2"; paths = ["/home"]; repository = "b2:cyplo-restic-${config.networking.hostName}:/"; timerConfig = {OnCalendar = "hourly";}; extraBackupArgs = extraArgs; environmentFile = "/etc/nixos/secrets/b2-env"; }; }; systemd.services.restic-backups-home-to-bolty.serviceConfig = niceness; systemd.services.restic-backups-home-to-b2.serviceConfig = niceness; }