summaryrefslogtreecommitdiff
path: root/hosts/apocalypse/backup.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/apocalypse/backup.nix')
-rw-r--r--hosts/apocalypse/backup.nix31
1 files changed, 31 insertions, 0 deletions
diff --git a/hosts/apocalypse/backup.nix b/hosts/apocalypse/backup.nix
new file mode 100644
index 0000000..3529024
--- /dev/null
+++ b/hosts/apocalypse/backup.nix
@@ -0,0 +1,31 @@
+{ config, lib, pkgs, modulesPath, ...}:
+{
+ environment.systemPackages = with pkgs; [
+ btrbk
+ lz4
+ ];
+
+ services.btrbk = {
+ extraPackages = with pkgs; [ lz4 ];
+ instances."remote_vault" = {
+ onCalendar = "weekly";
+ settings = {
+ snapshot_preserve_min = "1w";
+ snapshot_preserve = "2w";
+ target_preserve_min = "1w";
+ target_preserve = "4w";
+ ssh_identity = "/etc/vault_key"; # NOTE: must be readable by user/group btrbk
+ ssh_user = "vaultmanager";
+ stream_compress = "lz4";
+ volume."/btrfs_root" = {
+ target = "ssh://10.127.9.1/vault/backups/apocalypse";
+ subvolume = {
+ "@root" = {
+ snapshot_create = "ondemand";
+ };
+ };
+ };
+ };
+ };
+};
+}