~ruther/guix-local

3f0603ea653cefa9ff728c2637d3cd0d778b3602 — Leo Famulari 9 years ago 2923f3e
gnu: gd: Replace with gd-2.2.4 [fixes CVE-2016-{6912,9317} and others].

'CHANGELOG.md' in the development repository lists several fixed bugs with
potential security implications:

https://github.com/libgd/libgd/blob/gd-2.2.4/CHANGELOG.md

* gnu/packages/gd.scm (gd)[replacement]: New field.
(gd-2.2.4): New variable.
1 files changed, 28 insertions(+), 1 deletions(-)

M gnu/packages/gd.scm
M gnu/packages/gd.scm => gnu/packages/gd.scm +28 -1
@@ 2,7 2,7 @@
;;; Copyright © 2013, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;


@@ 36,6 36,7 @@
(define-public gd
  (package
    (name "gd")
    (replacement gd-2.2.4)

    ;; Note: With libgd.org now pointing to github.com, genuine old
    ;; tarballs are no longer available.  Notably, versions 2.0.x are


@@ 77,6 78,32 @@ most common applications of GD involve website development.")
                           "See COPYING file in the distribution."))
    (properties '((cpe-name . "libgd")))))

(define gd-2.2.4
  (package
    (inherit gd)
    (version "2.2.4")
    (source
      (origin
        (method url-fetch)
        (uri (string-append "https://github.com/libgd/libgd/releases/download/"
                            "gd" version "/libgd-" version ".tar.xz"))
        (patches (search-patches "gd-fix-gd2-read-test.patch"
                                 "gd-fix-tests-on-i686.patch"))
        (sha256
         (base32
          "1rp4v7n1dq38b92kl7gkvpvqqkw7nvdfnz6d5kip5klkxfki6zqk"))))
    (arguments
     `(#:phases
       (modify-phases %standard-phases
         ;; This test is known to fail on i686-linux:
         ;; https://github.com/libgd/libgd/issues/359
         ;; TODO Replace this substitution with an upstream bug fix.
         (add-after 'unpack 'disable-failing-test
           (lambda _
             (substitute* "tests/gdimagegrayscale/basic.c"
               (("return gdNumFailures\\(\\)")
                 "return 0")))))))))

(define-public perl-gd
  (package
    (name "perl-gd")