about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlex James <git@alextjam.es>2023-11-05 10:42:19 -0600
committerAlex James <git@alextjam.es>2023-11-05 18:52:45 -0600
commit12cc200d4383e8ca1b3e7f5c66edcbaedbd2739d (patch)
treef869ba6da8b0401b47cf7ce5dbbbb53d7f08489e
parent968712dca9d5d7dcf6b33de6e318356e0e5f838d (diff)
python311Packages.img2pdf: fix evaluation on darwin
The img2pdf derivation uses the sRGB ICC profile provided by colord
starting with #264119. colord and several of its dependencies only
support Linux, so this broke evaluation on Darwin. This change drops the
use of colord on Darwin to fix the derivation; the system-provided sRGB
profile is used instead.
-rw-r--r--pkgs/development/python-modules/img2pdf/default-icc-profile.patch2
-rw-r--r--pkgs/development/python-modules/img2pdf/default.nix11
2 files changed, 11 insertions, 2 deletions
diff --git a/pkgs/development/python-modules/img2pdf/default-icc-profile.patch b/pkgs/development/python-modules/img2pdf/default-icc-profile.patch
index bf5e1e408614d..139eafd63ced7 100644
--- a/pkgs/development/python-modules/img2pdf/default-icc-profile.patch
+++ b/pkgs/development/python-modules/img2pdf/default-icc-profile.patch
@@ -14,7 +14,7 @@ index 036232b..d2e7829 100755
 -        if os.path.exists(profile):
 -            return profile
 -    return "/usr/share/color/icc/sRGB.icc"
-+    return "@colord@/share/color/icc/colord/sRGB.icc"
++    return "@srgbProfile@"
  
  
  def get_main_parser():
diff --git a/pkgs/development/python-modules/img2pdf/default.nix b/pkgs/development/python-modules/img2pdf/default.nix
index 06183b3d53489..a94681ada0f14 100644
--- a/pkgs/development/python-modules/img2pdf/default.nix
+++ b/pkgs/development/python-modules/img2pdf/default.nix
@@ -38,7 +38,10 @@ buildPythonPackage rec {
   patches = [
     (substituteAll {
       src = ./default-icc-profile.patch;
-      inherit colord;
+      srgbProfile = if stdenv.isDarwin then
+        "/System/Library/ColorSync/Profiles/sRGB Profile.icc"
+      else
+        "${colord}/share/color/icc/colord/sRGB.icc";
     })
     (fetchpatch {
       # https://gitlab.mister-muffin.de/josch/img2pdf/issues/178
@@ -57,6 +60,12 @@ buildPythonPackage rec {
     pillow
   ];
 
+  # FIXME: Only add "sRGB Profile.icc" to __impureHostDeps once
+  # https://github.com/NixOS/nix/issues/9301 is fixed.
+  __impureHostDeps = lib.optionals stdenv.isDarwin [
+    "/System/Library/ColorSync/Profiles"
+  ];
+
   nativeCheckInputs = [
     exiftool
     ghostscript