nixos-config/nixos/programs/postgres.nix

32 lines
831 B
Nix
Raw Normal View History

2023-08-17 22:37:52 +05:00
{ config, pkgs, ... }:
{
config.services.postgresql = {
enable = true;
package = pkgs.postgresql_15;
ensureDatabases = [ "mastodon" "synapse" "nextcloud" ];
2023-08-18 09:59:23 +05:00
ensureUsers = [
{
name = "mastodon";
ensurePermissions = {
"DATABASE mastodon" = "ALL PRIVILEGES";
};
ensureClauses = {
login = true;
};
}
];
2023-08-17 22:37:52 +05:00
identMap = ''
# ArbitraryMapName systemUser DBUser
superuser_map root postgres
superuser_map postgres postgres
# Let other names login as themselves
superuser_map /^(.*)$ \1
'';
authentication = pkgs.lib.mkOverride 10 ''
#type database DBuser auth-method optional_ident_map
local sameuser all peer map=superuser_map
'';
};
}