diff options
Diffstat (limited to 'nixpkgs/nixos/modules/services/web-apps/restya-board.nix')
-rw-r--r-- | nixpkgs/nixos/modules/services/web-apps/restya-board.nix | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/nixpkgs/nixos/modules/services/web-apps/restya-board.nix b/nixpkgs/nixos/modules/services/web-apps/restya-board.nix index 4b36cc8754c6..ae80a7866a16 100644 --- a/nixpkgs/nixos/modules/services/web-apps/restya-board.nix +++ b/nixpkgs/nixos/modules/services/web-apps/restya-board.nix @@ -30,7 +30,7 @@ in dataDir = mkOption { type = types.path; default = "/var/lib/restya-board"; - description = '' + description = lib.mdDoc '' Data of the application. ''; }; @@ -38,7 +38,7 @@ in user = mkOption { type = types.str; default = "restya-board"; - description = '' + description = lib.mdDoc '' User account under which the web-application runs. ''; }; @@ -46,7 +46,7 @@ in group = mkOption { type = types.str; default = "nginx"; - description = '' + description = lib.mdDoc '' Group account under which the web-application runs. ''; }; @@ -55,7 +55,7 @@ in serverName = mkOption { type = types.str; default = "restya.board"; - description = '' + description = lib.mdDoc '' Name of the nginx virtualhost to use. ''; }; @@ -63,7 +63,7 @@ in listenHost = mkOption { type = types.str; default = "localhost"; - description = '' + description = lib.mdDoc '' Listen address for the virtualhost to use. ''; }; @@ -71,7 +71,7 @@ in listenPort = mkOption { type = types.int; default = 3000; - description = '' + description = lib.mdDoc '' Listen port for the virtualhost to use. ''; }; @@ -81,7 +81,7 @@ in host = mkOption { type = types.nullOr types.str; default = null; - description = '' + description = lib.mdDoc '' Host of the database. Leave 'null' to use a local PostgreSQL database. A local PostgreSQL database is initialized automatically. ''; @@ -90,7 +90,7 @@ in port = mkOption { type = types.nullOr types.int; default = 5432; - description = '' + description = lib.mdDoc '' The database's port. ''; }; @@ -98,7 +98,7 @@ in name = mkOption { type = types.str; default = "restya_board"; - description = '' + description = lib.mdDoc '' Name of the database. The database must exist. ''; }; @@ -106,7 +106,7 @@ in user = mkOption { type = types.str; default = "restya_board"; - description = '' + description = lib.mdDoc '' The database user. The user must exist and have access to the specified database. ''; @@ -115,7 +115,7 @@ in passwordFile = mkOption { type = types.nullOr types.path; default = null; - description = '' + description = lib.mdDoc '' The database user's password. 'null' if no password is set. ''; }; @@ -126,7 +126,7 @@ in type = types.nullOr types.str; default = null; example = "localhost"; - description = '' + description = lib.mdDoc '' Hostname to send outgoing mail. Null to use the system MTA. ''; }; @@ -134,7 +134,7 @@ in port = mkOption { type = types.int; default = 25; - description = '' + description = lib.mdDoc '' Port used to connect to SMTP server. ''; }; @@ -142,7 +142,7 @@ in login = mkOption { type = types.str; default = ""; - description = '' + description = lib.mdDoc '' SMTP authentication login used when sending outgoing mail. ''; }; @@ -150,7 +150,7 @@ in password = mkOption { type = types.str; default = ""; - description = '' + description = lib.mdDoc '' SMTP authentication password used when sending outgoing mail. ATTENTION: The password is stored world-readable in the nix-store! @@ -161,7 +161,7 @@ in timezone = mkOption { type = types.lines; default = "GMT"; - description = '' + description = lib.mdDoc '' Timezone the web-app runs in. ''; }; @@ -263,8 +263,8 @@ in serviceConfig.RemainAfterExit = true; wantedBy = [ "multi-user.target" ]; - requires = [ "postgresql.service" ]; - after = [ "network.target" "postgresql.service" ]; + requires = if cfg.database.host == null then [] else [ "postgresql.service" ]; + after = [ "network.target" ] ++ (if cfg.database.host == null then [] else [ "postgresql.service" ]); script = '' rm -rf "${runDir}" @@ -282,7 +282,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', ${if cfg.database.passwordFile == null then "''" else "'file_get_contents(${cfg.database.passwordFile})'"});/g" "${runDir}/server/php/config.inc.php + sed -i "s/^.*'R_DB_PASSWORD'.*$/define('R_DB_PASSWORD', ${if cfg.database.passwordFile == null then "''" else "'$(cat ${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" @@ -294,7 +294,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}" @@ -302,9 +302,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 |