nixos-config/modules/services/borg.nix

42 lines
1.4 KiB
Nix
Raw Normal View History

{ pkgs, config, ... }:
let
hostname = "violet";
2025-07-01 16:47:08 +02:00
repo = "ssh://dandelion:${toString config.services.openssh.ports}/spinners/rootvol/backups/${hostname}";
in
{
services.borgbackup.jobs = {
"violet-minecraft" = {
paths = [
"/home/liv/MinecraftDocker"
];
repo = "${repo}/MinecraftDocker-tulip";
2025-07-01 16:47:08 +02:00
encryption.mode = "none";
compression = "auto,zstd";
startAt = "daily";
postHook = ''
if [ $exitStatus -eq 2 ]; then
${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) failed with errors"
else
${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) completed succesfully with exit status $exitStatus"
fi
'';
};
"violet-lib" = {
paths = [
"/var/lib"
];
repo = "${repo}/var-lib";
2025-07-01 16:47:08 +02:00
encryption.mode = "none";
compression = "auto,zstd";
startAt = "daily";
postHook = ''
if [ $exitStatus -eq 2 ]; then
${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-lib) failed with errors"
else
${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-lib) completed succesfully with exit status $exitStatus"
fi
'';
};
};
}