dotfiles/nixos/backups.nix

36 lines
1 KiB
Nix

{ config, pkgs, ... }:
let
extraArgs = [
"--exclude='.cache'"
"--exclude='.rustup'"
"--exclude='.cargo'"
"--exclude='.config/Element/Cache'"
"--exclude='.config/discord/Cache'"
];
in {
disabledModules = [ "services/backup/restic.nix" ];
imports = [ services/backup/restic.nix ];
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;
niceness = 19;
ioSchedulingClass = "idle";
};
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";
niceness = 19;
ioSchedulingClass = "idle";
};
};
}