From 3ac147b5abbcb730405751f128b217c9bdac2670 Mon Sep 17 00:00:00 2001 From: K900 Date: Sun, 10 May 2026 10:39:45 +0300 Subject: [PATCH 1/4] crossmacro: remove unused mesa dependency Builds and runs perfectly fine without it. --- pkgs/by-name/cr/crossmacro/package.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/by-name/cr/crossmacro/package.nix b/pkgs/by-name/cr/crossmacro/package.nix index 07856440a205..d1252016121d 100644 --- a/pkgs/by-name/cr/crossmacro/package.nix +++ b/pkgs/by-name/cr/crossmacro/package.nix @@ -18,7 +18,6 @@ libxfixes, libxtst, libglvnd, - mesa, wayland, libxkbcommon, glib, @@ -71,7 +70,6 @@ buildDotnetModule rec { libxtst glib libglvnd - mesa wayland libxkbcommon ]; From e264b7c63a6c843a6b1beaa419f462dcd1be9374 Mon Sep 17 00:00:00 2001 From: K900 Date: Sun, 10 May 2026 10:42:25 +0300 Subject: [PATCH 2/4] playwright: remove hardcoded mesa dependency Things that rely on this should use llvmpipeHook instead. --- pkgs/development/web/playwright/webkit.nix | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/pkgs/development/web/playwright/webkit.nix b/pkgs/development/web/playwright/webkit.nix index 5100bdfc2e02..250c815a24b0 100644 --- a/pkgs/development/web/playwright/webkit.nix +++ b/pkgs/development/web/playwright/webkit.nix @@ -41,7 +41,6 @@ libxkbcommon, libxml2_13, libxslt, - mesa, libgbm, sqlite, systemdLibs, @@ -187,16 +186,7 @@ let wrapProgram $out/minibrowser-wpe/bin/MiniBrowser \ --prefix GIO_EXTRA_MODULES ":" "${glib-networking}/lib/gio/modules/" \ - --prefix LD_LIBRARY_PATH ":" $out/minibrowser-wpe/lib \ - --run ' - # Use Mesa as EGL vendor fallback when no system EGL vendor is configured. - # libglvnd discovers vendors via JSON files https://github.com/NVIDIA/libglvnd/blob/master/src/EGL/icd_enumeration.md - if [ -z "$__EGL_VENDOR_LIBRARY_DIRS" ] && [ -z "$__EGL_VENDOR_LIBRARY_FILENAMES" ] && \ - ! [ -d /usr/share/glvnd/egl_vendor.d ] && ! [ -d /etc/glvnd/egl_vendor.d ] && \ - ! [ -d /run/opengl-driver/share/glvnd/egl_vendor.d ]; then - export __EGL_VENDOR_LIBRARY_FILENAMES="${mesa}/share/glvnd/egl_vendor.d/50_mesa.json" - fi - ' + --prefix LD_LIBRARY_PATH ":" $out/minibrowser-wpe/lib ''; }; webkit-darwin = fetchzip { From 5bb24db2a734bffa6cbcf04364fc01bca6256c9f Mon Sep 17 00:00:00 2001 From: K900 Date: Sun, 10 May 2026 10:42:54 +0300 Subject: [PATCH 3/4] tdarr: remove unused mesa dependency Builds and runs fine without it. --- pkgs/tools/misc/tdarr/common.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/tools/misc/tdarr/common.nix b/pkgs/tools/misc/tdarr/common.nix index 499e642b4c95..790a8520e061 100644 --- a/pkgs/tools/misc/tdarr/common.nix +++ b/pkgs/tools/misc/tdarr/common.nix @@ -14,7 +14,6 @@ libayatana-appindicator, wayland, libxkbcommon, - mesa, libxcb, leptonica, glib, @@ -122,7 +121,6 @@ stdenv.mkDerivation (finalAttrs: { wayland libxkbcommon libxcb - mesa tesseract4 leptonica glib From 0c816328ae81637f36051e2da3733e24d389f41f Mon Sep 17 00:00:00 2001 From: K900 Date: Sun, 10 May 2026 10:44:20 +0300 Subject: [PATCH 4/4] zoom-us: remove mesa dependency and questionable test The NixOS test covers the same use case, but has a correctly set up, actually-graphical environment without the limitations of xvfb-run. --- nixos/tests/zoom-us.nix | 2 ++ pkgs/by-name/zo/zoom-us/package.nix | 2 -- pkgs/by-name/zo/zoom-us/test.nix | 44 ----------------------------- 3 files changed, 2 insertions(+), 46 deletions(-) delete mode 100644 pkgs/by-name/zo/zoom-us/test.nix diff --git a/nixos/tests/zoom-us.nix b/nixos/tests/zoom-us.nix index bc9961cf5a86..a8a6a3f2f9ea 100644 --- a/nixos/tests/zoom-us.nix +++ b/nixos/tests/zoom-us.nix @@ -14,5 +14,7 @@ machine.wait_for_x() machine.execute("zoom >&2 &") machine.wait_for_window("Zoom Workplace") + machine.sleep(20) + machine.wait_for_window("Zoom Workplace") ''; } diff --git a/pkgs/by-name/zo/zoom-us/package.nix b/pkgs/by-name/zo/zoom-us/package.nix index d811819729b7..916792aec826 100644 --- a/pkgs/by-name/zo/zoom-us/package.nix +++ b/pkgs/by-name/zo/zoom-us/package.nix @@ -135,7 +135,6 @@ let dontPatchELF = true; passthru.updateScript = ./update.sh; - passthru.tests.startwindow = callPackage ./test.nix { }; passthru.tests.nixos-module = nixosTests.zoom-us; meta = { @@ -179,7 +178,6 @@ let pkgs.libxi pkgs.libxkbcommon pkgs.libxslt - pkgs.mesa pkgs.mesa-demos pkgs.nspr pkgs.nss diff --git a/pkgs/by-name/zo/zoom-us/test.nix b/pkgs/by-name/zo/zoom-us/test.nix deleted file mode 100644 index 57cc2047312f..000000000000 --- a/pkgs/by-name/zo/zoom-us/test.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ - lib, - xvfb-run, - zoom-us, - runCommand, - writeShellApplication, - xwininfo, -}: - -let - testScript = writeShellApplication { - name = "zoom-us-test-script"; - runtimeInputs = [ - xwininfo - zoom-us - ]; - text = '' - function is_zoom_window_present { - echo - xwininfo -root -tree \ - | sed 's/.*0x[0-9a-f]* \"\([^\"]*\)\".*/\1/; t; d' \ - | tee window-names - grep -q "Zoom Workplace" window-names - } - # Don't let zoom eat all RAM, like it did, cf. - # https://github.com/NixOS/nixpkgs/issues/371488 - prlimit --{as,data}=$((4*2**30)):$((4*2**30)) zoom-us & - for _ in {0..900} ; do - if is_zoom_window_present ; then - break - fi - sleep 1 - done - # If libraries are missing, the window still appears, - # but then disappears again immediately; check for that also. - sleep 20 - is_zoom_window_present - ''; - }; -in -runCommand "zoom-us-test" { buildInputs = [ xvfb-run ]; } '' - HOME=$PWD xvfb-run ${lib.getExe testScript} - touch ${placeholder "out"} -''