diff --git a/nixos/programs/postgres.nix b/nixos/programs/postgres.nix index 1448546..eab8a30 100644 --- a/nixos/programs/postgres.nix +++ b/nixos/programs/postgres.nix @@ -3,7 +3,7 @@ config.services.postgresql = { enable = true; package = pkgs.postgresql_15; - ensureDatabases = [ "mastodon" "matrix-synapse" "nextcloud" "maddy" "plausible" ]; + ensureDatabases = [ "mastodon" "matrix-synapse" "nextcloud" "maddy" "plausible" "microboard" ]; ensureUsers = [ { name = "mastodon"; @@ -40,6 +40,13 @@ }; ensureClauses.login = true; } + { + name = "microboard"; + ensurePermissions = { + "DATABASE microboard" = "ALL PRIVILEGES"; + }; + ensureClauses.login = true; + } ]; initialScript = pkgs.writeText "pg-init.sql" '' ALTER DATABASE nextcloud OWNER TO nextcloud; @@ -47,6 +54,7 @@ ALTER DATABASE "matrix-synapse" OWNER TO "matrix-synapse"; ALTER DATABASE maddy OWNER TO maddy; ALTER DATABASE plausible OWNER TO plausible; + ALTER DATABASE microboard OWNER TO microboard; ''; identMap = '' # ArbitraryMapName systemUser DBUser diff --git a/nixos/users.nix b/nixos/users.nix index 2a35c6c..a408bce 100644 --- a/nixos/users.nix +++ b/nixos/users.nix @@ -29,14 +29,19 @@ isSystemUser = true; group = "plausible"; }; + microboard = { + isSystemUser = true; + group = "microboard"; + }; }; users.groups = { mastodon.members = [ "mastodon" config.services.nginx.user ]; nextcloud.members = [ "nextcloud" config.services.nginx.user ]; - photoprism.members = [ "photoprism" config.services.nginx.user ]; - matrix-synapse.members = [ "matrix-synapse" config.services.nginx.user ]; - maddy.members = [ "maddy" ]; - plausible.members = [ "plausible" ]; + photoprism = {}; + matrix-synapse = {}; + maddy = {}; + plausible = {}; + microboard = {}; }; }