mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-02-12 18:18:59 +00:00
hosts/ni/services/backup: add Snapper service
This commit is contained in:
parent
b9a4160123
commit
0dfb66c44b
@ -45,7 +45,7 @@ let
|
|||||||
pathPrefix = "borg-backup";
|
pathPrefix = "borg-backup";
|
||||||
in {
|
in {
|
||||||
options.hosts.ni.services.backup.enable =
|
options.hosts.ni.services.backup.enable =
|
||||||
lib.mkEnableOption "backup setup with BorgBackup";
|
lib.mkEnableOption "backup setup with BorgBackup and Snapper";
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
sops.secrets = foodogsquaredLib.sops-nix.getSecrets ./secrets.yaml
|
sops.secrets = foodogsquaredLib.sops-nix.getSecrets ./secrets.yaml
|
||||||
@ -90,5 +90,40 @@ in {
|
|||||||
}";
|
}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# The filesystem snapshots.
|
||||||
|
services.snapper = {
|
||||||
|
snapshotInterval = "hourly";
|
||||||
|
persistentTimer = true;
|
||||||
|
|
||||||
|
configs = {
|
||||||
|
root = {
|
||||||
|
SUBVOLUME = "/";
|
||||||
|
SPACE_LIMIT = "0.25";
|
||||||
|
FREE_LIMIT = "0.25";
|
||||||
|
BACKGROUND_COMPARISION = "yes";
|
||||||
|
NUMBER_CLEANUP = true;
|
||||||
|
TIMELINE_CREATE = true;
|
||||||
|
TIMELINE_CLEANUP = true;
|
||||||
|
TIMELINE_LIMIT_HOURLY = 48;
|
||||||
|
TIMELINE_LIMIT_DAILY = 30;
|
||||||
|
TIMELINE_LIMIT_WEEKLY = 8;
|
||||||
|
TIMELINE_LIMIT_MONTHLY = 24;
|
||||||
|
TIMELINE_LIMIT_QUARTERLY = 10;
|
||||||
|
TIMELINE_LIMIT_YEARLY = 8;
|
||||||
|
};
|
||||||
|
|
||||||
|
home = {
|
||||||
|
SUBVOLUME = "/home";
|
||||||
|
ALLOW_USERS = [ "foo-dogsquared" ];
|
||||||
|
TIMELINE_CREATE = true;
|
||||||
|
TIMELINE_CLEANUP = true;
|
||||||
|
TIMELINE_MIN_AGE = 300;
|
||||||
|
TIMELINE_LIMIT_HOURLY = 24;
|
||||||
|
TIMELINE_LIMIT_DAILY = 30;
|
||||||
|
TIMELINE_LIMIT_WEEKLY = 12;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user