From 5cc881d0d827b4c3f273b5021a7c0b94c112368f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Feb 2021 14:17:52 +0100 Subject: [PATCH 1/9] imagemagick: make 7.0 default --- nixos/doc/manual/release-notes/rl-2105.xml | 8 ++++++++ .../graphics/ImageMagick/{default.nix => 6.x.nix} | 0 pkgs/top-level/aliases.nix | 3 +++ pkgs/top-level/all-packages.nix | 12 ++++++------ 4 files changed, 17 insertions(+), 6 deletions(-) rename pkgs/applications/graphics/ImageMagick/{default.nix => 6.x.nix} (100%) diff --git a/nixos/doc/manual/release-notes/rl-2105.xml b/nixos/doc/manual/release-notes/rl-2105.xml index 302a6d3f3749..e03142d3d043 100644 --- a/nixos/doc/manual/release-notes/rl-2105.xml +++ b/nixos/doc/manual/release-notes/rl-2105.xml @@ -524,6 +524,14 @@ self: super: data from the device and mix it into the kernel's RNG. + + + The default version of ImageMagick has been updated from 6 to 7. + You can use imagemagick6, + imagemagick6_light, and + imagemagick6Big if you need the older version. + + diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/6.x.nix similarity index 100% rename from pkgs/applications/graphics/ImageMagick/default.nix rename to pkgs/applications/graphics/ImageMagick/6.x.nix diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 812f5cf49b44..677c2b73b649 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -286,6 +286,9 @@ mapAliases ({ icedtea8_web = adoptopenjdk-icedtea-web; # added 2019-08-21 icedtea_web = adoptopenjdk-icedtea-web; # added 2019-08-21 idea = jetbrains; # added 2017-04-03 + imagemagick7_light = imagemagick_light; # added 2021-02-22 + imagemagick7 = imagemagick; # added 2021-02-22 + imagemagick7Big = imagemagickBig; # added 2021-02-22 inboxer = throw "inboxer has been removed as it is no longer maintained and no longer works as Google shut down the inbox service this package wrapped."; infiniband-diags = rdma-core; # added 2019-08-09 inotifyTools = inotify-tools; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 063205a3f173..55e10c5334a8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23069,7 +23069,7 @@ in imagej = callPackage ../applications/graphics/imagej { }; - imagemagick_light = imagemagick.override { + imagemagick6_light = imagemagick6.override { bzip2 = null; zlib = null; libX11 = null; @@ -23092,14 +23092,14 @@ in libde265 = null; }; - imagemagick = callPackage ../applications/graphics/ImageMagick { + imagemagick6 = callPackage ../applications/graphics/ImageMagick/6.x.nix { inherit (darwin.apple_sdk.frameworks) ApplicationServices; ghostscript = null; }; - imagemagickBig = imagemagick.override { inherit ghostscript; }; + imagemagick6Big = imagemagick6.override { inherit ghostscript; }; - imagemagick7_light = lowPrio (imagemagick7.override { + imagemagick_light = lowPrio (imagemagick.override { bzip2 = null; zlib = null; libX11 = null; @@ -23121,11 +23121,11 @@ in libheif = null; }); - imagemagick7 = lowPrio (imagemagick7Big.override { + imagemagick = lowPrio (imagemagickBig.override { ghostscript = null; }); - imagemagick7Big = lowPrio (callPackage ../applications/graphics/ImageMagick/7.0.nix { + imagemagickBig = lowPrio (callPackage ../applications/graphics/ImageMagick/7.0.nix { inherit (darwin.apple_sdk.frameworks) ApplicationServices; }); From 10ba3c20a7bdd6021511338b1f01465cfc9b3bee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Feb 2021 18:36:56 +0100 Subject: [PATCH 2/9] treewide: replace imagemagick7 with imagemagick --- pkgs/applications/office/paperless/default.nix | 4 ++-- pkgs/development/libraries/vapoursynth/default.nix | 9 +++------ pkgs/development/php-packages/imagick/default.nix | 4 ++-- pkgs/development/python-modules/Wand/default.nix | 6 +++--- pkgs/games/portmod/default.nix | 4 ++-- pkgs/tools/graphics/ldgallery/default.nix | 4 ++-- 6 files changed, 14 insertions(+), 17 deletions(-) diff --git a/pkgs/applications/office/paperless/default.nix b/pkgs/applications/office/paperless/default.nix index 499078611fcb..c2578696c688 100644 --- a/pkgs/applications/office/paperless/default.nix +++ b/pkgs/applications/office/paperless/default.nix @@ -5,7 +5,7 @@ , callPackage , python3 -, imagemagick7 +, imagemagick , ghostscript , optipng , tesseract @@ -65,7 +65,7 @@ let buildPhase = let # Paperless has explicit runtime checks that expect these binaries to be in PATH - extraBin = lib.makeBinPath [ imagemagick7 ghostscript optipng tesseract unpaper ]; + extraBin = lib.makeBinPath [ imagemagick ghostscript optipng tesseract unpaper ]; in '' ${python.interpreter} -m compileall $srcDir diff --git a/pkgs/development/libraries/vapoursynth/default.nix b/pkgs/development/libraries/vapoursynth/default.nix index 4265948c1950..8ef209fe8051 100644 --- a/pkgs/development/libraries/vapoursynth/default.nix +++ b/pkgs/development/libraries/vapoursynth/default.nix @@ -2,13 +2,10 @@ , runCommandCC, runCommand, vapoursynth, writeText, patchelf, buildEnv , zimg, libass, python3, libiconv , ApplicationServices -, ocrSupport ? false, tesseract ? null -, imwriSupport? true, imagemagick7 ? null +, ocrSupport ? false, tesseract +, imwriSupport ? true, imagemagick }: -assert ocrSupport -> tesseract != null; -assert imwriSupport -> imagemagick7 != null; - with lib; stdenv.mkDerivation rec { @@ -32,7 +29,7 @@ stdenv.mkDerivation rec { (python3.withPackages (ps: with ps; [ sphinx cython ])) ] ++ optionals stdenv.isDarwin [ libiconv ApplicationServices ] ++ optional ocrSupport tesseract - ++ optional imwriSupport imagemagick7; + ++ optional imwriSupport imagemagick; configureFlags = [ (optionalString (!ocrSupport) "--disable-ocr") diff --git a/pkgs/development/php-packages/imagick/default.nix b/pkgs/development/php-packages/imagick/default.nix index 9d2b8670efc3..ebff9b00f02c 100644 --- a/pkgs/development/php-packages/imagick/default.nix +++ b/pkgs/development/php-packages/imagick/default.nix @@ -1,4 +1,4 @@ -{ buildPecl, fetchpatch, lib, imagemagick7, pkg-config, pcre' }: +{ buildPecl, fetchpatch, lib, imagemagick, pkg-config, pcre' }: buildPecl { pname = "imagick"; @@ -19,7 +19,7 @@ buildPecl { }) ]; - configureFlags = [ "--with-imagick=${imagemagick7.dev}" ]; + configureFlags = [ "--with-imagick=${imagemagick.dev}" ]; nativeBuildInputs = [ pkg-config ]; buildInputs = [ pcre' ]; diff --git a/pkgs/development/python-modules/Wand/default.nix b/pkgs/development/python-modules/Wand/default.nix index e180f0cea332..054cce0ce520 100644 --- a/pkgs/development/python-modules/Wand/default.nix +++ b/pkgs/development/python-modules/Wand/default.nix @@ -1,7 +1,7 @@ { lib , buildPythonPackage , fetchPypi -, imagemagick7Big +, imagemagickBig }: buildPythonPackage rec { @@ -16,13 +16,13 @@ buildPythonPackage rec { postPatch = '' substituteInPlace wand/api.py --replace \ "magick_home = os.environ.get('MAGICK_HOME')" \ - "magick_home = '${imagemagick7Big}'" + "magick_home = '${imagemagickBig}'" ''; # tests not included with pypi release doCheck = false; - passthru.imagemagick = imagemagick7Big; + passthru.imagemagick = imagemagickBig; meta = with lib; { description = "Ctypes-based simple MagickWand API binding for Python"; diff --git a/pkgs/games/portmod/default.nix b/pkgs/games/portmod/default.nix index ef535991c23b..108d81815faa 100644 --- a/pkgs/games/portmod/default.nix +++ b/pkgs/games/portmod/default.nix @@ -1,5 +1,5 @@ { lib, callPackage, python3Packages, fetchFromGitLab, cacert, - rustPlatform, bubblewrap, git, perlPackages, imagemagick7, fetchurl, fetchzip, + rustPlatform, bubblewrap, git, perlPackages, imagemagick, fetchurl, fetchzip, jre, makeWrapper, tr-patcher, tes3cmd }: let @@ -29,7 +29,7 @@ let python3Packages.virtualenv tr-patcher tes3cmd - imagemagick7 + imagemagick ]; in diff --git a/pkgs/tools/graphics/ldgallery/default.nix b/pkgs/tools/graphics/ldgallery/default.nix index 77acafcb8125..6291dc9d6423 100644 --- a/pkgs/tools/graphics/ldgallery/default.nix +++ b/pkgs/tools/graphics/ldgallery/default.nix @@ -1,4 +1,4 @@ -{ lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick7 }: +{ lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick }: with lib; with haskell.lib; @@ -29,7 +29,7 @@ justStaticExecutables (overrideCabal ldgallery-compiler (oldAttrs: { # wrapper for runtime dependencies registration wrapProgram "$out/bin/ldgallery" \ - --prefix PATH : ${lib.makeBinPath [ imagemagick7 ]} + --prefix PATH : ${lib.makeBinPath [ imagemagick ]} # bash completion mkdir -p "$out/share/bash-completion/completions" From d3cd7c36c3971dfa948faa2e0073614d8fb53150 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Feb 2021 15:45:30 +0100 Subject: [PATCH 3/9] libdmtx: 0.7.4 -> 0.7.5 --- .../development/libraries/libdmtx/default.nix | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/libdmtx/default.nix b/pkgs/development/libraries/libdmtx/default.nix index 994f010252fd..c26ccc347f9a 100644 --- a/pkgs/development/libraries/libdmtx/default.nix +++ b/pkgs/development/libraries/libdmtx/default.nix @@ -1,18 +1,27 @@ -{ lib, stdenv, fetchurl, pkg-config }: +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, pkg-config +}: stdenv.mkDerivation rec { - name = "libdmtx-0.7.4"; + pname = "libdmtx"; + version = "0.7.5"; - src = fetchurl { - url = "mirror://sourceforge/libdmtx/${name}.tar.bz2"; - sha256 = "0xnxx075ycy58n92yfda2z9zgd41h3d4ik5d9l197lzsqim5hb5n"; + src = fetchFromGitHub { + owner = "dmtx"; + repo = "libdmtx"; + rev = "v${version}"; + sha256 = "0wk3fkxzf9ip75v8ia54v6ywx72ajp5s6777j4ay8barpbv869rj"; }; - nativeBuildInputs = [ pkg-config ]; + nativeBuildInputs = [ autoreconfHook pkg-config ]; meta = { description = "An open source software for reading and writing Data Matrix barcodes"; - homepage = "http://libdmtx.org"; + homepage = "https://github.com/dmtx/libdmtx"; + changelog = "https://github.com/dmtx/libdmtx/blob/v${version}/ChangeLog"; platforms = lib.platforms.all; maintainers = [ ]; license = lib.licenses.bsd2; From 9872e4a892a5a5554db35536b29001be293277c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Feb 2021 15:13:47 +0100 Subject: [PATCH 4/9] dmtx-utils: 0.7.4 -> 0.7.6 --- pkgs/tools/graphics/dmtx-utils/default.nix | 51 ++++++++++--------- .../graphics/dmtx-utils/default.upstream | 4 -- 2 files changed, 27 insertions(+), 28 deletions(-) delete mode 100644 pkgs/tools/graphics/dmtx-utils/default.upstream diff --git a/pkgs/tools/graphics/dmtx-utils/default.nix b/pkgs/tools/graphics/dmtx-utils/default.nix index a22f0bc60d47..4ab54593ed8d 100644 --- a/pkgs/tools/graphics/dmtx-utils/default.nix +++ b/pkgs/tools/graphics/dmtx-utils/default.nix @@ -1,30 +1,33 @@ -{lib, stdenv, fetchurl, libdmtx, pkg-config, imagemagick}: -let - s = # Generated upstream information - rec { - baseName="dmtx-utils"; - version="0.7.4"; - name="${baseName}-${version}"; - hash="1di8ymlziy9856abd6rb72z0zqzmrff4r3vql0q9r5sk5ax4s417"; - url="mirror://sourceforge/project/libdmtx/libdmtx/0.7.4/dmtx-utils-0.7.4.tar.gz"; - sha256="1di8ymlziy9856abd6rb72z0zqzmrff4r3vql0q9r5sk5ax4s417"; - }; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ - libdmtx imagemagick - ]; -in -stdenv.mkDerivation { - inherit (s) name version; - inherit nativeBuildInputs buildInputs; - src = fetchurl { - inherit (s) url sha256; +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, pkg-config +, libdmtx +, imagemagick +}: + +stdenv.mkDerivation rec { + pname = "dmtx-utils"; + version = "0.7.6"; + + src = fetchFromGitHub { + owner = "dmtx"; + repo = "dmtx-utils"; + rev = "v${version}"; + sha256 = "06m3qncqdlcnmw83n95yrx2alaq6bld320ax26z4ndnla41yk0p4"; }; + + nativeBuildInputs = [ autoreconfHook pkg-config ]; + + buildInputs = [ libdmtx imagemagick ]; + meta = { - inherit (s) version; description = "Data matrix command-line utilities"; - license = lib.licenses.lgpl2 ; - maintainers = [lib.maintainers.raskin]; + homepage = "https://github.com/dmtx/dmtx-utils"; + changelog = "https://github.com/dmtx/dmtx-utils/blob/v${version}/ChangeLog"; + license = lib.licenses.lgpl2; + maintainers = [ lib.maintainers.raskin ]; platforms = lib.platforms.unix; }; } diff --git a/pkgs/tools/graphics/dmtx-utils/default.upstream b/pkgs/tools/graphics/dmtx-utils/default.upstream deleted file mode 100644 index 2bb7fe31bf7c..000000000000 --- a/pkgs/tools/graphics/dmtx-utils/default.upstream +++ /dev/null @@ -1,4 +0,0 @@ -url https://sourceforge.net/projects/libdmtx/files/libdmtx/ -SF_version_dir -version_link 'dmtx-utils-.*[.]tar[.][a-z0-9]+/download$' -SF_redirect From b8f50e15fe1001b0f93d68e83c54db2d47a61d17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Feb 2021 16:00:30 +0100 Subject: [PATCH 5/9] cataract: use imagemagick6 --- pkgs/applications/misc/cataract/build.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/cataract/build.nix b/pkgs/applications/misc/cataract/build.nix index f894dc91bd8a..0adab84830d2 100644 --- a/pkgs/applications/misc/cataract/build.nix +++ b/pkgs/applications/misc/cataract/build.nix @@ -5,7 +5,7 @@ , pkg-config , libxml2 , exiv2 -, imagemagick +, imagemagick6 , version , sha256 , rev }: @@ -20,7 +20,7 @@ stdenv.mkDerivation { }; nativeBuildInputs = [ autoreconfHook pkg-config ]; - buildInputs = [ glib libxml2 exiv2 imagemagick ]; + buildInputs = [ glib libxml2 exiv2 imagemagick6 ]; prePatch = '' sed -i 's|#include |#include |' src/jpeg-utils.cpp From 4b7d9b285528580f704a6e828e0420c84e9494ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Feb 2021 16:57:57 +0100 Subject: [PATCH 6/9] perlPackages.PerlMagick: 6.89-1 -> 7.0.10 --- pkgs/top-level/perl-packages.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 88d1ddd873a6..d12e2500285f 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -16739,19 +16739,18 @@ let }; }; - PerlMagick = buildPerlPackage { + PerlMagick = buildPerlPackage rec { pname = "PerlMagick"; - version = "6.89-1"; + version = "7.0.10"; src = fetchurl { - url = "mirror://cpan/authors/id/J/JC/JCRISTY/PerlMagick-6.89-1.tar.gz"; - sha256 = "0n9afy1z5bhf9phrbahnkwhgcmijn8jggpbzwrivw1zhliliiy68"; + url = "mirror://cpan/authors/id/J/JC/JCRISTY/PerlMagick-${version}.tar.gz"; + sha256 = "1x05hdb3b6qs36x958b4w46qanvkqm6rpc44rlq4rd2w3gbp4lhx"; }; buildInputs = [ pkgs.imagemagick ]; preConfigure = '' sed -i -e 's|my \$INC_magick = .*|my $INC_magick = "-I${pkgs.imagemagick.dev}/include/ImageMagick";|' Makefile.PL ''; - doCheck = false; }; PerlTidy = buildPerlPackage rec { From e13c16ec75f78e98abb2b2163da584122e0d808e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Feb 2021 17:55:33 +0100 Subject: [PATCH 7/9] pfstools: use imagemagick6 --- pkgs/tools/graphics/pfstools/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/graphics/pfstools/default.nix b/pkgs/tools/graphics/pfstools/default.nix index ded996741864..99b9e3e0e487 100644 --- a/pkgs/tools/graphics/pfstools/default.nix +++ b/pkgs/tools/graphics/pfstools/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, mkDerivation, fetchurl, cmake, pkg-config, darwin -, openexr, zlib, imagemagick, libGLU, libGL, freeglut, fftwFloat +, openexr, zlib, imagemagick6, libGLU, libGL, freeglut, fftwFloat , fftw, gsl, libexif, perl, opencv2, qtbase, netpbm }: @@ -27,7 +27,7 @@ mkDerivation rec { nativeBuildInputs = [ cmake pkg-config ]; buildInputs = [ - openexr zlib imagemagick fftwFloat + openexr zlib imagemagick6 fftwFloat fftw gsl libexif perl opencv2 qtbase netpbm ] ++ (if stdenv.isDarwin then (with darwin.apple_sdk.frameworks; [ OpenGL GLUT From 147359ee16670fd2d22236ac93044c57f181a027 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 23 Feb 2021 10:13:23 +0100 Subject: [PATCH 8/9] perlPackages.Gtk3ImageView: disable tests --- pkgs/top-level/perl-packages.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index d12e2500285f..55c18b2d2d45 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -9142,6 +9142,10 @@ let }; buildInputs = [ pkgs.gtk3 ]; propagatedBuildInputs = [ Readonly Gtk3 ]; + # Tests are broken with PerlMagick and imagemagick version 7 as of 2021-02-22. + # See https://github.com/carygravel/gtk3-imageview/issues/19 and + # https://github.com/NixOS/nixpkgs/pull/114007#issuecomment-783595659. + doCheck = false; checkInputs = [ TestDifferences PerlMagick TryTiny TestMockObject CarpAlways pkgs.librsvg ]; checkPhase = '' ${pkgs.xvfb_run}/bin/xvfb-run -s '-screen 0 800x600x24' \ From 60267c0ef64a21ac8be1ccb17f15f9774a17e404 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 23 Feb 2021 10:29:59 +0100 Subject: [PATCH 9/9] rss-glx: use imagemagick6 --- pkgs/misc/screensavers/rss-glx/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/misc/screensavers/rss-glx/default.nix b/pkgs/misc/screensavers/rss-glx/default.nix index f3e5ae251aec..981db782c7c9 100644 --- a/pkgs/misc/screensavers/rss-glx/default.nix +++ b/pkgs/misc/screensavers/rss-glx/default.nix @@ -1,4 +1,4 @@ -{lib, stdenv, fetchurl, pkg-config, xlibsWrapper, libXext, libGLU, libGL, imagemagick, libtiff, bzip2}: +{lib, stdenv, fetchurl, pkg-config, xlibsWrapper, libXext, libGLU, libGL, imagemagick6, libtiff, bzip2}: stdenv.mkDerivation rec { version = "0.9.1"; @@ -10,9 +10,9 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ libGLU libGL xlibsWrapper imagemagick libtiff bzip2 ]; + buildInputs = [ libGLU libGL xlibsWrapper imagemagick6 libtiff bzip2 ]; - NIX_CFLAGS_COMPILE = "-I${imagemagick.dev}/include/ImageMagick"; + NIX_CFLAGS_COMPILE = "-I${imagemagick6.dev}/include/ImageMagick"; NIX_LDFLAGS= "-rpath ${libXext}/lib"; meta = {