restya-board: fix configuration option and switch to file based password provisioning
This commit is contained in:
parent
75c88b57f9
commit
60d4ae53a0
|
@ -116,7 +116,7 @@ in
|
|||
};
|
||||
|
||||
passwordFile = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
description = ''
|
||||
The database user's password. 'null' if no password is set.
|
||||
|
@ -266,8 +266,8 @@ in
|
|||
serviceConfig.RemainAfterExit = true;
|
||||
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
requires = [ "postgresql.service" ];
|
||||
after = [ "network.target" "postgresql.service" ];
|
||||
requires = [];
|
||||
after = [ "network.target" ];
|
||||
|
||||
script = ''
|
||||
rm -rf "${runDir}"
|
||||
|
@ -285,7 +285,7 @@ in
|
|||
sed -i "s/^.*'R_DB_PASSWORD'.*$/define('R_DB_PASSWORD', 'restya');/g" "${runDir}/server/php/config.inc.php"
|
||||
'' else ''
|
||||
sed -i "s/^.*'R_DB_HOST'.*$/define('R_DB_HOST', '${cfg.database.host}');/g" "${runDir}/server/php/config.inc.php"
|
||||
sed -i "s/^.*'R_DB_PASSWORD'.*$/define('R_DB_PASSWORD', '$(<${cfg.database.dbPassFile})');/g" "${runDir}/server/php/config.inc.php"
|
||||
sed -i "s/^.*'R_DB_PASSWORD'.*$/define('R_DB_PASSWORD', ${if cfg.database.passwordFile == null then "''" else "'${builtins.replaceStrings ["\n"] [""] (builtins.readFile cfg.database.passwordFile)}');/g"}" "${runDir}/server/php/config.inc.php"
|
||||
''}
|
||||
sed -i "s/^.*'R_DB_PORT'.*$/define('R_DB_PORT', '${toString cfg.database.port}');/g" "${runDir}/server/php/config.inc.php"
|
||||
sed -i "s/^.*'R_DB_NAME'.*$/define('R_DB_NAME', '${cfg.database.name}');/g" "${runDir}/server/php/config.inc.php"
|
||||
|
@ -297,7 +297,7 @@ in
|
|||
ln -sf "${cfg.dataDir}/client/img" "${runDir}/client/img"
|
||||
|
||||
chmod g+w "${runDir}/tmp/cache"
|
||||
chown -R "${cfg.user}"."${cfg.group}" "${runDir}"
|
||||
chown -R "${cfg.user}":"${cfg.group}" "${runDir}"
|
||||
|
||||
|
||||
mkdir -m 0750 -p "${cfg.dataDir}"
|
||||
|
@ -305,9 +305,9 @@ in
|
|||
mkdir -m 0750 -p "${cfg.dataDir}/client/img"
|
||||
cp -r "${pkgs.restya-board}/media/"* "${cfg.dataDir}/media"
|
||||
cp -r "${pkgs.restya-board}/client/img/"* "${cfg.dataDir}/client/img"
|
||||
chown "${cfg.user}"."${cfg.group}" "${cfg.dataDir}"
|
||||
chown -R "${cfg.user}"."${cfg.group}" "${cfg.dataDir}/media"
|
||||
chown -R "${cfg.user}"."${cfg.group}" "${cfg.dataDir}/client/img"
|
||||
chown "${cfg.user}":"${cfg.group}" "${cfg.dataDir}"
|
||||
chown -R "${cfg.user}":"${cfg.group}" "${cfg.dataDir}/media"
|
||||
chown -R "${cfg.user}":"${cfg.group}" "${cfg.dataDir}/client/img"
|
||||
|
||||
${optionalString (cfg.database.host == null) ''
|
||||
if ! [ -e "${cfg.dataDir}/.db-initialized" ]; then
|
||||
|
|
Loading…
Reference in New Issue