diff --git a/modules/system/actualbudget/backups.nix b/modules/system/actualbudget/backups.nix index 5e33188..10519db 100644 --- a/modules/system/actualbudget/backups.nix +++ b/modules/system/actualbudget/backups.nix @@ -15,7 +15,7 @@ extraConfig = { backupPrepareCommand = "${lib.getExe' pkgs.systemd "systemctl"} stop actual.service"; backupCleanupCommand = "${lib.getExe' pkgs.systemd "systemctl"} start actual.service"; - paths = [ "/var/lib/actual" ]; + paths = [ config.services.actual.settings.dataDir ]; }; }; diff --git a/modules/system/hedgedoc/backups.nix b/modules/system/hedgedoc/backups.nix index c2b741f..132d117 100644 --- a/modules/system/hedgedoc/backups.nix +++ b/modules/system/hedgedoc/backups.nix @@ -14,7 +14,10 @@ extraConfig = { backupPrepareCommand = "${lib.getExe' pkgs.systemd "systemctl"} stop hedgedoc.service"; backupCleanupCommand = "${lib.getExe' pkgs.systemd "systemctl"} start hedgedoc.service"; - paths = [ "/var/lib/hedgedoc" ]; + paths = with config.services.hedgedoc.settings; [ + uploadsPath + db.storage + ]; }; }; diff --git a/modules/system/nextcloud/backups.nix b/modules/system/nextcloud/backups.nix index ec55d5f..cc55628 100644 --- a/modules/system/nextcloud/backups.nix +++ b/modules/system/nextcloud/backups.nix @@ -7,6 +7,8 @@ let cfg = config.myConfig.nextcloud; + dataDir = config.services.nextcloud.home; + user = config.users.users.nextcloud.name; inherit (config.users.users.nextcloud) group; in @@ -14,7 +16,7 @@ in options.myConfig.nextcloud.backups.enable = lib.mkEnableOption ""; config = lib.mkIf cfg.backups.enable { - systemd.tmpfiles.rules = [ "d ${cfg.dataDir}/backup 700 ${user} ${group} -" ]; + systemd.tmpfiles.rules = [ "d ${dataDir}/backup 700 ${user} ${group} -" ]; myConfig.resticBackup.nextcloud = { inherit user; @@ -23,13 +25,13 @@ in extraConfig = { backupPrepareCommand = '' ${lib.getExe' config.services.nextcloud.occ "nextcloud-occ"} maintenance:mode --on - ${lib.getExe' config.services.postgresql.package "pg_dump"} nextcloud --format=custom --file=${cfg.dataDir}/backup/db.dump + ${lib.getExe' config.services.postgresql.package "pg_dump"} nextcloud --format=custom --file=${dataDir}/backup/db.dump ''; backupCleanupCommand = "${lib.getExe' config.services.nextcloud.occ "nextcloud-occ"} maintenance:mode --off"; paths = [ - "${cfg.dataDir}/data" - "${cfg.dataDir}/config/config.php" - "${cfg.dataDir}/backup" + "${dataDir}/data" + "${dataDir}/config/config.php" + "${dataDir}/backup" ]; }; }; @@ -41,7 +43,7 @@ in sudo --user=${user} bash -c " ${lib.getExe' config.services.nextcloud.occ "nextcloud-occ"} maintenance:mode --on restic-nextcloud restore latest --target / - pg_restore --clean --if-exists --dbname nextcloud ${cfg.dataDir}/backup/db.dump + pg_restore --clean --if-exists --dbname nextcloud ${dataDir}/backup/db.dump ${lib.getExe' config.services.nextcloud.occ "nextcloud-occ"} maintenance:mode --off " ''; diff --git a/modules/system/nextcloud/default.nix b/modules/system/nextcloud/default.nix index 4d5cb30..f7712a8 100644 --- a/modules/system/nextcloud/default.nix +++ b/modules/system/nextcloud/default.nix @@ -18,11 +18,6 @@ in type = lib.types.nonEmptyStr; default = ""; }; - dataDir = lib.mkOption { - type = lib.types.path; - default = config.services.nextcloud.home; - readOnly = true; - }; port = lib.mkOption { type = lib.types.port; default = 80; diff --git a/modules/system/syncthing/backups.nix b/modules/system/syncthing/backups.nix index b5a2c80..1e45c24 100644 --- a/modules/system/syncthing/backups.nix +++ b/modules/system/syncthing/backups.nix @@ -24,7 +24,7 @@ in extraConfig = { backupPrepareCommand = "${lib.getExe' pkgs.systemd "systemctl"} stop syncthing.service"; backupCleanupCommand = "${lib.getExe' pkgs.systemd "systemctl"} start syncthing.service"; - paths = [ "/var/lib/syncthing" ]; + paths = [ config.services.syncthing.dataDir ]; }; };