* Generate a postgresql.conf and use it to specify the paths to
pg_hba.conf and pg_ident.conf. * Turn on syslog logging for PostgreSQL. svn path=/nixos/trunk/; revision=18768
This commit is contained in:
parent
729bf2e2f0
commit
d29072d214
@ -14,6 +14,14 @@ let
|
|||||||
|
|
||||||
flags = if cfg.enableTCPIP then ["-i"] else [];
|
flags = if cfg.enableTCPIP then ["-i"] else [];
|
||||||
|
|
||||||
|
# The main PostgreSQL configuration file.
|
||||||
|
configFile = pkgs.writeText "postgresql.conf"
|
||||||
|
''
|
||||||
|
hba_file = '${pkgs.writeText "pg_hba.conf" cfg.authentication}'
|
||||||
|
ident_file = '${pkgs.writeText "pg_ident.conf" cfg.identMap}'
|
||||||
|
log_destination = 'syslog'
|
||||||
|
'';
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -52,14 +60,6 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
subServices = mkOption {
|
|
||||||
default = [];
|
|
||||||
description = ''
|
|
||||||
Subservices list. As it is already implememnted,
|
|
||||||
here is an interface...
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
authentication = mkOption {
|
authentication = mkOption {
|
||||||
default = ''
|
default = ''
|
||||||
# Generated file; do not edit!
|
# Generated file; do not edit!
|
||||||
@ -68,14 +68,14 @@ in
|
|||||||
host all all ::1/128 md5
|
host all all ::1/128 md5
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
Hosts (except localhost), who you allow to connect.
|
Defines how users authenticate themselves to the server.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
allowedHosts = mkOption {
|
identMap = mkOption {
|
||||||
default = [];
|
default = "";
|
||||||
description = ''
|
description = ''
|
||||||
Hosts (except localhost), who you allow to connect.
|
Defines the mapping from system users to database users.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -130,9 +130,10 @@ in
|
|||||||
mkdir -m 0700 -p ${cfg.dataDir}
|
mkdir -m 0700 -p ${cfg.dataDir}
|
||||||
chown -R postgres ${cfg.dataDir}
|
chown -R postgres ${cfg.dataDir}
|
||||||
${run} -c '${postgresql}/bin/initdb -U root'
|
${run} -c '${postgresql}/bin/initdb -U root'
|
||||||
|
rm -f ${cfg.dataDir}/*.conf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cp -f ${pkgs.writeText "pg_hba.conf" cfg.authentication} ${cfg.dataDir}/pg_hba.conf
|
ln -sfn ${configFile} ${cfg.dataDir}/postgresql.conf
|
||||||
|
|
||||||
# We'd like to use the `-w' flag here to wait until the
|
# We'd like to use the `-w' flag here to wait until the
|
||||||
# database is up, but it requires a `postgres' user to
|
# database is up, but it requires a `postgres' user to
|
||||||
@ -144,7 +145,7 @@ in
|
|||||||
while ! ${run} -c '${postgresql}/bin/pg_ctl status'; do
|
while ! ${run} -c '${postgresql}/bin/pg_ctl status'; do
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
'';
|
''; # */
|
||||||
|
|
||||||
postStop =
|
postStop =
|
||||||
''
|
''
|
||||||
|
Loading…
Reference in New Issue
Block a user