From a02d94279bf26791132820a9266c4173c63fc69d Mon Sep 17 00:00:00 2001 From: Peder Bergebakken Sundt Date: Sun, 8 Sep 2024 18:55:22 +0200 Subject: [PATCH 1/2] nixos/ttyd: allow `caFile=null` when `enableSSL=true` Co-authored-by: Douglas Mayle --- nixos/modules/services/web-servers/ttyd.nix | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/nixos/modules/services/web-servers/ttyd.nix b/nixos/modules/services/web-servers/ttyd.nix index 14361df2bb66..74b714b1e2c6 100644 --- a/nixos/modules/services/web-servers/ttyd.nix +++ b/nixos/modules/services/web-servers/ttyd.nix @@ -24,9 +24,10 @@ let ++ [ "--max-clients" (toString cfg.maxClients) ] ++ optionals (cfg.indexFile != null) [ "--index" cfg.indexFile ] ++ optionals cfg.enableIPv6 [ "--ipv6" ] - ++ optionals cfg.enableSSL [ "--ssl-cert" cfg.certFile - "--ssl-key" cfg.keyFile - "--ssl-ca" cfg.caFile ] + ++ optionals cfg.enableSSL [ "--ssl" + "--ssl-cert" cfg.certFile + "--ssl-key" cfg.keyFile ] + ++ optionals ( cfg.enableSSL && cfg.caFile != null ) [ "--ssl-ca" cfg.caFile ] ++ [ "--debug" (toString cfg.logLevel) ]; in @@ -197,8 +198,8 @@ in assertions = [ { assertion = cfg.enableSSL - -> cfg.certFile != null && cfg.keyFile != null && cfg.caFile != null; - message = "SSL is enabled for ttyd, but no certFile, keyFile or caFile has been specified."; } + -> cfg.certFile != null && cfg.keyFile != null; + message = "SSL is enabled for ttyd, but no certFile or keyFile has been specified."; } { assertion = cfg.writeable != null; message = "services.ttyd.writeable must be set"; } { assertion = ! (cfg.interface != null && cfg.socket != null); From b7bb0f2190aa06db278f4375c13f1c9980e7a2ac Mon Sep 17 00:00:00 2001 From: Peder Bergebakken Sundt Date: Sun, 8 Sep 2024 19:00:53 +0200 Subject: [PATCH 2/2] nixos/ttyd: reduce `inherit (lib)` --- nixos/modules/services/web-servers/ttyd.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/modules/services/web-servers/ttyd.nix b/nixos/modules/services/web-servers/ttyd.nix index 74b714b1e2c6..e3cf92e17913 100644 --- a/nixos/modules/services/web-servers/ttyd.nix +++ b/nixos/modules/services/web-servers/ttyd.nix @@ -7,8 +7,6 @@ let inherit (lib) optionals types - concatLists - mapAttrsToList mkOption ; @@ -17,7 +15,7 @@ let ++ optionals (cfg.socket != null) [ "--interface" cfg.socket ] ++ optionals (cfg.interface != null) [ "--interface" cfg.interface ] ++ [ "--signal" (toString cfg.signal) ] - ++ (concatLists (mapAttrsToList (_k: _v: [ "--client-option" "${_k}=${_v}" ]) cfg.clientOptions)) + ++ (lib.concatLists (lib.mapAttrsToList (_k: _v: [ "--client-option" "${_k}=${_v}" ]) cfg.clientOptions)) ++ [ "--terminal-type" cfg.terminalType ] ++ optionals cfg.checkOrigin [ "--check-origin" ] ++ optionals cfg.writeable [ "--writable" ] # the typo is correct