diff options
Diffstat (limited to 'gnu/packages/image-processing.scm')
-rw-r--r-- | gnu/packages/image-processing.scm | 439 |
1 files changed, 181 insertions, 258 deletions
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm index df77bef192..272f400f67 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -17,6 +17,8 @@ ;;; Copyright © 2021 Andy Tai <atai@atai.org> ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com> +;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net> +;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru> ;;; ;;; This file is part of GNU Guix. ;;; @@ -56,6 +58,7 @@ #:use-module (gnu packages fontutils) #:use-module (gnu packages geo) #:use-module (gnu packages ghostscript) + #:use-module (gnu packages gimp) #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) @@ -103,15 +106,15 @@ (base32 "13j5yf3p6qj3mr17d77r3kcqchf055hgvk1w15vmdr8f54mwcnb8")))) (build-system cmake-build-system) (inputs - `(("icu4c" ,icu4c) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libtiff" ,libtiff) - ("libxml2" ,libxml2) - ("openssl" ,openssl) - ("zlib" ,zlib))) + (list icu4c + libjpeg-turbo + libpng + libtiff + libxml2 + openssl + zlib)) (native-inputs - `(("doxygen" ,doxygen))) ; for HTML documentation + (list doxygen)) ; for HTML documentation (home-page "https://dcmtk.org") (synopsis "Libraries and programs implementing parts of the DICOM standard") (description "DCMTK is a collection of libraries and applications @@ -160,7 +163,7 @@ licences similar to the Modified BSD licence.")))) ("maxflow" ,maxflow) ("niftilib" ,niftilib) ("nlopt" ,nlopt) - ("openexr" ,openexr) + ("openexr" ,openexr-2) ("python-lxml" ,python2-lxml) ("vtk" ,vtk))) (native-inputs @@ -223,15 +226,12 @@ of external libraries that provide additional functionality.") (("/bin/sh") (which "bash"))) #t))))) (native-inputs - `(("git" ,git) - ("pkg-config" ,pkg-config))) + (list git pkg-config)) (inputs ;; XXX Adding freeglut, glew, ilmbase, mesa, and openimageio for ;; ocioconvert fails: error: conflicting declaration ?typedef void ;; (* PFNGLGETFRAGMENTMATERIALFVSGIXPROC)(GLenum, GLenum, GLfloat*) - `(("lcms" ,lcms) - ("openexr" ,openexr) - ("tinyxml" ,tinyxml))) + (list lcms openexr-2 tinyxml)) (home-page "https://opencolorio.org") (synopsis "Color management for visual effects and animation") (description @@ -332,7 +332,7 @@ many popular formats.") ("mesa" ,mesa) ("netcdf" ,netcdf) ("png" ,libpng) - ("proj" ,proj.4) + ("proj" ,proj) ("python", python) ;("pugixml" ,pugixml) ("sqlite" ,sqlite) @@ -342,98 +342,7 @@ many popular formats.") (propagated-inputs ;; VTK's 'VTK-vtk-module-find-packages.cmake' calls ;; 'find_package(THEORA)', which in turns looks for libogg. - `(("libogg" ,libogg))) - (home-page "https://vtk.org/") - (synopsis "Libraries for 3D computer graphics") - (description - "The Visualization Toolkit (VTK) is a C++ library for 3D computer graphics, -image processing and visualization. It supports a wide variety of -visualization algorithms including: scalar, vector, tensor, texture, and -volumetric methods; and advanced modeling techniques such as: implicit -modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay -triangulation. VTK has an extensive information visualization framework, has -a suite of 3D interaction widgets, supports parallel processing, and -integrates with various databases on GUI toolkits such as Qt and Tk.") - (license license:bsd-3))) - -;; freecad needs an old version of VTK, because VTK's API changed from 8 to 9 -(define-public vtk-8 - (package - (name "vtk") - (version "8.2.0") - (source (origin - (method url-fetch) - (uri (string-append "https://vtk.org/files/release/" - (version-major+minor version) - "/VTK-" version ".tar.gz")) - (sha256 - (base32 - "1fspgp8k0myr6p2a6wkc21ldcswb4bvmb484m12mxgk1a9vxrhrl")) - (patches - (search-patches "vtk-8-fix-freetypetools-build-failure.patch")) - (modules '((guix build utils))) - (snippet - '(begin - (for-each - (lambda (dir) - (delete-file-recursively - (string-append "ThirdParty/" dir "/vtk" dir))) - ;; ogg, pugixml depended upon unconditionally - '("doubleconversion" "eigen" "expat" "freetype" "gl2ps" - "glew" "hdf5" "jpeg" "jsoncpp" "libproj" "libxml2" "lz4" - "netcdf" "png" "sqlite" "theora" "tiff" "zlib")) - #t)))) - (build-system cmake-build-system) - (arguments - '(#:build-type "Release" ;Build without '-g' to save space. - #:configure-flags '(;"-DBUILD_TESTING:BOOL=TRUE" - ;"-DVTK_MODULE_USE_EXTERNAL_vtkogg:BOOL=TRUE" ; not honored - "-DVTK_USE_SYSTEM_DOUBLECONVERSION:BOOL=TRUE" - "-DVTK_USE_SYSTEM_EIGEN:BOOL=TRUE" - "-DVTK_USE_SYSTEM_EXPAT:BOOL=TRUE" - "-DVTK_USE_SYSTEM_FREETYPE:BOOL=TRUE" - "-DVTK_USE_SYSTEM_GL2PS:BOOL=TRUE" - "-DVTK_USE_SYSTEM_GLEW:BOOL=TRUE" - "-DVTK_USE_SYSTEM_HDF5:BOOL=TRUE" - "-DVTK_USE_SYSTEM_JPEG:BOOL=TRUE" - "-DVTK_USE_SYSTEM_JSONCPP:BOOL=TRUE" - "-DVTK_USE_SYSTEM_LIBPROJ:BOOL=TRUE" - "-DVTK_USE_SYSTEM_LIBXML2:BOOL=TRUE" - "-DVTK_USE_SYSTEM_LZ4:BOOL=TRUE" - "-DVTK_USE_SYSTEM_NETCDF:BOOL=TRUE" - "-DVTK_USE_SYSTEM_PNG:BOOL=TRUE" - ;"-DVTK_USE_SYSTEM_PUGIXML:BOOL=TRUE" ; breaks IO/CityGML - "-DVTK_USE_SYSTEM_SQLITE:BOOL=TRUE" - "-DVTK_USE_SYSTEM_THEORA:BOOL=TRUE" - "-DVTK_USE_SYSTEM_TIFF:BOOL=TRUE" - "-DVTK_USE_SYSTEM_ZLIB:BOOL=TRUE") - #:tests? #f)) ;XXX: test data not included - (inputs - `(("double-conversion" ,double-conversion) - ("eigen" ,eigen) - ("expat" ,expat) - ("freetype" ,freetype) - ("gl2ps" ,gl2ps) - ("glew" ,glew) - ("glu" ,glu) - ("hdf5" ,hdf5) - ("jpeg" ,libjpeg-turbo) - ("jsoncpp" ,jsoncpp) - ;("libogg" ,libogg) - ("libtheora" ,libtheora) - ("libX11" ,libx11) - ("libxml2" ,libxml2) - ("libXt" ,libxt) - ("lz4" ,lz4) - ("mesa" ,mesa) - ("netcdf" ,netcdf) - ("png" ,libpng) - ("proj" ,proj.4) - ;("pugixml" ,pugixml) - ("sqlite" ,sqlite) - ("tiff" ,libtiff) - ("xorgproto" ,xorgproto) - ("zlib" ,zlib))) + (list libogg)) (home-page "https://vtk.org/") (synopsis "Libraries for 3D computer graphics") (description @@ -460,13 +369,13 @@ integrates with various databases on GUI toolkits such as Qt and Tk.") (base32 "0pla1r5mvkgl4sl213gfdhzrypdgai0h3z5mfgm6p9jz9hsr794j")))) (inputs - `(("jsoncpp" ,jsoncpp-for-tensorflow) - ,@(alist-delete "jsoncpp" (package-inputs vtk)))))) + (modify-inputs (package-inputs vtk) + (replace "jsoncpp" jsoncpp-for-tensorflow))))) (define-public opencv (package (name "opencv") - (version "3.4.3") + (version "4.5.4") (source (origin (method git-fetch) (uri (git-reference @@ -475,14 +384,34 @@ integrates with various databases on GUI toolkits such as Qt and Tk.") (file-name (git-file-name name version)) (sha256 (base32 - "06bc61r8myym4s8im10brdjfg4wxkrvsbhhl7vr1msdan2xddzi3")) - (patches - (search-patches "opencv-fix-build-of-grfmt_jpeg2000.cpp.patch")) + "0gf2xs3r4s51m20mpf0wdidpk0xzp3m2w6jx72fwldhn0pshlmcj")) (modules '((guix build utils))) (snippet '(begin - ;; Remove external libraries. We have all available in Guix: - (delete-file-recursively "3rdparty") + ;; Remove external libraries. We have almost all available + ;; in Guix: + (with-directory-excursion "3rdparty" + (for-each delete-file-recursively + '("carotene" + "cpufeatures" + "ffmpeg" + "include" + "ippicv" + "ittnotify" + "libjasper" + "libjpeg" + "libjpeg-turbo" + "libpng" + "libtengine" + "libtiff" + "libwebp" + "openexr" + "openjpeg" + "openvx" + "protobuf" + ;;"quirc" + "tbb" + "zlib"))) ;; Milky icon set is non-free: (delete-file-recursively "modules/highgui/src/files_Qt/Milky") @@ -490,12 +419,12 @@ integrates with various databases on GUI toolkits such as Qt and Tk.") ;; Some jars found: (for-each delete-file '("modules/java/test/pure_test/lib/junit-4.11.jar" - "samples/java/sbt/sbt/sbt-launch.jar")) - #t)))) + "samples/java/sbt/sbt/sbt-launch.jar")))))) (build-system cmake-build-system) (arguments `(#:configure-flags - (list "-DWITH_IPP=OFF" + (list "-DWITH_ADE=OFF" ;we don't have a package for ade yet + "-DWITH_IPP=OFF" "-DWITH_ITT=OFF" "-DWITH_CAROTENE=OFF" ; only visible on arm/aarch64 "-DENABLE_PRECOMPILED_HEADERS=OFF" @@ -548,60 +477,46 @@ integrates with various databases on GUI toolkits such as Qt and Tk.") (modify-phases %standard-phases (add-after 'unpack 'disable-broken-tests (lambda _ - ;; These tests fails with: - ;; vtkXOpenGLRenderWindow (0x723990): Could not find a decent config - ;; I think we have no OpenGL support with the Xvfb. - (substitute* '("modules/viz/test/test_tutorial3.cpp" - "modules/viz/test/test_main.cpp" - "modules/viz/test/tests_simple.cpp" - "modules/viz/test/test_viz3d.cpp") - (("(TEST\\(Viz, )([a-z].*\\).*)" all pre post) - (string-append pre "DISABLED_" post))) - - ;; This one fails with "unknown file: Failure" + ;; This test fails with "unknown file: Failure" ;; But I couldn't figure out which file was missing: (substitute* "../opencv-contrib/modules/face/test/test_face_align.cpp" (("(TEST\\(CV_Face_FacemarkKazemi, )(can_detect_landmarks\\).*)" all pre post) (string-append pre "DISABLED_" post))) - ;; Failure reason: Bad accuracy - ;; Incorrect count of accurate poses [2nd case]: 90.000000 / 94.000000 - (substitute* "../opencv-contrib/modules/rgbd/test/test_odometry.cpp" - (("(TEST\\(RGBD_Odometry_Rgbd, )(algorithmic\\).*)" all pre post) + ;; This test fails with a comparison between the expected 396 and + ;; the actual 440 in file size. + (substitute* "modules/imgcodecs/test/test_exr.impl.hpp" + (("(TEST\\(Imgcodecs_EXR, )(readWrite_32FC1\\).*)" all pre post) (string-append pre "DISABLED_" post))) - #t)) + ;; These fail with protobuf parse errors that come from + ;; opencv-extra/testdata. + (substitute* "modules/dnn/test/test_layers.cpp" + (("(TEST_P\\(Test_Caffe_layers, )\ +(Accum\\).*|DataAugmentation\\).*|Resample\\).*|Correlation\\).*)" all pre post) + (string-append pre "DISABLED_" post))))) (add-after 'unpack 'unpack-submodule-sources (lambda* (#:key inputs #:allow-other-keys) (mkdir "../opencv-extra") (mkdir "../opencv-contrib") (copy-recursively (assoc-ref inputs "opencv-extra") "../opencv-extra") - (invoke "tar" "xvf" - (assoc-ref inputs "opencv-contrib") - "--strip-components=1" - "-C" "../opencv-contrib"))) - - (add-after 'set-paths 'add-ilmbase-include-path + (copy-recursively (assoc-ref inputs "opencv-contrib") + "../opencv-contrib"))) + (add-after 'build 'do-not-install-3rdparty-file + (lambda _ + (substitute* "cmake_install.cmake" + (("file\\(INSTALL .*source/3rdparty/include/opencl/LICENSE.txt.*") "\n")))) + (add-before 'check 'start-xserver (lambda* (#:key inputs #:allow-other-keys) - ;; OpenEXR propagates ilmbase, but its include files do not appear - ;; in the CPATH, so we need to add "$ilmbase/include/OpenEXR/" to - ;; the CPATH to satisfy the dependency on "ImathVec.h". - (setenv "CPATH" - (string-append (assoc-ref inputs "ilmbase") - "/include/OpenEXR" - ":" (or (getenv "CPATH") ""))) - #t)) - (add-before 'check 'start-xserver - (lambda* (#:key inputs #:allow-other-keys) - (let ((xorg-server (assoc-ref inputs "xorg-server")) - (disp ":1")) - (setenv "HOME" (getcwd)) - (setenv "DISPLAY" disp) - ;; There must be a running X server and make check doesn't start one. - ;; Therefore we must do it. - (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp))))))))) + (let ((xorg-server (assoc-ref inputs "xorg-server")) + (disp ":1")) + (setenv "HOME" (getcwd)) + (setenv "DISPLAY" disp) + ;; There must be a running X server and make check doesn't start one. + ;; Therefore we must do it. + (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp))))))))) (native-inputs `(("pkg-config" ,pkg-config) ("xorg-server" ,xorg-server-for-tests) ; For running the tests @@ -609,48 +524,50 @@ integrates with various databases on GUI toolkits such as Qt and Tk.") ,(origin (method git-fetch) (uri (git-reference - (url "https://github.com/opencv/opencv_extra") - (commit version))) + (url "https://github.com/opencv/opencv_extra") + (commit version))) (file-name (git-file-name "opencv_extra" version)) (sha256 - (base32 "08p5xnq8n1jw8svvz0fnirfg7q8dm3p4a5dl7527s5xj0f9qn7lp")))) + (base32 "1fg2hxdvphdvagc2fkmhqk7qql9mp7pj2bmp8kmd7vicpr72qk82")))) ("opencv-contrib" ,(origin (method git-fetch) (uri (git-reference - (url "https://github.com/opencv/opencv_contrib") - (commit version))) + (url "https://github.com/opencv/opencv_contrib") + (commit version))) (file-name (git-file-name "opencv_contrib" version)) - (patches (search-patches "opencv-rgbd-aarch64-test-fix.patch")) (sha256 - (base32 "1f334glf39nk42mpqq6j732h3ql2mpz89jd4mcl678s8n73nfjh2")))))) - (inputs `(("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("jasper" ,jasper) - ;; ffmpeg 4.0 causes core dumps in tests. - ("ffmpeg" ,ffmpeg-3.4) - ("libtiff" ,libtiff) - ("hdf5" ,hdf5) - ("libgphoto2" ,libgphoto2) - ("libwebp" ,libwebp) - ("zlib" ,zlib) - ("gtkglext" ,gtkglext) - ("openexr" ,openexr) - ("ilmbase" ,ilmbase) - ("gtk+" ,gtk+-2) - ("python-numpy" ,python-numpy) - ("protobuf" ,protobuf) - ("vtk" ,vtk) - ("python" ,python))) + (base32 "0ga0l4ranp1834gxgp487ll1amvmssa02l2nk5ja5w0rx4d8hh26")))))) + (inputs + (list ffmpeg + gtk+ + gtkglext + hdf5 + ilmbase + imath ;should be propagated by openexr + jasper + libgphoto2 + libjpeg-turbo + libpng + libtiff + libwebp + openblas + openexr + openjpeg + protobuf + python + python-numpy + vtk + zlib)) ;; These three CVEs are not a problem of OpenCV, see: ;; https://github.com/opencv/opencv/issues/10998 (properties '((lint-hidden-cve . ("CVE-2018-7712" "CVE-2018-7713" "CVE-2018-7714")))) (synopsis "Computer vision library") - (description "OpenCV is a library aimed at -real-time computer vision, including several hundred computer -vision algorithms. It can be used to do things like: + (description "OpenCV is a library aimed at real-time computer vision, +including several hundred computer vision algorithms. It can be used to do +things like: @itemize @item image and video input and output @@ -681,30 +598,29 @@ vision algorithms. It can be used to do things like: (base32 "0vjsh3i0861f6h9as3bch956cidz824zz499pvhjs3lfjn6hhs14")))) (build-system gnu-build-system) (native-inputs - `(("gobject-introspection" ,gobject-introspection) - ("pkg-config" ,pkg-config))) + (list gobject-introspection pkg-config)) (inputs - `(("expat" ,expat) - ("fftw" ,fftw) - ("giflib" ,giflib) - ("glib" ,glib) - ("hdf5" ,hdf5) - ("imagemagick" ,imagemagick) - ("lcms" ,lcms) - ("libexif" ,libexif) - ("libgsf" ,libgsf) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("librsvg" ,librsvg) - ("libtiff" ,libtiff) - ("libxml2" ,libxml2) - ("libwebp" ,libwebp) - ("matio" ,matio) - ("niftilib" ,niftilib) - ("openexr" ,openexr) - ("orc" ,orc) - ("pango" ,pango) - ("poppler" ,poppler))) + (list expat + fftw + giflib + glib + hdf5 + imagemagick + lcms + libexif + libgsf + libjpeg-turbo + libpng + librsvg + libtiff + libxml2 + libwebp + matio + niftilib + openexr-2 + orc + pango + poppler)) (home-page "https://libvips.github.io/libvips/") (synopsis "Multithreaded image processing system with low memory needs") (description @@ -720,14 +636,14 @@ due to its architecture which automatically parallelises the image workflows.") (define-public gmic (package (name "gmic") - (version "2.9.7") + (version "3.0.0") (source (origin (method url-fetch) (uri (string-append "https://gmic.eu/files/source/gmic_" version ".tar.gz")) (sha256 - (base32 "05kzaplsl5qvxs7v6g73q0lq8dii8g6v77ap609188m7gr43f9cl")))) + (base32 "080inz0wisv3rhvbnzrgcs3j25wq86gybp68yi56gw6vwswnn19z")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;there are no tests @@ -743,18 +659,19 @@ due to its architecture which automatically parallelises the image workflows.") "-Wl,-rpath=" (assoc-ref outputs "out") "/lib"))))))) (native-inputs - `(("pkg-config" ,pkg-config))) + (list pkg-config)) (inputs - `(("curl" ,curl) - ("fftw" ,fftw) - ("graphicsmagick" ,graphicsmagick) - ("libjpeg-turbo" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libtiff" ,libtiff) - ("libx11" ,libx11) - ;;("opencv" ,opencv) ;OpenCV is currently broken in the CI - ("openexr" ,openexr) - ("zlib" ,zlib))) + (list curl + fftw + graphicsmagick + imath + libjpeg-turbo + libpng + libtiff + libx11 + ;;opencv ;OpenCV is currently broken in the CI + openexr + zlib)) (home-page "https://gmic.eu/") (synopsis "Full-featured framework for digital image processing") (description "G'MIC is a full-featured framework for digital image @@ -780,12 +697,10 @@ including 2D color images.") (add-after 'unpack 'qt-chdir (lambda _ (chdir "gmic-qt") #t)))))) (native-inputs - `(("pkg-config" ,pkg-config) - ("qttools" ,qttools))) + (list pkg-config qttools)) (inputs - `(("gmic" ,gmic) - ("qtbase" ,qtbase-5) - ,@(package-inputs gmic))) + (modify-inputs (package-inputs gmic) + (prepend gmic qtbase-5))) (synopsis "Qt frontend for the G'MIC image processing framework") (license license:gpl3+))) @@ -801,6 +716,22 @@ including 2D color images.") (assoc-ref %build-inputs "gmic") "/lib"))))) (synopsis "Krita plugin for the G'MIC image processing framework"))) +(define-public gmic-qt-gimp + (package + (inherit gmic-qt) + (name "gmic-qt-gimp") + (inputs + ;; GIMP and its dependencies. + (modify-inputs (package-inputs gmic-qt) + (prepend gimp gdk-pixbuf cairo gegl))) + (arguments + (substitute-keyword-arguments (package-arguments gmic-qt) + ((#:configure-flags flags) + '(list "-DGMIC_QT_HOST=gimp" "-DENABLE_DYNAMIC_LINKING=ON" + (string-append "-DGMIC_LIB_PATH=" + (assoc-ref %build-inputs "gmic") "/lib"))))) + (synopsis "GIMP plugin for the G'MIC image processing framework"))) + (define-public nip2 (package (name "nip2") @@ -840,13 +771,11 @@ including 2D color images.") ("matio" ,matio) ("lcms" ,lcms) ("libwebp" ,libwebp) - ("openexr" ,openexr) + ("openexr" ,openexr-2) ("poppler" ,poppler) ("gsl" ,gsl))) (native-inputs - `(("flex" ,flex) - ("bison" ,bison) - ("pkg-config" ,pkg-config))) + (list flex bison pkg-config)) (home-page "https://github.com/libvips/nip2") (synopsis "Spreadsheet-like GUI for libvips") (description "This package provide a graphical user interface (GUI) for @@ -886,11 +815,7 @@ recalculates.") #t)))) (build-system cmake-build-system) (inputs - `(("libgeotiff" ,libgeotiff) - ("libtiff" ,libtiff) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("zlib" ,zlib))) + (list libgeotiff libtiff libjpeg-turbo libpng zlib)) (home-page "https://github.com/vxl/vxl/") (synopsis "Collection of C++ libraries for computer vision") (description "VXL (the Vision-something-Libraries) is a collection of C++ @@ -976,8 +901,7 @@ libraries designed for computer vision research and implementation.") ("vxl" ,vxl-1) ("zlib" ,zlib))) (native-inputs - `(("googletest" ,googletest) - ("pkg-config" ,pkg-config))) + (list googletest pkg-config)) (home-page "https://github.com/InsightSoftwareConsortium/ITK/") (synopsis "Scientific image processing, segmentation and registration") (description "The Insight Toolkit (ITK) is a toolkit for N-dimensional @@ -1233,7 +1157,7 @@ substituted by matching images.") "0kixwjb2x457dq7927hkh34c803p7yh1pmn6n61rk9shqrcg492h")))) (build-system qt-build-system) (native-inputs - `(("qttools" ,qttools))) + (list qttools)) (inputs `(("boost" ,boost) ("libjpeg" ,libjpeg-turbo) @@ -1276,9 +1200,7 @@ and Scan Tailor Enhanced versions as well as including many more bug fixes.") (base32 "14m92dskzw7bwsr64ha4p0mj3ndv13gwcbfic3qxrs3zq5353s7l")))) (build-system gnu-build-system) (inputs - `(("libtiff" ,libtiff) - ("zlib" ,zlib) - ("libjpeg-turbo" ,libjpeg-turbo))) + (list libtiff zlib libjpeg-turbo)) (home-page "https://www.astromatic.net/software/stiff") (synopsis "Convert scientific FITS images to TIFF format") (description @@ -1312,11 +1234,8 @@ purposes.") (invoke "pytest" "-v" "tests")) #t))))) (propagated-inputs - `(("python-matplotlib" ,python-matplotlib) - ("python-numpy" ,python-numpy) - ("python-pillow" ,python-pillow) - ("python-pyyaml" ,python-pyyaml))) - (native-inputs `(("python-pytest" ,python-pytest))) + (list python-matplotlib python-numpy python-pillow python-pyyaml)) + (native-inputs (list python-pytest)) (home-page "http://github.com/wkentaro/imgviz") (synopsis "Image Visualization Tools") (description "Python library for object detection, semantic and instance @@ -1326,7 +1245,7 @@ segmentation.") (define-public labelme (package (name "labelme") - (version "4.5.9") + (version "4.5.13") (source (origin ;; PyPi tarball lacks tests. @@ -1336,11 +1255,17 @@ segmentation.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "12wn291516kdv0wqngz4l04j95g3rwc6cvkcb0gw8rrv4wgc7c66")))) + (base32 "0cmi2xb4dgh7738l259rgwhn9l134f0vnaaqc2gflc5yr3lqhrv2")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'loosen-requirements + (lambda _ + ;; Don't require an outdated version of matplotlib. + (substitute* "setup.py" + (("matplotlib<3\\.3") + "matplotlib")))) (add-before 'check 'start-xserver (lambda* (#:key inputs #:allow-other-keys) (let ((xorg-server (assoc-ref inputs "xorg-server"))) @@ -1362,17 +1287,15 @@ segmentation.") (setenv "MPLBACKEND" "agg") (invoke "pytest" "-v" "tests" "-m" "not gpu"))))))) (propagated-inputs - `(("python-imgviz" ,python-imgviz) - ("python-matplotlib" ,python-matplotlib) - ("python-numpy" ,python-numpy) - ("python-pillow" ,python-pillow) - ("python-pyyaml" ,python-pyyaml) - ("python-qtpy" ,python-qtpy) - ("python-termcolor" ,python-termcolor))) + (list python-imgviz + python-matplotlib + python-numpy + python-pillow + python-pyyaml + python-qtpy + python-termcolor)) (native-inputs - `(("python-pytest" ,python-pytest) - ("python-pytest-qt" ,python-pytest-qt) - ("xorg-server" ,xorg-server-for-tests))) + (list python-pytest python-pytest-qt xorg-server-for-tests)) (home-page "https://github.com/wkentaro/labelme") (synopsis "Image Polygonal Annotation") |