Merge pull request #114007 from dotlambda/imagemagick7-default

imagemagick: make 7.0 default
This commit is contained in:
Robert Schütz 2021-02-27 18:41:20 +01:00 committed by GitHub
commit 31a050c427
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 89 additions and 70 deletions

View File

@ -524,6 +524,14 @@ self: super:
data from the device and mix it into the kernel's RNG. data from the device and mix it into the kernel's RNG.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The default version of ImageMagick has been updated from 6 to 7.
You can use <package>imagemagick6</package>,
<package>imagemagick6_light</package>, and
<package>imagemagick6Big</package> if you need the older version.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -5,7 +5,7 @@
, pkg-config , pkg-config
, libxml2 , libxml2
, exiv2 , exiv2
, imagemagick , imagemagick6
, version , version
, sha256 , sha256
, rev }: , rev }:
@ -20,7 +20,7 @@ stdenv.mkDerivation {
}; };
nativeBuildInputs = [ autoreconfHook pkg-config ]; nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ glib libxml2 exiv2 imagemagick ]; buildInputs = [ glib libxml2 exiv2 imagemagick6 ];
prePatch = '' prePatch = ''
sed -i 's|#include <exiv2/exif.hpp>|#include <exiv2/exiv2.hpp>|' src/jpeg-utils.cpp sed -i 's|#include <exiv2/exif.hpp>|#include <exiv2/exiv2.hpp>|' src/jpeg-utils.cpp

View File

@ -5,7 +5,7 @@
, callPackage , callPackage
, python3 , python3
, imagemagick7 , imagemagick
, ghostscript , ghostscript
, optipng , optipng
, tesseract , tesseract
@ -65,7 +65,7 @@ let
buildPhase = let buildPhase = let
# Paperless has explicit runtime checks that expect these binaries to be in PATH # 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 '' in ''
${python.interpreter} -m compileall $srcDir ${python.interpreter} -m compileall $srcDir

View File

@ -1,18 +1,27 @@
{ lib, stdenv, fetchurl, pkg-config }: { lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, pkg-config
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libdmtx-0.7.4"; pname = "libdmtx";
version = "0.7.5";
src = fetchurl { src = fetchFromGitHub {
url = "mirror://sourceforge/libdmtx/${name}.tar.bz2"; owner = "dmtx";
sha256 = "0xnxx075ycy58n92yfda2z9zgd41h3d4ik5d9l197lzsqim5hb5n"; repo = "libdmtx";
rev = "v${version}";
sha256 = "0wk3fkxzf9ip75v8ia54v6ywx72ajp5s6777j4ay8barpbv869rj";
}; };
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ autoreconfHook pkg-config ];
meta = { meta = {
description = "An open source software for reading and writing Data Matrix barcodes"; 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; platforms = lib.platforms.all;
maintainers = [ ]; maintainers = [ ];
license = lib.licenses.bsd2; license = lib.licenses.bsd2;

View File

@ -2,13 +2,10 @@
, runCommandCC, runCommand, vapoursynth, writeText, patchelf, buildEnv , runCommandCC, runCommand, vapoursynth, writeText, patchelf, buildEnv
, zimg, libass, python3, libiconv , zimg, libass, python3, libiconv
, ApplicationServices , ApplicationServices
, ocrSupport ? false, tesseract ? null , ocrSupport ? false, tesseract
, imwriSupport? true, imagemagick7 ? null , imwriSupport ? true, imagemagick
}: }:
assert ocrSupport -> tesseract != null;
assert imwriSupport -> imagemagick7 != null;
with lib; with lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -32,7 +29,7 @@ stdenv.mkDerivation rec {
(python3.withPackages (ps: with ps; [ sphinx cython ])) (python3.withPackages (ps: with ps; [ sphinx cython ]))
] ++ optionals stdenv.isDarwin [ libiconv ApplicationServices ] ] ++ optionals stdenv.isDarwin [ libiconv ApplicationServices ]
++ optional ocrSupport tesseract ++ optional ocrSupport tesseract
++ optional imwriSupport imagemagick7; ++ optional imwriSupport imagemagick;
configureFlags = [ configureFlags = [
(optionalString (!ocrSupport) "--disable-ocr") (optionalString (!ocrSupport) "--disable-ocr")

View File

@ -1,4 +1,4 @@
{ buildPecl, fetchpatch, lib, imagemagick7, pkg-config, pcre' }: { buildPecl, fetchpatch, lib, imagemagick, pkg-config, pcre' }:
buildPecl { buildPecl {
pname = "imagick"; pname = "imagick";
@ -19,7 +19,7 @@ buildPecl {
}) })
]; ];
configureFlags = [ "--with-imagick=${imagemagick7.dev}" ]; configureFlags = [ "--with-imagick=${imagemagick.dev}" ];
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
buildInputs = [ pcre' ]; buildInputs = [ pcre' ];

