about summary refs log tree commit diff
path: root/nixos/modules/services/misc/forgejo.nix
diff options
context:
space:
mode:
authorRyan Lahfa <masterancpp@gmail.com>2023-11-17 18:02:17 +0100
committerGitHub <noreply@github.com>2023-11-17 18:02:17 +0100
commitccfe07c3168109567b98462533f7ddf14c7ba18d (patch)
tree5519b30e969dfbacf48caa51505b3eb49213b290 /nixos/modules/services/misc/forgejo.nix
parentbea932e00a092efe7be61f7bcbebf4a18241a07b (diff)
parent82037ad0b89db3d392c49c1fdbc6b325da5586b1 (diff)
Merge pull request #266270 from Ma27/postgresql-ownership-15
Diffstat (limited to 'nixos/modules/services/misc/forgejo.nix')
-rw-r--r--nixos/modules/services/misc/forgejo.nix10
1 files changed, 9 insertions, 1 deletions
diff --git a/nixos/modules/services/misc/forgejo.nix b/nixos/modules/services/misc/forgejo.nix
index e71e47b27f197..15966adfe38e7 100644
--- a/nixos/modules/services/misc/forgejo.nix
+++ b/nixos/modules/services/misc/forgejo.nix
@@ -357,6 +357,14 @@ in
         assertion = cfg.database.createDatabase -> useSqlite || cfg.database.user == cfg.user;
         message = "services.forgejo.database.user must match services.forgejo.user if the database is to be automatically provisioned";
       }
+      { assertion = cfg.database.createDatabase && usePostgresql -> cfg.database.user == cfg.database.name;
+        message = ''
+          When creating a database via NixOS, the db user and db name must be equal!
+          If you already have an existing DB+user and this assertion is new, you can safely set
+          `services.forgejo.createDatabase` to `false` because removal of `ensureUsers`
+          and `ensureDatabases` doesn't have any effect.
+        '';
+      }
     ];
 
     services.forgejo.settings = {
@@ -423,7 +431,7 @@ in
       ensureUsers = [
         {
           name = cfg.database.user;
-          ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; };
+          ensureDBOwnership = true;
         }
       ];
     };