diff --git a/pkgs/by-name/jp/jpegli/package.nix b/pkgs/by-name/jp/jpegli/package.nix index 68ed1766c073..86bf75f0c426 100644 --- a/pkgs/by-name/jp/jpegli/package.nix +++ b/pkgs/by-name/jp/jpegli/package.nix @@ -31,7 +31,10 @@ stdenv.mkDerivation { outputs = [ "out" + "bin" + "dev" "man" + "benchmark" ]; strictDeps = true; @@ -70,6 +73,12 @@ stdenv.mkDerivation { (lib.cmakeFeature "CMAKE_POLICY_VERSION_MINIMUM" "3.5") ]; + # Move `benchmark_xl` into a separate output to avoid a file collision + # with the `benchmark_xl` binary provided by `libjxl`. + postInstall = '' + moveToOutput "bin/benchmark_xl" "$benchmark" + ''; + doCheck = true; passthru = { diff --git a/pkgs/by-name/li/libjxl/package.nix b/pkgs/by-name/li/libjxl/package.nix index ce50b109a961..93fceb3f3095 100644 --- a/pkgs/by-name/li/libjxl/package.nix +++ b/pkgs/by-name/li/libjxl/package.nix @@ -35,7 +35,9 @@ stdenv.mkDerivation rec { outputs = [ "out" + "bin" "dev" + "benchmark" ]; src = fetchFromGitHub { @@ -150,18 +152,22 @@ stdenv.mkDerivation rec { --replace 'sh$' 'sh( -e$|$)' ''; - postInstall = - lib.optionalString enablePlugins '' - GDK_PIXBUF_MODULEDIR="$out/${gdk-pixbuf.moduleDir}" \ - GDK_PIXBUF_MODULE_FILE="$out/${loadersPath}" \ - gdk-pixbuf-query-loaders --update-cache - '' - # Cross-compiled gdk-pixbuf doesn't support thumbnailers - + lib.optionalString (enablePlugins && stdenv.hostPlatform == stdenv.buildPlatform) '' - mkdir -p "$out/bin" - makeWrapper ${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer "$out/libexec/gdk-pixbuf-thumbnailer-jxl" \ - --set GDK_PIXBUF_MODULE_FILE "$out/${loadersPath}" - ''; + # Move `benchmark_xl` into a separate output to avoid a file collision + # with the `benchmark_xl` binary provided by `jpegli`. + postInstall = '' + moveToOutput "bin/benchmark_xl" "$benchmark" + '' + + lib.optionalString enablePlugins '' + GDK_PIXBUF_MODULEDIR="$out/${gdk-pixbuf.moduleDir}" \ + GDK_PIXBUF_MODULE_FILE="$out/${loadersPath}" \ + gdk-pixbuf-query-loaders --update-cache + '' + # Cross-compiled gdk-pixbuf doesn't support thumbnailers + + lib.optionalString (enablePlugins && stdenv.hostPlatform == stdenv.buildPlatform) '' + mkdir -p "$out/bin" + makeWrapper ${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer "$out/libexec/gdk-pixbuf-thumbnailer-jxl" \ + --set GDK_PIXBUF_MODULE_FILE "$out/${loadersPath}" + ''; env = lib.optionalAttrs stdenv.hostPlatform.isAarch32 { CXXFLAGS = "-mfp16-format=ieee";