{ config, pkgs, ... }: let mountService = "var-backup.mount"; repo = "/var/backup/montalin"; # TODO: Does this make sense? in { services.borgbackup.jobs = { 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 = "07:00:"; environment.BORG_BASE_DIR = "${repo}/borg-base-dir"; }; }; }