From aeac5f8550eee870bfce858ab9b5a717571bad1b Mon Sep 17 00:00:00 2001 From: Eamon Caton Date: Mon, 27 Jul 2026 09:26:29 +0900 Subject: [PATCH 1/2] poppler: fix mat2 build on Darwin by backporting upstream bugfix --- pkgs/development/libraries/poppler/default.nix | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index c0a00366eac2..cff1f3cbff63 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -3,6 +3,7 @@ stdenv, fetchurl, fetchFromGitLab, + fetchpatch, cairo, clang-tools, cmake, @@ -62,7 +63,7 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "poppler-${suffix}"; - version = "26.06.0"; # beware: updates often break cups-filters build, check scribus too! + version = "26.06.0"; outputs = [ "out" @@ -74,6 +75,16 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-TLTlo9yMte7HUciiPIuhn2H5be3AzQfSruawyOLPa6Q="; }; + patches = [ + # Backports Darwin crash fix from upstream + # https://gitlab.freedesktop.org/poppler/poppler/-/work_items/1743 + (fetchpatch { + name = "darwin-mutex-lock-crash.patch"; + url = "https://gitlab.freedesktop.org/poppler/poppler/-/commit/08f4bca6a669f9fce75dbab743db559a86591738.patch"; + hash = "sha256-+eWqVK/v3Ys9k2+z/dCoS2o82m039UER1StMUW4PIgM="; + }) + ]; + nativeBuildInputs = [ cmake ninja From 0d6d1e535f58b354b262bc56c96a365bcbb21d2c Mon Sep 17 00:00:00 2001 From: Eamon Caton Date: Wed, 29 Jul 2026 12:51:19 +0900 Subject: [PATCH 2/2] poppler: add gtk3 to test closure for unit tests --- pkgs/development/libraries/poppler/default.nix | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index cff1f3cbff63..580d1fbfb73e 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -40,6 +40,7 @@ cups-filters, gdal, gegl, + gtk3, inkscape, scribus, vips, @@ -195,9 +196,17 @@ stdenv.mkDerivation (finalAttrs: { gdal = gdal.override { usePoppler = true; }; python-poppler-qt5 = python3.pkgs.poppler-qt5; - pkg-config = testers.hasPkgConfigModules { - package = finalAttrs.finalPackage; - }; + pkg-config = + testers.hasPkgConfigModules { + package = finalAttrs.finalPackage; + } + // lib.optionalAttrs (!minimal) { + # Poppler skips tests unless GTK3 is detected; add to closure + poppler-with-gtk-tests = finalAttrs.finalPackage.overrideAttrs (old: { + pname = "${old.pname}-gtk-tests"; + buildInputs = old.buildInputs ++ [ gtk3 ]; + }); + }; }; };