View File

@ -1,7 +1,7 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, imagemagick7Big , imagemagickBig
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -16,13 +16,13 @@ buildPythonPackage rec {
postPatch = '' postPatch = ''
substituteInPlace wand/api.py --replace \ substituteInPlace wand/api.py --replace \
"magick_home = os.environ.get('MAGICK_HOME')" \ "magick_home = os.environ.get('MAGICK_HOME')" \
"magick_home = '${imagemagick7Big}'" "magick_home = '${imagemagickBig}'"
''; '';
# tests not included with pypi release # tests not included with pypi release
doCheck = false; doCheck = false;
passthru.imagemagick = imagemagick7Big; passthru.imagemagick = imagemagickBig;
meta = with lib; { meta = with lib; {
description = "Ctypes-based simple MagickWand API binding for Python"; description = "Ctypes-based simple MagickWand API binding for Python";

View File

@ -1,5 +1,5 @@
{ lib, callPackage, python3Packages, fetchFromGitLab, cacert, { lib, callPackage, python3Packages, fetchFromGitLab, cacert,
rustPlatform, bubblewrap, git, perlPackages, imagemagick7, fetchurl, fetchzip, rustPlatform, bubblewrap, git, perlPackages, imagemagick, fetchurl, fetchzip,
jre, makeWrapper, tr-patcher, tes3cmd }: jre, makeWrapper, tr-patcher, tes3cmd }:
let let
@ -29,7 +29,7 @@ let
python3Packages.virtualenv python3Packages.virtualenv
tr-patcher tr-patcher
tes3cmd tes3cmd
imagemagick7 imagemagick
]; ];
in in

View File

@ -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 { stdenv.mkDerivation rec {
version = "0.9.1"; version = "0.9.1";
@ -10,9 +10,9 @@ stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ pkg-config ]; 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"; NIX_LDFLAGS= "-rpath ${libXext}/lib";
meta = { meta = {

View File

@ -1,30 +1,33 @@
{lib, stdenv, fetchurl, libdmtx, pkg-config, imagemagick}: { lib
let , stdenv
s = # Generated upstream information , fetchFromGitHub
rec { , autoreconfHook
baseName="dmtx-utils"; , pkg-config
version="0.7.4"; , libdmtx
name="${baseName}-${version}"; , imagemagick
hash="1di8ymlziy9856abd6rb72z0zqzmrff4r3vql0q9r5sk5ax4s417"; }:
url="mirror://sourceforge/project/libdmtx/libdmtx/0.7.4/dmtx-utils-0.7.4.tar.gz";
sha256="1di8ymlziy9856abd6rb72z0zqzmrff4r3vql0q9r5sk5ax4s417"; stdenv.mkDerivation rec {
}; pname = "dmtx-utils";
nativeBuildInputs = [ pkg-config ]; version = "0.7.6";
buildInputs = [
libdmtx imagemagick src = fetchFromGitHub {
]; owner = "dmtx";
in repo = "dmtx-utils";
stdenv.mkDerivation { rev = "v${version}";
inherit (s) name version; sha256 = "06m3qncqdlcnmw83n95yrx2alaq6bld320ax26z4ndnla41yk0p4";
inherit nativeBuildInputs buildInputs;
src = fetchurl {
inherit (s) url sha256;
}; };
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ libdmtx imagemagick ];
meta = { meta = {
inherit (s) version;
description = "Data matrix command-line utilities"; description = "Data matrix command-line utilities";
license = lib.licenses.lgpl2 ; homepage = "https://github.com/dmtx/dmtx-utils";
maintainers = [lib.maintainers.raskin]; changelog = "https://github.com/dmtx/dmtx-utils/blob/v${version}/ChangeLog";
license = lib.licenses.lgpl2;
maintainers = [ lib.maintainers.raskin ];
platforms = lib.platforms.unix; platforms = lib.platforms.unix;
}; };
} }

View File

@ -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

View File

@ -1,4 +1,4 @@
{ lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick7 }: { lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick }:
with lib; with lib;
with haskell.lib; with haskell.lib;
@ -29,7 +29,7 @@ justStaticExecutables (overrideCabal ldgallery-compiler (oldAttrs: {
# wrapper for runtime dependencies registration # wrapper for runtime dependencies registration
wrapProgram "$out/bin/ldgallery" \ wrapProgram "$out/bin/ldgallery" \
--prefix PATH : ${lib.makeBinPath [ imagemagick7 ]} --prefix PATH : ${lib.makeBinPath [ imagemagick ]}
# bash completion # bash completion
mkdir -p "$out/share/bash-completion/completions" mkdir -p "$out/share/bash-completion/completions"

View File

@ -1,5 +1,5 @@
{ lib, stdenv, mkDerivation, fetchurl, cmake, pkg-config, darwin { 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 , fftw, gsl, libexif, perl, opencv2, qtbase, netpbm
}: }:
@ -27,7 +27,7 @@ mkDerivation rec {
nativeBuildInputs = [ cmake pkg-config ]; nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ buildInputs = [
openexr zlib imagemagick fftwFloat openexr zlib imagemagick6 fftwFloat
fftw gsl libexif perl opencv2 qtbase netpbm fftw gsl libexif perl opencv2 qtbase netpbm
] ++ (if stdenv.isDarwin then (with darwin.apple_sdk.frameworks; [ ] ++ (if stdenv.isDarwin then (with darwin.apple_sdk.frameworks; [
OpenGL GLUT OpenGL GLUT

View File

@ -286,6 +286,9 @@ mapAliases ({
icedtea8_web = adoptopenjdk-icedtea-web; # added 2019-08-21 icedtea8_web = adoptopenjdk-icedtea-web; # added 2019-08-21
icedtea_web = adoptopenjdk-icedtea-web; # added 2019-08-21 icedtea_web = adoptopenjdk-icedtea-web; # added 2019-08-21
idea = jetbrains; # added 2017-04-03 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."; 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 infiniband-diags = rdma-core; # added 2019-08-09
inotifyTools = inotify-tools; inotifyTools = inotify-tools;

View File

@ -23069,7 +23069,7 @@ in
imagej = callPackage ../applications/graphics/imagej { }; imagej = callPackage ../applications/graphics/imagej { };
imagemagick_light = imagemagick.override { imagemagick6_light = imagemagick6.override {
bzip2 = null; bzip2 = null;
zlib = null; zlib = null;
libX11 = null; libX11 = null;
@ -23092,14 +23092,14 @@ in
libde265 = null; libde265 = null;
}; };
imagemagick = callPackage ../applications/graphics/ImageMagick { imagemagick6 = callPackage ../applications/graphics/ImageMagick/6.x.nix {
inherit (darwin.apple_sdk.frameworks) ApplicationServices; inherit (darwin.apple_sdk.frameworks) ApplicationServices;
ghostscript = null; ghostscript = null;
}; };
imagemagickBig = imagemagick.override { inherit ghostscript; }; imagemagick6Big = imagemagick6.override { inherit ghostscript; };
imagemagick7_light = lowPrio (imagemagick7.override { imagemagick_light = lowPrio (imagemagick.override {
bzip2 = null; bzip2 = null;
zlib = null; zlib = null;
libX11 = null; libX11 = null;
@ -23121,11 +23121,11 @@ in
libheif = null; libheif = null;
}); });
imagemagick7 = lowPrio (imagemagick7Big.override { imagemagick = lowPrio (imagemagickBig.override {
ghostscript = null; 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; inherit (darwin.apple_sdk.frameworks) ApplicationServices;
}); });

View File

@ -9142,6 +9142,10 @@ let
}; };
buildInputs = [ pkgs.gtk3 ]; buildInputs = [ pkgs.gtk3 ];
propagatedBuildInputs = [ Readonly 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 ]; checkInputs = [ TestDifferences PerlMagick TryTiny TestMockObject CarpAlways pkgs.librsvg ];
checkPhase = '' checkPhase = ''
${pkgs.xvfb_run}/bin/xvfb-run -s '-screen 0 800x600x24' \ ${pkgs.xvfb_run}/bin/xvfb-run -s '-screen 0 800x600x24' \
@ -16739,19 +16743,18 @@ let
}; };
}; };
PerlMagick = buildPerlPackage { PerlMagick = buildPerlPackage rec {
pname = "PerlMagick"; pname = "PerlMagick";
version = "6.89-1"; version = "7.0.10";
src = fetchurl { src = fetchurl {
url = "mirror://cpan/authors/id/J/JC/JCRISTY/PerlMagick-6.89-1.tar.gz"; url = "mirror://cpan/authors/id/J/JC/JCRISTY/PerlMagick-${version}.tar.gz";
sha256 = "0n9afy1z5bhf9phrbahnkwhgcmijn8jggpbzwrivw1zhliliiy68"; sha256 = "1x05hdb3b6qs36x958b4w46qanvkqm6rpc44rlq4rd2w3gbp4lhx";
}; };
buildInputs = [ pkgs.imagemagick ]; buildInputs = [ pkgs.imagemagick ];
preConfigure = preConfigure =
'' ''
sed -i -e 's|my \$INC_magick = .*|my $INC_magick = "-I${pkgs.imagemagick.dev}/include/ImageMagick";|' Makefile.PL sed -i -e 's|my \$INC_magick = .*|my $INC_magick = "-I${pkgs.imagemagick.dev}/include/ImageMagick";|' Makefile.PL
''; '';
doCheck = false;
}; };
PerlTidy = buildPerlPackage rec { PerlTidy = buildPerlPackage rec {