34 lines
759 B
Nix
34 lines
759 B
Nix
{ config, pkgs, ... }:
|
|
|
|
let mountService = "var-backup.mount";
|
|
repo = "/var/backup/montalin"; # TODO: Does this make sense?
|
|
{
|
|
services.borgbackup.jobs = rec {
|
|
data = {
|
|
exclude = [
|
|
"/var/backup" #TODO: Does this make sense?
|
|
"/var/tmp"
|
|
"/var/cache"
|
|
];
|
|
paths = [
|
|
"/etc"
|
|
"/home"
|
|
"/root"
|
|
"/var"
|
|
];
|
|
preHook = "systemctl mount ${mountService}";
|
|
postHook = "systemctl stop ${mountService}";
|
|
prune.keep = {
|
|
within = "14d";
|
|
weekly = 4;
|
|
monthly 6;
|
|
yearly = -1;
|
|
|
|
};
|
|
removeableDevices = true;
|
|
repo = repo;
|
|
startAt = ; #TODO: systemdtime
|
|
environment.BORG_BASE_DIR="${repo}/borg-base-dir";
|
|
};
|
|
};
|
|
}
|