about summary refs log tree commit diff
path: root/pkgs/tools/graphics/vips
diff options
context:
space:
mode:
authorRobert Kovacsics <robert.kovacsics@cambridgeconsultants.com>2021-08-22 15:38:11 +0100
committerRobert Kovacsics <robert.kovacsics@cambridgeconsultants.com>2021-08-22 16:16:55 +0100
commit58cff03579b48e8d4c0e3a7726ef6a78998b8e99 (patch)
tree715d766fda3422e5e2a684e599f39d36eebc7317 /pkgs/tools/graphics/vips
parent556a8fd85b10eb7cb0e9582768dfbec0373c7c9b (diff)
vips: Add optional dependencies; update to python3
The new optional dependencies increase closure size from 388.92 MiB to
414.0 MiB, a negligible change. I didn't think there was any reason to
add `withLibjpeg ? true` flags (or `enableLibjpeg`).

The optional dependencies are sorted in the order of
https://github.com/libvips/libvips/blob/master/README.md
and I have used `nix log` on the build to check they are all picked up
in configure.

The python3 support was in for ages
(https://github.com/libvips/libvips/issues/202), the remaining python3
support in tools/vipsprofile landed in
https://github.com/libvips/libvips/pull/1262 so I upgraded it to
python3. I wasn't sure if I should use a specific version, or just leave
it as python3.

I have tested vipsprofile with
```
./vips-pycairo-bin/bin/vips gaussblur ~/2021-04-30-092143_3286x1080_scrot.png x.tif 5 --vips-profile
./vips-pycairo-bin/bin/vipsprofile
```
where ~/2021-04-30-092143_3286x1080_scrot.png is just a random image
(screenshot) I had lying around. It seems to have generated an SVG file,
I don't know how to interpret it.
Diffstat (limited to 'pkgs/tools/graphics/vips')
-rw-r--r--pkgs/tools/graphics/vips/default.nix73
1 files changed, 46 insertions, 27 deletions
diff --git a/pkgs/tools/graphics/vips/default.nix b/pkgs/tools/graphics/vips/default.nix
index 90d8dc64ec88e..bfe9a1875e5ac 100644
--- a/pkgs/tools/graphics/vips/default.nix
+++ b/pkgs/tools/graphics/vips/default.nix
@@ -1,29 +1,39 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , pkg-config
 , glib
 , libxml2
 , expat
-, fftw
-, orc
-, lcms
-, imagemagick
-, openexr
-, libtiff
-, libjpeg
-, libgsf
-, libexif
-, libheif
-, librsvg
 , ApplicationServices
 , Foundation
-, python27
-, libpng
+, python3
 , fetchFromGitHub
 , fetchpatch
 , autoreconfHook
 , gtk-doc
 , gobject-introspection
-,
+  # Optional dependencies
+, libjpeg
+, libexif
+, librsvg
+, poppler
+, libgsf
+, libtiff
+, fftw
+, lcms2
+, libpng
+, libimagequant
+, imagemagick
+, pango
+, orc
+, matio
+, cfitsio
+, libwebp
+, openexr
+, openjpeg
+, libjxl
+, openslide
+, libheif
 }:
 
 stdenv.mkDerivation rec {
@@ -54,22 +64,31 @@ stdenv.mkDerivation rec {
   buildInputs = [
     glib
     libxml2
-    fftw
-    orc
-    lcms
-    imagemagick
-    openexr
-    libtiff
+    expat
+    (python3.withPackages (p: [ p.pycairo ]))
+    # Optional dependencies
     libjpeg
-    libgsf
     libexif
-    libheif
-    libpng
     librsvg
-    python27
+    poppler
+    libgsf
+    libtiff
+    fftw
+    lcms2
     libpng
-    expat
-  ] ++ lib.optionals stdenv.isDarwin [ApplicationServices Foundation];
+    libimagequant
+    imagemagick
+    pango
+    orc
+    matio
+    cfitsio
+    libwebp
+    openexr
+    openjpeg
+    libjxl
+    openslide
+    libheif
+  ] ++ lib.optionals stdenv.isDarwin [ ApplicationServices Foundation ];
 
   # Required by .pc file
   propagatedBuildInputs = [