39 lines
1 KiB
Nix
39 lines
1 KiB
Nix
{ config, pkgs, ... }:
|
|
let
|
|
extraArgs = [
|
|
"--exclude='.cache'"
|
|
"--exclude='.rustup'"
|
|
"--exclude='.cargo'"
|
|
"--exclude='.config/Element/Cache'"
|
|
"--exclude='.config/discord/Cache'"
|
|
];
|
|
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 = {
|
|
Nice = 19;
|
|
IOSchedulingClass = "idle";
|
|
};
|
|
systemd.services.restic-backups-home-to-b2.serviceConfig = {
|
|
Nice = 19;
|
|
IOSchedulingClass = "idle";
|
|
};
|
|
}
|