From f2e791750be25b95540807c2e01c07625b65666c Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 20:13:42 +1000 Subject: [PATCH 01/22] gnu: r-s4vectors: Update to 0.10.2. * gnu/packages/bioinformatics.scm (r-s4vectors): Update to 0.10.2. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 6f6ff8811f..26e0f94b2d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4514,13 +4514,13 @@ (define-public r-dnacopy (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.10.0") + (version "0.10.2") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "1mi6lf6pnb9l657igy0vj4yz03yawbr2jhk22l757fzbjc7n9q3b")))) + "0cvq9yb97cka7lg5nimvzxbz8b2hxkscmjdqb5z23w5c7hrbjffp")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) From 2a3e325f5e0a3ccb27ab6c1730d488e5ac0b536d Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 20:52:50 +1000 Subject: [PATCH 02/22] gnu: r-genomeinfodb: Update to 1.8.3. * gnu/packages/bioinformatics.scm (r-genomeinfodb): Update to 1.8.3. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 26e0f94b2d..af9c6dbe23 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4594,13 +4594,13 @@ (define-public r-iranges (define-public r-genomeinfodb (package (name "r-genomeinfodb") - (version "1.8.1") + (version "1.8.3") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomeInfoDb" version)) (sha256 (base32 - "0k4s6z5qj53zkfnyrmcbn3l2nzgm56bhv58rv321j22qa56cpz7d")))) + "03s2khhdwz06xr58cjpkil935y6p7f6ljqkbkkcai73qxl1k4ica")))) (properties `((upstream-name . "GenomeInfoDb"))) (build-system r-build-system) From 5131e210644857217fdf9bf0e824d1f51b983f3d Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:07:15 +1000 Subject: [PATCH 03/22] gnu: r-rtracklayer: Update to 1.32.2. * gnu/packages/bioinformatics.scm (r-rtracklayer): Update to 1.32.2. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index af9c6dbe23..ad82f3191e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4994,13 +4994,13 @@ (define-public r-genomicalignments (define-public r-rtracklayer (package (name "r-rtracklayer") - (version "1.32.0") + (version "1.32.2") (source (origin (method url-fetch) (uri (bioconductor-uri "rtracklayer" version)) (sha256 (base32 - "0nrwk1g8b1ymvbgnqniimbvwfq13r01va9rx3b03xj4hpywzy5nv")))) + "190767zpwc7maqjpy0x5bpkm0jp1vfawy9991fifw0mc634cjkga")))) (build-system r-build-system) (arguments `(#:phases From 29b0cc8ad57952e9f4dd30cd5966117f848a69b6 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:07:34 +1000 Subject: [PATCH 04/22] gnu: r-genomicalignments: Update to 1.8.4. * gnu/packages/bioinformatics.scm (r-genomicalignments): Update to 1.8.4. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ad82f3191e..501ccd0b55 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4961,13 +4961,13 @@ (define-public r-summarizedexperiment (define-public r-genomicalignments (package (name "r-genomicalignments") - (version "1.8.0") + (version "1.8.4") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicAlignments" version)) (sha256 (base32 - "1y4qgqxq8dax9swgl59m6i7ggjpqrjllgx87b9vwls3z0nf1i6xj")))) + "1cccvalmm83ilk1kpq31ll8kdy9xclsr4pm4mlcc7bmp0rwkd2p2")))) (properties `((upstream-name . "GenomicAlignments"))) (build-system r-build-system) From 1864e051c9cf9bf58fee7800e99a692b25edaf69 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:07:44 +1000 Subject: [PATCH 05/22] gnu: r-summarizedexperiment: Update to 1.2.3. * gnu/packages/bioinformatics.scm (r-summarizedexperiment): Update to 1.2.3. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 501ccd0b55..b70bd119b9 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4932,13 +4932,13 @@ (define-public r-rsamtools (define-public r-summarizedexperiment (package (name "r-summarizedexperiment") - (version "1.2.2") + (version "1.2.3") (source (origin (method url-fetch) (uri (bioconductor-uri "SummarizedExperiment" version)) (sha256 (base32 - "1c81acgw3a0ha5fgapfh9xq8yhryqqf8k259n2dz0mgz1k2d9klg")))) + "0c43fsrha886sd0diislnlf8r5h5x7fbhphkzcm0rw3k2jz8wlyk")))) (properties `((upstream-name . "SummarizedExperiment"))) (build-system r-build-system) From d104fc607d885c945a66b13255629c1fbffa14dc Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:08:33 +1000 Subject: [PATCH 06/22] gnu: r-biostrings: Update to 2.40.2. * gnu/packages/bioinformatics.scm (r-biostrings): Update to 2.40.2. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b70bd119b9..02f507ce6d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4862,13 +4862,13 @@ (define-public r-biocparallel (define-public r-biostrings (package (name "r-biostrings") - (version "2.40.0") + (version "2.40.2") (source (origin (method url-fetch) (uri (bioconductor-uri "Biostrings" version)) (sha256 (base32 - "03gyhiz14xy51nzg0glihk1rv19pq4p1aa3y5g23bzcshs67ggj9")))) + "153rfws5sdha324p1nv7jp75ip6ny0f62jzhqcvs46l85h3i8zgh")))) (properties `((upstream-name . "Biostrings"))) (build-system r-build-system) From a22999f245a32b1e58fe8916392bc1b2712d1b3c Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:08:42 +1000 Subject: [PATCH 07/22] gnu: r-biocparallel: Update to 1.6.3. * gnu/packages/bioinformatics.scm (r-biocparallel): Update to 1.6.3. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 02f507ce6d..a95a0713fc 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4838,13 +4838,13 @@ (define-public r-biomart (define-public r-biocparallel (package (name "r-biocparallel") - (version "1.6.2") + (version "1.6.3") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocParallel" version)) (sha256 (base32 - "0ki5xvb3cwjmlsx81gr8ylk1qy3imlj2dd04mzpvl28x42ay4dqj")))) + "1gb3lpafhx9wi7wbjdvczdf837qq1arpymcr438jwx39biv9dwb4")))) (properties `((upstream-name . "BiocParallel"))) (build-system r-build-system) From bab15ccec478d119ab197a2576422e6a08f2338f Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:09:06 +1000 Subject: [PATCH 08/22] gnu: r-annotationdbi: Update to 1.34.4. * gnu/packages/bioinformatics.scm (r-annotationdbi): Update to 1.34.4. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a95a0713fc..287d9ec527 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4781,13 +4781,13 @@ (define-public r-biobase (define-public r-annotationdbi (package (name "r-annotationdbi") - (version "1.34.2") + (version "1.34.4") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationDbi" version)) (sha256 (base32 - "0nw6c23098gkjlwlrra4rh1m65azczb31qr01pq81cn5gya1zkr4")))) + "1k3gfsjrivc7467vg0h705hh4dvzgdhknz62j7zmfxm67qk9r8rq")))) (properties `((upstream-name . "AnnotationDbi"))) (build-system r-build-system) From a463055862e0b1e37bab41f76bb10537af5c42e8 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:09:16 +1000 Subject: [PATCH 09/22] gnu: r-genomicranges: Update to 1.24.2. * gnu/packages/bioinformatics.scm (r-genomicranges): Update to 1.24.2. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 287d9ec527..7d9b11d6b5 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4732,13 +4732,13 @@ (define-public r-xvector (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.24.0") + (version "1.24.2") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "1iyzg1npl3rnnslwq3h759vf0xhshnn5v801rnlj6bnxzhn9yaqh")))) + "183kdz76rz93v69k6x684bpwa28xixp83bsyf6xfy182h6vh8x89")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) From 2b2ff0bd917cad949a974dd0e584e2b1f7ad6a5d Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:09:25 +1000 Subject: [PATCH 10/22] gnu: r-xvector: Update to 0.12.1. * gnu/packages/bioinformatics.scm (r-xvector): Update to 0.12.1. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7d9b11d6b5..5ddcac3023 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4696,13 +4696,13 @@ (define-public r-limma (define-public r-xvector (package (name "r-xvector") - (version "0.12.0") + (version "0.12.1") (source (origin (method url-fetch) (uri (bioconductor-uri "XVector" version)) (sha256 (base32 - "0c9cqjcxxks3an4wiq167h2grxlfyazajn7bmxhbk42zifp8vmqp")))) + "1kydy9f5y0ihn2mbkamr1kh0g1d3g1k9d7s4i09qgw9ysr6j414v")))) (properties `((upstream-name . "XVector"))) (build-system r-build-system) From f403941f811b54873511d0cd2c9da2c54cffb82f Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:09:41 +1000 Subject: [PATCH 11/22] gnu: r-limma: Update to 3.28.17. * gnu/packages/bioinformatics.scm (r-limma): Update to 3.28.17. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 5ddcac3023..46ac945095 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4677,13 +4677,13 @@ (define-public r-variantannotation (define-public r-limma (package (name "r-limma") - (version "3.28.14") + (version "3.28.17") (source (origin (method url-fetch) (uri (bioconductor-uri "limma" version)) (sha256 (base32 - "1jgn66ajafhjlqpfcw2p85h6ah8mgmz66znmsw6pcapia7d34akw")))) + "124n8dbvl1yy8b1068kqmqszpfhaawk5xfyb73vixma2i66nrcyk")))) (build-system r-build-system) (home-page "http://bioinf.wehi.edu.au/limma") (synopsis "Package for linear models for microarray and RNA-seq data") From b0f0778a7c040b1f3f409681f24491d0610a3a21 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:10:05 +1000 Subject: [PATCH 12/22] gnu: r-iranges: Update to 2.6.1. * gnu/packages/bioinformatics.scm (r-iranges): Update to 2.6.1. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 46ac945095..eb7151936b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4565,13 +4565,13 @@ (define-public r-seqinr (define-public r-iranges (package (name "r-iranges") - (version "2.6.0") + (version "2.6.1") (source (origin (method url-fetch) (uri (bioconductor-uri "IRanges" version)) (sha256 (base32 - "0dz7z0pk8hq79mcgylw920999s08h6j8xrl31rdxhssmi7l8v6vy")))) + "06pyam3bjjfw2m3l86rda503lsz2jcg645lcnhvrz6qi0nv359yg")))) (properties `((upstream-name . "IRanges"))) (build-system r-build-system) From 2c9f6251fc4e60ad84b3698e53879060ce50ee48 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:17:32 +1000 Subject: [PATCH 13/22] gnu: r-bsgenome: Update to 1.40.1. * gnu/packages/bioinformatics.scm (r-bsgenome): Update to 1.40.1. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index eb7151936b..d3ab72010d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5154,13 +5154,13 @@ (define-public r-topgo (define-public r-bsgenome (package (name "r-bsgenome") - (version "1.40.0") + (version "1.40.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BSgenome" version)) (sha256 (base32 - "08g3w47ysbmgj4hclb0x2wsn7pi9cnm3xkkfk4shgrka2g23qz44")))) + "0zmlzlcwairka59is5wmkh6knh6j4d328z9fsw3v91fx6gavjl2n")))) (properties `((upstream-name . "BSgenome"))) (build-system r-build-system) From 6547708f718316dac79de845aabb7220122385a7 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 28 Jul 2016 21:54:44 +1000 Subject: [PATCH 14/22] gnu: r-genomicfeatures: Update to 1.24.5. * gnu/packages/bioinformatics.scm (r-genomicfeatures): Update to 1.24.5. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index d3ab72010d..29fb3be0db 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5039,13 +5039,13 @@ (define-public r-rtracklayer (define-public r-genomicfeatures (package (name "r-genomicfeatures") - (version "1.24.2") + (version "1.24.5") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "0ga5a7w8jnnq2k0kc07mshl6cggmbhzh42pzvhnilgl4x3kpbysl")))) + "17qpisdgqyjz2mnaiwc4dx7dg11pwq3mkvmkah9zn07g9rhh8f7p")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) From 189b1543cbc2db50e6dd309e84bce4eb503f0493 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Jul 2016 15:24:37 +0200 Subject: [PATCH 15/22] doc: Mention separate branch for packages with many dependents. Suggested by ng0 . * doc/contributing.texi (Submitting Patches): Add note on packages with more than 100 dependents. --- doc/contributing.texi | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/contributing.texi b/doc/contributing.texi index c0755bb895..6496e10a14 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -300,6 +300,13 @@ For important changes, check that dependent package (if applicable) are not affected by the change; @code{guix refresh --list-dependent @var{package}} will help you do that (@pxref{Invoking guix refresh}). +Packages with roughly 100 dependents or more usually have to be +committed to a separate branch. That branch can then be built +separately by our build farm, and later merged into @code{master} once +everything has been successfully built. This allows us to fix issues +before they hit users, and to reduce the window during which pre-built +binaries are not available. + @item @cindex determinism, of build processes @cindex reproducible builds, checking From 3a78fab83dd5faa80d8eecd792f40dde6e334c7c Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 21 Jul 2016 18:05:30 +0000 Subject: [PATCH 16/22] doc: Send changes in your patch which are related. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * doc/contributing.texi (Submitting Patches): New @item: This gives information about sending related changes and examples on what we view as related changes. Co-authored-by: Ludovic Courtès --- doc/contributing.texi | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/contributing.texi b/doc/contributing.texi index 6496e10a14..a3684a5e1d 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -340,6 +340,13 @@ referring to people, such as @uref{https://en.wikipedia.org/wiki/Singular_they, singular ``they''@comma{} ``their''@comma{} ``them''}, and so forth. +@item +Verify that your patch contains only one set of related changes. +Bundling unrelated changes together makes reviewing harder and slower. + +Examples of unrelated changes include the addition of several packages, +or a package update along with fixes to that package. + @end enumerate When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as From d222522edf70cdac6cee7b4ab8fa1bfbf0a7ba9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Jul 2016 15:41:00 +0200 Subject: [PATCH 17/22] doc: Discourage software bundling. Fixes . Suggested by ng0 . * doc/contributing.texi (Submitting Patches): Add item about bundling. --- doc/contributing.texi | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/doc/contributing.texi b/doc/contributing.texi index a3684a5e1d..18d891db4e 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -288,6 +288,20 @@ name of the new or modified package, and fix any errors it reports Make sure the package builds on your platform, using @code{guix build @var{package}}. +@item +@cindex bundling +Make sure the package does not use bundled copies of software already +available as separate packages. + +Sometimes, packages include copies of the source code of their +dependencies as a convenience for users. However, as a distribution, we +want to make sure that such packages end up using the copy we already +have in the distribution, if there is one. This improves resource usage +(the dependency is built and stored only once), and allows the +distribution to make transverse changes such as applying security +updates for a given software package in a single place and have them +affect the whole system---something that bundled copies prevent. + @item Take a look at the profile reported by @command{guix size} (@pxref{Invoking guix size}). This will allow you to notice references From 71d9b98078e8c785ad57cf3ae2e70939e815a82f Mon Sep 17 00:00:00 2001 From: Alex Griffin Date: Wed, 27 Jul 2016 09:40:35 -0500 Subject: [PATCH 18/22] gnu: gnome: Propagate file-roller. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (gnome)[propagated-inputs]: Add file-roller. Signed-off-by: Ludovic Courtès --- gnu/packages/gnome.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 318a04d403..b2f46959e6 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -19,6 +19,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016 Roel Janssen ;;; Copyright © 2016 Leo Famulari +;;; Copyright © 2016 Alex Griffin ;;; ;;; This file is part of GNU Guix. ;;; @@ -5014,6 +5015,7 @@ (define-public gnome ("eog" ,eog) ("epiphany" ,epiphany) ("evince" ,evince) + ("file-roller" ,file-roller) ("gedit" ,gedit) ("glib-networking" ,glib-networking) ("gnome-backgrounds" ,gnome-backgrounds) From cb55f9c652105d9ed4fc46cb902f0935fe7e35f8 Mon Sep 17 00:00:00 2001 From: Alex Griffin Date: Wed, 27 Jul 2016 16:22:32 -0500 Subject: [PATCH 19/22] gnu: Add asciinema. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/terminals.scm (asciinema): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/terminals.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index ee36f64354..98f0060c0d 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2016 Mckinley Olsen +;;; Copyright © 2016 Alex Griffin ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,6 +22,7 @@ (define-module (gnu packages terminals) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix packages) @@ -30,6 +32,7 @@ (define-module (gnu packages terminals) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages wm) #:use-module (gnu packages ncurses) #:use-module (gnu packages gtk) @@ -121,3 +124,38 @@ (define-public termite ;; Files under util/ are under the Expat license; the rest is LGPLv2+. (license license:lgpl2.0+))) + +(define-public asciinema + (package + (name "asciinema") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/06/96/93947d9be78aebb7985014fdf" + "4d84896dd0f62514d922ee03f5bb55a21fb/asciinema-" version + ".tar.gz")) + (sha256 + (base32 + "1crdm9zfdbjflvz1gsqvy5zsbgwdfkj34z69kg6h5by70rrs1hdc")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'patch-exec-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((ncurses (assoc-ref inputs "ncurses"))) + (substitute* "asciinema/recorder.py" + (("'tput'") + (string-append "'" ncurses "/bin/tput'")))) + #t))))) + (inputs `(("ncurses" ,ncurses) + ("python-setuptools" ,python-setuptools))) + (home-page "https://asciinema.org") + (synopsis "Terminal session recorder") + (description + "Use asciinema to record and share your terminal sessions, the right way. +Forget screen recording apps and blurry video. Enjoy a lightweight, purely +text-based approach to terminal recording.") + (license license:gpl3))) From 6980511b7391e65a307689f90e4ef5c1979e4541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Jul 2016 18:50:43 +0200 Subject: [PATCH 20/22] packages: Add 'hidden-package'. * guix/packages.scm (hidden-package, hidden-package?): New procedures. * gnu/packages.scm (fold-packages): Filter out 'hidden-package?'. * tests/packages.scm ("hidden-package"): New test. --- gnu/packages.scm | 3 ++- guix/packages.scm | 15 +++++++++++++++ tests/packages.scm | 4 ++++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/gnu/packages.scm b/gnu/packages.scm index 9496a270eb..68a9eef2ad 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -200,7 +200,8 @@ (define (fold-packages proc init) (fold2 (lambda (module result seen) (fold2 (lambda (var result seen) (if (and (package? var) - (not (vhash-assq var seen))) + (not (vhash-assq var seen)) + (not (hidden-package? var))) (values (proc var result) (vhash-consq var #t seen)) (values result seen))) diff --git a/guix/packages.scm b/guix/packages.scm index bfb4c557ab..3646b9ba13 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -81,6 +81,8 @@ (define-module (guix packages) package-maintainers package-properties package-location + hidden-package + hidden-package? package-field-location package-direct-sources @@ -290,6 +292,19 @@ (define-record-type* package) 16))))) +(define (hidden-package p) + "Return a \"hidden\" version of P--i.e., one that 'fold-packages' and thus, +user interfaces, ignores." + (package + (inherit p) + (properties `((hidden? . #t) + ,@(package-properties p))))) + +(define (hidden-package? p) + "Return true if P is \"hidden\"--i.e., must not be visible to user +interfaces." + (assoc-ref (package-properties p) 'hidden?)) + (define (package-field-location package field) "Return the source code location of the definition of FIELD for PACKAGE, or #f if it could not be determined." diff --git a/tests/packages.scm b/tests/packages.scm index fc75e38730..7c9ad05c21 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -79,6 +79,10 @@ (define %store (write (dummy-package "foo" (location #f))))))) +(test-assert "hidden-package" + (and (hidden-package? (hidden-package (dummy-package "foo"))) + (not (hidden-package? (dummy-package "foo"))))) + (test-assert "package-field-location" (let () (define (goto port line column) From 386b71d1b961a52201f64591076e51487a87bf0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 28 Jul 2016 18:53:13 +0200 Subject: [PATCH 21/22] gnu: commencement: 'guile-final' is now "hidden". This way, we no longer have this annoying warning: $ guix build guile -n guix build: warning: ambiguous package specification `guile' guix build: warning: choosing guile-2.0.11 from gnu/packages/guile.scm:128:2 * gnu/packages/commencement.scm (guile-final): Use 'hidden-package'. * tests/packages.scm ("fold-packages, hidden package"): New test. --- gnu/packages/commencement.scm | 4 +++- tests/packages.scm | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index c52b6e8389..54b524aec7 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -685,8 +685,10 @@ (define %boot4-inputs ,@(alist-delete "bash" %boot3-inputs))) (define-public guile-final + ;; This package must be public because other modules refer to it. However, + ;; mark it as hidden so that 'fold-packages' ignores it. (package-with-bootstrap-guile - (package-with-explicit-inputs guile-2.0/fixed + (package-with-explicit-inputs (hidden-package guile-2.0/fixed) %boot4-inputs (current-source-location) #:guile %bootstrap-guile))) diff --git a/tests/packages.scm b/tests/packages.scm index 7c9ad05c21..e9c8690730 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -749,6 +749,20 @@ (define read-at r)) #f)) +(test-assert "fold-packages, hidden package" + ;; There are two public variables providing "guile@2.0" ('guile-final' in + ;; commencement.scm and 'guile-2.0/fixed' in guile.scm), but only the latter + ;; should show up. + (match (fold-packages (lambda (p r) + (if (and (string=? (package-name p) "guile") + (string-prefix? "2.0" + (package-version p))) + (cons p r) + r)) + '()) + ((one) + (eq? one guile-2.0/fixed)))) + (test-assert "find-packages-by-name" (match (find-packages-by-name "hello") (((? (cut eq? hello <>))) #t) From ae46cd0e4cfb1f06d099b2cda1f9e702e86c90e9 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 28 Jul 2016 13:47:25 -0400 Subject: [PATCH 22/22] gnu: gd: Update to 2.2.3 [fixes CVE-2016-6207]. * gnu/packages/patches/gd-CVE-2016-5766.patch, gnu/packages/patches/gd-CVE-2016-6128.patch, gnu/packages/patches/gd-CVE-2016-6132.patch, gnu/packages/patches/gd-CVE-2016-6214.patch, gnu/packages/patches/gd-fix-test-on-i686.patch: Delete files. * gnu/packages/patches/gd-fix-tests-on-i686.patch: New file. * gnu/local.mk (dist_patch_DATA): Update accordingly. * gnu/packages/gd.scm (gd): Update to 2.2.3. [source]: Update patches field accordingly. --- gnu/local.mk | 6 +- gnu/packages/gd.scm | 10 +- gnu/packages/patches/gd-CVE-2016-5766.patch | 81 ------ gnu/packages/patches/gd-CVE-2016-6128.patch | 253 ------------------ gnu/packages/patches/gd-CVE-2016-6132.patch | 55 ---- gnu/packages/patches/gd-CVE-2016-6214.patch | 66 ----- .../patches/gd-fix-test-on-i686.patch | 34 --- .../patches/gd-fix-tests-on-i686.patch | 61 +++++ 8 files changed, 65 insertions(+), 501 deletions(-) delete mode 100644 gnu/packages/patches/gd-CVE-2016-5766.patch delete mode 100644 gnu/packages/patches/gd-CVE-2016-6128.patch delete mode 100644 gnu/packages/patches/gd-CVE-2016-6132.patch delete mode 100644 gnu/packages/patches/gd-CVE-2016-6214.patch delete mode 100644 gnu/packages/patches/gd-fix-test-on-i686.patch create mode 100644 gnu/packages/patches/gd-fix-tests-on-i686.patch diff --git a/gnu/local.mk b/gnu/local.mk index c143dd70a1..b0c4415f5b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -512,11 +512,7 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-cross-environment-variables.patch \ %D%/packages/patches/gcc-libvtv-runpath.patch \ %D%/packages/patches/gcc-5.0-libvtv-runpath.patch \ - %D%/packages/patches/gd-CVE-2016-5766.patch \ - %D%/packages/patches/gd-CVE-2016-6128.patch \ - %D%/packages/patches/gd-CVE-2016-6132.patch \ - %D%/packages/patches/gd-CVE-2016-6214.patch \ - %D%/packages/patches/gd-fix-test-on-i686.patch \ + %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gegl-CVE-2012-4433.patch \ %D%/packages/patches/geoclue-config.patch \ %D%/packages/patches/ghostscript-CVE-2015-3228.patch \ diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm index 3313ee68f2..153e1c7f8b 100644 --- a/gnu/packages/gd.scm +++ b/gnu/packages/gd.scm @@ -40,21 +40,17 @@ (define-public gd ;; Note: With libgd.org now pointing to github.com, genuine old ;; tarballs are no longer available. Notably, versions 2.0.x are ;; missing. - (version "2.2.2") + (version "2.2.3") (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-test-on-i686.patch" - "gd-CVE-2016-5766.patch" - "gd-CVE-2016-6128.patch" - "gd-CVE-2016-6132.patch" - "gd-CVE-2016-6214.patch")) (sha256 (base32 - "1311g5mva2xlzqv3rjqjc4jjkn5lzls4skvr395h633zw1n7b7s8")))) + "0g3xz8jpz1pl2zzmssglrpa9nxiaa7rmcmvgpbrjz8k9cyynqsvl")) + (patches (search-patches "gd-fix-tests-on-i686.patch")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/patches/gd-CVE-2016-5766.patch b/gnu/packages/patches/gd-CVE-2016-5766.patch deleted file mode 100644 index 400cb0ab48..0000000000 --- a/gnu/packages/patches/gd-CVE-2016-5766.patch +++ /dev/null @@ -1,81 +0,0 @@ -Fix CVE-2016-5766 (Integer Overflow in _gd2GetHeader() resulting in heap -overflow). - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5766 - -Adapted from upstream commits: -https://github.com/libgd/libgd/commit/aba3db8ba159465ecec1089027a24835a6da9cc0 -https://github.com/libgd/libgd/commit/a6a0e7feabb2a9738086a5dc96348f233c87fa79 - -Since `patch` cannot apply Git binary diffs, we omit the addition of -'tests/gd2/php_bug_72339.c' and its associated binary data. - -From aba3db8ba159465ecec1089027a24835a6da9cc0 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Tue, 28 Jun 2016 16:23:42 +0700 -Subject: [PATCH] fix php bug 72339 (CVE-2016-5766), Integer Overflow in - _gd2GetHeader() resulting in heap overflow - ---- - src/gd_gd2.c | 5 ++++- - tests/gd2/CMakeLists.txt | 1 + - tests/gd2/Makemodule.am | 6 ++++-- - tests/gd2/php_bug_72339.c | 21 +++++++++++++++++++++ - tests/gd2/php_bug_72339_exp.gd2 | Bin 0 -> 67108882 bytes - 5 files changed, 30 insertions(+), 3 deletions(-) - create mode 100644 tests/gd2/php_bug_72339.c - create mode 100644 tests/gd2/php_bug_72339_exp.gd2 - -diff --git a/src/gd_gd2.c b/src/gd_gd2.c -index fd1e0c9..bdbbecf 100644 ---- a/src/gd_gd2.c -+++ b/src/gd_gd2.c -@@ -154,8 +154,11 @@ _gd2GetHeader (gdIOCtxPtr in, int *sx, int *sy, - nc = (*ncx) * (*ncy); - GD2_DBG (printf ("Reading %d chunk index entries\n", nc)); - sidx = sizeof (t_chunk_info) * nc; -+ if (overflow2(sidx, nc)) { -+ goto fail1; -+ } - cidx = gdCalloc (sidx, 1); -- if (!cidx) { -+ if (cidx == NULL) { - goto fail1; - } - for (i = 0; i < nc; i++) { -From a6a0e7feabb2a9738086a5dc96348f233c87fa79 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Wed, 29 Jun 2016 09:36:26 +0700 -Subject: [PATCH] fix php bug 72339 (CVE-2016-5766), Integer Overflow in - _gd2GetHeader() resulting in heap overflow. Sync with php's sync - ---- - src/gd_gd2.c | 7 ++++++- - tests/gd2/php_bug_72339.c | 2 +- - 2 files changed, 7 insertions(+), 2 deletions(-) - -diff --git a/src/gd_gd2.c b/src/gd_gd2.c -index bdbbecf..2837456 100644 ---- a/src/gd_gd2.c -+++ b/src/gd_gd2.c -@@ -152,11 +152,16 @@ _gd2GetHeader (gdIOCtxPtr in, int *sx, int *sy, - - if (gd2_compressed (*fmt)) { - nc = (*ncx) * (*ncy); -+ - GD2_DBG (printf ("Reading %d chunk index entries\n", nc)); -+ if (overflow2(sizeof(t_chunk_info), nc)) { -+ goto fail1; -+ } - sidx = sizeof (t_chunk_info) * nc; -- if (overflow2(sidx, nc)) { -+ if (sidx <= 0) { - goto fail1; - } -+ - cidx = gdCalloc (sidx, 1); - if (cidx == NULL) { - goto fail1; --- -2.9.1 - diff --git a/gnu/packages/patches/gd-CVE-2016-6128.patch b/gnu/packages/patches/gd-CVE-2016-6128.patch deleted file mode 100644 index 45ee6b0cfa..0000000000 --- a/gnu/packages/patches/gd-CVE-2016-6128.patch +++ /dev/null @@ -1,253 +0,0 @@ -Fix CVE-2016-6128 (invalid color index is not properly handled leading -to denial of service). - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=2016-6128 - -Copied from upstream commits: -https://github.com/libgd/libgd/compare/3fe0a7128bac5000fdcfab888bd2a75ec0c9447d...fd623025505e87bba7ec8555eeb72dae4fb0afd - -From 1ccfe21e14c4d18336f9da8515cd17db88c3de61 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 11:17:39 +0700 -Subject: [PATCH 1/8] fix php 72494, invalid color index not handled, can lead - to crash - ---- - src/gd_crop.c | 4 ++++ - tests/CMakeLists.txt | 1 + - tests/Makefile.am | 1 + - 3 files changed, 6 insertions(+) - -diff --git a/src/gd_crop.c b/src/gd_crop.c -index 0296633..532b49b 100644 ---- a/src/gd_crop.c -+++ b/src/gd_crop.c -@@ -136,6 +136,10 @@ BGD_DECLARE(gdImagePtr) gdImageCropThreshold(gdImagePtr im, const unsigned int c - return NULL; - } - -+ if (color < 0 || (!gdImageTrueColor(im) && color >= gdImageColorsTotal(im))) { -+ return NULL; -+ } -+ - /* TODO: Add gdImageGetRowPtr and works with ptr at the row level - * for the true color and palette images - * new formats will simply work with ptr -diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt -index 6f5c786..5093d52 100644 ---- a/tests/CMakeLists.txt -+++ b/tests/CMakeLists.txt -@@ -31,6 +31,7 @@ if (BUILD_TEST) - gdimagecolortransparent - gdimagecopy - gdimagecopyrotated -+ gdimagecrop - gdimagefile - gdimagefill - gdimagefilledellipse -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 4f6e756..5a0ebe8 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -25,6 +25,7 @@ include gdimagecolorresolve/Makemodule.am - include gdimagecolortransparent/Makemodule.am - include gdimagecopy/Makemodule.am - include gdimagecopyrotated/Makemodule.am -+include gdimagecrop/Makemodule.am - include gdimagefile/Makemodule.am - include gdimagefill/Makemodule.am - include gdimagefilledellipse/Makemodule.am --- -2.9.1 - -From 8c9f39c7cb1f62ea00bc7a48aff64d3811c2d6d0 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 11:20:07 +0700 -Subject: [PATCH 2/8] fix php 72494, invalid color index not handled, can lead - to crash - ---- - tests/gdimagecrop/.gitignore | 1 + - 1 file changed, 1 insertion(+) - create mode 100644 tests/gdimagecrop/.gitignore - -diff --git a/tests/gdimagecrop/.gitignore b/tests/gdimagecrop/.gitignore -new file mode 100644 -index 0000000..8e8c9c3 ---- /dev/null -+++ b/tests/gdimagecrop/.gitignore -@@ -0,0 +1 @@ -+/php_bug_72494 --- -2.9.1 - -From 8de370b7b6263a02268037a7cd13ddd991b43ea9 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 11:24:50 +0700 -Subject: [PATCH 3/8] fix php 72494, invalid color index not handled, can lead - to crash - ---- - tests/gdimagecrop/CMakeLists.txt | 5 +++++ - 1 file changed, 5 insertions(+) - create mode 100644 tests/gdimagecrop/CMakeLists.txt - -diff --git a/tests/gdimagecrop/CMakeLists.txt b/tests/gdimagecrop/CMakeLists.txt -new file mode 100644 -index 0000000..f7e4c7e ---- /dev/null -+++ b/tests/gdimagecrop/CMakeLists.txt -@@ -0,0 +1,5 @@ -+SET(TESTS_FILES -+ php_bug_72494 -+) -+ -+ADD_GD_TESTS() --- -2.9.1 - -From bca12e4e11ecda8a0ea719472700ad5c2b36a0d6 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 11:25:12 +0700 -Subject: [PATCH 4/8] fix php 72494, invalid color index not handled, can lead - to crash - ---- - tests/gdimagecrop/Makemodule.am | 5 +++++ - 1 file changed, 5 insertions(+) - create mode 100644 tests/gdimagecrop/Makemodule.am - -diff --git a/tests/gdimagecrop/Makemodule.am b/tests/gdimagecrop/Makemodule.am -new file mode 100644 -index 0000000..210888b ---- /dev/null -+++ b/tests/gdimagecrop/Makemodule.am -@@ -0,0 +1,5 @@ -+libgd_test_programs += \ -+ gdimagecrop/php_bug_72494 -+ -+EXTRA_DIST += \ -+ gdimagecrop/CMakeLists.txt --- -2.9.1 - -From 6ff72ae40c7c20ece939afb362d98cc37f4a1c96 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 11:25:40 +0700 -Subject: [PATCH 5/8] fix php 72494, invalid color index not handled, can lead - to crash - ---- - tests/gdimagecrop/php_bug_72494.c | 23 +++++++++++++++++++++++ - 1 file changed, 23 insertions(+) - create mode 100644 tests/gdimagecrop/php_bug_72494.c - -diff --git a/tests/gdimagecrop/php_bug_72494.c b/tests/gdimagecrop/php_bug_72494.c -new file mode 100644 -index 0000000..adaa379 ---- /dev/null -+++ b/tests/gdimagecrop/php_bug_72494.c -@@ -0,0 +1,23 @@ -+#include -+#include -+#include "gd.h" -+ -+#include "gdtest.h" -+ -+int main() -+{ -+ gdImagePtr im, exp; -+ int error = 0; -+ -+ im = gdImageCreate(50, 50); -+ -+ if (!im) { -+ gdTestErrorMsg("gdImageCreate failed.\n"); -+ return 1; -+ } -+ -+ gdImageCropThreshold(im, 1337, 0); -+ gdImageDestroy(im); -+ /* this bug tests a crash, it never reaches this point if the bug exists*/ -+ return 0; -+} --- -2.9.1 - -From a0f9f8f7bd0d3a6c6afd6d180b8e75d93aadddfa Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 11:38:07 +0700 -Subject: [PATCH 6/8] fix php 72494, CID 149753, color is unsigned int, remove - useless <0 comparison - ---- - src/gd_crop.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/gd_crop.c b/src/gd_crop.c -index 532b49b..d51ad67 100644 ---- a/src/gd_crop.c -+++ b/src/gd_crop.c -@@ -136,7 +136,7 @@ BGD_DECLARE(gdImagePtr) gdImageCropThreshold(gdImagePtr im, const unsigned int c - return NULL; - } - -- if (color < 0 || (!gdImageTrueColor(im) && color >= gdImageColorsTotal(im))) { -+ if (!gdImageTrueColor(im) && color >= gdImageColorsTotal(im)) { - return NULL; - } - --- -2.9.1 - -From 907115fbb980862934d0de91af4977a216745039 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 11:51:40 +0700 -Subject: [PATCH 7/8] fix php 72494, CID 149753, color is unsigned int, remove - useless <0 comparison - ---- - tests/gdimagecrop/php_bug_72494.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/gdimagecrop/php_bug_72494.c b/tests/gdimagecrop/php_bug_72494.c -index adaa379..5cb589b 100644 ---- a/tests/gdimagecrop/php_bug_72494.c -+++ b/tests/gdimagecrop/php_bug_72494.c -@@ -6,7 +6,7 @@ - - int main() - { -- gdImagePtr im, exp; -+ gdImagePtr im; - int error = 0; - - im = gdImageCreate(50, 50); --- -2.9.1 - -From fd623025505e87bba7ec8555eeb72dae4fb0afdc Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Mon, 27 Jun 2016 12:04:25 +0700 -Subject: [PATCH 8/8] fix php 72494, CID 149753, color is unsigned int, remove - useless <0 comparison - ---- - tests/gdimagecrop/php_bug_72494.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/tests/gdimagecrop/php_bug_72494.c b/tests/gdimagecrop/php_bug_72494.c -index 5cb589b..3bd19be 100644 ---- a/tests/gdimagecrop/php_bug_72494.c -+++ b/tests/gdimagecrop/php_bug_72494.c -@@ -7,7 +7,6 @@ - int main() - { - gdImagePtr im; -- int error = 0; - - im = gdImageCreate(50, 50); - --- -2.9.1 - diff --git a/gnu/packages/patches/gd-CVE-2016-6132.patch b/gnu/packages/patches/gd-CVE-2016-6132.patch deleted file mode 100644 index 4c475b71b2..0000000000 --- a/gnu/packages/patches/gd-CVE-2016-6132.patch +++ /dev/null @@ -1,55 +0,0 @@ -Fix CVE-2016-6132 (read out-of-bounds when parsing TGA files). - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=2016-6132 - -Copied from upstream commit: -https://github.com/libgd/libgd/commit/ead349e99868303b37f5e6e9d9d680c9dc71ff8d - -From ead349e99868303b37f5e6e9d9d680c9dc71ff8d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ond=C5=99ej=20Sur=C3=BD?= -Date: Tue, 12 Jul 2016 11:24:09 +0200 -Subject: [PATCH] Fix #247, A read out-of-bands was found in the parsing of TGA - files (CVE-2016-6132) - ---- - src/gd_tga.c | 13 +++++++++++-- - 1 file changed, 11 insertions(+), 2 deletions(-) - -diff --git a/src/gd_tga.c b/src/gd_tga.c -index ef20f86..20fe2d2 100644 ---- a/src/gd_tga.c -+++ b/src/gd_tga.c -@@ -237,7 +237,11 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga ) - return -1; - } - -- gdGetBuf(conversion_buffer, image_block_size, ctx); -+ if (gdGetBuf(conversion_buffer, image_block_size, ctx) != image_block_size) { -+ gd_error("gd-tga: premature end of image data\n"); -+ gdFree(conversion_buffer); -+ return -1; -+ } - - while (buffer_caret < image_block_size) { - tga->bitmap[buffer_caret] = (int) conversion_buffer[buffer_caret]; -@@ -257,11 +261,16 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga ) - } - conversion_buffer = (unsigned char *) gdMalloc(image_block_size * sizeof(unsigned char)); - if (conversion_buffer == NULL) { -+ gd_error("gd-tga: premature end of image data\n"); - gdFree( decompression_buffer ); - return -1; - } - -- gdGetBuf( conversion_buffer, image_block_size, ctx ); -+ if (gdGetBuf(conversion_buffer, image_block_size, ctx) != image_block_size) { -+ gdFree(conversion_buffer); -+ gdFree(decompression_buffer); -+ return -1; -+ } - - buffer_caret = 0; - --- -2.9.1 - diff --git a/gnu/packages/patches/gd-CVE-2016-6214.patch b/gnu/packages/patches/gd-CVE-2016-6214.patch deleted file mode 100644 index 7894a32bb1..0000000000 --- a/gnu/packages/patches/gd-CVE-2016-6214.patch +++ /dev/null @@ -1,66 +0,0 @@ -Fix CVE-2016-6214 (read out-of-bounds when parsing TGA files). - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6214 - -Adapted from upstream commit: -https://github.com/libgd/libgd/commit/341aa68843ceceae9ba6e083431f14a07bd92308 - -Since `patch` cannot apply Git binary diffs, we omit the addition of -'tests/tga/bug00247a.c' and its associated binary data. - -From 341aa68843ceceae9ba6e083431f14a07bd92308 Mon Sep 17 00:00:00 2001 -From: "Christoph M. Becker" -Date: Tue, 12 Jul 2016 19:23:13 +0200 -Subject: [PATCH] Unsupported TGA bpp/alphabit combinations should error - gracefully - -Currently, only 24bpp without alphabits and 32bpp with 8 alphabits are -really supported. All other combinations will be rejected with a warning. - -(cherry picked from commit cb1a0b7e54e9aa118270c23a4a6fe560e4590dc9) ---- - src/gd_tga.c | 16 ++++++---------- - tests/tga/.gitignore | 1 + - tests/tga/CMakeLists.txt | 1 + - tests/tga/Makemodule.am | 4 +++- - tests/tga/bug00247a.c | 19 +++++++++++++++++++ - tests/tga/bug00247a.tga | Bin 0 -> 36 bytes - 6 files changed, 30 insertions(+), 11 deletions(-) - create mode 100644 tests/tga/bug00247a.c - create mode 100644 tests/tga/bug00247a.tga - -diff --git a/src/gd_tga.c b/src/gd_tga.c -index 20fe2d2..b4f8fa6 100644 ---- a/src/gd_tga.c -+++ b/src/gd_tga.c -@@ -99,7 +99,7 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromTgaCtx(gdIOCtx* ctx) - if (tga->bits == TGA_BPP_24) { - *tpix = gdTrueColor(tga->bitmap[bitmap_caret + 2], tga->bitmap[bitmap_caret + 1], tga->bitmap[bitmap_caret]); - bitmap_caret += 3; -- } else if (tga->bits == TGA_BPP_32 || tga->alphabits) { -+ } else if (tga->bits == TGA_BPP_32 && tga->alphabits) { - register int a = tga->bitmap[bitmap_caret + 3]; - - *tpix = gdTrueColorAlpha(tga->bitmap[bitmap_caret + 2], tga->bitmap[bitmap_caret + 1], tga->bitmap[bitmap_caret], gdAlphaMax - (a >> 1)); -@@ -159,16 +159,12 @@ int read_header_tga(gdIOCtx *ctx, oTga *tga) - printf("wxh: %i %i\n", tga->width, tga->height); - #endif - -- switch(tga->bits) { -- case 8: -- case 16: -- case 24: -- case 32: -- break; -- default: -- gd_error("bps %i not supported", tga->bits); -+ if (!((tga->bits == TGA_BPP_24 && tga->alphabits == 0) -+ || (tga->bits == TGA_BPP_32 && tga->alphabits == 8))) -+ { -+ gd_error_ex(GD_WARNING, "gd-tga: %u bits per pixel with %u alpha bits not supported\n", -+ tga->bits, tga->alphabits); - return -1; -- break; - } - - tga->ident = NULL; diff --git a/gnu/packages/patches/gd-fix-test-on-i686.patch b/gnu/packages/patches/gd-fix-test-on-i686.patch deleted file mode 100644 index 6dd2e0fb03..0000000000 --- a/gnu/packages/patches/gd-fix-test-on-i686.patch +++ /dev/null @@ -1,34 +0,0 @@ -Disable part of the gdimagerotate test on architectures such as i686 -where intermediate floating-point operations are done with 80-bit long -doubles, and typically later rounded to 64-bit doubles. This double -rounding causes small differences in the resulting pixel values -compared with other architectures, causing the image comparison to -fail. - -Patch by Mark H Weaver . - ---- libgd-2.2.2/tests/gdimagerotate/bug00067.c 1969-12-31 19:00:00.000000000 -0500 -+++ libgd-2.2.2/tests/gdimagerotate/bug00067.c 2016-07-18 12:19:19.885423132 -0400 -@@ -1,5 +1,6 @@ - #include - #include -+#include - #include "gd.h" - - #include "gdtest.h" -@@ -41,6 +42,7 @@ - return 1; - } - -+#if FLT_EVAL_METHOD != 2 - sprintf(filename, "bug00067_%03d_exp.png", angle); - path = gdTestFilePath2("gdimagerotate", filename); - if (!gdAssertImageEqualsToFile(path, exp)) { -@@ -48,6 +50,7 @@ - error += 1; - } - free(path); -+#endif - - gdImageDestroy(exp); - } diff --git a/gnu/packages/patches/gd-fix-tests-on-i686.patch b/gnu/packages/patches/gd-fix-tests-on-i686.patch new file mode 100644 index 0000000000..8db64e6aaf --- /dev/null +++ b/gnu/packages/patches/gd-fix-tests-on-i686.patch @@ -0,0 +1,61 @@ +Disable some image comparison tests on architectures such as i686 +where intermediate floating-point operations are done with 80-bit long +doubles, and typically later rounded to 64-bit doubles. This double +rounding causes small differences in the resulting pixel values +compared with other architectures, causing the image comparisons to +fail. + +Patch by Mark H Weaver . + +--- libgd-2.2.3/tests/gdimagerotate/bug00067.c 2016-06-18 05:42:16.000000000 -0400 ++++ libgd-2.2.3/tests/gdimagerotate/bug00067.c 2016-07-28 13:43:48.470767178 -0400 +@@ -1,5 +1,6 @@ + #include + #include ++#include + #include "gd.h" + + #include "gdtest.h" +@@ -43,7 +44,7 @@ + + sprintf(filename, "bug00067_%03d_exp.png", angle); + path = gdTestFilePath2("gdimagerotate", filename); +- if (!gdAssertImageEqualsToFile(path, exp)) { ++ if (FLT_EVAL_METHOD != 2 && !gdAssertImageEqualsToFile(path, exp)) { + gdTestErrorMsg("comparing rotated image to %s failed.\n", path); + error += 1; + } +--- libgd-2.2.3/tests/gdimagecopyresampled/bug00201.c 2016-07-21 04:06:42.000000000 -0400 ++++ libgd-2.2.3/tests/gdimagecopyresampled/bug00201.c 2016-07-28 13:56:46.021447064 -0400 +@@ -1,3 +1,4 @@ ++#include + #include "gd.h" + #include "gdtest.h" + +@@ -65,7 +66,7 @@ + gdImageDestroy(background); + gdImageDestroy(scaled_logo); + +- gdAssertImageEqualsToFile("gdimagecopyresampled/bug00201_exp.png", img); ++ FLT_EVAL_METHOD != 2 && gdAssertImageEqualsToFile("gdimagecopyresampled/bug00201_exp.png", img); + gdImageDestroy(img); + return gdNumFailures(); + } +--- libgd-2.2.3/tests/gdimagecopyresampled/basic_alpha.c 2016-07-21 04:06:42.000000000 -0400 ++++ libgd-2.2.3/tests/gdimagecopyresampled/basic_alpha.c 2016-07-28 13:57:18.857831608 -0400 +@@ -1,5 +1,6 @@ + /* Testing basic gdImageCopyResampled() functionality with alpha channel */ + ++#include + #include "gd.h" + #include "gdtest.h" + +@@ -33,7 +34,7 @@ + gdImageCopyResampled(copy, im, 0,0, 0,0, 200,200, 400,300); + gdImageDestroy(im); + +- gdAssertImageEqualsToFile("gdimagecopyresampled/basic_alpha_exp.png", copy); ++ FLT_EVAL_METHOD != 2 && gdAssertImageEqualsToFile("gdimagecopyresampled/basic_alpha_exp.png", copy); + + gdImageDestroy(copy); + return gdNumFailures();