summaryrefslogtreecommitdiffstats
path: root/nixos/modules/services
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2024-05-01 18:01:22 +0000
committerGitHub <noreply@github.com>2024-05-01 18:01:22 +0000
commit67f8ba4a30028468182899667963ca1ad074224d (patch)
treea98f430f6bde3e78136139d40e784197ede6d45b /nixos/modules/services
parent2b32fd65a31d54e9858734ad488df2a6434b4e8a (diff)
parent6b39739b77c4ab3f39ee3276677ce94af3e2b39c (diff)
Merge master into staging-next
Diffstat (limited to 'nixos/modules/services')
-rw-r--r--nixos/modules/services/databases/postgresql.nix33
-rw-r--r--nixos/modules/services/security/vault.nix4
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix3
3 files changed, 32 insertions, 8 deletions
diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index 5ad7d7c31813..8a9d8c210b34 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -1,8 +1,31 @@
{ config, lib, pkgs, ... }:
-with lib;
-
let
+ inherit (lib)
+ attrValues
+ concatMapStrings
+ concatStringsSep
+ const
+ elem
+ filterAttrs
+ isString
+ literalExpression
+ mapAttrs
+ mapAttrsToList
+ mkAfter
+ mkBefore
+ mkDefault
+ mkEnableOption
+ mkIf
+ mkMerge
+ mkOption
+ mkPackageOption
+ mkRemovedOptionModule
+ mkRenamedOptionModule
+ optionalString
+ types
+ versionAtLeast
+ ;
cfg = config.services.postgresql;
@@ -24,7 +47,7 @@ let
if true == value then "yes"
else if false == value then "no"
else if isString value then "'${lib.replaceStrings ["'"] ["''"] value}'"
- else toString value;
+ else builtins.toString value;
# The main PostgreSQL configuration file.
configFile = pkgs.writeTextDir "postgresql.conf" (concatStringsSep "\n" (mapAttrsToList (n: v: "${n} = ${toStr v}") (filterAttrs (const (x: x != null)) cfg.settings)));
@@ -439,7 +462,7 @@ in
config = mkIf cfg.enable {
assertions = map ({ name, ensureDBOwnership, ... }: {
- assertion = ensureDBOwnership -> builtins.elem name cfg.ensureDatabases;
+ assertion = ensureDBOwnership -> elem name cfg.ensureDatabases;
message = ''
For each database user defined with `services.postgresql.ensureUsers` and
`ensureDBOwnership = true;`, a database with the same name must be defined
@@ -537,7 +560,7 @@ in
# Wait for PostgreSQL to be ready to accept connections.
postStart =
''
- PSQL="psql --port=${toString cfg.settings.port}"
+ PSQL="psql --port=${builtins.toString cfg.settings.port}"
while ! $PSQL -d postgres -c "" 2> /dev/null; do
if ! kill -0 "$MAINPID"; then exit 1; fi
diff --git a/nixos/modules/services/security/vault.nix b/nixos/modules/services/security/vault.nix
index ab86da47b2e1..650f9bda99c3 100644
--- a/nixos/modules/services/security/vault.nix
+++ b/nixos/modules/services/security/vault.nix
@@ -56,8 +56,8 @@ in
};
devRootTokenID = mkOption {
- type = types.str;
- default = false;
+ type = types.nullOr types.str;
+ default = null;
description = ''
Initial root token. This only applies when {option}`services.vault.dev` is true
'';
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index 337d53e869ef..08fab09e1e55 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -352,7 +352,8 @@ let
# The acme-challenge location doesn't need to be added if we are not using any automated
# certificate provisioning and can also be omitted when we use a certificate obtained via a DNS-01 challenge
- acmeLocation = optionalString (vhost.enableACME || (vhost.useACMEHost != null && config.security.acme.certs.${vhost.useACMEHost}.dnsProvider == null))
+ acmeName = if vhost.useACMEHost != null then vhost.useACMEHost else vhostName;
+ acmeLocation = optionalString ((vhost.enableACME || vhost.useACMEHost != null) && config.security.acme.certs.${acmeName}.dnsProvider == null)
# Rule for legitimate ACME Challenge requests (like /.well-known/acme-challenge/xxxxxxxxx)
# We use ^~ here, so that we don't check any regexes (which could
# otherwise easily override this intended match accidentally).