24 lines
512 B
Nix
24 lines
512 B
Nix
{
|
|
config,
|
|
lib,
|
|
...
|
|
}: let
|
|
inherit (lib) mkIf elem optionals;
|
|
inherit (config.ooknet.server) services database;
|
|
in {
|
|
config = mkIf database.postgresql {
|
|
services.postgresql = {
|
|
enable = true;
|
|
ensureDatabases = optionals (elem "forgejo" services) ["forgejo"];
|
|
ensureUsers = optionals (elem "forgejo" services) [
|
|
{
|
|
name = "forgejo";
|
|
ensurePermissions = {
|
|
"DATABASE forgejo" = "ALL PRIVILEGES";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
};
|
|
}
|
|
|