From e1b0c4dfc58d4a208d3c00de97f56d0edbf8dbe1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis=20Lafuente?= Date: Tue, 23 Jun 2026 12:48:12 +0200 Subject: [PATCH 1/2] civetweb: Add configurable build flags --- pkgs/by-name/ci/civetweb/package.nix | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ci/civetweb/package.nix b/pkgs/by-name/ci/civetweb/package.nix index 13c996fddcbf..977cf226ccab 100644 --- a/pkgs/by-name/ci/civetweb/package.nix +++ b/pkgs/by-name/ci/civetweb/package.nix @@ -4,6 +4,11 @@ fetchFromGitHub, fetchpatch, cmake, + zlib, + + withZlib ? false, + withUnixSockets ? false, + withWebSockets ? false, }: stdenv.mkDerivation (finalAttrs: { @@ -32,11 +37,14 @@ stdenv.mkDerivation (finalAttrs: { ]; strictDeps = true; + __structuredAttrs = true; nativeBuildInputs = [ cmake ]; + buildInputs = lib.optional withZlib zlib; + # The existence of the "build" script causes `mkdir -p build` to fail: # mkdir: cannot create directory 'build': File exists preConfigure = '' @@ -60,12 +68,22 @@ stdenv.mkDerivation (finalAttrs: { # Workaround CMake 4 compat (lib.cmakeFeature "CMAKE_POLICY_VERSION_MINIMUM" "3.5") - ]; + + (lib.cmakeBool "CIVETWEB_ENABLE_WEBSOCKETS" withWebSockets) + + (lib.cmakeBool "CIVETWEB_ENABLE_ZLIB" withZlib) + ] + + # Support for listening for HTTP requests on a Unix domain socket. + ++ lib.optional withUnixSockets "-DCMAKE_C_FLAGS=-DUSE_X_DOM_SOCKET"; + # NOTE Once 1.17 is released, we can use a CMake flag: + # (lib.cmakeBool "CIVETWEB_ENABLE_X_DOM_SOCKET" withUnixSockets) meta = { description = "Embedded C/C++ web server"; mainProgram = "civetweb"; homepage = "https://github.com/civetweb/civetweb"; license = lib.licenses.mit; + maintainers = with lib.maintainers; [ jlesquembre ]; }; }) From c6211eb66e6cfd9729052068ef3f9b11612b1c38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis=20Lafuente?= Date: Thu, 10 Sep 2026 18:10:27 +0100 Subject: [PATCH 2/2] civetweb: use versionCheckHook at installCheckPhase --- pkgs/by-name/ci/civetweb/package.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/by-name/ci/civetweb/package.nix b/pkgs/by-name/ci/civetweb/package.nix index 977cf226ccab..92957e569bd2 100644 --- a/pkgs/by-name/ci/civetweb/package.nix +++ b/pkgs/by-name/ci/civetweb/package.nix @@ -5,6 +5,7 @@ fetchpatch, cmake, zlib, + versionCheckHook, withZlib ? false, withUnixSockets ? false, @@ -39,6 +40,10 @@ stdenv.mkDerivation (finalAttrs: { strictDeps = true; __structuredAttrs = true; + doInstallCheck = true; + nativeInstallCheckInputs = [ versionCheckHook ]; + versionCheckProgramArg = "-I"; + nativeBuildInputs = [ cmake ];