From fe5b2c2d9c6cc4a8c4302414fe2cd269001f114e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Tue, 15 Jul 2025 10:20:12 -0400 Subject: [PATCH 1/2] darktable: temporarily disable libavif support due to broken cmake files fixes #425306 --- pkgs/by-name/da/darktable/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/da/darktable/package.nix b/pkgs/by-name/da/darktable/package.nix index bfd11d3ae64e..dd82ac70a181 100644 --- a/pkgs/by-name/da/darktable/package.nix +++ b/pkgs/by-name/da/darktable/package.nix @@ -120,7 +120,7 @@ stdenv.mkDerivation rec { lensfun lerc libaom - libavif + #libavif # TODO re-enable once cmake files are fixed (#425306) libdatrie libepoxy libexif From 3bed64fa4eb1b18e6018010469b0d941808f23ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Mon, 21 Jul 2025 13:15:29 +0200 Subject: [PATCH 2/2] darktable: fix build by using Saxon XSLT processor The build was failing due to inconsistent ID generation in XSLT transformations. The generate_prefs.xsl uses generate-id() which produces different IDs between function declarations and their usage when using libxslt. Switching to Saxon XSLT processor resolves this issue as it handles generate-id() more consistently. --- pkgs/by-name/da/darktable/package.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/da/darktable/package.nix b/pkgs/by-name/da/darktable/package.nix index dd82ac70a181..78d8e6218267 100644 --- a/pkgs/by-name/da/darktable/package.nix +++ b/pkgs/by-name/da/darktable/package.nix @@ -2,6 +2,7 @@ lib, stdenv, fetchurl, + runCommand, # nativeBuildInputs cmake, @@ -12,6 +13,7 @@ perl, pkg-config, wrapGAppsHook3, + saxon, # buildInputs SDL2, @@ -52,7 +54,6 @@ libtiff, libwebp, libxml2, - libxslt, lua, util-linux, openexr, @@ -79,6 +80,17 @@ gitUpdater, }: +let + # Create a wrapper for saxon to provide saxon-xslt command + saxon-xslt = runCommand "saxon-xslt" { } '' + mkdir -p $out/bin + cat > $out/bin/saxon-xslt << 'EOF' + #!/bin/sh + exec ${saxon}/bin/saxon "$@" + EOF + chmod +x $out/bin/saxon-xslt + ''; +in stdenv.mkDerivation rec { version = "5.2.0"; pname = "darktable"; @@ -97,6 +109,7 @@ stdenv.mkDerivation rec { perl pkg-config wrapGAppsHook3 + saxon-xslt # Use Saxon instead of libxslt to fix XSLT generate-id() consistency issues ]; buildInputs = @@ -138,7 +151,6 @@ stdenv.mkDerivation rec { libtiff libwebp libxml2 - libxslt lua openexr openjpeg