41 lines
1.0 KiB
Nix
41 lines
1.0 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
makeEnable,
|
|
realUsers,
|
|
...
|
|
}:
|
|
makeEnable config "myModules.postgres" true {
|
|
services.postgresql = {
|
|
enable = true;
|
|
package = pkgs.postgresql_15;
|
|
ensureDatabases = ["railbird" "public"];
|
|
authentication = pkgs.lib.mkOverride 10 ''
|
|
#type database DBuser CIDR-ADDRESS auth-method
|
|
local all all trust
|
|
host all all 0.0.0.0/0 trust
|
|
host all all ::1/128 trust
|
|
'';
|
|
ensureUsers =
|
|
map (username: {
|
|
name = username;
|
|
ensureClauses = {
|
|
superuser = true;
|
|
createrole = true;
|
|
createdb = true;
|
|
};
|
|
})
|
|
realUsers;
|
|
# initialScript = pkgs.writeText "init-sql-script" ''
|
|
# CREATE DATABASE IF NOT EXISTS railbird;
|
|
# \c railbird
|
|
# CREATE SCHEMA IF NOT EXISTS railbird;
|
|
# '';
|
|
};
|
|
services.pgadmin = {
|
|
enable = false;
|
|
initialEmail = "IvanMalison@gmail.com";
|
|
initialPasswordFile = builtins.toFile "password" "This is the content of the file.";
|
|
};
|
|
}
|