From a47fae9c6ad31032da1d87e06e882d43f9cdda01 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Tue, 22 Jun 2021 18:32:00 -0300 Subject: [PATCH 1/3] poppler_utils: cosmetical rewrite all-packages.nix (cherry picked from commit 6943ac5dd761c1461438300743a153326caf3c97) --- pkgs/top-level/all-packages.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 87f260b6117..10e81b479e8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17438,7 +17438,10 @@ in suffix = "min"; }; - poppler_utils = poppler.override { suffix = "utils"; utils = true; }; + poppler_utils = poppler.override { + suffix = "utils"; + utils = true; + }; popt = callPackage ../development/libraries/popt { }; From 3c21bbebb6c149a8f7432c0fbc76c76e0de4ae9e Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Tue, 22 Jun 2021 18:32:52 -0300 Subject: [PATCH 2/3] poppler_0_61: cosmetical rewrite 0.61.nix (cherry picked from commit a4e85ae2b88d29224bad8be685e6b366845a5257) --- pkgs/development/libraries/poppler/0.61.nix | 44 ++++++++++++++++----- 1 file changed, 34 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/poppler/0.61.nix b/pkgs/development/libraries/poppler/0.61.nix index 9b89283972d..e46da53f68d 100644 --- a/pkgs/development/libraries/poppler/0.61.nix +++ b/pkgs/development/libraries/poppler/0.61.nix @@ -1,5 +1,20 @@ -{ stdenv, lib, fetchurl, cmake, ninja, pkg-config, libiconv, libintl -, zlib, curl, cairo, freetype, fontconfig, lcms, libjpeg, openjpeg, fetchpatch +{ stdenv +, lib +, fetchurl +, fetchpatch +, cairo +, cmake +, curl +, fontconfig +, freetype +, lcms +, libiconv +, libintl +, libjpeg +, ninja +, openjpeg +, pkg-config +, zlib , withData ? true, poppler_data , qt5Support ? false, qtbase ? null , introspectionSupport ? false, gobject-introspection ? null @@ -12,25 +27,38 @@ let mkFlag = optset: flag: "-DENABLE_${flag}=${if optset then "on" else "off"}"; in stdenv.mkDerivation rec { - name = "poppler-${suffix}-${version}"; + pname = "poppler-${suffix}"; + inherit version; src = fetchurl { - url = "${meta.homepage}/poppler-${version}.tar.xz"; + url = "https://poppler.freedesktop.org/poppler-${version}.tar.xz"; sha256 = "1afdrxxkaivvviazxkg5blsf2x24sjkfj92ib0d3q5pm8dihjrhj"; }; outputs = [ "out" "dev" ]; patches = [ + # Fix internal crash: a negative number that should not be (fetchpatch { name = "CVE-2018-13988"; url = "https://cgit.freedesktop.org/poppler/poppler/patch/?id=004e3c10df0abda214f0c293f9e269fdd979c5ee"; sha256 = "1l8713s57xc6g81bldw934rsfm140fqc7ggd50ha5mxdl1b3app2"; }) + # Fix internal crash: a negative number that should not be (not the above!) ./0.61-CVE-2019-9959.patch ]; - buildInputs = [ libiconv libintl ] ++ lib.optional withData poppler_data; + nativeBuildInputs = [ + cmake + ninja + pkg-config + ]; + + buildInputs = [ + libiconv + libintl + ] + ++ lib.optional withData poppler_data; # TODO: reduce propagation to necessary libs propagatedBuildInputs = with lib; @@ -39,8 +67,6 @@ stdenv.mkDerivation rec { ++ optional qt5Support qtbase ++ optional introspectionSupport gobject-introspection; - nativeBuildInputs = [ cmake ninja pkg-config ]; - # Not sure when and how to pass it. It seems an upstream bug anyway. CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11"; @@ -58,12 +84,10 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://poppler.freedesktop.org/"; description = "A PDF rendering library"; - longDescription = '' Poppler is a PDF rendering library based on the xpdf-3.0 code base. ''; - - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.all; maintainers = with maintainers; [ ttuegel ]; }; From 2a9cad505d95334c36874438ec8948113b769f4b Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Tue, 22 Jun 2021 18:33:23 -0300 Subject: [PATCH 3/3] poppler: 21.05.0 -> 21.06.1 (cherry picked from commit 004970b1524ab59f791137e0954b43c2b65615bb) --- .../development/libraries/poppler/default.nix | 47 ++++++++++--------- 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 8a5c6e132a7..08ca1456ea8 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -1,44 +1,46 @@ -{ stdenv -, lib +{ lib +, stdenv , fetchurl , fetchpatch +, cairo , cmake -, ninja -, pkg-config +, pcre +, boost +, cups-filters +, curl +, fontconfig +, freetype +, inkscape +, lcms , libiconv , libintl -, zlib -, curl -, cairo -, freetype -, fontconfig -, lcms , libjpeg +, ninja , openjpeg +, pkg-config +, scribusUnstable +, texlive +, zlib , withData ? true, poppler_data , qt5Support ? false, qtbase ? null , introspectionSupport ? false, gobject-introspection ? null , utils ? false, nss ? null , minimal ? false , suffix ? "glib" -, inkscape -, cups-filters -, texlive -, scribusUnstable }: let mkFlag = optset: flag: "-DENABLE_${flag}=${if optset then "on" else "off"}"; in stdenv.mkDerivation rec { - name = "poppler-${suffix}-${version}"; - version = "21.05.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + pname = "poppler-${suffix}"; + version = "21.06.1"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! outputs = [ "out" "dev" ]; src = fetchurl { - url = "${meta.homepage}/poppler-${version}.tar.xz"; - sha256 = "sha256-2v1Te2gPrRIVvED8U9HzjoRJ18GFvGDVqJ4dJskNvYw="; + url = "https://poppler.freedesktop.org/poppler-${version}.tar.xz"; + sha256 = "sha256-hrCeWgLeQAgaORbvhxHFEo6vSx/FnV+H0Oxm8E9ZXbQ="; }; nativeBuildInputs = [ @@ -48,6 +50,8 @@ stdenv.mkDerivation rec { ]; buildInputs = [ + boost + pcre libiconv libintl ] ++ lib.optional withData [ @@ -98,13 +102,10 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://poppler.freedesktop.org/"; description = "A PDF rendering library"; - longDescription = '' - Poppler is a PDF rendering library based on the xpdf-3.0 code - base. In addition it provides a number of tools that can be - installed separately. + Poppler is a PDF rendering library based on the xpdf-3.0 code base. In + addition it provides a number of tools that can be installed separately. ''; - license = licenses.gpl2Plus; platforms = platforms.all; maintainers = with maintainers; [ ttuegel ] ++ teams.freedesktop.members;