Replace backintime with rsnapshot
This commit is contained in:
parent
42ba264047
commit
4a92828efb
|
@ -156,7 +156,6 @@
|
||||||
++ pkgs.lib.optionals desktop [
|
++ pkgs.lib.optionals desktop [
|
||||||
acpi
|
acpi
|
||||||
arandr
|
arandr
|
||||||
backintime
|
|
||||||
bluetuith
|
bluetuith
|
||||||
brightnessctl
|
brightnessctl
|
||||||
cpufrequtils
|
cpufrequtils
|
||||||
|
|
|
@ -2,5 +2,6 @@
|
||||||
imports = [
|
imports = [
|
||||||
./docker.nix
|
./docker.nix
|
||||||
./kanata.nix
|
./kanata.nix
|
||||||
|
./rsnapshot.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
0
nix/modules/nixos/desktop/steam.nix
Normal file
0
nix/modules/nixos/desktop/steam.nix
Normal file
70
nix/modules/nixos/rsnapshot.nix
Normal file
70
nix/modules/nixos/rsnapshot.nix
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
backups1 = {
|
||||||
|
path = "/mnt/backup";
|
||||||
|
uuid = "fd47c61a-8aac-44ed-9a18-4ec43ee663fb";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
systemd = {
|
||||||
|
mounts = [
|
||||||
|
{
|
||||||
|
where = "${backups1.path}";
|
||||||
|
what = "UUID=${backups1.uuid}";
|
||||||
|
type = "ext4";
|
||||||
|
options = "defaults,noatime,nofail";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
automounts = [
|
||||||
|
{
|
||||||
|
where = "${backups1.path}";
|
||||||
|
automountConfig.TimeoutIdleSec = "60";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d ${backups1.path} 755 root root -"
|
||||||
|
];
|
||||||
|
|
||||||
|
services = {
|
||||||
|
udev.extraRules = ''
|
||||||
|
ACTION=="add", SUBSYSTEM=="block", ENV{ID_FS_UUID}=="${backups1.uuid}", ENV{SYSTEMD_WANTS}="mnt-backup.mount"
|
||||||
|
ACTION=="remove", SUBSYSTEM=="block", ENV{ID_FS_UUID}=="${backups1.uuid}", RUN+="${pkgs.systemd}/bin/systemctl stop mnt-backup.mount"
|
||||||
|
'';
|
||||||
|
|
||||||
|
rsnapshot = {
|
||||||
|
enable = true;
|
||||||
|
enableManualRsnapshot = true;
|
||||||
|
|
||||||
|
extraConfig = ''
|
||||||
|
lockfile /home/opdavies/.rsnapshot.pid
|
||||||
|
|
||||||
|
snapshot_root /mnt/backup/rsnapshot/
|
||||||
|
no_create_root 1
|
||||||
|
|
||||||
|
backup /home/opdavies opdavies/
|
||||||
|
backup /media media/
|
||||||
|
backup /var/lib/immich/upload immich/
|
||||||
|
|
||||||
|
exclude ".cache/"
|
||||||
|
exclude ".devenv/"
|
||||||
|
exclude ".direnv/"
|
||||||
|
exclude "node_modules/"
|
||||||
|
exclude "vendor/"
|
||||||
|
|
||||||
|
retain daily 7
|
||||||
|
retain weekly 4
|
||||||
|
retain monthly 12
|
||||||
|
'';
|
||||||
|
|
||||||
|
cronIntervals = {
|
||||||
|
daily = "0 21 * * *";
|
||||||
|
monthly = "0 23 1 * 0";
|
||||||
|
weekly = "0 22 * * 0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue