home-server/services/borgbackup.nix
2026-02-24 16:44:03 -08:00

41 lines
904 B
Nix

{ ... }:
{
# Outbound: back up homeserver to VPS
services.borgbackup.jobs.homeserver = {
paths = [
"/var/lib"
"/etc"
"/home"
];
repo = "ssh://borg@10.10.0.1/./homeserver";
environment.BORG_RSH = "ssh -i /etc/borg/ssh_key";
encryption = {
mode = "repokey";
passCommand = "cat /etc/borg/passphrase";
};
compression = "zstd";
startAt = "daily";
prune.keep = {
daily = 7;
weekly = 4;
monthly = 6;
};
exclude = [
"/var/lib/docker"
"/var/lib/containers"
"/var/lib/systemd/coredump"
"*.pyc"
"__pycache__"
".cache"
];
};
# Inbound: accept desktop backups
services.borgbackup.repos.desktop = {
path = "/var/lib/borg/desktop";
authorizedKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINvKMpaawaw5bp73/W4dm0YEZa2FT99pXHLOYqZS8NPL borg-desktop"
];
};
}