diff --git a/nixos/machines/hera/cloud.nix b/nixos/machines/hera/cloud.nix index b28ac863..79f2b04b 100644 --- a/nixos/machines/hera/cloud.nix +++ b/nixos/machines/hera/cloud.nix @@ -110,6 +110,7 @@ let postgresql = { enable = true; package = pkgs.postgresql_12; + ensureDatabases = [ "nextcloud" ]; }; }; }; @@ -137,6 +138,7 @@ in }; services = { nextcloud = nextcloudConf mainHostName; + postgresql.ensureDatabases = [ "nextcloud" ]; nginx = { enable = true; virtualHosts."cloud.maralorn.de" = { diff --git a/nixos/machines/hera/configuration.nix b/nixos/machines/hera/configuration.nix index 34cf2ae4..a3f42c0a 100644 --- a/nixos/machines/hera/configuration.nix +++ b/nixos/machines/hera/configuration.nix @@ -52,15 +52,12 @@ in nixpkgs.config.android_sdk.accept_license = true; systemd.services = { pg_backup = - let - name = "matrix-synapse"; - in { - script = '' - ${config.services.postgresql.package}/bin/pg_dump ${name} > /var/lib/db-backup-dumps/${name} - ''; + script = lib.concatMapStringsSep "\n" + (name: "${config.services.postgresql.package}/bin/pg_dump ${name} > /var/lib/db-backup-dumps/${name}") + config.services.postgresql.ensureDatabases; serviceConfig = { - User = name; + User = "postgres"; Type = "oneshot"; }; }; @@ -74,7 +71,6 @@ in set -x set +e ${start} pg_backup - ${start} nextcloud-pg-backup ${container} chor-cloud -- ${start} nextcloud-pg-backup ${lib.concatMapStringsSep "\n" (name: "${start} ${name}") backupJobNames} ${pkgs.coreutils}/bin/rm -rf /var/lib/db-backup-dumps/* diff --git a/nixos/roles/matrix-synapse/default.nix b/nixos/roles/matrix-synapse/default.nix index 21c6dc28..661a496e 100644 --- a/nixos/roles/matrix-synapse/default.nix +++ b/nixos/roles/matrix-synapse/default.nix @@ -73,6 +73,7 @@ in enable = true; package = pkgs.postgresql_12; settings = import ./postgres-tuning.nix; + ensureDatabases = [ "matrix-synapse" ]; }; # Synapse