diff options
| author | adikro <adikro@disroot.org> | 2026-05-18 15:25:50 +0200 |
|---|---|---|
| committer | adikro <adikro@disroot.org> | 2026-05-18 15:25:50 +0200 |
| commit | c6b6a3e6c702834eac2b633db2ed4c397b4ae113 (patch) | |
| tree | 4ec03c63fac3c7d0e7caea31cbe9ec1317df8c2f /os/srv/backup.nix | |
| parent | 62b7ca3cdfff5182daad7f4092b6861bbc93f04c (diff) | |
set up disko, zfs, clamav aide, backup, nfs, zfs for oci and ups
Diffstat (limited to 'os/srv/backup.nix')
| -rw-r--r-- | os/srv/backup.nix | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/os/srv/backup.nix b/os/srv/backup.nix new file mode 100644 index 0000000..dad9b66 --- /dev/null +++ b/os/srv/backup.nix @@ -0,0 +1,34 @@ +{ config, lib, ... }: +let + cfg = config.os.srv.backup; +in +{ + options.os.srv.backup.enable = lib.mkEnableOption "enables backups"; + config = lib.mkIf cfg.enable { + services.sanoid = { + enable = true; + templates.production = { + hourly = 36; + daily = 30; + monthly = 3; + }; + datasets."zroot/rpool/appdata/databases".useTemplate = [ "production" ]; + datasets."ztank/vault".useTemplates = [ "production" ]; + }; + services.syncoid = { + enable = true; + commands = { + "sync-db" = { + source = "zroot/rpool/appdata/databases"; + target = "ztank/backups/nvme/databases"; + sendOptions = "w"; + }; + "sync-configs" = { + source = "zroot/rpool/appdata/configs"; + target = "ztank/backups/nvme/configs"; + sendOptions = "w"; + }; + }; + }; + }; +} |
