From fb203578f6291116a125739b0530d203a70d1b70 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 2 Apr 2017 20:04:20 -0400 Subject: [PATCH 0001/1227] gnu: gnutls: Update to 3.5.10. * gnu/packages/tls.scm (gnutls): Update to 3.5.10. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 5f06140e72..5acb1ff785 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -140,7 +140,7 @@ living in the same process.") (define-public gnutls (package (name "gnutls") - (version "3.5.9") + (version "3.5.10") (source (origin (method url-fetch) (uri @@ -151,7 +151,7 @@ living in the same process.") "/gnutls-" version ".tar.xz")) (sha256 (base32 - "0l9971841jsfdcvcyhas17sk5rsby6x5vvwcmmj4x3zi9q60zcc2")))) + "17apwvdkkazh5w8z8mbanpj2yj8s2002qwy46wz4v3akpa33wi5g")))) (build-system gnu-build-system) (arguments '(#:configure-flags From 1f044d7a910bfe6b3aa264e876418f4a96e0aece Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 24 Feb 2017 15:48:44 +0100 Subject: [PATCH 0002/1227] gnu: ed: Update to 1.14.2. * gnu/packages/ed.scm (ed): Update to 1.14.2. --- gnu/packages/ed.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ed.scm b/gnu/packages/ed.scm index 5014229952..d30d7bcfa8 100644 --- a/gnu/packages/ed.scm +++ b/gnu/packages/ed.scm @@ -28,14 +28,14 @@ (define-public ed (package (name "ed") - (version "1.14.1") + (version "1.14.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/ed/ed-" version ".tar.lz")) (sha256 (base32 - "0ajm69pma7gigddlrq2qi4dsllz9vhm8gqwpkcdagdd2yaw7xfgz")))) + "1nqhk3n1s1p77g2bjnj55acicsrlyb2yasqxqwpx0w0djfx64ygm")))) (build-system gnu-build-system) (native-inputs `(("lzip" ,lzip))) (arguments From ab58ec0d95833b0290355a6b827d3871f9ad40ae Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 24 Feb 2017 12:01:04 +0100 Subject: [PATCH 0003/1227] gnu: perl: Update to 5.24.1. * gnu/packages/perl.scm (perl): Update to 5.24.1. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 3470121883..e513292214 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -50,14 +50,14 @@ ;; Yeah, Perl... It is required early in the bootstrap process by Linux. (package (name "perl") - (version "5.24.0") + (version "5.24.1") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/src/5.0/perl-" version ".tar.gz")) (sha256 (base32 - "00jj8zr8fnihrxxhl8h936ssczv5x86qb618yz1ig40d1rp0qhvy")) + "1bqqb5ghfj4486nqr77kgsd8aff6a289jy7n2cdkznwvn34qbhg6")) (patches (search-patches "perl-no-sys-dirs.patch" "perl-autosplit-default-time.patch" From 821072e22b0619087675bdc178081f0efa26e1a9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 3 Apr 2017 14:56:52 +0200 Subject: [PATCH 0004/1227] gnu: gdbm: Update to 1.13. * gnu/packages/databases.scm (gdbm): Update to 1.13. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 675619d6ab..808f181250 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -123,14 +123,14 @@ either single machines or networked clusters.") (define-public gdbm (package (name "gdbm") - (version "1.12") + (version "1.13") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gdbm/gdbm-" version ".tar.gz")) (sha256 (base32 - "1smwz4x5qa4js0zf1w3asq6z7mh20zlgwbh2bk5dczw6xrk22yyr")))) + "0lx201q20dvc70f8a3c9s7s18z15inlxvbffph97ngvrgnyjq9cx")))) (arguments `(#:configure-flags '("--enable-libgdbm-compat"))) (build-system gnu-build-system) (home-page "http://www.gnu.org.ua/software/gdbm") From 8c85cb1b9ff10de2df0f3395d0491c389b6596dd Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 3 Apr 2017 15:12:10 +0200 Subject: [PATCH 0005/1227] gnu: file: Update to 5.30. * gnu/packages/file.scm (file): Update to 5.30. --- gnu/packages/file.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/file.scm b/gnu/packages/file.scm index a6239877a0..050e6715b1 100644 --- a/gnu/packages/file.scm +++ b/gnu/packages/file.scm @@ -28,14 +28,14 @@ (define-public file (package (name "file") - (version "5.28") + (version "5.30") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.astron.com/pub/file/file-" version ".tar.gz")) (sha256 (base32 - "04p0w9ggqq6cqvwhyni0flji1z0rwrz896hmhkxd2mc6dca5xjqf")))) + "057jpcyy8ws7q4s4sm8r1rxb8xycdbng2z4y9i98f094wlr28k39")))) (build-system gnu-build-system) ;; When cross-compiling, this package depends upon a native install of From 7134ac4cc7ca8a8ccde5642b726513b7d1c9c3b1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 3 Apr 2017 15:27:24 +0200 Subject: [PATCH 0006/1227] gnu: libpthread-stubs: Update to 0.4. * gnu/packages/xorg.scm (libpthread-stubs): Update to 0.4. --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 635c1832a4..5f9a59f54e 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -1120,7 +1120,7 @@ themselves.") (define-public libpthread-stubs (package (name "libpthread-stubs") - (version "0.3") + (version "0.4") (source (origin (method url-fetch) @@ -1130,7 +1130,7 @@ themselves.") ".tar.bz2")) (sha256 (base32 - "16bjv3in19l84hbri41iayvvg4ls9gv1ma0x0qlbmwy67i7dbdim")))) + "0cz7s9w8lqgzinicd4g36rjg08zhsbyngh0w68c3np8nlc8mkl74")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "https://www.x.org/wiki/") From dede644945f07d7b19f48f06a909fa59f5c66fb0 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 3 Apr 2017 15:32:41 +0200 Subject: [PATCH 0007/1227] gnu: lzip: Update to 1.18. * gnu/packages/compression.scm (lzip): Update to 1.18. --- gnu/packages/compression.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 5404f66ecf..965225fdc8 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -457,14 +457,14 @@ some compression ratio).") (define-public lzip (package (name "lzip") - (version "1.16") + (version "1.18") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/lzip/lzip-" version ".tar.gz")) (sha256 (base32 - "0l9724rw1l3hg2ldr3n7ihqich4m9nc6y7l302bvdj4jmxdw530j")))) + "0jlizsavak8lc469zkjiyhpx4sbg07ij7mzq70dq5yhv7a3z6ygm")))) (build-system gnu-build-system) (home-page "http://www.nongnu.org/lzip/lzip.html") (synopsis "Lossless data compressor based on the LZMA algorithm") From 28938febd59c3df455a007cc84929f71550a785a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 3 Apr 2017 16:04:59 +0200 Subject: [PATCH 0008/1227] gnu: lzip: Correct hash. This is a followup to dede644945f07d7b19f48f06a909fa59f5c66fb0. * gnu/packages/compression.scm (lzip)[source]: Use hash of ".gz" tarball instead of ".lz". --- gnu/packages/compression.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 965225fdc8..eed6c6bc12 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -464,7 +464,7 @@ some compression ratio).") version ".tar.gz")) (sha256 (base32 - "0jlizsavak8lc469zkjiyhpx4sbg07ij7mzq70dq5yhv7a3z6ygm")))) + "1p8lvc22sv3damld9ng8y6i8z2dvvpsbi9v7yhr5bc2a20m8iya7")))) (build-system gnu-build-system) (home-page "http://www.nongnu.org/lzip/lzip.html") (synopsis "Lossless data compressor based on the LZMA algorithm") From 70800cd6346616cf7cf21e464991ea91c38068e0 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 3 Apr 2017 16:06:51 +0200 Subject: [PATCH 0009/1227] gnu: sqlite: Update to 3.18.0. * gnu/packages/databases.scm (sqlite): Update to 3.18.0. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 808f181250..2ea29db52b 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -707,7 +707,7 @@ for example from a shell script.") (define-public sqlite (package (name "sqlite") - (version "3.17.0") + (version "3.18.0") (source (origin (method url-fetch) (uri (let ((numeric-version @@ -723,7 +723,7 @@ for example from a shell script.") numeric-version ".tar.gz"))) (sha256 (base32 - "0k472gq0p706jq4529p60znvw02hdf172qxgbdv59q0n7anqbr54")))) + "0p5cx7nbjxk7glcm277ypi5w4gv144qazw79ql47svlpccj62mrp")))) (build-system gnu-build-system) (inputs `(("readline" ,readline))) (arguments From 8fda37bca1e160e13e90e93d2d51640e8461611a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 6 Apr 2017 23:19:11 -0400 Subject: [PATCH 0010/1227] gnu: libpng: Update to 1.6.29. * gnu/packages/image.scm (libpng): Update to 1.6.29. --- gnu/packages/image.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index b5b3a7283d..82fc7bfe7a 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -66,7 +66,7 @@ (define-public libpng (package (name "libpng") - (version "1.6.28") + (version "1.6.29") (source (origin (method url-fetch) (uri (list (string-append "mirror://sourceforge/libpng/libpng16/" @@ -78,7 +78,8 @@ "ftp://ftp.simplesystems.org/pub/libpng/png/src/history" "/libpng16/libpng-" version ".tar.xz"))) (sha256 - (base32 "0ylgyx93hnk38haqrh8prd3ax5ngzwvjqw5cxw7p9nxmwsfyrlyq")))) + (base32 + "0fgjqp7x6jynacmqh6dj72cn6nnf6yxjfqqqfsxrx0pyx22bcia2")))) (build-system gnu-build-system) ;; libpng.la says "-lz", so propagate it. From a33d518e24b305c7b0f81887c15eeabb65ec9411 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 7 Apr 2017 10:45:25 -0400 Subject: [PATCH 0011/1227] gnu: curl: Update to 7.53.1. * gnu/packages/curl.scm (curl): Update to 7.53.1. --- gnu/packages/curl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 22e18389e7..d0f4bbf295 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -40,14 +40,14 @@ (define-public curl (package (name "curl") - (version "7.53.0") + (version "7.53.1") (source (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" version ".tar.lzma")) (sha256 (base32 - "1k0i31xygb804c61llhin5wbpcscg4gfqmbxcfkpdr1alwh7igrq")))) + "1qpm4qj5llr8f5bbl185gpjqknj47nzhvxd8j1vm6asgk3sly4jb")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;1.2 MiB of man3 pages From b81d11e580dcddfc4fb2e156346ce4efbf293846 Mon Sep 17 00:00:00 2001 From: rennes Date: Tue, 21 Feb 2017 23:21:49 -0600 Subject: [PATCH 0012/1227] gnu: grep: Fix for gnulib library. * gnu/packages/patches/grep-gnulib-lock.patch: New file. * gnu/packages/base.scm (grep)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/base.scm | 4 ++- gnu/packages/patches/grep-gnulib-lock.patch | 32 +++++++++++++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/grep-gnulib-lock.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9035753673..9528833551 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -618,6 +618,7 @@ dist_patch_DATA = \ %D%/packages/patches/gobject-introspection-cc.patch \ %D%/packages/patches/gobject-introspection-girepository.patch \ %D%/packages/patches/graphite2-ffloat-store.patch \ + %D%/packages/patches/grep-gnulib-lock.patch \ %D%/packages/patches/grep-timing-sensitive-test.patch \ %D%/packages/patches/grub-CVE-2015-8370.patch \ %D%/packages/patches/grub-gets-undeclared.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 5c36b612f1..3fc76ad9e1 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen +;;; Copyright © 2017 Rene Saavedra ;;; ;;; This file is part of GNU Guix. ;;; @@ -86,7 +87,8 @@ command-line arguments, multiple languages, and so on.") (sha256 (base32 "1dcasjp3a578nrvzrcn38mpizb8w1q6mvfzhjmcqqgkf0nsivj72")) - (patches (search-patches "grep-timing-sensitive-test.patch")))) + (patches (search-patches "grep-timing-sensitive-test.patch" + "grep-gnulib-lock.patch")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) ;some of the tests require it (arguments diff --git a/gnu/packages/patches/grep-gnulib-lock.patch b/gnu/packages/patches/grep-gnulib-lock.patch new file mode 100644 index 0000000000..68c33f1031 --- /dev/null +++ b/gnu/packages/patches/grep-gnulib-lock.patch @@ -0,0 +1,32 @@ +This patch fix error on 'gnulib' library required to build +'grep' package on GNU/Hurd. +The patch was adapted from upstream source repository: +'' + +Commit: 4084b3a1094372b960ce4a97634e08f4538c8bdd + +diff --git a/lib/glthread/lock.c b/lib/glthread/lock.c +index 061562b..afc86f4 100644 +--- a/lib/glthread/lock.c ++++ b/lib/glthread/lock.c +@@ -30,7 +30,7 @@ + + /* ------------------------- gl_rwlock_t datatype ------------------------- */ + +-# if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (__GNU_LIBRARY__ > 1)) ++# if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (defined PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP && (__GNU_LIBRARY__ > 1))) + + # ifdef PTHREAD_RWLOCK_INITIALIZER + +diff --git a/lib/glthread/lock.h b/lib/glthread/lock.h +index ec16d39..67932aa 100644 +--- a/lib/glthread/lock.h ++++ b/lib/glthread/lock.h +@@ -179,7 +179,7 @@ typedef pthread_mutex_t gl_lock_t; + + /* ------------------------- gl_rwlock_t datatype ------------------------- */ + +-# if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (__GNU_LIBRARY__ > 1)) ++# if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (defined PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP && (__GNU_LIBRARY__ > 1))) + + # ifdef PTHREAD_RWLOCK_INITIALIZER From 27695e22df089e560995a5bcd503fac8011ead05 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 8 Apr 2017 13:38:12 -0400 Subject: [PATCH 0013/1227] gnu: libarchive: Update to 3.3.1. * gnu/packages/backup.scm (libarchive): Update to 3.3.1. --- gnu/packages/backup.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 74245e5812..c6487b966b 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -186,7 +186,7 @@ backups (called chunks) to allow easy burning to CD/DVD.") (define-public libarchive (package (name "libarchive") - (version "3.2.2") + (version "3.3.1") (source (origin (method url-fetch) @@ -194,7 +194,7 @@ backups (called chunks) to allow easy burning to CD/DVD.") version ".tar.gz")) (sha256 (base32 - "03q6y428rg723c9fj1vidzjw46w1vf8z0h95lkvz1l9jw571j739")))) + "1rr40hxlm9vy5z2zb5w7pyfkgd1a4s061qapm83s19accb8mpji9")))) (build-system gnu-build-system) ;; TODO: Add -L/path/to/nettle in libarchive.pc. (inputs From 34d624cef51f0e4eb4e888622b60fc2befe31fa7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 8 Apr 2017 23:10:50 +0200 Subject: [PATCH 0014/1227] gnu: Build derivations with Guile 2.2 by default. * gnu/packages/guile.scm (guile-2.0/fixed): Remove. (guile-2.2)[source]: Switch from tar.lz to tar.xz. (guile-2.2/fixed): New variable. * gnu/packages/commencement.scm (guile-final): Use GUILE-2.2/FIXED instead of GUILE-2.2/FIXED. (canonical-package): Mention 2.2 instead of 2.0. --- gnu/packages/commencement.scm | 4 ++-- gnu/packages/guile.scm | 23 +++++++++++++---------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 92f6e6c2ea..09a82b6b94 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -821,7 +821,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" ;; 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 (hidden-package guile-2.0/fixed) + (package-with-explicit-inputs (hidden-package guile-2.2/fixed) %boot4-inputs (current-source-location) #:guile %bootstrap-guile))) @@ -940,7 +940,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" the implicit inputs of 'gnu-build-system', return that one, otherwise return PACKAGE. -The goal is to avoid duplication in cases like GUILE-FINAL vs. GUILE-2.0, +The goal is to avoid duplication in cases like GUILE-FINAL vs. GUILE-2.2, COREUTILS-FINAL vs. COREUTILS, etc." ;; XXX: This doesn't handle dependencies of the final inputs, such as ;; libunistring, GMP, etc. diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 96fc84a960..46e6dea747 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -209,14 +209,6 @@ without requiring the source code to be rewritten.") (home-page "https://www.gnu.org/software/guile/") (license license:lgpl3+))) -(define-public guile-2.0/fixed - ;; A package of Guile 2.0 that's rarely changed. It is the one used - ;; in the `base' module, and thus changing it entails a full rebuild. - (package - (inherit guile-2.0) - (properties '((hidden? . #t))) ;people should install 'guile-2.0' - (replacement #f))) - (define-public guile-2.2 (package (inherit guile-2.0) (name "guile") @@ -224,11 +216,14 @@ without requiring the source code to be rewritten.") (replacement #f) (source (origin (method url-fetch) + + ;; Note: we are limited to one of the compression formats + ;; supported by the bootstrap binaries, so no lzip here. (uri (string-append "mirror://gnu/guile/guile-" version - ".tar.lz")) + ".tar.xz")) (sha256 (base32 - "083vp6754dp4d5pvcy4bqvxq60cayf92v5slf5cgij8bnvixgyvr")) + "05dmvhd1y135x7w5qfw4my42cfp6l8bbhjfxvchcc1cbdvzri0f1")) (modules '((guix build utils))) ;; Remove the pre-built object files. Instead, build everything @@ -247,6 +242,14 @@ without requiring the source code to be rewritten.") (files '("lib/guile/2.2/site-ccache" "share/guile/site/2.2"))))))) +(define-public guile-2.2/fixed + ;; A package of Guile 2.2 that's rarely changed. It is the one used + ;; in the `base' module, and thus changing it entails a full rebuild. + (package + (inherit guile-2.2) + (properties '((hidden? . #t))) ;people should install 'guile-2.2' + (replacement #f))) + (define-public guile-next (deprecated-package "guile-next" guile-2.2)) From 1cbd63f20527fd9c18d11e5e33c2817efe71c1ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 8 Apr 2017 23:20:54 +0200 Subject: [PATCH 0015/1227] gnu: coreutils: Update to 8.27. * gnu/packages/base.scm (coreutils): Update to 8.27. [source](patches): Remove "coreutils-fix-cross-compilation.patch" and add "coreutils-cut-huge-range-test.patch". [native-inputs]: Remove "coreutils-cut-huge-range-test.patch". [arguments]: Remove 'patch-cut-test' phase. Remove #:parallel-tests?. * gnu/local.mk (dist_patch_DATA): Remove "coreutils-fix-cross-compilation.patch". * gnu/packages/patches/coreutils-fix-cross-compilation.patch: Remove. * gnu/packages/patches/coreutils-cut-huge-range-test.patch: Adjust. --- gnu/local.mk | 1 - gnu/packages/base.scm | 38 ++++--------------- .../coreutils-cut-huge-range-test.patch | 29 +++++++++----- .../coreutils-fix-cross-compilation.patch | 15 -------- 4 files changed, 27 insertions(+), 56 deletions(-) delete mode 100644 gnu/packages/patches/coreutils-fix-cross-compilation.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9528833551..d4ce243c7a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -525,7 +525,6 @@ dist_patch_DATA = \ %D%/packages/patches/cmake-fix-tests.patch \ %D%/packages/patches/coda-use-system-libs.patch \ %D%/packages/patches/coreutils-cut-huge-range-test.patch \ - %D%/packages/patches/coreutils-fix-cross-compilation.patch \ %D%/packages/patches/cpio-CVE-2016-2037.patch \ %D%/packages/patches/cpufrequtils-fix-aclocal.patch \ %D%/packages/patches/cracklib-CVE-2016-6318.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 3fc76ad9e1..7bcfd7a2e2 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -286,15 +286,15 @@ used to apply commands with arbitrarily long arguments.") (define-public coreutils (package (name "coreutils") - (version "8.26") + (version "8.27") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/coreutils/coreutils-" version ".tar.xz")) (sha256 (base32 - "13lspazc7xkviy93qz7ks9jv4sldvgmwpq36ghrbrqpq93br8phm")) - (patches (search-patches "coreutils-fix-cross-compilation.patch")))) + "0sv547572iq8ayy8klir4hnngnx92a9nsazmf1wgzfc7xr4x74c8")) + (patches (search-patches "coreutils-cut-huge-range-test.patch")))) (build-system gnu-build-system) (inputs `(("acl" ,acl) ; TODO: add SELinux ("gmp" ,gmp) ;bignums in 'expr', yay! @@ -309,21 +309,12 @@ used to apply commands with arbitrarily long arguments.") ;; copy of help2man. However, don't pass it when cross-compiling since ;; that would lead it to try to run programs to get their '--help' output ;; for help2man. - `(,@(if (%current-target-system) - '() - `(("perl" ,perl))) - - ;; Apply this patch only on ARM to avoid a full rebuild. - ;; TODO: Move to 'patches' in the next update cycle. - ,@(if (string-prefix? "arm" (or (%current-target-system) - (%current-system))) - `(("cut-test.patch" - ,(search-patch "coreutils-cut-huge-range-test.patch"))) - '()))) + (if (%current-target-system) + '() + `(("perl" ,perl)))) (outputs '("out" "debug")) (arguments `(#:parallel-build? #f ; help2man may be called too early - #:parallel-tests? #f ; race condition fixed after 8.26 #:phases (alist-cons-before 'build 'patch-shell-references (lambda* (#:key inputs #:allow-other-keys) @@ -338,22 +329,7 @@ used to apply commands with arbitrarily long arguments.") (substitute* (find-files "tests" "\\.sh$") (("#!/bin/sh") (format #f "#!~a/bin/sh" bash))))) - - ,@(if (string-prefix? "arm" (or (%current-target-system) - (%current-system))) - '((alist-cons-before - 'build 'patch-cut-test - (lambda* (#:key inputs native-inputs - #:allow-other-keys) - (let ((patch (or (assoc-ref inputs - "cut-test.patch") - (assoc-ref native-inputs - "cut-test.patch")))) - (zero? - (system* "patch" "-p1" "--force" - "--input" patch)))) - %standard-phases)) - '(%standard-phases))))) + %standard-phases))) (synopsis "Core GNU utilities (file, text, shell)") (description "GNU Coreutils includes all of the basic command-line tools that are diff --git a/gnu/packages/patches/coreutils-cut-huge-range-test.patch b/gnu/packages/patches/coreutils-cut-huge-range-test.patch index 0be2cef2b8..e3a0ef28eb 100644 --- a/gnu/packages/patches/coreutils-cut-huge-range-test.patch +++ b/gnu/packages/patches/coreutils-cut-huge-range-test.patch @@ -1,22 +1,33 @@ This patch fixes 100% reproducible test failures on arm-linux-gnueabihf in our -the build environment chroot, as reported at . -It is a followup to this upstream patch: +the build environment chroot, as reported at , +and now on x86_64-linux-gnu as well. It is a variant of this upstream patch: - commit 28803c8a3144d5d4363cdbd148bbe067af1a67c2 - Author: Pádraig Brady - Date: Fri Mar 3 00:25:54 2017 -0800 + commit f5422009389678680dba9ff4ecb7d33632ee3383 + Author: Ludovic Courtès + Date: Mon Mar 27 20:34:39 2017 -0700 - tests: avoid a spurious failure on older debian + tests: avoid false ulimit failure on some systems + + * tests/misc/cut-huge-range.sh: On some systems returns_ may + use more memory, so incorporate that in the determination + of the ulimit value to use. Noticed on ARMv7 with bash-4.4.12, + and x86_64 with bash-4.2.37. + Fixes http://bugs.gnu.org/26253 ... which appeared to be insufficient. +diff --git a/tests/misc/cut-huge-range.sh b/tests/misc/cut-huge-range.sh +index 6b3c5b6ed..55b7b640e 100755 --- a/tests/misc/cut-huge-range.sh +++ b/tests/misc/cut-huge-range.sh -@@ -22,6 +22,7 @@ getlimits_ +@@ -20,9 +20,9 @@ + print_ver_ cut + getlimits_ - vm=$(get_min_ulimit_v_ cut -b1 /dev/null) \ +-vm=$(get_min_ulimit_v_ cut -b1 /dev/null) \ ++vm=$(get_min_ulimit_v_ sh -c 'cut -b1 /dev/null') \ || skip_ "this shell lacks ulimit support" -+vm=$(($vm + $(getconf PAGESIZE))) # avoid spurious failures + vm=$(($vm + 1000)) # avoid spurious failures # sed script to subtract one from the input. # Each input line should consist of a positive decimal number. diff --git a/gnu/packages/patches/coreutils-fix-cross-compilation.patch b/gnu/packages/patches/coreutils-fix-cross-compilation.patch deleted file mode 100644 index 3f0d35c33e..0000000000 --- a/gnu/packages/patches/coreutils-fix-cross-compilation.patch +++ /dev/null @@ -1,15 +0,0 @@ -Coreutils fails to cross compile for other platforms because cu_install_program -is not being evaluated properly. This patch fixes it. -See ---- a/Makefile.in -+++ b/Makefile.in -@@ -5023,7 +5023,7 @@ pr = progs-readme - @CROSS_COMPILING_FALSE@cu_install_program = src/ginstall - - # Use the just-built 'ginstall', when not cross-compiling. --@CROSS_COMPILING_TRUE@cu_install_program = @INSTALL_PROGRAM@ -+@CROSS_COMPILING_TRUE@cu_install_program := @INSTALL@ - info_TEXINFOS = doc/coreutils.texi - doc_coreutils_TEXINFOS = \ - doc/perm.texi \ - From 56fb1421beb15e2197521ff23f21cfce0d0c58dc Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 11 Apr 2017 00:33:04 -0400 Subject: [PATCH 0016/1227] gnu: pango: Update to 1.40.5. * gnu/packages/gtk.scm (pango): Update to 1.40.5. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 770a8c9160..ae1ff6a8cf 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -206,7 +206,7 @@ affine transformation (scale, rotation, shear, etc.).") (define-public pango (package (name "pango") - (version "1.40.3") + (version "1.40.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/pango/" @@ -214,7 +214,7 @@ affine transformation (scale, rotation, shear, etc.).") name "-" version ".tar.xz")) (sha256 (base32 - "1lqi4yncw5q0v7g5makzxyp18g5cksqyld8m1wx0qli8wxf8pfmb")))) + "1j81kmdq2kndayahfck60myd05hj5qd7mixj0w5kchkc8m082x14")))) (build-system gnu-build-system) (propagated-inputs `(("cairo" ,cairo) From 139272f44f1af945f903936b87c46269ab6659b6 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 11 Apr 2017 17:27:37 +0200 Subject: [PATCH 0017/1227] gnu: pkg-config: Update to 0.29.2. * gnu/packages/pkg-config.scm (%pkg-config): Update to 0.29.2. --- gnu/packages/pkg-config.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/pkg-config.scm b/gnu/packages/pkg-config.scm index 01069d27a5..12f17f1e3c 100644 --- a/gnu/packages/pkg-config.scm +++ b/gnu/packages/pkg-config.scm @@ -30,7 +30,7 @@ (define-public %pkg-config (package (name "pkg-config") - (version "0.29.1") + (version "0.29.2") (source (origin (method url-fetch) (uri (list @@ -46,7 +46,7 @@ version ".tar.gz"))) (sha256 (base32 - "00dh1jn8rbppmgbhhgqhmbh3c58b0gccy39rsjdlcma50sg3rd5y")))) + "14fmwzki1rlz8bs2p810lk6jqdxsk966d8drgsjmi54cd00rrikg")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-internal-glib"))) (native-search-paths From 480da86d0969a667e8d2a564de535cb73a6a2229 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Wed, 12 Apr 2017 21:17:24 +0200 Subject: [PATCH 0018/1227] gnu: gettext: Fix make check issues on multi-core machines. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/gettext-gnulib-multi-core.patch: New file. * gnu/packages/patches/gettext-multi-core.patch: New file. * gnu/packages/gettext.scm (gettext-minimal)[patches]: Add a reference to the two previous patches. Signed-off-by: Ludovic Courtès --- gnu/packages/gettext.scm | 9 +- .../patches/gettext-gnulib-multi-core.patch | 178 +++++++++++++++++ gnu/packages/patches/gettext-multi-core.patch | 185 ++++++++++++++++++ 3 files changed, 371 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/gettext-gnulib-multi-core.patch create mode 100644 gnu/packages/patches/gettext-multi-core.patch diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index f583d1c2c2..2a749e3a6d 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Alex Kost ;;; Copyright © 2017 Marius Bakke +;;; Copyright © 2017 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,7 +46,13 @@ version ".tar.gz")) (sha256 (base32 - "0hsw28f9q9xaggjlsdp2qmbp2rbd1mp0njzan2ld9kiqwkq2m57z")))) + "0hsw28f9q9xaggjlsdp2qmbp2rbd1mp0njzan2ld9kiqwkq2m57z")) + ;; test-lock has performance issues on multi-core machines, + ;; it hangs or takes a long time to complete. + ;; There is one commit in gettext and one commit + ;; in gettext's embedded gnulib to fix this issue. + (patches (search-patches "gettext-multi-core.patch" + "gettext-gnulib-multi-core.patch")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;8 MiB of HTML diff --git a/gnu/packages/patches/gettext-gnulib-multi-core.patch b/gnu/packages/patches/gettext-gnulib-multi-core.patch new file mode 100644 index 0000000000..5ccdbe4ca1 --- /dev/null +++ b/gnu/packages/patches/gettext-gnulib-multi-core.patch @@ -0,0 +1,178 @@ +This patch fixes performance problems on multi-core machines +as reported at . + +See commit 480d374e596a0ee3fed168ab42cd84c313ad3c89 in Gnulib +by Bruno Haible . + +diff --git a/gettext-tools/gnulib-tests/test-lock.c b/gettext-tools/gnulib-tests/test-lock.c +index cb734b4e6..aa6de2739 100644 +--- a/gettext-tools/gnulib-tests/test-lock.c ++++ b/gettext-tools/gnulib-tests/test-lock.c +@@ -50,6 +50,13 @@ + Uncomment this to see if the operating system has a fair scheduler. */ + #define EXPLICIT_YIELD 1 + ++/* Whether to use 'volatile' on some variables that communicate information ++ between threads. If set to 0, a lock is used to protect these variables. ++ If set to 1, 'volatile' is used; this is theoretically equivalent but can ++ lead to much slower execution (e.g. 30x slower total run time on a 40-core ++ machine. */ ++#define USE_VOLATILE 0 ++ + /* Whether to print debugging messages. */ + #define ENABLE_DEBUGGING 0 + +@@ -103,6 +110,51 @@ + # define yield() + #endif + ++#if USE_VOLATILE ++struct atomic_int { ++ volatile int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ return ai->value; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ ai->value = new_value; ++} ++#else ++struct atomic_int { ++ gl_lock_define (, lock) ++ int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++ gl_lock_init (ai->lock); ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ gl_lock_lock (ai->lock); ++ int ret = ai->value; ++ gl_lock_unlock (ai->lock); ++ return ret; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ gl_lock_lock (ai->lock); ++ ai->value = new_value; ++ gl_lock_unlock (ai->lock); ++} ++#endif ++ + #define ACCOUNT_COUNT 4 + + static int account[ACCOUNT_COUNT]; +@@ -170,12 +222,12 @@ lock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int lock_checker_done; ++static struct atomic_int lock_checker_done; + + static void * + lock_checker_thread (void *arg) + { +- while (!lock_checker_done) ++ while (get_atomic_int_value (&lock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_lock_lock (my_lock); +@@ -200,7 +252,8 @@ test_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- lock_checker_done = 0; ++ init_atomic_int (&lock_checker_done); ++ set_atomic_int_value (&lock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (lock_checker_thread, NULL); +@@ -210,7 +263,7 @@ test_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- lock_checker_done = 1; ++ set_atomic_int_value (&lock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } +@@ -254,12 +307,12 @@ rwlock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int rwlock_checker_done; ++static struct atomic_int rwlock_checker_done; + + static void * + rwlock_checker_thread (void *arg) + { +- while (!rwlock_checker_done) ++ while (get_atomic_int_value (&rwlock_checker_done) == 0) + { + dbgprintf ("Checker %p before check rdlock\n", gl_thread_self_pointer ()); + gl_rwlock_rdlock (my_rwlock); +@@ -284,7 +337,8 @@ test_rwlock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- rwlock_checker_done = 0; ++ init_atomic_int (&rwlock_checker_done); ++ set_atomic_int_value (&rwlock_checker_done, 0); + + /* Spawn the threads. */ + for (i = 0; i < THREAD_COUNT; i++) +@@ -295,7 +349,7 @@ test_rwlock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- rwlock_checker_done = 1; ++ set_atomic_int_value (&rwlock_checker_done, 1); + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (checkerthreads[i], NULL); + check_accounts (); +@@ -356,12 +410,12 @@ reclock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int reclock_checker_done; ++static struct atomic_int reclock_checker_done; + + static void * + reclock_checker_thread (void *arg) + { +- while (!reclock_checker_done) ++ while (get_atomic_int_value (&reclock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_recursive_lock_lock (my_reclock); +@@ -386,7 +440,8 @@ test_recursive_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- reclock_checker_done = 0; ++ init_atomic_int (&reclock_checker_done); ++ set_atomic_int_value (&reclock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (reclock_checker_thread, NULL); +@@ -396,7 +451,7 @@ test_recursive_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- reclock_checker_done = 1; ++ set_atomic_int_value (&reclock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } diff --git a/gnu/packages/patches/gettext-multi-core.patch b/gnu/packages/patches/gettext-multi-core.patch new file mode 100644 index 0000000000..31a378cfd0 --- /dev/null +++ b/gnu/packages/patches/gettext-multi-core.patch @@ -0,0 +1,185 @@ +This patch fixes performance problems on multi-core machines +as reported at . + +See commit 1afbcb06fded2a427b761dd1615b1e48e1e853cc in Gettext +by Bruno Haible . + +diff --git a/gettext-runtime/tests/test-lock.c b/gettext-runtime/tests/test-lock.c +index d279d1d60..51cec3d6b 100644 +--- a/gettext-runtime/tests/test-lock.c ++++ b/gettext-runtime/tests/test-lock.c +@@ -1,5 +1,5 @@ + /* Test of locking in multithreaded situations. +- Copyright (C) 2005, 2008-2016 Free Software Foundation, Inc. ++ Copyright (C) 2005, 2008-2017 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by +@@ -50,6 +50,13 @@ + Uncomment this to see if the operating system has a fair scheduler. */ + #define EXPLICIT_YIELD 1 + ++/* Whether to use 'volatile' on some variables that communicate information ++ between threads. If set to 0, a lock is used to protect these variables. ++ If set to 1, 'volatile' is used; this is theoretically equivalent but can ++ lead to much slower execution (e.g. 30x slower total run time on a 40-core ++ machine. */ ++#define USE_VOLATILE 0 ++ + /* Whether to print debugging messages. */ + #define ENABLE_DEBUGGING 0 + +@@ -214,6 +221,51 @@ static inline void * gl_thread_self_pointer (void) + # define yield() + #endif + ++#if USE_VOLATILE ++struct atomic_int { ++ volatile int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ return ai->value; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ ai->value = new_value; ++} ++#else ++struct atomic_int { ++ gl_lock_define (, lock) ++ int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++ gl_lock_init (ai->lock); ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ gl_lock_lock (ai->lock); ++ int ret = ai->value; ++ gl_lock_unlock (ai->lock); ++ return ret; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ gl_lock_lock (ai->lock); ++ ai->value = new_value; ++ gl_lock_unlock (ai->lock); ++} ++#endif ++ + #define ACCOUNT_COUNT 4 + + static int account[ACCOUNT_COUNT]; +@@ -281,12 +333,12 @@ lock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int lock_checker_done; ++static struct atomic_int lock_checker_done; + + static void * + lock_checker_thread (void *arg) + { +- while (!lock_checker_done) ++ while (get_atomic_int_value (&lock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_lock_lock (my_lock); +@@ -311,7 +363,8 @@ test_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- lock_checker_done = 0; ++ init_atomic_int (&lock_checker_done); ++ set_atomic_int_value (&lock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (lock_checker_thread, NULL); +@@ -321,7 +374,7 @@ test_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- lock_checker_done = 1; ++ set_atomic_int_value (&lock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } +@@ -365,12 +418,12 @@ rwlock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int rwlock_checker_done; ++static struct atomic_int rwlock_checker_done; + + static void * + rwlock_checker_thread (void *arg) + { +- while (!rwlock_checker_done) ++ while (get_atomic_int_value (&rwlock_checker_done) == 0) + { + dbgprintf ("Checker %p before check rdlock\n", gl_thread_self_pointer ()); + gl_rwlock_rdlock (my_rwlock); +@@ -395,7 +448,8 @@ test_rwlock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- rwlock_checker_done = 0; ++ init_atomic_int (&rwlock_checker_done); ++ set_atomic_int_value (&rwlock_checker_done, 0); + + /* Spawn the threads. */ + for (i = 0; i < THREAD_COUNT; i++) +@@ -406,7 +460,7 @@ test_rwlock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- rwlock_checker_done = 1; ++ set_atomic_int_value (&rwlock_checker_done, 1); + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (checkerthreads[i], NULL); + check_accounts (); +@@ -467,12 +521,12 @@ reclock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int reclock_checker_done; ++static struct atomic_int reclock_checker_done; + + static void * + reclock_checker_thread (void *arg) + { +- while (!reclock_checker_done) ++ while (get_atomic_int_value (&reclock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_recursive_lock_lock (my_reclock); +@@ -497,7 +551,8 @@ test_recursive_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- reclock_checker_done = 0; ++ init_atomic_int (&reclock_checker_done); ++ set_atomic_int_value (&reclock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (reclock_checker_thread, NULL); +@@ -507,7 +562,7 @@ test_recursive_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- reclock_checker_done = 1; ++ set_atomic_int_value (&reclock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } From bd54c5e3faa9fc46b00428be2f7a5e16afc64f5e Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 19 Feb 2017 19:21:06 +0000 Subject: [PATCH 0019/1227] gnu: gcc: Adjust for "alpha-linux". MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This change allows cross-building packages by just using --target=alpha-unknown-linux-gnu re2c: $ ./pre-inst-env guix build --target=alpha-unknown-linux-gnu re2c $ file /gnu/store/p1z9iszzb4ng0vzc535sc2ha33ax24l6-re2c-0.16/bin/re2c /gnu/store/p1z9iszzb4ng0vzc535sc2ha33ax24l6-re2c-0.16/bin/re2c: \ ELF 64-bit LSB executable, Alpha (unofficial), version 1 (SYSV), dynamically linked, \ interpreter /gnu/store/0z5d6z3hh41w7z5g2g82zlnwgpbj0i1a-glibc-cross-alpha-unknown-linux-gnu-2.24/lib/ld-linux.so.2, \ for GNU/Linux 3.2.0, not stripped GCC for alpha uses 'GLIBC_DYNAMIC_LINKER"/lib/ld-linux.so.2"' * gnu/packages/gcc.scm (gcc-4.7)[arguments]: Fix GLIBC_DYNAMIC_LINKER substitution when delimiter is a tab. Signed-off-by: Sergei Trofimovich Signed-off-by: Ludovic Courtès --- gnu/packages/gcc.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 00e2fa7d66..0fdb5ca9b8 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -213,7 +213,7 @@ where the OS part is overloaded to denote a specific ABI---into GCC ;; Fix the dynamic linker's file name. (substitute* (find-files "gcc/config" "^(linux|gnu|sysv4)(64|-elf|-eabi)?\\.h$") - (("#define (GLIBC|GNU_USER)_DYNAMIC_LINKER([^ ]*).*$" + (("#define (GLIBC|GNU_USER)_DYNAMIC_LINKER([^ \t]*).*$" _ gnu-user suffix) (format #f "#define ~a_DYNAMIC_LINKER~a \"~a\"~%" gnu-user suffix From dc4ebebd61896b1122fde97644325d06e3f46b47 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Mon, 6 Mar 2017 22:21:43 +0000 Subject: [PATCH 0020/1227] gnu: libffi: Fix builds on Alpha. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/libffi-3.2.1-complex_alpha.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/libffi.scm (libffi)[source]: Use it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/libffi.scm | 3 +- .../patches/libffi-3.2.1-complex-alpha.patch | 28 +++++++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/libffi-3.2.1-complex-alpha.patch diff --git a/gnu/local.mk b/gnu/local.mk index d4ce243c7a..51f92f0882 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -697,6 +697,7 @@ dist_patch_DATA = \ %D%/packages/patches/libevent-2.1-skip-failing-test.patch \ %D%/packages/patches/libextractor-ffmpeg-3.patch \ %D%/packages/patches/libgit2-use-after-free.patch \ + %D%/packages/patches/libffi-3.2.1-complex-alpha.patch \ %D%/packages/patches/libjxr-fix-function-signature.patch \ %D%/packages/patches/libjxr-fix-typos.patch \ %D%/packages/patches/liboop-mips64-deplibs-fix.patch \ diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm index 13938f7ee8..16475affe6 100644 --- a/gnu/packages/libffi.scm +++ b/gnu/packages/libffi.scm @@ -42,7 +42,8 @@ name "-" version ".tar.gz")) (sha256 (base32 - "0dya49bnhianl0r65m65xndz6ls2jn1xngyn72gd28ls3n7bnvnh")))) + "0dya49bnhianl0r65m65xndz6ls2jn1xngyn72gd28ls3n7bnvnh")) + (patches (search-patches "libffi-3.2.1-complex-alpha.patch")))) (build-system gnu-build-system) (arguments `(#:phases (alist-cons-after 'install 'post-install ,post-install-phase diff --git a/gnu/packages/patches/libffi-3.2.1-complex-alpha.patch b/gnu/packages/patches/libffi-3.2.1-complex-alpha.patch new file mode 100644 index 0000000000..ebbc0635a5 --- /dev/null +++ b/gnu/packages/patches/libffi-3.2.1-complex-alpha.patch @@ -0,0 +1,28 @@ +The patch fixes build failure of form: + ../src/alpha/osf.S:298:2: error: #error "osf.S out of sync with ffi.h" +Upstream fixed the bug in a more invasive way +but didn't have releases since 3.2.1. + +The patch is taken from Gentoo: +https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-libs/libffi/files/libffi-3.2.1-complex_alpha.patch + +--- libffi-3.2.1/src/alpha/osf.S 2015-01-16 10:46:15.000000000 +0100 ++++ libffi-3.2.1/src/alpha/osf.S 2015-01-16 10:46:24.000000000 +0100 +@@ -279,6 +279,7 @@ + .gprel32 $load_64 # FFI_TYPE_SINT64 + .gprel32 $load_none # FFI_TYPE_STRUCT + .gprel32 $load_64 # FFI_TYPE_POINTER ++ .gprel32 $load_none # FFI_TYPE_COMPLEX + + /* Assert that the table above is in sync with ffi.h. */ + +@@ -294,7 +295,8 @@ + || FFI_TYPE_SINT64 != 12 \ + || FFI_TYPE_STRUCT != 13 \ + || FFI_TYPE_POINTER != 14 \ +- || FFI_TYPE_LAST != 14 ++ || FFI_TYPE_COMPLEX != 15 \ ++ || FFI_TYPE_LAST != 15 + #error "osf.S out of sync with ffi.h" + #endif + From c8a3dea847bb9f87fa1876d0c6c3356d6226f121 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 30 Mar 2017 03:10:48 -0400 Subject: [PATCH 0021/1227] packages: Enable threaded compression of source tarballs. This provides a ~2x speedup when using 4 threads. * guix/packages.scm (patch-and-repack)[build]: Invoke xz with '--threads=0' when re-packing tarballs. --- guix/packages.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/guix/packages.scm b/guix/packages.scm index 61171b8342..29351ace1d 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -576,7 +576,12 @@ specifies modules in scope when evaluating SNIPPET." #:fail-on-error? #t))))) (zero? (apply system* (string-append #+tar "/bin/tar") - "cvfa" #$output + "cvf" #$output + ;; The bootstrap xz does not support + ;; threaded compression (introduced in + ;; 5.2.0), but it ignores the extra flag. + (string-append "--use-compress-program=" + #+xz "/bin/xz --threads=0") ;; avoid non-determinism in the archive "--mtime=@0" "--owner=root:0" From dd58c53399e75abcf0bb89a27ffc1675e434faae Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Wed, 12 Apr 2017 22:29:37 +0100 Subject: [PATCH 0022/1227] gnu: glibc/linux: Re-enable parallel build. Parallel build failure was fixed upstream as: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=e8b6be0016f131c2ac72bf3213eabdb59800e63b * gnu/packages/base.scm (glibc/linux): Re-enable parallel build. Signed-off-by: Sergei Trofimovich Signed-off-by: Kei Kebreau --- gnu/packages/base.scm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 7bcfd7a2e2..c568590214 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -541,10 +541,6 @@ store.") (arguments `(#:out-of-source? #t - ;; In version 2.21, there a race in the 'elf' directory, see - ;; . - #:parallel-build? #f - ;; The libraries have an empty RUNPATH, but some, such as the versioned ;; libraries (libdl-2.24.so, etc.) have ld.so marked as NEEDED. Since ;; these libraries are always going to be found anyway, just skip From 1ae93fc9839463885e08788d7dd35393a4d8a8be Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 17 Apr 2017 12:18:27 +0200 Subject: [PATCH 0023/1227] build: Add two missing patches to local.mk. gnu/local.mk (dist_patch): Add gettext-multi-core.patch and gettext-gnulib-multi-core.patch. Commit 480da86d0969a667e8d2a564de535cb73a6a2229 ommited them. Signed-off-by: Marius Bakke --- gnu/local.mk | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/local.mk b/gnu/local.mk index 51f92f0882..620fb07f32 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -593,6 +593,8 @@ dist_patch_DATA = \ %D%/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch \ %D%/packages/patches/gegl-CVE-2012-4433.patch \ %D%/packages/patches/geoclue-config.patch \ + %D%/packages/patches/gettext-multi-core.patch \ + %D%/packages/patches/gettext-gnulib-multi-core.patch \ %D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \ %D%/packages/patches/ghostscript-CVE-2013-5653.patch \ %D%/packages/patches/ghostscript-CVE-2015-3228.patch \ From da8e256a527a21ad88005c1d84514d910b964c19 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 17 Apr 2017 12:18:28 +0200 Subject: [PATCH 0024/1227] gnu: findutils: Fix make check issues on multi-core machines. * gnu/packages/patches/findutils-gnulib-multi-core.patch: New file. * gnu/local.mk (dist_patch): Add previous patch. * gnu/packages/base.scm (findutils)[patches]: Add a reference to the previous patch. Signed-off-by: Marius Bakke --- gnu/local.mk | 1 + gnu/packages/base.scm | 10 +- .../patches/findutils-gnulib-multi-core.patch | 294 ++++++++++++++++++ 3 files changed, 303 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/findutils-gnulib-multi-core.patch diff --git a/gnu/local.mk b/gnu/local.mk index 620fb07f32..b1dbfec5e2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -562,6 +562,7 @@ dist_patch_DATA = \ %D%/packages/patches/fcgi-2.4.0-gcc44-fixes.patch \ %D%/packages/patches/fcgi-2.4.0-poll.patch \ %D%/packages/patches/findutils-localstatedir.patch \ + %D%/packages/patches/findutils-gnulib-multi-core.patch \ %D%/packages/patches/findutils-test-xargs.patch \ %D%/packages/patches/flint-ldconfig.patch \ %D%/packages/patches/fltk-shared-lib-defines.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index c568590214..004aacfa04 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2017 Rene Saavedra +;;; Copyright © 2017 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. ;;; @@ -259,8 +260,13 @@ interactive means to merge two files.") (sha256 (base32 "178nn4dl7wbcw499czikirnkniwnx36argdnqgz4ik9i6zvwkm6y")) - (patches (search-patches "findutils-localstatedir.patch" - "findutils-test-xargs.patch")))) + (patches (search-patches + "findutils-localstatedir.patch" + "findutils-test-xargs.patch" + ;; test-lock has performance issues on multi-core + ;; machines, it hangs or takes a long time to complete. + ;; This is a commit from gnulib to fix this issue. + "findutils-gnulib-multi-core.patch")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list diff --git a/gnu/packages/patches/findutils-gnulib-multi-core.patch b/gnu/packages/patches/findutils-gnulib-multi-core.patch new file mode 100644 index 0000000000..5a37f4f1f9 --- /dev/null +++ b/gnu/packages/patches/findutils-gnulib-multi-core.patch @@ -0,0 +1,294 @@ +This patch fixes performance problems on multi-core machines +as reported at . + +See commit 480d374e596a0ee3fed168ab42cd84c313ad3c89 in Gnulib +by Bruno Haible . + +diff --git a/tests/test-lock.c b/tests/test-lock.c +index a992f64..fb18dee 100644 +--- a/tests/test-lock.c ++++ b/tests/test-lock.c +@@ -1,5 +1,5 @@ + /* Test of locking in multithreaded situations. +- Copyright (C) 2005, 2008-2015 Free Software Foundation, Inc. ++ Copyright (C) 2005, 2008-2017 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -50,6 +50,28 @@ + Uncomment this to see if the operating system has a fair scheduler. */ + #define EXPLICIT_YIELD 1 + ++/* Whether to use 'volatile' on some variables that communicate information ++ between threads. If set to 0, a semaphore or a lock is used to protect ++ these variables. If set to 1, 'volatile' is used; this is theoretically ++ equivalent but can lead to much slower execution (e.g. 30x slower total ++ run time on a 40-core machine), because 'volatile' does not imply any ++ synchronization/communication between different CPUs. */ ++#define USE_VOLATILE 0 ++ ++#if USE_POSIX_THREADS && HAVE_SEMAPHORE_H ++/* Whether to use a semaphore to communicate information between threads. ++ If set to 0, a lock is used. If set to 1, a semaphore is used. ++ Uncomment this to reduce the dependencies of this test. */ ++# define USE_SEMAPHORE 1 ++/* Mac OS X provides only named semaphores (sem_open); its facility for ++ unnamed semaphores (sem_init) does not work. */ ++# if defined __APPLE__ && defined __MACH__ ++# define USE_NAMED_SEMAPHORE 1 ++# else ++# define USE_UNNAMED_SEMAPHORE 1 ++# endif ++#endif ++ + /* Whether to print debugging messages. */ + #define ENABLE_DEBUGGING 0 + +@@ -90,6 +112,12 @@ + + #include "glthread/thread.h" + #include "glthread/yield.h" ++#if USE_SEMAPHORE ++# include ++# include ++# include ++# include ++#endif + + #if ENABLE_DEBUGGING + # define dbgprintf printf +@@ -103,6 +131,132 @@ + # define yield() + #endif + ++#if USE_VOLATILE ++struct atomic_int { ++ volatile int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ return ai->value; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ ai->value = new_value; ++} ++#elif USE_SEMAPHORE ++/* This atomic_int implementation can only support the values 0 and 1. ++ It is initially 0 and can be set to 1 only once. */ ++# if USE_UNNAMED_SEMAPHORE ++struct atomic_int { ++ sem_t semaphore; ++}; ++#define atomic_int_semaphore(ai) (&(ai)->semaphore) ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++ sem_init (&ai->semaphore, 0, 0); ++} ++# endif ++# if USE_NAMED_SEMAPHORE ++struct atomic_int { ++ sem_t *semaphore; ++}; ++#define atomic_int_semaphore(ai) ((ai)->semaphore) ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++ sem_t *s; ++ unsigned int count; ++ for (count = 0; ; count++) ++ { ++ char name[80]; ++ /* Use getpid() in the name, so that different processes running at the ++ same time will not interfere. Use ai in the name, so that different ++ atomic_int in the same process will not interfere. Use a count in ++ the name, so that even in the (unlikely) case that a semaphore with ++ the specified name already exists, we can try a different name. */ ++ sprintf (name, "test-lock-%lu-%p-%u", ++ (unsigned long) getpid (), ai, count); ++ s = sem_open (name, O_CREAT | O_EXCL, 0600, 0); ++ if (s == SEM_FAILED) ++ { ++ if (errno == EEXIST) ++ /* Retry with a different name. */ ++ continue; ++ else ++ { ++ perror ("sem_open failed"); ++ abort (); ++ } ++ } ++ else ++ { ++ /* Try not to leave a semaphore hanging around on the file system ++ eternally, if we can avoid it. */ ++ sem_unlink (name); ++ break; ++ } ++ } ++ ai->semaphore = s; ++} ++# endif ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ if (sem_trywait (atomic_int_semaphore (ai)) == 0) ++ { ++ if (sem_post (atomic_int_semaphore (ai))) ++ abort (); ++ return 1; ++ } ++ else if (errno == EAGAIN) ++ return 0; ++ else ++ abort (); ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ if (new_value == 0) ++ /* It's already initialized with 0. */ ++ return; ++ /* To set the value 1: */ ++ if (sem_post (atomic_int_semaphore (ai))) ++ abort (); ++} ++#else ++struct atomic_int { ++ gl_lock_define (, lock) ++ int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++ gl_lock_init (ai->lock); ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ gl_lock_lock (ai->lock); ++ int ret = ai->value; ++ gl_lock_unlock (ai->lock); ++ return ret; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ gl_lock_lock (ai->lock); ++ ai->value = new_value; ++ gl_lock_unlock (ai->lock); ++} ++#endif ++ + #define ACCOUNT_COUNT 4 + + static int account[ACCOUNT_COUNT]; +@@ -170,12 +324,12 @@ lock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int lock_checker_done; ++static struct atomic_int lock_checker_done; + + static void * + lock_checker_thread (void *arg) + { +- while (!lock_checker_done) ++ while (get_atomic_int_value (&lock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_lock_lock (my_lock); +@@ -200,7 +354,8 @@ test_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- lock_checker_done = 0; ++ init_atomic_int (&lock_checker_done); ++ set_atomic_int_value (&lock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (lock_checker_thread, NULL); +@@ -210,7 +365,7 @@ test_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- lock_checker_done = 1; ++ set_atomic_int_value (&lock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } +@@ -254,12 +409,12 @@ rwlock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int rwlock_checker_done; ++static struct atomic_int rwlock_checker_done; + + static void * + rwlock_checker_thread (void *arg) + { +- while (!rwlock_checker_done) ++ while (get_atomic_int_value (&rwlock_checker_done) == 0) + { + dbgprintf ("Checker %p before check rdlock\n", gl_thread_self_pointer ()); + gl_rwlock_rdlock (my_rwlock); +@@ -284,7 +439,8 @@ test_rwlock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- rwlock_checker_done = 0; ++ init_atomic_int (&rwlock_checker_done); ++ set_atomic_int_value (&rwlock_checker_done, 0); + + /* Spawn the threads. */ + for (i = 0; i < THREAD_COUNT; i++) +@@ -295,7 +451,7 @@ test_rwlock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- rwlock_checker_done = 1; ++ set_atomic_int_value (&rwlock_checker_done, 1); + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (checkerthreads[i], NULL); + check_accounts (); +@@ -356,12 +512,12 @@ reclock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int reclock_checker_done; ++static struct atomic_int reclock_checker_done; + + static void * + reclock_checker_thread (void *arg) + { +- while (!reclock_checker_done) ++ while (get_atomic_int_value (&reclock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_recursive_lock_lock (my_reclock); +@@ -386,7 +542,8 @@ test_recursive_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- reclock_checker_done = 0; ++ init_atomic_int (&reclock_checker_done); ++ set_atomic_int_value (&reclock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (reclock_checker_thread, NULL); +@@ -396,7 +553,7 @@ test_recursive_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- reclock_checker_done = 1; ++ set_atomic_int_value (&reclock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } From b100e0e89ebd1a6e73d6be4e354dd684abb057a4 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 17 Apr 2017 12:18:29 +0200 Subject: [PATCH 0025/1227] gnu: libunistring: Fix make check issues on multi-core machines. * gnu/packages/patches/libunistring-gnulib-multi-core.patch: New file. * gnu/local.mk (dist_patch): Add previous patch. * gnu/packages/libunistring.scm (libunistring)[patches]: Add a reference to previous patch. Signed-off-by: Marius Bakke --- gnu/local.mk | 1 + gnu/packages/libunistring.scm | 8 +- .../libunistring-gnulib-multi-core.patch | 178 ++++++++++++++++++ 3 files changed, 186 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/libunistring-gnulib-multi-core.patch diff --git a/gnu/local.mk b/gnu/local.mk index b1dbfec5e2..a0d7cfd0ac 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -732,6 +732,7 @@ dist_patch_DATA = \ %D%/packages/patches/libtorrent-rasterbar-boost-compat.patch \ %D%/packages/patches/libtool-skip-tests2.patch \ %D%/packages/patches/libunwind-CVE-2015-3239.patch \ + %D%/packages/patches/libunistring-gnulib-multi-core.patch \ %D%/packages/patches/libvpx-CVE-2016-2818.patch \ %D%/packages/patches/libwmf-CAN-2004-0941.patch \ %D%/packages/patches/libwmf-CVE-2006-3376.patch \ diff --git a/gnu/packages/libunistring.scm b/gnu/packages/libunistring.scm index 212bec4b49..df02f68cea 100644 --- a/gnu/packages/libunistring.scm +++ b/gnu/packages/libunistring.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen +;;; Copyright © 2017 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) + #:use-module (gnu packages) #:use-module (gnu packages base)) (define-public libunistring @@ -37,7 +39,11 @@ version ".tar.xz")) (sha256 (base32 - "15z76qrmrvkc3c6hfq2lzzqysgd21s682f2smycfab5g598n8drf")))) + "15z76qrmrvkc3c6hfq2lzzqysgd21s682f2smycfab5g598n8drf")) + ;; test-lock has performance issues on multi-core machines, + ;; it hangs or takes a long time to complete. + ;; This is a commit from gnulib to fix this issue. + (patches (search-patches "libunistring-gnulib-multi-core.patch")))) (propagated-inputs (libiconv-if-needed)) (build-system gnu-build-system) (arguments diff --git a/gnu/packages/patches/libunistring-gnulib-multi-core.patch b/gnu/packages/patches/libunistring-gnulib-multi-core.patch new file mode 100644 index 0000000000..709b20c6d2 --- /dev/null +++ b/gnu/packages/patches/libunistring-gnulib-multi-core.patch @@ -0,0 +1,178 @@ +This patch fixes performance problems on multi-core machines +as reported at . + +See commit 480d374e596a0ee3fed168ab42cd84c313ad3c89 in Gnulib +by Bruno Haible . + +diff --git a/tests/test-lock.c b/tests/test-lock.c +index cb734b4e6..aa6de2739 100644 +--- a/tests/test-lock.c ++++ b/tests/test-lock.c +@@ -50,6 +50,13 @@ + Uncomment this to see if the operating system has a fair scheduler. */ + #define EXPLICIT_YIELD 1 + ++/* Whether to use 'volatile' on some variables that communicate information ++ between threads. If set to 0, a lock is used to protect these variables. ++ If set to 1, 'volatile' is used; this is theoretically equivalent but can ++ lead to much slower execution (e.g. 30x slower total run time on a 40-core ++ machine. */ ++#define USE_VOLATILE 0 ++ + /* Whether to print debugging messages. */ + #define ENABLE_DEBUGGING 0 + +@@ -103,6 +110,51 @@ + # define yield() + #endif + ++#if USE_VOLATILE ++struct atomic_int { ++ volatile int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ return ai->value; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ ai->value = new_value; ++} ++#else ++struct atomic_int { ++ gl_lock_define (, lock) ++ int value; ++}; ++static void ++init_atomic_int (struct atomic_int *ai) ++{ ++ gl_lock_init (ai->lock); ++} ++static int ++get_atomic_int_value (struct atomic_int *ai) ++{ ++ gl_lock_lock (ai->lock); ++ int ret = ai->value; ++ gl_lock_unlock (ai->lock); ++ return ret; ++} ++static void ++set_atomic_int_value (struct atomic_int *ai, int new_value) ++{ ++ gl_lock_lock (ai->lock); ++ ai->value = new_value; ++ gl_lock_unlock (ai->lock); ++} ++#endif ++ + #define ACCOUNT_COUNT 4 + + static int account[ACCOUNT_COUNT]; +@@ -170,12 +222,12 @@ lock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int lock_checker_done; ++static struct atomic_int lock_checker_done; + + static void * + lock_checker_thread (void *arg) + { +- while (!lock_checker_done) ++ while (get_atomic_int_value (&lock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_lock_lock (my_lock); +@@ -200,7 +252,8 @@ test_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- lock_checker_done = 0; ++ init_atomic_int (&lock_checker_done); ++ set_atomic_int_value (&lock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (lock_checker_thread, NULL); +@@ -210,7 +263,7 @@ test_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- lock_checker_done = 1; ++ set_atomic_int_value (&lock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } +@@ -254,12 +307,12 @@ rwlock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int rwlock_checker_done; ++static struct atomic_int rwlock_checker_done; + + static void * + rwlock_checker_thread (void *arg) + { +- while (!rwlock_checker_done) ++ while (get_atomic_int_value (&rwlock_checker_done) == 0) + { + dbgprintf ("Checker %p before check rdlock\n", gl_thread_self_pointer ()); + gl_rwlock_rdlock (my_rwlock); +@@ -284,7 +337,8 @@ test_rwlock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- rwlock_checker_done = 0; ++ init_atomic_int (&rwlock_checker_done); ++ set_atomic_int_value (&rwlock_checker_done, 0); + + /* Spawn the threads. */ + for (i = 0; i < THREAD_COUNT; i++) +@@ -295,7 +349,7 @@ test_rwlock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- rwlock_checker_done = 1; ++ set_atomic_int_value (&rwlock_checker_done, 1); + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (checkerthreads[i], NULL); + check_accounts (); +@@ -356,12 +410,12 @@ reclock_mutator_thread (void *arg) + return NULL; + } + +-static volatile int reclock_checker_done; ++static struct atomic_int reclock_checker_done; + + static void * + reclock_checker_thread (void *arg) + { +- while (!reclock_checker_done) ++ while (get_atomic_int_value (&reclock_checker_done) == 0) + { + dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ()); + gl_recursive_lock_lock (my_reclock); +@@ -386,7 +440,8 @@ test_recursive_lock (void) + /* Initialization. */ + for (i = 0; i < ACCOUNT_COUNT; i++) + account[i] = 1000; +- reclock_checker_done = 0; ++ init_atomic_int (&reclock_checker_done); ++ set_atomic_int_value (&reclock_checker_done, 0); + + /* Spawn the threads. */ + checkerthread = gl_thread_create (reclock_checker_thread, NULL); +@@ -396,7 +451,7 @@ test_recursive_lock (void) + /* Wait for the threads to terminate. */ + for (i = 0; i < THREAD_COUNT; i++) + gl_thread_join (threads[i], NULL); +- reclock_checker_done = 1; ++ set_atomic_int_value (&reclock_checker_done, 1); + gl_thread_join (checkerthread, NULL); + check_accounts (); + } From 6d7228465e3c023a6d59ddd70f1b16d943ad86b2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Apr 2017 19:11:38 +0300 Subject: [PATCH 0026/1227] gnu: less: Update to 487. * gnu/packages/less.scm (less): Update to 487. --- gnu/packages/less.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/less.scm b/gnu/packages/less.scm index efdf8ab0c4..0aa4665840 100644 --- a/gnu/packages/less.scm +++ b/gnu/packages/less.scm @@ -26,7 +26,7 @@ (define-public less (package (name "less") - (version "481") + (version "487") (source (origin (method url-fetch) @@ -34,7 +34,7 @@ version ".tar.gz")) (sha256 (base32 - "19fxj0h10y5bhr3a1xa7kqvnwl44db3sdypz8jxl1q79yln8z8rz")))) + "01i7n6jaxwmww3pasy3hg38zc6x7jw0w05mqqvh6caqbrdaq9p7k")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses))) (home-page "https://www.gnu.org/software/less/") From 74f04d85566c8a6a83ec06e60df1f5942fa853d8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Apr 2017 19:12:42 +0300 Subject: [PATCH 0027/1227] gnu: libsigsegv: Update to 2.11. * gnu/packages/libsigsegv.scm (libsigsegv): Update to 2.11. --- gnu/packages/libsigsegv.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libsigsegv.scm b/gnu/packages/libsigsegv.scm index 41e7345351..608acba696 100644 --- a/gnu/packages/libsigsegv.scm +++ b/gnu/packages/libsigsegv.scm @@ -25,14 +25,14 @@ (define-public libsigsegv (package (name "libsigsegv") - (version "2.10") + (version "2.11") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libsigsegv/libsigsegv-" version ".tar.gz")) (sha256 - (base32 "16hrs8k3nmc7a8jam5j1fpspd6sdpkamskvsdpcw6m29vnis8q44")))) + (base32 "063swdvq7mbmc1clv0rnh20grwln1zfc2qnm0sa1hivcxyr2wz6x")))) (build-system gnu-build-system) (home-page "https://www.gnu.org/software/libsigsegv/") (synopsis "Library for handling page faults") From 0c1a9438dd64137a68481c64ae6b61f4660d536a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Apr 2017 19:14:17 +0300 Subject: [PATCH 0028/1227] gnu: libsigsegv: Use 'modify-phases' syntax. * gnu/packages/libsigsegv.scm (libsigsegv)[arguments]: Use 'modify-phases' syntax. --- gnu/packages/libsigsegv.scm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/gnu/packages/libsigsegv.scm b/gnu/packages/libsigsegv.scm index 608acba696..2a44819820 100644 --- a/gnu/packages/libsigsegv.scm +++ b/gnu/packages/libsigsegv.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013 Ludovic Courtès +;;; Copyright © 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -44,12 +45,12 @@ ;; linux-libre-headers-cross-mips64el-linux-gnu-3.3.8/include/asm/sigcontext.h:57:8: error: redefinition of 'struct sigcontext' (if (string-contains (or (%current-target-system) (%current-system)) "mips64el") - `(#:phases (alist-cons-before - 'configure 'patch-mips-old-h - (lambda _ - (substitute* "src/fault-linux-mips-old.h" - (("#include ") ""))) - %standard-phases)) + `(#:phases (modify-phases %standard-phases + (add-before 'configure 'patch-mips-old-h + (lambda _ + (substitute* "src/fault-linux-mips-old.h" + (("#include ") "")) + #t)))) '())) (description "GNU libsigsegv is a library to handle page faults, which occur when a From 8e71d6612d37629f8e77d7ab77c67d3623519543 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Apr 2017 19:15:49 +0300 Subject: [PATCH 0029/1227] gnu: libgpg-error: Update to 1.27. * gnu/packages/gnupg.scm (libgpg-error): Update to 1.27. --- gnu/packages/gnupg.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 532dbf88f7..fc22c43a0b 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2014, 2015, 2016 Mark H Weaver ;;; Copyright © 2015 Paul van der Walt -;;; Copyright © 2015, 2016 Efraim Flashner +;;; Copyright © 2015, 2016, 2017 Efraim Flashner ;;; Copyright © 2015, 2016 Ricardo Wurmus ;;; Copyright © 2016 Christopher Allan Webber ;;; Copyright © 2016 ng0 @@ -58,7 +58,7 @@ (define-public libgpg-error (package (name "libgpg-error") - (version "1.26") + (version "1.27") (source (origin (method url-fetch) @@ -66,7 +66,7 @@ version ".tar.bz2")) (sha256 (base32 - "0sgfia0syq78k1c9h10rkhc1nfv5v097icrprlx2x4qn074wnjsc")))) + "1li95ni122fzinzlmxbln63nmgij63irxfvi52ws4zfbzv3am4sg")))) (build-system gnu-build-system) (home-page "https://gnupg.org") (synopsis "Library of error values for GnuPG components") From ecc5bc33a347b8f1792414abb43d1170f0b4dd1e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Apr 2017 19:20:41 +0300 Subject: [PATCH 0030/1227] gnu: bc: Use 'modify-phases' syntax. * gnu/packages/algebra.scm (bc)[arguments]: Use 'modify-phases' syntax. --- gnu/packages/algebra.scm | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 98bb2aeb71..1f34e86b23 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Nicolas Goaziou ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -479,22 +480,22 @@ binary.") (native-inputs `(("flex" ,flex))) (arguments '(#:phases - (alist-replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - ;; This old `configure' script doesn't support - ;; variables passed as arguments. - (let ((out (assoc-ref outputs "out"))) - (setenv "CONFIG_SHELL" (which "bash")) - (zero? - (system* - "./configure" - (string-append "--prefix=" out) - ;; By default, man and info pages are put in - ;; PREFIX/{man,info}, but we want them in - ;; PREFIX/share/{man,info}. - (string-append "--mandir=" out "/share/man") - (string-append "--infodir=" out "/share/info"))))) - %standard-phases))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; This old `configure' script doesn't support + ;; variables passed as arguments. + (let ((out (assoc-ref outputs "out"))) + (setenv "CONFIG_SHELL" (which "bash")) + (zero? + (system* + "./configure" + (string-append "--prefix=" out) + ;; By default, man and info pages are put in + ;; PREFIX/{man,info}, but we want them in + ;; PREFIX/share/{man,info}. + (string-append "--mandir=" out "/share/man") + (string-append "--infodir=" out "/share/info"))))))))) (home-page "https://www.gnu.org/software/bc/") (synopsis "Arbitrary precision numeric processing language") (description From a55fbab7229e5a81f7d65a454096a49131a42f5b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 18 Apr 2017 06:38:01 +0300 Subject: [PATCH 0031/1227] gnu: libiconv: Update to 1.15. * gnu/packages/base.scm (libiconv): Update to 1.15. [source]: Remove snippet. --- gnu/packages/base.scm | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 004aacfa04..d52c48d3cf 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2014, 2015, 2016 Mark H Weaver ;;; Copyright © 2014 Alex Kost ;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2017 Rene Saavedra ;;; Copyright © 2017 Mathieu Othacehe @@ -1075,21 +1075,14 @@ and daylight-saving rules.") (define-public libiconv (package (name "libiconv") - (version "1.14") + (version "1.15") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libiconv/libiconv-" version ".tar.gz")) (sha256 (base32 - "04q6lgl3kglmmhw59igq1n7v3rp1rpkypl366cy1k1yn2znlvckj")) - (modules '((guix build utils))) - (snippet - ;; Work around "declared gets" error on glibc systems (fixed by - ;; Gnulib commit 66712c23388e93e5c518ebc8515140fa0c807348.) - '(substitute* "srclib/stdio.in.h" - (("^#undef gets") "") - (("^_GL_WARN_ON_USE \\(gets.*") ""))))) + "0y1ij745r4p48mxq84rax40p10ln7fc7m243p8k8sia519i3dxfc")))) (build-system gnu-build-system) (synopsis "Character set conversion library") (description From 78dea6f1d4a85dd9571ccbd604239912ba3a18b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Apr 2017 23:38:12 +0200 Subject: [PATCH 0032/1227] gnu: ld-wrapper: Build with Guile 2.2. Reported by Sergei Trofimovich . * gnu/packages/base.scm (make-ld-wrapper): Change #:guile to default to GUILE-2.2. * gnu/packages/commencement.scm (ld-wrapper): Define in terms of 'make-ld-wrapper' such that #:guile-for-build and #:guile are the same. --- gnu/packages/base.scm | 2 +- gnu/packages/commencement.scm | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index d52c48d3cf..4fd9ed87e8 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -442,7 +442,7 @@ included.") (define* (make-ld-wrapper name #:key (target (const #f)) binutils - (guile (canonical-package guile-2.0)) + (guile (canonical-package guile-2.2)) (bash (canonical-package bash)) (guile-for-build guile)) "Return a package called NAME that contains a wrapper for the 'ld' program diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 09a82b6b94..baabb16ac6 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -842,12 +842,10 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" (define-public ld-wrapper ;; The final 'ld' wrapper, which uses the final Guile and Binutils. - (package (inherit ld-wrapper-boot3) - (name "ld-wrapper") - (inputs `(("guile" ,guile-final) - ("bash" ,bash-final) - ,@(fold alist-delete (package-inputs ld-wrapper-boot3) - '("guile" "bash")))))) + (make-ld-wrapper "ld-wrapper" + #:binutils binutils-final + #:guile guile-final + #:bash bash-final)) (define %boot5-inputs ;; Now with UTF-8 locales. Remember that the bootstrap binaries were built From f98adb1cb3315a68b7f6c741fa3d647c305db369 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 23 Apr 2017 19:04:00 +0300 Subject: [PATCH 0033/1227] gnu: libidn2: Update to 2.0.1. * gnu/packages/libidn.scm (libidn2): Update to 2.0.1. [source]: Download from main GNU server. [arguments]: Remove 'create-pkgconfig-file phase. --- gnu/packages/libidn.scm | 35 +++++------------------------------ 1 file changed, 5 insertions(+), 30 deletions(-) diff --git a/gnu/packages/libidn.scm b/gnu/packages/libidn.scm index da6c7efb6f..b17dc4f2d6 100644 --- a/gnu/packages/libidn.scm +++ b/gnu/packages/libidn.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012 Andreas Enge -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. @@ -53,42 +53,17 @@ Java libraries.") (define-public libidn2 (package (name "libidn2") - (version "0.16") + (version "2.0.1") (source (origin (method url-fetch) - (uri (string-append "ftp://alpha.gnu.org/gnu/libidn/libidn2-" - version ".tar.gz")) + (uri (string-append "mirror://gnu/libidn/" name "-" version + ".tar.xz")) (sha256 (base32 - "13v8kh4d5nfkymai88zlw3h7k4x9khrpdpv97waf4ah8ykzrxb9g")))) - ;; XXX: Make sure to remove the 'create-pkg-config' phase - ;; below when this package is updated to >= 0.17. + "0irz2wlzdllpxr2w7lglryj88fy2ww3ilv7ang5d0s30jddjbg45")))) (inputs `(("libunistring" ,libunistring))) (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'install 'create-pkgconfig-file - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (pkgconfig (string-append out "/lib/pkgconfig"))) - (mkdir-p pkgconfig) - (call-with-output-file (string-append pkgconfig "/libidn2.pc") - (lambda (port) - (format port "prefix=~a -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -includedir=${prefix}/include - -Name: Libidn2 -Description: Library implementing IDNA2008 and TR46 -Version: ~a -Libs: -L${libdir} -lidn2 -Cflags: -I${includedir} -" - out ,version))) - #t)))))) (synopsis "Internationalized domain name library for IDNA2008") (description "Libidn2 is an internationalized domain library implementing the IDNA2008 specifications. Libidn2 is believed to be a complete IDNA2008 From 4a4e60f43328cb494267abc16c3fc4d039c07323 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 26 Apr 2017 17:27:43 +0200 Subject: [PATCH 0034/1227] gnu: boost: Update to 1.64.0. * gnu/packages/boost.scm (boost): Update to 1.64.0. --- gnu/packages/boost.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index dfaa853533..5d2056fc7d 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -35,7 +35,7 @@ (define-public boost (package (name "boost") - (version "1.63.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (string-append @@ -44,7 +44,7 @@ ".tar.bz2")) (sha256 (base32 - "1c5kzhcqahnic55dxcnw7r80qvwx5sfa2sa97yzv7xjrywljbbmy")))) + "0cikd35xfkpg9nnl76yqqnqxnf3hyfjjww8xjd4akflprsm5rk3v")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib))) (native-inputs From ed788c31cfac5ec864ad45fb09b2d014fc62461b Mon Sep 17 00:00:00 2001 From: rennes Date: Mon, 1 May 2017 08:41:04 -0500 Subject: [PATCH 0035/1227] gnu: libgc: Fix Check for Hurd systems. * gnu/packages/bdw-gc.scm (libgc)[arguments]: On GNU/Hurd systems add '--disable-gcj-support' to #:configure-flags. Adjust #:configure-flags to disable GCJ support and pass the 'gctest' test. --- gnu/packages/bdw-gc.scm | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm index b9732374d7..790a238579 100644 --- a/gnu/packages/bdw-gc.scm +++ b/gnu/packages/bdw-gc.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2016 Leo Famulari +;;; Copyright © 2017 Rene Saavedra ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,7 +24,8 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) - #:use-module (gnu packages pkg-config)) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages hurd)) (define-public libgc (package @@ -38,8 +40,20 @@ "143x7g0d0k6250ai6m2x3l4y352mzizi4wbgrmahxscv2aqjhjm1")))) (build-system gnu-build-system) (arguments - '(#:configure-flags '(;; Install gc_cpp.h et al. - "--enable-cplusplus"))) + `(#:configure-flags + (list + ;; Install gc_cpp.h et al. + "--enable-cplusplus" + ;; In GNU/Hurd systems during the 'Check' phase, + ;; there is a deadlock caused by the 'gctest' test. + ;; To disable the error set "--disable-gcj-support" + ;; to configure script. See bug report and discussion: + ;; + ;; + ,@(if (hurd-triplet? (or (%current-system) + (%current-target-system))) + '("--disable-gcj-support") + '())))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("libatomic-ops" ,libatomic-ops))) (outputs '("out" "debug")) From 7cfc200365f3c14f35aa5ebc5a1f1f7c36679e99 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 7 May 2017 20:21:33 +0200 Subject: [PATCH 0036/1227] gnu: re2: Add missing '#:modules' imports. Fixes . * gnu/packages/regex.scm (re2): Add missing '#:modules' imports. Signed-off-by: Danny Milosavljevic --- gnu/packages/regex.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm index f55faaf042..7790505250 100644 --- a/gnu/packages/regex.scm +++ b/gnu/packages/regex.scm @@ -41,7 +41,10 @@ "1s3kdcrz2mwi30k6pz9jkv5vk8b704bz65xgcr67wbn2pn3hpnqr")))) (build-system gnu-build-system) (arguments - `(#:test-target "test" + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) + #:test-target "test" ;; There is no configure step, but the Makefile respects a prefix. ;; As ./configure does not know anything about the target CXX ;; we need to specify TARGET-g++ explicitly. From bba6bbba03006fe47eea8254a69dd0f824e91b6f Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 6 May 2017 23:24:08 +0100 Subject: [PATCH 0037/1227] gnu: serf: Add missing '#:modules' imports. Fixes . * gnu/packages/web.scm (serf): Add missing '#:modules' imports. Signed-off-by: Danny Milosavljevic --- gnu/packages/web.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 7215dcbed1..24141b5ecf 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -832,7 +832,10 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.") ;;("gss" ,gss) ("zlib" ,zlib))) (arguments - `(#:phases + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) + #:phases ;; TODO: Add scons-build-system and use it here. (modify-phases %standard-phases (delete 'configure) From 809bc3948e2441daae32dfd1beb6c1984b840315 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 6 May 2017 16:40:35 +0100 Subject: [PATCH 0038/1227] gnu: gs-fonts: Add missing module imports. Fixes . * gnu/packages/ghostscript.scm (gs-fonts): Add missing modules to %modify-phases call: gnu-build-system, utils, srfi-1. Signed-off-by: Danny Milosavljevic --- gnu/packages/ghostscript.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 076046e721..33b8f51b6d 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -273,6 +273,10 @@ architecture.") (build-system gnu-build-system) (arguments `(#:tests? #f ; nothing to check, just files to copy + + #:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) #:phases (modify-phases %standard-phases (delete 'configure) From 47babd445a9f0e6fe9356cbe362d390f09df4e3b Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Mon, 8 May 2017 20:55:47 +0100 Subject: [PATCH 0039/1227] gnu: zip: Add missing '#:modules' imports. Fixes . * gnu/packages/zip.scm (zip): Add missing '#:modules' imports. Signed-off-by: Danny Milosavljevic --- gnu/packages/zip.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/zip.scm b/gnu/packages/zip.scm index 2cf30d6e32..cd16f5ad43 100644 --- a/gnu/packages/zip.scm +++ b/gnu/packages/zip.scm @@ -48,6 +48,9 @@ (list "-f" "unix/Makefile" (string-append "prefix=" out) (string-append "MANDIR=" out "/share/man/man1"))) + #:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) #:phases (modify-phases %standard-phases (replace 'build From bc81e6cae40098684c14b10d0aa4c6257acbbdb6 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Mon, 8 May 2017 20:55:48 +0100 Subject: [PATCH 0040/1227] gnu: go-1.4: Add missing '#:modules' imports. Fixes . * gnu/packages/golang.scm (go-1.4): Add missing '#:modules' imports. Signed-off-by: Danny Milosavljevic --- gnu/packages/golang.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 00630ce067..d19aa65afc 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -62,7 +62,8 @@ (arguments `(#:modules ((ice-9 match) (guix build gnu-build-system) - (guix build utils)) + (guix build utils) + (srfi srfi-1)) #:tests? #f ; Tests are run by the all.bash script. #:phases (modify-phases %standard-phases From a8f25449114bd9035898eec3455db51c0f4d928d Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Mon, 8 May 2017 20:55:49 +0100 Subject: [PATCH 0041/1227] gnu: sbcl: Add missing '#:modules' imports. Fixes . * gnu/packages/lisp.scm (sbcl): Add missing '#:modules' imports. Signed-off-by: Danny Milosavljevic --- gnu/packages/lisp.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 2bbe398079..889073edba 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -284,7 +284,10 @@ an interpreter, a compiler, a debugger, and much more.") ("texlive" ,texlive) ("texinfo" ,texinfo))) (arguments - '(#:phases + '(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) + #:phases (modify-phases %standard-phases (delete 'configure) (add-before 'build 'patch-unix-tool-paths From 2a75ec1567c81efdd2504b35c8a9e756215913a6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 9 May 2017 23:51:33 -0400 Subject: [PATCH 0042/1227] gnu: librsvg: Update to 2.40.17. * gnu/packages/gnome.scm (librsvg): Update to 2.40.17. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b94c36636e..9856fef0ce 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -982,7 +982,7 @@ dealing with different structured file formats.") (define-public librsvg (package (name "librsvg") - (version "2.40.16") + (version "2.40.17") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -990,7 +990,7 @@ dealing with different structured file formats.") name "-" version ".tar.xz")) (sha256 (base32 - "0bpz6gsq8xi1pb5k9ax6vinph460v14znch3y5yz167s0dmwz2yl")))) + "1k39gyf7f5m9x0jvpcxvfcqswdb04xhm1lbwbjabn1f4xk5wbxp6")))) (build-system gnu-build-system) (arguments `(#:phases From 662a7ac3c6f799851fec5003ad115ef764c21beb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 15 May 2017 16:38:27 -0400 Subject: [PATCH 0043/1227] gnu: freetype: Update to 2.8. * gnu/packages/fontutils.scm (freetype): Update to 2.8. --- gnu/packages/fontutils.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index 7e7234960d..f53881eb9c 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -48,13 +48,13 @@ (define-public freetype (package (name "freetype") - (version "2.7.1") + (version "2.8") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/freetype/freetype-" version ".tar.bz2")) (sha256 (base32 - "121gm15ayfg3rglby8ifh8384mcjb9dhmx9j40zl7yszw72b4frs")))) + "02xlj611alpvl3h33hvfw1jyxc1vp9mzwcckkiglkhn3hknh7im3")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From 93fabf59962aeb15981bd547850de1dab69eccfb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 15 May 2017 16:50:32 -0400 Subject: [PATCH 0044/1227] gnu: flex: Update to 2.6.4. * gnu/packages/flex.scm (flex): Update to 2.6.4. --- gnu/packages/flex.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/flex.scm b/gnu/packages/flex.scm index 1470b967da..ab0d8c583d 100644 --- a/gnu/packages/flex.scm +++ b/gnu/packages/flex.scm @@ -32,16 +32,16 @@ (define-public flex (package (name "flex") - (version "2.6.3") + (version "2.6.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/westes/flex" "/releases/download/v" version "/" - "flex-" version ".tar.gz")) + "flex-" version ".tar.lz")) (sha256 (base32 - "1an2cn2z85mkpgqcinh1fhhcd7993qm2lil1yxic8iz76ci79ck8")))) + "19sc63m09zamy2qlw5x3sg6wb6hrw96gfl0h87vh6flvsqjg9m3g")))) (build-system gnu-build-system) (inputs (let ((bison-for-tests From 5e54f4adda6b636b03b252804565f4d845d03658 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 15 May 2017 16:51:01 -0400 Subject: [PATCH 0045/1227] gnu: flex-2.6.1: Remove variable. * gnu/packages/flex.scm (flex-2.6.1): Remove variable. * gnu/packages/bootloaders.scm (grub, dtc): Use flex instead of flex-2.6.1. * gnu/packages/embedded.scm (propeller-binutils, binutils-vc4): Likewise. * gnu/packages/maths.scm (scotch): Likewise. * gnu/packages/wine.scm (wine): Likewise. --- gnu/packages/bootloaders.scm | 7 ++----- gnu/packages/embedded.scm | 4 ++-- gnu/packages/flex.scm | 17 ----------------- gnu/packages/maths.scm | 2 +- gnu/packages/wine.scm | 3 +-- 5 files changed, 6 insertions(+), 27 deletions(-) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 98afc6a7c1..572186bea7 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -114,10 +114,7 @@ (native-inputs `(("unifont" ,unifont) ("bison" ,bison) - ;; Due to a bug in flex >= 2.6.2, GRUB must be built with an older flex: - ;; - ;; TODO Try building with flex > 2.6.3. - ("flex" ,flex-2.6.1) + ("flex" ,flex) ("texinfo" ,texinfo) ("help2man" ,help2man) @@ -240,7 +237,7 @@ menu to select one of the installed operating systems.") (build-system gnu-build-system) (native-inputs `(("bison" ,bison) - ("flex" ,flex-2.6.1))) ; A bug in flex prevents building with flex-2.6.3. + ("flex" ,flex))) (arguments `(#:make-flags (list "CC=gcc" diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index 36f872cdf2..fbbafc6a3b 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -412,7 +412,7 @@ with a layered architecture of JTAG interface and TAP support.") ,@(package-arguments xbinutils))) (native-inputs `(("bison" ,bison) - ("flex" ,flex-2.6.1) ; needed because of yywrap error + ("flex" ,flex) ("texinfo" ,texinfo) ("dejagnu" ,dejagnu) ,@(package-native-inputs xbinutils)))))) @@ -764,7 +764,7 @@ simulator.") (base32 "14b3h2ji740s8zq5vwm4qdcxs4aa4wxi6wb9di3bv1h39x14nyr9")))) ("texinfo" ,texinfo) - ("flex" ,flex-2.6.1) ; A bug in flex prevents building with flex-2.6.3. + ("flex" ,flex) ("bison" ,bison) ("guile-1.8" ,guile-1.8) ("which" ,base:which))) diff --git a/gnu/packages/flex.scm b/gnu/packages/flex.scm index ab0d8c583d..b68b01e949 100644 --- a/gnu/packages/flex.scm +++ b/gnu/packages/flex.scm @@ -85,20 +85,3 @@ regular expressions for each rule. Whenever it finds a match, it executes the corresponding C code.") (license (non-copyleft "file://COPYING" "See COPYING in the distribution.")))) - -;;; Many packages fail to build with flex > 2.6.1, due to this bug in flex: -;;; -;;; We must not use a flex before 2.6.1, due to CVE-2016-6354. -;;; TODO Try using flex > 2.6.3. -(define-public flex-2.6.1 - (package - (inherit flex) - (version "2.6.1") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/westes/flex" - "/releases/download/v" version "/" - "flex-" version ".tar.xz")) - (sha256 - (base32 - "0gqhk4vkwy4gl9xbpgkljph8c0a5kpijz6wd0p5r9q202qn42yic")))))) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index cefc53d67d..a4505c7b6f 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1807,7 +1807,7 @@ implemented in ANSI C, and MPI for communications.") (build-system gnu-build-system) (inputs `(("zlib" ,zlib) - ("flex" ,flex-2.6.1) ; A bug in flex prevents building with flex-2.6.3. + ("flex" ,flex) ("bison" ,bison))) (arguments `(#:phases diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm index 9c82e01d67..a74cbcf2b4 100644 --- a/gnu/packages/wine.scm +++ b/gnu/packages/wine.scm @@ -65,8 +65,7 @@ (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("gettext" ,gettext-minimal) - ; A bug in flex prevents building with flex-2.6.3. - ("flex" ,flex-2.6.1) + ("flex" ,flex) ("bison" ,bison) ("perl" ,perl))) (inputs From 664ac384be1f813772735ed562fc7d4d705ad356 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 1 May 2017 00:05:31 -0400 Subject: [PATCH 0046/1227] gnu: netpbm: Update to 10.78.3. * gnu/packages/netpbm.scm (netpbm): Update to 10.78.3. [arguments]: Disable the tests 'ps-alt-roundtrip.test' and 'pbm-misc-converters.test'. Update the RGB-file path substitution. WIP: Disable the tests 'jpeg-roundtrip.test' and 'pbmtext.test'. --- gnu/packages/netpbm.scm | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/gnu/packages/netpbm.scm b/gnu/packages/netpbm.scm index cd0c3d950d..c7be4b13e0 100644 --- a/gnu/packages/netpbm.scm +++ b/gnu/packages/netpbm.scm @@ -36,7 +36,7 @@ (define-public netpbm (package (name "netpbm") - (version "10.61.01") + (version "10.78.3") (source (origin (method svn-fetch) ;; At the time of first packaging, the "super-stable" and @@ -48,10 +48,10 @@ ;; To determine the correct release: "svn log version.mk". (uri (svn-reference (url "http://svn.code.sf.net/p/netpbm/code/advanced") - (revision 1832))) + (revision 2965))) (sha256 (base32 - "1mj1pqq18yj0yb6l24zfjls7axhqmiv0pvcaabl5xvc4a0dm543j")) + "1k7as9qi1942wyjxpvbf02wg0h4braw44m3m3vvi8sm9y5z1m967")) (file-name (string-append name "-" version "-checkout")) (modules '((guix build utils))) (snippet @@ -124,8 +124,8 @@ (let ((rgb (string-append (assoc-ref inputs "xorg-rgb") "/share/X11/rgb.txt"))) - (substitute* "pm_config.in.h" - (("/usr/share/X11/rgb.txt") rgb)) + (substitute* "config.mk" + (("/usr/share/netpbm/rgb.txt") rgb)) ;; Our Ghostscript no longer provides the 'gs' command, only ;; 'gsc', so look for that instead. @@ -146,7 +146,15 @@ (("all-in-place.test") "") (("pnmpsnr.test") "") (("pnmremap1.test") "") - (("gif-roundtrip.test") "")) + (("gif-roundtrip.test") "") + + ;; These two tests started failing in netpbm-10.78.3. + (("jpeg-roundtrip.test") "") + (("pbmtext.test") "") + + ;; Skip tests that use nonfree programs that we don't build. + (("ps-alt-roundtrip.test") "" ) + (("pbm-misc-converters.test") "")) #t)) (replace 'install (lambda* (#:key outputs make-flags #:allow-other-keys) From 03bc86b8f46305d3c7c1dba26dddfd8d424c9693 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 16 May 2017 21:36:31 +0100 Subject: [PATCH 0047/1227] gnu: bzip2: Use 'modify-phases' syntax. * gnu/packages/compression.scm (bzip2)[arguments]: Use 'modify-phases' syntax. Signed-off-by: Marius Bakke --- gnu/packages/compression.scm | 132 ++++++++++++++++------------------- 1 file changed, 60 insertions(+), 72 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index eed6c6bc12..a043585301 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -207,84 +207,72 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in (home-page "https://www.gnu.org/software/gzip/"))) (define-public bzip2 - (let ((build-shared-lib - ;; Build a shared library. - '(lambda* (#:key inputs #:allow-other-keys) - (patch-makefile-SHELL "Makefile-libbz2_so") - (zero? (system* "make" "-f" "Makefile-libbz2_so")))) - (install-shared-lib - '(lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (libdir (string-append out "/lib"))) - (for-each (lambda (file) - (let ((base (basename file))) - (format #t "installing `~a' to `~a'~%" - base libdir) - (copy-file file - (string-append libdir "/" base)))) - (find-files "." "^libbz2\\.so"))))) - (set-cross-environment - '(lambda* (#:key target #:allow-other-keys) - (substitute* (find-files "." "Makefile") - (("CC=.*$") - (string-append "CC = " target "-gcc\n")) - (("AR=.*$") - (string-append "AR = " target "-ar\n")) - (("RANLIB=.*$") - (string-append "RANLIB = " target "-ranlib\n")) - (("^all:(.*)test" _ prerequisites) - ;; Remove 'all' -> 'test' dependency. - (string-append "all:" prerequisites "\n")))))) - (package - (name "bzip2") - (version "1.0.6") - (source (origin - (method url-fetch) - (uri (string-append "http://www.bzip.org/" version "/bzip2-" - version ".tar.gz")) - (sha256 - (base32 - "1kfrc7f0ja9fdn6j1y6yir6li818npy6217hvr3wzmnmzhs8z152")))) - (build-system gnu-build-system) - (arguments - `(#:modules ((guix build gnu-build-system) - (guix build utils) - (srfi srfi-1)) - #:phases - ,(if (%current-target-system) + (package + (name "bzip2") + (version "1.0.6") + (source (origin + (method url-fetch) + (uri (string-append "http://www.bzip.org/" version "/bzip2-" + version ".tar.gz")) + (sha256 + (base32 + "1kfrc7f0ja9fdn6j1y6yir6li818npy6217hvr3wzmnmzhs8z152")))) + (build-system gnu-build-system) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key target #:allow-other-keys) + (if ,(%current-target-system) + ;; Cross-compilation: use the cross tools. + (substitute* (find-files "." "Makefile") + (("CC=.*$") + (string-append "CC = " target "-gcc\n")) + (("AR=.*$") + (string-append "AR = " target "-ar\n")) + (("RANLIB=.*$") + (string-append "RANLIB = " target "-ranlib\n")) + (("^all:(.*)test" _ prerequisites) + ;; Remove 'all' -> 'test' dependency. + (string-append "all:" prerequisites "\n"))) + #t))) + (add-before 'build 'build-shared-lib + (lambda* (#:key inputs #:allow-other-keys) + (patch-makefile-SHELL "Makefile-libbz2_so") + (zero? (system* "make" "-f" "Makefile-libbz2_so")))) + (add-after 'install 'install-shared-lib + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (libdir (string-append out "/lib"))) + (for-each (lambda (file) + (let ((base (basename file))) + (format #t "installing `~a' to `~a'~%" + base libdir) + (copy-file file + (string-append libdir "/" base)))) + (find-files "." "^libbz2\\.so"))) + #t))) - ;; Cross-compilation: use the cross tools. - `(alist-cons-before - 'build 'build-shared-lib ,build-shared-lib - (alist-cons-after - 'install 'install-shared-lib ,install-shared-lib - (alist-replace 'configure ,set-cross-environment - %standard-phases))) + #:make-flags (list (string-append "PREFIX=" + (assoc-ref %outputs "out"))) - ;; Native compilation: build the shared library. - `(alist-cons-before - 'build 'build-shared-lib ,build-shared-lib - (alist-cons-after - 'install 'install-shared-lib ,install-shared-lib - (alist-delete 'configure %standard-phases)))) - - #:make-flags (list (string-append "PREFIX=" - (assoc-ref %outputs "out"))) - - ;; Don't attempt to run the tests when cross-compiling. - ,@(if (%current-target-system) - '(#:tests? #f) - '()))) - (synopsis "High-quality data compression program") - (description - "bzip2 is a freely available, patent free (see below), high-quality data + ;; Don't attempt to run the tests when cross-compiling. + ,@(if (%current-target-system) + '(#:tests? #f) + '()))) + (synopsis "High-quality data compression program") + (description + "bzip2 is a freely available, patent free (see below), high-quality data compressor. It typically compresses files to within 10% to 15% of the best available techniques (the PPM family of statistical compressors), whilst being around twice as fast at compression and six times faster at decompression.") - (license (license:non-copyleft "file://LICENSE" - "See LICENSE in the distribution.")) - (home-page "http://www.bzip.org/")))) + (license (license:non-copyleft "file://LICENSE" + "See LICENSE in the distribution.")) + (home-page "http://www.bzip.org/"))) (define-public lbzip2 (package From e7ee50f2d26355d7a2fee250cf19a943f0343853 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 16 May 2017 21:36:33 +0100 Subject: [PATCH 0048/1227] gnu: bzip2: Patch bzip2 utilities. * gnu/packages/compression.scm (bzip2)[arguments]: Add patch-script phase to remove absolute reference to /bin/rm. Signed-off-by: Marius Bakke --- gnu/packages/compression.scm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index a043585301..4908c9cccf 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -254,6 +254,12 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in (copy-file file (string-append libdir "/" base)))) (find-files "." "^libbz2\\.so"))) + #t)) + (add-after 'install-shared-lib 'patch-scripts + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (substitute* (string-append out "/bin/bzdiff") + (("/bin/rm") "rm"))) #t))) #:make-flags (list (string-append "PREFIX=" From 9b5fccbc48ab9acaa24d727a93d09f3e1f41de09 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 22 May 2017 20:31:29 +0200 Subject: [PATCH 0049/1227] gnu: libidn2: Update to 2.0.2. * gnu/packages/libidn.scm (libidn2): Update to 2.0.2. [source]: The tarball is now ".lz" compressed. [native-inputs]: Add LZIP. --- gnu/packages/libidn.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/libidn.scm b/gnu/packages/libidn.scm index b17dc4f2d6..fc91fe263e 100644 --- a/gnu/packages/libidn.scm +++ b/gnu/packages/libidn.scm @@ -20,6 +20,7 @@ (define-module (gnu packages libidn) #:use-module (gnu packages) + #:use-module (gnu packages compression) #:use-module (gnu packages libunistring) #:use-module (guix licenses) #:use-module (guix packages) @@ -53,14 +54,16 @@ Java libraries.") (define-public libidn2 (package (name "libidn2") - (version "2.0.1") + (version "2.0.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libidn/" name "-" version - ".tar.xz")) + ".tar.lz")) (sha256 (base32 - "0irz2wlzdllpxr2w7lglryj88fy2ww3ilv7ang5d0s30jddjbg45")))) + "0pqaj8d01aj4i110669fincqs10kgynyqcrmq2q7pss8v9dcd1jq")))) + (native-inputs + `(("lzip" ,lzip))) (inputs `(("libunistring" ,libunistring))) (build-system gnu-build-system) From 657fb6c947d94cf946f29cd24e88bd080c01ff0a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 22 May 2017 20:41:22 +0200 Subject: [PATCH 0050/1227] gnu: sqlite: Update to 3.19.0. * gnu/packages/databases.scm (sqlite): Update to 3.19.0. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 2ea29db52b..d02366e9b2 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -707,7 +707,7 @@ for example from a shell script.") (define-public sqlite (package (name "sqlite") - (version "3.18.0") + (version "3.19.0") (source (origin (method url-fetch) (uri (let ((numeric-version @@ -723,7 +723,7 @@ for example from a shell script.") numeric-version ".tar.gz"))) (sha256 (base32 - "0p5cx7nbjxk7glcm277ypi5w4gv144qazw79ql47svlpccj62mrp")))) + "1xdh6yf2bdml2mj9vqyq5whznyiikzq86cmbirimjricjmjyc5mm")))) (build-system gnu-build-system) (inputs `(("readline" ,readline))) (arguments From 03bcf7c31756a2e15a713dcb6be1e6cf54cddfc6 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 24 May 2017 04:27:10 +0200 Subject: [PATCH 0051/1227] gnu: diffutils: Update to 3.6. * gnu/packages/base.scm (diffutils): Update to 3.6. --- gnu/packages/base.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 972b51b964..5b13a0f1de 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -231,14 +231,14 @@ differences.") (define-public diffutils (package (name "diffutils") - (version "3.5") + (version "3.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/diffutils/diffutils-" version ".tar.xz")) (sha256 (base32 - "0csmqfz8ks23kdjsq0v2ll1acqiz8lva06dj19mwmymrsp69ilys")))) + "1mivg0fy3a6fcn535ln8nkgfj6vxh5hsxxs5h6692wxmsjyyh8fn")))) (build-system gnu-build-system) (synopsis "Comparing and merging files") (description From 3154e2025b3c3c8a08c90c83bb9cd1d86341df1e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 24 May 2017 20:08:03 +0200 Subject: [PATCH 0052/1227] gnu: mit-krb5: Update to 1.15.1. * gnu/packages/kerberos.scm (mit-krb5): Update to 1.15.1. --- gnu/packages/kerberos.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/kerberos.scm b/gnu/packages/kerberos.scm index 6be7c82bc0..9803c80d59 100644 --- a/gnu/packages/kerberos.scm +++ b/gnu/packages/kerberos.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2012, 2013 Nikita Karetnikov ;;; Copyright © 2012, 2017 Ludovic Courtès +;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,7 +43,7 @@ (define-public mit-krb5 (package (name "mit-krb5") - (version "1.14.4") + (version "1.15.1") (source (origin (method url-fetch) (uri (string-append "http://web.mit.edu/kerberos/dist/krb5/" @@ -50,7 +51,7 @@ "/krb5-" version ".tar.gz")) (sha256 (base32 - "158bgq9xcg5ljgzia1880ak7m9g6vf2r009rzdqif5n9h111m9h3")))) + "0igbi5d095c2hgpn2cixpc4q2ij8vgg2bx7yjfly5zfmvlqqhz23")))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) From 9269ce492576a9fbb5aa39548f03dab9207fb8e9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 24 May 2017 20:08:40 +0200 Subject: [PATCH 0053/1227] gnu: mit-krb5: Enable parallel build and tests. * gnu/packages/kerberos.scm (mit-krb5)[arguments]: Enable parallel building and parallel tests. --- gnu/packages/kerberos.scm | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/gnu/packages/kerberos.scm b/gnu/packages/kerberos.scm index 9803c80d59..e40ddb2bb2 100644 --- a/gnu/packages/kerberos.scm +++ b/gnu/packages/kerberos.scm @@ -57,14 +57,7 @@ `(("bison" ,bison) ("perl" ,perl))) (arguments - `(;; Work around "No rule to make target '../../include/gssapi/gssapi.h', - ;; needed by 'authgss_prot.so'." - #:parallel-build? #f - - ;; Likewise with tests. - #:parallel-tests? #f - - ;; XXX: On 32-bit systems, 'kdb5_util' hangs on an fcntl/F_SETLKW call + `(;; XXX: On 32-bit systems, 'kdb5_util' hangs on an fcntl/F_SETLKW call ;; while running the tests in 'src/tests'. #:tests? ,(string=? (%current-system) "x86_64-linux") From 596649313ccb8465895afd5e6bc104cd2588ad6f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 24 May 2017 18:03:01 -0400 Subject: [PATCH 0054/1227] gnu: libtasn1: Incorporate grafted changes. * gnu/packages/tls.scm (libtasn1)[replacement]: Remove field. [source]: Use "libtasn1-CVE-2017-6891.patch". (libtasn1/fixed): Remove variable. --- gnu/packages/tls.scm | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 2cbb5c0183..17b1527a83 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -52,13 +52,13 @@ (define-public libtasn1 (package (name "libtasn1") - (replacement libtasn1/fixed) (version "4.10") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libtasn1/libtasn1-" version ".tar.gz")) + (patches (search-patches "libtasn1-CVE-2017-6891.patch")) (sha256 (base32 "00jsix5hny0g768zv4hk78dib7w0qmk5fbizf4jj37r51nd4s6k8")))) @@ -73,15 +73,6 @@ networking, allowing for formal validation of data according to some specifications.") (license license:lgpl2.0+))) -(define libtasn1/fixed - (package - (inherit libtasn1) - (source - (origin - (inherit (package-source libtasn1)) - (patches - (search-patches "libtasn1-CVE-2017-6891.patch")))))) - (define-public asn1c (package (name "asn1c") From 696487d665a616dfdd09272a7bff0bea0e19375d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 25 May 2017 14:34:18 +0200 Subject: [PATCH 0055/1227] ld-wrapper: Read arguments from "response files". Fixes . Reported by Federico Beffa . * gnu/packages/ld-wrapper.in (expand-arguments): New procedure. (ld-wrapper): Use it. --- gnu/packages/ld-wrapper.in | 40 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ld-wrapper.in b/gnu/packages/ld-wrapper.in index ebfd8332c4..82bd2196cf 100644 --- a/gnu/packages/ld-wrapper.in +++ b/gnu/packages/ld-wrapper.in @@ -15,7 +15,7 @@ main="(@ (gnu build-support ld-wrapper) ld-wrapper)" exec @GUILE@ -c "(load-compiled \"@SELF@.go\") (apply $main (cdr (command-line)))" "$@" !# ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,6 +35,7 @@ exec @GUILE@ -c "(load-compiled \"@SELF@.go\") (apply $main (cdr (command-line)) (define-module (gnu build-support ld-wrapper) #:use-module (srfi srfi-1) #:use-module (ice-9 match) + #:autoload (ice-9 rdelim) (read-string) #:export (ld-wrapper)) ;;; Commentary: @@ -222,9 +223,44 @@ impure library ~s~%" '() library-files)) +(define (expand-arguments args) + ;; Expand ARGS such that "response file" arguments, such as "@args.txt", are + ;; expanded (info "(gcc) Overall Options"). + (define (response-file-arguments file) + (when %debug? + (format (current-error-port) + "ld-wrapper: attempting to read arguments from '~a'~%" file)) + + ;; FIXME: Options can contain whitespace if they are protected by single + ;; or double quotes; this is not implemented here. + (string-tokenize (call-with-input-file file read-string))) + + (define result + (fold-right (lambda (arg result) + (if (string-prefix? "@" arg) + (let ((file (string-drop arg 1))) + (append (catch 'system-error + (lambda () + (response-file-arguments file)) + (lambda args + ;; FILE doesn't exist or cannot be read so + ;; leave ARG as is. + (list arg))) + result)) + (cons arg result))) + '() + args)) + + ;; If there are "@" arguments in RESULT *and* we can expand them (they don't + ;; refer to nonexistent files), then recurse. + (if (equal? result args) + result + (expand-arguments result))) + (define (ld-wrapper . args) ;; Invoke the real `ld' with ARGS, augmented with `-rpath' switches. - (let* ((path (library-search-path args)) + (let* ((args (expand-arguments args)) + (path (library-search-path args)) (libs (library-files-linked args path)) (args (append args (rpath-arguments libs)))) (when %debug? From a07007876a5dfa0e536668884f78c62c24ca2d8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 25 May 2017 14:37:26 +0200 Subject: [PATCH 0056/1227] gnu: gnutls: Default to Guile 2.2. * gnu/packages/tls.scm (gnutls)[arguments]: Remove '--with-guile-site-dir' configure flag. [inputs]: Use GUILE-2.2 instead of GUILE-2.0. (gnutls/guile-2.2): Redefine using 'deprecated-package'. (gnutls/guile-2.0): New variable. --- gnu/packages/tls.scm | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 17b1527a83..9aa482aec0 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -156,9 +156,7 @@ living in the same process.") (build-system gnu-build-system) (arguments '(#:configure-flags - (list (string-append "--with-guile-site-dir=" - (assoc-ref %outputs "out") - "/share/guile/site/2.0") + (list ;; GnuTLS doesn't consult any environment variables to specify ;; the location of the system-wide trust store. Instead it has a ;; configure-time option. Unless specified, its configure script @@ -195,7 +193,7 @@ living in the same process.") ("pkg-config" ,pkg-config) ("which" ,which))) (inputs - `(("guile" ,guile-2.0))) + `(("guile" ,guile-2.2))) (propagated-inputs ;; These are all in the 'Requires.private' field of gnutls.pc. `(("libtasn1" ,libtasn1) @@ -214,16 +212,14 @@ required structures.") (ftp-directory . "/gcrypt/gnutls"))))) (define-public gnutls/guile-2.2 - ;; GnuTLS for Guile 2.2. This is supported by GnuTLS >= 3.5.5. + (deprecated-package "guile2.2-gnutls" gnutls)) + +(define-public gnutls/guile-2.0 + ;; GnuTLS for Guile 2.0. (package (inherit gnutls) - (name "guile2.2-gnutls") - (arguments - ;; Remove '--with-guile-site-dir=…/2.0'. - (substitute-keyword-arguments (package-arguments gnutls) - ((#:configure-flags flags) - `(cdr ,flags)))) - (inputs `(("guile" ,guile-2.2) + (name "guile2.0-gnutls") + (inputs `(("guile" ,guile-2.0) ,@(alist-delete "guile" (package-inputs gnutls)))))) (define-public openssl From b94d20c688c3590ecbea50976d1947a9377a8910 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 25 May 2017 19:53:50 +0200 Subject: [PATCH 0057/1227] gnu: sqlite: Update to 3.19.2. * gnu/packages/databases.scm (sqlite): Update to 3.19.2. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 6ff49efd6f..894785b3a9 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -721,7 +721,7 @@ for example from a shell script.") (define-public sqlite (package (name "sqlite") - (version "3.19.0") + (version "3.19.2") (source (origin (method url-fetch) (uri (let ((numeric-version @@ -737,7 +737,7 @@ for example from a shell script.") numeric-version ".tar.gz"))) (sha256 (base32 - "1xdh6yf2bdml2mj9vqyq5whznyiikzq86cmbirimjricjmjyc5mm")))) + "1z1gmiyx68g1yxc3avc9jnan53irnsq2rsyldwyxcfnc07xn2lya")))) (build-system gnu-build-system) (inputs `(("readline" ,readline))) (arguments From 811e10281fc11b514d5a1da2ba5a87e6eb19de5e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 25 May 2017 14:33:00 -0400 Subject: [PATCH 0058/1227] gnu: openssl: Update to 1.0.2l. * gnu/packages/tls.scm (openssl): Update to 1.0.2l. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 9aa482aec0..544ab53fd9 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -225,7 +225,7 @@ required structures.") (define-public openssl (package (name "openssl") - (version "1.0.2k") + (version "1.0.2l") (source (origin (method url-fetch) (uri (list (string-append "ftp://ftp.openssl.org/source/" @@ -235,7 +235,7 @@ required structures.") "/" name "-" version ".tar.gz"))) (sha256 (base32 - "1h6qi35w6hv6rd73p4cdgdzg732pdrfgpp37cgwz1v9a3z37ffbb")) + "037kvpisc6qh5dkppcwbm5bg2q800xh2hma3vghz8xcycmdij1yf")) (patches (search-patches "openssl-runpath.patch" "openssl-c-rehash-in.patch")))) (build-system gnu-build-system) From 8b14773ab6cafbd138e0c6cbfd2fc48818e2e0b5 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 13 May 2017 22:08:27 +0100 Subject: [PATCH 0059/1227] utils: Re-export 'delete'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/build/utils.scm: Reexport 'delete' binding. Co-authored-by: Ludovic Courtès --- guix/build/utils.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/guix/build/utils.scm b/guix/build/utils.scm index e8efb0653a..6d3c29d001 100644 --- a/guix/build/utils.scm +++ b/guix/build/utils.scm @@ -32,7 +32,12 @@ #:use-module (rnrs bytevectors) #:use-module (rnrs io ports) #:re-export (alist-cons - alist-delete) + alist-delete + + ;; Note: Re-export 'delete' to allow for proper syntax matching + ;; in 'modify-phases' forms. See + ;; . + delete) #:export (%store-directory store-file-name? strip-store-file-name From 52cabc6f87eb1ceebd953b423e458e3c48f847ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 26 May 2017 14:58:21 +0200 Subject: [PATCH 0060/1227] gnu: guix: Adjust to 'gnutls' package renames. This is a followup to a07007876a5dfa0e536668884f78c62c24ca2d8e. * gnu/packages/package-management.scm (guix)[propagated-inputs]: Use GNUTLS instead of GNUTLS/GUILE-2.2. (guile2.0-guix)[propagated-inputs]: Use GNUTLS/GUILE-2.0 instead of GNUTLS. --- gnu/packages/package-management.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 12e1f9e6c0..eb3a15e080 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -248,7 +248,7 @@ (base32 "1giy2aprjmn5fp9c4s9r125fljw4wv6ixy5739i5bffw4jgr0f9r")))))) (propagated-inputs - `(("gnutls" ,gnutls/guile-2.2) ;for 'guix download' & co. + `(("gnutls" ,gnutls) ("guile-json" ,guile-json) ("guile-ssh" ,guile-ssh))) @@ -274,7 +274,7 @@ the Nix package manager.") `(("guile" ,guile-2.0) ,@(alist-delete "guile" (package-inputs guix)))) (propagated-inputs - `(("gnutls" ,gnutls) + `(("gnutls" ,gnutls/guile-2.0) ("guile-json" ,guile2.0-json) ("guile-ssh" ,guile2.0-ssh))))) From 77e2538eda8a2721aef8336103c94fe31e12870c Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 27 May 2017 12:27:47 +0100 Subject: [PATCH 0061/1227] gnu: packages: flex: Add missing 'lzip' input. * gnu/packages/flex.scm (flex)[native-inputs]: Add lzip. Signed-off-by: Leo Famulari --- gnu/packages/flex.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/flex.scm b/gnu/packages/flex.scm index b68b01e949..70707d77d4 100644 --- a/gnu/packages/flex.scm +++ b/gnu/packages/flex.scm @@ -23,6 +23,7 @@ #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages) + #:use-module (gnu packages compression) #:use-module (gnu packages m4) #:use-module (gnu packages man) #:use-module (gnu packages bison) @@ -67,6 +68,7 @@ ;; m4 is not present in PATH when cross-building (native-inputs `(("help2man" ,help2man) + ("lzip" ,lzip) ("m4" ,m4))) (propagated-inputs `(("m4" ,m4))) (home-page "https://github.com/westes/flex") From 2dca204eb02835504df6846d9a543c729dc612e4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 28 May 2017 09:49:38 -0400 Subject: [PATCH 0062/1227] gnu: flex: Use the gzip-compressed tarball. This reverts commit 77e2538eda8a2721aef8336103c94fe31e12870c and fetches the gzip-compressed tarball. We do this so that flex-boot0 will not require lzip. * gnu/packages/flex.scm (flex)[source]: Fetch the '.tar.gz' tarball. [native-inputs]: Remove lzip. --- gnu/packages/flex.scm | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gnu/packages/flex.scm b/gnu/packages/flex.scm index 70707d77d4..fdda5f365d 100644 --- a/gnu/packages/flex.scm +++ b/gnu/packages/flex.scm @@ -23,7 +23,6 @@ #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages) - #:use-module (gnu packages compression) #:use-module (gnu packages m4) #:use-module (gnu packages man) #:use-module (gnu packages bison) @@ -39,10 +38,10 @@ (uri (string-append "https://github.com/westes/flex" "/releases/download/v" version "/" - "flex-" version ".tar.lz")) + "flex-" version ".tar.gz")) (sha256 (base32 - "19sc63m09zamy2qlw5x3sg6wb6hrw96gfl0h87vh6flvsqjg9m3g")))) + "15g9bv236nzi665p9ggqjlfn4dwck5835vf0bbw2cz7h5c1swyp8")))) (build-system gnu-build-system) (inputs (let ((bison-for-tests @@ -68,7 +67,6 @@ ;; m4 is not present in PATH when cross-building (native-inputs `(("help2man" ,help2man) - ("lzip" ,lzip) ("m4" ,m4))) (propagated-inputs `(("m4" ,m4))) (home-page "https://github.com/westes/flex") From f0c6dda640d9e7f11de987fb0b01aee09fd4ec6d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 28 May 2017 15:22:18 +0100 Subject: [PATCH 0063/1227] gnu: binutils: Update to 2.28. * gnu/packages/base.scm (binutils): Update to 2.28. [source]: Remove upstreamed patch. [arguments]<#:configure-flags>: Remove "--disable-werror" * gnu/packages/patches/binutils-mips-bash-bug.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/base.scm | 11 +++------- .../patches/binutils-mips-bash-bug.patch | 22 ------------------- 3 files changed, 3 insertions(+), 31 deletions(-) delete mode 100644 gnu/packages/patches/binutils-mips-bash-bug.patch diff --git a/gnu/local.mk b/gnu/local.mk index 6bb230687f..621a1c1806 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -516,7 +516,6 @@ dist_patch_DATA = \ %D%/packages/patches/bigloo-gc-shebangs.patch \ %D%/packages/patches/binutils-ld-new-dtags.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ - %D%/packages/patches/binutils-mips-bash-bug.patch \ %D%/packages/patches/byobu-writable-status.patch \ %D%/packages/patches/cairo-CVE-2016-9082.patch \ %D%/packages/patches/calibre-drop-unrar.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 5b13a0f1de..28e0325534 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -418,17 +418,16 @@ change. GNU make offers many powerful extensions over the standard utility.") (define-public binutils (package (name "binutils") - (version "2.27") + (version "2.28") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/binutils/binutils-" version ".tar.bz2")) (sha256 (base32 - "125clslv17xh1sab74343fg6v31msavpmaa1c1394zsqa773g5rn")) + "0wiasgns7i8km8nrxas265sh2dfpsw93b3qw195ipc90w4z475v2")) (patches (search-patches "binutils-ld-new-dtags.patch" - "binutils-loongson-workaround.patch" - "binutils-mips-bash-bug.patch")))) + "binutils-loongson-workaround.patch")))) (build-system gnu-build-system) ;; TODO: Add dependency on zlib + those for Gold. @@ -440,10 +439,6 @@ change. GNU make offers many powerful extensions over the standard utility.") ;; Don't search under /usr/lib & co. "--with-lib-path=/no-ld-lib-path" - ;; Glibc 2.17 has a "comparison of unsigned - ;; expression >= 0 is always true" in wchar.h. - "--disable-werror" - ;; Install BFD. It ends up in a hidden directory, ;; but it's here. "--enable-install-libbfd" diff --git a/gnu/packages/patches/binutils-mips-bash-bug.patch b/gnu/packages/patches/binutils-mips-bash-bug.patch deleted file mode 100644 index 08d3a79749..0000000000 --- a/gnu/packages/patches/binutils-mips-bash-bug.patch +++ /dev/null @@ -1,22 +0,0 @@ -Bash 4.2.0(1)-release, which we use during bootstrap, does not yield the -"x" case in: - - case x"$EMULATION_NAME" in x) ;; *) ;; esac - -when 'EMULATION_NAME' is undefined. Bash 4.3.30(1)-release doesn't have this -problem. Work around it. - -This Bash bug was fixed -in . - ---- a/ld/emulparams/elf32bmipn32-defs.sh -+++ b/ld/emulparams/elf32bmipn32-defs.sh -@@ -13,7 +13,7 @@ LITTLE_OUTPUT_FORMAT="elf32-littlemips" - TEMPLATE_NAME=elf32 - EXTRA_EM_FILE=mipself - --case x"$EMULATION_NAME" in -+case "x$EMULATION_NAME" in - xelf32*n32*) ELFSIZE=32 ;; - xelf64*) ELFSIZE=64 ;; - x) ;; From 6a09628cb1147481131e582c1711edeb0db81944 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 28 May 2017 15:30:00 +0100 Subject: [PATCH 0064/1227] gnu: libtasn1: Update to 4.11. * gnu/packages/tls.scm (libtasn1): Update to 4.11. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 1cd6a99dc0..39cfd10f57 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -52,7 +52,7 @@ (define-public libtasn1 (package (name "libtasn1") - (version "4.10") + (version "4.11") (source (origin (method url-fetch) @@ -61,7 +61,7 @@ (patches (search-patches "libtasn1-CVE-2017-6891.patch")) (sha256 (base32 - "00jsix5hny0g768zv4hk78dib7w0qmk5fbizf4jj37r51nd4s6k8")))) + "0h929bdq6w699y1mdkdajp5a6da8whgg3ba5p4j8x1wy36rlcjll")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) (home-page "https://www.gnu.org/software/libtasn1/") From ccd7daae4cc83fd8a012261641e0127c7330e49b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 28 May 2017 15:34:03 +0100 Subject: [PATCH 0065/1227] gnu: Remove workaround for . * gnu/packages/base.scm (coreutils-8.27): Remove variable. * gnu/system.scm (%base-packages): Change back to COREUTILS. --- gnu/packages/base.scm | 23 ----------------------- gnu/system.scm | 2 +- 2 files changed, 1 insertion(+), 24 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 28e0325534..0ad6624dd5 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -346,29 +346,6 @@ functionality beyond that which is outlined in the POSIX standard.") (license gpl3+) (home-page "https://www.gnu.org/software/coreutils/"))) -;; We add version 8.27 here for use in (gnu system) due to a time -;; zone bug in `date' versions 8.25 - 8.26. -;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23035 -;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26238 -(define-public coreutils-8.27 - (package - (inherit coreutils) - (version "8.27") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/coreutils/coreutils-" - version ".tar.xz")) - (sha256 - (base32 - "0sv547572iq8ayy8klir4hnngnx92a9nsazmf1wgzfc7xr4x74c8")))) - (arguments - (if (string-prefix? "arm" (or (%current-target-system) - (%current-system))) - (substitute-keyword-arguments (package-arguments coreutils) - ((#:phases phases) - `(alist-delete 'patch-cut-test ,phases))) - (package-arguments coreutils))))) - (define-public coreutils-minimal ;; Coreutils without its optional dependencies. (package diff --git a/gnu/system.scm b/gnu/system.scm index 0076f2fcb1..8e44ee85b3 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -502,7 +502,7 @@ explicitly appear in OS." ;; The packages below are also in %FINAL-INPUTS, so take them from ;; there to avoid duplication. (map canonical-package - (list guile-2.2 bash coreutils-8.27 findutils grep sed + (list guile-2.2 bash coreutils findutils grep sed diffutils patch gawk tar gzip bzip2 xz lzip)))) (define %default-issue From 4953c33316409945f30c4a3c33aa106ec3d84afd Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 28 May 2017 15:30:00 +0100 Subject: [PATCH 0066/1227] gnu: libtasn1: Remove obsolete patch. This is a followup to 6a09628cb1147481131e582c1711edeb0db81944. (picked from the wrong branch, sorry!) * gnu/packages/tls.scm (libtasn1)[source]: Remove upstreamed patch. * gnu/packages/patches/libtasn1-CVE-2017-6891.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../patches/libtasn1-CVE-2017-6891.patch | 51 ------------------- gnu/packages/tls.scm | 1 - 3 files changed, 53 deletions(-) delete mode 100644 gnu/packages/patches/libtasn1-CVE-2017-6891.patch diff --git a/gnu/local.mk b/gnu/local.mk index 621a1c1806..3d7ae598e1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -742,7 +742,6 @@ dist_patch_DATA = \ %D%/packages/patches/libsndfile-CVE-2017-8362.patch \ %D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \ - %D%/packages/patches/libtasn1-CVE-2017-6891.patch \ %D%/packages/patches/libtheora-config-guess.patch \ %D%/packages/patches/libtiff-CVE-2016-10092.patch \ %D%/packages/patches/libtiff-CVE-2016-10093.patch \ diff --git a/gnu/packages/patches/libtasn1-CVE-2017-6891.patch b/gnu/packages/patches/libtasn1-CVE-2017-6891.patch deleted file mode 100644 index 1f847ed025..0000000000 --- a/gnu/packages/patches/libtasn1-CVE-2017-6891.patch +++ /dev/null @@ -1,51 +0,0 @@ -Fix CVE-2017-6891: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6891 - -Patch copied from upstream source repository: - -https://git.savannah.gnu.org/cgit/libtasn1.git/commit/?id=5520704d075802df25ce4ffccc010ba1641bd484 - -From 5520704d075802df25ce4ffccc010ba1641bd484 Mon Sep 17 00:00:00 2001 -From: Nikos Mavrogiannopoulos -Date: Thu, 18 May 2017 18:03:34 +0200 -Subject: [PATCH] asn1_find_node: added safety check on asn1_find_node() - -This prevents a stack overflow in asn1_find_node() which -is triggered by too long variable names in the definitions -files. That means that applications have to deliberately -pass a too long 'name' constant to asn1_write_value() -and friends. Reported by Jakub Jirasek. - -Signed-off-by: Nikos Mavrogiannopoulos ---- - lib/parser_aux.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/lib/parser_aux.c b/lib/parser_aux.c -index b4a7370..976ab38 100644 ---- a/lib/parser_aux.c -+++ b/lib/parser_aux.c -@@ -120,6 +120,9 @@ asn1_find_node (asn1_node pointer, const char *name) - if (n_end) - { - nsize = n_end - n_start; -+ if (nsize >= sizeof(n)) -+ return NULL; -+ - memcpy (n, n_start, nsize); - n[nsize] = 0; - n_start = n_end; -@@ -158,6 +161,9 @@ asn1_find_node (asn1_node pointer, const char *name) - if (n_end) - { - nsize = n_end - n_start; -+ if (nsize >= sizeof(n)) -+ return NULL; -+ - memcpy (n, n_start, nsize); - n[nsize] = 0; - n_start = n_end; --- -2.13.0 - diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 39cfd10f57..6a0b0637a2 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -58,7 +58,6 @@ (method url-fetch) (uri (string-append "mirror://gnu/libtasn1/libtasn1-" version ".tar.gz")) - (patches (search-patches "libtasn1-CVE-2017-6891.patch")) (sha256 (base32 "0h929bdq6w699y1mdkdajp5a6da8whgg3ba5p4j8x1wy36rlcjll")))) From ff647c3d382dff13f6f43f817520053178671549 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 29 May 2017 06:14:11 +0200 Subject: [PATCH 0067/1227] gnu: glibc: Move i686 patch to source field. This is a rewrite of changes introduced by commits b2fd8f63679aa4f244c36fdca62f23c00b8eded9, c2e4f14ac8cd3e1ce7f46a192ad0c9acc084b210, 441e99d433583fdf76910c3f9323f78a1d1bbaf3 and d03b34cf190b5790ee1884ae551634f5f736f4f1. * gnu/packages/base.scm (glibc/linux)[source]: Add i686 patch. [arguments]: Remove conditional patch application from build phase. [native-inputs]: Remove patch. (glibc/hurd)[arguments]: Inherit pre-configure build phase from glibc/linux. * gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[native-inputs]: Remove patch. --- gnu/packages/base.scm | 91 ++--------------------------------- gnu/packages/commencement.scm | 9 +--- 2 files changed, 4 insertions(+), 96 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 0ad6624dd5..b9364f81f5 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -531,7 +531,8 @@ store.") (modules '((guix build utils))) (patches (search-patches "glibc-ldd-x86_64.patch" "glibc-versioned-locpath.patch" - "glibc-o-largefile.patch")))) + "glibc-o-largefile.patch" + "glibc-memchr-overflow-i686.patch")))) (build-system gnu-build-system) ;; Glibc's refers to , for instance, so glibc @@ -618,19 +619,6 @@ store.") ;; 4.7.1. ((" -lgcc_s") "")) - ;; Apply patch only on i686. - ;; TODO: Move the patch to 'patches' in the next update cycle. - ,@(if (string-prefix? "i686" (or (%current-target-system) - (%current-system))) - `((unless (zero? (system* "patch" "-p1" "--force" - "--input" - (or (assoc-ref native-inputs - "glibc-memchr-overflow-i686.patch") - (assoc-ref inputs - "glibc-memchr-overflow-i686.patch")))) - (error "patch failed for glibc-memchr-overflow-i686.patch"))) - '()) - ;; Have `system' use that Bash. (substitute* "sysdeps/posix/system.c" (("#define[[:blank:]]+SHELL_PATH.*$") @@ -674,15 +662,7 @@ store.") ;; install the message catalogs, with 'msgfmt'. (native-inputs `(("texinfo" ,texinfo) ("perl" ,perl) - ("gettext" ,gettext-minimal) - - ;; Apply this patch only on i686 to avoid a full rebuild. - ;; TODO: Move to 'patches' in the next update cycle. - ,@(if (string-prefix? "i686" (or (%current-target-system) - (%current-system))) - `(("glibc-memchr-overflow-i686.patch" - ,(search-patch "glibc-memchr-overflow-i686.patch"))) - '()))) + ("gettext" ,gettext-minimal))) (native-search-paths ;; Search path for packages that provide locale data. This is useful @@ -731,71 +711,6 @@ with the Linux kernel.") ;; Add libmachuser.so and libhurduser.so to libc.so's search path. ;; See . `(modify-phases ,original-phases - ;; TODO: This is almost an exact copy of the phase of the same name - ;; in glibc/linux. The only difference is that the i686 patch is - ;; not applied here. In the next update cycle the patch moves to - ;; the patches field and this overwritten phase won't be needed any - ;; more. - (replace 'pre-configure - (lambda* (#:key inputs native-inputs outputs - #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - ;; FIXME: Normally we would look it up only in INPUTS - ;; but cross-base uses it as a native input. - (bash (or (assoc-ref inputs "static-bash") - (assoc-ref native-inputs "static-bash")))) - ;; Install the rpc data base file under `$out/etc/rpc'. - ;; FIXME: Use installFlags = [ "sysconfdir=$(out)/etc" ]; - (substitute* "sunrpc/Makefile" - (("^\\$\\(inst_sysconfdir\\)/rpc(.*)$" _ suffix) - (string-append out "/etc/rpc" suffix "\n")) - (("^install-others =.*$") - (string-append "install-others = " out "/etc/rpc\n"))) - - (substitute* "Makeconfig" - ;; According to - ;; , - ;; linking against libgcc_s is not needed with GCC - ;; 4.7.1. - ((" -lgcc_s") "")) - - ;; Have `system' use that Bash. - (substitute* "sysdeps/posix/system.c" - (("#define[[:blank:]]+SHELL_PATH.*$") - (format #f "#define SHELL_PATH \"~a/bin/bash\"\n" - bash))) - - ;; Same for `popen'. - (substitute* "libio/iopopen.c" - (("/bin/sh") - (string-append bash "/bin/sh"))) - - ;; Same for the shell used by the 'exec' functions for - ;; scripts that lack a shebang. - (substitute* (find-files "." "^paths\\.h$") - (("#define[[:blank:]]+_PATH_BSHELL[[:blank:]].*$") - (string-append "#define _PATH_BSHELL \"" - bash "/bin/sh\"\n"))) - - ;; Nscd uses __DATE__ and __TIME__ to create a string to - ;; make sure the client and server come from the same - ;; libc. Use something deterministic instead. - (substitute* "nscd/nscd_stat.c" - (("static const char compilation\\[21\\] =.*$") - (string-append - "static const char compilation[21] = \"" - (string-take (basename out) 20) "\";\n"))) - - ;; Make sure we don't retain a reference to the - ;; bootstrap Perl. - (substitute* "malloc/mtrace.pl" - (("^#!.*") - ;; The shebang can be omitted, because there's the - ;; "bilingual" eval/exec magic at the top of the file. - "") - (("exec @PERL@") - "exec perl"))))) (add-after 'install 'augment-libc.so (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out"))) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 93fec0c010..4f39a3fc66 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -510,14 +510,7 @@ the bootstrap environment." (propagated-inputs `(("kernel-headers" ,(kernel-headers-boot0)))) (native-inputs `(("texinfo" ,texinfo-boot0) - ("perl" ,perl-boot0) - ;; Apply this patch only on i686 to avoid a full rebuild. - ;; TODO: Remove in the next update cycle. - ,@(if (string-prefix? "i686" (or (%current-target-system) - (%current-system))) - `(("glibc-memchr-overflow-i686.patch" - ,(search-patch "glibc-memchr-overflow-i686.patch"))) - '()))) + ("perl" ,perl-boot0))) (inputs `(;; The boot inputs. That includes the bootstrap libc. We don't want ;; it in $CPATH, hence the 'pre-configure' phase above. From 8a9b08b503c209c020f7e7dab16b8818208003f6 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 28 May 2017 09:39:05 +0100 Subject: [PATCH 0068/1227] gnu: openssl: Delete ELF files from tarball. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Otherwise building openssl fails: substitute can't decode binary ELF file: ice-9/boot-9.scm:760:25: In procedure dispatch-exception: ice-9/boot-9.scm:760:25: Throw to key `decoding-error' with args `("peek-char" "input decoding error" 84 #)'. * gnu/packages/tls.scm (openssl)[source]: Add 'snippet'. Signed-off-by: Ludovic Courtès --- gnu/packages/tls.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 6a0b0637a2..349e951188 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -235,6 +235,13 @@ required structures.") (sha256 (base32 "037kvpisc6qh5dkppcwbm5bg2q800xh2hma3vghz8xcycmdij1yf")) + (snippet + '(begin + ;; Remove ELF files. 'substitute*' can't read them. + (delete-file "test/ssltest_old") + (delete-file "test/v3ext") + (delete-file "test/x509aux") + #t)) (patches (search-patches "openssl-runpath.patch" "openssl-c-rehash-in.patch")))) (build-system gnu-build-system) From d2ac5e297578dea1c872f77a26ef4d481d5dc7bd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 25 May 2017 22:59:00 +0200 Subject: [PATCH 0069/1227] build-system/cmake: Add support for cross compilation. Fixes . * guix/build-system/gnu.scm: Export standard-cross-packages. * guix/build-system/cmake.scm (cmake-cross-build): New procedure. (lower): Add support for cross-builds. * guix/build/cmake-build-system.scm (configure): Handle "target" argument. --- guix/build-system/cmake.scm | 156 +++++++++++++++++++++++++++--- guix/build-system/gnu.scm | 1 + guix/build/cmake-build-system.scm | 11 ++- 3 files changed, 151 insertions(+), 17 deletions(-) diff --git a/guix/build-system/cmake.scm b/guix/build-system/cmake.scm index 25ac262d5d..ee116c5a4c 100644 --- a/guix/build-system/cmake.scm +++ b/guix/build-system/cmake.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès ;;; Copyright © 2013 Cyril Roelandt +;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -56,24 +57,38 @@ #:rest arguments) "Return a bag for NAME." (define private-keywords - '(#:source #:target #:cmake #:inputs #:native-inputs)) + `(#:source #:cmake #:inputs #:native-inputs #:outputs + ,@(if target '() '(#:target)))) - (and (not target) ;XXX: no cross-compilation - (bag - (name name) - (system system) - (host-inputs `(,@(if source - `(("source" ,source)) - '()) - ,@inputs + (bag + (name name) + (system system) + (target target) + (build-inputs `(,@(if source + `(("source" ,source)) + '()) + ,@`(("cmake" ,cmake)) + ,@native-inputs + ,@(if target + ;; Use the standard cross inputs of + ;; 'gnu-build-system'. + (standard-cross-packages target 'host) + '()) + ;; Keep the standard inputs of 'gnu-build-system'. + ,@(standard-packages))) + (host-inputs inputs) - ;; Keep the standard inputs of 'gnu-build-system'. - ,@(standard-packages))) - (build-inputs `(("cmake" ,cmake) - ,@native-inputs)) - (outputs outputs) - (build cmake-build) - (arguments (strip-keyword-arguments private-keywords arguments))))) + ;; The cross-libc is really a target package, but for bootstrapping + ;; reasons, we can't put it in 'host-inputs'. Namely, 'cross-gcc' is a + ;; native package, so it would end up using a "native" variant of + ;; 'cross-libc' (built with 'gnu-build'), whereas all the other packages + ;; would use a target variant (built with 'gnu-cross-build'.) + (target-inputs (if target + (standard-cross-packages target 'target) + '())) + (outputs outputs) + (build (if target cmake-cross-build cmake-build)) + (arguments (strip-keyword-arguments private-keywords arguments)))) (define* (cmake-build store name inputs #:key (guile #f) @@ -145,6 +160,115 @@ provides a 'CMakeLists.txt' file as its build system." #:outputs outputs #:guile-for-build guile-for-build)) + +;;; +;;; Cross-compilation. +;;; + +(define* (cmake-cross-build store name + #:key + target native-drvs target-drvs + (guile #f) + (outputs '("out")) + (configure-flags ''()) + (search-paths '()) + (native-search-paths '()) + (make-flags ''()) + (out-of-source? #t) + (build-type "RelWithDebInfo") + (tests? #f) ; nothing can be done + (test-target "test") + (parallel-build? #t) (parallel-tests? #f) + (validate-runpath? #t) + (patch-shebangs? #t) + (strip-binaries? #t) + (strip-flags ''("--strip-debug" + "--enable-deterministic-archives")) + (strip-directories ''("lib" "lib64" "libexec" + "bin" "sbin")) + (phases '(@ (guix build cmake-build-system) + %standard-phases)) + (system (%current-system)) + (build (nix-system->gnu-triplet system)) + (imported-modules %cmake-build-system-modules) + (modules '((guix build cmake-build-system) + (guix build utils)))) + "Cross-build NAME using CMAKE for TARGET, where TARGET is a GNU triplet and +with INPUTS. This assumes that SOURCE provides a 'CMakeLists.txt' file as its +build system." + (define builder + `(begin + (use-modules ,@modules) + (let () + (define %build-host-inputs + ',(map (match-lambda + ((name (? derivation? drv) sub ...) + `(,name . ,(apply derivation->output-path drv sub))) + ((name path) + `(,name . ,path))) + native-drvs)) + + (define %build-target-inputs + ',(map (match-lambda + ((name (? derivation? drv) sub ...) + `(,name . ,(apply derivation->output-path drv sub))) + ((name (? package? pkg) sub ...) + (let ((drv (package-cross-derivation store pkg + target system))) + `(,name . ,(apply derivation->output-path drv sub)))) + ((name path) + `(,name . ,path))) + target-drvs)) + + (cmake-build #:source ,(match (assoc-ref native-drvs "source") + (((? derivation? source)) + (derivation->output-path source)) + ((source) + source) + (source + source)) + #:system ,system + #:build ,build + #:target ,target + #:outputs %outputs + #:inputs %build-target-inputs + #:native-inputs %build-host-inputs + #:search-paths ',(map search-path-specification->sexp + search-paths) + #:native-search-paths ',(map + search-path-specification->sexp + native-search-paths) + #:phases ,phases + #:configure-flags ,configure-flags + #:make-flags ,make-flags + #:out-of-source? ,out-of-source? + #:build-type ,build-type + #:tests? ,tests? + #:test-target ,test-target + #:parallel-build? ,parallel-build? + #:parallel-tests? ,parallel-tests? + #:validate-runpath? ,validate-runpath? + #:patch-shebangs? ,patch-shebangs? + #:strip-binaries? ,strip-binaries? + #:strip-flags ,strip-flags + #:strip-directories ,strip-directories)))) + + (define guile-for-build + (match guile + ((? package?) + (package-derivation store guile system #:graft? #f)) + (#f ; the default + (let* ((distro (resolve-interface '(gnu packages commencement))) + (guile (module-ref distro 'guile-final))) + (package-derivation store guile system #:graft? #f))))) + + (build-expression->derivation store name builder + #:system system + #:inputs (append native-drvs target-drvs) + #:outputs outputs + #:modules imported-modules + #:guile-for-build guile-for-build)) + (define cmake-build-system (build-system (name 'cmake) diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm index 7cf0cafc0f..047ace7e6b 100644 --- a/guix/build-system/gnu.scm +++ b/guix/build-system/gnu.scm @@ -30,6 +30,7 @@ gnu-build gnu-build-system standard-packages + standard-cross-packages package-with-explicit-inputs package-with-extra-configure-variable static-libgcc-package diff --git a/guix/build/cmake-build-system.scm b/guix/build/cmake-build-system.scm index 27f2b5c872..128ab28fe5 100644 --- a/guix/build/cmake-build-system.scm +++ b/guix/build/cmake-build-system.scm @@ -32,7 +32,7 @@ ;; Code: (define* (configure #:key outputs (configure-flags '()) (out-of-source? #t) - build-type + build-type target #:allow-other-keys) "Configure the given package." (let* ((out (assoc-ref outputs "out")) @@ -59,6 +59,15 @@ ,(string-append "-DCMAKE_INSTALL_RPATH=" out "/lib") ;; enable verbose output from builds "-DCMAKE_VERBOSE_MAKEFILE=ON" + + ;; Cross-build + ,@(if target + (list (string-append "-DCMAKE_C_COMPILER=" + target "-gcc") + (if (string-contains target "mingw") + "-DCMAKE_SYSTEM_NAME=Windows" + "-DCMAKE_SYSTEM_NAME=Linux")) + '()) ,@configure-flags))) (format #t "running 'cmake' with arguments ~s~%" args) (zero? (apply system* "cmake" args))))) From ee33f9a74264db10bd2e52b6c7bf9e49f0f349d5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 30 May 2017 20:30:35 +0200 Subject: [PATCH 0070/1227] gnu: libtasn1: Update to 4.12. * gnu/packages/tls.scm (libtasn1): Update to 4.12. --- gnu/packages/tls.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 349e951188..e9882bc6e6 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 Hartmut Goebel +;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -52,7 +53,7 @@ (define-public libtasn1 (package (name "libtasn1") - (version "4.11") + (version "4.12") (source (origin (method url-fetch) @@ -60,7 +61,7 @@ version ".tar.gz")) (sha256 (base32 - "0h929bdq6w699y1mdkdajp5a6da8whgg3ba5p4j8x1wy36rlcjll")))) + "0ls7jdq3y5fnrwg0pzhq11m21r8pshac2705bczz6mqjc8pdllv7")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) (home-page "https://www.gnu.org/software/libtasn1/") From a30188f561af3f84a1da687dffb4192e621929fc Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Fri, 5 May 2017 22:51:25 +0100 Subject: [PATCH 0071/1227] gnu: bash-minimal: Override keywords from 'bash'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 'bash-minimal' is a package derived from 'bash' package. 'bash-minimal' is supposed to override keywords from 'bash', but does not do it due to ordering issue. This patch moves #:modules last. Fixes the bootstrap failure reported by rennes and Manolis Ragkousis and tracked down by Andy Wingo in . * gnu/packages/bash.scm (bash-minimal)[arguments]: Move #:modules after (package-arguments bash). Signed-off-by: Ludovic Courtès --- gnu/packages/bash.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index ef22728a92..38aa1786ef 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -211,11 +211,11 @@ without modification.") (outputs (delete "include" (package-outputs bash))) (arguments - (let ((args `(#:modules ((guix build gnu-build-system) + (let ((args `(,@(package-arguments bash) + #:modules ((guix build gnu-build-system) (guix build utils) (srfi srfi-1) - (srfi srfi-26)) - ,@(package-arguments bash)))) + (srfi srfi-26))))) (substitute-keyword-arguments args ((#:configure-flags flags) `(list "--without-bash-malloc" From facac292808d11d5e6ea528cc7dbe93595f62c9b Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Tue, 25 Apr 2017 01:46:05 +0900 Subject: [PATCH 0072/1227] build-system/gnu: 'compress-documentation' phase handles double symlinks. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The compress-documentation phase was breaking recursive symbolic links used for manuals, which was made visible by the `find-files' call in the recently added `manual-database' profile hook. See . * guix/build/gnu-build-system.scm (compress-documentation) [points-to-symbolic-link?]: New procedure. [maybe-compress-directory]: Use `points-to-symbolic-link?' to filter out symbolic links that shouldn't be retargetted, and re-order the calls to `retarget-symlink' and `documentation-compressor'. Co-authored-by: Ludovic Courtès --- guix/build/gnu-build-system.scm | 36 +++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm index 1786e2e3c9..09f272edee 100644 --- a/guix/build/gnu-build-system.scm +++ b/guix/build/gnu-build-system.scm @@ -521,6 +521,25 @@ DOCUMENTATION-COMPRESSOR-FLAGS." ;; Return #t if FILE has hard links. (> (stat:nlink (lstat file)) 1)) + (define (points-to-symlink? symlink) + ;; Return #t if SYMLINK points to another symbolic link. + (let* ((target (readlink symlink)) + (target-absolute (if (string-prefix? "/" target) + target + (string-append (dirname symlink) + "/" target)))) + (catch 'system-error + (lambda () + (symbolic-link? target-absolute)) + (lambda args + (if (= ENOENT (system-error-errno args)) + (begin + (format (current-error-port) + "The symbolic link '~a' target is missing: '~a'\n" + symlink target-absolute) + #f) + (apply throw args)))))) + (define (maybe-compress-directory directory regexp) (or (not (directory-exists? directory)) (match (find-files directory regexp) @@ -538,12 +557,17 @@ DOCUMENTATION-COMPRESSOR-FLAGS." ;; Compress the non-symlink files, and adjust symlinks to refer ;; to the compressed files. Leave files that have hard links ;; unchanged ('gzip' would refuse to compress them anyway.) - (and (zero? (apply system* documentation-compressor - (append documentation-compressor-flags - (remove has-links? regular-files)))) - (every retarget-symlink - (filter (cut string-match regexp <>) - symlinks))))))))) + ;; Also, do not retarget symbolic links pointing to other + ;; symbolic links, since these are not compressed. + (and (every retarget-symlink + (filter (lambda (symlink) + (and (not (points-to-symlink? symlink)) + (string-match regexp symlink))) + symlinks)) + (zero? + (apply system* documentation-compressor + (append documentation-compressor-flags + (remove has-links? regular-files))))))))))) (define (maybe-compress output) (and (maybe-compress-directory (string-append output "/share/man") From 9491227dcbe52fff1b65ebb9b162d825152b7173 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Wed, 31 May 2017 21:08:26 +0100 Subject: [PATCH 0073/1227] gnu: python-file: Drop outdated patch. * gnu/local.mk: Remove python-file-double-encoding-bug.patch * gnu/packages/patches/python-file-double-encoding-bug.patch: Delete file. * gnu/packages/python.scm (python-file)[source]: Remove "python-file-double-encoding-bug.patch". Signed-off-by: Danny Milosavljevic --- gnu/local.mk | 1 - .../python-file-double-encoding-bug.patch | 50 ------------------- gnu/packages/python.scm | 4 -- 3 files changed, 55 deletions(-) delete mode 100644 gnu/packages/patches/python-file-double-encoding-bug.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3d7ae598e1..5090c04b9f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -927,7 +927,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-3.5-fix-tests.patch \ %D%/packages/patches/python-3.5-getentropy-on-old-kernels.patch \ %D%/packages/patches/python-dendropy-fix-tests.patch \ - %D%/packages/patches/python-file-double-encoding-bug.patch \ %D%/packages/patches/python-fix-tests.patch \ %D%/packages/patches/python-parse-too-many-fields.patch \ %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ diff --git a/gnu/packages/patches/python-file-double-encoding-bug.patch b/gnu/packages/patches/python-file-double-encoding-bug.patch deleted file mode 100644 index bbe825c36a..0000000000 --- a/gnu/packages/patches/python-file-double-encoding-bug.patch +++ /dev/null @@ -1,50 +0,0 @@ -Fix bug that breaks file's Python bindings when using Python 3. This patch -should not be applied when using Python 2. - -Copied from upstream source repository: - -https://github.com/file/file/commit/73e043d2a986234b187a00ed0c8d1f7bf83df372 - -From 73e043d2a986234b187a00ed0c8d1f7bf83df372 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas -Date: Tue, 28 Jun 2016 17:10:22 +0000 -Subject: [PATCH] PR/562: Reiner Herrmann: Avoid double encoding with python3 - ---- - python/magic.py | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/python/magic.py b/python/magic.py -index c48f7d5..b0f7a17 100644 ---- a/python/magic.py -+++ b/python/magic.py -@@ -134,7 +134,7 @@ class Magic(object): - if isinstance(r, str): - return r - else: -- return str(r).encode('utf-8') -+ return str(r, 'utf-8') - - def descriptor(self, fd): - """ -@@ -152,7 +152,7 @@ class Magic(object): - if isinstance(r, str): - return r - else: -- return str(r).encode('utf-8') -+ return str(r, 'utf-8') - - def error(self): - """ -@@ -163,7 +163,7 @@ class Magic(object): - if isinstance(e, str): - return e - else: -- return str(e).encode('utf-8') -+ return str(e, 'utf-8') - - def setflags(self, flags): - """ --- -2.10.1 - diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index b958199bdb..aaa69075ef 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7578,10 +7578,6 @@ Python's @code{ctypes} foreign function interface (FFI).") (package (inherit file) (name "python-file") - (source (origin - (inherit (package-source file)) - ;; This patch should not be applied to python2-file. - (patches (search-patches "python-file-double-encoding-bug.patch")))) (build-system python-build-system) (arguments '(#:tests? #f ;no tests From 3f65c190d23296e7e718c3deff413e8beb61d8ba Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 1 Jun 2017 19:04:10 +0200 Subject: [PATCH 0074/1227] utils: Add helper for invoking programs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/build/utils.scm (invoke): New variable. Co-authored-by: Ludovic Courtès --- guix/build/utils.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/guix/build/utils.scm b/guix/build/utils.scm index 6d3c29d001..7391307c87 100644 --- a/guix/build/utils.scm +++ b/guix/build/utils.scm @@ -84,6 +84,7 @@ fold-port-matches remove-store-references wrap-program + invoke locale-category->string)) @@ -579,6 +580,15 @@ Where every <*-phase-name> is an expression evaluating to a symbol, and ((_ phases (add-after old-phase-name new-phase-name new-phase)) (alist-cons-after old-phase-name new-phase-name new-phase phases)))) +(define (invoke program . args) + "Invoke PROGRAM with the given ARGS. Raise an error if the exit +code is non-zero; otherwise return #t." + (let ((status (apply system* program args))) + (unless (zero? status) + (error (format #f "program ~s exited with non-zero code" program) + status)) + #t)) + ;;; ;;; Text substitution (aka. sed). From 704243e0c6ec5ac86e2f45aaa469717e60b89124 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 1 Jun 2017 23:22:03 +0200 Subject: [PATCH 0075/1227] gnu: commencement: 'bash-final' inherits from 'bash-minimal'. * gnu/packages/commencement.scm (bash-final): Inherit from BASH-MINIMAL instead of BASH. --- gnu/packages/commencement.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 4f39a3fc66..f672ef45eb 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -800,13 +800,14 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" (define bash-final ;; Link with `-static-libgcc' to make sure we don't retain a reference - ;; to the bootstrap GCC. + ;; to the bootstrap GCC. Use "bash-minimal" to avoid an extra dependency + ;; on Readline and ncurses. (let ((bash (package - (inherit bash) + (inherit bash-minimal) (arguments `(#:disallowed-references ,(assoc-ref %boot3-inputs "coreutils&co") - ,@(package-arguments bash)))))) + ,@(package-arguments bash-minimal)))))) (package-with-bootstrap-guile (package-with-explicit-inputs (static-libgcc-package bash) %boot3-inputs From 4cc80c946b6915db450007c7c648082c27a368c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 2 Jun 2017 15:22:03 +0200 Subject: [PATCH 0076/1227] gnu: bash-minimal: Simplify 'arguments' field. * gnu/packages/bash.scm (bash-minimal)[arguments]: Remove 'let' and use 'substitute-keyword-arguments' directly. --- gnu/packages/bash.scm | 50 +++++++++++++++++++++---------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index 38aa1786ef..b1966e5675 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -211,33 +211,33 @@ without modification.") (outputs (delete "include" (package-outputs bash))) (arguments - (let ((args `(,@(package-arguments bash) - #:modules ((guix build gnu-build-system) - (guix build utils) - (srfi srfi-1) - (srfi srfi-26))))) - (substitute-keyword-arguments args - ((#:configure-flags flags) - `(list "--without-bash-malloc" - "--disable-readline" - "--disable-history" - "--disable-help-builtin" - "--disable-progcomp" - "--disable-net-redirections" - "--disable-nls" + (substitute-keyword-arguments (package-arguments bash) + ((#:modules _ '()) + '((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1) + (srfi srfi-26))) + ((#:configure-flags flags '()) + `(list "--without-bash-malloc" + "--disable-readline" + "--disable-history" + "--disable-help-builtin" + "--disable-progcomp" + "--disable-net-redirections" + "--disable-nls" - ;; Pretend 'dlopen' is missing so we don't build loadable - ;; modules and related code. - "ac_cv_func_dlopen=no" + ;; Pretend 'dlopen' is missing so we don't build loadable + ;; modules and related code. + "ac_cv_func_dlopen=no" - ,@(if (%current-target-system) - '("bash_cv_job_control_missing=no" - "bash_cv_getcwd_malloc=yes") - '()))) - ((#:phases phases) - `(modify-phases ,phases - ;; No loadable modules. - (delete 'move-development-files)))))))) + ,@(if (%current-target-system) + '("bash_cv_job_control_missing=no" + "bash_cv_getcwd_malloc=yes") + '()))) + ((#:phases phases) + `(modify-phases ,phases + ;; No loadable modules. + (delete 'move-development-files))))))) (define-public static-bash ;; Statically-linked Bash that contains nothing but the 'bash' binary and From baf549df14c6d4a63bfbd0054b865446a97e872a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 2 Jun 2017 15:34:36 +0200 Subject: [PATCH 0077/1227] gnu: guile: Depend on 'bash-minimal' rather than 'bash'. * gnu/packages/guile.scm (guile-2.0)[inputs]: Depend on BASH-MINIMAL instead of BASH. --- gnu/packages/guile.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index bb34063463..bcfbe65aec 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -153,7 +153,11 @@ without requiring the source code to be rewritten.") (inputs `(("libffi" ,libffi) ("readline" ,readline) ,@(libiconv-if-needed) - ,@(if (target-mingw?) '() `(("bash" ,bash))))) + + ;; We need Bash when cross-compiling because some of the scripts + ;; in bin/ refer to it. Use 'bash-minimal' because we don't need + ;; an interactive Bash with Readline and all. + ,@(if (target-mingw?) '() `(("bash" ,bash-minimal))))) (propagated-inputs `( ;; These ones aren't normally needed here, but since `libguile-2.0.la' ;; reads `-lltdl -lunistring', adding them here will add the needed From d6158fe70dfef6c03357d75d36dc7cac813dea45 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 29 May 2017 13:47:39 -0400 Subject: [PATCH 0078/1227] gnu: ghostscript: Switch to Artifex Ghostcript and update to 9.21. * gnu/packages/ghostscript.scm (ghostscript): Update to 9.21. [source]: Fetch the source from Artifex. [native-inputs]: Remove pkg-config. [inputs]: Add jbig2dec and use libjpeg instead of libjpeg-8. [arguments]: Add #:configure-flags. [replacement]: Remove field. (ghostcript/fixed): Remove variable. * gnu/packages/patches/ghostscript-CVE-2017-8291.patch, gnu/packages/patches/ghostscript-runpath.patch: Adjust to new upstream source. * gnu/packages/patches/ghostscript-CVE-2013-5653.patch, gnu/packages/patches/ghostscript-CVE-2015-3228.patch, gnu/packages/patches/ghostscript-CVE-2016-7976.patch, gnu/packages/patches/ghostscript-CVE-2016-7978.patch, gnu/packages/patches/ghostscript-CVE-2016-7979.patch, gnu/packages/patches/ghostscript-CVE-2016-8602.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. --- gnu/local.mk | 6 - gnu/packages/ghostscript.scm | 161 ++++++++------- .../patches/ghostscript-CVE-2013-5653.patch | 85 -------- .../patches/ghostscript-CVE-2015-3228.patch | 32 --- .../patches/ghostscript-CVE-2016-7976.patch | 185 ------------------ .../patches/ghostscript-CVE-2016-7978.patch | 25 --- .../patches/ghostscript-CVE-2016-7979.patch | 48 ----- .../patches/ghostscript-CVE-2016-8602.patch | 47 ----- .../patches/ghostscript-CVE-2017-8291.patch | 166 +++++++++++++--- .../patches/ghostscript-runpath.patch | 17 +- 10 files changed, 240 insertions(+), 532 deletions(-) delete mode 100644 gnu/packages/patches/ghostscript-CVE-2013-5653.patch delete mode 100644 gnu/packages/patches/ghostscript-CVE-2015-3228.patch delete mode 100644 gnu/packages/patches/ghostscript-CVE-2016-7976.patch delete mode 100644 gnu/packages/patches/ghostscript-CVE-2016-7978.patch delete mode 100644 gnu/packages/patches/ghostscript-CVE-2016-7979.patch delete mode 100644 gnu/packages/patches/ghostscript-CVE-2016-8602.patch diff --git a/gnu/local.mk b/gnu/local.mk index 5090c04b9f..95efe60ed6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -614,12 +614,6 @@ dist_patch_DATA = \ %D%/packages/patches/gettext-multi-core.patch \ %D%/packages/patches/gettext-gnulib-multi-core.patch \ %D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \ - %D%/packages/patches/ghostscript-CVE-2013-5653.patch \ - %D%/packages/patches/ghostscript-CVE-2015-3228.patch \ - %D%/packages/patches/ghostscript-CVE-2016-7976.patch \ - %D%/packages/patches/ghostscript-CVE-2016-7978.patch \ - %D%/packages/patches/ghostscript-CVE-2016-7979.patch \ - %D%/packages/patches/ghostscript-CVE-2016-8602.patch \ %D%/packages/patches/ghostscript-CVE-2017-8291.patch \ %D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 3a24580b77..ffe6e018bd 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -129,85 +129,98 @@ printing, and psresize, for adjusting page sizes.") (define-public ghostscript (package - (name "ghostscript") - (version "9.14.0") - ;; XXX Try removing the bundled copy of jbig2dec. - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/ghostscript/gnu-ghostscript-" - version ".tar.xz")) - (sha256 - (base32 - "0q4jj41p0qbr4mgcc9q78f5zs8cm1g57wgryhsm2yq4lfslm3ib1")) - (patches (search-patches "ghostscript-CVE-2013-5653.patch" - "ghostscript-CVE-2015-3228.patch" - "ghostscript-CVE-2016-7976.patch" - "ghostscript-CVE-2016-7978.patch" - "ghostscript-CVE-2016-7979.patch" - "ghostscript-CVE-2016-8602.patch" - "ghostscript-CVE-2017-8291.patch" - "ghostscript-runpath.patch")) - (modules '((guix build utils))) - (snippet - ;; Honor --docdir. - '(substitute* "Makefile.in" - (("^docdir=.*$") "docdir = @docdir@\n") - (("^exdir=.*$") "exdir = $(docdir)/examples\n"))))) - (build-system gnu-build-system) - (outputs '("out" "doc")) ;16 MiB of HTML/PS doc + examples - (inputs `(("freetype" ,freetype) - ("lcms" ,lcms) - ("libjpeg-8" ,libjpeg-8) - ("libpng" ,libpng) - ("libpaper" ,libpaper) - ("libtiff" ,libtiff) - ("zlib" ,zlib))) - (native-inputs - `(("perl" ,perl) - ("pkg-config" ,pkg-config) ; needed to find libtiff - ("python" ,python-wrapper) - ("tcl" ,tcl))) - (arguments - `(#:disallowed-references ("doc") - #:phases - (modify-phases %standard-phases - (add-after 'configure 'patch-config-files - (lambda _ - (substitute* "base/all-arch.mak" - (("/bin/sh") (which "sh"))) - (substitute* "base/unixhead.mak" - (("/bin/sh") (which "sh"))))) + (name "ghostscript") + (version "9.21") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/ArtifexSoftware/" + "ghostpdl-downloads/releases/download/gs" + (string-delete #\. version) + "/ghostscript-" version ".tar.xz")) + (sha256 + (base32 + "0lyhjcrkmd5fcmh8h56bs4xr9k4jasmikv5vsix1hd4ai0ad1q9b")) + (patches (search-patches "ghostscript-runpath.patch" + "ghostscript-CVE-2017-8291.patch")) + (modules '((guix build utils))) + (snippet + ;; Remove bundled libraries. The bundled OpenJPEG is a patched fork so + ;; we leave it, at least for now. + ;; TODO Try unbundling ijs, which is developed alongside Ghostscript. + '(begin + (for-each delete-file-recursively '("freetype" "jbig2dec" "jpeg" + "lcms2" "libpng" + "tiff" "zlib")))))) + (build-system gnu-build-system) + (outputs '("out" "doc")) ;19 MiB of HTML/PS doc + examples + (arguments + `(#:disallowed-references ("doc") + #:configure-flags + (list "--with-system-libtiff" + "LIBS=-lz" + (string-append "ZLIBDIR=" + (assoc-ref %build-inputs "zlib") "/include") + "--enable-dynamic") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-doc-dir + (lambda _ + ;; Honor --docdir. + (substitute* "Makefile.in" + (("^docdir=.*$") "docdir = @docdir@\n") + (("^exdir=.*$") "exdir = $(docdir)/examples\n")) + #t)) (add-after 'configure 'remove-doc-reference - (lambda _ - ;; Don't retain a reference to the 'doc' output in 'gs'. - ;; The only use of this definition is in the output of - ;; 'gs --help', so this change is fine. - (substitute* "base/gscdef.c" - (("GS_DOCDIR") - "\"~/.guix-profile/share/doc/ghostscript\"")))) - (replace 'build (lambda _ - ;; Build 'libgs.so', but don't build the statically-linked 'gs' - ;; binary (saves 18 MiB). - (zero? (system* "make" "so" "-j" - (number->string (parallel-job-count)))))) - (replace 'install - (lambda _ - (zero? (system* "make" "soinstall")))) - (add-after 'install 'create-gs-symlink - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; some programs depend on having a 'gs' binary available - (symlink "gsc" (string-append out "/bin/gs")))))))) - (synopsis "PostScript and PDF interpreter") - (description - "Ghostscript is an interpreter for the PostScript language and the PDF + ;; Don't retain a reference to the 'doc' output in 'gs'. + ;; The only use of this definition is in the output of + ;; 'gs --help', so this change is fine. + (substitute* "base/gscdef.c" + (("GS_DOCDIR") + "\"~/.guix-profile/share/doc/ghostscript\"")) + #t)) + (add-after 'configure 'patch-config-files + (lambda _ + (substitute* "base/unixhead.mak" + (("/bin/sh") (which "sh"))) + #t)) + (replace 'build + (lambda _ + ;; Build 'libgs.so', but don't build the statically-linked 'gs' + ;; binary (saves 22 MiB). + (zero? (system* "make" "so" "-j" + (number->string (parallel-job-count)))))) + (replace 'install + (lambda _ + (zero? (system* "make" "soinstall")))) + (add-after 'install 'create-gs-symlink + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; Some programs depend on having a 'gs' binary available. + (symlink "gsc" (string-append out "/bin/gs")) + #t)))))) + (native-inputs + `(("perl" ,perl) + ("python" ,python-wrapper) + ("tcl" ,tcl))) + (inputs + `(("freetype" ,freetype) + ("jbig2dec" ,jbig2dec) + ("lcms2" ,lcms) + ("libjpeg" ,libjpeg) + ("libpaper" ,libpaper) + ("libpng" ,libpng) + ("libtiff" ,libtiff) + ("zlib" ,zlib))) + (synopsis "PostScript and PDF interpreter") + (description + "Ghostscript is an interpreter for the PostScript language and the PDF file format. It also includes a C library that implements the graphics capabilities of the PostScript language. It supports a wide variety of output file formats and printers.") - (license license:agpl3+) - (home-page "https://www.gnu.org/software/ghostscript/") - (properties '((upstream-name . "gnu-ghostscript"))))) + (home-page "https://www.ghostscript.com/") + (license license:agpl3+))) (define-public ghostscript/x (package/inherit ghostscript diff --git a/gnu/packages/patches/ghostscript-CVE-2013-5653.patch b/gnu/packages/patches/ghostscript-CVE-2013-5653.patch deleted file mode 100644 index 622266b176..0000000000 --- a/gnu/packages/patches/ghostscript-CVE-2013-5653.patch +++ /dev/null @@ -1,85 +0,0 @@ -The following patch was adapted for GNU Ghostscript -by Mark H Weaver based on: - -http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=ab109aaeb3ddba59518b036fb288402a65cf7ce8 - -From ab109aaeb3ddba59518b036fb288402a65cf7ce8 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Sat, 5 Mar 2016 14:56:03 -0800 -Subject: [PATCH] Bug 694724: Have filenameforall and getenv honor SAFER - ---- - Resource/Init/gs_init.ps | 2 ++ - psi/zfile.c | 36 ++++++++++++++++++++---------------- - 2 files changed, 22 insertions(+), 16 deletions(-) - -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index fa33d88..99888ac 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -2018,6 +2018,7 @@ readonly def - - /.locksafe { - .locksafe_userparams -+ systemdict /getenv {pop //false} put - % setpagedevice has the side effect of clearing the page, but - % we will just document that. Using setpagedevice keeps the device - % properties and pagedevice .LockSafetyParams in agreement even -@@ -2036,6 +2037,7 @@ readonly def - %% - /.locksafeglobal { - .locksafe_userparams -+ systemdict /getenv {pop //false} put - % setpagedevice has the side effect of clearing the page, but - % we will just document that. Using setpagedevice keeps the device - % properties and pagedevice .LockSafetyParams in agreement even -diff --git a/psi/zfile.c b/psi/zfile.c -index 320ecd5..0b9f299 100644 ---- a/psi/zfile.c -+++ b/psi/zfile.c -@@ -371,22 +371,26 @@ file_continue(i_ctx_t *i_ctx_p) - - if (len < devlen) - return_error(e_rangecheck); /* not even room for device len */ -- memcpy((char *)pscratch->value.bytes, iodev->dname, devlen); -- code = iodev->procs.enumerate_next(pfen, (char *)pscratch->value.bytes + devlen, -- len - devlen); -- if (code == ~(uint) 0) { /* all done */ -- esp -= 5; /* pop proc, pfen, devlen, iodev , mark */ -- return o_pop_estack; -- } else if (code > len) /* overran string */ -- return_error(e_rangecheck); -- else { -- push(1); -- ref_assign(op, pscratch); -- r_set_size(op, code + devlen); -- push_op_estack(file_continue); /* come again */ -- *++esp = pscratch[2]; /* proc */ -- return o_push_estack; -- } -+ -+ do { -+ memcpy((char *)pscratch->value.bytes, iodev->dname, devlen); -+ code = iodev->procs.enumerate_next(pfen, (char *)pscratch->value.bytes + devlen, -+ len - devlen); -+ if (code == ~(uint) 0) { /* all done */ -+ esp -= 5; /* pop proc, pfen, devlen, iodev , mark */ -+ return o_pop_estack; -+ } else if (code > len) /* overran string */ -+ return_error(e_rangecheck); -+ else if (iodev != iodev_default(imemory) -+ || (check_file_permissions_reduced(i_ctx_p, (char *)pscratch->value.bytes, code + devlen, "PermitFileReading")) == 0) { -+ push(1); -+ ref_assign(op, pscratch); -+ r_set_size(op, code + devlen); -+ push_op_estack(file_continue); /* come again */ -+ *++esp = pscratch[2]; /* proc */ -+ return o_push_estack; -+ } -+ } while(1); - } - /* Cleanup procedure for enumerating files */ - static int --- -2.9.1 - diff --git a/gnu/packages/patches/ghostscript-CVE-2015-3228.patch b/gnu/packages/patches/ghostscript-CVE-2015-3228.patch deleted file mode 100644 index c19fdb1d43..0000000000 --- a/gnu/packages/patches/ghostscript-CVE-2015-3228.patch +++ /dev/null @@ -1,32 +0,0 @@ -The file names in the upstream patch below were modified to apply to GNU -ghostscript. - -From 0c0b0859ae1aba64861599f0e7f74f143f305932 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Tue, 7 Jul 2015 16:57:41 +0100 -Subject: [PATCH] Bug 696041: sanity check for memory allocation. - -In gs_heap_alloc_bytes(), add a sanity check to ensure we don't overflow the -variable holding the actual number of bytes we allocate. - -No cluster differences ---- - gs/base/gsmalloc.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/base/gsmalloc.c b/base/gsmalloc.c -index 624552d..cad79c2 100644 ---- a/base/gsmalloc.c -+++ b/base/gsmalloc.c -@@ -178,7 +178,7 @@ gs_heap_alloc_bytes(gs_memory_t * mem, uint size, client_name_t cname) - } else { - uint added = size + sizeof(gs_malloc_block_t); - -- if (mmem->limit - added < mmem->used) -+ if (added <= size || mmem->limit - added < mmem->used) - set_msg("exceeded limit"); - else if ((ptr = (byte *) Memento_label(malloc(added), cname)) == 0) - set_msg("failed"); --- -2.4.6 - diff --git a/gnu/packages/patches/ghostscript-CVE-2016-7976.patch b/gnu/packages/patches/ghostscript-CVE-2016-7976.patch deleted file mode 100644 index 0a09f89016..0000000000 --- a/gnu/packages/patches/ghostscript-CVE-2016-7976.patch +++ /dev/null @@ -1,185 +0,0 @@ -The following patch was adapted for GNU Ghostscript -by Mark H Weaver based on: - -http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=6d444c273da5499a4cd72f21cb6d4c9a5256807d - -From 6d444c273da5499a4cd72f21cb6d4c9a5256807d Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Wed, 5 Oct 2016 09:55:55 +0100 -Subject: [PATCH] Bug 697178: Add a file permissions callback - -For the rare occasions when the graphics library directly opens a file -(currently for reading), this allows us to apply any restrictions on -file access normally applied in the interpteter. ---- - base/gsicc_manage.c | 10 ++++++---- - base/gslibctx.c | 12 +++++++++++- - base/gslibctx.h | 7 +++++++ - psi/imain.c | 2 ++ - psi/int.mak | 2 +- - psi/zfile.c | 19 +++++++++++++++++++ - psi/zfile.h | 7 +++++++ - 7 files changed, 53 insertions(+), 6 deletions(-) - -diff --git a/base/gsicc_manage.c b/base/gsicc_manage.c -index 931c2a6..e9c09c3 100644 ---- a/base/gsicc_manage.c -+++ b/base/gsicc_manage.c -@@ -1028,10 +1028,12 @@ gsicc_open_search(const char* pname, int namelen, gs_memory_t *mem_gc, - } - - /* First just try it like it is */ -- str = sfopen(pname, "rb", mem_gc); -- if (str != NULL) { -- *strp = str; -- return 0; -+ if (gs_check_file_permission(mem_gc, pname, namelen, "r") >= 0) { -+ str = sfopen(pname, "rb", mem_gc); -+ if (str != NULL) { -+ *strp = str; -+ return 0; -+ } - } - - /* If that fails, try %rom% */ /* FIXME: Not sure this is needed or correct */ -diff --git a/base/gslibctx.c b/base/gslibctx.c -index eaa0458..37ce1ca 100644 ---- a/base/gslibctx.c -+++ b/base/gslibctx.c -@@ -121,7 +121,7 @@ int gs_lib_ctx_init( gs_memory_t *mem ) - mem->gs_lib_ctx = NULL; - return -1; - } -- -+ pio->client_check_file_permission = NULL; - gp_get_realtime(pio->real_time_0); - - return 0; -@@ -262,3 +262,13 @@ void errflush(const gs_memory_t *mem) - fflush(mem->gs_lib_ctx->fstderr); - /* else nothing to flush */ - } -+ -+int -+gs_check_file_permission (gs_memory_t *mem, const char *fname, const int len, const char *permission) -+{ -+ int code = 0; -+ if (mem->gs_lib_ctx->client_check_file_permission != NULL) { -+ code = mem->gs_lib_ctx->client_check_file_permission(mem, fname, len, permission); -+ } -+ return code; -+} -diff --git a/base/gslibctx.h b/base/gslibctx.h -index 7a4e110..020e2d9 100644 ---- a/base/gslibctx.h -+++ b/base/gslibctx.h -@@ -32,6 +32,9 @@ typedef struct gs_fapi_server_s gs_fapi_server; - # define gs_font_dir_DEFINED - typedef struct gs_font_dir_s gs_font_dir; - #endif -+ -+typedef int (*client_check_file_permission_t) (gs_memory_t *mem, const char *fname, const int len, const char *permission); -+ - typedef struct gs_lib_ctx_s - { - gs_memory_t *memory; /* mem->gs_lib_ctx->memory == mem */ -@@ -59,6 +62,7 @@ typedef struct gs_lib_ctx_s - bool dict_auto_expand; /* ps dictionary: false level 1 true level 2 or 3 */ - /* A table of local copies of the IODevices */ - struct gx_io_device_s **io_device_table; -+ client_check_file_permission_t client_check_file_permission; - /* Define the default value of AccurateScreens that affects setscreen - and setcolorscreen. */ - bool screen_accurate_screens; -@@ -108,6 +112,9 @@ int - void gs_lib_ctx_set_icc_directory(const gs_memory_t *mem_gc, const char* pname, - int dir_namelen); - -+int -+gs_check_file_permission (gs_memory_t *mem, const char *fname, const int len, const char *permission); -+ - #define IS_LIBCTX_STDOUT(mem, f) (f == mem->gs_lib_ctx->fstdout) - #define IS_LIBCTX_STDERR(mem, f) (f == mem->gs_lib_ctx->fstderr) - -diff --git a/psi/imain.c b/psi/imain.c -index 9a9bb5d..6874128 100644 ---- a/psi/imain.c -+++ b/psi/imain.c -@@ -57,6 +57,7 @@ - #include "ivmspace.h" - #include "idisp.h" /* for setting display device callback */ - #include "iplugin.h" -+#include "zfile.h" - - #ifdef PACIFY_VALGRIND - #include "valgrind.h" -@@ -215,6 +216,7 @@ gs_main_init1(gs_main_instance * minst) - "the_gs_name_table"); - if (code < 0) - return code; -+ mem->gs_lib_ctx->client_check_file_permission = z_check_file_permissions; - } - code = obj_init(&minst->i_ctx_p, &idmem); /* requires name_init */ - if (code < 0) -diff --git a/psi/int.mak b/psi/int.mak -index 4654afc..bb30d51 100644 ---- a/psi/int.mak -+++ b/psi/int.mak -@@ -1868,7 +1868,7 @@ $(PSOBJ)imain.$(OBJ) : $(PSSRC)imain.c $(GH) $(memory__h) $(string__h)\ - $(ialloc_h) $(iconf_h) $(idebug_h) $(idict_h) $(idisp_h) $(iinit_h)\ - $(iname_h) $(interp_h) $(iplugin_h) $(isave_h) $(iscan_h) $(ivmspace_h)\ - $(iinit_h) $(main_h) $(oper_h) $(ostack_h)\ -- $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h) -+ $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h) $(zfile_h) - $(PSCC) $(PSO_)imain.$(OBJ) $(C_) $(PSSRC)imain.c - - #****** $(CCINT) interp.c -diff --git a/psi/zfile.c b/psi/zfile.c -index 2c6c958..2f27f82 100644 ---- a/psi/zfile.c -+++ b/psi/zfile.c -@@ -197,6 +197,25 @@ check_file_permissions(i_ctx_t *i_ctx_p, const char *fname, int len, - return check_file_permissions_reduced(i_ctx_p, fname_reduced, rlen, permitgroup); - } - -+/* z_check_file_permissions: see zfile.h for explanation -+ */ -+int -+z_check_file_permissions(gs_memory_t *mem, const char *fname, const int len, const char *permission) -+{ -+ i_ctx_t *i_ctx_p = get_minst_from_memory(mem)->i_ctx_p; -+ gs_parsed_file_name_t pname; -+ const char *permitgroup = permission[0] == 'r' ? "PermitFileReading" : "PermitFileWriting"; -+ int code = gs_parse_file_name(&pname, fname, len, imemory); -+ if (code < 0) -+ return code; -+ -+ if (pname.iodev && i_ctx_p->LockFilePermissions && strcmp(pname.iodev->dname, "%pipe%") == 0) -+ return e_invalidfileaccess; -+ -+ code = check_file_permissions(i_ctx_p, fname, len, permitgroup); -+ return code; -+} -+ - /* file */ - int /* exported for zsysvm.c */ - zfile(i_ctx_t *i_ctx_p) -diff --git a/psi/zfile.h b/psi/zfile.h -index fdf1373..a9399c7 100644 ---- a/psi/zfile.h -+++ b/psi/zfile.h -@@ -22,4 +22,11 @@ - int zopen_file(i_ctx_t *i_ctx_p, const gs_parsed_file_name_t *pfn, - const char *file_access, stream **ps, gs_memory_t *mem); - -+/* z_check_file_permissions: a callback (via mem->gs_lib_ctx->client_check_file_permission) -+ * to allow applying the above permissions checks when opening file(s) from -+ * the graphics library -+ */ -+int -+z_check_file_permissions(gs_memory_t *mem, const char *fname, -+ const int len, const char *permission); - #endif --- -2.9.1 - diff --git a/gnu/packages/patches/ghostscript-CVE-2016-7978.patch b/gnu/packages/patches/ghostscript-CVE-2016-7978.patch deleted file mode 100644 index 81cb26e9ed..0000000000 --- a/gnu/packages/patches/ghostscript-CVE-2016-7978.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 6f749c0c44e7b9e09737b9f29edf29925a34f0cf Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Wed, 5 Oct 2016 09:59:25 +0100 -Subject: [PATCH] Bug 697179: Reference count device icc profile - -when copying a device ---- - base/gsdevice.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/base/gsdevice.c b/base/gsdevice.c -index 778106f..aea986a 100644 ---- a/base/gsdevice.c -+++ b/base/gsdevice.c -@@ -614,6 +614,7 @@ gx_device_init(gx_device * dev, const gx_device * proto, gs_memory_t * mem, - dev->memory = mem; - dev->retained = !internal; - rc_init(dev, mem, (internal ? 0 : 1)); -+ rc_increment(dev->icc_struct); - } - - void --- -2.9.1 - diff --git a/gnu/packages/patches/ghostscript-CVE-2016-7979.patch b/gnu/packages/patches/ghostscript-CVE-2016-7979.patch deleted file mode 100644 index a557adfdea..0000000000 --- a/gnu/packages/patches/ghostscript-CVE-2016-7979.patch +++ /dev/null @@ -1,48 +0,0 @@ -The following patch was adapted for GNU Ghostscript -by Mark H Weaver based on: - -http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=875a0095f37626a721c7ff57d606a0f95af03913 - -From 875a0095f37626a721c7ff57d606a0f95af03913 Mon Sep 17 00:00:00 2001 -From: Ken Sharp -Date: Wed, 5 Oct 2016 10:10:58 +0100 -Subject: [PATCH] DSC parser - validate parameters - -Bug #697190 ".initialize_dsc_parser doesn't validate the parameter is a dict type before using it." - -Regardless of any security implications, its simply wrong for a PostScript -operator not to validate its parameter(s). - -No differences expected. ---- - psi/zdscpars.c | 13 +++++++++---- - 1 file changed, 9 insertions(+), 4 deletions(-) - -diff --git a/psi/zdscpars.c b/psi/zdscpars.c -index c05e154..9b4b605 100644 ---- a/psi/zdscpars.c -+++ b/psi/zdscpars.c -@@ -150,11 +150,16 @@ zinitialize_dsc_parser(i_ctx_t *i_ctx_p) - ref local_ref; - int code; - os_ptr const op = osp; -- dict * const pdict = op->value.pdict; -- gs_memory_t * const mem = (gs_memory_t *)dict_memory(pdict); -- dsc_data_t * const data = -- gs_alloc_struct(mem, dsc_data_t, &st_dsc_data_t, "DSC parser init"); -+ dict *pdict; -+ gs_memory_t *mem; -+ dsc_data_t *data; - -+ check_read_type(*op, t_dictionary); -+ -+ pdict = op->value.pdict; -+ mem = (gs_memory_t *)dict_memory(pdict); -+ -+ data = gs_alloc_struct(mem, dsc_data_t, &st_dsc_data_t, "DSC parser init"); - if (!data) - return_error(e_VMerror); - data->document_level = 0; --- -2.9.1 - diff --git a/gnu/packages/patches/ghostscript-CVE-2016-8602.patch b/gnu/packages/patches/ghostscript-CVE-2016-8602.patch deleted file mode 100644 index aaf20b6c6c..0000000000 --- a/gnu/packages/patches/ghostscript-CVE-2016-8602.patch +++ /dev/null @@ -1,47 +0,0 @@ -The following patch was adapted for GNU Ghostscript -by Mark H Weaver based on: - -http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=f5c7555c30393e64ec1f5ab0dfae5b55b3b3fc78 - -From f5c7555c30393e64ec1f5ab0dfae5b55b3b3fc78 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Sat, 8 Oct 2016 16:10:27 +0100 -Subject: [PATCH] Bug 697203: check for sufficient params in .sethalftone5 - -and param types ---- - psi/zht2.c | 12 ++++++++++-- - 1 file changed, 10 insertions(+), 2 deletions(-) - -diff --git a/psi/zht2.c b/psi/zht2.c -index fb4a264..dfa27a4 100644 ---- a/psi/zht2.c -+++ b/psi/zht2.c -@@ -82,14 +82,22 @@ zsethalftone5(i_ctx_t *i_ctx_p) - gs_memory_t *mem; - uint edepth = ref_stack_count(&e_stack); - int npop = 2; -- int dict_enum = dict_first(op); -+ int dict_enum; - ref rvalue[2]; - int cname, colorant_number; - byte * pname; - uint name_size; - int halftonetype, type = 0; - gs_state *pgs = igs; -- int space_index = r_space_index(op - 1); -+ int space_index; -+ -+ if (ref_stack_count(&o_stack) < 2) -+ return_error(e_stackunderflow); -+ check_type(*op, t_dictionary); -+ check_type(*(op - 1), t_dictionary); -+ -+ dict_enum = dict_first(op); -+ space_index = r_space_index(op - 1); - - mem = (gs_memory_t *) idmemory->spaces_indexed[space_index]; - --- -2.9.1 - diff --git a/gnu/packages/patches/ghostscript-CVE-2017-8291.patch b/gnu/packages/patches/ghostscript-CVE-2017-8291.patch index db80b6ddec..d38bd593c0 100644 --- a/gnu/packages/patches/ghostscript-CVE-2017-8291.patch +++ b/gnu/packages/patches/ghostscript-CVE-2017-8291.patch @@ -1,15 +1,60 @@ Fix CVE-2017-8291: -https://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2017-8291 +https://bugs.ghostscript.com/show_bug.cgi?id=697799 +https://bugs.ghostscript.com/show_bug.cgi?id=697808 (duplicate) +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8291 -This patch is adapted from these two Artifex Ghostscript commits by Leo -Famulari : +Patches copied from upstream source repository: -https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=04b37bbce174eed24edec7ad5b920eb93db4d47d;hp=4f83478c88c2e05d6e8d79ca4557eb039354d2f3 -https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=4f83478c88c2e05d6e8d79ca4557eb039354d2f3;hp=5603e8fc3e59c435318877efe627967ee6baebb8 +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=4f83478c88c2e05d6e8d79ca4557eb039354d2f3 +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=04b37bbce174eed24edec7ad5b920eb93db4d47d +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=57f20719e1cfaea77b67cb26e26de7fe4d7f9b2e +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=ccfd2c75ac9be4cbd369e4cbdd40ba11a0c7bdad + +From 4f83478c88c2e05d6e8d79ca4557eb039354d2f3 Mon Sep 17 00:00:00 2001 +From: Chris Liddell +Date: Thu, 27 Apr 2017 13:03:33 +0100 +Subject: [PATCH] Bug 697799: have .eqproc check its parameters + +The Ghostscript custom operator .eqproc was not check the number or type of +the parameters it was given. +--- + psi/zmisc3.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/psi/zmisc3.c b/psi/zmisc3.c +index 54b304246..37293ff4b 100644 +--- a/psi/zmisc3.c ++++ b/psi/zmisc3.c +@@ -56,6 +56,12 @@ zeqproc(i_ctx_t *i_ctx_p) + ref2_t stack[MAX_DEPTH + 1]; + ref2_t *top = stack; + ++ if (ref_stack_count(&o_stack) < 2) ++ return_error(gs_error_stackunderflow); ++ if (!r_is_array(op - 1) || !r_is_array(op)) { ++ return_error(gs_error_typecheck); ++ } ++ + make_array(&stack[0].proc1, 0, 1, op - 1); + make_array(&stack[0].proc2, 0, 1, op); + for (;;) { +-- +2.13.0 + +From 04b37bbce174eed24edec7ad5b920eb93db4d47d Mon Sep 17 00:00:00 2001 +From: Chris Liddell +Date: Thu, 27 Apr 2017 13:21:31 +0100 +Subject: [PATCH] Bug 697799: have .rsdparams check its parameters + +The Ghostscript internal operator .rsdparams wasn't checking the number or +type of the operands it was being passed. Do so. +--- + psi/zfrsd.c | 22 +++++++++++++++------- + 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/psi/zfrsd.c b/psi/zfrsd.c -index fb4bce9..2629afa 100644 +index 191107d8a..950588d69 100644 --- a/psi/zfrsd.c +++ b/psi/zfrsd.c @@ -49,13 +49,20 @@ zrsdparams(i_ctx_t *i_ctx_p) @@ -24,9 +69,9 @@ index fb4bce9..2629afa 100644 + int code = 0; + + if (ref_stack_count(&o_stack) < 1) -+ return_error(e_stackunderflow); ++ return_error(gs_error_stackunderflow); + if (!r_has_type(op, t_dictionary) && !r_has_type(op, t_null)) { -+ return_error(e_typecheck); ++ return_error(gs_error_typecheck); + } make_empty_array(&empty_array, a_readonly); @@ -35,15 +80,15 @@ index fb4bce9..2629afa 100644 + && dict_find_string(op, "Filter", &pFilter) > 0) { if (!r_is_array(pFilter)) { if (!r_has_type(pFilter, t_name)) - return_error(e_typecheck); + return_error(gs_error_typecheck); @@ -94,12 +101,13 @@ zrsdparams(i_ctx_t *i_ctx_p) - return_error(e_typecheck); + return_error(gs_error_typecheck); } } - code = dict_int_param(op, "Intent", 0, 3, 0, &Intent); + if (r_has_type(op, t_dictionary)) + code = dict_int_param(op, "Intent", 0, 3, 0, &Intent); - if (code < 0 && code != e_rangecheck) /* out-of-range int is ok, use 0 */ + if (code < 0 && code != gs_error_rangecheck) /* out-of-range int is ok, use 0 */ return code; - if ((code = dict_bool_param(op, "AsyncRead", false, &AsyncRead)) < 0 - ) @@ -54,20 +99,97 @@ index fb4bce9..2629afa 100644 push(1); op[-1] = *pFilter; if (pDecodeParms) +-- +2.13.0 + +From 57f20719e1cfaea77b67cb26e26de7fe4d7f9b2e Mon Sep 17 00:00:00 2001 +From: Chris Liddell +Date: Wed, 3 May 2017 12:05:45 +0100 +Subject: [PATCH] Bug 697846: revision to commit 4f83478c88 (.eqproc) + +When using the "DELAYBIND" feature, it turns out that .eqproc can be called with +parameters that are not both procedures. In this case, it turns out, the +expectation is for the operator to return 'false', rather than throw an error. +--- + psi/zmisc3.c | 15 +++++++++++++-- + 1 file changed, 13 insertions(+), 2 deletions(-) + diff --git a/psi/zmisc3.c b/psi/zmisc3.c -index 54b3042..0d357f1 100644 +index 37293ff4b..3f01d39a3 100644 --- a/psi/zmisc3.c +++ b/psi/zmisc3.c -@@ -56,6 +56,12 @@ zeqproc(i_ctx_t *i_ctx_p) +@@ -38,6 +38,15 @@ zcliprestore(i_ctx_t *i_ctx_p) + return gs_cliprestore(igs); + } + ++static inline bool ++eqproc_check_type(ref *r) ++{ ++ return r_has_type(r, t_array) ++ || r_has_type(r, t_mixedarray) ++ || r_has_type(r, t_shortarray) ++ || r_has_type(r, t_oparray); ++} ++ + /* .eqproc */ + /* + * Test whether two procedures are equal to depth 10. +@@ -58,8 +67,10 @@ zeqproc(i_ctx_t *i_ctx_p) + + if (ref_stack_count(&o_stack) < 2) + return_error(gs_error_stackunderflow); +- if (!r_is_array(op - 1) || !r_is_array(op)) { +- return_error(gs_error_typecheck); ++ if (!eqproc_check_type(op -1) || !eqproc_check_type(op)) { ++ make_false(op - 1); ++ pop(1); ++ return 0; + } + + make_array(&stack[0].proc1, 0, 1, op - 1); +-- +2.13.0 + +From ccfd2c75ac9be4cbd369e4cbdd40ba11a0c7bdad Mon Sep 17 00:00:00 2001 +From: Chris Liddell +Date: Thu, 11 May 2017 14:07:48 +0100 +Subject: [PATCH] Bug 697892: fix check for op stack underflow. + +In the original fix, I used the wrong method to check for stack underflow, this +is using the correct method. +--- + psi/zfrsd.c | 3 +-- + psi/zmisc3.c | 3 +-- + 2 files changed, 2 insertions(+), 4 deletions(-) + +diff --git a/psi/zfrsd.c b/psi/zfrsd.c +index 950588d69..9c035b96d 100644 +--- a/psi/zfrsd.c ++++ b/psi/zfrsd.c +@@ -54,8 +54,7 @@ zrsdparams(i_ctx_t *i_ctx_p) + uint i; + int code = 0; + +- if (ref_stack_count(&o_stack) < 1) +- return_error(gs_error_stackunderflow); ++ check_op(1); + if (!r_has_type(op, t_dictionary) && !r_has_type(op, t_null)) { + return_error(gs_error_typecheck); + } +diff --git a/psi/zmisc3.c b/psi/zmisc3.c +index 3f01d39a3..43803b55b 100644 +--- a/psi/zmisc3.c ++++ b/psi/zmisc3.c +@@ -65,8 +65,7 @@ zeqproc(i_ctx_t *i_ctx_p) ref2_t stack[MAX_DEPTH + 1]; ref2_t *top = stack; -+ if (ref_stack_count(&o_stack) < 2) -+ return_error(e_stackunderflow); -+ if (!r_is_array(op - 1) || !r_is_array(op)) { -+ return_error(e_typecheck); -+ } -+ - make_array(&stack[0].proc1, 0, 1, op - 1); - make_array(&stack[0].proc2, 0, 1, op); - for (;;) { +- if (ref_stack_count(&o_stack) < 2) +- return_error(gs_error_stackunderflow); ++ check_op(2); + if (!eqproc_check_type(op -1) || !eqproc_check_type(op)) { + make_false(op - 1); + pop(1); +-- +2.13.0 + diff --git a/gnu/packages/patches/ghostscript-runpath.patch b/gnu/packages/patches/ghostscript-runpath.patch index c7dcfd4529..9f161e45b3 100644 --- a/gnu/packages/patches/ghostscript-runpath.patch +++ b/gnu/packages/patches/ghostscript-runpath.patch @@ -1,17 +1,18 @@ -This patch adds $(libdir) to the RUNPATH of 'gsc' and 'gsx'. - ---- gnu-ghostscript-9.14.0/base/unix-dll.mak 2015-04-05 15:12:45.386957927 +0200 -+++ gnu-ghostscript-9.14.0/base/unix-dll.mak 2015-04-05 15:12:49.222982359 +0200 -@@ -91,11 +91,11 @@ $(GS_SO_MAJOR): $(GS_SO_MAJOR_MINOR) +diff --git a/base/unix-dll.mak b/base/unix-dll.mak +index 9d57a99..36ef1ff 100644 +--- a/base/unix-dll.mak ++++ b/base/unix-dll.mak +@@ -171,11 +171,11 @@ gpdl-so-links-subtarget: $(GPDL_SO) $(UNIX_DLL_MAK) $(MAKEDIRS) # Build the small Ghostscript loaders, with Gtk+ and without - $(GSSOC_XE): $(GS_SO) $(PSSRC)$(SOC_LOADER) + $(GSSOC_XE): gs-so-links-subtarget $(PSSRC)$(SOC_LOADER) $(UNIX_DLL_MAK) $(MAKEDIRS) $(GLCC) -g -o $(GSSOC_XE) $(PSSRC)dxmainc.c \ - -L$(BINDIR) -l$(GS_SO_BASE) + -L$(BINDIR) -l$(GS_SO_BASE) -Wl,-rpath=$(libdir) - $(GSSOX_XE): $(GS_SO) $(PSSRC)$(SOC_LOADER) + $(GSSOX_XE): gs-so-links-subtarget $(PSSRC)$(SOC_LOADER) $(UNIX_DLL_MAK) $(MAKEDIRS) $(GLCC) -g $(SOC_CFLAGS) -o $(GSSOX_XE) $(PSSRC)$(SOC_LOADER) \ - -L$(BINDIR) -l$(GS_SO_BASE) $(SOC_LIBS) + -L$(BINDIR) -l$(GS_SO_BASE) $(SOC_LIBS) -Wl,-rpath=$(libdir) - # ------------------------- Recursive make targets ------------------------- # + $(PCLSOC_XE): gpcl6-so-links-subtarget $(PLSRC)$(REALMAIN_SRC).c $(UNIX_DLL_MAK) $(MAKEDIRS) + $(GLCC) -g -o $(PCLSOC_XE) $(PLSRC)$(REALMAIN_SRC).c -L$(BINDIR) -l$(PCL_SO_BASE) From 1c09eb9948fcb5f6cfb85faafe24a8843c119f89 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 29 May 2017 04:42:37 -0400 Subject: [PATCH 0079/1227] gnu: ijs: Use modify-phases syntax. * gnu/packages/ghostscript.scm (ijs)[arguments]: Use modify-phases. --- gnu/packages/ghostscript.scm | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index ffe6e018bd..32c2b444d5 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2013, 2015, 2016 Ludovic Courtès ;;; Copyright © 2017 Alex Vong ;;; Copyright © 2017 Efraim Flashner +;;; Copyright © 2017 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; @@ -246,24 +247,22 @@ output file formats and printers.") ("autoconf" ,autoconf))) (arguments `(#:phases - (alist-cons-after - 'unpack 'autogen - (lambda _ - ;; need to regenerate macros - (system* "autoreconf" "-if") - ;; do not run configure - (substitute* "autogen.sh" - (("^.*\\$srcdir/configure.*") "")) - (system* "bash" "autogen.sh") - - ;; create configure script in ./ijs/ - (chdir "ijs") - ;; do not run configure - (substitute* "autogen.sh" - (("^.*\\$srcdir/configure.*") "") - (("^ + && echo Now type.*$") "")) - (zero? (system* "bash" "autogen.sh"))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'autogen + (lambda _ + ;; need to regenerate macros + (system* "autoreconf" "-if") + ;; do not run configure + (substitute* "autogen.sh" + (("^.*\\$srcdir/configure.*") "")) + (system* "bash" "autogen.sh") + ;; create configure script in ./ijs/ + (chdir "ijs") + ;; do not run configure + (substitute* "autogen.sh" + (("^.*\\$srcdir/configure.*") "") + (("^ + && echo Now type.*$") "")) + (zero? (system* "bash" "autogen.sh"))))))) (synopsis "IJS driver framework for inkjet and other raster devices") (description "IJS is a protocol for transmission of raster page images. This package From 55af10fb987ce96966850da08f8f8d12691dee63 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 29 May 2017 04:43:21 -0400 Subject: [PATCH 0080/1227] gnu: ijs: Update to 9.21.0 and inherit from ghostscript. * gnu/packages/ghostscript.scm (ijs): Update to 9.21.0. [source, version, home-page]: Inherit from ghostscript. --- gnu/packages/ghostscript.scm | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 32c2b444d5..e0ae9bab6f 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -233,13 +233,8 @@ output file formats and printers.") (define-public ijs (package (name "ijs") - (version "9.14.0") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/ghostscript/gnu-ghostscript-" - version ".tar.xz")) - (sha256 (base32 - "0q4jj41p0qbr4mgcc9q78f5zs8cm1g57wgryhsm2yq4lfslm3ib1")))) + (version (package-version ghostscript)) + (source (package-source ghostscript)) (build-system gnu-build-system) (native-inputs `(("libtool" ,libtool) @@ -269,7 +264,7 @@ output file formats and printers.") provides the reference implementation of the raster printer driver architecture.") (license license:expat) - (home-page "https://www.gnu.org/software/ghostscript/"))) + (home-page (package-home-page ghostscript)))) (define-public gs-fonts (package From c6064f154f1aabcdae8a19dd3360eb0d37550ee9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 25 May 2017 01:55:18 +0200 Subject: [PATCH 0081/1227] gnu: libdrm: Update to 2.4.81. * gnu/packages/xdisorg.scm (libdrm): Update to 2.4.81. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index ad919a6b28..64907d8b5a 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -277,7 +277,7 @@ rasterisation.") (define-public libdrm (package (name "libdrm") - (version "2.4.80") + (version "2.4.81") (source (origin (method url-fetch) @@ -287,7 +287,7 @@ rasterisation.") ".tar.bz2")) (sha256 (base32 - "1wa9cnzf60xwx67zq9ay48xr3j3sn1z80q77jpbzmkg906b52am8")) + "1bhimr6za2ddisrvrv1qqd7c2a59s7jc954sjycq2w68b8cmrh4c")) (patches (search-patches "libdrm-symbol-check.patch")))) (build-system gnu-build-system) (inputs From 81b959c4ec785684f749544ce7f86fe1f5bbe4fe Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 3 Jun 2017 04:18:22 +0200 Subject: [PATCH 0082/1227] gnu: util-linux: Update to 2.30. Release notes: https://www.kernel.org/pub/linux/utils/util-linux/v2.30/v2.30-ReleaseNotes * gnu/packages/linux.scm (util-linux): Update to 2.30. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 13e08dcfaf..e3b7a8c5e1 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -492,7 +492,7 @@ providing the system administrator with some help in common tasks.") (define-public util-linux (package (name "util-linux") - (version "2.29.2") + (version "2.30") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/utils/" @@ -500,7 +500,7 @@ providing the system administrator with some help in common tasks.") name "-" version ".tar.xz")) (sha256 (base32 - "1qz81w8vzrmy8xn9yx7ls4amkbgwx6vr62pl6kv9g7r0g3ba9kmc")) + "13d0ax8bcapga8phj2nclx86w57ddqxbr98ajibpzjq6d7zs8262")) (patches (search-patches "util-linux-tests.patch")) (modules '((guix build utils))) (snippet From 82d3ed3b5b85438174996ccc4f1514622a05ee4f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 3 Jun 2017 04:52:57 +0200 Subject: [PATCH 0083/1227] gnu: xkeyboard-config: Update to 2.21. * gnu/packages/xorg.scm (xkeyboard-config): Update to 2.21. --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 239b6ff2fe..7d981712da 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -3737,7 +3737,7 @@ extension to the X11 protocol. It includes: (define-public xkeyboard-config (package (name "xkeyboard-config") - (version "2.20") + (version "2.21") (source (origin (method url-fetch) @@ -3747,7 +3747,7 @@ extension to the X11 protocol. It includes: ".tar.bz2")) (sha256 (base32 - "0d619g4r0w1f6q5qmaqjnsc0956gi02fqgpisqffzqy4acjwggyi")))) + "1iffxpchy6dfgbby23nfsqqk17h9lfddlmjnhwagqag1z94p1h9h")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) From 0b70f7d557181febd80b16c8e3a03887df3871af Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 3 Jun 2017 04:57:53 +0200 Subject: [PATCH 0084/1227] gnu: libgcrypt: Update to 1.7.7. This release includes two bug-fixes: - Fix possible timing attack on EdDSA session key. - Fix long standing bug in secure memory implementation which could lead to a segv on free. [bug#3027] * gnu/packages/gnupg.scm (libgcrypt): Update to 1.7.7. --- gnu/packages/gnupg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index d12304a8eb..e901dba2c2 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -82,14 +82,14 @@ Daemon and possibly more in the future.") (define-public libgcrypt (package (name "libgcrypt") - (version "1.7.6") + (version "1.7.7") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" version ".tar.bz2")) (sha256 (base32 - "1g05prhgqw4ryd0w433q8nhds0h93kf47hfjagi2r7dghkpaysk2")))) + "16ndaj93asw122mwjz172x2ilpm03w1yp5mqcrp3xslk0yx5xf5r")))) (build-system gnu-build-system) (propagated-inputs `(("libgpg-error-host" ,libgpg-error))) From 8b4186e116434860a93fd1c8163fdeb86c1d63a8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 3 Jun 2017 04:31:15 +0200 Subject: [PATCH 0085/1227] gnu: libuv: Update to 1.12.0. * gnu/packages/libevent.scm (libuv): Update to 1.12.0. [license]: X11 should actually be EXPAT. Add CC-BY4.0. --- gnu/packages/libevent.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index c903352bbc..bda15393f6 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -121,7 +121,7 @@ programs.") (define-public libuv (package (name "libuv") - (version "1.11.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/libuv/libuv/archive/v" @@ -129,7 +129,7 @@ programs.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0yhw86011l2dg2prms0d86szygrix4pxpgnyzs7iljy2xk3fxivf")))) + "0l0jrb5q3i8br10c8skc6xdwlxkmlpn3n0kngaqd68fsi1593kj1")))) (build-system gnu-build-system) (arguments '(#:phases (alist-cons-after @@ -157,8 +157,8 @@ similar IOCP, and event ports, asynchronous TCP/UDP sockets, asynchronous DNS resolution, asynchronous file system operations, and threading primitives.") ;; A few files fall under other non-copyleft licenses; see 'LICENSE' for - ;; details. - (license x11))) + ;; details. Documentation is CC-BY 4.0 as of 1.12.0; see 'LICENSE-docs'. + (license (list expat cc-by4.0)))) (define-public perl-anyevent (package From f65805485dac3f8c4586648e3f7e901202095a19 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 4 Jun 2017 02:30:13 -0400 Subject: [PATCH 0086/1227] gnu: perl: Update to 5.26.0. * gnu/packages/perl.scm (perl): Update to 5.26.0. * gnu/packages/patches/perl-no-sys-dirs.patch: Update patch context for 'hints/linux.sh'. --- gnu/packages/patches/perl-no-sys-dirs.patch | 73 +++++++++++---------- gnu/packages/perl.scm | 4 +- 2 files changed, 41 insertions(+), 36 deletions(-) diff --git a/gnu/packages/patches/perl-no-sys-dirs.patch b/gnu/packages/patches/perl-no-sys-dirs.patch index da91fef3b4..31d53e0353 100644 --- a/gnu/packages/patches/perl-no-sys-dirs.patch +++ b/gnu/packages/patches/perl-no-sys-dirs.patch @@ -1,6 +1,7 @@ Don't look for headers and libraries in "traditional" locations. -Patch from Nixpkgs by Eelco Dolstra . +Patch adapted from Nixpkgs, originally by Eelco Dolstra +. diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure --- perl-5.20.0-orig/Configure 2014-05-26 15:34:18.000000000 +0200 @@ -185,39 +186,6 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/li case "$plibpth" in '') plibpth=`LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries | cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'` -@@ -178,32 +159,6 @@ - ;; - esac - --case "$libc" in --'') --# If you have glibc, then report the version for ./myconfig bug reporting. --# (Configure doesn't need to know the specific version since it just uses --# gcc to load the library for all tests.) --# We don't use __GLIBC__ and __GLIBC_MINOR__ because they --# are insufficiently precise to distinguish things like --# libc-2.0.6 and libc-2.0.7. -- for p in $plibpth -- do -- for trylib in libc.so.6 libc.so -- do -- if $test -e $p/$trylib; then -- libc=`ls -l $p/$trylib | awk '{print $NF}'` -- if $test "X$libc" != X; then -- break -- fi -- fi -- done -- if $test "X$libc" != X; then -- break -- fi -- done -- ;; --esac -- - # Are we using ELF? Thanks to Kenneth Albanowski - # for this test. - cat >try.c <<'EOM' @@ -367,33 +322,6 @@ ;; esac @@ -252,3 +220,40 @@ diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/li # Linux on Synology. if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then # Tested on Synology DS213 and DS413 +diff --git a/hints/linux.sh b/hints/linux.sh +index 3f38ea0..97aed11 100644 +--- a/hints/linux.sh ++++ b/hints/linux.sh +@@ -195,32 +195,6 @@ case "$usequadmath" in + ;; + esac + +-case "$libc" in +-'') +-# If you have glibc, then report the version for ./myconfig bug reporting. +-# (Configure doesn't need to know the specific version since it just uses +-# gcc to load the library for all tests.) +-# We don't use __GLIBC__ and __GLIBC_MINOR__ because they +-# are insufficiently precise to distinguish things like +-# libc-2.0.6 and libc-2.0.7. +- for p in $plibpth +- do +- for trylib in libc.so.6 libc.so +- do +- if $test -e $p/$trylib; then +- libc=`ls -l $p/$trylib | awk '{print $NF}'` +- if $test "X$libc" != X; then +- break +- fi +- fi +- done +- if $test "X$libc" != X; then +- break +- fi +- done +- ;; +-esac +- + if ${sh:-/bin/sh} -c exit; then + echo '' + echo 'You appear to have a working bash. Good.' diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index db76160062..c3b486988d 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -51,14 +51,14 @@ ;; Yeah, Perl... It is required early in the bootstrap process by Linux. (package (name "perl") - (version "5.24.1") + (version "5.26.0") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/src/5.0/perl-" version ".tar.gz")) (sha256 (base32 - "1bqqb5ghfj4486nqr77kgsd8aff6a289jy7n2cdkznwvn34qbhg6")) + "0zxn9hd7mqgq06ikyi6k70ngbvjf01z1paw0jd25byyl0rlwdrzb")) (patches (search-patches "perl-no-sys-dirs.patch" "perl-autosplit-default-time.patch" From 47415332d70cd9166b0914ce43018ae57083c120 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 3 Jun 2017 16:17:38 -0400 Subject: [PATCH 0087/1227] gnu: openldap: Update to 2.4.45. * gnu/packages/openldap.scm (openldap): Update to 2.4.45. [replacement]: Remove field. (openldap/fixed): Remove variable. --- gnu/packages/openldap.scm | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm index 24bf603c44..a146ef378f 100644 --- a/gnu/packages/openldap.scm +++ b/gnu/packages/openldap.scm @@ -40,8 +40,7 @@ (define-public openldap (package (name "openldap") - (replacement openldap/fixed) - (version "2.4.44") + (version "2.4.45") (source (origin (method url-fetch) @@ -51,14 +50,14 @@ "ftp://mirror.switch.ch/mirror/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append - "ftp://ftp.OpenLDAP.org/pub/OpenLDAP/" + "https://www.openldap.org/software/download/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/" "openldap-release/openldap-" version ".tgz"))) (sha256 (base32 - "0044p20hx07fwgw2mbwj1fkx04615hhs1qyx4mawj2bhqvrnppnp")))) + "091qvwk5dkcpp17ziabcnh3rg3m7qwzw2pihfcd1d5fdxgywzmnd")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb-5.3) ("cyrus-sasl" ,cyrus-sasl) @@ -79,15 +78,7 @@ (description "OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.") (license openldap2.8) - (home-page "http://www.openldap.org/"))) - -(define openldap/fixed - (package - (inherit openldap) - (source - (origin - (inherit (package-source openldap)) - (patches (search-patches "openldap-CVE-2017-9287.patch")))))) + (home-page "https://www.openldap.org/"))) (define-public nss-pam-ldapd (package From c9dba6c114580b0fabdb46bb9621c568c1958804 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 3 Jun 2017 16:18:48 -0400 Subject: [PATCH 0088/1227] gnu: openldap: Use modify-phases. * gnu/packages/openldap.scm (openldap)[arguments]: Use modify-phases syntax. --- gnu/packages/openldap.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm index a146ef378f..8d27ac9666 100644 --- a/gnu/packages/openldap.scm +++ b/gnu/packages/openldap.scm @@ -70,10 +70,10 @@ (arguments `(#:tests? #f #:phases - (alist-cons-after - 'configure 'provide-libtool - (lambda _ (copy-file (which "libtool") "libtool")) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'configure 'provide-libtool + (lambda _ (copy-file (which "libtool") "libtool") + #t))))) (synopsis "Implementation of the Lightweight Directory Access Protocol") (description "OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.") From 4f493cba06b97de756123b3855ea52dcf1ad3555 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 3 Jun 2017 16:43:07 -0400 Subject: [PATCH 0089/1227] gnu: openldap: Provide path to cyrus-sasl for libtool. * gnu/packages/openldap.scm (openldap)[arguments]: Add 'patch-sasl-path' phase.. --- gnu/packages/openldap.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm index 8d27ac9666..f3963c6e20 100644 --- a/gnu/packages/openldap.scm +++ b/gnu/packages/openldap.scm @@ -73,7 +73,17 @@ (modify-phases %standard-phases (add-after 'configure 'provide-libtool (lambda _ (copy-file (which "libtool") "libtool") - #t))))) + #t)) + (add-after 'install 'patch-sasl-path + ;; Give -L arguments for cyrus-sasl to avoid propagation. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (sasl (assoc-ref inputs "cyrus-sasl"))) + (substitute* (map (lambda (f) (string-append out "/" f)) + '("lib/libldap.la" "lib/libldap_r.la")) + (("-lsasl2" lib) + (string-append "-L" sasl "/lib " lib))) + #t)))))) (synopsis "Implementation of the Lightweight Directory Access Protocol") (description "OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.") From a8fc8c9ef071ccacbc2cfdf42a855b8870b07614 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 8 Jun 2017 00:26:10 +0200 Subject: [PATCH 0090/1227] gnu: gcc: Fix libsanitizer cross-compilation to powerpc-linux-gnu. * gnu/packages/patches/gcc-asan-powerpc-missing-include.patch: New file. * gnu/packages/gcc.scm (gcc-5)[source](patches): Add it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/gcc.scm | 1 + .../gcc-asan-powerpc-missing-include.patch | 20 +++++++++++++++++++ 3 files changed, 22 insertions(+) create mode 100644 gnu/packages/patches/gcc-asan-powerpc-missing-include.patch diff --git a/gnu/local.mk b/gnu/local.mk index 74630eb9fa..2be36d353c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -600,6 +600,7 @@ dist_patch_DATA = \ %D%/packages/patches/gawk-shell.patch \ %D%/packages/patches/gcc-arm-bug-71399.patch \ %D%/packages/patches/gcc-arm-link-spec-fix.patch \ + %D%/packages/patches/gcc-asan-powerpc-missing-include.patch \ %D%/packages/patches/gcc-cross-environment-variables.patch \ %D%/packages/patches/gcc-libvtv-runpath.patch \ %D%/packages/patches/gcc-strmov-store-file-names.patch \ diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 45b86fcc7e..088857c042 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -382,6 +382,7 @@ Go. It also includes runtime support libraries for these languages.") "0fihlcy5hnksdxk0sn6bvgnyq8gfrgs8m794b1jxwd1dxinzg3b0")) (patches (search-patches "gcc-arm-bug-71399.patch" "gcc-strmov-store-file-names.patch" + "gcc-asan-powerpc-missing-include.patch" "gcc-5.0-libvtv-runpath.patch" "gcc-5-source-date-epoch-1.patch" "gcc-5-source-date-epoch-2.patch")))))) diff --git a/gnu/packages/patches/gcc-asan-powerpc-missing-include.patch b/gnu/packages/patches/gcc-asan-powerpc-missing-include.patch new file mode 100644 index 0000000000..74b10c4a44 --- /dev/null +++ b/gnu/packages/patches/gcc-asan-powerpc-missing-include.patch @@ -0,0 +1,20 @@ +Add missing include that triggers a build failure on PowerPC: + + ../../../../gcc-5.4.0/libsanitizer/asan/asan_linux.cc: In function ‘bool __asan::AsanInterceptsSignal(int)’: + ../../../../gcc-5.4.0/libsanitizer/asan/asan_linux.cc:222:20: error: ‘SIGSEGV’ was not declared in this scope + return signum == SIGSEGV && common_flags()->handle_segv; + ^ +From . + +diff --git a/libsanitizer/asan/asan_linux.cc b/libsanitizer/asan/asan_linux.cc +index c504168..59087b9 100644 +--- a/libsanitizer/asan/asan_linux.cc ++++ b/libsanitizer/asan/asan_linux.cc +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + #include + #include From 70eea6ea14590a5a13656148915bd62f5fecf5f7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 8 Jun 2017 18:35:45 +0200 Subject: [PATCH 0091/1227] gnu: sqlite: Update to 3.19.3. This update addresses an important bug present since 3.16.0 that can cause database corruption when auto_vacuum is enabled: https://www.sqlite.org/src/info/fda22108 * gnu/packages/databases.scm (sqlite): Update to 3.19.3. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index cd5f53daa3..0d252ed91d 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -721,7 +721,7 @@ for example from a shell script.") (define-public sqlite (package (name "sqlite") - (version "3.19.2") + (version "3.19.3") (source (origin (method url-fetch) (uri (let ((numeric-version @@ -737,7 +737,7 @@ for example from a shell script.") numeric-version ".tar.gz"))) (sha256 (base32 - "1z1gmiyx68g1yxc3avc9jnan53irnsq2rsyldwyxcfnc07xn2lya")))) + "00b3l2qglpl1inx21fckiwxnfq5xf6441flc79rqg7zdvh1rq4h6")))) (build-system gnu-build-system) (inputs `(("readline" ,readline))) (arguments From 4e859e9233cabfff7ed81b56781cccbcd90befa4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 9 Jun 2017 09:03:46 +0200 Subject: [PATCH 0092/1227] gnu: eudev: Build the hardware database. * gnu/packages/linux.scm (usbutils)[inputs]: Replace EUDEV-WITH-HWDB by EUDEV. (eudev)[arguments]: New field. (eudev-with-hwdb): Define in terms of 'deprecated-package'. --- gnu/packages/linux.scm | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c101135db7..e345c576ee 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -637,7 +637,7 @@ slabtop, and skill.") (build-system gnu-build-system) (inputs `(("libusb" ,libusb) - ("eudev" ,eudev-with-hwdb))) + ("eudev" ,eudev))) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "http://www.linux-usb.org/") @@ -1843,6 +1843,15 @@ from the module-init-tools project.") (patches (search-patches "eudev-rules-directory.patch" "eudev-conflicting-declaration.patch")))) (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-after 'install 'build-hwdb + (lambda* (#:key outputs #:allow-other-keys) + ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and + ;; similar tools to display product names. + (let ((out (assoc-ref outputs "out"))) + (zero? (system* (string-append out "/bin/udevadm") + "hwdb" "--update")))))))) (native-inputs `(("pkg-config" ,pkg-config) ("perl" ,perl) @@ -1861,19 +1870,7 @@ time.") (license license:gpl2+))) (define-public eudev-with-hwdb - ;; TODO: Merge with 'eudev'. - (package - (inherit eudev) - (name "eudev-with-hwdb") - (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'install 'build-hwdb - (lambda* (#:key outputs #:allow-other-keys) - ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and - ;; similar tools to display product names. - (let ((out (assoc-ref outputs "out"))) - (zero? (system* (string-append out "/bin/udevadm") - "hwdb" "--update")))))))))) + (deprecated-package "eudev-with-hwdb" eudev)) (define-public lvm2 (package From 202342fdda708d8e4554e0514a58849584eddbd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 9 Jun 2017 14:57:41 +0200 Subject: [PATCH 0093/1227] gnu: eudev: Update to 3.2.2. * gnu/packages/linux.scm (eudev): Update to 3.2.2. [source](patches): Remove "eudev-conflicting-declaration.patch". * gnu/packages/patches/eudev-conflicting-declaration.patch: Remove. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/linux.scm | 7 ++--- .../eudev-conflicting-declaration.patch | 31 ------------------- 3 files changed, 3 insertions(+), 36 deletions(-) delete mode 100644 gnu/packages/patches/eudev-conflicting-declaration.patch diff --git a/gnu/local.mk b/gnu/local.mk index 2be36d353c..d99c4d215b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -570,7 +570,6 @@ dist_patch_DATA = \ %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \ %D%/packages/patches/emacs-source-date-epoch.patch \ %D%/packages/patches/eudev-rules-directory.patch \ - %D%/packages/patches/eudev-conflicting-declaration.patch \ %D%/packages/patches/evilwm-lost-focus-bug.patch \ %D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch \ %D%/packages/patches/fabric-tests.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index e345c576ee..1a4e25d12a 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1831,7 +1831,7 @@ from the module-init-tools project.") ;; The post-systemd fork, maintained by Gentoo. (package (name "eudev") - (version "3.2.1") + (version "3.2.2") (source (origin (method url-fetch) (uri (string-append @@ -1839,9 +1839,8 @@ from the module-init-tools project.") version ".tar.gz")) (sha256 (base32 - "06gyyl90n85x8i7lfhns514y1kg1ians13l467admyzy3kjxkqsp")) - (patches (search-patches "eudev-rules-directory.patch" - "eudev-conflicting-declaration.patch")))) + "0qqgbgpm5wdllk0s04pf80nwc8pr93xazwri1bylm1f15zn5ck1y")) + (patches (search-patches "eudev-rules-directory.patch")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/patches/eudev-conflicting-declaration.patch b/gnu/packages/patches/eudev-conflicting-declaration.patch deleted file mode 100644 index f5399e20d3..0000000000 --- a/gnu/packages/patches/eudev-conflicting-declaration.patch +++ /dev/null @@ -1,31 +0,0 @@ -Fix build failure due to conflicting declaration of -keyboard_lookup_key() in gperf-3.1: - -https://bugs.gentoo.org/show_bug.cgi?id=604864 - -Patch copied from upstream source repository: - -https://github.com/gentoo/eudev/commit/5bab4d8de0dcbb8e2e7d4d5125b4aea1652a0d60 - -From 5bab4d8de0dcbb8e2e7d4d5125b4aea1652a0d60 Mon Sep 17 00:00:00 2001 -From: "Anthony G. Basile" -Date: Thu, 5 Jan 2017 16:21:17 -0500 -Subject: [PATCH] src/udev/udev-builtin-keyboard.c: fix build with gperf 3.1 - -Signed-off-by: Anthony G. Basile ---- - src/udev/udev-builtin-keyboard.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/udev/udev-builtin-keyboard.c b/src/udev/udev-builtin-keyboard.c -index 73171c3..fad3520 100644 ---- a/src/udev/udev-builtin-keyboard.c -+++ b/src/udev/udev-builtin-keyboard.c -@@ -28,7 +28,6 @@ - - #include "udev.h" - --static const struct key *keyboard_lookup_key(const char *str, unsigned len); - #include "keyboard-keys-from-name.h" - #include "keyboard-keys-to-name.h" - From 48d78a2e9ca9a9bb4c6d8cb92d389fc43b3289bc Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 10 Jun 2017 01:54:30 +0200 Subject: [PATCH 0094/1227] gnu: presentproto: Update to 1.1. * gnu/packages/xorg.scm (presentproto): Update to 1.1. --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 8ed608b216..39e44408ae 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -1553,7 +1553,7 @@ by the legacy X11 font system.") (define-public presentproto (package (name "presentproto") - (version "1.0") + (version "1.1") (source (origin (method url-fetch) @@ -1563,7 +1563,7 @@ by the legacy X11 font system.") ".tar.bz2")) (sha256 (base32 - "1kir51aqg9cwazs14ivcldcn3mzadqgykc9cg87rm40zf947sb41")))) + "1f96dlgfwhsd0834z8ydjzjnb0cwha5r6lxgia4say4zhsl276zn")))) (build-system gnu-build-system) (home-page "https://www.x.org/wiki/") (synopsis "Xorg PresentProto protocol headers") From 2a37852d4bfaa9d2c5bde066f5f673a5843f0678 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 10 Jun 2017 01:54:49 +0200 Subject: [PATCH 0095/1227] gnu: util-macros: Update to 1.19.1. * gnu/packages/xorg.scm (util-macros): Update to 1.19.1. --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 39e44408ae..41598eb68d 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -1814,7 +1814,7 @@ management to participate in an X11R6 session.") (define-public util-macros (package (name "util-macros") - (version "1.19.0") + (version "1.19.1") (source (origin (method url-fetch) @@ -1824,7 +1824,7 @@ management to participate in an X11R6 session.") ".tar.bz2")) (sha256 (base32 - "1fnhpryf55l0yqajxn0cxan3kvsjzi67nlanz8clwqzf54cb2d98")))) + "19h6wflpmh7xxqr6lk5z8pds6r9r0dn7ijbvaacymx2q0m05km0q")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (arguments From 653569e878f39345b05110b998f10db3b520ccfe Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 10 Jun 2017 02:12:15 +0200 Subject: [PATCH 0096/1227] gnu: mesa: Update to 17.1.2. * gnu/packages/patches/mesa-skip-disk-cache-test.patch: Adjust. * gnu/packages/patches/mesa-fix-32bit-test-failures.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove deleted file. * gnu/packages/gl.scm (mesa): Update to 17.1.2. [source]: Remove obsolete patch. [inputs]: Add LIBELF. [native-inputs]: Add WHICH. [arguments]<#:configure-flags>: Adjust deprecated flag. --- gnu/local.mk | 1 - gnu/packages/gl.scm | 14 +++-- .../mesa-fix-32bit-test-failures.patch | 58 ------------------- .../patches/mesa-skip-disk-cache-test.patch | 7 +-- 4 files changed, 11 insertions(+), 69 deletions(-) delete mode 100644 gnu/packages/patches/mesa-fix-32bit-test-failures.patch diff --git a/gnu/local.mk b/gnu/local.mk index ae64f244f0..29919e8b3d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -798,7 +798,6 @@ dist_patch_DATA = \ %D%/packages/patches/mcrypt-CVE-2012-4409.patch \ %D%/packages/patches/mcrypt-CVE-2012-4426.patch \ %D%/packages/patches/mcrypt-CVE-2012-4527.patch \ - %D%/packages/patches/mesa-fix-32bit-test-failures.patch \ %D%/packages/patches/mesa-skip-disk-cache-test.patch \ %D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \ %D%/packages/patches/metabat-remove-compilation-date.patch \ diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 7457809300..edb26247a3 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -30,6 +30,7 @@ #:use-module (gnu packages bison) #:use-module (gnu packages compression) #:use-module (gnu packages documentation) + #:use-module (gnu packages elf) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) @@ -217,7 +218,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "17.0.6") + (version "17.1.2") (source (origin (method url-fetch) @@ -227,10 +228,9 @@ also known as DXTn or DXTC) for Mesa.") version "/mesa-" version ".tar.xz"))) (sha256 (base32 - "17d60jjzg4ddm95gk2cqx0xz6b9anmmz6ax4majwr3gis2yg7v49")) + "0fc2g6cqffr8mh705r60xv9v66saiff8y3alz6qkjqvl8d7q0dq9")) (patches - (search-patches "mesa-fix-32bit-test-failures.patch" - "mesa-wayland-egl-symbols-check-mips.patch" + (search-patches "mesa-wayland-egl-symbols-check-mips.patch" "mesa-skip-disk-cache-test.patch")))) (build-system gnu-build-system) (propagated-inputs @@ -247,6 +247,7 @@ also known as DXTn or DXTC) for Mesa.") `(("expat" ,expat) ("dri2proto" ,dri2proto) ("dri3proto" ,dri3proto) + ("libelf" ,libelf) ;required for r600 when using llvm ("libva" ,(force libva-without-mesa)) ("libxml2" ,libxml2) ;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support @@ -262,7 +263,8 @@ also known as DXTn or DXTC) for Mesa.") ("wayland" ,wayland))) (native-inputs `(("pkg-config" ,pkg-config) - ("python" ,python-2))) + ("python" ,python-2) + ("which" ,(@ (gnu packages base) which)))) (arguments `(#:configure-flags '(,@(match (%current-system) @@ -294,7 +296,7 @@ also known as DXTn or DXTC) for Mesa.") ,@(match (%current-system) ((or "x86_64-linux" "i686-linux") '("--with-dri-drivers=i915,i965,nouveau,r200,radeon,swrast" - "--enable-gallium-llvm")) ; default is x86/x86_64 only + "--enable-llvm")) ; default is x86/x86_64 only (_ '("--with-dri-drivers=nouveau,r200,radeon,swrast")))) #:phases diff --git a/gnu/packages/patches/mesa-fix-32bit-test-failures.patch b/gnu/packages/patches/mesa-fix-32bit-test-failures.patch deleted file mode 100644 index e21e87cef6..0000000000 --- a/gnu/packages/patches/mesa-fix-32bit-test-failures.patch +++ /dev/null @@ -1,58 +0,0 @@ -Fix a test failure when building for 32 bit architectures: - -http://lists.gnu.org/archive/html/guix-devel/2017-04/msg00381.html - -Patch copied from upstream source repository: - -https://cgit.freedesktop.org/mesa/mesa/commit/?id=61bbb25a080e48a8ca897ba7f6e73cc6a8e9b5b8 - -From 61bbb25a080e48a8ca897ba7f6e73cc6a8e9b5b8 Mon Sep 17 00:00:00 2001 -From: Grazvydas Ignotas -Date: Thu, 9 Mar 2017 02:54:53 +0200 -Subject: [PATCH] util/disk_cache: fix size subtraction on 32bit - -Negating size_t on 32bit produces a 32bit result. This was effectively -adding values close to UINT_MAX to the cache size (the files are usually -small) instead of intended subtraction. -Fixes 'make check' disk_cache failures on 32bit. - -Signed-off-by: Grazvydas Ignotas -Reviewed-by: Timothy Arceri ---- - src/util/disk_cache.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/util/disk_cache.c b/src/util/disk_cache.c -index 5470688df3..facdcecf7c 100644 ---- a/src/util/disk_cache.c -+++ b/src/util/disk_cache.c -@@ -603,7 +603,7 @@ evict_random_item(struct disk_cache *cache) - free(dir_path); - - if (size) { -- p_atomic_add(cache->size, - size); -+ p_atomic_add(cache->size, - (uint64_t)size); - return; - } - -@@ -624,7 +624,7 @@ evict_random_item(struct disk_cache *cache) - free(dir_path); - - if (size) -- p_atomic_add(cache->size, - size); -+ p_atomic_add(cache->size, - (uint64_t)size); - } - - void -#@@ -646,7 +646,7 @@ disk_cache_remove(struct disk_cache *cache, const cache_key key) -# free(filename); -# -# if (sb.st_size) -#- p_atomic_add(cache->size, - sb.st_size); -#+ p_atomic_add(cache->size, - (uint64_t)sb.st_size); -# } -# -# /* From the zlib docs: --- -2.12.2 - diff --git a/gnu/packages/patches/mesa-skip-disk-cache-test.patch b/gnu/packages/patches/mesa-skip-disk-cache-test.patch index 4377110475..b3f9367fd5 100644 --- a/gnu/packages/patches/mesa-skip-disk-cache-test.patch +++ b/gnu/packages/patches/mesa-skip-disk-cache-test.patch @@ -5,16 +5,15 @@ for now. --- a/src/compiler/glsl/tests/cache_test.c +++ b/src/compiler/glsl/tests/cache_test.c -@@ -137,11 +137,6 @@ +@@ -170,11 +170,6 @@ unsetenv("MESA_GLSL_CACHE_DIR"); unsetenv("XDG_CACHE_HOME"); -- cache = disk_cache_create(); +- cache = disk_cache_create("test", "make_check"); - expect_non_null(cache, "disk_cache_create with no environment variables"); - - disk_cache_destroy(cache); - /* Test with XDG_CACHE_HOME set */ setenv("XDG_CACHE_HOME", CACHE_TEST_TMP "/xdg-cache-home", 1); - cache = disk_cache_create(); - + cache = disk_cache_create("test", "make_check"); From 910416c8741d7deec179100e1fa30711efb7a1bf Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 11 Jun 2017 01:45:21 +0200 Subject: [PATCH 0097/1227] gnu: alsa-lib: Update to 1.1.4.1. * gnu/packages/linux.scm (alsa-lib): Update to 1.1.4.1. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index d41dd7dc9e..8e17f29581 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -880,7 +880,7 @@ intercept and print the system calls executed by the program.") (define-public alsa-lib (package (name "alsa-lib") - (version "1.1.3") + (version "1.1.4.1") (source (origin (method url-fetch) (uri (string-append @@ -888,7 +888,7 @@ intercept and print the system calls executed by the program.") version ".tar.bz2")) (sha256 (base32 - "174n2psp0328xcy2f1ayls67598bxli6q9cf00d2qnac3012aa3i")))) + "0xjvi381105gldhv0z872a0x58sghznyx19j45lw5iyi2h68gfwi")))) (build-system gnu-build-system) (home-page "https://www.alsa-project.org/") (synopsis "The Advanced Linux Sound Architecture libraries") From 05ffd29d976d8f5eb8ad74b5cd2e419a79a3675c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 11 Jun 2017 22:47:00 +0200 Subject: [PATCH 0098/1227] gnu: shepherd: Switch to Guile 2.2. * gnu/packages/admin.scm (shepherd)[inputs]: Switch to GUILE-2.2. --- gnu/packages/admin.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 730fe052cd..79f1a4c2ba 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -164,7 +164,7 @@ and provides a \"top-like\" mode (monitoring).") (arguments '(#:configure-flags '("--localstatedir=/var"))) (native-inputs `(("pkg-config" ,pkg-config))) - (inputs `(("guile" ,guile-2.0))) + (inputs `(("guile" ,guile-2.2))) (synopsis "System service manager") (description "The GNU Shepherd is a daemon-managing daemon, meaning that it supervises From 2ac6998063c311799cefb8edbc5b0158230d3877 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 11 Jun 2017 22:50:43 +0200 Subject: [PATCH 0099/1227] build-system/gnu: Work around 'time-monotonic' bug in Guile 2.2.2. Fixes . Reported by Leo Famulari . * guix/build/gnu-build-system.scm (time-monotonic) [guile-2.2]: Define. --- guix/build/gnu-build-system.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm index 09f272edee..e37b751403 100644 --- a/guix/build/gnu-build-system.scm +++ b/guix/build/gnu-build-system.scm @@ -39,6 +39,13 @@ ;; ;; Code: +(cond-expand + (guile-2.2 + ;; Guile 2.2.2 has a bug whereby 'time-monotonic' objects have seconds and + ;; nanoseconds swapped (fixed in Guile commit 886ac3e). Work around it. + (define time-monotonic time-tai)) + (else #t)) + (define* (set-SOURCE-DATE-EPOCH #:rest _) "Set the 'SOURCE_DATE_EPOCH' environment variable. This is used by tools that incorporate timestamps as a way to tell them to use a fixed timestamp. From 70564e71bd499fe7711c95a7d88451efd92e9c8f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 11 Jun 2017 19:02:11 +0200 Subject: [PATCH 0100/1227] gnu: fontconfig: Update to 2.12.3. * gnu/packages/fontutils.scm (fontconfig): Update to 2.12.3. [source]: Remove obsolete patches. [native-inputs]: Add GPERF. [arguments]<#:phases>: Remove obsolete 'fix-tests-for-freetype-2.7.1' phase. Add 'regenerate-fcobjshash'. * gnu/packages/patches/fontconfig-charwidth-symbol-conflict.patch, gnu/packages/patches/fontconfig-path-max.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Remove them. --- gnu/local.mk | 2 - gnu/packages/fontutils.scm | 18 +-- ...fontconfig-charwidth-symbol-conflict.patch | 82 ------------ .../patches/fontconfig-path-max.patch | 124 ------------------ 4 files changed, 10 insertions(+), 216 deletions(-) delete mode 100644 gnu/packages/patches/fontconfig-charwidth-symbol-conflict.patch delete mode 100644 gnu/packages/patches/fontconfig-path-max.patch diff --git a/gnu/local.mk b/gnu/local.mk index b15cb2cf5c..3957e5b3d1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -587,8 +587,6 @@ dist_patch_DATA = \ %D%/packages/patches/flint-ldconfig.patch \ %D%/packages/patches/fltk-shared-lib-defines.patch \ %D%/packages/patches/fltk-xfont-on-demand.patch \ - %D%/packages/patches/fontconfig-charwidth-symbol-conflict.patch \ - %D%/packages/patches/fontconfig-path-max.patch \ %D%/packages/patches/fontforge-svg-modtime.patch \ %D%/packages/patches/freeimage-CVE-2015-0852.patch \ %D%/packages/patches/freeimage-CVE-2016-5684.patch \ diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index c5a69232ca..bd74c4d6aa 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -34,6 +34,7 @@ #:use-module (gnu packages bison) #:use-module (gnu packages flex) #:use-module (gnu packages glib) + #:use-module (gnu packages gperf) #:use-module (gnu packages xorg) #:use-module (gnu packages gtk) #:use-module (gnu packages xml) @@ -225,22 +226,21 @@ fonts to/from the WOFF2 format.") (define-public fontconfig (package (name "fontconfig") - (version "2.12.1") + (version "2.12.3") (source (origin (method url-fetch) (uri (string-append "https://www.freedesktop.org/software/fontconfig/release/fontconfig-" version ".tar.bz2")) - (patches (search-patches "fontconfig-charwidth-symbol-conflict.patch" - "fontconfig-path-max.patch")) (sha256 (base32 - "1wy7svvp7df6bjpg1m5vizb3ngd7rhb20vpclv3x3qa71khs6jdl")))) + "1ggq6jmz3mlzk4xjs615aqw9h3hq33chjn82bhli26kk09kby95x")))) (build-system gnu-build-system) (propagated-inputs `(("expat" ,expat) ("freetype" ,freetype))) (inputs `(("gs-fonts" ,gs-fonts))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("gperf" ,gperf) ; Try dropping this for > 2.12.3. + ("pkg-config" ,pkg-config))) (arguments `(#:configure-flags (list "--with-cache-dir=/var/cache/fontconfig" @@ -258,10 +258,12 @@ fonts to/from the WOFF2 format.") "PYTHON=false") #:phases (modify-phases %standard-phases - (add-after 'unpack 'fix-tests-for-freetype-2.7.1 + (add-before 'configure 'regenerate-fcobjshash + ;; XXX The pre-generated gperf files are broken. + ;; See . (lambda _ - (substitute* "test/run-test.sh" - (("\\\| sort") "| cut -d' ' -f2 | sort")) + (delete-file "src/fcobjshash.h") + (delete-file "src/fcobjshash.gperf") #t)) (replace 'install (lambda _ diff --git a/gnu/packages/patches/fontconfig-charwidth-symbol-conflict.patch b/gnu/packages/patches/fontconfig-charwidth-symbol-conflict.patch deleted file mode 100644 index 8ebe33bc6c..0000000000 --- a/gnu/packages/patches/fontconfig-charwidth-symbol-conflict.patch +++ /dev/null @@ -1,82 +0,0 @@ -The first patch is copied from the upstream source repository: - -https://cgit.freedesktop.org/fontconfig/commit/?id=1ab5258f7c2abfafcd63a760ca08bf93591912da - -The second patch is adapted from a message to from the OpenEmbedded mailing list: - -http://lists.openembedded.org/pipermail/openembedded-core/2016-December/130213.html - -From 1ab5258f7c2abfafcd63a760ca08bf93591912da Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 14 Dec 2016 16:11:05 -0800 -Subject: Avoid conflicts with integer width macros from TS 18661-1:2014 - -glibc 2.25+ has now defined these macros in -https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a - -Create an alias for FC_CHAR_WIDTH for ABI compatibility - -Signed-off-by: Khem Raj - -diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h -index 5c72b22..070a557 100644 ---- a/fontconfig/fontconfig.h -+++ b/fontconfig/fontconfig.h -@@ -128,7 +128,8 @@ typedef int FcBool; - #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION - - /* Adjust outline rasterizer */ --#define FC_CHAR_WIDTH "charwidth" /* Int */ -+#define FC_CHARWIDTH "charwidth" /* Int */ -+#define FC_CHAR_WIDTH FC_CHARWIDTH - #define FC_CHAR_HEIGHT "charheight"/* Int */ - #define FC_MATRIX "matrix" /* FcMatrix */ - -diff --git a/src/fcobjs.h b/src/fcobjs.h -index 1fc4f65..d27864b 100644 ---- a/src/fcobjs.h -+++ b/src/fcobjs.h -@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble, NULL) - FC_OBJECT (RGBA, FcTypeInteger, NULL) - FC_OBJECT (SCALE, FcTypeDouble, NULL) - FC_OBJECT (MINSPACE, FcTypeBool, NULL) --FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL) -+FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL) - FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL) - FC_OBJECT (MATRIX, FcTypeMatrix, NULL) - FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet) --- -cgit v0.10.2 - -From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sun, 11 Dec 2016 14:32:00 -0800 -Subject: [PATCH] Avoid conflicts with integer width macros from TS - 18661-1:2014 - -glibc 2.25+ has now defined these macros in -https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a - -Signed-off-by: Khem Raj ---- -Upstream-Status: Submitted - - fontconfig/fontconfig.h | 2 +- - src/fcobjs.h | 2 +- - src/fcobjshash.gperf | 2 +- - src/fcobjshash.h | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) - -Index: fontconfig-2.12.1/src/fcobjshash.h -=================================================================== ---- fontconfig-2.12.1.orig/src/fcobjshash.h -+++ fontconfig-2.12.1/src/fcobjshash.h -@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char - {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT}, - {-1}, - #line 47 "fcobjshash.gperf" -- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT}, -+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT}, - #line 48 "fcobjshash.gperf" - {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT}, - #line 55 "fcobjshash.gperf" diff --git a/gnu/packages/patches/fontconfig-path-max.patch b/gnu/packages/patches/fontconfig-path-max.patch deleted file mode 100644 index e12f60ef00..0000000000 --- a/gnu/packages/patches/fontconfig-path-max.patch +++ /dev/null @@ -1,124 +0,0 @@ -This patch fix the build on GNU/Hurd, due to PATH_MAX isn't defined. - -The patch was adapted from upstream source repository: -'' -Commit: abdb6d658e1a16410dd1c964e365a3ebd5039e7c - ---- - src/fcdefault.c | 34 +++++++++++++++++++++++++++------- - src/fcint.h | 6 ++++++ - src/fcstat.c | 12 +++++++++++- - 3 files changed, 44 insertions(+), 8 deletions(-) - -diff --git a/src/fcdefault.c b/src/fcdefault.c -index 6647a8f..5afd7ec 100644 ---- a/src/fcdefault.c -+++ b/src/fcdefault.c -@@ -148,17 +148,34 @@ retry: - prgname = FcStrdup (""); - #else - # if defined (HAVE_GETEXECNAME) -- const char *p = getexecname (); -+ char *p = FcStrdup(getexecname ()); - # elif defined (HAVE_READLINK) -- char buf[PATH_MAX + 1]; -- int len; -+ size_t size = FC_PATH_MAX; - char *p = NULL; - -- len = readlink ("/proc/self/exe", buf, sizeof (buf) - 1); -- if (len != -1) -+ while (1) - { -- buf[len] = '\0'; -- p = buf; -+ char *buf = malloc (size); -+ ssize_t len; -+ -+ if (!buf) -+ break; -+ -+ len = readlink ("/proc/self/exe", buf, size - 1); -+ if (len < 0) -+ { -+ free (buf); -+ break; -+ } -+ if (len < size - 1) -+ { -+ buf[len] = 0; -+ p = buf; -+ break; -+ } -+ -+ free (buf); -+ size *= 2; - } - # else - char *p = NULL; -@@ -176,6 +193,9 @@ retry: - - if (!prgname) - prgname = FcStrdup (""); -+ -+ if (p) -+ free (p); - #endif - - if (!fc_atomic_ptr_cmpexch (&default_prgname, NULL, prgname)) { -diff --git a/src/fcint.h b/src/fcint.h -index ac911ad..dad34c5 100644 ---- a/src/fcint.h -+++ b/src/fcint.h -@@ -70,6 +70,12 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA; - # define FC_DIR_SEPARATOR_S "/" - #endif - -+#ifdef PATH_MAX -+#define FC_PATH_MAX PATH_MAX -+#else -+#define FC_PATH_MAX 128 -+#endif -+ - #if __GNUC__ >= 4 - #define FC_UNUSED __attribute__((unused)) - #else -diff --git a/src/fcstat.c b/src/fcstat.c -index 1734fa4..f6e1aaa 100644 ---- a/src/fcstat.c -+++ b/src/fcstat.c -@@ -278,8 +278,13 @@ FcDirChecksum (const FcChar8 *dir, time_t *checksum) - { - #endif - struct stat statb; -- char f[PATH_MAX + 1]; -+ char *f = malloc (len + 1 + dlen + 1); - -+ if (!f) -+ { -+ ret = -1; -+ goto bail; -+ } - memcpy (f, dir, len); - f[len] = FC_DIR_SEPARATOR; - memcpy (&f[len + 1], files[n]->d_name, dlen); -@@ -287,11 +292,16 @@ FcDirChecksum (const FcChar8 *dir, time_t *checksum) - if (lstat (f, &statb) < 0) - { - ret = -1; -+ free (f); - goto bail; - } - if (S_ISDIR (statb.st_mode)) -+ { -+ free (f); - goto bail; -+ } - -+ free (f); - dtype = statb.st_mode; - #ifdef HAVE_STRUCT_DIRENT_D_TYPE - } --- -2.11.0 - From bd590b965e3abedb70024c17abad27b40c9f4916 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 4 Jun 2017 15:40:20 -0400 Subject: [PATCH 0101/1227] gnu: boost: Add ICU support. * gnu/packages/boost.scm (boost)[inputs]: Add icu4c. --- gnu/packages/boost.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index 5d2056fc7d..4c7308e9d6 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -28,9 +28,10 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages compression) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages perl) #:use-module (gnu packages python) - #:use-module (gnu packages shells) - #:use-module (gnu packages perl)) + #:use-module (gnu packages shells)) (define-public boost (package @@ -46,7 +47,8 @@ (base32 "0cikd35xfkpg9nnl76yqqnqxnf3hyfjjww8xjd4akflprsm5rk3v")))) (build-system gnu-build-system) - (inputs `(("zlib" ,zlib))) + (inputs `(("icu4c" ,icu4c) + ("zlib" ,zlib))) (native-inputs `(("perl" ,perl) ("python" ,python-2) From 0122a869ac7bba4cc1ac6f81c268dde33d8749f4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Jun 2017 10:21:17 -0400 Subject: [PATCH 0102/1227] gnu: swig: Update to 3.0.12. * gnu/packages/swig.scm (swig): Update to 3.0.12. --- gnu/packages/swig.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/swig.scm b/gnu/packages/swig.scm index acf0529377..59cff5199e 100644 --- a/gnu/packages/swig.scm +++ b/gnu/packages/swig.scm @@ -31,7 +31,7 @@ (define-public swig (package (name "swig") - (version "3.0.10") + (version "3.0.12") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/" name "/" name "/" @@ -39,7 +39,7 @@ name "-" version ".tar.gz")) (sha256 (base32 - "0k7ljh07rla6223lhvljgg881b2qr7hmrfgic9a0j1pckpislf99")))) + "0kf99ygrjs5616gsqhz1l7bib3a12izmxi7g48bwblbymr3z9ybw")))) (build-system gnu-build-system) (native-inputs `(("boost" ,boost) ("pcre" ,pcre "bin"))) ;for 'pcre-config' From 503c8c5882550005a7e9d3058a5f6d22f9c33f63 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Jun 2017 10:21:51 -0400 Subject: [PATCH 0103/1227] gnu: swig: Fix build with Perl 5.26.0. * gnu/packages/swig.scm (swig)[arguments]: Set PERL_USE_UNSAFE_INC in 'set-env' build phase. --- gnu/packages/swig.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/swig.scm b/gnu/packages/swig.scm index 59cff5199e..b931db412b 100644 --- a/gnu/packages/swig.scm +++ b/gnu/packages/swig.scm @@ -41,6 +41,14 @@ (base32 "0kf99ygrjs5616gsqhz1l7bib3a12izmxi7g48bwblbymr3z9ybw")))) (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-env + ;; Required since Perl 5.26.0's removal of the current + ;; working directory from @INC. + ;; TODO Try removing this for later versions of SWIG. + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t))))) (native-inputs `(("boost" ,boost) ("pcre" ,pcre "bin"))) ;for 'pcre-config' (inputs `(;; Provide these to run the corresponding tests. From 76cb906083bf750de6bed513824609b74cdbc5c8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Jun 2017 10:31:55 -0400 Subject: [PATCH 0104/1227] gnu: perl-net-ssleay: Update to 1.81. * gnu/packages/tls.scm (perl-net-ssleay): Update to 1.81. [native-inputs]: Remove 'perl-net-ssleay-disable-ede-test.patch'. [arguments]: Remove 'apply-patch' phase. * gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../perl-net-ssleay-disable-ede-test.patch | 23 ------------------- gnu/packages/tls.scm | 17 ++------------ 3 files changed, 2 insertions(+), 39 deletions(-) delete mode 100644 gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3957e5b3d1..e30fa34efe 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -868,7 +868,6 @@ dist_patch_DATA = \ %D%/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch \ %D%/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch \ %D%/packages/patches/perl-net-amazon-s3-moose-warning.patch \ - %D%/packages/patches/perl-net-ssleay-disable-ede-test.patch \ %D%/packages/patches/perl-net-dns-resolver-programmable-fix.patch \ %D%/packages/patches/perl-no-sys-dirs.patch \ %D%/packages/patches/perl-module-pluggable-search.patch \ diff --git a/gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch b/gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch deleted file mode 100644 index 16f136fb54..0000000000 --- a/gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch +++ /dev/null @@ -1,23 +0,0 @@ -Disable a test that fails with openssl-1.0.2b. - ---- Net-SSLeay-1.68/t/local/33_x509_create_cert.t.orig 2014-06-07 02:01:39.000000000 -0400 -+++ Net-SSLeay-1.68/t/local/33_x509_create_cert.t 2015-06-12 03:38:57.620286888 -0400 -@@ -2,7 +2,7 @@ - - use strict; - use warnings; --use Test::More tests => 123; -+use Test::More tests => 122; - use Net::SSLeay qw/MBSTRING_ASC MBSTRING_UTF8 EVP_PK_RSA EVP_PKT_SIGN EVP_PKT_ENC/; - use File::Spec; - use utf8; -@@ -101,7 +101,8 @@ - like(my $key_pem3 = Net::SSLeay::PEM_get_string_PrivateKey($pk,"password",$alg1), qr/-----BEGIN (ENCRYPTED|RSA) PRIVATE KEY-----/, "PEM_get_string_PrivateKey+passwd+enc_alg"); - - ok(my $alg2 = Net::SSLeay::EVP_get_cipherbyname("DES-EDE3-OFB"), "EVP_get_cipherbyname"); -- like(my $key_pem4 = Net::SSLeay::PEM_get_string_PrivateKey($pk,"password",$alg2), qr/-----BEGIN (ENCRYPTED|RSA) PRIVATE KEY-----/, "PEM_get_string_PrivateKey+passwd+enc_alg"); -+ # This test fails with openssl-1.0.2b -+ #like(my $key_pem4 = Net::SSLeay::PEM_get_string_PrivateKey($pk,"password",$alg2), qr/-----BEGIN (ENCRYPTED|RSA) PRIVATE KEY-----/, "PEM_get_string_PrivateKey+passwd+enc_alg"); - - is(Net::SSLeay::X509_NAME_print_ex($name), "O=Company Name,C=UK,CN=Common name text X509", "X509_NAME_print_ex"); - diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index e36a02a6cc..f3d7177102 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -587,32 +587,19 @@ certificates for free.") (define-public perl-net-ssleay (package (name "perl-net-ssleay") - (version "1.68") + (version "1.81") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MI/MIKEM/" "Net-SSLeay-" version ".tar.gz")) (sha256 (base32 - "1m2wwzhjwsg0drlhp9w12fl6bsgj69v8gdz72jqrqll3qr7f408p")))) + "0z8vya34g88bc41kx955sv7y4niwbbywji8liqbl52v29qbvdjq0")))) (build-system perl-build-system) - (native-inputs - `(("patch" ,patch) - ("patch/disable-ede-test" - ,(search-patch "perl-net-ssleay-disable-ede-test.patch")))) (inputs `(("openssl" ,openssl))) (arguments `(#:phases (modify-phases %standard-phases - (add-after - 'unpack 'apply-patch - (lambda* (#:key inputs #:allow-other-keys) - ;; XXX We apply this patch here instead of in the 'origin' because - ;; this package's build system fails badly when the source file - ;; times are zeroed. - ;; XXX Try removing this patch for perl-net-ssleay > 1.68 - (zero? (system* "patch" "--force" "-p1" "-i" - (assoc-ref inputs "patch/disable-ede-test"))))) (add-before 'configure 'set-ssl-prefix (lambda* (#:key inputs #:allow-other-keys) From 94522776fba2c31cde96b5f0780d0e6995fb8c92 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Jun 2017 10:34:33 -0400 Subject: [PATCH 0105/1227] gnu: libspectre: Update to 0.2.8. * gnu/packages/ghostscript.scm (libspectre): Update to 0.2.8. --- gnu/packages/ghostscript.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index e0ae9bab6f..136484e6af 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -309,13 +309,13 @@ Ghostscript. It currently includes the 35 standard PostScript fonts.") (define-public libspectre (package (name "libspectre") - (version "0.2.7") + (version "0.2.8") (source (origin (method url-fetch) (uri (string-append "https://libspectre.freedesktop.org/releases/libspectre-" version ".tar.gz")) (sha256 (base32 - "1v63lqc6bhhxwkpa43qmz8phqs8ci4dhzizyy16d3vkb20m846z8")))) + "1a67iglsc3r05mzngyg9kb1gy8whq4fgsnyjwi7bqfw2i7rnl9b5")))) (build-system gnu-build-system) (inputs `(("ghostscript" ,ghostscript))) (native-inputs `(("pkg-config" ,pkg-config))) From f61d39ac0b4392441cbc497791ed5530568fc9d6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Jun 2017 10:36:50 -0400 Subject: [PATCH 0106/1227] gnu: perl-authen-sasl: Fix build with Perl 5.26.0. * gnu/packages/web.scm (perl-authen-sasl)[arguments]: Set PERL_USE_UNSAFE_INC in 'set-env' build phase. --- gnu/packages/web.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 5f27ef957d..398fdf3ae7 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1026,6 +1026,13 @@ to perl-code, for faster generation of access_log lines.") (base32 "02afhlrdq5hh5g8b32fa79fqq5i76qzwfqqvfi9zi57h31szl536")))) (build-system perl-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-env + ;; Fix the build with Perl 5.26.0. Try removing this phase for later + ;; versions of perl-authen-sasl. + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t))))) (propagated-inputs `(("perl-digest-hmac" ,perl-digest-hmac) ("perl-gssapi" ,perl-gssapi))) From 14c7790f1ad845b7e1932d6a700a1fb25f110608 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 15 Jun 2017 11:35:17 -0400 Subject: [PATCH 0107/1227] gnu: libtiff: Fix several bugs related to improper codec usage [security fixes]. This commit applies the patch to the libtiff package, not the grafting replacement. * gnu/packages/patches/libtiff-tiffgetfield-bugs.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/image.scm (libtiff)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/image.scm | 1 + .../patches/libtiff-tiffgetfield-bugs.patch | 201 ++++++++++++++++++ 3 files changed, 203 insertions(+) create mode 100644 gnu/packages/patches/libtiff-tiffgetfield-bugs.patch diff --git a/gnu/local.mk b/gnu/local.mk index e30fa34efe..1d5c98094c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -743,6 +743,7 @@ dist_patch_DATA = \ %D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \ %D%/packages/patches/libtheora-config-guess.patch \ + %D%/packages/patches/libtiff-tiffgetfield-bugs.patch \ %D%/packages/patches/libtirpc-CVE-2017-8779.patch \ %D%/packages/patches/libtorrent-rasterbar-boost-compat.patch \ %D%/packages/patches/libtool-skip-tests2.patch \ diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index da05c64545..c35a6d3b39 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -341,6 +341,7 @@ extracting icontainer icon files.") (method url-fetch) (uri (string-append "ftp://download.osgeo.org/libtiff/tiff-" version ".tar.gz")) + (patches (search-patches "libtiff-tiffgetfield-bugs.patch")) (sha256 (base32 "0419mh6kkhz5fkyl77gv0in8x4d2jpdpfs147y8mj86rrjlabmsr")))) diff --git a/gnu/packages/patches/libtiff-tiffgetfield-bugs.patch b/gnu/packages/patches/libtiff-tiffgetfield-bugs.patch new file mode 100644 index 0000000000..84566ca23e --- /dev/null +++ b/gnu/packages/patches/libtiff-tiffgetfield-bugs.patch @@ -0,0 +1,201 @@ +Fix several bugs in libtiff related to use of TIFFGetField(): + +http://bugzilla.maptools.org/show_bug.cgi?id=2580 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-8128 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-7554 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5318 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10095 + +Patch copied from upstream CVS. 3rd-party Git reference: +https://github.com/vadz/libtiff/commit/4d4fa0b68ae9ae038959ee4f69ebe288ec892f06 + +2017-06-01 Even Rouault + +* libtiff/tif_dirinfo.c, tif_dirread.c: add _TIFFCheckFieldIsValidForCodec(), +and use it in TIFFReadDirectory() so as to ignore fields whose tag is a +codec-specified tag but this codec is not enabled. This avoids TIFFGetField() +to behave differently depending on whether the codec is enabled or not, and +thus can avoid stack based buffer overflows in a number of TIFF utilities +such as tiffsplit, tiffcmp, thumbnail, etc. +Patch derived from 0063-Handle-properly-CODEC-specific-tags.patch +(http://bugzilla.maptools.org/show_bug.cgi?id=2580) by Raphaël Hertzog. +Fixes: +http://bugzilla.maptools.org/show_bug.cgi?id=2580 +http://bugzilla.maptools.org/show_bug.cgi?id=2693 +http://bugzilla.maptools.org/show_bug.cgi?id=2625 (CVE-2016-10095) +http://bugzilla.maptools.org/show_bug.cgi?id=2564 (CVE-2015-7554) +http://bugzilla.maptools.org/show_bug.cgi?id=2561 (CVE-2016-5318) +http://bugzilla.maptools.org/show_bug.cgi?id=2499 (CVE-2014-8128) +http://bugzilla.maptools.org/show_bug.cgi?id=2441 +http://bugzilla.maptools.org/show_bug.cgi?id=2433 +Index: libtiff/libtiff/tif_dirread.c +=================================================================== +RCS file: /cvs/maptools/cvsroot/libtiff/libtiff/tif_dirread.c,v +retrieving revision 1.208 +retrieving revision 1.209 +diff -u -r1.208 -r1.209 +--- libtiff/libtiff/tif_dirread.c 27 Apr 2017 15:46:22 -0000 1.208 ++++ libtiff/libtiff/tif_dirread.c 1 Jun 2017 12:44:04 -0000 1.209 +@@ -1,4 +1,4 @@ +-/* $Id: tif_dirread.c,v 1.208 2017-04-27 15:46:22 erouault Exp $ */ ++/* $Id: tif_dirread.c,v 1.209 2017-06-01 12:44:04 erouault Exp $ */ + + /* + * Copyright (c) 1988-1997 Sam Leffler +@@ -3580,6 +3580,10 @@ + goto bad; + dp->tdir_tag=IGNORE; + break; ++ default: ++ if( !_TIFFCheckFieldIsValidForCodec(tif, dp->tdir_tag) ) ++ dp->tdir_tag=IGNORE; ++ break; + } + } + } +Index: libtiff/libtiff/tif_dirinfo.c +=================================================================== +RCS file: /cvs/maptools/cvsroot/libtiff/libtiff/tif_dirinfo.c,v +retrieving revision 1.126 +retrieving revision 1.127 +diff -u -r1.126 -r1.127 +--- libtiff/libtiff/tif_dirinfo.c 18 Nov 2016 02:52:13 -0000 1.126 ++++ libtiff/libtiff/tif_dirinfo.c 1 Jun 2017 12:44:04 -0000 1.127 +@@ -1,4 +1,4 @@ +-/* $Id: tif_dirinfo.c,v 1.126 2016-11-18 02:52:13 bfriesen Exp $ */ ++/* $Id: tif_dirinfo.c,v 1.127 2017-06-01 12:44:04 erouault Exp $ */ + + /* + * Copyright (c) 1988-1997 Sam Leffler +@@ -956,6 +956,109 @@ + return 0; + } + ++int ++_TIFFCheckFieldIsValidForCodec(TIFF *tif, ttag_t tag) ++{ ++ /* Filter out non-codec specific tags */ ++ switch (tag) { ++ /* Shared tags */ ++ case TIFFTAG_PREDICTOR: ++ /* JPEG tags */ ++ case TIFFTAG_JPEGTABLES: ++ /* OJPEG tags */ ++ case TIFFTAG_JPEGIFOFFSET: ++ case TIFFTAG_JPEGIFBYTECOUNT: ++ case TIFFTAG_JPEGQTABLES: ++ case TIFFTAG_JPEGDCTABLES: ++ case TIFFTAG_JPEGACTABLES: ++ case TIFFTAG_JPEGPROC: ++ case TIFFTAG_JPEGRESTARTINTERVAL: ++ /* CCITT* */ ++ case TIFFTAG_BADFAXLINES: ++ case TIFFTAG_CLEANFAXDATA: ++ case TIFFTAG_CONSECUTIVEBADFAXLINES: ++ case TIFFTAG_GROUP3OPTIONS: ++ case TIFFTAG_GROUP4OPTIONS: ++ break; ++ default: ++ return 1; ++ } ++ /* Check if codec specific tags are allowed for the current ++ * compression scheme (codec) */ ++ switch (tif->tif_dir.td_compression) { ++ case COMPRESSION_LZW: ++ if (tag == TIFFTAG_PREDICTOR) ++ return 1; ++ break; ++ case COMPRESSION_PACKBITS: ++ /* No codec-specific tags */ ++ break; ++ case COMPRESSION_THUNDERSCAN: ++ /* No codec-specific tags */ ++ break; ++ case COMPRESSION_NEXT: ++ /* No codec-specific tags */ ++ break; ++ case COMPRESSION_JPEG: ++ if (tag == TIFFTAG_JPEGTABLES) ++ return 1; ++ break; ++ case COMPRESSION_OJPEG: ++ switch (tag) { ++ case TIFFTAG_JPEGIFOFFSET: ++ case TIFFTAG_JPEGIFBYTECOUNT: ++ case TIFFTAG_JPEGQTABLES: ++ case TIFFTAG_JPEGDCTABLES: ++ case TIFFTAG_JPEGACTABLES: ++ case TIFFTAG_JPEGPROC: ++ case TIFFTAG_JPEGRESTARTINTERVAL: ++ return 1; ++ } ++ break; ++ case COMPRESSION_CCITTRLE: ++ case COMPRESSION_CCITTRLEW: ++ case COMPRESSION_CCITTFAX3: ++ case COMPRESSION_CCITTFAX4: ++ switch (tag) { ++ case TIFFTAG_BADFAXLINES: ++ case TIFFTAG_CLEANFAXDATA: ++ case TIFFTAG_CONSECUTIVEBADFAXLINES: ++ return 1; ++ case TIFFTAG_GROUP3OPTIONS: ++ if (tif->tif_dir.td_compression == COMPRESSION_CCITTFAX3) ++ return 1; ++ break; ++ case TIFFTAG_GROUP4OPTIONS: ++ if (tif->tif_dir.td_compression == COMPRESSION_CCITTFAX4) ++ return 1; ++ break; ++ } ++ break; ++ case COMPRESSION_JBIG: ++ /* No codec-specific tags */ ++ break; ++ case COMPRESSION_DEFLATE: ++ case COMPRESSION_ADOBE_DEFLATE: ++ if (tag == TIFFTAG_PREDICTOR) ++ return 1; ++ break; ++ case COMPRESSION_PIXARLOG: ++ if (tag == TIFFTAG_PREDICTOR) ++ return 1; ++ break; ++ case COMPRESSION_SGILOG: ++ case COMPRESSION_SGILOG24: ++ /* No codec-specific tags */ ++ break; ++ case COMPRESSION_LZMA: ++ if (tag == TIFFTAG_PREDICTOR) ++ return 1; ++ break; ++ ++ } ++ return 0; ++} ++ + /* vim: set ts=8 sts=8 sw=8 noet: */ + + /* +Index: libtiff/libtiff/tif_dir.h +=================================================================== +RCS file: /cvs/maptools/cvsroot/libtiff/libtiff/tif_dir.h,v +retrieving revision 1.54 +retrieving revision 1.55 +diff -u -r1.54 -r1.55 +--- libtiff/libtiff/tif_dir.h 18 Feb 2011 20:53:05 -0000 1.54 ++++ libtiff/libtiff/tif_dir.h 1 Jun 2017 12:44:04 -0000 1.55 +@@ -1,4 +1,4 @@ +-/* $Id: tif_dir.h,v 1.54 2011-02-18 20:53:05 fwarmerdam Exp $ */ ++/* $Id: tif_dir.h,v 1.55 2017-06-01 12:44:04 erouault Exp $ */ + + /* + * Copyright (c) 1988-1997 Sam Leffler +@@ -291,6 +291,7 @@ + extern int _TIFFMergeFields(TIFF*, const TIFFField[], uint32); + extern const TIFFField* _TIFFFindOrRegisterField(TIFF *, uint32, TIFFDataType); + extern TIFFField* _TIFFCreateAnonField(TIFF *, uint32, TIFFDataType); ++extern int _TIFFCheckFieldIsValidForCodec(TIFF *tif, ttag_t tag); + + #if defined(__cplusplus) + } From a6aff3528c32cc921bddd78b254678a1fc121f21 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 15 Jun 2017 11:41:51 -0400 Subject: [PATCH 0108/1227] gnu: libtiff: Build with the default compiler. The relevant bug has been fixed and this special-case workaround is no longer necessary. * gnu/packages/image.scm (libtiff)[native-inputs]: Remove field. --- gnu/packages/image.scm | 3 --- 1 file changed, 3 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index c35a6d3b39..317b1a0a30 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -354,9 +354,6 @@ extracting icontainer icon files.") (assoc-ref %outputs "doc") "/share/doc/" ,name "-" ,version)))) - ;; Build with a patched GCC to work around . - (native-inputs - `(("gcc@5" ,gcc-5))) (inputs `(("zlib" ,zlib) ("libjpeg" ,libjpeg))) (synopsis "Library for handling TIFF files") From 05e26d1ecd41bdac5ef531b9f6f5c0c6bfbf3a30 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 18 Jun 2017 02:38:43 -0400 Subject: [PATCH 0109/1227] gnu: expat: Eliminate graft. * gnu/packages/xml.scm (expat): Update to 2.2.1. [source]: Remove patch. [replacement]: Remove field. (expat-2.2.1): Remove variable. * gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../expat-CVE-2016-0718-fix-regression.patch | 35 ------------------- gnu/packages/xml.scm | 20 ++--------- 3 files changed, 2 insertions(+), 54 deletions(-) delete mode 100644 gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch diff --git a/gnu/local.mk b/gnu/local.mk index 20351f3cd0..4acc699753 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -571,7 +571,6 @@ dist_patch_DATA = \ %D%/packages/patches/emacs-source-date-epoch.patch \ %D%/packages/patches/eudev-rules-directory.patch \ %D%/packages/patches/evilwm-lost-focus-bug.patch \ - %D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch \ %D%/packages/patches/fabric-tests.patch \ %D%/packages/patches/fastcap-mulGlobal.patch \ %D%/packages/patches/fastcap-mulSetup.patch \ diff --git a/gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch b/gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch deleted file mode 100644 index b489401fea..0000000000 --- a/gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch +++ /dev/null @@ -1,35 +0,0 @@ -Fix regression caused by fix for CVE-2016-0718 when building with -DXML_UNICODE. - -Discussion: - -https://sourceforge.net/p/expat/bugs/539/ - -Patch copied from upstream source repository: - -https://sourceforge.net/p/expat/code_git/ci/af507cef2c93cb8d40062a0abe43a4f4e9158fb2/ - -From af507cef2c93cb8d40062a0abe43a4f4e9158fb2 Mon Sep 17 00:00:00 2001 -From: Sebastian Pipping -Date: Sun, 17 Jul 2016 20:22:29 +0200 -Subject: [PATCH 1/2] Fix regression bug #539 (needs -DXML_UNICODE) - -Thanks to Andy Wang and Karl Waclawek! ---- - expat/lib/xmlparse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c -index b308e67..0d5dd7b 100644 ---- a/lib/xmlparse.c -+++ b/lib/xmlparse.c -@@ -2468,7 +2468,7 @@ doContent(XML_Parser parser, - &fromPtr, rawNameEnd, - (ICHAR **)&toPtr, (ICHAR *)tag->bufEnd - 1); - convLen = (int)(toPtr - (XML_Char *)tag->buf); -- if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) { -+ if ((fromPtr >= rawNameEnd) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) { - tag->name.strLen = convLen; - break; - } --- -2.10.0 diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index a6bea3588f..4ed45508fd 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -55,17 +55,14 @@ (define-public expat (package (name "expat") - (version "2.2.0") - (replacement expat-2.2.1) + (version "2.2.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/expat/expat/" version "/expat-" version ".tar.bz2")) - (patches - (search-patches "expat-CVE-2016-0718-fix-regression.patch")) (sha256 (base32 - "1zq4lnwjlw8s9mmachwfvfjf2x3lk24jm41746ykhdcvs7r0zrfr")))) + "11c8jy1wvllvlk7xdc5cm8hdhg0hvs8j0aqy6s702an8wkdcls0q")))) (build-system gnu-build-system) (home-page "http://www.libexpat.org/") (synopsis "Stream-oriented XML parser library written in C") @@ -75,19 +72,6 @@ stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags).") (license license:expat))) -(define expat-2.2.1 ; Fixes CVE-2017-9233, CVE-2016-9063 and other issues. - (package - (inherit expat) - (version "2.2.1") - (replacement #f) - (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/expat/expat/" - version "/expat-" version ".tar.bz2")) - (sha256 - (base32 - "11c8jy1wvllvlk7xdc5cm8hdhg0hvs8j0aqy6s702an8wkdcls0q")))))) - (define-public libxml2 (package (name "libxml2") From e46e9573855d5ee4f71db0ce77159bbc636330c1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 13 Jun 2017 10:24:57 +0300 Subject: [PATCH 0110/1227] gnu: python: Skip one more test. * gnu/packages/python.scm (python)[source]: Remove another test. --- gnu/packages/python.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 1373e4bb75..505e4a813b 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -340,8 +340,11 @@ data types.") (base32 "1c6v1n9nz4mlx9mw1125fxpmbrgniqdbbx9hnqx44maqazb2mzpf")) (snippet - '(delete-file - "Lib/ctypes/test/test_win32.py")))) ; fails on aarch64 + '(begin + (for-each delete-file + '("Lib/ctypes/test/test_win32.py" ; fails on aarch64 + "Lib/test/test_fcntl.py")) + #t)))) (arguments (substitute-keyword-arguments (package-arguments python-2) ((#:tests? _) #t))) (native-search-paths From a9308efec642bfbce480545a22fce848e6212456 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 20 Jun 2017 00:29:31 -0400 Subject: [PATCH 0111/1227] gnu: guile-2.2/fixed: Increase timeout and max-silent-time. * gnu/packages/guile.scm (guile-2.2/fixed)[properties]: Add 'timeout' and 'max-silent-time' properties. --- gnu/packages/guile.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 5577ad98e7..85faec6c47 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -255,7 +255,10 @@ without requiring the source code to be rewritten.") ;; in the `base' module, and thus changing it entails a full rebuild. (package (inherit guile-2.2) - (properties '((hidden? . #t))) ;people should install 'guile-2.2' + (properties '((hidden? . #t) ;people should install 'guile-2.2' + (timeout . 72000) ;20 hours + (max-silent-time . 36000))) ;10 hours (needed on ARM + ; when heavily loaded) (replacement #f))) (define-public guile-next From 60724d69752b24ab3b6b4501925e62726316d28c Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 26 Jun 2017 22:43:39 +0200 Subject: [PATCH 0112/1227] gnu: python-pytest: Build with 'bash' instead of 'bash-final'. Addresses FTBFS after 704243e0c6ec5ac86e2f45aaa469717e60b89124. * gnu/packages/python.scm (python-pytest)[native-inputs]: Add BASH. (python-pytest-3.0)[native-inputs]: Inherit. --- gnu/packages/python.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index cbef0e6812..ef7b92bd48 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1877,7 +1877,9 @@ code introspection, and logging.") (propagated-inputs `(("python-py" ,python-py))) (native-inputs - `(("python-nose" ,python-nose) + `(;; Tests need the "regular" bash since 'bash-final' lacks `compgen`. + ("bash" ,bash) + ("python-nose" ,python-nose) ("python-mock" ,python-mock))) (home-page "http://pytest.org") (synopsis "Python testing library") @@ -1914,9 +1916,8 @@ and many external plugins.") line))) #t))))) (native-inputs - `(("python-nose" ,python-nose) - ("python-mock" ,python-mock) - ("python-hypothesis" ,python-hypothesis))) + `(("python-hypothesis" ,python-hypothesis) + ,@(package-native-inputs python-pytest))) (properties `((python2-variant . ,(delay python2-pytest-3.0)))))) (define-public python2-pytest-3.0 From 503a4df904b8d4b82caebdb17db9c5f76a952418 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 29 Jun 2017 12:53:14 +0200 Subject: [PATCH 0113/1227] gnu: glibc/linux: Add patches for CVE-2017-1000366. * gnu/packages/patches/glibc-CVE-2017-1000366-pt1.patch, gnu/packages/patches/glibc-CVE-2017-1000366-pt2.patch, gnu/packages/patches/glibc-CVE-2017-1000366-pt3.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/base.scm (glibc/linux)[source](patches): Add them. [replacement]: Remove. (glibc-2.25-patched): Remove. (glibc-2.24, glibc-2.23, glibc-2.22, glibc-2.21) (glibc-locales): Remove 'replacement' field. --- gnu/packages/base.scm | 25 ++++--------------------- 1 file changed, 4 insertions(+), 21 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index e81516d23e..ecde178335 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -514,7 +514,6 @@ store.") (package (name "glibc") (version "2.25") - (replacement glibc-2.25-patched) (source (origin (method url-fetch) (uri (string-append "mirror://gnu/glibc/glibc-" @@ -533,7 +532,10 @@ store.") (patches (search-patches "glibc-ldd-x86_64.patch" "glibc-versioned-locpath.patch" "glibc-o-largefile.patch" - "glibc-memchr-overflow-i686.patch")))) + "glibc-memchr-overflow-i686.patch" + "glibc-CVE-2017-1000366-pt1.patch" + "glibc-CVE-2017-1000366-pt2.patch" + "glibc-CVE-2017-1000366-pt3.patch")))) (build-system gnu-build-system) ;; Glibc's refers to , for instance, so glibc @@ -769,20 +771,6 @@ GLIBC/HURD for a Hurd host" (define-syntax glibc (identifier-syntax (glibc-for-target))) -(define glibc-2.25-patched - (package - (inherit glibc) - (replacement #f) - (source (origin - (inherit (package-source glibc)) - (patches (search-patches "glibc-ldd-x86_64.patch" - "glibc-versioned-locpath.patch" - "glibc-o-largefile.patch" - "glibc-vectorized-strcspn-guards.patch" - "glibc-CVE-2017-1000366-pt1.patch" - "glibc-CVE-2017-1000366-pt2.patch" - "glibc-CVE-2017-1000366-pt3.patch")))))) - ;; Below are old libc versions, which we use mostly to build locale data in ;; the old format (which the new libc cannot cope with.) @@ -790,7 +778,6 @@ GLIBC/HURD for a Hurd host" (package (inherit glibc) (version "2.24") - (replacement #f) (source (origin (inherit (package-source glibc)) (uri (string-append "mirror://gnu/glibc/glibc-" @@ -810,7 +797,6 @@ GLIBC/HURD for a Hurd host" (package (inherit glibc) (version "2.23") - (replacement #f) (source (origin (inherit (package-source glibc)) (uri (string-append "mirror://gnu/glibc/glibc-" @@ -830,7 +816,6 @@ GLIBC/HURD for a Hurd host" (package (inherit glibc) (version "2.22") - (replacement #f) (source (origin (inherit (package-source glibc)) (uri (string-append "mirror://gnu/glibc/glibc-" @@ -858,7 +843,6 @@ GLIBC/HURD for a Hurd host" (package (inherit glibc-2.22) (version "2.21") - (replacement #f) (source (origin (inherit (package-source glibc-2.22)) (uri (string-append "mirror://gnu/glibc/glibc-" @@ -871,7 +855,6 @@ GLIBC/HURD for a Hurd host" (package (inherit glibc) (name "glibc-locales") - (replacement #f) (source (origin (inherit (package-source glibc)) (patches (cons (search-patch "glibc-locales.patch") (origin-patches (package-source glibc)))))) From 92cb946bd9d78cb8f6aa8418d505f52da6894ab4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Jun 2017 11:42:38 -0400 Subject: [PATCH 0114/1227] gnu: intltool: Fix a compatibility issue with Perl 5.26.0. * gnu/packages/patches/intltool-perl-compatibility.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/glib.scm (intltool)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/glib.scm | 1 + .../patches/intltool-perl-compatibility.patch | 76 +++++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 gnu/packages/patches/intltool-perl-compatibility.patch diff --git a/gnu/local.mk b/gnu/local.mk index 5328a80637..54c099b5e3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -682,6 +682,7 @@ dist_patch_DATA = \ %D%/packages/patches/icu4c-reset-keyword-list-iterator.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \ + %D%/packages/patches/intltool-perl-compatibility.patch \ %D%/packages/patches/isl-0.11.1-aarch64-support.patch \ %D%/packages/patches/jbig2dec-ignore-testtest.patch \ %D%/packages/patches/jbig2dec-CVE-2016-9601.patch \ diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index fcd1daf5e8..926703e159 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -347,6 +347,7 @@ bindings to call into the C library.") (uri (string-append "https://launchpad.net/intltool/trunk/" version "/+download/intltool-" version ".tar.gz")) + (patches (search-patches "intltool-perl-compatibility.patch")) (sha256 (base32 "1karx4sb7bnm2j67q0q74hspkfn6lqprpy5r99vkn5bb36a4viv7")))) diff --git a/gnu/packages/patches/intltool-perl-compatibility.patch b/gnu/packages/patches/intltool-perl-compatibility.patch new file mode 100644 index 0000000000..b895ca7cb9 --- /dev/null +++ b/gnu/packages/patches/intltool-perl-compatibility.patch @@ -0,0 +1,76 @@ +This patch fixes a regex parsing compatibility issue with Perl 5.26.0. +It manifests during the configure phase of at-spi2-core like this: + +------ +Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/^(.*)\${ <-- HERE ?([A-Z_]+)}?(.*)$/ at /gnu/store/...-intltool-0.51.0/bin/intltool-update line 1065. +------ + +Copied from Gentoo and MSYS2: + +https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-util/intltool/files/intltool-0.51.0-perl-5.26.patch?id=1105187fc65d8bf643e682fcef39620dcfd9326a +https://github.com/Alexpux/MSYS2-packages/blob/0d3f442553ae4fc8798e32cbf44c4252fa8f3c07/intltool/perl-5.22-compatibility.patch + +#diff -ruN intltool-0.51.0.orig/intltool-update.in intltool-0.51.0/intltool-update.in +#--- intltool-0.51.0.orig/intltool-update.in 2017-06-28 00:47:20.889269294 +0200 +#+++ intltool-0.51.0/intltool-update.in 2017-06-28 00:48:14.592271529 +0200 +#@@ -1068,7 +1068,7 @@ +# my $untouched = $1; +# my $sub = ""; +# # Ignore recursive definitions of variables +#- $sub = $varhash{$2} if defined $varhash{$2} and $varhash{$2} !~ /\${?$2}?/; +#+ $sub = $varhash{$2} if defined $varhash{$2} and $varhash{$2} !~ /\$\{?$2}?/; +# +# return SubstituteVariable ("$untouched$sub$rest"); +# } +--- intltool-0.51.0.orig/intltool-update.in 2015-03-09 02:39:54.000000000 +0100 ++++ intltool-0.51.0.orig/intltool-update.in 2015-06-19 01:52:07.171228154 +0200 +@@ -1062,7 +1062,7 @@ + } + } + +- if ($str =~ /^(.*)\${?([A-Z_]+)}?(.*)$/) ++ if ($str =~ /^(.*)\$\{?([A-Z_]+)}?(.*)$/) + { + my $rest = $3; + my $untouched = $1; +@@ -1068,7 +1068,7 @@ + my $untouched = $1; + my $sub = ""; + # Ignore recursive definitions of variables +- $sub = $varhash{$2} if defined $varhash{$2} and $varhash{$2} !~ /\${?$2}?/; ++ $sub = $varhash{$2} if defined $varhash{$2} and $varhash{$2} !~ /\$\{?$2}?/; + + return SubstituteVariable ("$untouched$sub$rest"); + } +@@ -1190,10 +1190,10 @@ + $name =~ s/\(+$//g; + $version =~ s/\(+$//g; + +- $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\${?AC_PACKAGE_NAME}?/); +- $varhash{"PACKAGE"} = $name if (not $name =~ /\${?PACKAGE}?/); +- $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\${?AC_PACKAGE_VERSION}?/); +- $varhash{"VERSION"} = $version if (not $name =~ /\${?VERSION}?/); ++ $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\$\{?AC_PACKAGE_NAME}?/); ++ $varhash{"PACKAGE"} = $name if (not $name =~ /\$\{?PACKAGE}?/); ++ $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\$\{?AC_PACKAGE_VERSION}?/); ++ $varhash{"VERSION"} = $version if (not $name =~ /\$\{?VERSION}?/); + } + + if ($conf_source =~ /^AC_INIT\(([^,\)]+),([^,\)]+)[,]?([^,\)]+)?/m) +@@ -1219,11 +1219,11 @@ + $version =~ s/\(+$//g; + $bugurl =~ s/\(+$//g if (defined $bugurl); + +- $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\${?AC_PACKAGE_NAME}?/); +- $varhash{"PACKAGE"} = $name if (not $name =~ /\${?PACKAGE}?/); +- $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\${?AC_PACKAGE_VERSION}?/); +- $varhash{"VERSION"} = $version if (not $name =~ /\${?VERSION}?/); +- $varhash{"PACKAGE_BUGREPORT"} = $bugurl if (defined $bugurl and not $bugurl =~ /\${?\w+}?/); ++ $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\$\{?AC_PACKAGE_NAME}?/); ++ $varhash{"PACKAGE"} = $name if (not $name =~ /\$\{?PACKAGE}?/); ++ $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\$\{?AC_PACKAGE_VERSION}?/); ++ $varhash{"VERSION"} = $version if (not $name =~ /\$\{?VERSION}?/); ++ $varhash{"PACKAGE_BUGREPORT"} = $bugurl if (defined $bugurl and not $bugurl =~ /\$\{?\w+}?/); + } + + # \s makes this not work, why? From 6b86ad153f558864ebfd9d9cc431ba8b653508de Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 29 Jun 2017 18:02:50 -0400 Subject: [PATCH 0115/1227] gnu: libgcrypt: Integrate grafted update. * gnu/packages/gnupg.scm (libgcrypt): Update to 1.7.8. [replacement]: Remove field. (libgcrypt-1.7.8): Remove variable. (libgcrypt-1.5)[replacement]: Remove field. --- gnu/packages/gnupg.scm | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 8b6069ec63..8a1ea37b5a 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -82,15 +82,14 @@ Daemon and possibly more in the future.") (define-public libgcrypt (package (name "libgcrypt") - (replacement libgcrypt-1.7.8) - (version "1.7.7") + (version "1.7.8") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" version ".tar.bz2")) (sha256 (base32 - "16ndaj93asw122mwjz172x2ilpm03w1yp5mqcrp3xslk0yx5xf5r")))) + "16f1rsv4y4w2pk1il2jbcqggsb6mrlfva5vayd205fp68zm7d0ll")))) (build-system gnu-build-system) (propagated-inputs `(("libgpg-error-host" ,libgpg-error))) @@ -116,22 +115,8 @@ generation.") (properties '((ftp-server . "ftp.gnupg.org") (ftp-directory . "/gcrypt/libgcrypt"))))) -(define libgcrypt-1.7.8 - (package - (inherit libgcrypt) - (replacement #f) - (version "1.7.8") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" - version ".tar.bz2")) - (sha256 - (base32 - "16f1rsv4y4w2pk1il2jbcqggsb6mrlfva5vayd205fp68zm7d0ll")))))) - (define-public libgcrypt-1.5 (package (inherit libgcrypt) - (replacement #f) (version "1.5.6") (source (origin From c74acb569c7930b3c859b08094fca2d3b0f83e3d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 29 Jun 2017 18:06:02 -0400 Subject: [PATCH 0116/1227] gnu: poppler: Integrate grafted update. * gnu/packages/pdf.scm (poppler): Update to 0.56.0. [replacement]: Remove field. (poppler-qt4, poppler-qt5): Use (inherit) instead of (package/inherit). --- gnu/packages/pdf.scm | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index dce02a7b57..0993543c20 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -76,15 +76,14 @@ (define-public poppler (package (name "poppler") - (replacement poppler-0.56.0) - (version "0.52.0") + (version "0.56.0") (source (origin (method url-fetch) (uri (string-append "https://poppler.freedesktop.org/poppler-" version ".tar.xz")) (sha256 (base32 - "14hrrac2f1phi5j0qn283457w06vsp9gr075yqjrm7w370bnd2sj")))) + "0wviayidfv2ix2ql0d4nl9r1ia6qi5kc1nybd9vjx27dk7gvm7c6")))) (build-system gnu-build-system) ;; FIXME: ;; use libcurl: no @@ -130,27 +129,15 @@ (license license:gpl2+) (home-page "https://poppler.freedesktop.org/"))) -(define poppler-0.56.0 - (package (inherit poppler) - (version "0.56.0") - (source - (origin - (method url-fetch) - (uri (string-append "https://poppler.freedesktop.org/poppler-" - version ".tar.xz")) - (sha256 - (base32 - "0wviayidfv2ix2ql0d4nl9r1ia6qi5kc1nybd9vjx27dk7gvm7c6")))))) - (define-public poppler-qt4 - (package/inherit poppler + (package (inherit poppler) (name "poppler-qt4") (inputs `(("qt-4" ,qt-4) ,@(package-inputs poppler))) (synopsis "Qt4 frontend for the Poppler PDF rendering library"))) (define-public poppler-qt5 - (package/inherit poppler + (package (inherit poppler) (name "poppler-qt5") (inputs `(("qtbase" ,qtbase) ,@(package-inputs poppler))) From 1abc08a8f48f121cfa5a77394aa71a0441b4eb44 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 29 Jun 2017 04:11:18 -0400 Subject: [PATCH 0117/1227] gnu: shishi: Build with latest libgcrypt. * gnu/packages/patches/shishi-fix-libgcrypt-detection.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/kerberos.scm (shishi)[source]: Use it. [inputs]: Use libgcrypt instead of libgcrypt-1.5. [arguments]: Set 'ac_cv_libgcrypt=yes' in #:configure-flags. * gnu/packages/gnupg.scm (libgcrypt-1.5): Remove variable. --- gnu/local.mk | 1 + gnu/packages/gnupg.scm | 12 ------- gnu/packages/kerberos.scm | 19 +++++------ .../shishi-fix-libgcrypt-detection.patch | 32 +++++++++++++++++++ 4 files changed, 43 insertions(+), 21 deletions(-) create mode 100644 gnu/packages/patches/shishi-fix-libgcrypt-detection.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1d49c1a17f..900df572ad 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -961,6 +961,7 @@ dist_patch_DATA = \ %D%/packages/patches/scotch-test-threading.patch \ %D%/packages/patches/sdl-libx11-1.6.patch \ %D%/packages/patches/seq24-rename-mutex.patch \ + %D%/packages/patches/shishi-fix-libgcrypt-detection.patch \ %D%/packages/patches/slim-session.patch \ %D%/packages/patches/slim-config.patch \ %D%/packages/patches/slim-sigusr1.patch \ diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 8a1ea37b5a..566d6e1bd3 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -115,18 +115,6 @@ generation.") (properties '((ftp-server . "ftp.gnupg.org") (ftp-directory . "/gcrypt/libgcrypt"))))) -(define-public libgcrypt-1.5 - (package (inherit libgcrypt) - (version "1.5.6") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" - version ".tar.bz2")) - (sha256 - (base32 - "0ydy7bgra5jbq9mxl5x031nif3m6y3balc6ndw2ngj11wnsjc61h")))))) - (define-public libassuan (package (name "libassuan") diff --git a/gnu/packages/kerberos.scm b/gnu/packages/kerberos.scm index e40ddb2bb2..24583d82ea 100644 --- a/gnu/packages/kerberos.scm +++ b/gnu/packages/kerberos.scm @@ -24,8 +24,10 @@ (define-module (gnu packages kerberos) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages bison) #:use-module (gnu packages perl) + #:use-module (gnu packages gettext) #:use-module (gnu packages gnupg) #:use-module (gnu packages libidn) #:use-module (gnu packages linux) @@ -33,6 +35,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages databases) #:use-module (gnu packages readline) + #:use-module (gnu packages texinfo) #:use-module (gnu packages tls) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) @@ -98,25 +101,23 @@ cryptography.") (method url-fetch) (uri (string-append "mirror://gnu/shishi/shishi-" version ".tar.gz")) + (patches (search-patches "shishi-fix-libgcrypt-detection.patch")) (sha256 (base32 "032qf72cpjdfffq1yq54gz3ahgqf2ijca4vl31sfabmjzq9q370d")))) (build-system gnu-build-system) + (arguments + '(;; This is required since we patch some of the build scripts. + ;; Remove for the next Shishi release after 1.0.2 or when + ;; removing 'shishi-fix-libgcrypt-detection.patch'. + #:configure-flags '("ac_cv_libgcrypt=yes"))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("gnutls" ,gnutls) ("libidn" ,libidn) ("linux-pam" ,linux-pam-1.2) ("zlib" ,zlib) - ;; libgcrypt 1.6 fails because of the following test: - ;; #include - ;; /* GCRY_MODULE_ID_USER was added in 1.4.4 and gc-libgcrypt.c - ;; will fail on startup if we don't have 1.4.4 or later, so - ;; test for it early. */ - ;; #if !defined GCRY_MODULE_ID_USER - ;; error too old libgcrypt - ;; #endif - ("libgcrypt" ,libgcrypt-1.5) + ("libgcrypt" ,libgcrypt) ("libtasn1" ,libtasn1))) (home-page "https://www.gnu.org/software/shishi/") (synopsis "Implementation of the Kerberos 5 network security system") diff --git a/gnu/packages/patches/shishi-fix-libgcrypt-detection.patch b/gnu/packages/patches/shishi-fix-libgcrypt-detection.patch new file mode 100644 index 0000000000..3db42feac9 --- /dev/null +++ b/gnu/packages/patches/shishi-fix-libgcrypt-detection.patch @@ -0,0 +1,32 @@ +Fix building of Shishi with libgcrypt 1.6 and later. + +Patch copied from Debian: + +https://anonscm.debian.org/cgit/collab-maint/shishi.git/tree/debian/patches/fix_gcrypt_detection.diff?id=948301ae648a542a408da250755aeed58a6e3542 + +Description: Fix autoconf gnutls detection to also accept gcrypt 1.6. +Author: Andreas Metzler +Bug-Debian: http://bugs.debian.org/753150 +Origin: vendor +Forwarded: no +Last-Update: 2014-07-18 + +--- shishi-1.0.2.orig/gl/m4/gc.m4 ++++ shishi-1.0.2/gl/m4/gc.m4 +@@ -12,10 +12,12 @@ AC_DEFUN([gl_GC], + if test "$libgcrypt" != no; then + AC_LIB_HAVE_LINKFLAGS([gcrypt], [gpg-error], [ + #include +-/* GCRY_MODULE_ID_USER was added in 1.4.4 and gc-libgcrypt.c +- will fail on startup if we don't have 1.4.4 or later, so +- test for it early. */ +-#if !defined GCRY_MODULE_ID_USER ++/* gc-libgcrypt.c will fail on startup if we don't have libgcrypt 1.4.4 or ++ later, test for it early. by checking for either ++ - GCRY_MODULE_ID_USER which was added in 1.4.4 and dropped in 1.6 or ++ - GCRYPT_VERSION_NUMBER which was added in 1.6. ++ */ ++#if !defined GCRY_MODULE_ID_USER && !defined GCRYPT_VERSION_NUMBER + error too old libgcrypt + #endif + ]) From 86f2309263bc6c89e7441315d358204797b90bb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 30 Jun 2017 22:10:07 +0200 Subject: [PATCH 0118/1227] system: Avoid collision between GMP variants in the global profile. * gnu/system.scm (%base-packages): Move GUILE-2.2 out of the list passed to 'canonical-package'. --- gnu/system.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/system.scm b/gnu/system.scm index 39f8465bcb..e813bfc20c 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -514,10 +514,16 @@ explicitly appear in OS." bash-completion + ;; XXX: We don't use (canonical-package guile-2.2) here because that + ;; would create a collision in the global profile between the GMP + ;; variant propagated by 'guile-final' and the GMP variant propagated + ;; by 'gnutls', itself propagated by 'guix'. + guile-2.2 + ;; The packages below are also in %FINAL-INPUTS, so take them from ;; there to avoid duplication. (map canonical-package - (list guile-2.2 bash coreutils findutils grep sed + (list bash coreutils findutils grep sed diffutils patch gawk tar gzip bzip2 xz lzip)))) (define %default-issue From 13fa4d7c35b135adbb979e5a348252f997b5609f Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 1 Jul 2017 02:18:32 -0400 Subject: [PATCH 0119/1227] gnu: glibc: Fix build on i686. This is followup to 503a4df904b8d4b82caebdb17db9c5f76a952418. Fixes . * gnu/packages/base.scm (glibc/linux): Add "glibc-vectorized-strcspn-guards.patch" to patches. --- gnu/packages/base.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index ecde178335..d42aa55560 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -533,6 +533,7 @@ store.") "glibc-versioned-locpath.patch" "glibc-o-largefile.patch" "glibc-memchr-overflow-i686.patch" + "glibc-vectorized-strcspn-guards.patch" "glibc-CVE-2017-1000366-pt1.patch" "glibc-CVE-2017-1000366-pt2.patch" "glibc-CVE-2017-1000366-pt3.patch")))) From 8ecb8bbc9051f1e56e57eeba36baf21a523e850f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 3 Jul 2017 08:58:25 +0300 Subject: [PATCH 0120/1227] gnu: mesa: Update to 17.1.4. * gnu/packages/gl.scm (mesa): Update to 17.1.4. --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index ed5eaf09af..d017e375c9 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -217,7 +217,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "17.1.2") + (version "17.1.4") (source (origin (method url-fetch) @@ -227,7 +227,7 @@ also known as DXTn or DXTC) for Mesa.") version "/mesa-" version ".tar.xz"))) (sha256 (base32 - "0fc2g6cqffr8mh705r60xv9v66saiff8y3alz6qkjqvl8d7q0dq9")) + "1bcwxin7nmbnv92xav381b6qxscsx1zzc71ryfvj03cglbkb1wq6")) (patches (search-patches "mesa-wayland-egl-symbols-check-mips.patch" "mesa-skip-disk-cache-test.patch")))) From 68eca623152f39267833f5e6a36c0b857d9ec80d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 3 Jul 2017 12:40:10 +0300 Subject: [PATCH 0121/1227] gnu: cups-filters: Update to 1.14.1. * gnu/packages/cups.scm (cups-filters): Update to 1.14.1. --- gnu/packages/cups.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index accfe410ba..145f917f72 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015, 2016 Ludovic Courtès -;;; Copyright © 2015, 2016 Efraim Flashner +;;; Copyright © 2015, 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Danny Milosavljevic ;;; Copyright © 2017 Leo Famulari ;;; Copyright © 2017 Mark H Weaver @@ -53,7 +53,7 @@ (define-public cups-filters (package (name "cups-filters") - (version "1.13.1") + (version "1.14.1") (source(origin (method url-fetch) (uri @@ -61,7 +61,7 @@ "cups-filters-" version ".tar.xz")) (sha256 (base32 - "0s7hylp2lcvc1vrqpywpv7lspkrh4xf7cyi4nbg10cf38rshj474")) + "0175jhqpsyn7bkh7w43ydhyws5zsdak05hr1fsadvzslvwqkffgi")) (modules '((guix build utils))) (snippet ;; install backends, banners and filters to cups-filters output From c23d897766cd409b7ffd1f6c133715999e42099f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 3 Jul 2017 12:40:50 +0300 Subject: [PATCH 0122/1227] gnu: cups: Update to 2.2.4. * gnu/packages/cups.scm (cups, cups-minimal): Update to 2.2.4. --- gnu/packages/cups.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 145f917f72..cb852e7268 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -141,7 +141,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.") (define-public cups-minimal (package (name "cups-minimal") - (version "2.2.1") + (version "2.2.4") (source (origin (method url-fetch) @@ -149,7 +149,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.") version "/cups-" version "-source.tar.gz")) (sha256 (base32 - "1m8rwhbk0l8n19iwm51r2569jj15d0x6mpqhfig0bk3pm4577f43")))) + "1k4qxafmapq6hzbkh273fdyzkj9alw6ppwz5k933bhsi4svlsvar")))) (build-system gnu-build-system) (arguments `(#:configure-flags From a64b174751a9fa76375d35d2f2a47a4c93ce0206 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 6 Jul 2017 01:10:27 +0200 Subject: [PATCH 0123/1227] gnu: ghostscript: Make build reproducible. Fixes . * gnu/packages/ghostscript.scm (ghostscript)[source]: Remove timestamps. --- gnu/packages/ghostscript.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 136484e6af..d4e78c1223 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -152,7 +152,10 @@ printing, and psresize, for adjusting page sizes.") '(begin (for-each delete-file-recursively '("freetype" "jbig2dec" "jpeg" "lcms2" "libpng" - "tiff" "zlib")))))) + "tiff" "zlib")) + ;; Get rid of timestamps. + (substitute* "base/mkromfs.c" + (("time\\(NULL\\)") "0U")))))) (build-system gnu-build-system) (outputs '("out" "doc")) ;19 MiB of HTML/PS doc + examples (arguments From 5bc42e1a468ce84d8adfa4be01a299c1a430c9cc Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 3 Jul 2017 21:16:38 +0200 Subject: [PATCH 0124/1227] gnu: netpbm: Remove timestamps. Fixes . * gnu/packages/netpbm.scm (netpbm)[source]: Remove timestamps. --- gnu/packages/netpbm.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/netpbm.scm b/gnu/packages/netpbm.scm index c7be4b13e0..2d76d7e067 100644 --- a/gnu/packages/netpbm.scm +++ b/gnu/packages/netpbm.scm @@ -87,6 +87,9 @@ (drop "ppmtopjxl" in "converter/ppm") ;; Remove timestamps from the generated code. + (substitute* "buildtools/makepointerman" + (("gmctime[(][)]") + "\"Thu Jan 1 00:00:00 1970\"")) (substitute* "buildtools/stamp-date" (("^DATE=.*") "DATE=\"Thu Jan 01 00:00:00+0000 1970\"\n") From 6b994438b049e91d7f950c2aa8abaae8d6112cf3 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 6 Jul 2017 10:39:07 +0200 Subject: [PATCH 0125/1227] gnu: ghostscript: Don't write CreationDate and ModDate header entries. Followup to a64b174751a9fa76375d35d2f2a47a4c93ce0206. * gnu/packages/ghostscript.scm (ghostscript)[source]: Don't write CreationDate and ModDate header entries. --- gnu/packages/ghostscript.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index d4e78c1223..b9ba1c081a 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -153,9 +153,9 @@ printing, and psresize, for adjusting page sizes.") (for-each delete-file-recursively '("freetype" "jbig2dec" "jpeg" "lcms2" "libpng" "tiff" "zlib")) - ;; Get rid of timestamps. - (substitute* "base/mkromfs.c" - (("time\\(NULL\\)") "0U")))))) + ;; Get rid of timestamps (remove /CreationDate and /ModDate). + (substitute* "devices/vector/gdevpdf.c" + ((", but we do the same") "*/ if (0) /*")))))) (build-system gnu-build-system) (outputs '("out" "doc")) ;19 MiB of HTML/PS doc + examples (arguments From c89e21078862bd29b70a3bc0f33d160c59720364 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 7 Jul 2017 14:28:24 +0200 Subject: [PATCH 0126/1227] gnu: Add basic support for powerpc64le-linux-gnu targets. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add "powerpc64le-linux". * gnu/packages/linux.scm (system->linux-architecture): Add "powerpc" prefix. (system->defconfig): Add "powerpc64le-" prefix. --- gnu/packages/bootstrap.scm | 2 ++ gnu/packages/linux.scm | 2 ++ 2 files changed, 4 insertions(+) diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm index f43decc96e..ba733b3a9e 100644 --- a/gnu/packages/bootstrap.scm +++ b/gnu/packages/bootstrap.scm @@ -162,6 +162,7 @@ successful, or false to signal an error." gnu-triplet->nix-system) (%current-system)))) "Return the name of Glibc's dynamic linker for SYSTEM." + ;; See the 'SYSDEP_KNOWN_INTERPRETER_NAMES' cpp macro in libc. (cond ((string=? system "x86_64-linux") "/lib/ld-linux-x86-64.so.2") ((string=? system "i686-linux") "/lib/ld-linux.so.2") ((string=? system "armhf-linux") "/lib/ld-linux-armhf.so.3") @@ -170,6 +171,7 @@ successful, or false to signal an error." ((string=? system "i686-gnu") "/lib/ld.so.1") ((string=? system "aarch64-linux") "/lib/ld-linux-aarch64.so.1") ((string=? system "powerpc-linux") "/lib/ld.so.1") + ((string=? system "powerpc64le-linux") "/lib/ld64.so.2") ((string=? system "alpha-linux") "/lib/ld-linux.so.2") ;; XXX: This one is used bare-bones, without a libc, so add a case diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 28a060fe54..100440a72c 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -123,6 +123,7 @@ ((string-prefix? "arm" arch) "arm") ((string-prefix? "aarch64" arch) "arm64") ((string-prefix? "alpha" arch) "alpha") + ((string-prefix? "powerpc" arch) "powerpc") ;including "powerpc64le" (else arch)))) (define-public (system->defconfig system) @@ -130,6 +131,7 @@ defconfig. Return the appropiate make target if applicable, otherwise return \"defconfig\"." (cond ((string-prefix? "powerpc-" system) "pmac32_defconfig") + ((string-prefix? "powerpc64le-" system) "ppc64_defconfig") (else "defconfig"))) (define (linux-libre-urls version) From 7f0980839e4d9d3c7e06301bcbb2eb292bd7dbee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 7 Jul 2017 16:34:10 +0200 Subject: [PATCH 0127/1227] gnu: wget: Fix compilation with Perl 5.26; skip faulty tests. * gnu/packages/wget.scm (wget)[arguments]: New field. [source](patches): Add "wget-perl-5.26.patch". * gnu/packages/patches/wget-perl-5.26.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/patches/wget-perl-5.26.patch | 96 +++++++++++++++++++++++ gnu/packages/wget.scm | 16 +++- 3 files changed, 111 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/wget-perl-5.26.patch diff --git a/gnu/local.mk b/gnu/local.mk index 900df572ad..23b8f449a1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1028,6 +1028,7 @@ dist_patch_DATA = \ %D%/packages/patches/weechat-python.patch \ %D%/packages/patches/wget-CVE-2017-6508.patch \ %D%/packages/patches/wget-fix-504-test-timeout.patch \ + %D%/packages/patches/wget-perl-5.26.patch \ %D%/packages/patches/wicd-bitrate-none-fix.patch \ %D%/packages/patches/wicd-get-selected-profile-fix.patch \ %D%/packages/patches/wicd-urwid-1.3.patch \ diff --git a/gnu/packages/patches/wget-perl-5.26.patch b/gnu/packages/patches/wget-perl-5.26.patch new file mode 100644 index 0000000000..ee3a984daa --- /dev/null +++ b/gnu/packages/patches/wget-perl-5.26.patch @@ -0,0 +1,96 @@ +This upstream commit adjusts tests for Perl 5.26. + +commit 7ffe93cabb181f39ad5091c31ab9f61bd940a55f +Author: Anton Yuzhaninov +Date: Wed Apr 5 19:06:42 2017 +0300 + + Fix perl warnings in tests + + * tests/FTPServer.pm: Escape '{' in RE to fix warnings + * tests/FTPTest.pm: Likewise + * tests/HTTPServer.pm: Likewise + * tests/HTTPTest.pm: Likewise + * tests/Test-proxied-https-auth-keepalive.px: Likewise + * tests/Test-proxied-https-auth.px: Likewise + Escape '{' in RE to fix warnings: + Unescaped left brace in regex is deprecated, passed through in regex; + marked by <-- HERE in m/{{ <-- HERE port}}/ + +diff --git a/tests/FTPServer.pm b/tests/FTPServer.pm +index a5185d66..cac80942 100644 +--- a/tests/FTPServer.pm ++++ b/tests/FTPServer.pm +@@ -589,7 +589,7 @@ sub new + foreach my $file (keys %{$self->{_input}}) + { + my $ref = \$self->{_input}{$file}{content}; +- $$ref =~ s/{{port}}/$self->sockport/eg; ++ $$ref =~ s/\Q{{port}}/$self->sockport/eg; + } + + return $self; +diff --git a/tests/FTPTest.pm b/tests/FTPTest.pm +index 50385ad0..0a1c768c 100644 +--- a/tests/FTPTest.pm ++++ b/tests/FTPTest.pm +@@ -53,7 +53,7 @@ sub _substitute_port + { + my $self = shift; + my $ret = shift; +- $ret =~ s/{{port}}/$self->{_server}->sockport/eg; ++ $ret =~ s/\Q{{port}}/$self->{_server}->sockport/eg; + return $ret; + } + +diff --git a/tests/HTTPServer.pm b/tests/HTTPServer.pm +index dd8ec043..78609f65 100644 +--- a/tests/HTTPServer.pm ++++ b/tests/HTTPServer.pm +@@ -310,7 +310,7 @@ sub _substitute_port + { + my $self = shift; + my $ret = shift; +- $ret =~ s/{{port}}/$self->sockport/eg; ++ $ret =~ s/\Q{{port}}/$self->sockport/eg; + return $ret; + } + +diff --git a/tests/HTTPTest.pm b/tests/HTTPTest.pm +index 00f079f8..6225c7f1 100644 +--- a/tests/HTTPTest.pm ++++ b/tests/HTTPTest.pm +@@ -47,7 +47,7 @@ sub _substitute_port + { + my $self = shift; + my $ret = shift; +- $ret =~ s/{{port}}/$self->{_server}->sockport/eg; ++ $ret =~ s/\Q{{port}}/$self->{_server}->sockport/eg; + return $ret; + } + +diff --git a/tests/Test-proxied-https-auth-keepalive.px b/tests/Test-proxied-https-auth-keepalive.px +index 049bebec..2a18ccfd 100755 +--- a/tests/Test-proxied-https-auth-keepalive.px ++++ b/tests/Test-proxied-https-auth-keepalive.px +@@ -153,7 +153,7 @@ my $cmdline = $WgetTest::WGETPATH . " --user=fiddle-dee-dee" + . " --password=Dodgson -e https_proxy=localhost:{{port}}" + . " --no-check-certificate" + . " https://no.such.domain/needs-auth.txt"; +-$cmdline =~ s/{{port}}/$SOCKET->sockport()/e; ++$cmdline =~ s/\Q{{port}}/$SOCKET->sockport()/e; + + if (defined $srcdir) { + $VALGRIND_SUPP_FILE = $srcdir . '/valgrind-suppressions-ssl'; +diff --git a/tests/Test-proxied-https-auth.px b/tests/Test-proxied-https-auth.px +index ce4e736c..878114e7 100755 +--- a/tests/Test-proxied-https-auth.px ++++ b/tests/Test-proxied-https-auth.px +@@ -152,7 +152,7 @@ my $cmdline = $WgetTest::WGETPATH . " --user=fiddle-dee-dee" + . " --password=Dodgson -e https_proxy=localhost:{{port}}" + . " --no-check-certificate" + . " https://no.such.domain/needs-auth.txt"; +-$cmdline =~ s/{{port}}/$SOCKET->sockport()/e; ++$cmdline =~ s/\Q{{port}}/$SOCKET->sockport()/e; + + if (defined $srcdir) { + $VALGRIND_SUPP_FILE = $srcdir . '/valgrind-suppressions-ssl'; diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index a73c68004d..58a1a4b885 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012 Nikita Karetnikov -;;; Copyright © 2014, 2015 Ludovic Courtès +;;; Copyright © 2014, 2015, 2017 Ludovic Courtès ;;; Copyright © 2016, 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. @@ -41,11 +41,23 @@ (uri (string-append "mirror://gnu/wget/wget-" version ".tar.xz")) (patches (search-patches "wget-CVE-2017-6508.patch" - "wget-fix-504-test-timeout.patch")) + "wget-fix-504-test-timeout.patch" + "wget-perl-5.26.patch")) (sha256 (base32 "1ljcfhbkdsd0zjfm520rbl1ai62fc34i7c45sfj244l8f6b0p58c")))) (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'check 'disable-https-tests + (lambda _ + ;; XXX: Skip TLS tests, which fail with "The + ;; certificate's owner does not match hostname" for + ;; obscure reasons reported at: + ;; . + (substitute* "testenv/Makefile" + (("SSL_TESTS=1") "")) + #t))))) (inputs `(("gnutls" ,gnutls) ("libidn2" ,libidn2) From 0b6e4f82fcc906c431a575ab68183ed3c1eaa220 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 7 Jul 2017 17:06:44 +0200 Subject: [PATCH 0128/1227] gnu: groff: Remove dependency on netpbm. * gnu/packages/groff.scm (groff)[inputs]: Remove 'netpbm'. --- gnu/packages/groff.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm index 46e1ccf233..d7f45d4fc7 100644 --- a/gnu/packages/groff.scm +++ b/gnu/packages/groff.scm @@ -44,8 +44,13 @@ (build-system gnu-build-system) (outputs '("out" "doc")) ;12MiB of PS, PDF, HTML, and examples - (inputs `(("ghostscript" ,ghostscript) - ("netpbm" ,netpbm))) + + ;; Note: groff's HTML backend uses executables from netpbm when they are in + ;; $PATH. In practice, not having them doesn't prevent it from install its + ;; own HTML doc, nor does it change its capabilities, so we removed netpbm + ;; from 'inputs'. + + (inputs `(("ghostscript" ,ghostscript))) (native-inputs `(("bison" ,bison) ("perl" ,perl) ("psutils" ,psutils) From 26c228f9b49a4292e5bc288582167d175ce2e30b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 8 Jul 2017 16:09:59 +0200 Subject: [PATCH 0129/1227] gnu: libsoup: Reindent. * gnu/packages/gnome.scm (libsoup): Reindent. --- gnu/packages/gnome.scm | 50 +++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 0442a98bf7..fb2d840b5d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2324,34 +2324,34 @@ libxml to ease remote use of the RESTful API.") #:phases (modify-phases %standard-phases (add-before 'configure 'disable-unconnected-socket-test - ;; This test fails due to missing /etc/nsswitch.conf - ;; in the build environment. - (lambda _ - (substitute* "tests/socket-test.c" - ((".*/sockets/unconnected.*") "")) - #t)) + ;; This test fails due to missing /etc/nsswitch.conf + ;; in the build environment. + (lambda _ + (substitute* "tests/socket-test.c" + ((".*/sockets/unconnected.*") "")) + #t)) (add-before 'check 'pre-check - (lambda _ - ;; The 'check-local' target runs 'env LANG=C sort -u', - ;; unset 'LC_ALL' to make 'LANG' working. - (unsetenv "LC_ALL") - ;; The ca-certificates.crt is not available in the build - ;; environment. - (setenv "SSL_CERT_FILE" "/dev/null") - ;; HTTPD in Guix uses mod_event and does not build prefork. - (substitute* "tests/httpd.conf" - (("^LoadModule mpm_prefork_module.*$") "\n")) - #t)) + (lambda _ + ;; The 'check-local' target runs 'env LANG=C sort -u', + ;; unset 'LC_ALL' to make 'LANG' working. + (unsetenv "LC_ALL") + ;; The ca-certificates.crt is not available in the build + ;; environment. + (setenv "SSL_CERT_FILE" "/dev/null") + ;; HTTPD in Guix uses mod_event and does not build prefork. + (substitute* "tests/httpd.conf" + (("^LoadModule mpm_prefork_module.*$") "\n")) + #t)) (replace 'install - (lambda _ - (zero? - (system* "make" - ;; Install vala bindings into $out. - (string-append "vapidir=" %output - "/share/vala/vapi") - "install"))))))) + (lambda _ + (zero? + (system* "make" + ;; Install vala bindings into $out. + (string-append "vapidir=" %output + "/share/vala/vapi") + "install"))))))) (native-inputs - `(("glib:bin" ,glib "bin") ; for glib-mkenums + `(("glib:bin" ,glib "bin") ; for glib-mkenums ("gobject-introspection" ,gobject-introspection) ("intltool" ,intltool) ("pkg-config" ,pkg-config) From 2deb146f6d2f38aa121c51b3141c33790a734be5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 8 Jul 2017 16:38:26 +0200 Subject: [PATCH 0130/1227] gnu: libsoup: Adjust to new GnuTLS certificate-check behavior. * gnu/packages/gnome.scm (libsoup)[arguments]: Add #:modules. In 'pre-check' phase, invoke 'certtool'. [native-inputs]: Add GNUTLS. --- gnu/packages/gnome.scm | 50 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index fb2d840b5d..8d88829ec7 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2314,7 +2314,11 @@ libxml to ease remote use of the RESTful API.") (build-system gnu-build-system) (outputs '("out" "doc")) (arguments - `(#:configure-flags + `(#:modules ((guix build utils) + (guix build gnu-build-system) + (ice-9 popen)) + + #:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") "/share/gtk-doc/html") @@ -2341,6 +2345,49 @@ libxml to ease remote use of the RESTful API.") ;; HTTPD in Guix uses mod_event and does not build prefork. (substitute* "tests/httpd.conf" (("^LoadModule mpm_prefork_module.*$") "\n")) + + ;; Generate a self-signed certificate that has "localhost" as its + ;; 'dnsName'. Failing to do that, and starting with GnuTLS + ;; 3.5.12, tests such as "ssl-tests" fail: + ;; + ;; ERROR:ssl-test.c:406:do_tls_interaction_test: Unexpected status 6 Unacceptable TLS certificate (expected 200 OK) + ;; + ;; 'certtool' is interactive so we have to pipe it the answers. + ;; Reported at . + (let ((pipe (open-output-pipe "certtool --generate-self-signed \ + --load-privkey tests/test-key.pem --outfile tests/test-cert.pem"))) + (for-each (lambda (line) + (display line pipe) + (newline pipe)) + '("" ;Common name + "" ;UID + "Guix" ;Organizational unit name + "GNU" ;Organization name + "" ;Locality name + "" ;State or province + "" ;Country + "" ;subject's domain component (DC) + "" ;E-mail + "" ;serial number + "-1" ;expiration time + "N" ;belong to authority? + "N" ;web client certificate? + "N" ;IPsec IKE? + "Y" ;web server certificate? + "localhost" ;dnsName of subject + "" ;dnsName of subject (end) + "" ;URI of subject + "127.0.0.1" ;IP address of subject + "" ;signing? + "" ;encryption? + "" ;sign OCSP requests? + "" ;sign code? + "" ;time stamping? + "" ;email protection? + "" ;URI of the CRL distribution point + "y" ;above info OK? + )) + (close-pipe pipe)) #t)) (replace 'install (lambda _ @@ -2360,6 +2407,7 @@ libxml to ease remote use of the RESTful API.") ;; These are needed for the tests. ;; FIXME: Add PHP once available. ("curl" ,curl) + ("gnutls" ,gnutls) ;for 'certtool' ("httpd" ,httpd))) (propagated-inputs ;; libsoup-2.4.pc refers to all these. From 3512bd4d1ca5946cda44854bf0d526c6c288ad4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 8 Jul 2017 16:39:45 +0200 Subject: [PATCH 0131/1227] gnu: wget: Update comment about test failures. * gnu/packages/wget.scm (wget)[arguments]: Update comment. --- gnu/packages/wget.scm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 58a1a4b885..3673ad5cc4 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -52,9 +52,13 @@ (add-before 'check 'disable-https-tests (lambda _ ;; XXX: Skip TLS tests, which fail with "The - ;; certificate's owner does not match hostname" for - ;; obscure reasons reported at: - ;; . + ;; certificate's owner does not match hostname" as + ;; reported at: + ;; . + ;; The problem appears to be due to a change in GnuTLS + ;; 3.5.12, whereby 'gnutls_x509_crt_check_hostname2' no + ;; longer matches IP address against the 'CN' or + ;; 'DNSname' fields of certificates. (substitute* "testenv/Makefile" (("SSL_TESTS=1") "")) #t))))) From 539a68f938d734cc48c365a2f91521f4c4a4c1f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 10 Jul 2017 10:31:19 +0200 Subject: [PATCH 0132/1227] gnu: pciutils: Update to 3.5.5. * gnu/packages/pciutils.scm (pciutils): Update to 3.5.5. --- gnu/packages/pciutils.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index 7c9856468d..a3d85e8386 100644 --- a/gnu/packages/pciutils.scm +++ b/gnu/packages/pciutils.scm @@ -30,7 +30,7 @@ (define-public pciutils (package (name "pciutils") - (version "3.5.4") + (version "3.5.5") (source (origin (method url-fetch) (uri (string-append @@ -38,7 +38,7 @@ version ".tar.xz")) (sha256 (base32 - "0rpy7kkb2y89wmbcbfjjjxsk2x89v5xxhxib4vpl131ip5m3qab4")))) + "1x9rb5y82rzg8b67lh42yy9ag9xr7kzibz566lffd41g37xghqhx")))) (build-system gnu-build-system) (arguments '(#:phases From 841e06af71d264b5fbec56f96aec8aa933fbeab2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 10 Jul 2017 10:37:48 +0200 Subject: [PATCH 0133/1227] gnu: pciutils: Move 'pci.ids.gz' to 'share/hwdata'. * gnu/packages/pciutils.scm (pciutils)[arguments] : Set 'IDSDIR' such that 'pci.ids.gz' goes to share/hwdata. --- gnu/packages/pciutils.scm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index a3d85e8386..51962d2739 100644 --- a/gnu/packages/pciutils.scm +++ b/gnu/packages/pciutils.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015 Ludovic Courtès +;;; Copyright © 2014, 2015, 2017 Ludovic Courtès ;;; Copyright © 2016 Efraim Flashner ;;; ;;; This file is part of GNU Guix. @@ -56,12 +56,18 @@ ;; $prefix/share/man, and wrongly so. (string-append "MANDIR := " (assoc-ref outputs "out") "/share/man\n")) + (("^SHARED=.*$") ;; Build libpciutils.so. "SHARED := yes\n") (("^ZLIB=.*$") - ;; Ask for zlib support. - "ZLIB := yes\n")))) + ;; Ask for zlib support, for 'pci.ids.gz' decompression. + "ZLIB := yes\n") + + (("^IDSDIR=.*$") + ;; Installation directory of 'pci.ids.gz'. + "IDSDIR = $(SHAREDIR)/hwdata\n")) + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) ;; Install the commands, library, and .pc files. From a48da398b3ee279c54db7ea70b3c3195acf5c94b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 10 Jul 2017 10:45:30 +0200 Subject: [PATCH 0134/1227] gnu: pciutils: Tweak description. * gnu/packages/pciutils.scm (pciutils)[description]: Use @command. --- gnu/packages/pciutils.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index 51962d2739..e428aaedb0 100644 --- a/gnu/packages/pciutils.scm +++ b/gnu/packages/pciutils.scm @@ -91,5 +91,6 @@ "The PCI Utilities are a collection of programs for inspecting and manipulating configuration of PCI devices, all based on a common portable library libpci which offers access to the PCI configuration space on a variety -of operating systems. This includes the 'lspci' and 'setpci' commands.") +of operating systems. This includes the @command{lspci} and @command{setpci} +commands.") (license license:gpl2+))) From ab2a8cac58595461012de39cea64296d91978f3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 10 Jul 2017 10:53:50 +0200 Subject: [PATCH 0135/1227] gnu: libpciaccess: Refer to 'pci.ids' from pciutils. Prior to this change libpciaccess would try to read from /usr/share/hwdata/pci.ids. * gnu/packages/xorg.scm (libpciaccess)[arguments]: New field. [inputs]: Add PCIUTILS. --- gnu/packages/xorg.scm | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 278410f4ce..555f12fbeb 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -57,6 +57,7 @@ #:use-module (gnu packages llvm) #:use-module (gnu packages m4) #:use-module (gnu packages ncurses) + #:use-module (gnu packages pciutils) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -1112,8 +1113,29 @@ themselves.") (base32 "16dr80rdw5bzdyhahvilfjrflj7scs2yl2mmghsb84f3nglm8b3m")))) (build-system gnu-build-system) + (arguments + '(;; Make sure libpciaccess can read compressed 'pci.ids' files as + ;; provided by pciutils. + #:configure-flags + (list "--with-zlib" + (string-append "--with-pciids-path=" + (assoc-ref %build-inputs "pciutils") + "/share/hwdata")) + + #:phases + (modify-phases %standard-phases + (add-after 'install 'add-L-zlib + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Provide '-LZLIB/lib' next to '-lz' in the .la file. + (let ((zlib (assoc-ref inputs "zlib")) + (out (assoc-ref outputs "out"))) + (substitute* (string-append out "/lib/libpciaccess.la") + (("-lz") + (string-append "-L" zlib "/lib -lz"))) + #t)))))) (inputs - `(("zlib" ,zlib))) + `(("zlib" ,zlib) + ("pciutils" ,pciutils))) ;for 'pci.ids.gz' (native-inputs `(("pkg-config" ,pkg-config))) (home-page "https://www.x.org/wiki/") From 9146543f8dce997c194aea93bf4c7a7a4144c8c9 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 6 Jul 2017 03:47:08 +0200 Subject: [PATCH 0136/1227] gnu: groff: Remove timestamps. Fixes . * gnu/packages/patches/groff-source-date-epoch.patch: New file. * gnu/local.mk: Add it. * gnu/packages/groff.scm (groff)[source]: Add it. --- gnu/local.mk | 1 + gnu/packages/groff.scm | 3 +- .../patches/groff-source-date-epoch.patch | 299 ++++++++++++++++++ 3 files changed, 302 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/groff-source-date-epoch.patch diff --git a/gnu/local.mk b/gnu/local.mk index 23b8f449a1..0fe6cdc391 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -645,6 +645,7 @@ dist_patch_DATA = \ %D%/packages/patches/graphite2-ffloat-store.patch \ %D%/packages/patches/grep-gnulib-lock.patch \ %D%/packages/patches/grep-timing-sensitive-test.patch \ + %D%/packages/patches/groff-source-date-epoch.patch \ %D%/packages/patches/gsl-test-i686.patch \ %D%/packages/patches/gspell-dash-test.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \ diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm index d7f45d4fc7..67dd1dbfa6 100644 --- a/gnu/packages/groff.scm +++ b/gnu/packages/groff.scm @@ -40,7 +40,8 @@ (uri (string-append "mirror://gnu/groff/groff-" version ".tar.gz")) (sha256 (base32 - "1998v2kcs288d3y7kfxpvl369nqi06zbbvjzafyvyl3pr7bajj1s")))) + "1998v2kcs288d3y7kfxpvl369nqi06zbbvjzafyvyl3pr7bajj1s")) + (patches (search-patches "groff-source-date-epoch.patch")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;12MiB of PS, PDF, HTML, and examples diff --git a/gnu/packages/patches/groff-source-date-epoch.patch b/gnu/packages/patches/groff-source-date-epoch.patch new file mode 100644 index 0000000000..53c590b049 --- /dev/null +++ b/gnu/packages/patches/groff-source-date-epoch.patch @@ -0,0 +1,299 @@ +Adds support for the environment variable SOURCE_DATE_EPOCH. + +See: https://sources.debian.net/patches/groff/1.22.3-9/source-date-epoch.patch/ + +From abc23bc9245e18468817f2838361c3a08f7521e2 Mon Sep 17 00:00:00 2001 +From: Colin Watson +Date: Thu, 5 Nov 2015 11:47:34 +0000 +Subject: Implement `SOURCE_DATE_EPOCH' for reproducible builds. + +Author: Colin Watson +Forwarded: yes +Last-Update: 2015-11-05 + +Patch-Name: source-date-epoch.patch +--- + doc/groff.texinfo | 6 +++++ + src/devices/grohtml/grohtml.man | 7 ++++++ + src/devices/grohtml/post-html.cpp | 5 ++-- + src/devices/gropdf/gropdf.man | 7 ++++++ + src/devices/gropdf/gropdf.pl | 3 ++- + src/devices/grops/grops.man | 7 ++++++ + src/devices/grops/ps.cpp | 3 ++- + src/include/curtime.h | 23 ++++++++++++++++++ + src/libs/libgroff/Makefile.sub | 2 ++ + src/libs/libgroff/curtime.cpp | 51 +++++++++++++++++++++++++++++++++++++++ + src/roff/troff/input.cpp | 3 ++- + 11 files changed, 112 insertions(+), 5 deletions(-) + create mode 100644 src/include/curtime.h + create mode 100644 src/libs/libgroff/curtime.cpp + +diff --git a/doc/groff.texinfo b/doc/groff.texinfo +index 066b5274..1d3c7a9f 100644 +--- a/doc/groff.texinfo ++++ b/doc/groff.texinfo +@@ -1453,6 +1453,12 @@ default directory (on Unix and GNU/Linux systems, this is usually + @item GROFF_TYPESETTER + @tindex GROFF_TYPESETTER@r{, environment variable} + The default output device. ++ ++@item SOURCE_DATE_EPOCH ++@tindex SOURCE_DATE_EPOCH@r{, environment variable} ++A timestamp (expressed as seconds since the Unix epoch) to use in place of ++the current time when initializing time-based built-in registers such as ++@code{\n[seconds]}. + @end table + + Note that MS-DOS and MS-Windows ports of @code{groff} use semi-colons, +diff --git a/src/devices/grohtml/grohtml.man b/src/devices/grohtml/grohtml.man +index 51eae224..4be4abbc 100644 +--- a/src/devices/grohtml/grohtml.man ++++ b/src/devices/grohtml/grohtml.man +@@ -419,6 +419,13 @@ and + for more details. + . + . ++.TP ++.SM ++.B SOURCE_DATE_EPOCH ++A timestamp (expressed as seconds since the Unix epoch) to use as the ++creation timestamp in place of the current time. ++. ++. + .\" -------------------------------------------------------------------- + .SH BUGS + .\" -------------------------------------------------------------------- +diff --git a/src/devices/grohtml/post-html.cpp b/src/devices/grohtml/post-html.cpp +index fefbf014..b5fc5167 100644 +--- a/src/devices/grohtml/post-html.cpp ++++ b/src/devices/grohtml/post-html.cpp +@@ -28,6 +28,7 @@ along with this program. If not, see . */ + #include "html.h" + #include "html-text.h" + #include "html-table.h" ++#include "curtime.h" + + #include + +@@ -5013,7 +5014,7 @@ void html_printer::do_file_components (void) + .put_string(Version_string) + .end_comment(); + +- t = time(0); ++ t = current_time(); + html.begin_comment("CreationDate: ") + .put_string(ctime(&t), strlen(ctime(&t))-1) + .end_comment(); +@@ -5126,7 +5127,7 @@ html_printer::~html_printer() + .put_string(Version_string) + .end_comment(); + +- t = time(0); ++ t = current_time(); + html.begin_comment("CreationDate: ") + .put_string(ctime(&t), strlen(ctime(&t))-1) + .end_comment(); +diff --git a/src/devices/gropdf/gropdf.man b/src/devices/gropdf/gropdf.man +index 3bbace6a..cc0c82f1 100644 +--- a/src/devices/gropdf/gropdf.man ++++ b/src/devices/gropdf/gropdf.man +@@ -1029,6 +1029,13 @@ and + for more details. + . + . ++.TP ++.SM ++.B SOURCE_DATE_EPOCH ++A timestamp (expressed as seconds since the Unix epoch) to use as the ++creation timestamp in place of the current time. ++. ++. + .\" -------------------------------------------------------------------- + .SH FILES + .\" -------------------------------------------------------------------- +diff --git a/src/devices/gropdf/gropdf.pl b/src/devices/gropdf/gropdf.pl +index 035d1238..c25c4c67 100644 +--- a/src/devices/gropdf/gropdf.pl ++++ b/src/devices/gropdf/gropdf.pl +@@ -239,13 +239,14 @@ elsif (exists($ppsz{$papersz})) + @defaultmb=@mediabox=(0,0,$ppsz{$papersz}->[0],$ppsz{$papersz}->[1]); + } + +-my (@dt)=localtime(time); ++my (@dt)=localtime($ENV{SOURCE_DATE_EPOCH} || time); + my $dt=PDFDate(\@dt); + + my %info=('Creator' => "(groff version $cfg{GROFF_VERSION})", + 'Producer' => "(gropdf version $cfg{GROFF_VERSION})", + 'ModDate' => "($dt)", + 'CreationDate' => "($dt)"); ++ + while (<>) + { + chomp; +diff --git a/src/devices/grops/grops.man b/src/devices/grops/grops.man +index 99fb7486..272c2d18 100644 +--- a/src/devices/grops/grops.man ++++ b/src/devices/grops/grops.man +@@ -1419,6 +1419,13 @@ and + for more details. + . + . ++.TP ++.SM ++.B SOURCE_DATE_EPOCH ++A timestamp (expressed as seconds since the Unix epoch) to use as the ++creation timestamp in place of the current time. ++. ++. + .\" -------------------------------------------------------------------- + .SH FILES + .\" -------------------------------------------------------------------- +diff --git a/src/devices/grops/ps.cpp b/src/devices/grops/ps.cpp +index 745a503b..03e65372 100644 +--- a/src/devices/grops/ps.cpp ++++ b/src/devices/grops/ps.cpp +@@ -28,6 +28,7 @@ along with this program. If not, see . */ + #include "cset.h" + #include "nonposix.h" + #include "paper.h" ++#include "curtime.h" + + #include "ps.h" + #include +@@ -1390,7 +1391,7 @@ ps_printer::~ps_printer() + #else + time_t + #endif +- t = time(0); ++ t = current_time(); + fputs(ctime(&t), out.get_file()); + } + for (font_pointer_list *f = font_list; f; f = f->next) { +diff --git a/src/include/curtime.h b/src/include/curtime.h +new file mode 100644 +index 00000000..a4105196 +--- /dev/null ++++ b/src/include/curtime.h +@@ -0,0 +1,23 @@ ++/* Copyright (C) 2015 Free Software Foundation, Inc. ++ ++This file is part of groff. ++ ++groff is free software; you can redistribute it and/or modify it under ++the terms of the GNU General Public License as published by the Free ++Software Foundation, either version 2 of the License, or ++(at your option) any later version. ++ ++groff is distributed in the hope that it will be useful, but WITHOUT ANY ++WARRANTY; without even the implied warranty of MERCHANTABILITY or ++FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++for more details. ++ ++The GNU General Public License version 2 (GPL2) is available in the ++internet at . */ ++ ++#ifdef LONG_FOR_TIME_T ++long ++#else ++time_t ++#endif ++current_time(); +diff --git a/src/libs/libgroff/Makefile.sub b/src/libs/libgroff/Makefile.sub +index 840d9934..4cb4937a 100644 +--- a/src/libs/libgroff/Makefile.sub ++++ b/src/libs/libgroff/Makefile.sub +@@ -32,6 +32,7 @@ OBJS=\ + cmap.$(OBJEXT) \ + color.$(OBJEXT) \ + cset.$(OBJEXT) \ ++ curtime.$(OBJEXT) \ + device.$(OBJEXT) \ + errarg.$(OBJEXT) \ + error.$(OBJEXT) \ +@@ -82,6 +83,7 @@ CCSRCS=\ + $(srcdir)/cmap.cpp \ + $(srcdir)/color.cpp \ + $(srcdir)/cset.cpp \ ++ $(srcdir)/curtime.cpp \ + $(srcdir)/device.cpp \ + $(srcdir)/errarg.cpp \ + $(srcdir)/error.cpp \ +diff --git a/src/libs/libgroff/curtime.cpp b/src/libs/libgroff/curtime.cpp +new file mode 100644 +index 00000000..00821b7f +--- /dev/null ++++ b/src/libs/libgroff/curtime.cpp +@@ -0,0 +1,51 @@ ++/* Copyright (C) 2015 Free Software Foundation, Inc. ++ ++This file is part of groff. ++ ++groff is free software; you can redistribute it and/or modify it under ++the terms of the GNU General Public License as published by the Free ++Software Foundation, either version 2 of the License, or ++(at your option) any later version. ++ ++groff is distributed in the hope that it will be useful, but WITHOUT ANY ++WARRANTY; without even the implied warranty of MERCHANTABILITY or ++FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++for more details. ++ ++The GNU General Public License version 2 (GPL2) is available in the ++internet at . */ ++ ++#include ++#include ++#include ++#include ++#include ++ ++#include "errarg.h" ++#include "error.h" ++ ++#ifdef LONG_FOR_TIME_T ++long ++#else ++time_t ++#endif ++current_time() ++{ ++ char *source_date_epoch = getenv("SOURCE_DATE_EPOCH"); ++ ++ if (source_date_epoch) { ++ errno = 0; ++ char *endptr; ++ long epoch = strtol(source_date_epoch, &endptr, 10); ++ ++ if ((errno == ERANGE && (epoch == LONG_MAX || epoch == LONG_MIN)) || ++ (errno != 0 && epoch == 0)) ++ fatal("$SOURCE_DATE_EPOCH: strtol: %1", strerror(errno)); ++ if (endptr == source_date_epoch) ++ fatal("$SOURCE_DATE_EPOCH: no digits found: %1", endptr); ++ if (*endptr != '\0') ++ fatal("$SOURCE_DATE_EPOCH: trailing garbage: %1", endptr); ++ return epoch; ++ } else ++ return time(0); ++} +diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp +index 9594f074..f7d2c18a 100644 +--- a/src/roff/troff/input.cpp ++++ b/src/roff/troff/input.cpp +@@ -36,6 +36,7 @@ along with this program. If not, see . */ + #include "input.h" + #include "defs.h" + #include "unicode.h" ++#include "curtime.h" + + // Needed for getpid() and isatty() + #include "posix.h" +@@ -8138,7 +8139,7 @@ static void init_registers() + #else /* not LONG_FOR_TIME_T */ + time_t + #endif /* not LONG_FOR_TIME_T */ +- t = time(0); ++ t = current_time(); + // Use struct here to work around misfeature in old versions of g++. + struct tm *tt = localtime(&t); + set_number_reg("seconds", int(tt->tm_sec)); From 5c549f2eacae292b2349726d2f8f1de2d676cbd1 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 10 Jul 2017 00:05:21 +0200 Subject: [PATCH 0137/1227] gnu: ghostscript: Make "/ID" optional, depending on environment variable. * gnu/packages/patches/ghostscript-no-header-id.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it * gnu/packages/ghostscript.scm (ghostscript): Use it. --- gnu/local.mk | 1 + gnu/packages/ghostscript.scm | 9 ++- .../patches/ghostscript-no-header-id.patch | 57 +++++++++++++++++++ 3 files changed, 65 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/ghostscript-no-header-id.patch diff --git a/gnu/local.mk b/gnu/local.mk index 0fe6cdc391..8cbded44ee 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -619,6 +619,7 @@ dist_patch_DATA = \ %D%/packages/patches/gettext-gnulib-multi-core.patch \ %D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \ %D%/packages/patches/ghostscript-CVE-2017-8291.patch \ + %D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index b9ba1c081a..af565f3e3a 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -143,7 +143,8 @@ printing, and psresize, for adjusting page sizes.") (base32 "0lyhjcrkmd5fcmh8h56bs4xr9k4jasmikv5vsix1hd4ai0ad1q9b")) (patches (search-patches "ghostscript-runpath.patch" - "ghostscript-CVE-2017-8291.patch")) + "ghostscript-CVE-2017-8291.patch" + "ghostscript-no-header-id.patch")) (modules '((guix build utils))) (snippet ;; Remove bundled libraries. The bundled OpenJPEG is a patched fork so @@ -155,7 +156,11 @@ printing, and psresize, for adjusting page sizes.") "tiff" "zlib")) ;; Get rid of timestamps (remove /CreationDate and /ModDate). (substitute* "devices/vector/gdevpdf.c" - ((", but we do the same") "*/ if (0) /*")))))) + ((", but we do the same") + (string-append "*/ " + "if (!getenv(\"GS_GENERATE_UUIDS\") || " + "(strcmp(getenv(\"GS_GENERATE_UUIDS\"), \"0\") != 0 && " + "strcmp(getenv(\"GS_GENERATE_UUIDS\"), \"no\") != 0)) /*"))))))) (build-system gnu-build-system) (outputs '("out" "doc")) ;19 MiB of HTML/PS doc + examples (arguments diff --git a/gnu/packages/patches/ghostscript-no-header-id.patch b/gnu/packages/patches/ghostscript-no-header-id.patch new file mode 100644 index 0000000000..19b71aadb5 --- /dev/null +++ b/gnu/packages/patches/ghostscript-no-header-id.patch @@ -0,0 +1,57 @@ +This patch makes the "/ID" field optional. + +If the environment variable GS_GENERATE_UUIDS is set to "0" or "no", it will +not write out the "/ID" field (if that's permissible). + +Upstream does not want to do this. + +See: https://bugs.ghostscript.com/show_bug.cgi?id=698208 +diff -ur orig/gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c +--- orig/gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c 2017-07-09 23:30:28.960479189 +0200 ++++ gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c 2017-07-09 23:34:34.306524488 +0200 +@@ -1580,8 +1580,11 @@ + * +1 for the linearisation dict and +1 for the primary hint stream. + */ + linear_params->FirsttrailerOffset = gp_ftell_64(linear_params->Lin_File.file); +- gs_sprintf(LDict, "\ntrailer\n<>\nstartxref\r\n0\n%%%%EOF\n \n", +- linear_params->LastResource + 3, pdev->ResourceUsage[linear_params->Info_id].NewObjectNumber, pdev->ResourceUsage[linear_params->Catalog_id].NewObjectNumber, fileID, fileID, 0); ++ gs_sprintf(LDict, "\ntrailer\n<LastResource + 3, pdev->ResourceUsage[linear_params->Info_id].NewObjectNumber, pdev->ResourceUsage[linear_params->Catalog_id].NewObjectNumber); ++ if (pdev->OwnerPassword.size > 0 || !(!getenv("GS_GENERATE_UUIDS") || (strcasecmp(getenv("GS_GENERATE_UUIDS"), "0") != 0 && strcasecmp(getenv("GS_GENERATE_UUIDS"), "no") != 0))) /* ID is mandatory when encrypting */ ++ gs_sprintf(LDict, "/ID[%s%s]", fileID, fileID); ++ gs_sprintf(LDict, "/Prev %d>>\nstartxref\r\n0\n%%%%EOF\n \n", 0); + fwrite(LDict, strlen(LDict), 1, linear_params->Lin_File.file); + + /* Write document catalog (Part 4) */ +@@ -2102,8 +2105,11 @@ + * in the missing values. + */ + code = gp_fseek_64(linear_params->sfile, linear_params->FirsttrailerOffset, SEEK_SET); +- gs_sprintf(LDict, "\ntrailer\n<>\nstartxref\r\n0\n%%%%EOF\n", +- linear_params->LastResource + 3, pdev->ResourceUsage[linear_params->Info_id].NewObjectNumber, pdev->ResourceUsage[linear_params->Catalog_id].NewObjectNumber, fileID, fileID, mainxref); ++ gs_sprintf(LDict, "\ntrailer\n<LastResource + 3, pdev->ResourceUsage[linear_params->Info_id].NewObjectNumber, pdev->ResourceUsage[linear_params->Catalog_id].NewObjectNumber); ++ if (pdev->OwnerPassword.size > 0 || !(!getenv("GS_GENERATE_UUIDS") || (strcasecmp(getenv("GS_GENERATE_UUIDS"), "0") != 0 || strcasecmp(getenv("GS_GENERATE_UUIDS"), "no") != 0))) /* ID is mandatory when encrypting */ ++ gs_sprintf(LDict, "/ID[%s%s]", fileID, fileID); ++ gs_sprintf(LDict, "/Prev %"PRId64">>\nstartxref\r\n0\n%%%%EOF\n", mainxref); + fwrite(LDict, strlen(LDict), 1, linear_params->sfile); + + code = gp_fseek_64(linear_params->sfile, pdev->ResourceUsage[HintStreamObj].LinearisedOffset, SEEK_SET); +@@ -2674,10 +2680,12 @@ + stream_puts(s, "trailer\n"); + pprintld3(s, "<< /Size %ld /Root %ld 0 R /Info %ld 0 R\n", + pdev->next_id, Catalog_id, Info_id); +- stream_puts(s, "/ID ["); +- psdf_write_string(pdev->strm, pdev->fileID, sizeof(pdev->fileID), 0); +- psdf_write_string(pdev->strm, pdev->fileID, sizeof(pdev->fileID), 0); +- stream_puts(s, "]\n"); ++ if (pdev->OwnerPassword.size > 0 || !(!getenv("GS_GENERATE_UUIDS") || (strcasecmp(getenv("GS_GENERATE_UUIDS"), "0") != 0 || strcasecmp(getenv("GS_GENERATE_UUIDS"), "no") != 0))) { /* ID is mandatory when encrypting */ ++ stream_puts(s, "/ID ["); ++ psdf_write_string(pdev->strm, pdev->fileID, sizeof(pdev->fileID), 0); ++ psdf_write_string(pdev->strm, pdev->fileID, sizeof(pdev->fileID), 0); ++ stream_puts(s, "]\n"); ++ } + if (pdev->OwnerPassword.size > 0) { + pprintld1(s, "/Encrypt %ld 0 R ", Encrypt_id); + } +Nur in gnu-ghostscript-9.14.0/devices/vector: gdevpdf.c.orig. From 63eb4a2a91af8d0a3801bb542f73fd21ecfc9a9e Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 10 Jul 2017 01:24:50 +0200 Subject: [PATCH 0138/1227] gnu: ghostscript: Make XMP UUID headers optional, depending on environment variable. * gnu/packages/patches/ghostscript-no-header-uuid.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/ghostscript.scm (ghostscript): Use it. --- gnu/local.mk | 1 + gnu/packages/ghostscript.scm | 3 +- .../patches/ghostscript-no-header-uuid.patch | 50 +++++++++++++++++++ 3 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/ghostscript-no-header-uuid.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8cbded44ee..9cf4648aa3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -620,6 +620,7 @@ dist_patch_DATA = \ %D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \ %D%/packages/patches/ghostscript-CVE-2017-8291.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \ + %D%/packages/patches/ghostscript-no-header-uuid.patch \ %D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index af565f3e3a..3a84db3e44 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -144,7 +144,8 @@ printing, and psresize, for adjusting page sizes.") "0lyhjcrkmd5fcmh8h56bs4xr9k4jasmikv5vsix1hd4ai0ad1q9b")) (patches (search-patches "ghostscript-runpath.patch" "ghostscript-CVE-2017-8291.patch" - "ghostscript-no-header-id.patch")) + "ghostscript-no-header-id.patch" + "ghostscript-no-header-uuid.patch")) (modules '((guix build utils))) (snippet ;; Remove bundled libraries. The bundled OpenJPEG is a patched fork so diff --git a/gnu/packages/patches/ghostscript-no-header-uuid.patch b/gnu/packages/patches/ghostscript-no-header-uuid.patch new file mode 100644 index 0000000000..473531220c --- /dev/null +++ b/gnu/packages/patches/ghostscript-no-header-uuid.patch @@ -0,0 +1,50 @@ +This patch makes the UUIDs in the XMP header optional, depending on the +setting of the environment variable GS_GENERATE_UUIDS. + +If the environment variable GS_GENERATE_UUIDS is set to "0" or "no", it will +not write out the Document UUID field and also will write the Instance ID +field value as "". + +Upstream does not want to do this. + +See: https://bugs.ghostscript.com/show_bug.cgi?id=698208 +diff -ur orig/gnu-ghostscript-9.14.0/devices/vector/gdevpdfe.c aa/gnu-ghostscript-9.14.0/devices/vector/gdevpdfe.c +--- orig/gnu-ghostscript-9.14.0/devices/vector/gdevpdfe.c 2017-07-09 23:30:28.960479189 +0200 ++++ gnu-ghostscript-9.14.0/devices/vector/gdevpdfe.c 2017-07-10 01:04:12.252478276 +0200 +@@ -617,7 +617,7 @@ + return code; + + /* PDF/A XMP reference recommends setting UUID to empty. If not empty must be a URI */ +- if (pdev->PDFA != 0) ++ if (pdev->PDFA != 0 || (getenv("GS_GENERATE_UUIDS") && (strcasecmp(getenv("GS_GENERATE_UUIDS"), "0") == 0 || strcasecmp(getenv("GS_GENERATE_UUIDS"), "no") == 0))) + instance_uuid[0] = 0x00; + + cre_date_time_len = pdf_get_docinfo_item(pdev, "/CreationDate", cre_date_time, sizeof(cre_date_time)); +@@ -719,15 +719,18 @@ + pdf_xml_tag_close(s, "rdf:Description"); + pdf_xml_newline(s); + +- pdf_xml_tag_open_beg(s, "rdf:Description"); +- pdf_xml_attribute_name(s, "rdf:about"); +- pdf_xml_attribute_value(s, instance_uuid); +- pdf_xml_attribute_name(s, "xmlns:xapMM"); +- pdf_xml_attribute_value(s, "http://ns.adobe.com/xap/1.0/mm/"); +- pdf_xml_attribute_name(s, "xapMM:DocumentID"); +- pdf_xml_attribute_value(s, document_uuid); +- pdf_xml_tag_end_empty(s); +- pdf_xml_newline(s); ++ if (!getenv("GS_GENERATE_UUIDS") || (strcasecmp(getenv("GS_GENERATE_UUIDS"), "0") != 0 && strcasecmp(getenv("GS_GENERATE_UUIDS"), "no") != 0)) ++ { ++ pdf_xml_tag_open_beg(s, "rdf:Description"); ++ pdf_xml_attribute_name(s, "rdf:about"); ++ pdf_xml_attribute_value(s, instance_uuid); ++ pdf_xml_attribute_name(s, "xmlns:xapMM"); ++ pdf_xml_attribute_value(s, "http://ns.adobe.com/xap/1.0/mm/"); ++ pdf_xml_attribute_name(s, "xapMM:DocumentID"); ++ pdf_xml_attribute_value(s, document_uuid); ++ pdf_xml_tag_end_empty(s); ++ pdf_xml_newline(s); ++ } + + pdf_xml_tag_open_beg(s, "rdf:Description"); + pdf_xml_attribute_name(s, "rdf:about"); From ad22c7185395a52bd90ea5890a2ac79f44d00352 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 10 Jul 2017 01:28:34 +0200 Subject: [PATCH 0139/1227] gnu: ghostscript: Make "/CreationDate", "/ModDate" optional, depending on environment variable. * gnu/packages/patches/ghostscript-no-header-creationdate.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/ghostscript.scm (ghostscript): Use it. --- gnu/local.mk | 1 + gnu/packages/ghostscript.scm | 10 ++------- .../ghostscript-no-header-creationdate.patch | 22 +++++++++++++++++++ 3 files changed, 25 insertions(+), 8 deletions(-) create mode 100644 gnu/packages/patches/ghostscript-no-header-creationdate.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9cf4648aa3..0880de0382 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -621,6 +621,7 @@ dist_patch_DATA = \ %D%/packages/patches/ghostscript-CVE-2017-8291.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-no-header-uuid.patch \ + %D%/packages/patches/ghostscript-no-header-creationdate.patch \ %D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 3a84db3e44..b15b032a72 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -144,6 +144,7 @@ printing, and psresize, for adjusting page sizes.") "0lyhjcrkmd5fcmh8h56bs4xr9k4jasmikv5vsix1hd4ai0ad1q9b")) (patches (search-patches "ghostscript-runpath.patch" "ghostscript-CVE-2017-8291.patch" + "ghostscript-no-header-creationdate.patch" "ghostscript-no-header-id.patch" "ghostscript-no-header-uuid.patch")) (modules '((guix build utils))) @@ -154,14 +155,7 @@ printing, and psresize, for adjusting page sizes.") '(begin (for-each delete-file-recursively '("freetype" "jbig2dec" "jpeg" "lcms2" "libpng" - "tiff" "zlib")) - ;; Get rid of timestamps (remove /CreationDate and /ModDate). - (substitute* "devices/vector/gdevpdf.c" - ((", but we do the same") - (string-append "*/ " - "if (!getenv(\"GS_GENERATE_UUIDS\") || " - "(strcmp(getenv(\"GS_GENERATE_UUIDS\"), \"0\") != 0 && " - "strcmp(getenv(\"GS_GENERATE_UUIDS\"), \"no\") != 0)) /*"))))))) + "tiff" "zlib")))))) (build-system gnu-build-system) (outputs '("out" "doc")) ;19 MiB of HTML/PS doc + examples (arguments diff --git a/gnu/packages/patches/ghostscript-no-header-creationdate.patch b/gnu/packages/patches/ghostscript-no-header-creationdate.patch new file mode 100644 index 0000000000..92ddbdade0 --- /dev/null +++ b/gnu/packages/patches/ghostscript-no-header-creationdate.patch @@ -0,0 +1,22 @@ +This patch makes emission of /CreationDate and /ModDate headers optional. + +If the environment variable GS_GENERATE_UUIDS is set to "0" or "no", it will +not write out the "/ID" field (if that's permissible). + +Upstream does not want to do this. + +See: https://bugs.ghostscript.com/show_bug.cgi?id=698208 +diff --git a/orig/gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c b/bb/gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c +index 0fb067e..b342e2c 100644 +--- orig/gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c ++++ gnu-ghostscript-9.14.0/devices/vector/gdevpdf.c +@@ -305,6 +305,9 @@ pdf_initialize_ids(gx_device_pdf * pdev) + * date and time, rather than (for example) %%CreationDate from the + * PostScript file. We think this is wrong, but we do the same. + */ ++ if (!getenv("GS_GENERATE_UUIDS") || ++ (strcasecmp(getenv("GS_GENERATE_UUIDS"), "0") != 0 && ++ strcasecmp(getenv("GS_GENERATE_UUIDS"), "no") != 0)) + { + struct tm tms; + time_t t; From a708fea4061a2b4ada5aaaaff44c74848d095409 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 2 Jun 2017 20:26:27 -0400 Subject: [PATCH 0140/1227] gnu: ncmpcpp: Update to 0.8. * gnu/packages/mpd.scm (ncmpcpp): Update to 0.8. [inputs]: Add curl. [source], [home-page]: Use HTTPS URLs. --- gnu/packages/mpd.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 5692ff6766..eb45974f6c 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -195,22 +195,23 @@ terminal using ncurses.") (define-public ncmpcpp (package (name "ncmpcpp") - (version "0.7.7") + (version "0.8") (source (origin (method url-fetch) (uri - (string-append "http://ncmpcpp.rybczak.net/stable/ncmpcpp-" + (string-append "https://ncmpcpp.rybczak.net/stable/ncmpcpp-" version ".tar.bz2")) (sha256 (base32 - "1vq19m36608pvw1g8nbcaqqb89wsw05v35pi45xwr20z7g4bxg5p")))) + "0nj6ky805a55acj0w57sbn3vfmmkbqp97rhbi0q9848n10f2l3rg")))) (build-system gnu-build-system) (inputs `(("libmpdclient" ,libmpdclient) ("boost" ,boost) ("readline" ,readline) ("ncurses" ,ncurses) ("taglib" ,taglib) - ("icu4c" ,icu4c))) + ("icu4c" ,icu4c) + ("curl" ,curl))) (native-inputs `(("pkg-config" ,pkg-config))) (arguments @@ -221,7 +222,7 @@ terminal using ncurses.") but it provides new useful features such as support for regular expressions for library searches, extended song format, items filtering, the ability to sort playlists, and a local file system browser.") - (home-page "http://ncmpcpp.rybczak.net/") + (home-page "https://ncmpcpp.rybczak.net/") (license license:gpl2+))) (define-public mpdscribble From 851ff8a5c587ff0d7e6f09a2a656503c2409d6c3 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 12 Jul 2017 17:01:45 -0400 Subject: [PATCH 0141/1227] gnu: wayland-protocols: Update to 1.9. * gnu/packages/freedesktop.scm (wayland-protocols): Update to 1.9. --- gnu/packages/freedesktop.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index a9a7e08da1..9dbb8c0869 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -393,7 +393,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") (define-public wayland-protocols (package (name "wayland-protocols") - (version "1.7") + (version "1.9") (source (origin (method url-fetch) (uri (string-append @@ -401,7 +401,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") "wayland-protocols-" version ".tar.xz")) (sha256 (base32 - "07qw166s6bm81zfnhf4lmww6wj0il960fm3vp7n1z3rign9jlpv3")))) + "0xag2yci0l13brmq2k12vdv0wlnb2j0rxk2cnp170fya63g74sv6")))) (build-system gnu-build-system) (inputs `(("wayland" ,wayland))) From 0a3aca47d9baed5f3cd25c6a6489a625776fd26e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 7 Mar 2017 22:38:35 -0500 Subject: [PATCH 0142/1227] gnu: grub: Fix build failure with recent flex. * gnu/packages/flex.scm (flex-2.6.1): New variable. * gnu/packages/bootloaders.scm (grub)[native-inputs]: Use flex-2.6.1. --- gnu/packages/bootloaders.scm | 5 ++++- gnu/packages/flex.scm | 13 +++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 2d8d89f754..76dad2923e 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -118,7 +118,10 @@ (native-inputs `(("unifont" ,unifont) ("bison" ,bison) - ("flex" ,flex) + ;; Due to a bug in flex >= 2.6.2, GRUB must be built with an older flex: + ;; + ;; TODO Try building with flex > 2.6.4. + ("flex" ,flex-2.6.1) ("texinfo" ,texinfo) ("help2man" ,help2man) diff --git a/gnu/packages/flex.scm b/gnu/packages/flex.scm index fdda5f365d..b09ac0bb89 100644 --- a/gnu/packages/flex.scm +++ b/gnu/packages/flex.scm @@ -85,3 +85,16 @@ regular expressions for each rule. Whenever it finds a match, it executes the corresponding C code.") (license (non-copyleft "file://COPYING" "See COPYING in the distribution.")))) + +(define-public flex-2.6.1 + (package + (inherit flex) + (version "2.6.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/westes/flex" + "/releases/download/v" version "/" + "flex-" version ".tar.xz")) + (sha256 + (base32 + "0gqhk4vkwy4gl9xbpgkljph8c0a5kpijz6wd0p5r9q202qn42yic")))))) From 49d035ff96c626df6145064efb0c044d74e39e03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 11 Jul 2017 15:28:51 +0200 Subject: [PATCH 0143/1227] gnu: ghostscript: Support cross-compilation. * gnu/packages/ghostscript.scm (ghostscript)[arguments]: Pass "CCAUX" and "--enable-save_confaux" to #:configure-flags. Add 'add-native-lz' phase when cross-compiling. [native-inputs]: Add ZLIB, LIBJPEG, and LCMS when cross-compiling. --- gnu/packages/ghostscript.scm | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index b15b032a72..d5d5aa2dff 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver ;;; Copyright © 2015 Ricardo Wurmus -;;; Copyright © 2013, 2015, 2016 Ludovic Courtès +;;; Copyright © 2013, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Alex Vong ;;; Copyright © 2017 Efraim Flashner ;;; Copyright © 2017 Leo Famulari @@ -165,7 +165,18 @@ printing, and psresize, for adjusting page sizes.") "LIBS=-lz" (string-append "ZLIBDIR=" (assoc-ref %build-inputs "zlib") "/include") - "--enable-dynamic") + "--enable-dynamic" + + ,@(if (%current-target-system) + '(;; Specify the native compiler, which is used to build 'echogs' + ;; and other intermediary tools when cross-compiling; see + ;; . + "CCAUX=gcc" + + ;; Save 'config.log' etc. of the native build under + ;; auxtmp/, useful for debugging. + "--enable-save_confaux") + '())) #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-doc-dir @@ -189,6 +200,15 @@ printing, and psresize, for adjusting page sizes.") (substitute* "base/unixhead.mak" (("/bin/sh") (which "sh"))) #t)) + ,@(if (%current-target-system) + `((add-after 'configure 'add-native-lz + (lambda _ + ;; Add missing '-lz' for native tools such as 'mkromfs'. + (substitute* "Makefile" + (("^AUXEXTRALIBS=(.*)$" _ value) + (string-append "AUXEXTRALIBS = -lz " value "\n"))) + #t))) + '()) (replace 'build (lambda _ ;; Build 'libgs.so', but don't build the statically-linked 'gs' @@ -207,7 +227,15 @@ printing, and psresize, for adjusting page sizes.") (native-inputs `(("perl" ,perl) ("python" ,python-wrapper) - ("tcl" ,tcl))) + ("tcl" ,tcl) + + ;; When cross-compiling, some of the natively-built tools require all + ;; these libraries. + ,@(if (%current-target-system) + `(("zlib/native" ,zlib) + ("libjpeg/native" ,libjpeg) + ("lcms2/native" ,lcms)) + '()))) (inputs `(("freetype" ,freetype) ("jbig2dec" ,jbig2dec) From 2f0d1b9dd2d75c5501767a15cf9b87fc057711c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 12 Jul 2017 23:48:20 +0200 Subject: [PATCH 0144/1227] gnu: ath9k-htc-firmware: Adjust Binutils patch to 2.28. * gnu/packages/patches/ath9k-htc-firmware-binutils.patch: Remove last hunk, which is now in Binutils 2.28. --- .../patches/ath9k-htc-firmware-binutils.patch | 20 ------------------- 1 file changed, 20 deletions(-) diff --git a/gnu/packages/patches/ath9k-htc-firmware-binutils.patch b/gnu/packages/patches/ath9k-htc-firmware-binutils.patch index aa253e135f..7bb5d77dba 100644 --- a/gnu/packages/patches/ath9k-htc-firmware-binutils.patch +++ b/gnu/packages/patches/ath9k-htc-firmware-binutils.patch @@ -5,9 +5,6 @@ Not applying the first patch (apparently) leads to miscompiled firmware, and loading it fails with a "Target is unresponsive" message from the 'ath9k_htc' module. -The final hunk, applied to 'gas/config/tc-xtensa.c', is copied from the -upstream file 'local/patches/binutils-2.27_fixup.patch'. - From dbca73446265ce01b8e11462c3346b25953e3399 Mon Sep 17 00:00:00 2001 From: Sujith Manoharan Date: Mon, 7 Jan 2013 15:59:53 +0530 @@ -28969,20 +28966,3 @@ index 30f4f41..fe9b051 100644 #define XCHAL_MAX_INSTRUCTION_SIZE 3 -- 1.8.1 - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index d062044..ca261ae 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -2228,7 +2228,7 @@ xg_reverse_shift_count (char **cnt_argp) - cnt_arg = *cnt_argp; - - /* replace the argument with "31-(argument)" */ -- new_arg = concat ("31-(", cnt_argp, ")", (char *) NULL); -+ new_arg = concat ("31-(", cnt_arg, ")", (char *) NULL); - - free (cnt_arg); - *cnt_argp = new_arg; --- -2.10.1 - From d6e63cf31cc113e310cd0e5dda9ac4f73a5caeae Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 14 Jul 2017 18:54:03 +1000 Subject: [PATCH 0145/1227] gnu: bowtie: Update to 2.3.2. * gnu/packages/bioinformatics.scm (bowtie): Update to 2.3.2. [inputs]: Add zlib. --- gnu/packages/bioinformatics.scm | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 82cd1e420d..a9f6259897 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1195,7 +1195,7 @@ errors at the end of reads.") (define-public bowtie (package (name "bowtie") - (version "2.2.9") + (version "2.3.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/BenLangmead/bowtie2/archive/v" @@ -1203,7 +1203,7 @@ errors at the end of reads.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1vp5db8i7is57iwjybcdg18f5ivyzlj5g1ix1nlvxainzivhz55g")) + "0hwa5r9qbglppb7sz5z79rlmmddr3n51n468jb3wh8rwjgn3yr90")) (modules '((guix build utils))) (snippet '(substitute* "Makefile" @@ -1211,12 +1211,14 @@ errors at the end of reads.") (("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"") (("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\""))))) (build-system gnu-build-system) - (inputs `(("perl" ,perl) - ("perl-clone" ,perl-clone) - ("perl-test-deep" ,perl-test-deep) - ("perl-test-simple" ,perl-test-simple) - ("python" ,python-2) - ("tbb" ,tbb))) + (inputs + `(("perl" ,perl) + ("perl-clone" ,perl-clone) + ("perl-test-deep" ,perl-test-deep) + ("perl-test-simple" ,perl-test-simple) + ("python" ,python-2) + ("tbb" ,tbb) + ("zlib" ,zlib))) (arguments '(#:make-flags (list "allall" From 06e372360eed08a1cbbb2081a591fbfa4785a2f2 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 14 Jul 2017 19:23:37 +1000 Subject: [PATCH 0146/1227] gnu: bowtie: Use 'modify-phases'. * gnu/packages/bioinformatics.scm (bowtie)[arguments]: Use 'modify-phases' syntax. --- gnu/packages/bioinformatics.scm | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a9f6259897..b5ee9cc125 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1225,16 +1225,14 @@ errors at the end of reads.") "WITH_TBB=1" (string-append "prefix=" (assoc-ref %outputs "out"))) #:phases - (alist-delete - 'configure - (alist-replace - 'check - (lambda* (#:key outputs #:allow-other-keys) - (system* "perl" - "scripts/test/simple_tests.pl" - "--bowtie2=./bowtie2" - "--bowtie2-build=./bowtie2-build")) - %standard-phases)))) + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + (lambda* (#:key outputs #:allow-other-keys) + (zero? (system* "perl" + "scripts/test/simple_tests.pl" + "--bowtie2=./bowtie2" + "--bowtie2-build=./bowtie2-build"))))))) (home-page "http://bowtie-bio.sourceforge.net/bowtie2/index.shtml") (synopsis "Fast and sensitive nucleotide sequence read aligner") (description From a08a9b8c38d641e25eaa2fe340112da78376884a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 7 Jul 2017 00:42:43 -0400 Subject: [PATCH 0147/1227] gnu: certbot, python-acme: Update to 0.16.0. * gnu/pckages/tls.scm (certbot, python-acme, python2-acme): Update to 0.16.0. --- gnu/packages/tls.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 00e99439b0..2b317a84f1 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -501,13 +501,13 @@ netcat implementation that supports TLS.") (package (name "python-acme") ;; Remember to update the hash of certbot when updating python-acme. - (version "0.15.0") + (version "0.16.0") (source (origin (method url-fetch) (uri (pypi-uri "acme" version)) (sha256 (base32 - "11zwgj663vr575pbqw74ia10wxaw16i8rnkcivsrbsx148rxdbcz")))) + "1kg9bnwywsr18hgvqyhxqqi90l2qa7449f41q3fdq2y59h9nk2sk")))) (build-system python-build-system) (arguments `(#:phases @@ -558,7 +558,7 @@ netcat implementation that supports TLS.") (uri (pypi-uri name version)) (sha256 (base32 - "1srvmjxz75dbafx7xfg1w3n9h3srr9p2ljnfsih9dwwd5cxh9i5q")))) + "11p1vsps5rbpha3k5jnmf9i6rcp6299h9b34wdh21cq6dgyh2n3r")))) (build-system python-build-system) (arguments `(,@(substitute-keyword-arguments (package-arguments python-acme) From 81dfbffc5480699f79ea23a82bf8a4a557176670 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 10:15:49 -0400 Subject: [PATCH 0148/1227] gnu: samba: Update to 4.6.6 [fixes CVE-2017-11103]. * gnu/packages/samba.scm (samba): Update to 4.6.6. --- gnu/packages/samba.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index b7f298d2be..4e0121040e 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -147,14 +147,14 @@ anywhere.") (define-public samba (package (name "samba") - (version "4.6.4") + (version "4.6.6") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 (base32 - "0qcsinhcq3frlqp7bfav5mdc9xn1h4xy4l6vfpf8cmcfs4lp7ija")))) + "13hs7xplygbl5dgwnn3l0hkbc0a282wdrkbx5c7y6nnqyw4whcgw")))) (build-system gnu-build-system) (arguments '(#:phases From 88958ee061afa0151195c855d02397e9f90b0172 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 11:18:16 -0400 Subject: [PATCH 0149/1227] gnu: perl-xml-namespacesupport: Update to 1.12. * gnu/packages/xml.scm (perl-xml-namespacesupport): Update to 1.12. --- gnu/packages/xml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 3cf1de305f..30f30535d0 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -421,7 +421,7 @@ libxslt library.") (define-public perl-xml-namespacesupport (package (name "perl-xml-namespacesupport") - (version "1.11") + (version "1.12") (source (origin (method url-fetch) @@ -429,7 +429,7 @@ libxslt library.") "XML-NamespaceSupport-" version ".tar.gz")) (sha256 (base32 - "1sklgcldl3w6gn706vx1cgz6pm4y5lfgsjxnfqyk20pilgq530bd")))) + "1vz5pbi4lm5fhq2slrs2hlp6bnk29863abgjlcx43l4dky2rbsa7")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/XML-NamespaceSupport") (synopsis "XML namespace support class") From b91c085df2073297c687c28c1026b640e69364ae Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 11:32:57 -0400 Subject: [PATCH 0150/1227] gnu: perl-test-leaktrace: Update to 0.16. * gnu/packages/perl.scm (perl-test-leaktrace): Update to 0.16. [source]: Update URL. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 876bad80d8..2f7144b735 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6629,15 +6629,15 @@ automatically aggregated and output to STDOUT.") (define-public perl-test-leaktrace (package (name "perl-test-leaktrace") - (version "0.15") + (version "0.16") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/G/GF/GFUJI/" + (uri (string-append "mirror://cpan/authors/id/L/LE/LEEJO/" "Test-LeakTrace-" version ".tar.gz")) (sha256 (base32 - "0pp6ip012c474ibw0mwd7jgig34gf98bb8xlqk4wdvw1d65vbf7g")))) + "00z4hcjra5nk700f3fgpy8fs036d7ry7glpn8g3wh7jzj7nrw22z")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Test-LeakTrace") (synopsis "Traces memory leaks in Perl") From bf200cb68430172028cbcebbb79ee73629d14a96 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 11:39:46 -0400 Subject: [PATCH 0151/1227] gnu: perl-module-scandeps: Update to 1.24. * gnu/packages/perl.scm (perl-module-scandeps): Update to 1.24. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 2f7144b735..15ae05c086 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -4373,7 +4373,7 @@ from Moose::Conflicts and moose-outdated.") (define-public perl-module-scandeps (package (name "perl-module-scandeps") - (version "1.18") + (version "1.24") (source (origin (method url-fetch) @@ -4381,7 +4381,7 @@ from Moose::Conflicts and moose-outdated.") "Module-ScanDeps-" version ".tar.gz")) (sha256 (base32 - "17mbyqwd8c20nqw01hjshl524vkw8pq6y2lwndmw36xkqr945npz")))) + "0s6cj90ckhy351gql52ksh4ms1x8piv26iadl09fcpzkx7j0srw9")))) (build-system perl-build-system) (native-inputs `(("perl-test-requires" ,perl-test-requires))) From 7e441facb489fcbaee97e46b72ca4add60dd9023 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 11:44:18 -0400 Subject: [PATCH 0152/1227] gnu: perl-carp-clan: Update to 6.06. * gnu/packages/perl.scm (perl-carp-clan): Update to 6.06. [source]: Update URL. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 15ae05c086..98f7a06041 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -689,15 +689,15 @@ Perl.") (define-public perl-carp-clan (package (name "perl-carp-clan") - (version "6.04") + (version "6.06") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/S/ST/STBEY/" + (uri (string-append "mirror://cpan/authors/id/K/KE/KENTNL/" "Carp-Clan-" version ".tar.gz")) (sha256 (base32 - "1v71k8s1pi16l5y579gnrg372c6pdvy6qqm6iddm8h1dx7n16bjl")))) + "1m6902n6s627nsvyn2vyrk29q7lh6808hsdk7ka5cirm27vchjpa")))) (build-system perl-build-system) (native-inputs `(("perl-test-exception" ,perl-test-exception))) From 3db83cc7e67bfa9dbb96ed01dbc407ea9ed44591 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 11:54:53 -0400 Subject: [PATCH 0153/1227] gnu: perl-class-inspector: Update to 1.31. * gnu/packages/perl.scm (perl-class-inspector): Update to 1.31. [source]: Update URL. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 98f7a06041..d32f678403 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -956,15 +956,15 @@ to the calling program.") (define-public perl-class-inspector (package (name "perl-class-inspector") - (version "1.28") + (version "1.31") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" + (uri (string-append "mirror://cpan/authors/id/P/PL/PLICEASE/" "Class-Inspector-" version ".tar.gz")) (sha256 (base32 - "04iij8dbcgaim7g109frpyf7mh4ydsd8zh53r53chk0zxnivg91w")))) + "1sqfjgzxx1f951fykc6vgfvys4j8rxaw2zf3jq26yrvs3ygn8pq6")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Class-Inspector") (synopsis "Get information about a class and its structure") From 1cb6e2cd6285e1967b2bb44d642c754bacad9108 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 11:57:31 -0400 Subject: [PATCH 0154/1227] gnu: perl-config-any: Update to 0.32. * gnu/packages/perl.scm (perl-config-any): Update to 0.32. [source]: Update URL. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d32f678403..925c49cb09 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1196,15 +1196,15 @@ as defined by two typical specimens of Perl coders.") (define-public perl-config-any (package (name "perl-config-any") - (version "0.24") + (version "0.32") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/B/BR/BRICAS/" + (uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/" "Config-Any-" version ".tar.gz")) (sha256 (base32 - "06n6jn3q3xhk57icwip0ihzqixxav6sgp6rrb35hahj1z748y3vi")))) + "0l31sg7dwh4dwwnql42hp7arkhcm15bhsgfg4i6xvbjzy9f2mnk8")))) (build-system perl-build-system) (propagated-inputs `(("perl-module-pluggable" ,perl-module-pluggable))) From 16e3c922a15feea0a586aac3bc10901503fce40b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 11:58:58 -0400 Subject: [PATCH 0155/1227] gnu: perl-devel-stacktrace-ashtml: Update to 0.15. * gnu/packages/perl.scm (perl-devel-stacktrace-ashtml): Update to 0.15. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 925c49cb09..7c8fcc98e0 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2361,7 +2361,7 @@ providing a simple interface to this data.") (define-public perl-devel-stacktrace-ashtml (package (name "perl-devel-stacktrace-ashtml") - (version "0.14") + (version "0.15") (source (origin (method url-fetch) @@ -2369,7 +2369,7 @@ providing a simple interface to this data.") "Devel-StackTrace-AsHTML-" version ".tar.gz")) (sha256 (base32 - "0yl296y0qfwybwjgqjzd4j2w2bj5a2nz342qqgxchnf5bqynl1c9")))) + "0iri5nb2lb76qv5l9z0vjpfrq5j2fyclkd64kh020bvy37idp0v2")))) (build-system perl-build-system) (propagated-inputs `(("perl-devel-stacktrace" ,perl-devel-stacktrace))) From 0b147484b1aab68e21a909fbcb70b5f8757d8410 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 12:00:41 -0400 Subject: [PATCH 0156/1227] gnu: perl-devel-symdump: Update to 2.18. * gnu/packages/perl.scm (perl-devel-symdump): Update to 2.18. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 7c8fcc98e0..4f8082261c 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2385,7 +2385,7 @@ each stack frame.") (define-public perl-devel-symdump (package (name "perl-devel-symdump") - (version "2.17") + (version "2.18") (source (origin (method url-fetch) @@ -2393,7 +2393,7 @@ each stack frame.") "Devel-Symdump-" version ".tar.gz")) (sha256 (base32 - "0qkfjk7bm7jwn9d9qaldg298zvkqh2f19fgvfh5j1rp66mwzql1c")))) + "1h3n0w23camhj20a97nw7v40rqa7xcxx8vkn2qjjlngm0yhq2vw2")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Devel-Symdump") (synopsis "Dump symbol names or the symbol table") From 86d1e079eca0a5272ab33d62cd43940795d7523b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 12:02:31 -0400 Subject: [PATCH 0157/1227] gnu: perl-html-tree: Update to 5.06. * gnu/packages/web.scm (perl-html-tree): Update to 5.06. [source]: Update URL. --- gnu/packages/web.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 8e60f64790..31a84dbc2a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2165,15 +2165,15 @@ in tables within an HTML document, either as text or encoded element trees.") (define-public perl-html-tree (package (name "perl-html-tree") - (version "5.03") + (version "5.06") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/C/CJ/CJM/" + (uri (string-append "mirror://cpan/authors/id/K/KE/KENTNL/" "HTML-Tree-" version ".tar.gz")) (sha256 (base32 - "13qlqbpixw470gnck0xgny8hyjj576m8y24bba2p9ai2lvy76vbx")))) + "0vjk4xrybjqs511qrh9cymhpbg9m3jjqr52qr035k6nzrccyndlw")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build) From 6b2f5caf4c1ba91f0e7fb1c128c54c777cd12df8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 12:08:24 -0400 Subject: [PATCH 0158/1227] gnu: perl-mime-charset: Update to 1.012.2. * gnu/packages/perl.scm (perl-mime-charset): Update to 1.012.2. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 4f8082261c..01fbc375de 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -4055,14 +4055,14 @@ the argument to the CACHESIZE parameter, will be cached.") (define-public perl-mime-charset (package (name "perl-mime-charset") - (version "1.012") + (version "1.012.2") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/N/NE/NEZUMI/" "MIME-Charset-" version ".tar.gz")) (sha256 (base32 - "1kfc5p4g1x9c0ffhg125wvhravcviny3alwrgnhnrm2a33ad3rff")))) + "04qxgcg9mvia121i3zcqxgp20y0d9kg0qv6hddk93ian0af7g347")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/MIME-Charset") (synopsis "Charset information for MIME messages") From 7881f6fa1bf350dc64012af8ef79ce6e1f0190bc Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 12:21:45 -0400 Subject: [PATCH 0159/1227] gnu: perl-modern-perl: Update to 1.20170117. * gnu/packages/perl.scm (perl-modern-perl): Update to 1.20170117. --- gnu/packages/perl.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 01fbc375de..c5957a28ee 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -4119,17 +4119,16 @@ file names are added for you.") (define-public perl-modern-perl (package (name "perl-modern-perl") - (version "1.20150127") + (version "1.20170117") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/C/CH/CHROMATIC/Modern-Perl-" - version - ".tar.gz")) + version ".tar.gz")) (sha256 (base32 - "0iv2crfxl3xh6mq36g1gv9fr8iqq3kpbj8afxy5qi60hh7v3xhcl")))) + "0a1n9c04zhs1a1km1zi0d1hj78d10qv3bhxr4bdi4chnc4saiwjx")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build))) From 2fec4b98606e86cdc1a992e5c003312f7805bfc7 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 12:24:18 -0400 Subject: [PATCH 0160/1227] gnu: perl-mro-compat: Update to 0.13. * gnu/packages/perl.scm (perl-mro-compat): Update to 0.13. [source]: Update URL. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c5957a28ee..de1f5149b0 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5075,15 +5075,15 @@ and libraries based on OpenSSL.") (define-public perl-mro-compat (package (name "perl-mro-compat") - (version "0.12") + (version "0.13") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/" + (uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/" "MRO-Compat-" version ".tar.gz")) (sha256 (base32 - "1mhma2g83ih9f8nkmg2k9l0x6izhhbb6k5lli4rpllxad4wbk9dv")))) + "1y547lr6zccf7919vx01v22zsajy528psanhg5aqschrrin3nb4a")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/MRO-Compat") (synopsis "MRO interface compatibility for Perls < 5.9.5") From c317f4f907ce49251896d0222c56d78cec5c3f62 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 12:27:40 -0400 Subject: [PATCH 0161/1227] gnu: perl-parse-yapp: Update to 1.2. * gnu/packages/perl.scm (perl-parse-yapp): Update to 1.2. [source]: Update URL. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index de1f5149b0..e5c637a372 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7960,17 +7960,17 @@ and memory overhead.") (define-public perl-parse-yapp (package (name "perl-parse-yapp") - (version "1.05") + (version "1.2") (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/F/FD/FDESAR/Parse-Yapp-" + "mirror://cpan/authors/id/W/WB/WBRASWELL/Parse-Yapp-" version ".tar.gz")) (sha256 (base32 - "0azjqqf4m7nkfgmmj4q77vy9sdgg01wn8xxv40bq3pis93xnr2i2")))) + "16p4qgqg28cy76ylcf4wq1r693gqpx8xq0w32b3564i67h49zljb")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Parse-Yapp") (synopsis "Generate and use LALR parsers") From 3949b36acc61286f397ceb4f858b23e4d9a1d383 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 12:29:01 -0400 Subject: [PATCH 0162/1227] gnu: perl-test-harness: Update to 3.39. * gnu/packages/perl.scm (perl-test-harness): Update to 3.39. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e5c637a372..2e40021fa1 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6598,7 +6598,7 @@ contents of a file is equal to a particular string.") (define-public perl-test-harness (package (name "perl-test-harness") - (version "3.36") + (version "3.39") (source (origin (method url-fetch) @@ -6606,7 +6606,7 @@ contents of a file is equal to a particular string.") "Test-Harness-" version ".tar.gz")) (sha256 (base32 - "0gmnjss0hjkyiwvgby50nl5nzv254pn7fjqqdysjil21n09nymp7")))) + "0chiqnzmna2mglm37nzxvn9qhq2j31iwz3i9isqjs7bf3k449gb9")))) (build-system perl-build-system) (arguments `(#:phases (alist-cons-before From a2bda5e4e30166e5b278276705e61008eb6110d2 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 14 Jul 2017 00:34:58 -0400 Subject: [PATCH 0163/1227] gnu: icecat: Add more fixes from upstream mozilla-esr52. * gnu/packages/gnuzilla.scm (icecat)[source]: Add selected fixes from the upstream mozilla-esr52 repository. --- gnu/packages/gnuzilla.scm | 41 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index db32b988ed..d4f1018f86 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -514,7 +514,46 @@ standards.") (mozilla-patch "icecat-bug-1368576.patch" "5a51a9ef8149" "0j0f9j0pryv3ik4bizhv8s6rr4dl1mjm01c23msayr0vbnpcagcs") (mozilla-patch "icecat-bug-1369913.patch" "f47eaebc0c5c" "1b52xm3awpigasaz0hk5b13l7v4ry9vrawf571lzy2wwhphs4nxx") (mozilla-patch "icecat-bug-1371424.patch" "40ce248a8c15" "1b722fiifr999ga0991cg5mlhidcnvf3zx2aiq5zjaabqn0f4dzk") - (mozilla-patch "icecat-bug-1372112.patch" "0c8359ac6718" "1w0v2p5jnhzvcsx8h1bglwjhp5y5bg1g8pzpvjw7pg1wlq2frccr"))) + (mozilla-patch "icecat-bug-1372112.patch" "0c8359ac6718" "1w0v2p5jnhzvcsx8h1bglwjhp5y5bg1g8pzpvjw7pg1wlq2frccr") + (mozilla-patch "icecat-bug-1354443-pt1.patch" "8c27a68ee87e" "0kn05q8nvp26w5rnj8r0byw89h2awmwn04l9l3xv2i5w2a7zmjzf") + (mozilla-patch "icecat-bug-1354443-pt2.patch" "b2ee0c5466da" "0jgwsppq0606lwg5jk9q69lqa14q3j7h3c7q6mxbz7zqrcg7d0zg") + (mozilla-patch "icecat-bug-1354443-pt3.patch" "25f6ec16e501" "1yqd5ndwgd8x2pj9k2bnaq3rb1g7wikq0ii7l4dm6bqwabi2rdsg") + (mozilla-patch "icecat-bug-1354443-pt4.patch" "30443b4f758e" "0riszl3xnpfq5ffywygrc12nsvx0ffd36d5rf4vp87r8lj3fr55r") + (mozilla-patch "icecat-bug-1354443-pt5.patch" "1b934ab92c59" "114cvfzfxgkwwd4zpnrmm2kx6m94k0b3xcraba9aawwwhdxj6a1d") + (mozilla-patch "icecat-bug-1354443-pt6.patch" "830a345dc0e7" "01riivv033w3mr8b2myaw38rz2za1bdlhybny737ly68hhc67xdz") + (mozilla-patch "icecat-bug-1365189.patch" "5c26df489768" "1fdw4zbn0ilfghanxky4y7qcmkpkks2q1aqkzv26dnhhrr8350a1") + (mozilla-patch "icecat-bug-1365875.patch" "f21e4d78a0a8" "0szsc3zm3wgrw8pxm0rz54whkrc14yy4d8vwmxgqsdns43qjgkpk") + (mozilla-patch "icecat-bug-1346590.patch" "f19b6c6a0c6c" "0wkr010qnh4127z1j7fp45sqdk2da9x7j2k405r0x5bgqdd09qzp") + (mozilla-patch "icecat-bug-1376087.patch" "8353a3fa4106" "0kzs8pl6spjwgdsmiw702zvbvz73ng9zf184clsfr82l8kmggbgw") + (mozilla-patch "icecat-bug-1371889.patch" "b38fed9a9772" "14vzsldlv4hjpxgnl6fjjbzhgcwsmd52v06cgmv0a7y3lnggj3hp") + (mozilla-patch "icecat-bug-1322896.patch" "c254d3cc826c" "0pixwr18qik87c8qf4irg6hdffd8rbwpng73jxg05h7s827nfw3g") + (mozilla-patch "icecat-bug-1368652.patch" "6356dbf20658" "0a0hsxkik7ysfa48w8k21lidaabwpmxi1d3214r5zqkqqfhn9qjm") + (mozilla-patch "icecat-bug-1358073.patch" "8d6e685d061b" "0430gwg7zzbg0q9w2m04s5ljh47bc8x1gxvmkzbn23bh1wy4d4sq") + (mozilla-patch "icecat-bug-1370869.patch" "3b8fde840188" "0vkymvzkfpzpg86npa5vpvvf564k18hkfdz8857rl0z4dp4rybzx") + (mozilla-patch "icecat-bug-1369994.patch" "267b649087ff" "04wzazdm0kvbfcgmlhx8qs1ibqn8sbvqdsd237rja5wpr761xxf1") + (mozilla-patch "icecat-bug-1354796.patch" "69d1a9de76b9" "1q0p4kf8pvnkwwff3lz526pjj15a25pf724awblkcnzamwbib5ns") + (mozilla-patch "icecat-bug-1363027.patch" "c5eaa2d51b9f" "1xyj5n1vqhscc369q6wxibs2igbilaiwyc0q9cq64j2qx8q0yqah") + (mozilla-patch "icecat-bug-1364189.patch" "852a7781259e" "12y344p54avz5mrqirq14zp4csx8ydilnjv9nsw48kpa9y0l5xsg") + (mozilla-patch "icecat-bug-1342417.patch" "37ccdc5fff2b" "1acywg8girplbs7wjrjbvkximhiyizddmnkkq1ldd0l3qbx9nihc") + (mozilla-patch "icecat-bug-1362924-pt1.patch" "057ed884ecb0" "1m49bqkq5lzc2j59wgwy0gbzvqj50p9lfn7cbc2n01v6d7m8rc2j") + (mozilla-patch "icecat-bug-1362924-pt2.patch" "dd7ed649b82f" "1fama1l2vx4p6ahhrsrpysfbk9nh5gwbi4pdnclpyxd42idsdqxs") + (mozilla-patch "icecat-bug-1353312.patch" "731958f7ff4d" "0l3i3mkb6rslnjag3caf4xyhjzxn91wfs0g6dbika4sxnhfs5d4i") + (mozilla-patch "icecat-bug-1364870.patch" "de8deecbcb02" "048ic1vk7fd7wxqjgjqlnb7kv03ynaa4wkrk0ka8m39pkjh3yyxj") + (mozilla-patch "icecat-bug-1365333.patch" "e3d13b270f45" "0jr8hpxpmfgrbh09xd9nj597cdnc6kl6gs5nir4zlzbbn8kp3429") + (mozilla-patch "icecat-bug-1372063.patch" "58a144bf9677" "12y8vikbzcfcfiidjdq67dvdhhvylx68wdgnypsafrd1q8dx9jza") + (mozilla-patch "icecat-bug-1373970.patch" "8321ef71adb5" "1wk8kq9n2vhqlinvvw01avv3c7qj0k3qnn7dj0whnl08a5yrqhpl") + (mozilla-patch "icecat-bug-1338646.patch" "322c18d011af" "1yqb7zmjz211ryb98pjj7axbj6bwkj63rmfyifsybdy3zpb4nf48") + (mozilla-patch "icecat-bug-1371283.patch" "f9bc084fbb8a" "1ssml15yzx9s0wraq4n0xvq5bw7j8xq0p2y39h8j3f1c448n0j50") + (mozilla-patch "icecat-bug-1359477.patch" "9b70b5b852e4" "0z2bi7w46g7mm8msav8vz28mgvnv21z3a5876n9gpw317gns4d6a") + (mozilla-patch "icecat-bug-1366903.patch" "6785c2a852da" "0p9jr171qi59scr5lrj6g0mv8mgm1i1wglr3jd16xywb0ymynnn5") + (mozilla-patch "icecat-bug-1368105.patch" "11c8e23f0fd7" "0zcikv6dn7biii4gspv2kfvma5hc76hk86jahm3zl2zlkk8ikfm9") + (mozilla-patch "icecat-bug-1355168.patch" "f45ba43512ad" "0p28q5acns5zjj7ks2x5lrmwzzps741507sq31xvrpzan5yav37x") + (mozilla-patch "icecat-bug-1308820.patch" "e9a10fac6aae" "1s2zaka6ik1rmylamyh38vsqnqlblbqdhjpp0cv08fjb9flh5sbw") + (mozilla-patch "icecat-bug-1305036.patch" "c42a348f2ed0" "1pz7qbdv9xvyd1dy7g9h047c0gmrgp5qdy2360qjk6879n74h1zb") + (mozilla-patch "icecat-bug-1342913.patch" "f02db36497d2" "0g1kg418l1cibh5k1sjqj2vs2jcblpbn7b06qazk2kzcg70vf5gv") + (mozilla-patch "icecat-bug-1374047.patch" "0a44ed156da5" "1y8z1czm7f91p9bpd32b9k43nl0b9g4fzwv4w0khby9y38xgvcbs") + (mozilla-patch "icecat-bug-1371259.patch" "0a86729d653e" "0wyh7qskjwq9274d25p2ajylaab5mj5h8by58rz9lxsz06zrnz9f") + (mozilla-patch "icecat-bug-1378826.patch" "98ff43fb228a" "0ih0nsmk8rzdrajzlnryqiqb71jg7v4p71hfla2hrlvn41r3709m"))) (modules '((guix build utils))) (snippet '(begin From a592166505cd25742edbdd5d11840ca1b342d246 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 14 Jul 2017 17:52:21 +0200 Subject: [PATCH 0164/1227] gnu: knot: Update to 2.5.3. * gnu/packages/dns.scm (knot): Update to 2.5.3. --- gnu/packages/dns.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index e9fb7cc496..03bfc8ae2e 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -486,14 +486,14 @@ Extensions} (DNSSEC).") (define-public knot (package (name "knot") - (version "2.5.2") + (version "2.5.3") (source (origin (method url-fetch) (uri (string-append "https://secure.nic.cz/files/knot-dns/" name "-" version ".tar.xz")) (sha256 (base32 - "1sgmw8k9qccc7bgxbwrvahdinj1bjq90iza55rxj199mxsj72ri8")) + "13lxxnnw0v7s0q648grz87bwlfwjh5sfbj1qax7jdklalqqy52np")) (modules '((guix build utils))) (snippet '(begin From e0d87f8e5a73df5fa03b83d4b7f5a1c781d25054 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 14 Jul 2017 19:31:09 +0200 Subject: [PATCH 0165/1227] gnu: yadifa: Update to 2.2.5. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/dns.scm (yadifa): Update to 2.2.5. [source]: Call the source revision a ‘build’ to match upstream terminology. --- gnu/packages/dns.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 03bfc8ae2e..f01d03bae3 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -443,17 +443,17 @@ served by AS112. Stub and forward zones are supported.") (define-public yadifa (package (name "yadifa") - (version "2.2.4") + (version "2.2.5") (source - (let ((revision "6924")) + (let ((build "6937")) (origin (method url-fetch) (uri (string-append "http://cdn.yadifa.eu/sites/default/files/releases/" - name "-" version "-" revision ".tar.gz")) + name "-" version "-" build ".tar.gz")) (sha256 (base32 - "060ydcfn9876bs6p5xi3p1k20ca547f4jck25r5x1hnxjlv7ss03"))))) + "146fs52izf6dfwsxal3srpwin2yyl41g31cy4pyvbi5mqy2craj7"))))) (build-system gnu-build-system) (native-inputs `(("which" ,which))) From e049372a4abff7ba8d5981e1dd77df44c4660ab9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 14 Jul 2017 19:38:06 +0200 Subject: [PATCH 0166/1227] gnu: yadifa: Re-enable NSID support. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/dns.scm (yadifa)[arguments]: Remove ‘--disable-nsid’ configure flag. --- gnu/packages/dns.scm | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index f01d03bae3..ccb13d4fec 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -470,10 +470,7 @@ served by AS112. Stub and forward zones are supported.") "--enable-shared" "--disable-static" "--enable-messages" "--enable-ctrl" "--enable-nsec" "--enable-nsec3" - "--enable-tsig" "--enable-caching" - ;; NSID is a rarely-used debugging aid, that also - ;; causes the build to fail. Just disable it. - "--disable-nsid"))) + "--enable-tsig" "--enable-caching"))) (home-page "http://www.yadifa.eu/") (synopsis "Authoritative DNS name server") (description "YADIFA is an authoritative name server for the @dfn{Domain From 7b323aff14f01130559c9fdb25f7da479e5e106e Mon Sep 17 00:00:00 2001 From: ng0 Date: Fri, 14 Jul 2017 17:53:43 +0000 Subject: [PATCH 0167/1227] gnu: neomutt: Update to 20170714. * gnu/packages/mail.scm (neomutt): Update to 20170714. Signed-off-by: Leo Famulari --- gnu/packages/mail.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index f9418f6580..0d1d399904 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -265,7 +265,7 @@ operating systems.") (package (inherit mutt) (name "neomutt") - (version "20170609") + (version "20170714") (source (origin (method url-fetch) @@ -273,7 +273,7 @@ operating systems.") "/archive/" name "-" version ".tar.gz")) (sha256 (base32 - "1kdhnhdlv84v6brhqgh8g0h6cpcbwfc59b4g09zkkgqc4fnggapy")))) + "10x3sxai773n0gfqpi904ci1qvngymcbc2didswrm92wz4h8km20")))) (inputs `(("cyrus-sasl" ,cyrus-sasl) ("gdbm" ,gdbm) From 51ccb1be5532c5001003644a43cfdc5596ff5f92 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 14 Jul 2017 20:05:59 +0200 Subject: [PATCH 0168/1227] gnu: gstreamer: Update to 1.12.2. * gnu/packages/gstreamer.scm (gstreamer, gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, gst-libav, python-gst): Update to 1.12.2. --- gnu/packages/gstreamer.scm | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 6c0eda99c8..cf14abf469 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -98,7 +98,7 @@ arrays of data.") (define-public gstreamer (package (name "gstreamer") - (version "1.12.1") + (version "1.12.2") (source (origin (method url-fetch) @@ -107,7 +107,7 @@ arrays of data.") version ".tar.xz")) (sha256 (base32 - "1lm6lcr0rv0mzsdl9vjdnf3vb136qmcslvz3m5zlai7zngcbji4h")))) + "1fllz7n58lavyy4nh64xc7izd4ffhl12a2ff0yg4z67al8wkzplz")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments @@ -146,7 +146,7 @@ This package provides the core library and elements.") (define-public gst-plugins-base (package (name "gst-plugins-base") - (version "1.12.1") + (version "1.12.2") (source (origin (method url-fetch) @@ -154,7 +154,7 @@ This package provides the core library and elements.") name "-" version ".tar.xz")) (sha256 (base32 - "0r84krn8dpimp6kk9cf38danrbbsypx6j6ykr6rl1a3lnnnrzkhc")))) + "0x86a7aph0y6gyq178plvwvbbyhkfb3hf0gadx9sk5z1mzixqrsh")))) (build-system gnu-build-system) (outputs '("out" "doc")) (propagated-inputs @@ -201,7 +201,7 @@ for the GStreamer multimedia library.") (define-public gst-plugins-good (package (name "gst-plugins-good") - (version "1.12.1") + (version "1.12.2") (source (origin (method url-fetch) @@ -210,7 +210,7 @@ for the GStreamer multimedia library.") name "-" version ".tar.xz")) (sha256 (base32 - "0jzm5jp22238y3rb0j1dsxyp77dq0wk03gn9kvq25rphlx38w7hj")))) + "15pfw54fsh9s9xwrnbap4z4njwgqdfvq52k562d2hc5b11rfx4am")))) (build-system gnu-build-system) (inputs `(("aalib" ,aalib) @@ -266,14 +266,14 @@ developers consider to have good quality code and correct functionality.") (define-public gst-plugins-bad (package (name "gst-plugins-bad") - (version "1.12.1") + (version "1.12.2") (source (origin (method url-fetch) (uri (string-append "https://gstreamer.freedesktop.org/src/" name "/" name "-" version ".tar.xz")) (sha256 (base32 - "15svf3d4n13r1c18mx9ya3ymibv0vbx9s593j0cm0kn4s54q1vvx")))) + "0dwyq03g2m0p16dwx8q5qvjn5x9ia72h21sf87mp97gmwkfpwb4w")))) (outputs '("out" "doc")) (build-system gnu-build-system) (arguments @@ -343,7 +343,7 @@ par compared to the rest.") (define-public gst-plugins-ugly (package (name "gst-plugins-ugly") - (version "1.12.1") + (version "1.12.2") (source (origin (method url-fetch) @@ -351,7 +351,7 @@ par compared to the rest.") name "/" name "-" version ".tar.xz")) (sha256 (base32 - "0s8hiv4asqd6nwnksqv6cwpzan41zd0nd8nhlm7s64wp0lyi5hlg")))) + "0rplyp1qk359c97ig9i2vc1v34g92khd8dslwfipva1ypwmr9hqw")))) (build-system gnu-build-system) (inputs `(("gst-plugins-base" ,gst-plugins-base) @@ -382,7 +382,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.") (define-public gst-libav (package (name "gst-libav") - (version "1.12.1") + (version "1.12.2") (source (origin (method url-fetch) (uri (string-append @@ -390,7 +390,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.") name "-" version ".tar.xz")) (sha256 (base32 - "0xshib0hsn8yjmd12ipsrbrvxa5qnhnz7zmdj7lms6b3vwzq5msm")))) + "1crdahkjm23byg1awcrjkmgfbalfpvvac7h7whm6b2r1pfwkbdsv")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-system-libav") @@ -420,7 +420,7 @@ compression formats through the use of the libav library.") (define-public python-gst (package (name "python-gst") - (version "1.12.1") + (version "1.12.2") (source (origin (method url-fetch) (uri (string-append @@ -428,7 +428,7 @@ compression formats through the use of the libav library.") "gst-python-" version ".tar.xz")) (sha256 (base32 - "18bq03xdc0jgrza4114lrcj82yai4azkjzfxflqagc0y417vw88p")))) + "0iwy0v2k27wd3957ich6j5f0f04b0wb2mb175ypf2lx68snk5k7l")))) (build-system gnu-build-system) (arguments ;; XXX: Factorize python-sitedir with python-build-system. From da83f0953a040c2f58da7647dc5d773b430e7098 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 14:35:56 -0400 Subject: [PATCH 0169/1227] gnu: expat: Update replacement to 2.2.2 [security fixes]. See 'Changes' in the source distribution for more information about the fixed security issues. * gnu/packages/xml.scm (expat)[replacement]: Update to 2.2.2. (expat-2.2.1): Replace with ... (expat-2.2.2): ... new variable. --- gnu/packages/xml.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 67d6c8e8df..143b8d1f6a 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -56,7 +56,7 @@ (package (name "expat") (version "2.2.0") - (replacement expat-2.2.1) + (replacement expat-2.2.2) (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/expat/expat/" @@ -75,17 +75,17 @@ stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags).") (license license:expat))) -(define expat-2.2.1 ; Fixes CVE-2017-9233, CVE-2016-9063 and other issues. +(define expat-2.2.2 ; Fixes CVE-2017-9233, CVE-2016-9063 and other issues. (package (inherit expat) - (version "2.2.1") + (version "2.2.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/expat/expat/" version "/expat-" version ".tar.bz2")) (sha256 (base32 - "11c8jy1wvllvlk7xdc5cm8hdhg0hvs8j0aqy6s702an8wkdcls0q")))))) + "0ik0r39ala9c6hj4kxrk933klgwkzlkbrfhvhaykx8l1rwgr2xj3")))))) (define-public libebml (package From 87ffa416af029722a73b3244b409f86e39086bc3 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Wed, 5 Jul 2017 22:31:03 +0200 Subject: [PATCH 0170/1227] gnu: Add ncurses-with-gpm. * gnu/packages/linux.scm (ncurses/gpm): New variable. --- gnu/packages/linux.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1a9e9d709b..58f6f36625 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3013,6 +3013,18 @@ applications running on the Linux console. It allows users to select items and copy/paste text in the console and in xterm.") (license license:gpl2+))) +(define-public ncurses/gpm + (package/inherit ncurses + (name "ncurses-with-gpm") + (arguments + (substitute-keyword-arguments (package-arguments ncurses) + ((#:configure-flags cf) + `(cons (string-append "--with-gpm=" + (assoc-ref %build-inputs "gpm") + "/lib/libgpm.so.2") ,cf)))) + (inputs + `(("gpm" ,gpm))))) + (define-public btrfs-progs (package (name "btrfs-progs") From 4d02e9ff90ca931604af8aabe9889af0944690f8 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Wed, 5 Jul 2017 22:31:04 +0200 Subject: [PATCH 0171/1227] gnu: Add guile-ncurses-with-gpm. * gnu/packages/guile.scm (guile-ncurses/gpm): New variable. --- gnu/packages/guile.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index b654bbc96e..c91d6b235c 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -519,6 +519,13 @@ many readers as needed).") library.") (license license:lgpl3+))) +(define-public guile-ncurses/gpm + (package + (inherit guile-ncurses) + (name "guile-ncurses-with-gpm") + (inputs `(("ncurses" ,ncurses/gpm) + ("guile" ,guile-2.2))))) + (define-public mcron (package (name "mcron") From 7734ed7af73dabb8cbc89b8d6807b78f2f91c8fa Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 15 Jul 2017 10:19:34 +0300 Subject: [PATCH 0172/1227] gnu: Add python-schema. * gnu/packages/python.scm (python-schema, python2-schema, python-schema-0.5, python2-schema-0.5): New variables. --- gnu/packages/python.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index d110a1cb32..83bef4b77e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2711,6 +2711,46 @@ version numbers.") (propagated-inputs `(("python2-functools32" ,python2-functools32)))))) +(define-public python-schema + (package + (name "python-schema") + (version "0.6.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "schema" version)) + (sha256 + (base32 + "1lw28j9w9vxyigg7vkfkvi6ic9lgjkdnfvnxdr7pklslqvzmk2vm")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest))) + (home-page "https://github.com/keleshev/schema") + (synopsis "Simple data validation library") + (description + "@code{python-schema} is a library for validating Python data +structures, such as those obtained from config-files, forms, external +services or command-line parsing, converted from JSON/YAML (or +something else) to Python data-types.") + (license license:psfl))) + +(define-public python2-schema + (package-with-python2 python-schema)) + +(define-public python-schema-0.5 + (package (inherit python-schema) + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "schema" version)) + (sha256 + (base32 + "10zqvpaky51kgb8nd42bk7jwl8cn2zvayxjpdc1wwmpybj92x67s")))))) + +(define-public python2-schema-0.5 + (package-with-python2 python-schema-0.5)) + (define-public python-kitchen (package (name "python-kitchen") From 4ff9e8685f2b5180cff3c2f557b60fb71dcec83f Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 15 Jul 2017 10:19:35 +0300 Subject: [PATCH 0173/1227] gnu: Add python-backports-csv. * gnu/packages/python.scm (python-backports-csv, python2-backports-csv): New variables. --- gnu/packages/python.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 83bef4b77e..6db8a02430 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -6373,6 +6373,31 @@ connection to each user.") (define-public python2-backports-abc (package-with-python2 python-backports-abc)) +(define-public python-backports-csv + (package + (name "python-backports-csv") + (version "1.0.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "backports.csv" version)) + (sha256 + (base32 + "1imzbrradkfn8s2m1qcimyn74dn1mz2p3j381jljn166rf2i6hlc")))) + (build-system python-build-system) + (home-page "https://github.com/ryanhiebert/backports.csv") + (synopsis "Backport of Python 3's csv module for Python 2") + (description + "Provides a backport of Python 3's @code{csv} module for parsing +comma separated values. The API of the @code{csv} module in Python 2 +is drastically different from the @code{csv} module in Python 3. +This is due, for the most part, to the difference between str in +Python 2 and Python 3.") + (license license:psfl))) + +(define-public python2-backports-csv + (package-with-python2 python-backports-csv)) + (define-public python2-backports-shutil-get-terminal-size (package (name "python2-backports-shutil-get-terminal-size") From 841e59083d0481c9efcbe5e3bb4c728ad8cbd044 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 15 Jul 2017 10:19:36 +0300 Subject: [PATCH 0174/1227] gnu: Add python-jsonpatch. * gnu/packages/python.scm (python-jsonpatch, python2-jsonpatch, python-jsonpatch-0.4, python2-jsonpatch-0.4): New variables. --- gnu/packages/python.scm | 43 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 6db8a02430..1f138a8efd 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -15238,6 +15238,49 @@ by path in a JSON document (see RFC 6901).") (define-public python2-jsonpointer (package-with-python2 python-jsonpointer)) +(define-public python-jsonpatch + (package + (name "python-jsonpatch") + (version "1.16") + (source + (origin + (method url-fetch) + ;; pypi version lacks tests.js + (uri (string-append "https://github.com/stefankoegl/python-json-patch/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "085ykisl8v7mv9h7hvhdy3l2fjzs4214gx32r5k6nx4f76hbv6y5")))) + (build-system python-build-system) + (native-inputs + `(("python-jsonpointer" ,python-jsonpointer))) + (home-page "https://github.com/stefankoegl/python-json-patch") + (synopsis "Applying JSON Patches in Python 2.6+ and 3.x") + (description "@code{jsonpatch} is a library and program that allows +applying JSON Patches according to RFC 6902.") + (license license:bsd-3))) + +(define-public python2-jsonpatch + (package-with-python2 python-jsonpatch)) + +(define-public python-jsonpatch-0.4 + (package (inherit python-jsonpatch) + (name "python-jsonpatch") + (version "0.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/stefankoegl/python-json-patch/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0j0cd9z9zyp8kppp464jxrfgrnbgkzl1yi10i5gsv8yz6d95929d")))))) + +(define-public python2-jsonpatch-0.4 + (package-with-python2 python-jsonpatch-0.4)) + (define-public python-rfc3987 (package (name "python-rfc3987") From a12b30a05a7e2795803f043925ceb6f4b271c955 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sat, 15 Jul 2017 11:46:18 +0200 Subject: [PATCH 0175/1227] gnu: Add python-pytest-capturelog. * gnu/packages/python.scm (python-pytest-capturelog, python2-pytest-capturelog): New variables. --- gnu/packages/python.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 1f138a8efd..1c53956fb1 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -14362,6 +14362,29 @@ pytest report.") (define-public python2-pytest-warnings (package-with-python2 python-pytest-warnings)) +(define-public python-pytest-capturelog + (package + (name "python-pytest-capturelog") + (version "0.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pytest-capturelog" version ".tar.gz")) + (sha256 + (base32 + "038049nyjl7di59ycnxvc9nydivc5m8np3hqq84j2iirkccdbs5n")))) + (build-system python-build-system) + (propagated-inputs + `(("pytest" ,python-pytest-3.0))) + (home-page "http://bitbucket.org/memedough/pytest-capturelog/overview") + (synopsis "Pytest plugin to catch log messages") + (description + "Python-pytest-catchlog is a pytest plugin to catch log messages.") + (license license:expat))) + +(define-public python2-pytest-capturelog + (package-with-python2 python-pytest-capturelog)) + (define-public python-pytest-catchlog (package (name "python-pytest-catchlog") From 95c36822e8358fcdc5ff1459c8a21d36041d512b Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 15 Jul 2017 10:19:37 +0300 Subject: [PATCH 0176/1227] gnu: Add python-internetarchive. * gnu/packages/web.scm (python-internetarchive, python2-internetarchive): New variable. --- gnu/packages/web.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 8029903546..df1ff79253 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -4695,3 +4695,53 @@ arrays. It creates a JSON string on stdout from words provided as command-line arguments or read from stdin.") (license (list l:gpl2+ l:expat)))) ; json.c, json.h + +(define-public python-internetarchive + (package + (name "python-internetarchive") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/jjjake/internetarchive/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "00v1489rv1ydcihwbdl7sqpcpmm98b9kqqlfggr32k0ndmv7ivas")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ; 11 tests of 105 fail to mock "requests". + #:phases + (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + (setenv "PATH" (string-append (assoc-ref outputs "out") "/bin" + ":" (getenv "PATH"))) + (zero? (system* "py.test"))))))) + (propagated-inputs + `(("python-requests" ,python-requests) + ("python-jsonpatch" ,python-jsonpatch-0.4) + ("python-docopt" ,python-docopt) + ("python-clint" ,python-clint) + ("python-six" ,python-six) + ("python-schema" ,python-schema-0.5) + ("python-backports-csv" ,python-backports-csv))) + (native-inputs + `(("python-pytest-3.0" ,python-pytest-3.0) + ("python-pytest-capturelog" ,python-pytest-capturelog) + ("python-responses" ,python-responses))) + (home-page "https://github.com/jjjake/internetarchive") + (synopsis "Command-line interface to archive.org") + (description "@code{ia} is a command-line tool for using +@url{archive.org} from the command-line. It also emplements the +internetarchive python module for programatic access to archive.org.") + (properties + `((python2-variant . ,(delay python2-internetarchive)))) + (license l:agpl3+))) + +(define-public python2-internetarchive + (package-with-python2 + (strip-python2-variant python-internetarchive))) From c3b5b1bb49084ac816750cedc8f03a55884b2dd8 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sat, 15 Jul 2017 12:48:24 +0200 Subject: [PATCH 0177/1227] gnu: python-internetarchive: Heed disabled test suite. * gnu/packages/web.scm (python-internetarchive)[arguments]: Heed disable test suite. --- gnu/packages/web.scm | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index df1ff79253..90ddd9f7c7 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -4716,11 +4716,16 @@ command-line arguments or read from stdin.") (modify-phases %standard-phases (delete 'check) (add-after 'install 'check - (lambda* (#:key inputs outputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - (setenv "PATH" (string-append (assoc-ref outputs "out") "/bin" - ":" (getenv "PATH"))) - (zero? (system* "py.test"))))))) + (lambda* (#:key inputs outputs target (tests? (not target)) #:allow-other-keys) + (if tests? + (begin + (add-installed-pythonpath inputs outputs) + (setenv "PATH" (string-append (assoc-ref outputs "out") "/bin" + ":" (getenv "PATH"))) + (zero? (system* "py.test"))) + (begin + (format #t "test suite not run~%") + #t))))))) (propagated-inputs `(("python-requests" ,python-requests) ("python-jsonpatch" ,python-jsonpatch-0.4) From 8d858010b373485dcd999c30ec58bede53bd7ecd Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 11 Jun 2017 12:58:38 +0200 Subject: [PATCH 0178/1227] bootloader: Add u-boot. * gnu/bootloader/u-boot.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi: Document it. --- doc/guix.texi | 8 +++---- gnu/bootloader/u-boot.scm | 47 +++++++++++++++++++++++++++++++++++++++ gnu/local.mk | 1 + 3 files changed, 52 insertions(+), 4 deletions(-) create mode 100644 gnu/bootloader/u-boot.scm diff --git a/doc/guix.texi b/doc/guix.texi index dc764cc292..ecf9617725 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -15931,10 +15931,10 @@ The type of a bootloader configuration declaration. @cindex UEFI, bootloader @cindex BIOS, bootloader The bootloader to use, as a @code{bootloader} object. For now -@code{grub-bootloader}, @code{grub-efi-bootloader} and -@code{extlinux-bootloader} are supported. @code{grub-efi-bootloader}, -allows to boot on modern systems using the @dfn{Unified Extensible -Firmware Interface} (UEFI). +@code{grub-bootloader}, @code{grub-efi-bootloader}, +@code{extlinux-bootloader} and @code{u-boot-bootloader} are supported. +@code{grub-efi-bootloader} allows to boot on modern systems using the +@dfn{Unified Extensible Firmware Interface} (UEFI). Available bootloaders are described in @code{(gnu bootloader @dots{})} modules. diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm new file mode 100644 index 0000000000..963b0d7597 --- /dev/null +++ b/gnu/bootloader/u-boot.scm @@ -0,0 +1,47 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 David Craven +;;; Copyright © 2017 Mathieu Othacehe +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu bootloader u-boot) + #:use-module (gnu bootloader extlinux) + #:use-module (gnu bootloader) + #:use-module (gnu system) + #:use-module (gnu packages bootloaders) + #:use-module (guix gexp) + #:use-module (guix monads) + #:use-module (guix records) + #:use-module (guix utils) + #:export (u-boot-bootloader)) + +(define install-u-boot + #~(lambda (bootloader device mount-point) + (if bootloader + (error "Failed to install U-Boot")))) + + + +;;; +;;; Bootloader definitions. +;;; + +(define u-boot-bootloader + (bootloader + (inherit extlinux-bootloader) + (name 'u-boot) + (package #f) + (installer install-u-boot))) diff --git a/gnu/local.mk b/gnu/local.mk index 1ced658911..b79bc1992c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -40,6 +40,7 @@ GNU_SYSTEM_MODULES = \ %D%/bootloader.scm \ %D%/bootloader/grub.scm \ %D%/bootloader/extlinux.scm \ + %D%/bootloader/u-boot.scm \ %D%/packages.scm \ %D%/packages/abduco.scm \ %D%/packages/abiword.scm \ From 59132b800093e486e4d81aed6b837e9ac76aa86c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Wed, 12 Jul 2017 20:35:57 +0800 Subject: [PATCH 0179/1227] gnu: Rename (gnu packages qemu) to (gnu packages virtualization). * gnu/packages/qemu.scm: Rename this ... * gnu/packages/virtualization.scm: ... to this. * gnu/local.mk (GNU_SYSTEM_MODULES), gnu/packages/bootloaders.scm, gnu/packages/debug.scm, gnu/packages/gnome.scm, gnu/system/vm.scm, gnu/tests/install.scm: Adjust accordingly. --- gnu/local.mk | 2 +- gnu/packages/bootloaders.scm | 2 +- gnu/packages/debug.scm | 2 +- gnu/packages/gnome.scm | 2 +- gnu/packages/{qemu.scm => virtualization.scm} | 2 +- gnu/system/vm.scm | 2 +- gnu/tests/install.scm | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) rename gnu/packages/{qemu.scm => virtualization.scm} (99%) diff --git a/gnu/local.mk b/gnu/local.mk index b79bc1992c..50fac30404 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -328,7 +328,6 @@ GNU_SYSTEM_MODULES = \ %D%/packages/pv.scm \ %D%/packages/python.scm \ %D%/packages/tryton.scm \ - %D%/packages/qemu.scm \ %D%/packages/qt.scm \ %D%/packages/ragel.scm \ %D%/packages/rails.scm \ @@ -398,6 +397,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/version-control.scm \ %D%/packages/video.scm \ %D%/packages/vim.scm \ + %D%/packages/virtualization.scm \ %D%/packages/vpn.scm \ %D%/packages/w3m.scm \ %D%/packages/wdiff.scm \ diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 9ae6175280..802e8ab8dc 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -40,8 +40,8 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages python) - #:use-module (gnu packages qemu) #:use-module (gnu packages texinfo) + #:use-module (gnu packages virtualization) #:use-module (guix build-system gnu) #:use-module (guix download) #:use-module (guix git-download) diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index 27193c8bba..34c1061418 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -32,7 +32,7 @@ #:use-module (gnu packages llvm) #:use-module (gnu packages perl) #:use-module (gnu packages pretty-print) - #:use-module (gnu packages qemu) + #:use-module (gnu packages virtualization) #:use-module (ice-9 match) #:use-module (srfi srfi-1)) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 3125fa03ca..4221bbc76c 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -132,8 +132,8 @@ #:use-module (gnu packages samba) #:use-module (gnu packages readline) #:use-module (gnu packages fonts) - #:use-module (gnu packages qemu) #:use-module (gnu packages speech) + #:use-module (gnu packages virtualization) #:use-module (srfi srfi-1)) (define-public brasero diff --git a/gnu/packages/qemu.scm b/gnu/packages/virtualization.scm similarity index 99% rename from gnu/packages/qemu.scm rename to gnu/packages/virtualization.scm index 0bd314c660..79209c3006 100644 --- a/gnu/packages/qemu.scm +++ b/gnu/packages/virtualization.scm @@ -19,7 +19,7 @@ ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . -(define-module (gnu packages qemu) +(define-module (gnu packages virtualization) #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages attr) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 66a2448ceb..dd9be2c6fa 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -39,7 +39,7 @@ #:use-module (gnu packages gawk) #:use-module (gnu packages bash) #:use-module (gnu packages less) - #:use-module (gnu packages qemu) + #:use-module (gnu packages virtualization) #:use-module (gnu packages disk) #:use-module (gnu packages zile) #:use-module (gnu packages linux) diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index 7c5d48104e..22e4181ab1 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -27,8 +27,8 @@ #:use-module ((gnu build vm) #:select (qemu-command)) #:use-module (gnu packages bootloaders) #:use-module (gnu packages ocr) - #:use-module (gnu packages qemu) #:use-module (gnu packages package-management) + #:use-module (gnu packages virtualization) #:use-module (guix store) #:use-module (guix monads) #:use-module (guix packages) From 5d4a8f9b9e5a6fb18a3119671b11634111a4d891 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Thu, 13 Jul 2017 19:30:02 +0800 Subject: [PATCH 0180/1227] gnu: Add lxc. * gnu/packages/virtualization.scm (lxc): New package. --- gnu/packages/virtualization.scm | 47 +++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 79209c3006..fd5cea5eb2 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -42,6 +42,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages polkit) #:use-module (gnu packages python) + #:use-module (gnu packages selinux) #:use-module (gnu packages sdl) #:use-module (gnu packages spice) #:use-module (gnu packages texinfo) @@ -266,6 +267,52 @@ all common programming languages. Vala bindings are also provided.") ;; files in the "tools" directory are released under GPLv2+. (license (list lgpl2.1+ gpl2+)))) +(define-public lxc + (package + (name "lxc") + (version "2.0.8") + (source (origin + (method url-fetch) + (uri (string-append + "https://linuxcontainers.org/downloads/lxc/lxc-" + version ".tar.gz")) + (sha256 + (base32 + "15449r56rqg3487kzsnfvz0w4p5ajrq0krcsdh6c9r6g0ark93hd")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("gnutls" ,gnutls) + ("libcap" ,libcap) + ("libseccomp" ,libseccomp) + ("libselinux" ,libselinux))) + (arguments + '(#:configure-flags + '("--sysconfdir=/etc" + "--localstatedir=/var") + #:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bashcompdir (string-append out "/etc/bash_completion.d"))) + (zero? (system* + "make" "install" + (string-append "bashcompdir=" bashcompdir) + ;; Don't install files into /var and /etc. + "LXCPATH=/tmp/var/lib/lxc" + "localstatedir=/tmp/var" + "sysconfdir=/tmp/etc" + "sysconfigdir=/tmp/etc/default")))))))) + (synopsis "Linux container tools") + (home-page "https://linuxcontainers.org/") + (description + "LXC is a userspace interface for the Linux kernel containment features. +Through a powerful API and simple tools, it lets Linux users easily create and +manage system or application containers.") + (license lgpl2.1+))) + (define-public libvirt (package (name "libvirt") From ee38fbcfaa5afc1cf2bb121a04bc9747b2339c37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Sat, 15 Jul 2017 19:25:39 +0800 Subject: [PATCH 0181/1227] nls: Adjust to qemu.scm renaming. This is a followup to 59132b800093e486e4d81aed6b837e9ac76aa86c. * po/packages/POTFILES.in: Remove qemu.scm and add virtualization.scm. --- po/packages/POTFILES.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/po/packages/POTFILES.in b/po/packages/POTFILES.in index 1eafdcb4b8..32d34d6456 100644 --- a/po/packages/POTFILES.in +++ b/po/packages/POTFILES.in @@ -40,7 +40,6 @@ gnu/packages/pdf.scm gnu/packages/pem.scm gnu/packages/perl.scm gnu/packages/photo.scm -gnu/packages/qemu.scm gnu/packages/ratpoison.scm gnu/packages/readline.scm gnu/packages/scanner.scm @@ -53,6 +52,7 @@ gnu/packages/tex.scm gnu/packages/texinfo.scm gnu/packages/textutils.scm gnu/packages/version-control.scm +gnu/packages/virtualization.scm gnu/packages/webkit.scm gnu/packages/web.scm gnu/packages/wordnet.scm From e39aae4fa9219f81a4262a165bc412c2ca5277de Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 15 Jul 2017 15:29:33 -0400 Subject: [PATCH 0182/1227] gnu: python-mutagen: Update to 1.38. * gnu/packages/music.scm (python-mutagen, python2-mutagen): Update to 1.38. --- gnu/packages/music.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 947773289c..a3f3d4bacb 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2101,13 +2101,13 @@ event-based scripts for scrobbling, notifications, etc.") (define-public python-mutagen (package (name "python-mutagen") - (version "1.36") + (version "1.38") (source (origin (method url-fetch) (uri (pypi-uri "mutagen" version)) (sha256 (base32 - "1kabb9b81hgvpd3wcznww549vss12b1xlvpnxg1r6n4c7gikgvnp")))) + "0rl7sxn1rcjl48fwga3dqf9f6pzspsny4ngxyf6pp337mrq0z693")))) (build-system python-build-system) (native-inputs `(("python-pytest" ,python-pytest))) From eaca9ff07e4762c3d33e3090bab999c7cf74c98a Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 16 Jul 2017 00:41:17 +0800 Subject: [PATCH 0183/1227] gnu: go@1.8: Fix test failure. * gnu/packages/golang.scm (go-1.8)[arguments]: Escape braces in test data in 'prebuild' phase. Signed-off-by: Leo Famulari --- gnu/packages/golang.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 70cae6d871..e2d1abbbbf 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016, 2017 Petter ;;; Copyright © 2016, 2017 Leo Famulari ;;; Copyright © 2017 Sergei Trofimovich +;;; Copyright © 2017 Alex Vong ;;; ;;; This file is part of GNU Guix. ;;; @@ -296,6 +297,13 @@ sequential processes (CSP) concurrent programming features added.") (substitute* "../misc/cgo/testcarchive/carchive_test.go" (("#!/usr/bin/env") (string-append "#!" (which "env")))) + ;; Escape braces in test data to workaround test failure. For + ;; more information: + ;; https://github.com/golang/go/issues/20007 + ;; FIXME: remove this once we upgrade to 1.9 + (substitute* "cmd/vet/testdata/copylock_func.go" + (("struct\\{lock sync.Mutex\\}") "struct\\{lock sync.Mutex\\}")) + (substitute* "net/lookup_unix.go" (("/etc/protocols") (string-append net-base "/etc/protocols"))) (substitute* "net/port_unix.go" From 08f47d7e3e4ce2e31d8964eb42f16030859a006c Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 15 Jul 2017 15:36:56 +0100 Subject: [PATCH 0184/1227] Remove task from 'guix-daemon.conf'. The 'task' means that events that led to this job starting will be blocked until it has stopped. Tasks are short lived jobs, whereas the guix-daemon is a long lived service. Including 'task' means that attempts to start the guix-daemon appear to hang, as upstart waits for it to exit. * etc/guix-daemon.conf.in: Remove 'task'. --- etc/guix-daemon.conf.in | 2 -- 1 file changed, 2 deletions(-) diff --git a/etc/guix-daemon.conf.in b/etc/guix-daemon.conf.in index 09c70cde38..74706055f8 100644 --- a/etc/guix-daemon.conf.in +++ b/etc/guix-daemon.conf.in @@ -7,6 +7,4 @@ start on runlevel [2345] stop on runlevel [016] -task - exec @localstatedir@/guix/profiles/per-user/root/guix-profile/bin/guix-daemon --build-users-group=guixbuild From d5b357ec434182a6b42043455303e71c2d34feaa Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 15 Jul 2017 20:49:51 -0400 Subject: [PATCH 0185/1227] gnu: shntool: Improve description. * gnu/packages/audio.scm (shntool)[description]: Mention support for CUE files. --- gnu/packages/audio.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 8a04cfe1b3..bb65ec0a67 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -2766,7 +2766,8 @@ machine-readable ASCII format.") (description "shntool is a multi-purpose WAVE data processing and reporting utility. File formats are abstracted from its core, so it can process any file that contains WAVE data, compressed or not---provided there exists a format -module to handle that particular file type.") +module to handle that particular file type. It can also generate CUE files, and +use them split WAVE data into multiple files.") (home-page "http://etree.org/shnutils/shntool/") ;; 'install-sh' bears the x11 license (license (list license:gpl2+ license:x11)))) From 6adf9d18d145c15bf593740b4180f10b65488631 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 15 Jul 2017 22:31:31 -0400 Subject: [PATCH 0186/1227] gnu: linux-libre@4.4: Update to 4.4.77. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.77. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 58f6f36625..4bb24cfd3e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -379,8 +379,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.76" - "1qzgjqj7zv8hk162viyjy4cn24snwy159j8vir6d5jsrkvwq5wrk" + (make-linux-libre "4.4.77" + "0y1myjwbqjx8k9c2z83p04a7ncl2ca6gkyxk0zyyabjfvxb5g9k9" %intel-compatible-systems #:configuration-file kernel-config)) From 0b990b9611f88ce6a3ea71cc043f0063d0ab8bac Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 15 Jul 2017 22:32:09 -0400 Subject: [PATCH 0187/1227] gnu: linux-libre@4.9: Update to 4.9.38. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.38. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 4bb24cfd3e..5d825e3048 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -373,8 +373,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.37" - "0jrpzv5a8j8qjhh1x1wldyzbjms8p48nk5w6b4gib67fl7vx3135" + (make-linux-libre "4.9.38" + "13pfawwnf46yqsrx3k5mj4pa7cs2x4v23qi8ncpxz0vqzgz9xxrd" %intel-compatible-systems #:configuration-file kernel-config)) From ec6ea0fea28f6083031d7f19fd4e10c3cb501a3a Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 15 Jul 2017 22:32:44 -0400 Subject: [PATCH 0188/1227] gnu: linux-libre: Update to 4.12.2. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.2. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 5d825e3048..40d805c844 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -363,8 +363,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.1") -(define %linux-libre-hash "1pgp48hf4zziv3nvzm54zvalh9y7kh5a7prrsw2n1qal9h1yslsp") +(define %linux-libre-version "4.12.2") +(define %linux-libre-hash "12jqvkp7vyhmqahkk2yv6qdfxan9r6y1999hcbmjl4z6qkv38pc3") (define-public linux-libre (make-linux-libre %linux-libre-version From 29d432a7addb6bb2f7a352dcbe2c84b095976619 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 15 Jul 2017 22:54:21 +0200 Subject: [PATCH 0189/1227] gnu: youtube-dl: Update to 2017.07.15. * gnu/packages/video.scm (youtube-dl): Update to 2017.07.15. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 7056a8d19c..12d54ff8e5 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.07.09") + (version "2017.07.15") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "0phrfby2nk5y5x5173bbg3jcr2ajk849al3zji5y39z39dj36ba2")))) + "1jmmi50hysgad9828niz03rm3y9v5ir26n4lmksd5jk1ddh0anb6")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From b21ceaafab49546e029a774d2f7056f6ac9fe282 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 16 Jul 2017 05:18:08 +0200 Subject: [PATCH 0190/1227] gnu: tiled: Update to 1.0.2. * gnu/packages/game-development.scm (tiled): Update to 1.0.2. --- gnu/packages/game-development.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 67f6c55017..dabe951da8 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -380,7 +380,7 @@ support.") (define-public tiled (package (name "tiled") - (version "1.0.1") + (version "1.0.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/bjorn/tiled/archive/v" @@ -388,7 +388,7 @@ support.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1y75jmpcf2lv8s3g9v3ghnrwvs2fc4ni7nx74csaylg1g04cwlq7")))) + "134xi74xajh38rj1qhmc4x1zmncfdmqb01axnkxh6zs3qz0rxp93")))) (build-system gnu-build-system) (inputs `(("qtbase" ,qtbase) From 0d200e9f3f512d5d8dabd9a7dda6a9fab74359c9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 16 Jul 2017 05:19:00 +0200 Subject: [PATCH 0191/1227] gnu: par2cmdline: Update to 0.7.3. * gnu/packages/backup.scm (par2cmdline): Update to 0.7.3. --- gnu/packages/backup.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 74e49e46db..0810a47f04 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -118,7 +118,7 @@ spying and/or modification by the server.") (define-public par2cmdline (package (name "par2cmdline") - (version "0.7.2") + (version "0.7.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/Parchive/par2cmdline/archive/v" @@ -126,7 +126,7 @@ spying and/or modification by the server.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0rsrca7903g08zrifv4102gkxrhmzvgwd1sb6vw9pa00qhzsfkzs")))) + "0dqwarc2aw5clgpf24d9dxh43b0k0z3l6kksn30arx9bdlmrk5rx")))) (native-inputs `(("automake" ,automake) ("autoconf" ,autoconf))) From f6d59ecf920dadcaa115579e29ad38d16780ea89 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 16 Jul 2017 06:43:55 +0200 Subject: [PATCH 0192/1227] gnu: par2cmdline: Improve synopsis & description. * gnu/packages/backup.scm (par2cmdline)[synopsis, description]: Fix a typo, end up re-writing most of it. --- gnu/packages/backup.scm | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 0810a47f04..92cb0489df 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -136,10 +136,15 @@ spying and/or modification by the server.") (modify-phases %standard-phases (add-after 'unpack 'autoreconf (lambda _ (zero? (system* "autoreconf" "-vfi"))))))) - (synopsis "File verification and repair tool") - (description "Par2cmdline is a tool for generating RAID-like PAR2 recovery -files using Reed-Solomon coding. PAR2 files can be stored along side backups -or distributed files for recovering from bitrot.") + (synopsis "File verification and repair tools") + (description "Par2cmdline uses Reed-Solomon error-correcting codes to +generate and verify PAR2 recovery files. These files can be distributed +alongside the source files or stored together with back-ups to protect against +transmission errors or @dfn{bit rot}, the degradation of storage media over +time. +Unlike a simple checksum, PAR2 doesn't merely detect errors: as long as the +damage isn't to great (and smaller than the size of the recovery file), it can +even repair them.") (home-page "https://github.com/Parchive/par2cmdline") (license license:gpl3+))) From a2dd9270916b9dbb04adbc6c3db8a74d01559870 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 16 Jul 2017 06:49:07 +0200 Subject: [PATCH 0193/1227] gnu: par2cmdline: Fix typo. * gnu/packages/backup.scm (par2cmdline)[description]: Fix typo only visible on white backgrounds. Use less ambiguous word. --- gnu/packages/backup.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 92cb0489df..c619961aac 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -143,8 +143,8 @@ alongside the source files or stored together with back-ups to protect against transmission errors or @dfn{bit rot}, the degradation of storage media over time. Unlike a simple checksum, PAR2 doesn't merely detect errors: as long as the -damage isn't to great (and smaller than the size of the recovery file), it can -even repair them.") +damage isn't too extensive (and smaller than the size of the recovery file), it +can even repair them.") (home-page "https://github.com/Parchive/par2cmdline") (license license:gpl3+))) From 657f18158bb855cf90a44d8e26dec5cd2e6c89cd Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 16 Jul 2017 08:49:23 +0200 Subject: [PATCH 0194/1227] gnu: nzbget: Update to 19.1. * gnu/packages/networking.scm (nzbget): Update to 19.1. [source]: Fix building with gnutls in a snippet. [arguments]: Fix indentation. --- gnu/packages/networking.scm | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index d4b9a3d129..ef50756ddf 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -1103,7 +1103,7 @@ gone wild and are suddenly taking up your bandwidth.") (define-public nzbget (package (name "nzbget") - (version "18.1") + (version "19.1") (source (origin (method url-fetch) @@ -1112,14 +1112,22 @@ gone wild and are suddenly taking up your bandwidth.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1a8wmbhc1si1n8axzrr8ysmrd3gr643lbh6pvzmr0hnd65fixmx5")))) + "0y713g7gd4n5chbhr8lv7k50rxkmzysrg13sscxam3s386mmlb1r")) + (modules '((guix build utils))) + (snippet + ;; Reported upstream as . + '(begin + (substitute* "daemon/connect/TlsSocket.cpp" + (("gnutls_certificate-verification_status_print") + "gnutls_certificate_verification_status_print")) + #t)))) (arguments `(#:configure-flags (list - (string-append "--with-libcurses-includes=" (assoc-ref -%build-inputs "ncurses") "/include") - (string-append "--with-libcurses-libraries=" (assoc-ref -%build-inputs "ncurses") "/lib") + (string-append "--with-libcurses-includes=" + (assoc-ref %build-inputs "ncurses") "/include") + (string-append "--with-libcurses-libraries=" + (assoc-ref %build-inputs "ncurses") "/lib") (string-append "--with-tlslib=GnuTLS")))) (build-system gnu-build-system) (inputs `(("gnutls", gnutls) From 0e05269a90cafd46cdced92dfb470ffcb5fa8e43 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Jul 2017 11:46:07 +0300 Subject: [PATCH 0195/1227] gnu: perl-test-script: Update to 1.20. * gnu/packages/perl.scm (perl-test-script): Update to 1.20. [source]: Update uri. [propagated-inputs]: Remove probe-perl, ipc-run3, add perl-capture-tiny, perl-probe-perl. [home-page]: Update homepage. --- gnu/packages/perl.scm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 2e40021fa1..0fd8360905 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2016 Mark H Weaver ;;; Copyright © 2016 Jochem Raat -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Coypright © 2016 ng0 ;;; Copyright © 2016 Alex Sassmannshausen ;;; Copyright © 2016 Roel Janssen @@ -6928,25 +6928,24 @@ If this fails, then rather than failing tests this skips all tests.") (define-public perl-test-script (package (name "perl-test-script") - (version "1.07") + (version "1.20") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" + (uri (string-append "mirror://cpan/authors/id/P/PL/PLICEASE/" "Test-Script-" version ".tar.gz")) (sha256 (base32 - "15pb4zzsnm33msc1syhig2bk05xqc0pckmfyahdwbd177bj5w7p2")))) + "1msavbi6przkxq3npm90nv925v58iym9jrk677wn46x19whwzwzm")))) (build-system perl-build-system) (propagated-inputs - `(("probe-perl" ,perl-probe-perl) - ("ipc-run3" ,perl-ipc-run3))) + `(("perl-capture-tiny" ,perl-capture-tiny) + ("perl-probe-perl" ,perl-probe-perl))) (synopsis "Basic cross-platform tests for scripts") (description "The intent of the Test::Script module is to provide a series of basic tests for 80% of the testing you will need to do for scripts in the script (or bin as is also commonly used) paths of your Perl distribution.") - (home-page (string-append "http://search.cpan.org/~adamk/" - "Test-Script-" version)) + (home-page "http://search.cpan.org/dist/Test-Script") (license (package-license perl)))) (define-public perl-test-sharedfork From 1a651aa73c23edbb2395f63238122210b4f70d04 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Jul 2017 11:57:04 +0300 Subject: [PATCH 0196/1227] gnu: perl-unicode-utf8: Update to 0.62. * gnu/packages/perl.scm (perl-unicode-utf8): Update to 0.62. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 0fd8360905..58d9d85089 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7776,14 +7776,14 @@ defined by Annex #11 is used to determine breaking positions.") (define-public perl-unicode-utf8 (package (name "perl-unicode-utf8") - (version "0.60") + (version "0.62") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/C/CH/CHANSEN/" "Unicode-UTF8-" version ".tar.gz")) (sha256 (base32 - "1g3fp47slsk7wbz3189kpg342lfs7lpsy570jxnx7s9v59dg5k7n")))) + "1xnhazbdvpyfpnxd90krzhxkvabf8fa2ji6xzlrf75j6nz8251zs")))) (build-system perl-build-system) (native-inputs `(("perl-test-fatal" ,perl-test-fatal) From 72095389fcfa3fbea1f671264fc8efc608387197 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Jul 2017 13:04:50 +0300 Subject: [PATCH 0197/1227] gnu: perl-file-homedir: Update to 1.002. * gnu/packages/perl.scm (perl-file-homedir): Update to 1.002. [source]: Update to new uri. [propagated-inputs]: Remove perl-file-temp. --- gnu/packages/perl.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 58d9d85089..73bc91cc76 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2962,19 +2962,18 @@ provide a quick dropin when such functionality is needed.") (define-public perl-file-homedir (package (name "perl-file-homedir") - (version "1.00") + (version "1.002") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" + (uri (string-append "mirror://cpan/authors/id/R/RE/REHSACK/" "File-HomeDir-" version ".tar.gz")) (sha256 (base32 - "0hvihydd0y4gdxafi8dpybk9ll8q35bz5ycibfic0gh92cslzfc5")))) + "0x62hn8rc7ninf9nlp69h61yh21g4cbq2g81sh64cf2ify2hqk7b")))) (build-system perl-build-system) (propagated-inputs - `(("perl-file-which" ,perl-file-which) - ("perl-file-temp" ,perl-file-temp))) + `(("perl-file-which" ,perl-file-which))) (arguments `(#:tests? #f)) ;Not appropriate for chroot (home-page "http://search.cpan.org/dist/File-HomeDir") (synopsis "Find your home and other directories on any platform") From 588bd05fcee63e6f3c141403d444e0ac4ef4ecdf Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Jul 2017 13:36:19 +0300 Subject: [PATCH 0198/1227] gnu: perl-datetime-format-w3cdtf: Update to 0.07. * gnu/packages/perl.scm (perl-datetime-format-w3cdtf): Update to 0.07. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 73bc91cc76..eb61342a50 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2158,14 +2158,14 @@ This module parses and emits such dates.") (define-public perl-datetime-format-w3cdtf (package (name "perl-datetime-format-w3cdtf") - (version "0.06") + (version "0.07") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/G/GW/GWILLIAMS/" "DateTime-Format-W3CDTF-" version ".tar.gz")) (sha256 (base32 - "0ymxizwd2zfx8b4bmrmv4k439qwfwf2522jrvn4hlay5v6z459dr")))) + "0s32lb1k80p3b3sb7w234zgxnrmadrwbcg41lhaal7dz3dk2p839")))) (build-system perl-build-system) (inputs `(("perl-datetime" ,perl-datetime))) From 188ba38e855df1506fa97f408495b15ec12cd337 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 16 Jul 2017 22:13:01 +0200 Subject: [PATCH 0199/1227] gnu: libsodium: Update to 1.0.13. * gnu/packages/crypto.scm (libsodium): Update to 1.0.13. --- gnu/packages/crypto.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 6f02d8691d..d02bc20f20 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -57,7 +57,7 @@ (define-public libsodium (package (name "libsodium") - (version "1.0.12") + (version "1.0.13") (source (origin (method url-fetch) (uri (list (string-append @@ -68,7 +68,7 @@ "releases/old/libsodium-" version ".tar.gz"))) (sha256 (base32 - "159givfh5jgli3cifxgssivkklfyfq6lzyjgrx8h4jx5ncdqyr5q")))) + "1z93wfg4k5svg8yck6cgdr6ysj91kbpn03nyzwxanncy3b5sq4ww")))) (build-system gnu-build-system) (synopsis "Portable NaCl-based crypto library") (description From f38d54f0ce5af9bedc833035b05c6548cdad2de7 Mon Sep 17 00:00:00 2001 From: Muriithi Frederick Muriuki Date: Fri, 14 Jul 2017 16:22:49 +0300 Subject: [PATCH 0200/1227] gnu: Add python-ruamel.yaml. * gnu/packages/serialization.scm (python-ruamel.yaml, python2-ruamel.yaml): New variables. Signed-off-by: Marius Bakke --- gnu/packages/serialization.scm | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 6b7461e62b..3994191bd2 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2017 Corentin Bocquillon ;;; Copyright © 2017 Gregor Giesen +;;; Copyright © 2017 Frederick M. Muriithi ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,7 +39,8 @@ #:use-module (gnu packages lua) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages perl)) + #:use-module (gnu packages perl) + #:use-module (guix build-system python)) (define-public cereal (package @@ -351,3 +353,33 @@ it is comparable to protobuf.") “Trivial integration”, and “Serious testing”. However, “Memory efficiency” and “Speed” have not been primary goals.") (license license:expat))) + +(define-public python-ruamel.yaml + (package + (name "python-ruamel.yaml") + (version "0.15.19") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ruamel.yaml" version)) + (sha256 + (base32 + "0qx779avw8d1vsjqyi7z21h1g5ykp8paqavgj0lzbp8h7bw9vpgv")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest))) + (arguments + `(;; TODO: Tests require packaging "ruamel.std.pathlib". + #:tests? #f)) + (home-page "https://bitbucket.org/ruamel/yaml") + (synopsis "YAML 1.2 parser/emitter") + (description + "This package provides YAML parser/emitter that supports roundtrip +preservation of comments, seq/map flow style, and map key order. It +is a derivative of Kirill Simonov’s PyYAML 3.11. It supports YAML 1.2 +and has round-trip loaders and dumpers. It supports comments. Block +style and key ordering are kept, so you can diff the source.") + (license license:expat))) + +(define-public python2-ruamel.yaml + (package-with-python2 python-ruamel.yaml)) From b1679379001e2f35f13e35bf3b2a4c40910abd25 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Wed, 12 Jul 2017 18:30:56 +0300 Subject: [PATCH 0201/1227] gnu: Add emacs-org-pomodoro. * gnu/packages/emacs.scm (emacs-org-pomodoro): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 75122af8b3..3e88c52f30 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -2514,6 +2514,35 @@ number.") @code{org-mode} to be rendered as UTF-8 characters.") (license license:gpl3+))) +(define-public emacs-org-pomodoro + (package + (name "emacs-org-pomodoro") + (version "2.1.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/lolownia/org-pomodoro/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jalsggw3q5kvj353f84x4nl04a5vmq07h75ggppy1627lb31zm4")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-alert" ,emacs-alert))) + (home-page "https://github.com/lolownia/org-pomodoro") + (synopsis "Pomodoro technique for org-mode") + (description "@code{emacs-org-pomodoro} adds very basic support for +Pomodoro technique in Emacs org-mode. + +Run @code{M-x org-pomodoro} for the task at point or select one of the +last tasks that you clocked time for. Each clocked-in pomodoro starts +a timer of 25 minutes and after each pomodoro a break timer of 5 +minutes is started automatically. Every 4 breaks a long break is +started with 20 minutes. All values are customizable.") + (license license:gpl3+))) + (define-public emacs-org-trello (package (name "emacs-org-trello") From 679899990d4cda9b7af6f8e4753d727e41c0f65c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 17 Jul 2017 12:43:41 +0300 Subject: [PATCH 0202/1227] gnu: perl-file-find-rule-perl: Update to 1.15. * gnu/packages/perl.scm (perl-file-find-rule-perl): Update to 1.15. [source]: Update source uri. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index eb61342a50..2672c229e6 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2915,15 +2915,15 @@ directories.") (define-public perl-file-find-rule-perl (package (name "perl-file-find-rule-perl") - (version "1.13") + (version "1.15") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "File-Find-Rule-Perl-" version ".tar.gz")) (sha256 (base32 - "0xi4ppqr6r57l5xlkwxpvkvpb9p7dvz053d76v2m9pwdfxqb5v6j")))) + "19iy8spzrvh71x33b5yi16wjw5jjvs12jvjj0f7f3370hqzl6j4s")))) (build-system perl-build-system) (propagated-inputs `(("perl-file-find-rule" ,perl-file-find-rule) From 44455ab95187b029d551d5c4d5a89ea07efc9d69 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 17 Jul 2017 12:48:14 +0300 Subject: [PATCH 0203/1227] gnu: perl-file-remove: Update to 1.57. * gnu/packages/perl.scm (perl-file-remove): Update to 1.57. [source]: Update source uri. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 2672c229e6..3cae8dfa8f 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3065,15 +3065,15 @@ matching a regular expression.") (define-public perl-file-remove (package (name "perl-file-remove") - (version "1.52") + (version "1.57") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" + (uri (string-append "mirror://cpan/authors/id/S/SH/SHLOMIF/" "File-Remove-" version ".tar.gz")) (sha256 (base32 - "1p8bal9qhwkjbghivxn1d5m3qdj2qwm1agrjbmakm6la9dbxqm21")))) + "1b814lw181kkqh6c1n4p2zlzzsq6ic5pfpr831nphf2w2rhcvgmk")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/File-Remove") (synopsis "Remove files and directories in Perl") From c178ffcaf2a203642c9c29f8f995cfc8c69857f7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 21:27:15 +0200 Subject: [PATCH 0204/1227] gnu: Add texlive-latex-ucs. * gnu/packages/tex.scm (texlive-latex-ucs): New variable. --- gnu/packages/tex.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 3b9fb275fc..331fb3453b 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2483,6 +2483,46 @@ lasy font set and other odds and ends. The wasysym package implements an easy to use interface for these symbols.") (license license:lppl))) +(define-public texlive-latex-ucs + (package + (name "texlive-latex-ucs") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/ucs")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0rrxwi60wmz5dfjifl4fwk66plf7wix85qnhfv4ylvmj6qi6hw37")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/ucs"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/ucs") + (synopsis "Extended UTF-8 input encoding support for LaTeX") + (description + "The bundle provides the @code{ucs} package, and @code{utf8x.def}, +together with a large number of support files. The @code{utf8x.def} +definition file for use with @code{inputenc} covers a wider range of Unicode +characters than does @code{utf8.def} in the LaTeX distribution. The package +provides facilities for efficient use of its large sets of Unicode characters. +Glyph production may be controlled by various options, which permits use of +non-ASCII characters when coding mathematical formulae. Note that the bundle +previously had an alias “unicode”; that alias has now been withdrawn, and no +package of that name now exists.") + (license license:lppl1.3+))) + (define texlive-texmf (package (name "texlive-texmf") From 86af0f2a342269b9a3f6b8084a9e8e5d6feb6eb8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 21:27:38 +0200 Subject: [PATCH 0205/1227] gnu: Add texlive-latex-preview. * gnu/packages/tex.scm (texlive-latex-preview): New variable. --- gnu/packages/tex.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 331fb3453b..f8a79b9297 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2523,6 +2523,38 @@ previously had an alias “unicode”; that alias has now been withdrawn, and no package of that name now exists.") (license license:lppl1.3+))) +(define-public texlive-latex-preview + (package + (name "texlive-latex-preview") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "preview")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0j6fff6q0ca96nwfdgay2jm55792z4q9aa0rczmiw2qccyg5n2dv")))) + (build-system texlive-build-system) + (arguments + '(#:tex-directory "latex/preview" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-generated-file + (lambda _ + (delete-file "preview.drv") + #t))))) + (home-page "http://www.ctan.org/pkg/preview") + (synopsis "Extract bits of a LaTeX source for output") + (description + "The main purpose of the preview package is the extraction of selected +elements from a LaTeX source, like formulas or graphics, into separate +pages of a DVI file. A flexible and convenient interface allows it to +specify what commands and constructs should be extracted. This works +with DVI files postprocessed by either Dvips and Ghostscript or +dvipng, but it also works when you are using PDFTeX for generating PDF +files.") + (license license:gpl3+))) + (define texlive-texmf (package (name "texlive-texmf") From 87b4360ee8eb5d0e374c5e8d50577332d9dd8a92 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 21:28:04 +0200 Subject: [PATCH 0206/1227] gnu: Add texlive-latex-acronym. * gnu/packages/tex.scm (texlive-latex-acronym): New variable. --- gnu/packages/tex.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index f8a79b9297..ea36c3dc2b 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2555,6 +2555,29 @@ dvipng, but it also works when you are using PDFTeX for generating PDF files.") (license license:gpl3+))) +(define-public texlive-latex-acronym + (package + (name "texlive-latex-acronym") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "acronym")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0jmasg40bk53zdd2jc8nc18jvdai3p2wmamy7hwli8gls4nf25qp")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/acronym")) + (home-page "http://www.ctan.org/pkg/acronym") + (synopsis "Expand acronyms at least once") + (description + "This package ensures that all acronyms used in the text are spelled out +in full at least once. It also provides an environment to build a list of +acronyms used. The package is compatible with PDF bookmarks. The package +requires the suffix package, which in turn requires that it runs under +e-TeX.") + (license license:lppl1.3+))) + (define texlive-texmf (package (name "texlive-texmf") From 60b5e228c4fc0ecb3ee1c663789c7ca91485ab7d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 21:34:14 +0200 Subject: [PATCH 0207/1227] gnu: Add texlive-latex-amsrefs. * gnu/packages/tex.scm (texlive-latex-amsrefs): New variable. --- gnu/packages/tex.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index ea36c3dc2b..1d325c9e0a 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1602,6 +1602,28 @@ distribution.") (description "This is a very limited subset of the TeX Live distribution. It includes little more than the required set of LaTeX packages."))) +(define-public texlive-latex-amsrefs + (package + (name "texlive-latex-amsrefs") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "amsrefs")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "15i4k479dwrpr0kspmm70g1yn4p3dkh0whyzmr93hph9bggnh1i1")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/amsrefs")) + (home-page "http://www.ctan.org/pkg/amsrefs") + (synopsis "LaTeX-based replacement for BibTeX") + (description + "Amsrefs is a LaTeX package for bibliographies that provides an archival +data format similar to the format of BibTeX database files, but adapted to +make direct processing by LaTeX easier. The package can be used either in +conjunction with BibTeX or as a replacement for BibTeX.") + (license license:lppl1.3+))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From 588b5e96119f0a988168a841b3b87938a724f8fa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 21:45:32 +0200 Subject: [PATCH 0208/1227] gnu: Add texlive-latex-g-brief. * gnu/packages/tex.scm (texlive-latex-g-brief): New variable. --- gnu/packages/tex.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 1d325c9e0a..94c75c0aec 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1674,6 +1674,35 @@ recent classes such as powerdot or beamer, both of which are tuned to 21st-century presentation styles.") (license license:lppl1.2+))) +(define-public texlive-latex-g-brief + (package + (name "texlive-latex-g-brief") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "g-brief")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0sikazkg0dpkcpzlbqw8qzxr81paf2f443vsrh14jnw7s4gswvc5")))) + (build-system texlive-build-system) + (arguments + '(#:tex-directory "latex/g-brief" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-generated-file + (lambda _ + (delete-file "g-brief.drv") + #t))))) + (home-page "http://www.ctan.org/pkg/g-brief") + (synopsis "Letter document class") + (description + "This package is designed for formatting formless letters in German; it +can also be used for English (by those who can read the documentation). There +are LaTeX 2.09 @code{documentstyle} and LaTeX 2e class files for both an +\"old\" and a \"new\" version of g-brief.") + (license license:lppl))) + (define-public texlive-latex-hyperref (package (name "texlive-latex-hyperref") From 9b4d5c09ab42a75416e81d6ef34eafbdd6180ed7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:06:34 +0200 Subject: [PATCH 0209/1227] gnu: Add texlive-latex-galois. * gnu/packages/tex.scm (texlive-latex-galois): New variable. --- gnu/packages/tex.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 94c75c0aec..53c815c95b 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1703,6 +1703,26 @@ are LaTeX 2.09 @code{documentstyle} and LaTeX 2e class files for both an \"old\" and a \"new\" version of g-brief.") (license license:lppl))) +(define-public texlive-latex-galois + (package + (name "texlive-latex-galois") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "galois")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0d4l0msk8j5pi95xnmm9wygv1vbpkwkv5amx9l0km86cs79jpp1h")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/galois")) + (home-page "http://www.ctan.org/pkg/galois") + (synopsis "Typeset Galois connections") + (description + "The package deals with connections in two-dimensional style, optionally +in colour.") + (license license:lppl))) + (define-public texlive-latex-hyperref (package (name "texlive-latex-hyperref") From 5f691e2e8f763540a9fcfa1b7a2ee7db0abaa55f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:06:57 +0200 Subject: [PATCH 0210/1227] gnu: Add texlive-latex-gcite. * gnu/packages/tex.scm (texlive-latex-gcite): New variable. --- gnu/packages/tex.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 53c815c95b..b80590f98b 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1723,6 +1723,30 @@ are LaTeX 2.09 @code{documentstyle} and LaTeX 2e class files for both an in colour.") (license license:lppl))) +(define-public texlive-latex-gcite + (package + (name "texlive-latex-gcite") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "gcite")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "03g9by54yrypn599y98r1xh7qw0bbbmpzq0bfwpj6j5q5rkl1mfa")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/gcite")) + (home-page "http://www.ctan.org/pkg/gcite") + (synopsis "Citations in a reader-friendly style") + (description + "The package allows citations in the German style, which is considered by +many to be particularly reader-friendly. The citation provides a small amount +of bibliographic information in a footnote on the page where each citation is +made. It combines a desire to eliminate unnecessary page-turning with the +look-up efficiency afforded by numeric citations. The package makes use of +BibLaTeX, and is considered experimental.") + (license license:lppl1.3+))) + (define-public texlive-latex-hyperref (package (name "texlive-latex-hyperref") From f47d1a52e4fc22bd5ffd6f63ad2f65e6d0a05294 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:23:23 +0200 Subject: [PATCH 0211/1227] gnu: Add texlive-latex-geometry. * gnu/packages/tex.scm (texlive-latex-geometry): New variable. --- gnu/packages/tex.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index b80590f98b..336b53decf 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1747,6 +1747,31 @@ look-up efficiency afforded by numeric citations. The package makes use of BibLaTeX, and is considered experimental.") (license license:lppl1.3+))) +(define-public texlive-latex-geometry + (package + (name "texlive-latex-geometry") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "geometry")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1r2kfcwclg33yk5z8mvlagwxj7nr1mc3w4bdpmhrwv6dn8mrbvw8")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/geometry")) + (home-page "http://www.ctan.org/pkg/geometry") + (synopsis "Flexible and complete interface to document dimensions") + (description + "This package provides an easy and flexible user interface to customize +page layout, implementing auto-centering and auto-balancing mechanisms so that +the users have only to give the least description for the page layout. The +package knows about all the standard paper sizes, so that the user need not +know what the nominal \"real\" dimensions of the paper are, just its standard +name (such as a4, letter, etc.). An important feature is the package's +ability to communicate the paper size it's set up to the output.") + (license license:lppl))) + (define-public texlive-latex-hyperref (package (name "texlive-latex-hyperref") From 84f8035a62135e43ddf386dbfd3ad2ccacff7629 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:23:42 +0200 Subject: [PATCH 0212/1227] gnu: Add texlive-latex-supertabular. * gnu/packages/tex.scm (texlive-latex-supertabular): New variable. --- gnu/packages/tex.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 336b53decf..73b282f699 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1812,6 +1812,28 @@ pdf and HTML backends. The package is distributed with the @code{backref} and @code{nameref} packages, which make use of the facilities of @code{hyperref}.") (license license:lppl1.3+))) +(define-public texlive-latex-supertabular + (package + (name "texlive-latex-supertabular") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "supertabular")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "14b2bc7cqz4ckxxycim9sw6jkrr1pahivm1rdbpz5k6hl967w1s3")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/supertabular")) + (home-page "http://www.ctan.org/pkg/supertabular") + (synopsis "Multi-page tables package") + (description + "This package was a predecessor of @code{longtable}; the newer +package (designed on quite different principles) is easier to use and more +flexible, in many cases, but supertabular retains its usefulness in a few +situations where longtable has problems.") + (license license:lppl1.3+))) + (define-public texlive-tex-texinfo (package (name "texlive-tex-texinfo") From 80bf1f21381df74ac0c693faeddbbb4a7b093549 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:33:11 +0200 Subject: [PATCH 0213/1227] gnu: Add texlive-latex-polyglossia. * gnu/packages/tex.scm (texlive-latex-polyglossia): New variable. --- gnu/packages/tex.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 73b282f699..e29c8212e9 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1812,6 +1812,26 @@ pdf and HTML backends. The package is distributed with the @code{backref} and @code{nameref} packages, which make use of the facilities of @code{hyperref}.") (license license:lppl1.3+))) +(define-public texlive-latex-polyglossia + (package + (name "texlive-latex-polyglossia") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "polyglossia")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "09mvszd5qgqg4cfglpj5qxyzjz190ppb9p8gnsnjydwp1akvhayf")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/polyglossia")) + (home-page "http://www.ctan.org/pkg/polyglossia") + (synopsis "Alternative to babel for XeLaTeX and LuaLaTeX") + (description + "This package provides a complete Babel replacement for users of LuaLaTeX +and XeLaTeX; it relies on the @code{fontspec} package, version 2.0 at least.") + (license license:lppl1.3+))) + (define-public texlive-latex-supertabular (package (name "texlive-latex-supertabular") From 8e732b49947ac22bb4f61458d794c2ab43cec754 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:36:53 +0200 Subject: [PATCH 0214/1227] gnu: Add texlive-latex-blindtext. * gnu/packages/tex.scm (texlive-latex-blindtext): New variable. --- gnu/packages/tex.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index e29c8212e9..ea27e1f9f9 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1624,6 +1624,31 @@ make direct processing by LaTeX easier. The package can be used either in conjunction with BibTeX or as a replacement for BibTeX.") (license license:lppl1.3+))) +(define-public texlive-latex-blindtext + (package + (name "texlive-latex-blindtext") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "blindtext")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1jrja9b1pzdh9zgv1jh807w4xijqja58n2mqny6dkwicv8qfgbfg")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/blindtext")) + (home-page "http://www.ctan.org/pkg/blindtext") + (synopsis "Producing 'blind' text for testing") + (description + "The package provides the commands @code{\\blindtext} and +@code{\\Blindtext} for creating \"blind\" text useful in testing new classes +and packages, and @code{\\blinddocument}, @code{\\Blinddocument} for creating +an entire random document with sections, lists, mathematics, etc. The package +supports three languages, @code{english}, @code{(n)german} and @code{latin}; +the @code{latin} option provides a short \"lorem ipsum\" (for a fuller \"lorem +ipsum\" text, see the @code{lipsum} package).") + (license license:lppl))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From 7cda03bd87e7760cb6f23c23a746a1fc2499de10 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:46:23 +0200 Subject: [PATCH 0215/1227] gnu: Add texlive-latex-dinbrief. * gnu/packages/tex.scm (texlive-latex-dinbrief): New variable. --- gnu/packages/tex.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index ea27e1f9f9..dedd286728 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1649,6 +1649,39 @@ the @code{latin} option provides a short \"lorem ipsum\" (for a fuller \"lorem ipsum\" text, see the @code{lipsum} package).") (license license:lppl))) +(define-public texlive-latex-dinbrief + (package + (name "texlive-latex-dinbrief") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "dinbrief")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0lb0kiy8fxzl6cnhcw1sggy6jrjvcd6kj1kkw3k9lkimm388yjz6")))) + (build-system texlive-build-system) + (arguments + '(#:tex-directory "latex/dinbrief" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-generated-file + (lambda _ + (delete-file "dinbrief.drv") + #t))))) + (home-page "http://www.ctan.org/pkg/dinbrief") + (synopsis "German letter DIN style") + (description + "This package implements a document layout for writing letters according +to the rules of DIN (Deutsches Institut für Normung, German standardisation +institute). A style file for LaTeX 2.09 (with limited support of the +features) is part of the package. Since the letter layout is based on a +German standard, the user guide is written in German, but most macros have +English names from which the user can recognize what they are used for. In +addition there are example files showing how letters may be created with the +package.") + (license license:lppl))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From de224adba7f2995d69d9de139a4ac00fb9758ed1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 22:49:55 +0200 Subject: [PATCH 0216/1227] gnu: Add texlive-latex-draftwatermark. * gnu/packages/tex.scm (texlive-latex-draftwatermark): New variable. --- gnu/packages/tex.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index dedd286728..23211b3551 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1682,6 +1682,30 @@ addition there are example files showing how letters may be created with the package.") (license license:lppl))) +(define-public texlive-latex-draftwatermark + (package + (name "texlive-latex-draftwatermark") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "draftwatermark")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1zyl2pcz2x529gzj5m93a1s4ipymdabf7qdjl3l1673pizd4hfyv")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/draftwatermark")) + (home-page "http://www.ctan.org/pkg/draftwatermark") + (synopsis "Put a grey textual watermark on document pages") + (description + "This package provides a means to add a textual, light grey watermark on +every page or on the first page of a document. Typical usage may consist in +writing words such as DRAFT or CONFIDENTIAL across document pages. The +package performs a similar function to that of @code{draftcopy}, but its +implementation is output device independent, and made very simple by relying +on everypage.") + (license license:lppl1.3+))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From adfa7a2a8e54c5d890bcf205d9f0e3901e578604 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 08:31:28 +0200 Subject: [PATCH 0217/1227] gnu: Add texlive-latex-eqparbox. * gnu/packages/tex.scm (texlive-latex-eqparbox): New variable. --- gnu/packages/tex.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 23211b3551..82914d3846 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1706,6 +1706,34 @@ implementation is output device independent, and made very simple by relying on everypage.") (license license:lppl1.3+))) +(define-public texlive-latex-eqparbox + (package + (name "texlive-latex-eqparbox") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "eqparbox")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0pvmhsd4xmpil0m3c7qcgwilbk266mlkzv03g0jr8r3zd8jxlyzq")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/eqparbox")) + (home-page "http://www.ctan.org/pkg/eqparbox") + (synopsis "Create equal-widthed parboxes") + (description + "LaTeX users sometimes need to ensure that two or more blocks of text +occupy the same amount of horizontal space on the page. To that end, the +@code{eqparbox} package defines a new command, @code{\\eqparbox}, which works +just like @code{\\parbox}, except that instead of specifying a width, one +specifies a tag. All @code{eqparbox}es with the same tag---regardless of +where they are in the document---will stretch to fit the widest +@code{eqparbox} with that tag. This simple, equal-width mechanism can be used +for a variety of alignment purposes, as is evidenced by the examples in +@code{eqparbox}'s documentation. Various derivatives of @code{\\eqparbox} are +also provided.") + (license license:lppl1.3+))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From 32e623d0d7ddf2be1756bf176b9ff3e8ac94b859 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 08:31:50 +0200 Subject: [PATCH 0218/1227] gnu: Add texlive-latex-expdlist. * gnu/packages/tex.scm (texlive-latex-expdlist): New variable. --- gnu/packages/tex.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 82914d3846..9e819e8ad0 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1734,6 +1734,37 @@ for a variety of alignment purposes, as is evidenced by the examples in also provided.") (license license:lppl1.3+))) +(define-public texlive-latex-expdlist + (package + (name "texlive-latex-expdlist") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "expdlist")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1x7byk6x10njir3y9rm56glhdzrxwqag7gsnw2sqn1czlq525w7r")))) + (build-system texlive-build-system) + (arguments + '(#:tex-directory "latex/expdlist" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-generated-file + (lambda _ + (for-each delete-file + (find-files "." "\\.drv$")) + #t))))) + (home-page "http://www.ctan.org/pkg/expdlist") + (synopsis "Expanded description environments") + (description + "The package provides additional features for the LaTeX +@code{description} environment, including adjustable left margin. The package +also allows the user to \"break\" a list (for example, to interpose a comment) +without affecting the structure of the list (this works for @code{itemize} and +@code{enumerate} lists, and numbered lists remain in sequence).") + (license license:lppl))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From 17dce7e5d6e95093d6ca9b8ed462abf4cc92c144 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 08:32:10 +0200 Subject: [PATCH 0219/1227] gnu: Add texlive-latex-fncychap. * gnu/packages/tex.scm (texlive-latex-fncychap): New variable. --- gnu/packages/tex.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 9e819e8ad0..ec6b6cd685 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1815,6 +1815,41 @@ recent classes such as powerdot or beamer, both of which are tuned to 21st-century presentation styles.") (license license:lppl1.2+))) +(define-public texlive-latex-fncychap + (package + (name "texlive-latex-fncychap") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/fncychap")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0fdk84dbicfjfprkz6vk15x36mvlhaw9isjmgkc56jp2khwjswwq")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/fncychap"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/fncychap") + (synopsis "Seven predefined chapter heading styles") + (description + "This package provides seven predefined chapter heading styles. Each +style can be modified using a set of simple commands. Optionally one can +modify the formatting routines in order to create additional chapter +headings.") + (license license:lppl1.3+))) + (define-public texlive-latex-g-brief (package (name "texlive-latex-g-brief") From fedd77c102b6e8fe814f6ab930567e240b5def3f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 08:32:29 +0200 Subject: [PATCH 0220/1227] gnu: Add texlive-latex-cmap. * gnu/packages/tex.scm (texlive-latex-cmap): New variable. --- gnu/packages/tex.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index ec6b6cd685..6fad118258 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2142,6 +2142,40 @@ package uses 'drivers' to place the bars; the available drivers can work with drivers, and VTeX and pdfTeX.") (license license:lppl))) +(define-public texlive-latex-cmap + (package + (name "texlive-latex-cmap") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/cmap")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1s1rv6zgw105w2j6ffhnk914qrix87y1ndzri1q72g2kbr91zlbg")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/cmap"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.tug.org/svn/texlive/tags/texlive-2017.1/\ +Master/texmf-dist/tex/latex/cmap/") + (synopsis "CMap support for PDF files") + (description + "This package embeds CMap tables into PDF files to make search and +copy-and-paste functions work properly.") + (license license:lppl))) + (define-public texlive-latex-colortbl (package (name "texlive-latex-colortbl") From 876a198058dcb380b8e5c118e2529cb402730fb5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:37:26 +0200 Subject: [PATCH 0221/1227] gnu: Add texlive-generic-babel-english. * gnu/packages/tex.scm (texlive-generic-babel-english): New variable. --- gnu/packages/tex.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 6fad118258..27fb594da9 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1464,6 +1464,28 @@ what has to be done for each language. Users of XeTeX are advised to use the polyglossia package rather than Babel.") (license license:lppl1.3+))) +(define-public texlive-generic-babel-english + (package + (name "texlive-generic-babel-english") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "generic" "babel-english")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1s404wbx91z5w65hm024kyl4h56zsa096irx18vsx8jvlmwsr5wc")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "generic/babel-english")) + (home-page "http://www.ctan.org/pkg/babel-english") + (synopsis "Babel support for English") + (description + "This package provides the language definition file for support of +English in @code{babel}. Care is taken to select British hyphenation patterns +for British English and Australian text, and default (\"american\") patterns +for Canadian and USA text.") + (license license:lppl1.3+))) + (define-public texlive-latex-cyrillic (package (name "texlive-latex-cyrillic") From d9d44e84f6cacc099b28f32fd70ef4d1a5f3be8c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:38:00 +0200 Subject: [PATCH 0222/1227] gnu: texlive-union: Add texlive-generic-babel-english to defaults. * gnu/packages/tex.scm (texlive-union): Add "texlive-generic-babel-english" to the default inputs. --- gnu/packages/tex.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 27fb594da9..ceb6052c70 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1547,6 +1547,7 @@ standard LaTeX packages." texlive-latex-amsmath texlive-latex-amscls texlive-latex-babel + texlive-generic-babel-english texlive-latex-cyrillic texlive-latex-graphics texlive-latex-psnfss From dcc8af4a64f071271f7fc4c8ba32a1875c2344d0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:39:06 +0200 Subject: [PATCH 0223/1227] gnu: texlive-latex-babel: Install to generic/babel. * gnu/packages/tex.scm (texlive-latex-babel)[arguments]: Change tex-directory to install to the "generic" tree. --- gnu/packages/tex.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index ceb6052c70..5040433784 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1442,7 +1442,7 @@ distribution.") "1n3i5adsyy7jw0imnzrm2i8wkf73i3mjk9h3ic8cb9cd19i4r9r3")))) (build-system texlive-build-system) (arguments - '(#:tex-directory "latex/babel" + '(#:tex-directory "generic/babel" #:phases (modify-phases %standard-phases ;; This package tries to produce babel.aux twice but refuses to From 7709d4d86a62c7b917de288bcfb72a5a0c8ad3fc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:39:54 +0200 Subject: [PATCH 0224/1227] gnu: Add texlive-latex-capt-of. * gnu/packages/tex.scm (texlive-latex-capt-of): New variable. --- gnu/packages/tex.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 5040433784..3ac3c5bf8c 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1838,6 +1838,39 @@ recent classes such as powerdot or beamer, both of which are tuned to 21st-century presentation styles.") (license license:lppl1.2+))) +(define-public texlive-latex-capt-of + (package + (name "texlive-latex-capt-of") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/capt-of")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1y2s50f6lz0jx2748lj3iy56hrpcczgnbzmvphxv7aqndyyamd4x")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/capt-of"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/capt-of") + (synopsis "Captions on more than floats") + (description + "This package defines a command @code{\\captionof} for putting a caption +to something that's not a float.") + (license license:lppl))) + (define-public texlive-latex-fncychap (package (name "texlive-latex-fncychap") From a8ac7c0bb40fa51880192eff9dcfff9d41d6aebc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:40:28 +0200 Subject: [PATCH 0225/1227] gnu: Add texlive-latex-etoolbox. * gnu/packages/tex.scm (texlive-latex-etoolbox): New variable. --- gnu/packages/tex.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 3ac3c5bf8c..22d7e6d2d0 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1871,6 +1871,44 @@ recent classes such as powerdot or beamer, both of which are tuned to to something that's not a float.") (license license:lppl))) +(define-public texlive-latex-etoolbox + (package + (name "texlive-latex-etoolbox") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/etoolbox")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0016bscnpima9krrg2569mva78xzwnygzlvg87dznsm6gf8g589v")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/etoolbox"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/etoolbox") + (synopsis "e-TeX tools for LaTeX") + (description + "This package is a toolbox of programming facilities geared primarily +towards LaTeX class and package authors. It provides LaTeX frontends to some +of the new primitives provided by e-TeX as well as some generic tools which +are not strictly related to e-TeX but match the profile of this package. The +package provides functions that seem to offer alternative ways of implementing +some LaTeX kernel commands; nevertheless, the package will not modify any part +of the LaTeX kernel.") + (license license:lppl1.3+))) + (define-public texlive-latex-fncychap (package (name "texlive-latex-fncychap") From ef1e2ef07bced28d7a91519d90497c0cdc330053 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:40:49 +0200 Subject: [PATCH 0226/1227] gnu: Add texlive-latex-framed. * gnu/packages/tex.scm (texlive-latex-framed): New variable. --- gnu/packages/tex.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 22d7e6d2d0..1bd6c2629a 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1944,6 +1944,46 @@ modify the formatting routines in order to create additional chapter headings.") (license license:lppl1.3+))) +(define-public texlive-latex-framed + (package + (name "texlive-latex-framed") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/framed")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "14a4ydqsvp3vcfavl21jrv0ybiqypaaqzg2q2cs3rzkandg7w98x")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/framed"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/framed") + (synopsis "Framed or shaded regions that can break across pages") + (description + "The package creates three environments: @code{framed}, which puts an +ordinary frame box around the region, @code{shaded}, which shades the region, +and @code{leftbar}, which places a line at the left side. The environments +allow a break at their start (the @code{\\FrameCommand} enables creation of a +title that is “attached” to the environment); breaks are also allowed in the +course of the framed/shaded matter. There is also a command +@code{\\MakeFramed} to make your own framed-style environments.") + ;; The header states: "These macros may be freely transmitted, reproduced, + ;; or modified for any purpose provided that this notice is left intact." + (license (license:fsf-free "file://framed.sty")))) + (define-public texlive-latex-g-brief (package (name "texlive-latex-g-brief") From d48091bed08eb6bcd864501a83a4938a649ce64a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:41:06 +0200 Subject: [PATCH 0227/1227] gnu: Add texlive-latex-mdwtools. * gnu/packages/tex.scm (texlive-latex-mdwtools): New variable. --- gnu/packages/tex.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 1bd6c2629a..79aeae8278 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2122,6 +2122,30 @@ pdf and HTML backends. The package is distributed with the @code{backref} and @code{nameref} packages, which make use of the facilities of @code{hyperref}.") (license license:lppl1.3+))) +(define-public texlive-latex-mdwtools + (package + (name "texlive-latex-mdwtools") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "mdwtools")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0caxs74hla28hc67csf5i5ahadx97w8vxh3mdmsprxbpd1mr7ssg")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/mdwtools")) + (home-page "http://www.ctan.org/pkg/mdwtools") + (synopsis "Miscellaneous tools by Mark Wooding") + (description + "This collection of tools includes: @code{atsupport} for short commands +starting with @code{@}, macros to sanitize the OT1 encoding of the @code{cmtt} +fonts; a @code{doafter} command; improved @code{footnote} support; +@code{mathenv} for various alignment in maths; list handling; @code{mdwmath} +which adds some minor changes to LaTeX maths; a rewrite of LaTeX's tabular and +array environments; verbatim handling; and syntax diagrams.") + (license license:gpl3+))) + (define-public texlive-latex-polyglossia (package (name "texlive-latex-polyglossia") From 0de81b09a9217cf6e061b1a8a81692f4bdf6a5ad Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:41:29 +0200 Subject: [PATCH 0228/1227] gnu: Add texlive-latex-upquote. * gnu/packages/tex.scm (texlive-latex-upquote): New variable. --- gnu/packages/tex.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 79aeae8278..235213e686 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2223,6 +2223,34 @@ other programs in the distribution offer online interactive use (with hypertext linkages in some cases).") (license license:gpl3+))) +(define-public texlive-latex-upquote + (package + (name "texlive-latex-upquote") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "upquote")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0d1050i973wnxigy0xpky5l7vn4ff7ldhkjpdqsw5s653gagwixp")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/upquote")) + (home-page "http://www.ctan.org/pkg/upquote") + (synopsis "Show \"realistic\" quotes in verbatim") + (description + "Typewriter-style fonts are best for program listings, but Computer +Modern Typewriter prints @code{`} and @code{'} as bent opening and closing +single quotes. Other fonts, and most programming languages, print @code{`} as +a grave accent and @code{'} upright; @code{'} is used both to open and to +close quoted strings. The package switches the typewriter font to Computer +Modern Typewriter in OT1 encoding, and modifies the behaviour of +@code{verbatim}, @code{verbatim*}, @code{\\verb}, and @code{\\verb*} to print +in the expected way. It does this regardless of other fonts or encodings in +use, so long as the package is loaded after the other fonts were. The package +does not affect @code{\\tt}, @code{\\texttt}, etc.") + (license license:lppl1.2+))) + (define-public texlive-latex-anysize (package (name "texlive-latex-anysize") From e0d307d154f852d9d34af90a0586b38e7864af78 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:41:59 +0200 Subject: [PATCH 0229/1227] gnu: Add texlive-latex-parskip. * gnu/packages/tex.scm (texlive-latex-parskip): New variable. --- gnu/packages/tex.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 235213e686..a2a9867af1 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2845,6 +2845,40 @@ the included graphic. LaTeX commands can be placed on the graphic at defined positions; a grid for orientation is available.") (license license:lppl1.0+))) +(define-public texlive-latex-parskip + (package + (name "texlive-latex-parskip") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/parskip")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "14r6h9hqb0qgccxj5l1208694fx8sb8avmgzps36lsbbpszl7i7m")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/parskip"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/parskip") + (synopsis "Layout with zero \\parindent, non-zero \\parskip") + (description + "Simply changing @code{\\parskip} and @code{\\parindent} leaves a layout +that is untidy; this package (though it is no substitute for a properly +designed class) helps alleviate this untidiness.") + (license license:lppl))) + (define-public texlive-latex-pdfpages (package (name "texlive-latex-pdfpages") From c73d0e9d5e71aa3da7b94617590fc245fd547735 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 08:52:23 +0200 Subject: [PATCH 0230/1227] gnu: Add texlive-latex-tabulary. * gnu/packages/tex.scm (texlive-latex-tabulary): New variable. --- gnu/packages/tex.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index a2a9867af1..24b438524f 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2960,6 +2960,31 @@ considered obsolete: it was superseded by @code{subfig}, but users may find the more recent @code{subcaption} package more satisfactory.") (license license:lppl))) +(define-public texlive-latex-tabulary + (package + (name "texlive-latex-tabulary") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "tabulary")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1adkdx2zkk42g82nqf57lv1nc1z7kwl13jmy8vpcsizsa0xdnx9n")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/tabulary")) + (home-page "http://www.ctan.org/pkg/tabulary") + (synopsis "Tabular with variable width columns balanced") + (description + "The package defines a @code{tabular*}-like environment, @code{tabulary}, +taking a \"total width\" argument as well as the column specifications. The +environment uses column types @code{L}, @code{C}, @code{R} and @code{J} for +variable width columns (@code{\\raggedright}, @code{\\centering}, +@code{\\raggedleft}, and normally justified). In contrast to +@code{tabularx}'s @code{X} columns, the width of each column is weighted +according to the natural width of the widest cell in the column.") + (license license:lppl))) + (define-public texlive-latex-titlesec (package (name "texlive-latex-titlesec") From e3088297f1230868d3d54efb36916c6305b2b3fa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 08:52:47 +0200 Subject: [PATCH 0231/1227] gnu: Add texlive-latex-threeparttable. * gnu/packages/tex.scm (texlive-latex-threeparttable): New variable. --- gnu/packages/tex.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 24b438524f..3a5810eb61 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2985,6 +2985,41 @@ variable width columns (@code{\\raggedright}, @code{\\centering}, according to the natural width of the widest cell in the column.") (license license:lppl))) +(define-public texlive-latex-threeparttable + (package + (name "texlive-latex-threeparttable") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/threeparttable")) + (revision %texlive-revision))) + (sha256 + (base32 + "10vy9k150w2lviw8h22s2mcykff38xci653m5823s2vv44pwbmzq")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/threeparttable"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/threeparttable") + (synopsis "Tables with captions and notes all the same width") + (description + "This package facilitates tables with titles (captions) and notes. The +title and notes are given a width equal to the body of the table (a +@code{tabular} environment). By itself, a @code{threeparttable} does not +float, but you can put it in a @code{table} or a @code{table*} or some other +environment.") + (license (license:fsf-free "file://threeparttable.sty")))) + (define-public texlive-latex-titlesec (package (name "texlive-latex-titlesec") From 3966ebbbe75fb78c3fbdfcf0bb78920abdcef5d7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 08:53:11 +0200 Subject: [PATCH 0232/1227] gnu: Add texlive-latex-varwidth. * gnu/packages/tex.scm (texlive-latex-varwidth): New variable. --- gnu/packages/tex.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 3a5810eb61..432d10d640 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3114,6 +3114,40 @@ technical illustrations. Its output is scalable PostScript or SVG, rather than the bitmaps Metafont creates.") (license license:lppl))) +(define-public texlive-latex-varwidth + (package + (name "texlive-latex-varwidth") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/varwidth")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1bmz9ap0ffyg7qry2xi7lki06qx4809w028xvk88cl66h7p46g52")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/varwidth"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/varwidth") + (synopsis "Variable-width minipage") + (description + "The @code{varwidth} environment is superficially similar to +@code{minipage}, but the specified width is just a maximum value — the box may +get a narrower “natural” width.") + (license license:lppl))) + (define-public texlive-latex-wasysym (package (name "texlive-latex-wasysym") From 63ed869bdd785f6a05b0ea287cc0637ecfbc6f6f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 08:53:34 +0200 Subject: [PATCH 0233/1227] gnu: Add texlive-latex-wrapfig. * gnu/packages/tex.scm (texlive-latex-wrapfig): New variable. --- gnu/packages/tex.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 432d10d640..92bfd85fca 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3169,6 +3169,40 @@ lasy font set and other odds and ends. The wasysym package implements an easy to use interface for these symbols.") (license license:lppl))) +(define-public texlive-latex-wrapfig + (package + (name "texlive-latex-wrapfig") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/wrapfig")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "16xpyl0csmmwndz1xhzqfg9l0zcsnqxslsixsqkwd4zsvfj30sv4")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/wrapfig"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/wrapfig") + (synopsis "Produces figures which text can flow around") + (description + "This package allows figures or tables to have text wrapped around them. +It does not work in combination with list environments, but can be used in a +@code{parbox} or @code{minipage}, and in two-column format.") + (license license:lppl))) + (define-public texlive-latex-ucs (package (name "texlive-latex-ucs") From fedb80ee0e6527cb4e29380a4c2ffd343110287e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 08:53:55 +0200 Subject: [PATCH 0234/1227] gnu: Add texlive-generic-pdftex. * gnu/packages/tex.scm (texlive-generic-pdftex): New variable. --- gnu/packages/tex.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 92bfd85fca..ce29ba0296 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3298,6 +3298,38 @@ requires the suffix package, which in turn requires that it runs under e-TeX.") (license license:lppl1.3+))) +(define-public texlive-generic-pdftex + (package + (name "texlive-generic-pdftex") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/generic/pdftex")) + (revision %texlive-revision))) + (sha256 + (base32 + "0k68zmqzs4qvrqxdwsrawbjb14hxqjfamq649azvai0jjxdpkljd")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/generic/pdftex"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/pdftex") + (synopsis "TeX extension for direct creation of PDF") + (description + "This package provides an extension of TeX which can be configured to +directly generate PDF documents instead of DVI.") + (license license:gpl2+))) + (define texlive-texmf (package (name "texlive-texmf") From 3236599f50ebcb1c2355a3c9f687720fa2f54005 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 12:00:38 +0200 Subject: [PATCH 0235/1227] gnu: Add texlive-latex-bigfoot. * gnu/packages/tex.scm (texlive-latex-bigfoot): New variable. --- gnu/packages/tex.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index ce29ba0296..c4314cde5d 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1647,6 +1647,41 @@ make direct processing by LaTeX easier. The package can be used either in conjunction with BibTeX or as a replacement for BibTeX.") (license license:lppl1.3+))) +(define-public texlive-latex-bigfoot + (package + (name "texlive-latex-bigfoot") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "bigfoot")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "092g8alnsdwlgl1isdnqrr32l161994295kadr1n05d81xgj5wnv")))) + (build-system texlive-build-system) + (arguments + '(#:tex-directory "latex/bigfoot" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-generated-file + (lambda _ + (for-each delete-file (find-files "." "\\.drv$")) + #t))))) + (home-page "http://www.ctan.org/pkg/bigfoot") + (synopsis "Footnotes for critical editions") + (description + "This package aims to provide a one-stop solution to requirements for +footnotes. It offers: Multiple footnote apparatus superior to that of +@code{manyfoot}. Footnotes can be formatted in separate paragraphs, or be run +into a single paragraph (this choice may be selected per footnote series); +Things you might have expected (such as @code{\\verb}-like material in +footnotes, and color selections over page breaks) now work. Note that the +majority of the bigfoot package's interface is identical to that of +@code{manyfoot}; users should seek information from that package's +documentation. The bigfoot bundle also provides the @code{perpage} and +@code{suffix} packages.") + (license license:gpl2+))) + (define-public texlive-latex-blindtext (package (name "texlive-latex-blindtext") From 74e9c9a46307a2e2de775ee4a32a53379a03284a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 12:03:33 +0200 Subject: [PATCH 0236/1227] gnu: Add texlive-latex-environ. * gnu/packages/tex.scm (texlive-latex-environ): New variable. --- gnu/packages/tex.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index c4314cde5d..4c3d15419e 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1764,6 +1764,28 @@ implementation is output device independent, and made very simple by relying on everypage.") (license license:lppl1.3+))) +(define-public texlive-latex-environ + (package + (name "texlive-latex-environ") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "environ")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "06h28b26dyjkj9shksphgqfv4130jfkwhbw737hxn7d3yvdfffyd")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/environ")) + (home-page "http://www.ctan.org/pkg/environ") + (synopsis "New interface for environments in LaTeX") + (description + "This package provides the @code{\\collect@body} command (as in +@code{amsmath}), as well as a @code{\\long} version @code{\\Collect@Body}, for +collecting the body text of an environment. These commands are used to define +a new author interface to creating new environments.") + (license license:lppl))) + (define-public texlive-latex-eqparbox (package (name "texlive-latex-eqparbox") From 893e3fc1c091fef89ed88f1aa87bd74814cdda08 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 12:04:01 +0200 Subject: [PATCH 0237/1227] gnu: Add texlive-latex-filemod. * gnu/packages/tex.scm (texlive-latex-filemod): New variable. --- gnu/packages/tex.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 4c3d15419e..f54b8408ee 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1845,6 +1845,44 @@ without affecting the structure of the list (this works for @code{itemize} and @code{enumerate} lists, and numbered lists remain in sequence).") (license license:lppl))) +(define-public texlive-latex-filemod + (package + (name "texlive-latex-filemod") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/filemod")) + (revision %texlive-revision))) + (sha256 + (base32 + "0vpxilfw69xv78f03g0j0zw0bw4qcn36whqp8phcq48qk1ax2kr2")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/filemod"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/filemod") + (synopsis "Provide file modification times, and compare them") + (description + "This package provides macros to read and compare the modification dates +of files. The files may be @code{.tex} files, images or other files (as long +as they can be found by LaTeX). It uses the @code{\\pdffilemoddate} primitive +of pdfLaTeX to find the file modification date as PDF date string, parses the +string and returns the value to the user. The package will also work for DVI +output with recent versions of the LaTeX compiler which uses pdfLaTeX in DVI +mode. The functionality is provided by purely expandable macros or by faster +but non-expandable ones.") + (license license:lppl1.3+))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From 8c23f238e9563fafc9cd06d52717bdb2a2cbfe65 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 12:04:19 +0200 Subject: [PATCH 0238/1227] gnu: Add texlive-latex-ifplatform. * gnu/packages/tex.scm (texlive-latex-ifplatform): New variable. --- gnu/packages/tex.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index f54b8408ee..1a1bfdf31a 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1883,6 +1883,31 @@ mode. The functionality is provided by purely expandable macros or by faster but non-expandable ones.") (license license:lppl1.3+))) +(define-public texlive-latex-ifplatform + (package + (name "texlive-latex-ifplatform") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "ifplatform")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "11gvvjvmdfs9b7mm19yf80zwkx49jqcbq6g8qb9y5ns1r1qvnixp")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/ifplatform")) + (home-page "http://www.ctan.org/pkg/ifplatform") + (synopsis "Conditionals to test which platform is being used") + (description + "This package uses the (La)TeX extension @code{-shell-escape} to +establish whether the document is being processed on a Windows or on a +Unix-like system, or on Cygwin (Unix environment over a Windows system). +Booleans provided are: @code{\\ifwindows}, @code{\\iflinux}, @code{\\ifmacosx} +and @code{\\ifcygwin}. The package also preserves the output of @code{uname} +on a Unix-like system, which may be used to distinguish between various +classes of systems.") + (license license:lppl))) + (define-public texlive-latex-natbib (package (name "texlive-latex-natbib") From d770d07fb5249a852b4043f4cde80505fd45fc39 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 12:04:45 +0200 Subject: [PATCH 0239/1227] gnu: Add texlive-latex-psfrag. * gnu/packages/tex.scm (texlive-latex-psfrag): New variable. --- gnu/packages/tex.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 1a1bfdf31a..04dbc410ca 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1931,6 +1931,31 @@ that are compatible with @code{natbib}: @code{plainnat}, @code{unsrtnat}, designed from the start to be compatible with @code{natbib}.") (license license:lppl))) +(define-public texlive-latex-psfrag + (package + (name "texlive-latex-psfrag") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "psfrag")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1dxbl5il7wbbsp0v45vk884xi1192wxw03849pb1g5q4x808n352")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/psfrag")) + (home-page "http://www.ctan.org/pkg/psfrag") + (synopsis "Replace strings in encapsulated PostScript figures") + (description + "This package allows LaTeX constructions (equations, picture +environments, etc.) to be precisely superimposed over Encapsulated PostScript +figures, using your own favorite drawing tool to create an EPS figure and +placing simple text \"tags\" where each replacement is to be placed, with +PSfrag automatically removing these tags from the figure and replacing them +with a user specified LaTeX construction, properly aligned, scaled, and/or +rotated.") + (license (license:fsf-free "file://psfrag.dtx")))) + (define-public texlive-latex-seminar (package (name "texlive-latex-seminar") From f3540dbd47cff3a4cd4898afa2094b758b1d5f85 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 12:05:24 +0200 Subject: [PATCH 0240/1227] gnu: Add texlive-latex-trimspaces. * gnu/packages/tex.scm (texlive-latex-trimspaces): New variable. --- gnu/packages/tex.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 04dbc410ca..8d786b452a 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1983,6 +1983,39 @@ recent classes such as powerdot or beamer, both of which are tuned to 21st-century presentation styles.") (license license:lppl1.2+))) +(define-public texlive-latex-trimspaces + (package + (name "texlive-latex-trimspaces") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "trimspaces")) + (sha256 + (base32 + "0da00lb32am4g63mn96625wg48p3pj3spx79lajrk17d549apwqa")))) + (build-system texlive-build-system) + (arguments + '(#:tex-directory "latex/trimspaces" + #:tex-format "latex" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-bug + (lambda _ + ;; The "ins" file refers to the wrong source file. + (substitute* "trimspaces.ins" + (("pstool.tex") "trimspaces.tex")) + #t))))) + (inputs + `(("texlive-latex-filecontents" ,texlive-latex-filecontents))) + (home-page "http://www.ctan.org/pkg/trimspaces") + (synopsis "Trim spaces around an argument or within a macro") + (description + "This very short package allows you to expandably remove spaces around a +token list (commands are provided to remove spaces before, spaces after, or +both); or to remove surrounding spaces within a macro definition, or to define +space-stripped macros.") + (license license:lppl))) + (define-public texlive-latex-capt-of (package (name "texlive-latex-capt-of") From 5a1ee7d83556599b004ad6cf5561ae3c97b0e125 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 12:05:40 +0200 Subject: [PATCH 0241/1227] gnu: Add texlive-latex-pstool. * gnu/packages/tex.scm (texlive-latex-pstool): New variable. --- gnu/packages/tex.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 8d786b452a..0d44a89180 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1956,6 +1956,41 @@ with a user specified LaTeX construction, properly aligned, scaled, and/or rotated.") (license (license:fsf-free "file://psfrag.dtx")))) +(define-public texlive-latex-pstool + (package + (name "texlive-latex-pstool") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "pstool")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1kwlk1x67lad4xb7gpkxqgdlxwpi6nvq1r9wika7m92abmyf18h3")))) + (build-system texlive-build-system) + (arguments + '(#:tex-directory "latex/pstool" + #:tex-format "latex")) + (inputs + `(("texlive-fonts-cm" ,texlive-fonts-cm) + ("texlive-latex-filecontents" ,texlive-latex-filecontents))) + (propagated-inputs + `(("texlive-latex-bigfoot" ,texlive-latex-bigfoot) + ("texlive-latex-filemod" ,texlive-latex-filemod) + ("texlive-latex-graphics" ,texlive-latex-graphics) + ("texlive-latex-ifplatform" ,texlive-latex-ifplatform) + ("texlive-latex-oberdiek" ,texlive-latex-oberdiek) + ("texlive-latex-psfrag" ,texlive-latex-psfrag) + ("texlive-latex-trimspaces" ,texlive-latex-trimspaces))) + (home-page "http://www.ctan.org/pkg/pstool") + (synopsis "Process PostScript graphisc within pdfLaTeX documents") + (description + "This is a package for processing PostScript graphics with @code{psfrag} +labels within pdfLaTeX documents. Every graphic is compiled individually, +drastically speeding up compilation time when only a single figure needs +re-processing.") + (license license:lppl))) + (define-public texlive-latex-seminar (package (name "texlive-latex-seminar") From 2584beaedd04c5f8b1278441160bf3531e81e9bf Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:38:29 +0200 Subject: [PATCH 0242/1227] gnu: python-ipython: Use texlive-union. * gnu/packages/python.scm (python-ipython)[native-inputs]: Replace "texlive" with a texlive-union. --- gnu/packages/python.scm | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 1c53956fb1..f9c6176c10 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5465,7 +5465,40 @@ tools for mocking system commands and recording calls to those.") ("python-nose" ,python-nose) ("python-sphinx" ,python-sphinx) ("python-shpinx-rtd-theme" ,python-sphinx-rtd-theme) - ("texlive" ,texlive) + ;; FIXME: It's possible that a smaller union would work just as well. + ("texlive" ,(texlive-union (list texlive-fonts-amsfonts + texlive-fonts-ec + texlive-generic-ifxetex + texlive-generic-pdftex + texlive-latex-amsfonts + texlive-latex-capt-of + texlive-latex-cmap + texlive-latex-environ + texlive-latex-eqparbox + texlive-latex-etoolbox + texlive-latex-expdlist + texlive-latex-fancyhdr + texlive-latex-fancyvrb + texlive-latex-fncychap + texlive-latex-float + texlive-latex-framed + texlive-latex-geometry + texlive-latex-graphics + texlive-latex-hyperref + texlive-latex-mdwtools + texlive-latex-multirow + texlive-latex-oberdiek + texlive-latex-parskip + texlive-latex-preview + texlive-latex-tabulary + texlive-latex-threeparttable + texlive-latex-titlesec + texlive-latex-trimspaces + texlive-latex-ucs + texlive-latex-upquote + texlive-latex-url + texlive-latex-varwidth + texlive-latex-wrapfig))) ("texinfo" ,texinfo))) (arguments `(#:phases From dea67d8afe17be2dad41e4167c12f85df0d9b4f3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:39:38 +0200 Subject: [PATCH 0243/1227] gnu: Add texlive-fontname. * gnu/packages/tex.scm (texlive-fontname): New variable. --- gnu/packages/tex.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 0d44a89180..b8f972aa37 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -429,6 +429,40 @@ converters, will completely supplant the older patterns.") build fonts using the Metafont system.") (license license:knuth))) +(define-public texlive-fontname + (package + (name "texlive-fontname") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/map/fontname")) + (revision %texlive-revision))) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0cssbzcx15221dynp5sii72qh4l18mwkr14n8w1xb19j8pbaqasz")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/fonts/map/fontname"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.ctan.org/pkg/fontname") + (synopsis "Scheme for naming fonts in TeX") + (description "This is Fontname, a naming scheme for (the base part of) +external TeX font filenames. This makes at most eight-character names +from (almost) arbitrarily complex font names, thus helping portability of TeX +documents.") + (license license:public-domain))) + (define-public texlive-fonts-cm (package (name "texlive-fonts-cm") From 263d0c829e55cb995d2afb415a29c77e2f3061c3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:40:23 +0200 Subject: [PATCH 0244/1227] gnu: texlive-union: Add texlive-fontname to defaults. * gnu/packages/tex.scm (texlive-union): Add texlive-fontname to the default packages --- gnu/packages/tex.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index b8f972aa37..95f15dfd52 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1573,6 +1573,7 @@ standard LaTeX packages." (let ((default-packages (list texlive-bin texlive-dvips + texlive-fontname texlive-fonts-cm texlive-fonts-latex texlive-metafont-base From 4701946775bbe0a8c4d1585ba65a969637e39a03 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:41:17 +0200 Subject: [PATCH 0245/1227] gnu: texlive-dvips: Install font maps. * gnu/packages/tex.scm (texlive-dvips)[native-inputs]: Add dvips-font-maps and dvips-base-enc. [arguments]: Install them. --- gnu/packages/tex.scm | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 95f15dfd52..8b5fe12117 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -201,11 +201,41 @@ This package contains the binaries.") #:builder (begin (use-modules (guix build utils)) - (let ((target (string-append (assoc-ref %outputs "out") - "/share/texmf-dist/dvips"))) - (mkdir-p target) - (copy-recursively (assoc-ref %build-inputs "source") target) + (let* ((root (string-append (assoc-ref %outputs "out") + "/share/texmf-dist")) + (dvips (string-append root "/dvips")) + (maps (string-append root "/fonts/map/dvips/tetex")) + (encs (string-append root "/fonts/enc/dvips/base"))) + (mkdir-p dvips) + (copy-recursively (assoc-ref %build-inputs "source") dvips) + (mkdir-p maps) + (copy-recursively (assoc-ref %build-inputs "dvips-font-maps") maps) + (mkdir-p encs) + (copy-recursively (assoc-ref %build-inputs "dvips-base-enc") encs) #t)))) + (native-inputs + `(("dvips-font-maps" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/map/dvips/tetex")) + (revision %texlive-revision))) + (sha256 + (base32 + "100208pg7q6lj7swiq9p9287nn6b64bl62bnlaxpjni9y2kdrqy5")))) + ("dvips-base-enc" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/enc/dvips/base")) + (revision %texlive-revision))) + (sha256 + (base32 + "1xnf6ms0h87r55kxik4vicwr1907scj789lhqflqns8svvsli5iy")))))) (home-page "http://www.ctan.org/pkg/dvips") (synopsis "DVI to PostScript drivers") (description "This package provides files needed for converting DVI files From 245f1f31e8d8e2097fc69b7258087830e642ec71 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:42:18 +0200 Subject: [PATCH 0246/1227] gnu: Add texlive-latex-enumitem. * gnu/packages/tex.scm (texlive-latex-enumitem): New variable. --- gnu/packages/tex.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 8b5fe12117..271aaf4d62 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3068,6 +3068,42 @@ splines, and filled circles and ellipses. The package uses @code{tpic} @code{\\special} commands.") (license license:public-domain))) +(define-public texlive-latex-enumitem + (package + (name "texlive-latex-enumitem") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/enumitem")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0q24b1bkdi9l6bw787bpggww83jh2vj8955aw2m5yccqbx4vgr5r")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/enumitem"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "http://www.ctan.org/pkg/enumitem") + (synopsis "Customize basic list environments") + (description + "This package is intended to ease customizing the three basic list +environments: @code{enumerate}, @code{itemize} and @code{description}. It +extends their syntax to allow an optional argument where a set of parameters +in the form @code{key=value} are available, for example: +@code{\\begin{itemize}[itemsep=1ex,leftmargin=1cm]}.") + (license license:lppl1.3+))) + (define-public texlive-latex-multirow (package (name "texlive-latex-multirow") From 1b10d49405bcc9c0f20f1c8d41966166dbc00113 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:42:47 +0200 Subject: [PATCH 0247/1227] gnu: Add texlive-fonts-txfonts. * gnu/packages/tex.scm (texlive-fonts-txfonts): New variable. --- gnu/packages/tex.scm | 131 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 271aaf4d62..37d83ed775 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3334,6 +3334,137 @@ float, but you can put it in a @code{table} or a @code{table*} or some other environment.") (license (license:fsf-free "file://threeparttable.sty")))) +(define-public texlive-fonts-txfonts + (package + (name "texlive-fonts-txfonts") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/txfonts")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0jl921qdphg8i7bkfprackn3xd4gmvxckc526nmzqsmahqkavgg2")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils) + (ice-9 match)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match)) + (let ((root (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/")) + (pkgs '(("source" . "tex/latex/txfonts") + ("txfonts-vf" . "fonts/tfm/public/txfonts") + ("txfonts-afm" . "fonts/afm/public/txfonts") + ("txfonts-tfm" . "fonts/tfm/public/txfonts") + ("txfonts-type1" . "fonts/type1/public/txfonts") + ("txfonts-enc" . "fonts/enc/dvips/txfonts") + ("txfonts-map" . "fonts/map/dvips/txfonts")))) + (for-each (match-lambda + ((pkg . dir) + (let ((target (string-append root dir))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs pkg) + target)))) + pkgs) + #t)))) + (native-inputs + `(("txfonts-tfm" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/tfm/public/txfonts")) + (revision %texlive-revision))) + (file-name (string-append name "-tfm-" version "-checkout")) + (sha256 + (base32 + "12ffmbrp48ap35qa3b4mi6ckif9q2vf7972jxh5dc1yzykhla2xv")))) + ("txfonts-vf" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/vf/public/txfonts")) + (revision %texlive-revision))) + (file-name (string-append name "-vf-" version "-checkout")) + (sha256 + (base32 + "04acyfdwvxpfx4l2xh2bpzdmpvwdf2pzbs7a236b0xckz2jvc1ci")))) + ("txfonts-afm" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/afm/public/txfonts")) + (revision %texlive-revision))) + (file-name (string-append name "-afm-" version "-checkout")) + (sha256 + (base32 + "1705klz51pnqzcs89s3521b84b6c89wlczflsh0vci66nl155yis")))) + ("txfonts-type1" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/type1/public/txfonts")) + (revision %texlive-revision))) + (file-name (string-append name "-type1-" version "-checkout")) + (sha256 + (base32 + "0ajwr7zb6ch3gxd0g8p2i4llhy2wr9a9saz6jq6hm6fxf4pgl5h3")))) + ("txfonts-map" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/map/dvips/txfonts")) + (revision %texlive-revision))) + (file-name (string-append name "-map-" version "-checkout")) + (sha256 + (base32 + "0kamr8a9x24jakas3v09dgv7kkpybj3i7qv4vz1iyypqr6kk1raj")))) + ("txfonts-enc" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/enc/dvips/txfonts")) + (revision %texlive-revision))) + (file-name (string-append name "-enc-" version "-checkout")) + (sha256 + (base32 + "1bal5fhw0xlhl37ayv8vlnqnsn1y82kadzfjhbgr223blspp4zsj")))))) + (home-page "http://www.ctan.org/pkg/threeparttable") + (synopsis "Times-like fonts in support of mathematics") + (description + "Txfonts supplies virtual text roman fonts using Adobe Times (or URW +NimbusRomNo9L) with some modified and additional text symbols in the OT1, T1, +and TS1 encodings; maths alphabets using Times/URW Nimbus; maths fonts +providing all the symbols of the Computer Modern and AMS fonts, including all +the Greek capital letters from CMR; and additional maths fonts of various +other symbols. + +The set is complemented by a sans-serif set of text fonts, based on +Helvetica/NimbusSanL, and a monospace set. + +All the fonts are in Type 1 format (AFM and PFB files), and are supported by +TeX metrics (VF and TFM files) and macros for use with LaTeX.") + ;; Any version of the GPL with font exception. + (license license:gpl3+))) + (define-public texlive-latex-titlesec (package (name "texlive-latex-titlesec") From 274e3d4f3e13330ce3310002b524b9e0dc2b9bed Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:43:08 +0200 Subject: [PATCH 0248/1227] gnu: Add texlive-latex-type1cm. * gnu/packages/tex.scm (texlive-latex-type1cm): New variable. --- gnu/packages/tex.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 37d83ed775..973c56a3fd 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3500,6 +3500,35 @@ styles. It also includes a package to change the page styles when there are floats in a page. You may assign headers/footers to individual floats, too.") (license license:lppl))) +(define-public texlive-latex-type1cm + (package + (name "texlive-latex-type1cm") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (texlive-ref "latex" "type1cm")) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1lvxrqfwcwa4p31zyfm80gr05v8c28xybv5ri79zi2ngz6834z12")))) + (build-system texlive-build-system) + (arguments '(#:tex-directory "latex/type1cm")) + (home-page "http://www.ctan.org/pkg/type1cm") + (synopsis "Arbitrary size font selection in LaTeX") + (description + "LaTeX, by default, restricts the sizes at which you can use its default +computer modern fonts, to a fixed set of discrete sizes (effectively, a set +specified by Knuth). The @code{type1cm} package removes this restriction; +this is particularly useful when using scalable versions of the CM +fonts (Bakoma, or the versions from BSR/Y&Y, or True Type versions from Kinch, +PCTeX, etc.). In fact, since modern distributions will automatically generate +any bitmap font you might need, @code{type1cm} has wider application than just +those using scaleable versions of the fonts. Note that the LaTeX distribution +now contains a package @code{fix-cm},f which performs the task of +@code{type1cm}, as well as doing the same job for T1- and TS1-encoded +@code{ec} fonts.") + (license license:lppl))) + (define-public texlive-latex-lh (package (name "texlive-latex-lh") From c58d1b5f55632a664313426d909781bc94bb16c1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 15 Jul 2017 10:43:54 +0200 Subject: [PATCH 0249/1227] gnu: texlive-union: Silence union-build. * gnu/packages/tex.scm (texlive-union)[arguments]: Suppress the output of "union-build". --- gnu/packages/tex.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 973c56a3fd..85cf6fe866 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1646,7 +1646,8 @@ standard LaTeX packages." (((names . directories) ...) (union-build (assoc-ref %outputs "out") directories - #:create-all-directories? #t))) + #:create-all-directories? #t + #:log-port (%make-void-port "w")))) ;; The configuration file "texmf.cnf" is provided by the ;; "texlive-bin" package. We take it and override only the From 5beecc320ee3f4224e356508547416b4bd24ad4b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 13 Jul 2017 09:38:59 +0200 Subject: [PATCH 0250/1227] gnu: Add sooperlooper. * gnu/packages/patches/sooperlooper-build-with-wx-30.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/music.scm (sooperlooper): New variable. --- gnu/local.mk | 1 + gnu/packages/music.scm | 72 +++++++ .../sooperlooper-build-with-wx-30.patch | 179 ++++++++++++++++++ 3 files changed, 252 insertions(+) create mode 100644 gnu/packages/patches/sooperlooper-build-with-wx-30.patch diff --git a/gnu/local.mk b/gnu/local.mk index 50fac30404..96e4b2d254 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1005,6 +1005,7 @@ dist_patch_DATA = \ %D%/packages/patches/slim-reset.patch \ %D%/packages/patches/slim-login.patch \ %D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \ + %D%/packages/patches/sooperlooper-build-with-wx-30.patch \ %D%/packages/patches/spice-CVE-2016-9577.patch \ %D%/packages/patches/spice-CVE-2016-9578-1.patch \ %D%/packages/patches/spice-CVE-2016-9578-2.patch \ diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index a3f3d4bacb..40996b11be 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2345,6 +2345,78 @@ part. The player is based on a highly modified version of the ModPlug engine, with a number of bugfixes and changes to improve IT playback.") (license license:gpl2+))) +(define-public sooperlooper + (package + (name "sooperlooper") + (version "1.7.3") + (source (origin + (method url-fetch) + (uri (string-append "http://essej.net/sooperlooper/sooperlooper-" + version ".tar.gz")) + (sha256 + (base32 + "0n2gdxw1fx8nxxnpzf4sj0kp6k6zi1yq59cbz6qqzcnsnpnvszbs")) + (patches (search-patches "sooperlooper-build-with-wx-30.patch")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags (list "CXXFLAGS=-std=gnu++11") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'add-sigc++-includes + (lambda* (#:key inputs #:allow-other-keys) + (let ((sig (assoc-ref inputs "libsigc++")) + (xml (assoc-ref inputs "libxml2")) + (cwd (getcwd))) + (setenv "CPATH" + (string-append sig "/include/sigc++-2.0:" + sig "/lib/sigc++-2.0/include:" + xml "/include/libxml2/:" + cwd "/libs/pbd:" + cwd "/libs/midi++"))) + (substitute* '("src/control_osc.hpp" + "src/gui/app_frame.hpp" + "src/gui/config_panel.hpp" + "src/gui/keys_panel.hpp" + "src/gui/latency_panel.hpp" + "src/gui/main_panel.hpp" + "src/gui/midi_bind_panel.hpp" + "src/gui/prefs_dialog.hpp") + (("sigc\\+\\+/object.h") + "sigc++/sigc++.h")) + (substitute* '("src/engine.cpp" + "src/gui/latency_panel.cpp" + "src/gui/looper_panel.cpp" + "src/gui/main_panel.cpp") + (("(\\(| )bind " _ pre) + (string-append pre "sigc::bind "))) + #t)) + (add-after 'unpack 'fix-xpm-warnings + (lambda _ + (substitute* (find-files "." "\\.xpm$") + (("static char") "static const char")) + #t))))) + (inputs + `(("jack" ,jack-1) + ("alsa-lib" ,alsa-lib) + ("wxwidgets" ,wxwidgets-gtk2) + ("libsndfile" ,libsndfile) + ("libsamplerate" ,libsamplerate) + ("liblo" ,liblo) + ("rubberband" ,rubberband) + ("libxml2" ,libxml2) + ("libsigc++" ,libsigc++) + ("ncurses" ,ncurses))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://essej.net/sooperlooper/") + (synopsis "Live looping sampler") + (description + "SooperLooper is a live looping sampler capable of immediate loop +recording, overdubbing, multiplying, reversing and more. It allows for +multiple simultaneous multi-channel loops limited only by your computer's +available memory.") + (license license:gpl2+))) + (define-public moc (package (name "moc") diff --git a/gnu/packages/patches/sooperlooper-build-with-wx-30.patch b/gnu/packages/patches/sooperlooper-build-with-wx-30.patch new file mode 100644 index 0000000000..43f4b9be69 --- /dev/null +++ b/gnu/packages/patches/sooperlooper-build-with-wx-30.patch @@ -0,0 +1,179 @@ +Downloaded from https://anonscm.debian.org/cgit/pkg-multimedia/sooperlooper.git/plain/debian/patches/04-build_with_wx_30.patch -O gnu/packages/patches/sooperlooper-build-with-wx-30.patch + +Author: Jaromír Mikeš , Olly Betts +Description: build against wx 3.0. +Forwarded: yes + +Index: sooperlooper/src/gui/main_panel.cpp +=================================================================== +--- sooperlooper.orig/src/gui/main_panel.cpp ++++ sooperlooper/src/gui/main_panel.cpp +@@ -448,7 +448,7 @@ MainPanel::init_loopers (int count) + while (count < (int)_looper_panels.size()) { + looperpan = _looper_panels.back(); + _looper_panels.pop_back(); +- _main_sizer->Remove(looperpan); ++ _main_sizer->Detach(looperpan); + looperpan->Destroy(); + } + } +@@ -1277,7 +1277,7 @@ void MainPanel::misc_action (bool releas + } + + +- wxString filename = do_file_selector (wxT("Choose file to save loop"), wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT); ++ wxString filename = do_file_selector (wxT("Choose file to save loop"), wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT); + + if ( !filename.empty() ) + { +@@ -1296,7 +1296,7 @@ void MainPanel::misc_action (bool releas + index = 0; + } + +- wxString filename = do_file_selector (wxT("Choose file to open"), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR); ++ wxString filename = do_file_selector (wxT("Choose file to open"), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR); + + if ( !filename.empty() ) + { +@@ -1408,7 +1408,7 @@ void MainPanel::set_curr_loop (int index + + void MainPanel::do_load_session () + { +- wxString filename = do_file_selector (wxT("Choose session to load"), wxT("*.slsess"), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR); ++ wxString filename = do_file_selector (wxT("Choose session to load"), wxT("*.slsess"), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR); + + if ( !filename.empty() ) + { +@@ -1419,7 +1419,7 @@ void MainPanel::do_load_session () + + void MainPanel::do_save_session (bool write_audio) + { +- wxString filename = do_file_selector (wxT("Choose file to save session"), wxT("slsess"), wxT("*.slsess"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT); ++ wxString filename = do_file_selector (wxT("Choose file to save session"), wxT("slsess"), wxT("*.slsess"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT); + + if ( !filename.empty() ) + { +Index: sooperlooper/src/gui/pix_button.cpp +=================================================================== +--- sooperlooper.orig/src/gui/pix_button.cpp ++++ sooperlooper/src/gui/pix_button.cpp +@@ -250,7 +250,7 @@ PixButton::OnMouseEvents (wxMouseEvent & + pt.x += bounds.x; + pt.y += bounds.y; + +- if (bounds.Inside(pt)) { ++ if (bounds.Contains(pt)) { + clicked (get_mouse_button(ev)); // emit + + if (ev.MiddleUp() && ev.ControlDown()) { +Index: sooperlooper/src/gui/looper_panel.cpp +=================================================================== +--- sooperlooper.orig/src/gui/looper_panel.cpp ++++ sooperlooper/src/gui/looper_panel.cpp +@@ -1428,7 +1428,7 @@ LooperPanel::clicked_events (int button, + if (cmd == wxT("save")) + { + wxString filename = _mainpanel->do_file_selector (wxT("Choose file to save loop"), +- wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT); ++ wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT); + + if ( !filename.empty() ) + { +@@ -1442,7 +1442,7 @@ LooperPanel::clicked_events (int button, + } + else if (cmd == wxT("load")) + { +- wxString filename = _mainpanel->do_file_selector(wxT("Choose file to open"), wxT(""), wxT("Audio files (*.wav,*.aif)|*.wav;*.WAV;*.Wav;*.aif;*.aiff;*.AIF;*.AIFF|All files (*.*)|*.*"), wxOPEN|wxCHANGE_DIR); ++ wxString filename = _mainpanel->do_file_selector(wxT("Choose file to open"), wxT(""), wxT("Audio files (*.wav,*.aif)|*.wav;*.WAV;*.Wav;*.aif;*.aiff;*.AIF;*.AIFF|All files (*.*)|*.*"), wxFD_OPEN|wxFD_CHANGE_DIR); + + if ( !filename.empty() ) + { +Index: sooperlooper/src/gui/keyboard_target.cpp +=================================================================== +--- sooperlooper.orig/src/gui/keyboard_target.cpp ++++ sooperlooper/src/gui/keyboard_target.cpp +@@ -553,10 +553,10 @@ KeyboardTarget::keycode_from_name (const + keycode = WXK_RETURN; + } + else if ( keyname == wxT("PGUP") ) { +- keycode = WXK_PRIOR; ++ keycode = WXK_PAGEUP; + } + else if ( keyname == wxT("PGDN") ) { +- keycode = WXK_NEXT; ++ keycode = WXK_PAGEDOWN; + } + else if ( keyname == wxT("LEFT") ) { + keycode = WXK_LEFT; +@@ -630,10 +630,10 @@ wxString KeyboardTarget::name_from_keyco + case WXK_RETURN: + text += wxT("return"); + break; +- case WXK_PRIOR: ++ case WXK_PAGEUP: + text += wxT("pageup"); + break; +- case WXK_NEXT: ++ case WXK_PAGEDOWN: + text += wxT("pagedown"); + break; + case WXK_LEFT: +Index: sooperlooper/src/gui/check_box.cpp +=================================================================== +--- sooperlooper.orig/src/gui/check_box.cpp ++++ sooperlooper/src/gui/check_box.cpp +@@ -237,7 +237,7 @@ CheckBox::OnMouseEvents (wxMouseEvent &e + } + else if (ev.LeftUp()) + { +- if (bounds.Inside(ev.GetPosition())) { ++ if (bounds.Contains(ev.GetPosition())) { + // toggle value + _value = !_value; + +Index: sooperlooper/src/gui/midi_bind_panel.cpp +=================================================================== +--- sooperlooper.orig/src/gui/midi_bind_panel.cpp ++++ sooperlooper/src/gui/midi_bind_panel.cpp +@@ -880,7 +880,7 @@ void MidiBindPanel::on_button (wxCommand + } + else if (ev.GetId() == ID_LoadButton) + { +- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to open"), wxT(""), wxT("*.slb"), wxOPEN|wxCHANGE_DIR); ++ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to open"), wxT(""), wxT("*.slb"), wxFD_OPEN|wxFD_CHANGE_DIR); + if ( !filename.empty() ) + { + _parent->get_loop_control().load_midi_bindings(filename, _append_check->GetValue()); +@@ -888,7 +888,7 @@ void MidiBindPanel::on_button (wxCommand + } + else if (ev.GetId() == ID_SaveButton) + { +- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to save"), wxT(""), wxT("*.slb"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT); ++ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to save"), wxT(""), wxT("*.slb"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT); + + if ( !filename.empty() ) + { +Index: sooperlooper/src/gui/config_panel.cpp +=================================================================== +--- sooperlooper.orig/src/gui/config_panel.cpp ++++ sooperlooper/src/gui/config_panel.cpp +@@ -378,7 +378,7 @@ void ConfigPanel::on_button (wxCommandEv + else if (ev.GetId() == ID_MidiBrowseButton) { + + _parent->get_keyboard().set_enabled(false); +- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to use"), wxT(""), wxT("*.slb"), wxOPEN|wxCHANGE_DIR); ++ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to use"), wxT(""), wxT("*.slb"), wxFD_OPEN|wxFD_CHANGE_DIR); + _parent->get_keyboard().set_enabled(true); + + if ( !filename.empty() ) +@@ -389,8 +389,8 @@ void ConfigPanel::on_button (wxCommandEv + else if (ev.GetId() == ID_SessionBrowseButton) { + + _parent->get_keyboard().set_enabled(false); +- wxString filename = _parent->do_file_selector(wxT("Choose session file to use"), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR); +- //wxString filename = wxFileSelector(wxT("Choose session file to use"), wxT(""), wxT(""), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR); ++ wxString filename = _parent->do_file_selector(wxT("Choose session file to use"), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR); ++ //wxString filename = wxFileSelector(wxT("Choose session file to use"), wxT(""), wxT(""), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR); + _parent->get_keyboard().set_enabled(true); + + if ( !filename.empty() ) From 7ad2a4f1d50e5a397010ec90dba79feaca296a81 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 17 Jul 2017 15:29:27 +0300 Subject: [PATCH 0251/1227] gnu: supertuxkart: Fix build on aarch64. * gnu/packages/games.scm (supertuxkart)[source]: Add patch. * gnu/packages/patches/supertuxkart-angelscript-ftbfs.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/games.scm | 1 + .../supertuxkart-angelscript-ftbfs.patch | 42 +++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 gnu/packages/patches/supertuxkart-angelscript-ftbfs.patch diff --git a/gnu/local.mk b/gnu/local.mk index 96e4b2d254..8e3a52d28c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1012,6 +1012,7 @@ dist_patch_DATA = \ %D%/packages/patches/spice-CVE-2017-7506.patch \ %D%/packages/patches/steghide-fixes.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ + %D%/packages/patches/supertuxkart-angelscript-ftbfs.patch \ %D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-format-security.patch \ %D%/packages/patches/synfigstudio-fix-ui-with-gtk3.patch \ diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 2bef92b93b..2dec9a3951 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1386,6 +1386,7 @@ This game is based on the GPL version of the famous game TuxRacer.") (sha256 (base32 "10l2ljmd7mv8f9ylarqmxxryicdnph2qkm3g5maxnsm2k2q0n20b")) + (patches (search-patches "supertuxkart-angelscript-ftbfs.patch")) (modules '((guix build utils))) (snippet ;; Delete bundled library sources diff --git a/gnu/packages/patches/supertuxkart-angelscript-ftbfs.patch b/gnu/packages/patches/supertuxkart-angelscript-ftbfs.patch new file mode 100644 index 0000000000..db3c56861b --- /dev/null +++ b/gnu/packages/patches/supertuxkart-angelscript-ftbfs.patch @@ -0,0 +1,42 @@ +https://github.com/supertuxkart/stk-code/commit/5e05f1178ce6bc5f3a653b55ab3dc6d016196341.patch + +From 5e05f1178ce6bc5f3a653b55ab3dc6d016196341 Mon Sep 17 00:00:00 2001 +From: Deve +Date: Mon, 3 Oct 2016 23:26:09 +0200 +Subject: [PATCH] Fixed compiler error on Linux with non-x86 64bit platforms, + e.g. arm64, mips, and s390x architectures + +This modification is already applied in upstream angelscript repository: +https://sourceforge.net/p/angelscript/code/2353/ + +Thanks to Adrian Bunk and Andreas Jonsson +--- + lib/angelscript/projects/cmake/CMakeLists.txt | 1 + + lib/angelscript/source/as_config.h | 2 +- + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/lib/angelscript/projects/cmake/CMakeLists.txt b/lib/angelscript/projects/cmake/CMakeLists.txt +index e93971315e..755d8378c3 100644 +--- a/lib/angelscript/projects/cmake/CMakeLists.txt ++++ b/lib/angelscript/projects/cmake/CMakeLists.txt +@@ -67,6 +67,7 @@ set(ANGELSCRIPT_SOURCE + ../../source/as_builder.cpp + ../../source/as_bytecode.cpp + ../../source/as_callfunc.cpp ++ ../../source/as_callfunc_mips.cpp + ../../source/as_callfunc_x86.cpp + ../../source/as_callfunc_x64_gcc.cpp + ../../source/as_callfunc_x64_msvc.cpp +diff --git a/lib/angelscript/source/as_config.h b/lib/angelscript/source/as_config.h +index cb05bffbd5..5bb5b8e800 100644 +--- a/lib/angelscript/source/as_config.h ++++ b/lib/angelscript/source/as_config.h +@@ -844,7 +844,7 @@ + #define THISCALL_PASS_OBJECT_POINTER_ON_THE_STACK + #define AS_X86 + #undef AS_NO_THISCALL_FUNCTOR_METHOD +- #elif defined(__LP64__) && !defined(__arm64__) ++ #elif defined(__x86_64__) + #define AS_X64_GCC + #undef AS_NO_THISCALL_FUNCTOR_METHOD + #define HAS_128_BIT_PRIMITIVES From 2e009ae7cdaee4ce871b3a79d50118762ee29fb6 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Mon, 17 Jul 2017 15:00:01 +0200 Subject: [PATCH 0252/1227] daemon: Flush the sink upon 'exportPath' errors. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Prior to this change, errors such as wrong permissions on /etc/guix/signing-key.sec would give: guix-daemon: nix/libutil/serialise.cc:15: virtual nix::BufferedSink::~BufferedSink(): Assertion `!bufPos' failed. This patch correctly propagates the error to the client and thus changes that to: error: build failed: file `/etc/guix/signing-key.sec' should be secret (inaccessible to everybody else)! * nix/nix-daemon/nix-daemon.cc (performOp): Wrap 'exportPath' call in 'try' block. Co-authored-by: Ludovic Courtès --- nix/nix-daemon/nix-daemon.cc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/nix/nix-daemon/nix-daemon.cc b/nix/nix-daemon/nix-daemon.cc index 7d26b61354..deb7003d7e 100644 --- a/nix/nix-daemon/nix-daemon.cc +++ b/nix/nix-daemon/nix-daemon.cc @@ -436,7 +436,15 @@ static void performOp(bool trusted, unsigned int clientVersion, bool sign = readInt(from) == 1; startWork(); TunnelSink sink(to); - store->exportPath(path, sign, sink); + try { + store->exportPath(path, sign, sink); + } + catch (Error &e) { + /* Flush SINK beforehand or its destructor will rightfully trigger + an assertion failure. */ + sink.flush(); + throw e; + } sink.flush(); stopWork(); writeInt(1, to); From 9b7ee28d5700b47ae34bd47c32d250f042fbdbbd Mon Sep 17 00:00:00 2001 From: Andy Patterson Date: Sat, 15 Jul 2017 18:17:25 -0400 Subject: [PATCH 0253/1227] gnu: Add Poly/ML. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/sml.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/sml.scm | 72 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 gnu/packages/sml.scm diff --git a/gnu/local.mk b/gnu/local.mk index 8e3a52d28c..54dd2f2380 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -363,6 +363,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/skribilo.scm \ %D%/packages/slang.scm \ %D%/packages/smalltalk.scm \ + %D%/packages/sml.scm \ %D%/packages/speech.scm \ %D%/packages/spice.scm \ %D%/packages/ssh.scm \ diff --git a/gnu/packages/sml.scm b/gnu/packages/sml.scm new file mode 100644 index 0000000000..6e57c4a4a0 --- /dev/null +++ b/gnu/packages/sml.scm @@ -0,0 +1,72 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Andy Patterson +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages sml) + #:use-module (gnu packages lesstif) + #:use-module (gnu packages libffi) + #:use-module (gnu packages multiprecision) + #:use-module (gnu packages xorg) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages)) + +(define-public polyml + (package + (name "polyml") + (version "5.7") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/polyml/polyml/archive/v" + version ".tar.gz")) + (sha256 + (base32 "0ycjl746h0m22w9nsdssjl47d56jih12gpkdg3yw65gakj70sd0r")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system gnu-build-system) + (inputs + `(("gmp" ,gmp) + ("lesstif",lesstif) + ("libffi" ,libffi) + ("libx11" ,libx11) + ("libxt" ,libxt))) + (arguments + '(#:configure-flags + (list "--with-system-libffi=yes" + "--with-x=yes" + "--with-threads=yes" + "--with-gmp=yes") + #:phases + (modify-phases %standard-phases + (add-after 'build 'build-compiler + (lambda* (#:key make-flags parallel-build? #:allow-other-keys) + (define flags + (if parallel-build? + (cons (format #f "-j~d" (parallel-job-count)) + make-flags) + make-flags)) + (apply system* "make" (append flags (list "compiler")))))))) + (home-page "http://www.polyml.org/") + (synopsis "Standard ML implementation") + (description "Poly/ML is a Standard ML implementation. It is fully +compatible with the ML97 standard. It includes a thread library, a foreign +function interface, and a symbolic debugger.") + ;; Some source files specify 'or any later version'; some don't + (license + (list license:lgpl2.1 + license:lgpl2.1+)))) From 7fc6ce46f972bd22e8c559a017002d31f1523bd3 Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Sun, 16 Jul 2017 05:57:02 +0800 Subject: [PATCH 0254/1227] gnu: font-wqy-microhei: Use 'font-build-system'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fonts.scm (font-wqy-microhei): Switch to font-build-system. Signed-off-by: Ludovic Courtès --- gnu/packages/fonts.scm | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index ceadbe1c39..8463829d4c 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -516,23 +516,7 @@ ko (Korean) locales for @code{fontconfig}.") (sha256 (base32 "0gi1yxqph8xx869ichpzzxvx6y50wda5hi77lrpacdma4f0aq0i8")))) - (build-system trivial-build-system) - (arguments - `(#:modules ((guix build utils)) - #:builder - (begin - (use-modules (guix build utils)) - (let ((PATH (string-append (assoc-ref %build-inputs "tar") "/bin:" - (assoc-ref %build-inputs "gzip") "/bin")) - (font-dir (string-append (assoc-ref %outputs "out") - "/share/fonts/wenquanyi"))) - (mkdir-p font-dir) - (setenv "PATH" PATH) - (system* "tar" "xvf" (assoc-ref %build-inputs "source")) - (install-file "wqy-microhei/wqy-microhei.ttc" font-dir))))) - (native-inputs - `(("gzip" ,gzip) - ("tar" ,tar))) + (build-system font-build-system) (home-page "http://wenq.org/wqy2/") (synopsis "CJK font") (description From 371ca85f52aa751522675be05152a50786130e9b Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Sun, 16 Jul 2017 05:52:59 +0800 Subject: [PATCH 0255/1227] gnu: font-wqy-zenhei: Use 'font-build-system'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/fonts.scm (font-wqy-zenhei): Switch to font-build-system. Signed-off-by: Ludovic Courtès --- gnu/packages/fonts.scm | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 8463829d4c..7687ed2350 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -472,24 +472,7 @@ variants.") (sha256 (base32 "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4")))) - (build-system trivial-build-system) - (arguments - `(#:modules ((guix build utils)) - #:builder - (begin - (use-modules (guix build utils)) - (let ((PATH (string-append (assoc-ref %build-inputs "tar") "/bin:" - (assoc-ref %build-inputs "gzip") "/bin")) - (font-dir (string-append (assoc-ref %outputs "out") - "/share/fonts/wenquanyi/"))) - (setenv "PATH" PATH) - (mkdir-p font-dir) - (system* "tar" "xvf" (assoc-ref %build-inputs "source")) - (chdir "wqy-zenhei") - (install-file "wqy-zenhei.ttc" font-dir))))) - (native-inputs - `(("gzip" ,gzip) - ("tar" ,tar))) + (build-system font-build-system) (home-page "http://wenq.org/wqy2/") (synopsis "CJK font") (description From da20c38f3524011195b4ab6a22ed8e7d4cb84889 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 15 Jul 2017 18:46:57 -0400 Subject: [PATCH 0256/1227] gnu: dash: Use the release tarball. * gnu/packages/shells.scm (dash)[source]: Use the release tarball instead of a Git checkout. [native-inputs]: Remove field. [arguments]: Remove 'bootstrap' phase. --- gnu/packages/shells.scm | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 65e0eda50a..339faba05f 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -54,17 +54,12 @@ (version "0.5.9.1") (source (origin - ;; The canonical source is offline, so we fetch the source code - ;; from the Git repository. See: - ;; https://www.mail-archive.com/dash@vger.kernel.org/msg01323.html - (method git-fetch) - (uri (git-reference - (url "https://git.kernel.org/pub/scm/utils/dash/dash.git/") - (commit (string-append "v" version)))) - (file-name (string-append name "-" version "-checkout")) + (method url-fetch) + (uri (string-append "http://gondor.apana.org.au/~herbert/dash/files/" + "dash-" version ".tar.gz")) (sha256 (base32 - "0p01vx7rbyf5hyyaff7h8cbhq81bm5fmq1m933484lncl9rafcai")) + "0ng695mq5ngg43h7ljhxvbjm46ym3nayj6ssn47d2gm9fbm5pkay")) (modules '((guix build utils))) (snippet '(begin @@ -75,17 +70,10 @@ "a command interpreter based on the original Bourne shell")) #t)))) (build-system gnu-build-system) - (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake))) (inputs `(("libedit" ,libedit))) (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'configure 'bootstrap - (lambda _ (zero? (system* "autoreconf" "-vfi"))))) - #:configure-flags '("--with-libedit"))) + '(#:configure-flags '("--with-libedit"))) (home-page "http://gondor.apana.org.au/~herbert/dash") (synopsis "POSIX-compliant shell optimised for size") (description From 70e7367df103f3ef1c80236c3a9a418d52bbb82e Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 17 Jul 2017 06:50:26 +0800 Subject: [PATCH 0257/1227] gnu: emacs-ahungry-theme: Upgrade to 1.4.0. * gnu/packages/emacs.scm (emacs-ahungry-theme): Upgrade to 1.4.0. Signed-off-by: Leo Famulari --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 3e88c52f30..43de130574 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -2615,14 +2615,14 @@ package provides a light and a dark variant.") (define-public emacs-ahungry-theme (package (name "emacs-ahungry-theme") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/ahungry-theme-" version ".tar")) (sha256 (base32 - "1p2zaq0s4bbl5cx6wyab24wamw7m0mysb0v47dqjmnvfc25z84rq")))) + "1n8k12mfn01f20j0pyd7ycj77x0y3a008xc94frklaaqjc0v26s4")))) (build-system emacs-build-system) (home-page "https://github.com/ahungry/color-theme-ahungry") (synopsis "Ahungry color theme for Emacs") From 0862b95433cacf91e44248097caa09119fc532a6 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 14 Jul 2017 20:47:38 +0200 Subject: [PATCH 0258/1227] build, vm: Use a less common label. * gnu/build/vm.scm (initialize-hard-disk): Use "GuixSD_image" as label. * gnu/system/install.scm (installation-os): Likewise. * gnu/system/vm.scm (system-disk-image): Likewise. --- gnu/build/vm.scm | 7 +++++-- gnu/system/install.scm | 2 +- gnu/system/vm.scm | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index d8c53ef37f..086f38ade1 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -354,7 +354,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." (error "failed to create GRUB EFI image")))) (define* (make-iso9660-image grub config-file os-drv target - #:key (volume-id "GuixSD") (volume-uuid #f)) + #:key (volume-id "GuixSD_image") (volume-uuid #f)) "Given a GRUB package, creates an iso image as TARGET, using CONFIG-FILE as Grub configuration and OS-DRV as the stuff in it." (let ((grub-mkrescue (string-append grub "/bin/grub-mkrescue"))) @@ -440,11 +440,14 @@ passing it a directory name where it is mounted." ;; Create a tiny configuration file telling the embedded grub ;; where to load the real thing. + ;; XXX This is quite fragile, and can prevent the image from booting + ;; when there's more than one volume with this label present. + ;; Reproducible almost-UUIDs could reduce the risk (not eliminate it). (call-with-output-file grub-config (lambda (port) (format port "insmod part_msdos~@ - search --set=root --label GuixSD~@ + search --set=root --label GuixSD_image~@ configfile /boot/grub/grub.cfg~%"))) (display "creating EFI firmware image...") diff --git a/gnu/system/install.scm b/gnu/system/install.scm index f9aa7f6733..6837385daf 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -306,7 +306,7 @@ Use Alt-F2 for documentation. ;; the appropriate one. (cons* (file-system (mount-point "/") - (device "GuixSD") + (device "GuixSD_image") (title 'label) (type "ext4")) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index dd9be2c6fa..028649f80b 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -345,7 +345,7 @@ to USB sticks meant to be read-only." ;; Volume name of the root file system. Since we don't know which device ;; will hold it, we use the volume name to find it (using the UUID would ;; be even better, but somewhat less convenient.) - (normalize-label "GuixSD")) + (normalize-label "GuixSD_image")) (define file-systems-to-keep (remove (lambda (fs) From 1cbcbc8600789a29c98788bab4633d00ec376554 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 17 Jul 2017 22:33:26 +0300 Subject: [PATCH 0259/1227] gnu: screen: Update to 4.6.1. * gnu/packages/screen.scm (screen): Update to 4.6.1. --- gnu/packages/screen.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index af0079be20..ef67595a89 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -37,13 +37,13 @@ (define-public screen (package (name "screen") - (version "4.6.0") + (version "4.6.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/screen/screen-" version ".tar.gz")) (sha256 - (base32 "1m7yd2bs1i623kk27nfy3qa2mgjp5qjqxwj5qz21r51ycmmp0cwl")))) + (base32 "0r3wpfxnr5kw73b8ndja26jk03nfbks06iyfmgb5aqb2rdkazadb")))) (build-system gnu-build-system) (native-inputs `(("makeinfo" ,texinfo))) From 578dfbe07bcd1bdef9129c6ce8529332a0abcba6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 17 Jul 2017 23:21:55 +0200 Subject: [PATCH 0260/1227] gexp: 'ungexp-splicing' properly accounts for nested native inputs. Previously, (gexp-native-inputs #~#$@(list #~#+foo)) would return '(). This is a followup to 5b14a7902c58d9fb7923f9e16871f549fbe59b6e. * guix/gexp.scm (gexp-inputs)[add-reference-inputs]: In the list case, remove 'if' around 'fold-right'. In 'map' lambda, always inherit N?. * tests/gexp.scm ("gexp list splicing + ungexp-splicing"): New test. --- guix/gexp.scm | 20 +++++++++++--------- tests/gexp.scm | 8 ++++++++ 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/guix/gexp.scm b/guix/gexp.scm index d9c4cb461e..2094c495d6 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -706,15 +706,17 @@ references; otherwise, return only non-native references." (cons `(,thing ,output) result) result)) (($ (lst ...) output n?) - (if (eqv? native? n?) - (fold-right add-reference-inputs result - ;; XXX: For now, automatically convert LST to a list of - ;; gexp-inputs. - (map (match-lambda - ((? gexp-input? x) x) - (x (%gexp-input x "out" (or n? native?)))) - lst)) - result)) + (fold-right add-reference-inputs result + ;; XXX: For now, automatically convert LST to a list of + ;; gexp-inputs. Inherit N?. + (map (match-lambda + ((? gexp-input? x) + (%gexp-input (gexp-input-thing x) + (gexp-input-output x) + n?)) + (x + (%gexp-input x "out" n?))) + lst))) (_ ;; Ignore references to other kinds of objects. result))) diff --git a/tests/gexp.scm b/tests/gexp.scm index cf88a9db80..5873abdd41 100644 --- a/tests/gexp.scm +++ b/tests/gexp.scm @@ -355,6 +355,14 @@ (equal? (gexp->sexp* exp) ;native (gexp->sexp* exp "mips64el-linux"))))) +(test-assert "gexp list splicing + ungexp-splicing" + (let* ((inner (gexp (ungexp-native glibc))) + (exp (gexp (list (ungexp-splicing (list inner)))))) + (and (equal? `((,glibc "out")) (gexp-native-inputs exp)) + (null? (gexp-inputs exp)) + (equal? (gexp->sexp* exp) ;native + (gexp->sexp* exp "mips64el-linux"))))) + (test-equal "output list" 2 (let ((exp (gexp (begin (mkdir (ungexp output)) From 6d833b13b77f6b4fb76acab932fd9cec601b71ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 17 Jul 2017 23:28:59 +0200 Subject: [PATCH 0261/1227] gnu: Remove glibc@2.21 and its traces. * gnu/packages/base.scm (glibc-2.21): Remove. * gnu/system/locale.scm (localedef-command)[maybe-version-directory]: Remove. Replace call with use of 'package-version'. (single-locale-directory): Remove 'version>=' conditional. --- gnu/packages/base.scm | 14 +------------- gnu/system/locale.scm | 19 ++----------------- 2 files changed, 3 insertions(+), 30 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 81f8b3c8d6..2040f84bf1 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -978,23 +978,11 @@ GLIBC/HURD for a Hurd host" `(modify-phases ,phases (add-before 'configure 'fix-pwd (lambda _ - ;; Use `pwd' instead of `/bin/pwd' for glibc-2.21 + ;; Use `pwd' instead of `/bin/pwd' for glibc-2.22. (substitute* "configure" (("/bin/pwd") "pwd")) #t)))))))) -(define-public glibc-2.21 - (package - (inherit glibc-2.22) - (version "2.21") - (source (origin - (inherit (package-source glibc-2.22)) - (uri (string-append "mirror://gnu/glibc/glibc-" - version ".tar.xz")) - (sha256 - (base32 - "1f135546j34s9bfkydmx2nhh9vwxlx60jldi80zmsnln6wj3dsxf")))))) - (define-public glibc-locales (package (inherit glibc) diff --git a/gnu/system/locale.scm b/gnu/system/locale.scm index 51482879f7..2ee834d9fd 100644 --- a/gnu/system/locale.scm +++ b/gnu/system/locale.scm @@ -22,7 +22,6 @@ #:use-module (guix monads) #:use-module (guix records) #:use-module (guix packages) - #:use-module (guix utils) #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (srfi srfi-26) @@ -85,15 +84,6 @@ or #f on failure." (define* (localedef-command locale #:key (libc (canonical-package glibc))) "Return a gexp that runs 'localedef' from LIBC to build LOCALE." - (define (maybe-version-directory) - ;; XXX: For libc prior to 2.22, GuixSD did not store locale data in a - ;; version-specific sub-directory. Check whether this is the case. - ;; TODO: Remove this hack once libc 2.21 is buried. - (let ((version (package-version libc))) - (if (version>=? version "2.22") - (list version "/") - '()))) - #~(begin (format #t "building locale '~a'...~%" #$(locale-definition-name locale)) @@ -102,7 +92,7 @@ or #f on failure." "-i" #$(locale-definition-source locale) "-f" #$(locale-definition-charset locale) (string-append #$output "/" - #$@(maybe-version-directory) + #$(package-version libc) "/" #$(locale-definition-name locale)))))) (define* (single-locale-directory locales @@ -119,12 +109,7 @@ of LIBC." #~(begin (mkdir #$output) - ;; XXX: For libcs < 2.22, locale data is stored in the top-level - ;; directory. - ;; TODO: Remove this hack once libc 2.21 is buried. - #$(if (version>=? version "2.22") - #~(mkdir (string-append #$output "/" #$version)) - #~(symlink "." (string-append #$output "/" #$version))) + (mkdir (string-append #$output "/" #$version)) ;; 'localedef' executes 'gzip' to access compressed locale sources. (setenv "PATH" (string-append #$gzip "/bin")) From b19a49d015070f9109c157bc39b47574a8dad481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 17 Jul 2017 23:38:23 +0200 Subject: [PATCH 0262/1227] locale: Demonadify the locale creation API. * gnu/system/locale.scm (single-locale-directory): Use 'computed-file' instead of 'gexp->derivation'. (locale-directory): Adjust accordingly and do the same. * gnu/system.scm (operating-system-directory-base-entries): Adjust accordingly. --- gnu/system.scm | 23 ++++++++++++----------- gnu/system/locale.scm | 26 +++++++++++--------------- 2 files changed, 23 insertions(+), 26 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index ee1e10f82d..bffbee7fdb 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -403,17 +403,18 @@ OS." (define* (operating-system-directory-base-entries os #:key container?) "Return the basic entries of the 'system' directory of OS for use as the value of the SYSTEM-SERVICE-TYPE service." - (mlet %store-monad ((locale (operating-system-locale-directory os))) - (if container? - (return `(("locale" ,locale))) - (mlet %store-monad - ((kernel -> (operating-system-kernel os)) - (initrd (operating-system-initrd-file os)) - (params (operating-system-boot-parameters-file os))) - (return `(("kernel" ,kernel) - ("parameters" ,params) - ("initrd" ,initrd) - ("locale" ,locale))))))) ;used by libc + (let ((locale (operating-system-locale-directory os))) + (with-monad %store-monad + (if container? + (return `(("locale" ,locale))) + (mlet %store-monad + ((kernel -> (operating-system-kernel os)) + (initrd (operating-system-initrd-file os)) + (params (operating-system-boot-parameters-file os))) + (return `(("kernel" ,kernel) + ("parameters" ,params) + ("initrd" ,initrd) + ("locale" ,locale)))))))) ;used by libc (define* (essential-services os #:key container?) "Return the list of essential services for OS. These are special services diff --git a/gnu/system/locale.scm b/gnu/system/locale.scm index 2ee834d9fd..75cb855b59 100644 --- a/gnu/system/locale.scm +++ b/gnu/system/locale.scm @@ -19,7 +19,6 @@ (define-module (gnu system locale) #:use-module (guix gexp) #:use-module (guix store) - #:use-module (guix monads) #:use-module (guix records) #:use-module (guix packages) #:use-module (gnu packages base) @@ -118,8 +117,7 @@ of LIBC." (and #$@(map (cut localedef-command <> #:libc libc) locales))))) - (gexp->derivation (string-append "locale-" version) build - #:local-build? #t)) + (computed-file (string-append "locale-" version) build)) (define* (locale-directory locales #:key (libcs %default-locale-libcs)) @@ -133,18 +131,16 @@ data format changes between libc versions." ((libc) (single-locale-directory locales #:libc libc)) ((libcs ..1) - (mlet %store-monad ((dirs (mapm %store-monad - (lambda (libc) - (single-locale-directory locales - #:libc libc)) - libcs))) - (gexp->derivation "locale-multiple-versions" - (with-imported-modules '((guix build union)) - #~(begin - (use-modules (guix build union)) - (union-build #$output (list #$@dirs)))) - #:local-build? #t - #:substitutable? #f))))) + (let ((dirs (map (lambda (libc) + (single-locale-directory locales #:libc libc)) + libcs))) + (computed-file "locale-multiple-versions" + (with-imported-modules '((guix build union)) + #~(begin + (use-modules (guix build union)) + (union-build #$output (list #$@dirs)))) + #:options '(#:local-build? #t + #:substitutable? #f)))))) (define %default-locale-libcs ;; The libcs for which we build locales by default. From 867baed07ff928b9105c9880382acd16bce1b12a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 17 Jul 2017 18:13:56 -0400 Subject: [PATCH 0263/1227] gnu: imagemagick: Update to 6.9.9-0. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.9-0. --- gnu/packages/imagemagick.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index c543655fb8..219f8ec437 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -46,14 +46,14 @@ ;; The 7 release series has an incompatible API, while the 6 series is still ;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; users are ready for the 7-series API. - (version "6.9.8-10") + (version "6.9.9-0") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "040qs7nwcm84bjd9wryvd58zqfykbmn3y3qfc90lnldww7v6ihlg")))) + "02xnvgjnmz2d4yv4iy1kh7an5w631p1s319jw23c8zpmqhfhk2ha")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") From b77cc624eccfcffbe9a2ad6e4e4ab2eb4f2a8b74 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 18 Jul 2017 01:30:16 +0200 Subject: [PATCH 0264/1227] gnu: orc: Update to 0.4.27. * gnu/packages/gstreamer.scm (orc): Update to 0.4.27. --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index cf14abf469..176336d710 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -64,14 +64,14 @@ (define-public orc (package (name "orc") - (version "0.4.26") + (version "0.4.27") (source (origin (method url-fetch) (uri (string-append "https://gstreamer.freedesktop.org/data/src/" "orc/orc-" version ".tar.xz")) (sha256 (base32 - "0jd69ynvr3k70mlxxgbsk047l1rd63m1wkj3qdcq7644xy0gllkx")))) + "14vbwdydwarcvswzf744jdjb3ibhv6k4j6hzdacfan41zic3xrai")))) (build-system gnu-build-system) (arguments `(#:phases From 27305769de25042e5ed116a479ff03d222a4d22d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 18 Jul 2017 01:31:10 +0200 Subject: [PATCH 0265/1227] gnu: python-cryptograpy: Update to 2.0. * gnu/packages/python.scm (python-cryptography-vectors, python2-cryptography-vectors, python-cryptography, python2-cryptography): Update to 2.0. --- gnu/packages/python.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index f9c6176c10..7b214d2cf0 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7486,14 +7486,14 @@ responses, rather than doing any computation.") (define-public python-cryptography-vectors (package (name "python-cryptography-vectors") - (version "1.9") + (version "2.0") (source (origin (method url-fetch) (uri (pypi-uri "cryptography_vectors" version)) (sha256 (base32 - "1wvq1p1viam1diz9x6d61x1bsy6cninv7cjgd35x9ffig9r6gxxv")))) + "0qadys01517k5wy0rifxip02p08kzrqxm5j0lmmlp0kr07h9jc7h")))) (build-system python-build-system) (home-page "https://github.com/pyca/cryptography") (synopsis "Test vectors for the cryptography package") @@ -7508,14 +7508,14 @@ responses, rather than doing any computation.") (define-public python-cryptography (package (name "python-cryptography") - (version "1.9") + (version "2.0") (source (origin (method url-fetch) (uri (pypi-uri "cryptography" version)) (sha256 (base32 - "10j8r1s29f4h59kp3mla14g588rm7qpn90nrczijk03i49q3662m")))) + "1c40qlxyn1jgg99f3pqi7146d3561rn9zdqc7w8f7kwr9ysm696k")))) (build-system python-build-system) (inputs `(("openssl" ,openssl))) From 144c8db9bd91bf5470be7a2c747885f9325f96bc Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 17 Jul 2017 20:14:15 -0400 Subject: [PATCH 0266/1227] gnu: chicken: Fix CVE-2017-11343. * gnu/packages/patches/chicken-CVE-2017-11343.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/scheme.scm (chicken)[source]: Use it. --- gnu/local.mk | 1 + .../patches/chicken-CVE-2017-11343.patch | 57 +++++++++++++++++++ gnu/packages/scheme.scm | 3 +- 3 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/chicken-CVE-2017-11343.patch diff --git a/gnu/local.mk b/gnu/local.mk index 54dd2f2380..e7395292f8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -536,6 +536,7 @@ dist_patch_DATA = \ %D%/packages/patches/ceph-skip-collect-sys-info-test.patch \ %D%/packages/patches/ceph-skip-unittest_blockdev.patch \ %D%/packages/patches/chicken-CVE-2017-6949.patch \ + %D%/packages/patches/chicken-CVE-2017-11343.patch \ %D%/packages/patches/chmlib-inttypes.patch \ %D%/packages/patches/clang-libc-search-path.patch \ %D%/packages/patches/clang-3.8-libc-search-path.patch \ diff --git a/gnu/packages/patches/chicken-CVE-2017-11343.patch b/gnu/packages/patches/chicken-CVE-2017-11343.patch new file mode 100644 index 0000000000..1d46ad50d9 --- /dev/null +++ b/gnu/packages/patches/chicken-CVE-2017-11343.patch @@ -0,0 +1,57 @@ +Fix CVE-2017-11343: + +https://lists.nongnu.org/archive/html/chicken-announce/2017-07/msg00000.html +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11343 + +Patch copied from upstream mailing list: + +http://lists.gnu.org/archive/html/chicken-hackers/2017-06/txtod8Pa1wGU0.txt + +From ae2633195cc5f4f61c9da4ac90f0c14c010dcc3d Mon Sep 17 00:00:00 2001 +From: Peter Bex +Date: Fri, 30 Jun 2017 15:39:45 +0200 +Subject: [PATCH 2/2] Initialize symbol table after setting up randomization + +Otherwise, the symbol table wouldn't be correctly randomized. +--- + NEWS | 3 +++ + runtime.c | 2 +- + 2 files changed, 4 insertions(+), 1 deletion(-) + +#diff --git a/NEWS b/NEWS +#index f4b0e041..6588b30e 100644 +#--- a/NEWS +#+++ b/NEWS +#@@ -96,6 +96,9 @@ +# buffer overrun and/or segfault (thanks to Lemonboy). +# - CVE-2017-9334: `length' no longer crashes on improper lists (fixes +# #1375, thanks to "megane"). +#+ - The randomization factor of the symbol table was set before +#+ the random seed was set, causing it to have a fixed value on many +#+ platforms. +# +# - Core Libraries +# - Unit "posix": If file-lock, file-lock/blocking or file-unlock are +diff --git a/runtime.c b/runtime.c +index 81c54dd2..a4580abc 100644 +--- a/runtime.c ++++ b/runtime.c +@@ -799,7 +799,6 @@ int CHICKEN_initialize(int heap, int stack, int symbols, void *toplevel) + C_initial_timer_interrupt_period = INITIAL_TIMER_INTERRUPT_PERIOD; + C_timer_interrupt_counter = INITIAL_TIMER_INTERRUPT_PERIOD; + memset(signal_mapping_table, 0, sizeof(int) * NSIG); +- initialize_symbol_table(); + C_dlerror = "cannot load compiled code dynamically - this is a statically linked executable"; + error_location = C_SCHEME_FALSE; + C_pre_gc_hook = NULL; +@@ -816,6 +815,7 @@ int CHICKEN_initialize(int heap, int stack, int symbols, void *toplevel) + callback_continuation_level = 0; + gc_ms = 0; + (void)C_randomize(C_fix(time(NULL))); ++ initialize_symbol_table(); + + if (profiling) { + #ifndef C_NONUNIX +-- +2.11.0 + diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 92c0170205..161138285e 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -345,7 +345,8 @@ mashups, office (web agendas, mail clients, ...), etc.") (base32 "12b9gaa9lqh39lj1v4wm48f6z8ww3jdkvc5bh9gqqvn6kd2wwnk0")) (patches - (search-patches "chicken-CVE-2017-6949.patch")))) + (search-patches "chicken-CVE-2017-6949.patch" + "chicken-CVE-2017-11343.patch")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) From 4c4485f30491a03040bd3081e1e3d3dc9e9b7716 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 17 Jul 2017 22:14:29 -0400 Subject: [PATCH 0267/1227] gnu: qemu: Fix CVE-2017-11334. * gnu/packages/patches/qemu-CVE-2017-11334.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/virtualization.scm (qemu)[source]: Use it. --- gnu/local.mk | 1 + .../patches/qemu-CVE-2017-11334.patch | 52 +++++++++++++++++++ gnu/packages/virtualization.scm | 3 +- 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/qemu-CVE-2017-11334.patch diff --git a/gnu/local.mk b/gnu/local.mk index e7395292f8..7d9b2f8d76 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -975,6 +975,7 @@ dist_patch_DATA = \ %D%/packages/patches/qemu-CVE-2017-8379.patch \ %D%/packages/patches/qemu-CVE-2017-8380.patch \ %D%/packages/patches/qemu-CVE-2017-9524.patch \ + %D%/packages/patches/qemu-CVE-2017-11334.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/quagga-reproducible-build.patch \ diff --git a/gnu/packages/patches/qemu-CVE-2017-11334.patch b/gnu/packages/patches/qemu-CVE-2017-11334.patch new file mode 100644 index 0000000000..cb68c803aa --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2017-11334.patch @@ -0,0 +1,52 @@ +Fix CVE-2017-11334: + +https://bugzilla.redhat.com/show_bug.cgi?id=1471638 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11334 + +Patch copied from upstream source repository: + +http://git.qemu.org/?p=qemu.git;a=commitdiff;h=04bf2526ce87f21b32c9acba1c5518708c243ad0 + +From 04bf2526ce87f21b32c9acba1c5518708c243ad0 Mon Sep 17 00:00:00 2001 +From: Prasad J Pandit +Date: Wed, 12 Jul 2017 18:08:40 +0530 +Subject: [PATCH] exec: use qemu_ram_ptr_length to access guest ram + +When accessing guest's ram block during DMA operation, use +'qemu_ram_ptr_length' to get ram block pointer. It ensures +that DMA operation of given length is possible; And avoids +any OOB memory access situations. + +Reported-by: Alex +Signed-off-by: Prasad J Pandit +Message-Id: <20170712123840.29328-1-ppandit@redhat.com> +Signed-off-by: Paolo Bonzini +--- + exec.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/exec.c b/exec.c +index a083ff89ad..ad103ce483 100644 +--- a/exec.c ++++ b/exec.c +@@ -2929,7 +2929,7 @@ static MemTxResult address_space_write_continue(AddressSpace *as, hwaddr addr, + } + } else { + /* RAM case */ +- ptr = qemu_map_ram_ptr(mr->ram_block, addr1); ++ ptr = qemu_ram_ptr_length(mr->ram_block, addr1, &l); + memcpy(ptr, buf, l); + invalidate_and_set_dirty(mr, addr1, l); + } +@@ -3020,7 +3020,7 @@ MemTxResult address_space_read_continue(AddressSpace *as, hwaddr addr, + } + } else { + /* RAM case */ +- ptr = qemu_map_ram_ptr(mr->ram_block, addr1); ++ ptr = qemu_ram_ptr_length(mr->ram_block, addr1, &l); + memcpy(buf, ptr, l); + } + +-- +2.13.3 + diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index fd5cea5eb2..d999d16e37 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -81,7 +81,8 @@ "qemu-CVE-2017-8309.patch" "qemu-CVE-2017-8379.patch" "qemu-CVE-2017-8380.patch" - "qemu-CVE-2017-9524.patch")) + "qemu-CVE-2017-9524.patch" + "qemu-CVE-2017-11334.patch")) (sha256 (base32 "08mhfs0ndbkyqgw7fjaa9vjxf4dinrly656f6hjzvmaz7hzc677h")))) From 2805f9b2a026a34d3e1069e86293ab3e18cadd9f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 18 Jul 2017 08:58:59 +0300 Subject: [PATCH 0268/1227] gnu: raxml: Limit to x86_64 and i686 only. * gnu/packages/bioinformatics.scm (raxml)[supported-systems]: New field. --- gnu/packages/bioinformatics.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b5ee9cc125..9acd5454b3 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4320,6 +4320,8 @@ extremely diverse sets of genomes.") (description "RAxML is a tool for phylogenetic analysis and post-analysis of large phylogenies.") + ;; The source includes x86 specific code + (supported-systems '("x86_64-linux" "i686-linux")) (license license:gpl2+))) (define-public rsem From 8b89c1717c033a4c2dbd1ff4060d5f78e5d037ef Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Jul 2017 23:06:44 +0200 Subject: [PATCH 0269/1227] gnu: python-numpy-documentation: Use texlive-union. * gnu/packages/python.scm (python-numpy-documentation)[native-inputs]: Replace "texlive" with a texlive-union. --- gnu/packages/python.scm | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 7b214d2cf0..91ef226036 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3720,7 +3720,39 @@ association studies (GWAS) on extremely large data sets.") ("pkg-config" ,pkg-config) ("python-sphinx" ,python-sphinx) ("python-numpydoc" ,python-numpydoc) - ("texlive" ,texlive) + ("texlive" ,(texlive-union (list texlive-fonts-amsfonts + texlive-fonts-ec + texlive-generic-ifxetex + texlive-generic-pdftex + texlive-latex-amsfonts + texlive-latex-capt-of + texlive-latex-cmap + texlive-latex-environ + texlive-latex-eqparbox + texlive-latex-etoolbox + texlive-latex-expdlist + texlive-latex-fancyhdr + texlive-latex-fancyvrb + texlive-latex-fncychap + texlive-latex-float + texlive-latex-framed + texlive-latex-geometry + texlive-latex-graphics + texlive-latex-hyperref + texlive-latex-mdwtools + texlive-latex-multirow + texlive-latex-oberdiek + texlive-latex-parskip + texlive-latex-preview + texlive-latex-tabulary + texlive-latex-threeparttable + texlive-latex-titlesec + texlive-latex-trimspaces + texlive-latex-ucs + texlive-latex-upquote + texlive-latex-url + texlive-latex-varwidth + texlive-latex-wrapfig))) ("texinfo" ,texinfo) ("perl" ,perl) ("scipy-sphinx-theme" @@ -3749,6 +3781,11 @@ association studies (GWAS) on extremely large data sets.") (scipy-sphinx-theme "scipy-sphinx-theme") (sphinx-theme-checkout (assoc-ref inputs scipy-sphinx-theme)) (pyver ,(string-append "PYVER="))) + + ;; FIXME: this is needed to for texlive-union to generate + ;; fonts, which are not found. + (setenv "HOME" "/tmp") + (with-directory-excursion "doc" (copy-recursively sphinx-theme-checkout scipy-sphinx-theme) (mkdir-p html) From 8b5bf30804785fc34e9517a2941b5b1c4f4e339b Mon Sep 17 00:00:00 2001 From: ng0 Date: Mon, 17 Jul 2017 22:21:35 +0200 Subject: [PATCH 0270/1227] gnu: Rename (gnu packages gforth) to (gnu packages forth). * gnu/local.mk (GNU_SYSTEM_MODULES): Rename gforth.scm to forth.scm. * gnu/packages/gforth.scm: Rename file to forth.scm. * gnu/packages/forth.scm: Renamed from gforth.scm. --- gnu/local.mk | 2 +- gnu/packages/{gforth.scm => forth.scm} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename gnu/packages/{gforth.scm => forth.scm} (98%) diff --git a/gnu/local.mk b/gnu/local.mk index 7d9b2f8d76..92ad112cf4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -150,6 +150,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/fonts.scm \ %D%/packages/fontutils.scm \ %D%/packages/fpga.scm \ + %D%/packages/forth.scm \ %D%/packages/freedesktop.scm \ %D%/packages/freeipmi.scm \ %D%/packages/ftp.scm \ @@ -164,7 +165,6 @@ GNU_SYSTEM_MODULES = \ %D%/packages/gdb.scm \ %D%/packages/geo.scm \ %D%/packages/gettext.scm \ - %D%/packages/gforth.scm \ %D%/packages/ghostscript.scm \ %D%/packages/gimp.scm \ %D%/packages/gkrellm.scm \ diff --git a/gnu/packages/gforth.scm b/gnu/packages/forth.scm similarity index 98% rename from gnu/packages/gforth.scm rename to gnu/packages/forth.scm index b2a67ce58c..6d66faf5d6 100644 --- a/gnu/packages/gforth.scm +++ b/gnu/packages/forth.scm @@ -17,7 +17,7 @@ ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . -(define-module (gnu packages gforth) +(define-module (gnu packages forth) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) From 9840b8faafad6aee496e0cc8abe948bde2612020 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 18 Jul 2017 09:37:25 +0200 Subject: [PATCH 0271/1227] gnu: c-toxcore: Update to 0.1.9. * gnu/packages/messaging.scm (c-toxcore): Update to 0.1.9. [build-system]: Switch to cmake-build-system. [native-inputs]: Remove autoconf, automake, libtool, and check. [inputs]: Rename to... [propagated-inputs]: ...this. [arguments]: Remove field. --- gnu/packages/messaging.scm | 30 +++++++++--------------------- 1 file changed, 9 insertions(+), 21 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 827e9edee9..eb9e869152 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -670,7 +670,7 @@ protocols.") (define-public c-toxcore (package (name "c-toxcore") - (version "0.1.1") + (version "0.1.9") (source (origin (method url-fetch) @@ -679,32 +679,20 @@ protocols.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0dybpz44pi0zm8djppjna0r8yh5wvl3l885dv2f1wp5366bk59n3")))) - (build-system gnu-build-system) + "1y30xc1dzq9knww274d4y0m8gridcf5j851rxdri8j2s64p3qqgk")))) + (build-system cmake-build-system) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("libtool" ,libtool) - ("check" ,check) - ("pkg-config" ,pkg-config))) - (inputs + `(("pkg-config" ,pkg-config))) + (propagated-inputs `(("libsodium" ,libsodium) ("opus" ,opus) ("libvpx" ,libvpx))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - ;; The tarball source is not bootstrapped. - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))) - #:tests? #f)) ; FIXME: Testsuite fails, needs internet connection. + (home-page "https://tox.chat") (synopsis "Library for the Tox encrypted messenger protocol") (description - "Official fork of the C library implementation of the Tox -encrypted messenger protocol.") - (license license:gpl3+) - (home-page "https://tox.chat"))) + "Official fork of the C library implementation of the Tox encrypted +messenger protocol.") + (license license:gpl3+))) (define-public utox (package From 84de27c83b64bdf7605deb059b704b0016ad9415 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 07:15:58 +0200 Subject: [PATCH 0272/1227] gnu: enblend-enfuse: Use texlive-tiny. * gnu/packages/photo.scm (enblend-enfuse)[native-inputs]: Replace texlive-minimal with texlive-tiny. --- gnu/packages/photo.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index 1811e8ad3e..7cfbe2ffbe 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -255,7 +255,7 @@ overlapping images, as well as some command line tools.") ("help2man" ,help2man) ("imagemagick" ,imagemagick) ("libxml2" ,libxml2) - ("texlive-minimal" ,texlive-minimal) + ("texlive-minimal" ,texlive-tiny) ("tidy" ,tidy) ("transfig" ,transfig))) (inputs From 29ddf4b6e8c0f3bb11f178cb8bc52bfaf9411cb9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 18 Jul 2017 01:43:28 +0200 Subject: [PATCH 0273/1227] gnu: edi: Update to 0.5.1. * gnu/packages/enlightenment.scm (edi): Update to 0.5.1. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 866db9687c..b62ab5f6f5 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -327,7 +327,7 @@ Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).") (define-public edi (package (name "edi") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) @@ -335,7 +335,7 @@ Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).") "download/v" version "/edi-" version ".tar.bz2")) (sha256 (base32 - "1l90x1bw82a0df6r11wd55qizhi99gg0qcljwxga606ahy6ycnkn")))) + "0k0ymi9ilhkypqb9pniv365kh3jgbl2g2k0ylvsmisn2jhbqk49a")))) (build-system gnu-build-system) (arguments '(#:phases From e4e525096b88390a0de48d5595401423c9486445 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 18 Jul 2017 02:00:17 +0200 Subject: [PATCH 0274/1227] gnu: moka-icon-theme: Update to 5.3.6. * gnu/packages/gnome.scm (moka-icon-theme): Update to 5.3.6. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 4221bbc76c..c753b297d1 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5822,7 +5822,7 @@ like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.") (define-public moka-icon-theme (package (name "moka-icon-theme") - (version "5.3.5") + (version "5.3.6") (source (origin (method url-fetch) (uri (string-append "https://github.com/moka-project" @@ -5831,7 +5831,7 @@ like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "062rab0ggmgb3y0d6b3k5d47wsadi28cdnyyr2vqbjhza01dglci")))) + "04axinv79qnngsxkwqzi5j9lc3hn24rjqps5ai8d42pdnfaf0x37")))) (build-system gnu-build-system) (arguments '(#:phases From 172b3e2cc2d0384970c362e46af8231c63b0b004 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Tue, 18 Jul 2017 20:09:30 +0800 Subject: [PATCH 0275/1227] services: sysctl: Fix typo. * gnu/services/sysctl.scm: Fix typo of 'make-sysctl-configuration'. --- gnu/services/sysctl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/sysctl.scm b/gnu/services/sysctl.scm index be5be59a05..5e9e6f0661 100644 --- a/gnu/services/sysctl.scm +++ b/gnu/services/sysctl.scm @@ -33,7 +33,7 @@ ;;; (define-record-type* - sysctl-configuration make-sysctl-configuration? + sysctl-configuration make-sysctl-configuration sysctl-configuration? (sysctl sysctl-configuration-sysctl ; path of the 'sysctl' command (default (file-append procps "/sbin/sysctl"))) From 920f2c42ce3345dc1355a41377ebf01a33fdae51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 14:07:17 +0200 Subject: [PATCH 0276/1227] gnu: guile: Make relocatable patch version-independent. * gnu/packages/patches/guile-relocatable.patch: Use SCM_EFFECTIVE_VERSION instead of "2.0". --- gnu/packages/patches/guile-relocatable.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/patches/guile-relocatable.patch b/gnu/packages/patches/guile-relocatable.patch index 2431495f24..95bddcce88 100644 --- a/gnu/packages/patches/guile-relocatable.patch +++ b/gnu/packages/patches/guile-relocatable.patch @@ -35,11 +35,11 @@ location of the `guile' binary, allowing it to be relocated. + + module_dir = scm_gc_malloc_pointerless (strlen (prefix) + 50, "string"); + strcpy (module_dir, prefix); -+ strcat (module_dir, "/share/guile/2.0"); ++ strcat (module_dir, "/share/guile/" SCM_EFFECTIVE_VERSION); + + ccache_dir = scm_gc_malloc_pointerless (strlen (prefix) + 50, "string"); + strcpy (ccache_dir, prefix); -+ strcat (ccache_dir, "/lib/guile/2.0/ccache"); ++ strcat (ccache_dir, "/lib/guile/" SCM_EFFECTIVE_VERSION "/ccache"); + env = scm_i_mirror_backslashes (getenv ("GUILE_SYSTEM_PATH")); if (env && strcmp (env, "") == 0) From 2acfe022a740f79b593348cc6362cc4ee8f33bb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 14:08:31 +0200 Subject: [PATCH 0277/1227] gnu: guile-static-stripped: Update to 2.2. * gnu/packages/make-bootstrap.scm (%guile-static): Replace GUILE-2.0 with GUILE-2.2. Use "guile-2.2-default-utf8.patch" instead of "guile-default-utf8.patch". * gnu/packages/patches/guile-2.2-default-utf8.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/make-bootstrap.scm | 30 +++---- .../patches/guile-2.2-default-utf8.patch | 78 +++++++++++++++++++ 3 files changed, 94 insertions(+), 15 deletions(-) create mode 100644 gnu/packages/patches/guile-2.2-default-utf8.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9e1e14fdf9..8b3caac629 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -657,6 +657,7 @@ dist_patch_DATA = \ %D%/packages/patches/gsl-test-i686.patch \ %D%/packages/patches/gspell-dash-test.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \ + %D%/packages/patches/guile-2.2-default-utf8.patch \ %D%/packages/patches/guile-default-utf8.patch \ %D%/packages/patches/guile-linux-syscalls.patch \ %D%/packages/patches/guile-present-coding.patch \ diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index 844b110eb1..492ccb8114 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. @@ -502,23 +502,23 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." ;; .scm and .go files relative to its installation directory, rather ;; than in hard-coded configure-time paths. (let* ((patches (cons* (search-patch "guile-relocatable.patch") - (search-patch "guile-default-utf8.patch") + (search-patch "guile-2.2-default-utf8.patch") (search-patch "guile-linux-syscalls.patch") - (origin-patches (package-source guile-2.0)))) - (source (origin (inherit (package-source guile-2.0)) + (origin-patches (package-source guile-2.2)))) + (source (origin (inherit (package-source guile-2.2)) (patches patches))) - (guile (package (inherit guile-2.0) - (name (string-append (package-name guile-2.0) "-static")) + (guile (package (inherit guile-2.2) + (name (string-append (package-name guile-2.2) "-static")) (source source) (synopsis "Statically-linked and relocatable Guile") ;; Remove the 'debug' output (see above for the reason.) - (outputs (delete "debug" (package-outputs guile-2.0))) + (outputs (delete "debug" (package-outputs guile-2.2))) (propagated-inputs `(("bdw-gc" ,libgc) ,@(alist-delete "bdw-gc" - (package-propagated-inputs guile-2.0)))) + (package-propagated-inputs guile-2.2)))) (arguments `(;; When `configure' checks for ltdl availability, it ;; doesn't try to link using libtool, and thus fails @@ -534,7 +534,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (("^guile_LDFLAGS =") "guile_LDFLAGS = -all-static") - ;; Add `-ldl' *after* libguile-2.0.la. + ;; Add `-ldl' *after* libguile-2.2.la. (("^guile_LDADD =(.*)$" _ ldadd) (string-append "guile_LDADD = " (string-trim-right ldadd) @@ -561,13 +561,13 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (out (assoc-ref %outputs "out")) (guile1 (string-append in "/bin/guile")) (guile2 (string-append out "/bin/guile"))) - (mkdir-p (string-append out "/share/guile/2.0")) - (copy-recursively (string-append in "/share/guile/2.0") - (string-append out "/share/guile/2.0")) + (mkdir-p (string-append out "/share/guile/2.2")) + (copy-recursively (string-append in "/share/guile/2.2") + (string-append out "/share/guile/2.2")) - (mkdir-p (string-append out "/lib/guile/2.0/ccache")) - (copy-recursively (string-append in "/lib/guile/2.0/ccache") - (string-append out "/lib/guile/2.0/ccache")) + (mkdir-p (string-append out "/lib/guile/2.2/ccache")) + (copy-recursively (string-append in "/lib/guile/2.2/ccache") + (string-append out "/lib/guile/2.2/ccache")) (mkdir (string-append out "/bin")) (copy-file guile1 guile2) diff --git a/gnu/packages/patches/guile-2.2-default-utf8.patch b/gnu/packages/patches/guile-2.2-default-utf8.patch new file mode 100644 index 0000000000..3233388874 --- /dev/null +++ b/gnu/packages/patches/guile-2.2-default-utf8.patch @@ -0,0 +1,78 @@ +This hack makes Guile default to UTF-8. This avoids calls to +`iconv_open'; `iconv_open' tries to open shared objects that aren't +available during bootstrap, so using UTF-8 avoids that (and UTF-8 has +built-in conversions in glibc, too.) + +diff --git a/libguile/bytevectors.c b/libguile/bytevectors.c +index 7cd753009..de92653a4 100644 +--- a/libguile/bytevectors.c ++++ b/libguile/bytevectors.c +@@ -1918,7 +1918,7 @@ utf_encoding_name (char *name, size_t utf_width, SCM endianness) + if (scm_i_is_narrow_string (str)) \ + { \ + err = mem_iconveh (scm_i_string_chars (str), c_strlen, \ +- "ISO-8859-1", c_utf_name, \ ++ "UTF-8", c_utf_name, \ + iconveh_question_mark, NULL, \ + &c_utf, &c_utf_len); \ + if (SCM_UNLIKELY (err)) \ +diff --git a/libguile/ports.c b/libguile/ports.c +index 2a25cd58e..bdaf921ca 100644 +--- a/libguile/ports.c ++++ b/libguile/ports.c +@@ -959,7 +959,9 @@ canonicalize_encoding (const char *enc) + char *ret; + int i; + +- if (!enc || encoding_matches (enc, sym_ISO_8859_1)) ++ if (enc == NULL) ++ return sym_UTF_8; ++ if (encoding_matches (enc, sym_ISO_8859_1)) + return sym_ISO_8859_1; + if (encoding_matches (enc, sym_UTF_8)) + return sym_UTF_8; +@@ -4182,7 +4184,7 @@ scm_init_ports (void) + scm_c_define ("%default-port-conversion-strategy", + scm_make_fluid_with_default (sym_substitute)); + /* Use the locale as the default port encoding. */ +- scm_i_set_default_port_encoding (locale_charset ()); ++ scm_i_set_default_port_encoding ("UTF-8"); + + scm_c_register_extension ("libguile-" SCM_EFFECTIVE_VERSION, + "scm_init_ice_9_ports", +diff --git a/libguile/strings.c b/libguile/strings.c +index 5c49e33d8..0131e6dc8 100644 +--- a/libguile/strings.c ++++ b/libguile/strings.c +@@ -1561,7 +1561,7 @@ scm_i_default_string_failed_conversion_handler (void) + SCM + scm_from_locale_stringn (const char *str, size_t len) + { +- return scm_from_stringn (str, len, locale_charset (), ++ return scm_from_stringn (str, len, "UTF-8", + scm_i_default_string_failed_conversion_handler ()); + } + +@@ -1885,7 +1885,7 @@ char * + scm_to_locale_stringn (SCM str, size_t *lenp) + { + return scm_to_stringn (str, lenp, +- locale_charset (), ++ "UTF-8", + scm_i_default_string_failed_conversion_handler ()); + } + +@@ -2216,11 +2216,11 @@ scm_to_stringn (SCM str, size_t *lenp, const char *encoding, + len = 0; + enc = encoding; + if (enc == NULL) +- enc = "ISO-8859-1"; ++ enc = "UTF-8"; + if (scm_i_is_narrow_string (str)) + { + ret = mem_iconveh (scm_i_string_chars (str), ilen, +- "ISO-8859-1", enc, ++ "UTF-8", enc, + (enum iconv_ilseq_handler) handler, NULL, + &buf, &len); + From ef03d8dc3724caf59c7ea4a551084ddc601e4597 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 15:29:45 +0200 Subject: [PATCH 0278/1227] syscalls: Delay resolution of "scm_set_automatic_finalization_enabled". * guix/build/syscalls.scm (%set-automatic-finalization-enabled?!) [guile-2.2]: Wrap in 'delay'. --- guix/build/syscalls.scm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm index 549612fa3c..41208e32a8 100644 --- a/guix/build/syscalls.scm +++ b/guix/build/syscalls.scm @@ -725,15 +725,19 @@ mounted at FILE." (cond-expand (guile-2.2 (define %set-automatic-finalization-enabled?! - (let ((proc (pointer->procedure int - (dynamic-func - "scm_set_automatic_finalization_enabled" - (dynamic-link)) - (list int)))) + ;; When using a statically-linked Guile, for instance in the initrd, we + ;; cannot resolve this symbol, but most of the time we don't need it + ;; anyway. Thus, delay it. + (let ((proc (delay + (pointer->procedure int + (dynamic-func + "scm_set_automatic_finalization_enabled" + (dynamic-link)) + (list int))))) (lambda (enabled?) "Switch on or off automatic finalization in a separate thread. Turning finalization off shuts down the finalization thread as a side effect." - (->bool (proc (if enabled? 1 0)))))) + (->bool ((force proc) (if enabled? 1 0)))))) (define-syntax-rule (without-automatic-finalization exp) "Turn off automatic finalization within the dynamic extent of EXP." From 852241eb7dd58d7262f3a627e691ea1cd18ee1e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Mon, 17 Jul 2017 21:26:27 +0800 Subject: [PATCH 0279/1227] system: Add 'newuidmap' and 'newgidmap' to %SETUID-PROGRAMS. * gnu/system.scm (%setuid-programs): Add 'newuidmap' and 'newgidmap'. --- gnu/system.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/system.scm b/gnu/system.scm index bffbee7fdb..998bd68396 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -718,6 +718,8 @@ use 'plain-file' instead~%") (let ((shadow (@ (gnu packages admin) shadow))) (list (file-append shadow "/bin/passwd") (file-append shadow "/bin/su") + (file-append shadow "/bin/newuidmap") + (file-append shadow "/bin/newgidmap") (file-append inetutils "/bin/ping") (file-append inetutils "/bin/ping6") (file-append sudo "/bin/sudo") From e333efd53aead8e51f77213856b1e4cf72d57f6b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 18 Jul 2017 02:00:48 +0200 Subject: [PATCH 0280/1227] gnu: libstaroffice: Update to 0.0.4. * gnu/packages/libreoffice.scm (libstaroffice): Update to 0.0.4. --- gnu/packages/libreoffice.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index b49e360205..f7775ff4a0 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -614,14 +614,14 @@ spreadsheet documents.") (define-public libstaroffice (package (name "libstaroffice") - (version "0.0.3") + (version "0.0.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/fosnola/libstaroffice/releases/download/" version "/libstaroffice-" version ".tar.xz")) (sha256 (base32 - "1ii2wi3wr5npyz9gby1bjk8r4wyflpfpc6gx7mmqkhsc9c8frpmy")))) + "0flh0hs31fsq1dmkhf2502lxskiy7fbj5q8gn4b4f502s228fwkf")))) (build-system gnu-build-system) (inputs `(("librevenge" ,librevenge) From 21ffcd65c5a3459e939a75eb9151acde6ab53723 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 18 Jul 2017 16:30:14 +0200 Subject: [PATCH 0281/1227] vm: Increase disk size overhead estimate. * gnu/build/vm.scm (estimated-partition-size): Add 25% to the graph size. --- gnu/build/vm.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 086f38ade1..14bd7851f2 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -157,8 +157,8 @@ the #:references-graphs parameter of 'derivation'." (define (estimated-partition-size graphs) "Return the estimated size of a partition that can store the store items given by GRAPHS, a list of file names produced by #:references-graphs." - ;; Simply add a 20% overhead. - (round (* 1.2 (closure-size graphs)))) + ;; Simply add a 25% overhead. + (round (* 1.25 (closure-size graphs)))) (define* (initialize-partition-table device partitions #:key From 45c18f8529ed25729e9cbdfeeda4aed3c965180d Mon Sep 17 00:00:00 2001 From: Jelle Licht Date: Tue, 23 Aug 2016 04:41:28 +0200 Subject: [PATCH 0282/1227] gnu: node: Add search path specification for 'NODE_PATH'. * gnu/packages/node.scm (node)[native-search-paths]: New field. --- gnu/packages/node.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index d4415fc501..2cebabbcaf 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -134,6 +134,10 @@ ("procps" ,procps) ("util-linux" ,util-linux) ("which" ,which))) + (native-search-paths + (list (search-path-specification + (variable "NODE_PATH") + (files '("lib/node_modules"))))) (inputs `(("c-ares" ,c-ares) ("http-parser" ,http-parser) From 8d033e3e1607d5722ef7288208551d0331c8a853 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 21:38:16 +0200 Subject: [PATCH 0283/1227] vm: 'iso9660-image' produces a single-file output. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Add #:single-file-output? and pass it to 'load-in-linux-vm'. (iso9660-image): Pass #:single-file-output? to 'expression->derivation-in-linux-vm'. * gnu/build/vm.scm (load-in-linux-vm): Add #:single-file-output? and honor it. --- gnu/build/vm.scm | 20 ++++++++++++++++---- gnu/system/vm.scm | 13 +++++++++---- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 14bd7851f2..727494ad93 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -76,11 +76,14 @@ (qemu (qemu-command)) (memory-size 512) linux initrd make-disk-image? + single-file-output? (disk-image-size (* 100 (expt 2 20))) (disk-image-format "qcow2") (references-graphs '())) "Run BUILDER, a Scheme file, into a VM running LINUX with INITRD, and copy -the result to OUTPUT. +the result to OUTPUT. If SINGLE-FILE-OUTPUT? is true, copy a single file from +/xchg to OUTPUT. Otherwise, copy the contents of /xchg to a new directory +OUTPUT. When MAKE-DISK-IMAGE? is true, OUTPUT will contain a VM image of DISK-IMAGE-SIZE bytes resulting from the execution of BUILDER, which may @@ -137,8 +140,17 @@ the #:references-graphs parameter of 'derivation'." ;; When MAKE-DISK-IMAGE? is true, the image is in OUTPUT already. (unless make-disk-image? - (mkdir output) - (copy-recursively "xchg" output))) + (if single-file-output? + (let ((graph? (lambda (name stat) + (member (basename name) references-graphs)))) + (match (find-files "xchg" (negate graph?)) + ((result) + (copy-file result output)) + (x + (error "did not find a single result file" x)))) + (begin + (mkdir output) + (copy-recursively "xchg" output))))) ;;; @@ -356,7 +368,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." (define* (make-iso9660-image grub config-file os-drv target #:key (volume-id "GuixSD_image") (volume-uuid #f)) "Given a GRUB package, creates an iso image as TARGET, using CONFIG-FILE as -Grub configuration and OS-DRV as the stuff in it." +GRUB configuration and OS-DRV as the stuff in it." (let ((grub-mkrescue (string-append grub "/bin/grub-mkrescue"))) (mkdir-p "/tmp/root/var/run") (mkdir-p "/tmp/root/run") diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 028649f80b..6f979aee43 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -105,16 +105,19 @@ (guile-for-build (%guile-for-build)) + (single-file-output? #f) (make-disk-image? #f) (references-graphs #f) (memory-size 256) (disk-image-format "qcow2") (disk-image-size 'guess)) "Evaluate EXP in a QEMU virtual machine running LINUX with INITRD (a -derivation). In the virtual machine, EXP has access to all its inputs from the -store; it should put its output files in the `/xchg' directory, which is -copied to the derivation's output when the VM terminates. The virtual machine -runs with MEMORY-SIZE MiB of memory. +derivation). The virtual machine runs with MEMORY-SIZE MiB of memory. In the +virtual machine, EXP has access to all its inputs from the store; it should +put its output file(s) in the '/xchg' directory. + +If SINGLE-FILE-OUTPUT? is true, copy a single file from '/xchg' to OUTPUT. +Otherwise, copy the contents of /xchg to a new directory OUTPUT. When MAKE-DISK-IMAGE? is true, then create a QEMU disk image of type DISK-IMAGE-FORMAT (e.g., 'qcow2' or 'raw'), of DISK-IMAGE-SIZE bytes and @@ -164,6 +167,7 @@ made available under the /xchg CIFS share." #:linux linux #:initrd initrd #:memory-size #$memory-size #:make-disk-image? #$make-disk-image? + #:single-file-output? #$single-file-output? #:disk-image-format #$disk-image-format #:disk-image-size size #:references-graphs graphs))))) @@ -219,6 +223,7 @@ INPUTS is a list of inputs (as for packages)." (reboot)))) #:system system #:make-disk-image? #f + #:single-file-output? #t #:references-graphs inputs)) (define* (qemu-image #:key From 5058bf56843baf3c0d82fbf0addbb30f00572428 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 21:39:56 +0200 Subject: [PATCH 0284/1227] guix system: Use "image.iso" as the name of ISO images. * guix/scripts/system.scm (system-derivation-for-action): Pass #:name to 'system-disk-image'. --- guix/scripts/system.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 65dd92e8b7..0fcb6a9b0f 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -579,8 +579,12 @@ PATTERN, a string. When PATTERN is #f, display all the system generations." (* 70 (expt 2 20))) #:mappings mappings)) ((disk-image) - (system-disk-image os #:disk-image-size image-size - #:file-system-type file-system-type)))) + (system-disk-image os + #:name (match file-system-type + ("iso9660" "image.iso") + (_ "disk-image")) + #:disk-image-size image-size + #:file-system-type file-system-type)))) (define (maybe-suggest-running-guix-pull) "Suggest running 'guix pull' if this has never been done before." From 47ce813f7d94ab8b457a2212dff69b8ed2922b1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 22:37:30 +0200 Subject: [PATCH 0285/1227] tests: ssh: Use 'guile-ssh'. * gnu/tests/ssh.scm (run-ssh-test): Use GUILE-SSH instead of GUILE2.0-SSH. --- gnu/tests/ssh.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/tests/ssh.scm b/gnu/tests/ssh.scm index 9c83a9cd48..0d2b842071 100644 --- a/gnu/tests/ssh.scm +++ b/gnu/tests/ssh.scm @@ -51,7 +51,7 @@ When SFTP? is true, run an SFTP server test." (eval-when (expand load eval) ;; Prepare to use Guile-SSH. (set! %load-path - (cons (string-append #+guile2.0-ssh "/share/guile/site/" + (cons (string-append #+guile-ssh "/share/guile/site/" (effective-version)) %load-path))) From ec5c24f9a8421172a0cf9133d512014b31815a76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 22:46:47 +0200 Subject: [PATCH 0286/1227] gnu: totem: Disable automatic plugin installation. * gnu/packages/gnome.scm (totem)[arguments]: Add #:configure-flags. --- gnu/packages/gnome.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index c753b297d1..c959d54da6 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3493,7 +3493,11 @@ for application developers.") ("nettle" ,nettle) ("vala" ,vala))) (arguments - `(#:phases + `(;; Disable automatic GStreamer plugin installation via PackageKit and + ;; all that. + #:configure-flags '("--disable-easy-codec-installation") + + #:phases (modify-phases %standard-phases (add-after 'install 'wrap-totem From 137a330988ec89cfe7ec9cb71fa08557c8cc5a55 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 18 Jul 2017 17:56:27 +0200 Subject: [PATCH 0287/1227] gnu: meson: Update to 0.41.1. * gnu/packages/build-tools.scm (meson) Update to 0.41.1. --- gnu/packages/build-tools.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 66f46433f9..423ad7fd95 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -69,7 +69,7 @@ makes a few sacrifices to acquire fast full and incremental build times.") (define-public meson (package (name "meson") - (version "0.40.1") + (version "0.41.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/mesonbuild/meson/" @@ -77,7 +77,7 @@ makes a few sacrifices to acquire fast full and incremental build times.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0yl6iryh89nn6hzhwv7kg16ki1chh9h0x1yk1y130h87iq42a35r")))) + "12ygjh1dxi8z06nl704rfb6zj0m2zjqp279nymfgzfgy5zq032d4")))) (build-system python-build-system) (inputs `(("ninja", ninja))) (home-page "https://mesonbuild.com/") From c48fa0ad329eba62616e37468fc630eb7a1b58ac Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 18 Jul 2017 17:56:50 +0200 Subject: [PATCH 0288/1227] gnu: tlp: Update to 1.0. * gnu/packages/linux.scm (tlp): Update to 1.0. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 40d805c844..93a6a583a2 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3782,7 +3782,7 @@ Light is the successor of lightscript.") (define-public tlp (package (name "tlp") - (version "0.9") + (version "1.0") (source (origin (method url-fetch) (uri (string-append @@ -3792,7 +3792,7 @@ Light is the successor of lightscript.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0xksm8ar6dbq0azbfz8qs9yyzqg1j333lyd5znc074rz8inj4yw8")))) + "1v3qpj9kp4rxwqapayd0i9419wwv4bikyrzjvqn0r9xkgnr1f9v4")))) (inputs `(("bash" ,bash) ("dbus" ,dbus) ("ethtool" ,ethtool) From b225b1bec25313941c8737f7e1ce872492edc533 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 19 Jul 2017 01:06:21 +0200 Subject: [PATCH 0289/1227] gnu: openntpd: Update to 6.1p1. * gnu/packages/ntp.scm (openntpd): Update to 6.1p1. --- gnu/packages/ntp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm index 00526f526f..7befd491ac 100644 --- a/gnu/packages/ntp.scm +++ b/gnu/packages/ntp.scm @@ -98,7 +98,7 @@ computers over a network.") (define-public openntpd (package (name "openntpd") - (version "6.0p1") + (version "6.1p1") (source (origin (method url-fetch) ;; XXX Use mirror://openbsd @@ -107,7 +107,7 @@ computers over a network.") version ".tar.gz")) (sha256 (base32 - "1s3plmxmybwpfrimq6sc54wxnn6ca7rb2g5k2bdjm4c88w4q1axi")))) + "1ykx9ga76k5m54h7k5x4ds2clxsyfniss5vmf88pxnrip5bx6if8")))) (build-system gnu-build-system) (home-page "http://www.openntpd.org/") (synopsis "NTP client and server by the OpenBSD Project") From 644e5f17dfd2f5b3bbf656580d6f1f84c52e668a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 19 Jul 2017 01:42:08 +0200 Subject: [PATCH 0290/1227] download: Add OpenBSD mirrors. * guix/download.scm (%mirrors) : Add HTTPS OpenBSD mirrors. * gnu/packages/ntp.scm (openntpd)[source]: Use them. * gnu/packages/ssh.scm (openssh)[source]: Likewise. * gnu/packages/tls.scm (libressl)[source]: Likewise. --- gnu/packages/ntp.scm | 4 +--- gnu/packages/ssh.scm | 16 ++++++-------- gnu/packages/tls.scm | 16 ++++++-------- guix/download.scm | 51 +++++++++++++++++++++++++++++++++++++++++++- 4 files changed, 64 insertions(+), 23 deletions(-) diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm index 7befd491ac..959aa55a76 100644 --- a/gnu/packages/ntp.scm +++ b/gnu/packages/ntp.scm @@ -101,10 +101,8 @@ computers over a network.") (version "6.1p1") (source (origin (method url-fetch) - ;; XXX Use mirror://openbsd (uri (string-append - "http://ftp.openbsd.org/pub/OpenBSD/OpenNTPD/openntpd-" - version ".tar.gz")) + "mirror://openbsd/OpenNTPD/" name "-" version ".tar.gz")) (sha256 (base32 "1ykx9ga76k5m54h7k5x4ds2clxsyfniss5vmf88pxnrip5bx6if8")))) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 3cde6af5fe..89df37a636 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -130,16 +130,12 @@ a server that supports the SSH-2 protocol.") (name "openssh") (version "7.5p1") (source (origin - (method url-fetch) - (uri (let ((tail (string-append name "-" version ".tar.gz"))) - (list (string-append "http://openbsd.cs.fau.de/pub/OpenBSD/OpenSSH/portable/" - tail) - (string-append "http://ftp.fr.openbsd.org/pub/OpenBSD/OpenSSH/portable/" - tail) - (string-append "http://ftp2.fr.openbsd.org/pub/OpenBSD/OpenSSH/portable/" - tail)))) - (sha256 (base32 - "1w7rb5gbrikxdkp8w7zxnci4549gk4bw1lml01s59w5rzb2y6ilq")))) + (method url-fetch) + (uri (string-append "mirror://openbsd/OpenSSH/portable/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1w7rb5gbrikxdkp8w7zxnci4549gk4bw1lml01s59w5rzb2y6ilq")))) (build-system gnu-build-system) (native-inputs `(("groff" ,groff))) (inputs `(("openssl" ,openssl) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 2b317a84f1..0a81633aa7 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -456,15 +456,13 @@ required structures.") (package (name "libressl") (version "2.5.5") - (source - (origin - (method url-fetch) - (uri (string-append - "https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-" - version ".tar.gz")) - (sha256 - (base32 - "1i77viqy1afvbr392npk9v54k9zhr9zq2vhv6pliza22b0ymwzz5")))) + (source (origin + (method url-fetch) + (uri (string-append "mirror://openbsd/LibreSSL/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1i77viqy1afvbr392npk9v54k9zhr9zq2vhv6pliza22b0ymwzz5")))) (build-system gnu-build-system) (arguments ;; Do as if 'getentropy' was missing since older Linux kernels lack it diff --git a/guix/download.scm b/guix/download.scm index c1da515477..d7590d4110 100644 --- a/guix/download.scm +++ b/guix/download.scm @@ -277,7 +277,56 @@ "http://kde.mirrors.tds.net/pub/kde/" ;; Oceania "http://ftp.kddlabs.co.jp/pub/X11/kde/" - "http://kde.mirror.uber.com.au/")))) + "http://kde.mirror.uber.com.au/") + (openbsd + "https://ftp.openbsd.org/pub/OpenBSD/" + ;; Anycast CDN redirecting to your friendly local mirror. + "https://mirrors.evowise.com/pub/OpenBSD/" + ;; Other HTTPS mirrors from https://www.openbsd.org/ftp.html + "https://mirror.aarnet.edu.au/pub/OpenBSD/" + "https://ftp2.eu.openbsd.org/pub/OpenBSD/" + "https://openbsd.c3sl.ufpr.br/pub/OpenBSD/" + "https://openbsd.ipacct.com/pub/OpenBSD/" + "https://ftp.OpenBSD.org/pub/OpenBSD/" + "https://openbsd.cs.toronto.edu/pub/OpenBSD/" + "https://openbsd.delfic.org/pub/OpenBSD/" + "https://openbsd.mirror.netelligent.ca/pub/OpenBSD/" + "https://mirrors.ucr.ac.cr/pub/OpenBSD/" + "https://mirrors.dotsrc.org/pub/OpenBSD/" + "https://mirror.one.com/pub/OpenBSD/" + "https://ftp.fr.openbsd.org/pub/OpenBSD/" + "https://ftp2.fr.openbsd.org/pub/OpenBSD/" + "https://mirrors.ircam.fr/pub/OpenBSD/" + "https://ftp.spline.de/pub/OpenBSD/" + "https://mirror.hs-esslingen.de/pub/OpenBSD/" + "https://ftp.halifax.rwth-aachen.de/openbsd/" + "https://ftp.hostserver.de/pub/OpenBSD/" + "https://ftp.fau.de/pub/OpenBSD/" + "https://ftp.cc.uoc.gr/pub/OpenBSD/" + "https://openbsd.hk/pub/OpenBSD/" + "https://ftp.heanet.ie/pub/OpenBSD/" + "https://openbsd.mirror.garr.it/pub/OpenBSD/" + "https://mirror.litnet.lt/pub/OpenBSD/" + "https://mirror.meerval.net/pub/OpenBSD/" + "https://ftp.nluug.nl/pub/OpenBSD/" + "https://ftp.bit.nl/pub/OpenBSD/" + "https://mirrors.dalenys.com/pub/OpenBSD/" + "https://ftp.icm.edu.pl/pub/OpenBSD/" + "https://ftp.rnl.tecnico.ulisboa.pt/pub/OpenBSD/" + "https://mirrors.pidginhost.com/pub/OpenBSD/" + "https://mirror.yandex.ru/pub/OpenBSD/" + "https://ftp.eu.openbsd.org/pub/OpenBSD/" + "https://ftp.yzu.edu.tw/pub/OpenBSD/" + "https://www.mirrorservice.org/pub/OpenBSD/" + "https://anorien.csc.warwick.ac.uk/pub/OpenBSD/" + "https://mirror.bytemark.co.uk/pub/OpenBSD/" + "https://mirrors.sonic.net/pub/OpenBSD/" + "https://ftp3.usa.openbsd.org/pub/OpenBSD/" + "https://mirrors.syringanetworks.net/pub/OpenBSD/" + "https://openbsd.mirror.constant.com/pub/OpenBSD/" + "https://ftp4.usa.openbsd.org/pub/OpenBSD/" + "https://ftp5.usa.openbsd.org/pub/OpenBSD/" + "https://mirror.esc7.net/pub/OpenBSD/")))) (define %mirror-file ;; Copy of the list of mirrors to a file. This allows us to keep a single From a388c951ddb9fb0d30a6c8ea24fed035247baecb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 19 Jul 2017 11:09:04 +0200 Subject: [PATCH 0291/1227] gnu: totem: Do not build static libraries. * gnu/packages/gnome.scm (totem)[arguments]: Pass "--disable-static". This reduces the size of Totem from 11 MiB to 9 MiB. --- gnu/packages/gnome.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index c959d54da6..345dc6a748 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3495,7 +3495,11 @@ for application developers.") (arguments `(;; Disable automatic GStreamer plugin installation via PackageKit and ;; all that. - #:configure-flags '("--disable-easy-codec-installation") + #:configure-flags '("--disable-easy-codec-installation" + + ;; Do not build .a files for the plugins, it's + ;; completely useless. This saves 2 MiB. + "--disable-static") #:phases (modify-phases %standard-phases From 2324541bd0b2febda96eb0004ac3a7bef1fe9d56 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 19 Jul 2017 14:36:52 +0300 Subject: [PATCH 0292/1227] gnu: sortmerna: Limit support to x86_64 and i686 only. * gnu/packages/bioinformatics.scm (sortmerna)[supported-systems]: New field. --- gnu/packages/bioinformatics.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 9acd5454b3..734bf31670 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5318,6 +5318,8 @@ and operational taxonomic unit (OTU) picking of next generation sequencing (NGS) reads. The core algorithm is based on approximate seeds and allows for fast and sensitive analyses of nucleotide sequences. The main application of SortMeRNA is filtering rRNA from metatranscriptomic data.") + ;; The source includes x86 specific code + (supported-systems '("x86_64-linux" "i686-linux")) (license license:lgpl3))) (define-public star From 688fbf572e56e531507fd7a0ecc4532b16636a64 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 19 Jul 2017 14:37:18 +0200 Subject: [PATCH 0293/1227] gnu: guitarix: Update to 0.35.5. * gnu/packages/audio.scm (guitarix): Update to 0.35.5. --- gnu/packages/audio.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index bb65ec0a67..40700cae3d 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1136,7 +1136,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.") (define-public guitarix (package (name "guitarix") - (version "0.35.4") + (version "0.35.5") (source (origin (method url-fetch) (uri (string-append @@ -1144,7 +1144,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.") version ".tar.xz")) (sha256 (base32 - "1vip4d5hc20vjkh8c9bwn92gyqcc6a1ml6hs39djp59mmybr13dp")))) + "00pfb6qa3jfa6qaql7isnb8srfdfmk362ygslh7y0qkm36qasmh4")))) (build-system waf-build-system) (arguments `(#:tests? #f ; no "check" target From 1fb9b6782b7286a0b90ad61c5882b1ba8bf75cac Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 19 Jul 2017 14:37:44 +0200 Subject: [PATCH 0294/1227] gnu: snakemake: Update to 3.13.3. * gnu/packages/python.scm (snakemake): Update to 3.13.3. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 91ef226036..ebfd298938 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -6155,13 +6155,13 @@ of the structure, dynamics, and functions of complex networks.") (define-public snakemake (package (name "snakemake") - (version "3.11.2") + (version "3.13.3") (source (origin (method url-fetch) (uri (pypi-uri "snakemake" version)) (sha256 - (base32 "0qcp7y9csvanyzh08jppryhd5di8r1z7p0d4wkfg5591pj3bb8zp")))) + (base32 "1nixb944r4hlskwkzc4wjs34b40xpxpw9gmhhm5p09gvmm22ap5d")))) (build-system python-build-system) (arguments ;; TODO: Package missing test dependencies. From fd4085793818ab2aea28dfeeb2728f6f02416c4c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 19 Jul 2017 14:38:37 +0200 Subject: [PATCH 0295/1227] gnu: r-bsgenome-hsapiens-ucsc-hg19: Update hash. * gnu/packages/bioinformatics.scm (r-bsgenome-hsapiens-ucsc-hg19)[source]: Update hash because the tarball changed in place. --- gnu/packages/bioinformatics.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 734bf31670..1caddb9eed 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7563,7 +7563,7 @@ Stephens (1990).") version ".tar.gz")) (sha256 (base32 - "1y0nqpk8cw5a34sd9hmin3z4v7iqm6hf6l22cl81vlbxqbjibxc8")))) + "0479qx4bapgcp5chj10a63chk0s28x9cx1gamz3f5m3yd7jzwcf2")))) (properties `((upstream-name . "BSgenome.Hsapiens.UCSC.hg19"))) (build-system r-build-system) From 8016393eab8a8b0b4e3d12e34eee775a1b841f1e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 19 Jul 2017 10:29:42 -0400 Subject: [PATCH 0296/1227] gnu: mpv: Update to 0.26.0. * gnu/packages/video.scm (mpv): Update to 0.26.0. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 12d54ff8e5..6959d9a885 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -980,7 +980,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (define-public mpv (package (name "mpv") - (version "0.25.0") + (version "0.26.0") (source (origin (method url-fetch) (uri (string-append @@ -988,7 +988,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") ".tar.gz")) (sha256 (base32 - "1khb7c4fdj1aak46lwyb3lq14w5jpxzws0zp6bdc87ljsvx3yhh7")) + "0ihvnwrp24jjf43k1hvy8n8w4ipl4z7apjppd4i0y9jzilsyzwys")) (file-name (string-append name "-" version ".tar.gz")))) (build-system waf-build-system) (native-inputs From 6d5deda16d04585456056a7cbd7fb36c7c5e01b4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 19 Jul 2017 12:02:42 -0400 Subject: [PATCH 0297/1227] gnu: graphicsmagick: Update to 1.3.26. * gnu/packages/imagemagick.scm (graphicsmagick): Update to 1.3.26. [source]: Use url-fetch and add SourceForge URL. Remove snippet. --- gnu/packages/imagemagick.scm | 115 +++++++++++++++-------------------- 1 file changed, 49 insertions(+), 66 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 219f8ec437..dfda2126ab 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -25,7 +25,6 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system perl) #:use-module (guix download) - #:use-module (guix hg-download) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) @@ -162,70 +161,54 @@ script.") (license (package-license imagemagick)))) (define-public graphicsmagick - (let ((changeset "6156b4c2992d855ece6079653b3b93c3229fc4b8") ; fix CVE-2017-6335 - (revision "3")) - (package - (name "graphicsmagick") - (version (string-append "1.3.25-" revision "." - (string-take changeset 7))) - (source (origin - (method hg-fetch) - (uri (hg-reference - (url "http://hg.code.sf.net/p/graphicsmagick/code") - (changeset changeset))) - (file-name (string-append name "-" version "-checkout")) - ;;(method url-fetch) - ;;(uri (string-append "ftp://ftp.graphicsmagick.org/pub/" - ;; "GraphicsMagick/" (version-major+minor version) - ;; "/GraphicsMagick-" version ".tar.xz")) - (sha256 - (base32 - "08yfsn8mrqkwpax43vv1crfr55rcf004wwpzsinr5c6m0asqr08b")) - (modules '((guix build utils))) - (snippet - ;; Remove bundled software. This reduces the size of the built - ;; source checkout from 177 MiB to 49 MiB. This should not be - ;; necessary when using the GraphicsMagick release tarball, - ;; because these files are not distributed there. - '(for-each delete-file-recursively '("bzlib" "dcraw" "hp2xx" - "jbig" "jp2" "jpeg" - "lcms" "libxml" "png" - "ralcgm" "tiff" "ttf" - "webp" "wmf" "xlib" - "zlib"))))) - (build-system gnu-build-system) - (arguments - `(#:configure-flags - (list "--with-frozenpaths" - "--enable-shared=yes" - "--with-x=yes" - "--with-quantum-depth=16" ; required by Octave - "--enable-quantum-library-names" - (string-append "--with-gs-font-dir=" - (assoc-ref %build-inputs "gs-fonts") - "/share/fonts/type1/ghostscript")))) - (inputs - `(("graphviz" ,graphviz) - ("ghostscript" ,ghostscript) - ("gs-fonts" ,gs-fonts) - ("lcms" ,lcms) - ("libx11" ,libx11) - ("libxml2" ,libxml2) - ("libtiff" ,libtiff) - ("libpng" ,libpng) - ("libjpeg" ,libjpeg) - ("freetype" ,freetype) - ("bzip2" ,bzip2) - ("xz" ,xz) - ("zlib" ,zlib))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (outputs '("out" ; 13 MiB - "doc")) ; ~7 MiB - (home-page "http://www.graphicsmagick.org") - (synopsis "Create, edit, compose, or convert bitmap images") - (description - "GraphicsMagick provides a comprehensive collection of utilities, + (package + (name "graphicsmagick") + (version "1.3.26") + (source (origin + (method url-fetch) + (uri + (list + (string-append "mirror://sourceforge/" name "/" name + "/" version "/GraphicsMagick-" version ".tar.xz") + (string-append "ftp://ftp.graphicsmagick.org/pub/" + "GraphicsMagick/" (version-major+minor version) + "/GraphicsMagick-" version ".tar.xz"))) + (sha256 + (base32 + "122zgs96dqrys62mnh8x5yvfff6km4d3yrnvaxzg3mg5sprib87v")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list "--with-frozenpaths" + "--enable-shared=yes" + "--with-x=yes" + "--with-quantum-depth=16" ; required by Octave + "--enable-quantum-library-names" + (string-append "--with-gs-font-dir=" + (assoc-ref %build-inputs "gs-fonts") + "/share/fonts/type1/ghostscript")))) + (inputs + `(("graphviz" ,graphviz) + ("ghostscript" ,ghostscript) + ("gs-fonts" ,gs-fonts) + ("lcms" ,lcms) + ("libx11" ,libx11) + ("libxml2" ,libxml2) + ("libtiff" ,libtiff) + ("libpng" ,libpng) + ("libjpeg" ,libjpeg) + ("freetype" ,freetype) + ("bzip2" ,bzip2) + ("xz" ,xz) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (outputs '("out" ; 13 MiB + "doc")) ; ~7 MiB + (home-page "http://www.graphicsmagick.org") + (synopsis "Create, edit, compose, or convert bitmap images") + (description + "GraphicsMagick provides a comprehensive collection of utilities, programming interfaces, and GUIs, to support file format conversion, image processing, and 2D vector rendering.") - (license license:expat)))) + (license license:expat))) From 423d2136f0ed0eafdae60d7fcedc7f24d2ee3344 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 10 Jul 2017 22:36:50 +0200 Subject: [PATCH 0298/1227] gnu: Add python-xapian-bindings. * gnu/packages/search.scm (python-xapian-bindings): New variable. --- gnu/packages/search.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 8651b985e3..cc8c0630bb 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2015, 2016 Eric Bavier ;;; Copyright © 2017 Thomas Danckaert +;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,6 +31,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages linux) #:use-module (gnu packages perl) + #:use-module (gnu packages python) #:use-module (gnu packages web) #:use-module (gnu packages xml)) @@ -70,6 +72,32 @@ rich set of boolean query operators.") (home-page "https://xapian.org/") (license (list gpl2+ bsd-3 x11)))) +(define-public python-xapian-bindings + (package (inherit xapian) + (name "python-xapian-bindings") + (version (package-version xapian)) + (source (origin + (method url-fetch) + (uri (string-append "https://oligarchy.co.uk/xapian/" version + "/xapian-bindings-" version ".tar.xz")) + (sha256 + (base32 + "0fca9nsf7pj3fq991xcm5iainz3s8yqik4ycvavm09y486n3wciv")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags '("--with-python3") + #:make-flags + (list (string-append "pkgpylibdir=" + (assoc-ref %outputs "out") + "/lib/python3.5/site-packages/xapian")))) + (inputs + `(("python" ,python) + ("python-sphinx" ,python-sphinx) ; for documentation + ("xapian" ,xapian) + ("zlib" ,zlib))) + (synopsis "Python bindings for the Xapian search engine library") + (license gpl2+))) + (define-public libtocc (package (name "libtocc") From 5f94ec913f9bfda05aa8a5e7993ff95c38d23a08 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 09:03:10 +0200 Subject: [PATCH 0299/1227] gnu: Add python-sphinxcontrib-websupport. * gnu/packages/python.scm (python-sphinxcontrib-websupport): New variable. --- gnu/packages/python.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index ebfd298938..e5fd71ef1b 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -100,6 +100,7 @@ #:use-module (gnu packages qt) #:use-module (gnu packages readline) #:use-module (gnu packages sdl) + #:use-module (gnu packages search) #:use-module (gnu packages shells) #:use-module (gnu packages ssh) #:use-module (gnu packages statistics) @@ -3161,6 +3162,36 @@ reStructuredText.") (define-public python2-pygments (package-with-python2 python-pygments)) +(define-public python-sphinxcontrib-websupport + (package + (name "python-sphinxcontrib-websupport") + (version "1.0.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "sphinxcontrib-websupport" version)) + (sha256 + (base32 + "1f9f0wjpi9nhikbyaz6d19s7qvzdf1nq2g5dsh640fma4q9rd1bs")))) + (build-system python-build-system) + (propagated-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("python-xapian-bindings" ,python-xapian-bindings))) + ;; Needed for running the test suite + (native-inputs + `(("python-six" ,python-six) + ("python-jinja2" ,python-jinja2) + ("python-docutils" ,python-docutils) + ("python-sphinx" ,python-sphinx) + ("python-sqlalchemy" ,python-sqlalchemy) + ("python-whoosh" ,python-whoosh))) + (home-page "http://sphinx-doc.org/") + (synopsis "Sphinx API for web applications") + (description "This package provides a Python API to easily integrate +Sphinx documentation into your web application. It provides tools to +integrate Sphinx documents in web templates and to handle searches.") + (license license:bsd-3))) + (define-public python-sphinx (package (name "python-sphinx") From e7304ab18b8c2b6381cc62264fa82d2b4acf4b59 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 11 Jul 2017 09:03:30 +0200 Subject: [PATCH 0300/1227] gnu: Add python-sphinx-1.6. * gnu/packages/python.scm (python-sphinx-1.6): New variable. --- gnu/packages/python.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e5fd71ef1b..d3832f30fb 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3236,6 +3236,36 @@ sources.") (license license:bsd-3) (properties `((python2-variant . ,(delay python2-sphinx)))))) +(define-public python-sphinx-1.6 + (package (inherit python-sphinx) + (name "python-sphinx") + (version "1.6.3") + (source (origin + (method url-fetch) + (uri (pypi-uri "Sphinx" version)) + (sha256 + (base32 + "1rj6f3i8hmrx2qlkshi5kp5xcy98dlynwlyl05yvflj5f66dp2xg")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + ;; Requires Internet access. + (delete-file "tests/test_build_linkcheck.py") + (substitute* "tests/test_build_latex.py" + (("@pytest.mark.sphinx\\('latex', testroot='images'\\)") + "@pytest.mark.skip()")) + (zero? (system* "make" "test"))))))) + (propagated-inputs + `(("python-sphinxcontrib-websupport" ,python-sphinxcontrib-websupport) + ,@(package-propagated-inputs python-sphinx))) + (native-inputs + `(("python-pytest" ,python-pytest-3.0) + ("imagemagick" ,imagemagick) ; for "convert" + ,@(package-native-inputs python-sphinx))) + (properties '()))) + (define-public python-sphinx-1.5.3 (package (inherit python-sphinx) From b7158b767b7fd9f0379dfe08083c48a0cf0f3d50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 19 Jul 2017 22:59:18 +0200 Subject: [PATCH 0301/1227] gnu: guile-bash: Add dependency on the "full" Bash. Fixes a regression introduced in 704243e0c6ec5ac86e2f45aaa469717e60b89124. * gnu/packages/guile.scm (guile-bash)[native-inputs]: Add BASH. --- gnu/packages/guile.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index f86d7ead80..d077ae992a 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1698,7 +1698,11 @@ dictionary and suggesting spelling corrections.") ("automake" ,automake) ("libtool" ,libtool) ;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'. - ("gettext" ,gettext-minimal))) + ("gettext" ,gettext-minimal) + + ;; Bash with loadable module support, for the test + ;; suite. + ("bash-full" ,bash))) (inputs `(("guile" ,guile-2.0) ("bash:include" ,bash "include"))) (synopsis "Extend Bash using Guile") From 53cea7594c387753cb0a8f7698bd14d0d8c28d32 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 19 Jul 2017 15:58:26 +0200 Subject: [PATCH 0302/1227] gnu: dub: Update to 1.4.0. * gnu/packages/ldc.scm (dub): Update to 1.4.0. --- gnu/packages/ldc.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ldc.scm b/gnu/packages/ldc.scm index 918843c077..03cd033376 100644 --- a/gnu/packages/ldc.scm +++ b/gnu/packages/ldc.scm @@ -279,7 +279,7 @@ latest DMD frontend and uses LLVM as backend.") (define-public dub (package (name "dub") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/dlang/dub/archive/" @@ -287,7 +287,7 @@ latest DMD frontend and uses LLVM as backend.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "056mvf01z51qc3i1qnx7yaqr728q8pss8zabiv5zpfx2ynfsw3k7")))) + "1w3pznyjnmsmasrvv93f82l0sr31fpwg2zcj8hh1b2gvc5761qhi")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; it would have tested itself by installing some packages (vibe etc) From dc05f6523eb424bfeb4ddd2bf157232b4a72ca77 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 19 Jul 2017 21:14:32 +0200 Subject: [PATCH 0303/1227] gnu: qsyncthingtray: Update to 0.5.8. * gnu/packages/sync.scm (qsyncthingtray): Update to 0.5.8. --- gnu/packages/sync.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm index 91f4b3d0ed..a914d41c43 100644 --- a/gnu/packages/sync.scm +++ b/gnu/packages/sync.scm @@ -107,7 +107,7 @@ silently and reliably flow across to every other.") (define-public qsyncthingtray (package (name "qsyncthingtray") - (version "0.5.7") + (version "0.5.8") (source (origin (method url-fetch) @@ -117,7 +117,7 @@ silently and reliably flow across to every other.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1qzlxgq36sb1dk621nkbjw9k6y3css6q3z8xzx6nv7f327vanvp6")))) + "1024778ml7q62ziqm4d22z5sc1715l34846pwfyzfpcyl32qlhpz")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DQST_BUILD_WEBKIT=1") From ca8fb248de152a2f895d43cd1023b5a940215caa Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 17 Jul 2017 18:53:08 +1000 Subject: [PATCH 0304/1227] gnu: Add patches missing from dist_patch_DATA. Reported by Eric Bavier. * gnu/local.mk (dist_patch_DATA): Add gnu/packages/patches/hmmer-remove-cpu-specificity.patch, gnu/packages/patches/jacal-fix-texinfo.patch, gnu/packages/patches/python-pbr-fix-man-page-support.patch and gnu/packages/patches/vsearch-unbundle-cityhash.patch. --- gnu/local.mk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/local.mk b/gnu/local.mk index 92ad112cf4..3e085b1184 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -691,6 +691,7 @@ dist_patch_DATA = \ %D%/packages/patches/hdf-eos5-remove-gctp.patch \ %D%/packages/patches/hdf-eos5-fix-szip.patch \ %D%/packages/patches/hdf-eos5-fortrantests.patch \ + %D%/packages/patches/hmmer-remove-cpu-specificity.patch \ %D%/packages/patches/higan-remove-march-native-flag.patch \ %D%/packages/patches/hubbub-sort-entities.patch \ %D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \ @@ -701,6 +702,7 @@ dist_patch_DATA = \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \ %D%/packages/patches/isl-0.11.1-aarch64-support.patch \ + %D%/packages/patches/jacal-fix-texinfo.patch \ %D%/packages/patches/jbig2dec-ignore-testtest.patch \ %D%/packages/patches/jbig2dec-CVE-2016-9601.patch \ %D%/packages/patches/jbig2dec-CVE-2017-7885.patch \ @@ -962,6 +964,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-pandas-skip-failing-tests.patch \ %D%/packages/patches/python-paste-remove-website-test.patch \ %D%/packages/patches/python-paste-remove-timing-test.patch \ + %D%/packages/patches/python-pbr-fix-man-page-support.patch \ %D%/packages/patches/python-pillow-freetype-2.7-test-failure.patch \ %D%/packages/patches/python-pygit2-disable-network-tests.patch \ %D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \ @@ -1066,6 +1069,7 @@ dist_patch_DATA = \ %D%/packages/patches/vorbis-tools-CVE-2014-9640.patch \ %D%/packages/patches/vorbis-tools-CVE-2015-6749.patch \ %D%/packages/patches/vpnc-script.patch \ + %D%/packages/patches/vsearch-unbundle-cityhash.patch \ %D%/packages/patches/vte-CVE-2012-2738-pt1.patch \ %D%/packages/patches/vte-CVE-2012-2738-pt2.patch \ %D%/packages/patches/weechat-python.patch \ From 7c0d4c3a6b665b102a48b57c4892bfdb75d69b85 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 16 Jul 2017 12:01:59 -0700 Subject: [PATCH 0305/1227] gnu: lapack: Fix hash of release 3.7.1 Apparently the release was modified (cleaned-up) in-place. An issue was opened at https://github.com/Reference-LAPACK/lapack-release/issues/4. * gnu/packages/maths.scm (lapack): Fix sha256 hash. Signed-off-by: Marius Bakke --- gnu/packages/maths.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 1bf049fc4c..f8967cd944 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -437,7 +437,7 @@ large scale eigenvalue problems.") version ".tgz")) (sha256 (base32 - "0yavf6m9l78pwlnk5g61cg8x28mr30j0g8gkai0jrdqfjjmf3whs")))) + "1j51r7n5w4k7r3lrvy7710xrpkg40wf4rqnmngfz6ck9ypckzign")))) (build-system cmake-build-system) (home-page "http://www.netlib.org/lapack/") (inputs `(("fortran" ,gfortran) From 05c88516955814ac61dc7578017e1976c43a1cd3 Mon Sep 17 00:00:00 2001 From: Jonathan Brielmaier Date: Fri, 14 Jul 2017 00:28:14 +0200 Subject: [PATCH 0306/1227] gnu: Add libusb@0.1. * gnu/packages/libusb.scm (libusb-0.1): New variable. * gnu/packages/patches/libusb-0.1-disable-tests.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Marius Bakke --- gnu/local.mk | 1 + gnu/packages/libusb.scm | 16 ++++++++++++++++ .../patches/libusb-0.1-disable-tests.patch | 15 +++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 gnu/packages/patches/libusb-0.1-disable-tests.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3e085b1184..ee932006b7 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -793,6 +793,7 @@ dist_patch_DATA = \ %D%/packages/patches/libtorrent-rasterbar-boost-compat.patch \ %D%/packages/patches/libtool-skip-tests2.patch \ %D%/packages/patches/libunwind-CVE-2015-3239.patch \ + %D%/packages/patches/libusb-0.1-disable-tests.patch \ %D%/packages/patches/libvpx-CVE-2016-2818.patch \ %D%/packages/patches/libxcb-python-3.5-compat.patch \ %D%/packages/patches/libxml2-CVE-2016-4658.patch \ diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm index ffbe5b1a88..ed97ed9de7 100644 --- a/gnu/packages/libusb.scm +++ b/gnu/packages/libusb.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Theodoros Foradis +;;; Copyright © 2017 Jonathan Brielmaier ;;; ;;; This file is part of GNU Guix. ;;; @@ -95,6 +96,21 @@ devices on various operating systems.") version of libusb to run with newer libusb.") (license lgpl2.1+))) +;; required by 0xffff, which compiles with libusb-compat, but executes only +;; with libusb-0.1 +(define-public libusb-0.1 + (package (inherit libusb) + (version "0.1.12") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/libusb/libusb-0.1 (LEGACY)/" + version "/libusb-" version ".tar.gz")) + (sha256 + (base32 + "0i4bacxkyr7xyqxbmb00ypkrv4swkgm0mghbzjsnw6blvvczgxip")) + (patches (search-patches "libusb-0.1-disable-tests.patch")))))) + (define-public libusb4java ;; There is no public release so we take the latest version from git. (let ((commit "396d642a57678a0d9663b062c980fe100cc0ea1e") diff --git a/gnu/packages/patches/libusb-0.1-disable-tests.patch b/gnu/packages/patches/libusb-0.1-disable-tests.patch new file mode 100644 index 0000000000..37dd8bd111 --- /dev/null +++ b/gnu/packages/patches/libusb-0.1-disable-tests.patch @@ -0,0 +1,15 @@ +Disable tests who fail because they have to run as root. + +--- libusb-0.1.12/tests/Makefile.in 2006-03-04 03:54:06.000000000 +0100 ++++ libusb-0.1.12/tests/Makefile.in 2017-07-13 16:17:45.201728019 +0200 +@@ -255,8 +255,8 @@ + hub_strings_LDADD = $(top_builddir)/libusbpp.la @OSLIBS@ + driver_name_SOURCES = driver_name.cpp + driver_name_LDADD = $(top_builddir)/libusbpp.la @OSLIBS@ +-TESTS = testlibusb descriptor_test id_test find_hubs find_mice \ +- get_resolution hub_strings $(OS_SPECIFIC) ++TESTS = testlibusb descriptor_test id_test find_hubs find_mice ++ #get_resolution hub_strings $(OS_SPECIFIC) + + XFAIL_TESTS = get_resolution hub_strings $(OS_SPECIFIC_XFAIL) + all: all-am From 29ac89a6355303118bd119fa68bbeb13206bf519 Mon Sep 17 00:00:00 2001 From: Jonathan Brielmaier Date: Fri, 14 Jul 2017 00:28:14 +0200 Subject: [PATCH 0307/1227] gnu: Add 0xffff. * gnu/packages/flashing-tools.scm (0xffff): New variable. Signed-off-by: Marius Bakke --- gnu/packages/flashing-tools.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm index f25c25fbfb..127fc795a3 100644 --- a/gnu/packages/flashing-tools.scm +++ b/gnu/packages/flashing-tools.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Hartmut Goebel ;;; Copyright © 2016 Ludovic Courtès ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2017 Jonathan Brielmaier ;;; ;;; This file is part of GNU Guix. ;;; @@ -82,6 +83,37 @@ network/graphics/storage controller cards, and various other programmer devices.") (license gpl2))) +(define-public 0xffff + (package + (name "0xffff") + (version "0.7") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/pali/0xffff/archive/" + version ".tar.gz")) + (file-name (string-append "0xFFFF" version ".tar.gz" )) + (sha256 + (base32 + "1g4032c81wkk37wvbg1dxcqq6mnd76y9x7f2crmzqi6z4q9jcxmj")))) + (build-system gnu-build-system) + (inputs + `(("libusb",libusb-0.1))) ; doesn't work with libusb-compat + (arguments + '(#:phases + (modify-phases %standard-phases + (delete 'configure)) ; no configure + #:make-flags (list (string-append "PREFIX=" %output)) + #:tests? #f)) ; no 'check' target + (home-page "https://github.com/pali/0xFFFF") + (synopsis "Flash FIASCO images on Maemo devices") + (description + "The Open Free Fiasco Firmware Flasher (0xFFFF) is a flashing tool +for FIASCO images. It supports generating, unpacking, editing and +flashing of FIASCO images for Maemo devices. Use it with care. It can +brick your device.") + (license gpl3+))) + (define-public avrdude (package (name "avrdude") From ba4e15ae85d529710dc89be7b70844ad55432e08 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 20 Jul 2017 01:36:11 +0200 Subject: [PATCH 0308/1227] gnu: gnome-mpv: Update to 0.12. * gnu/packages/video.scm (gnome-mpv): Update to 0.12. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 6959d9a885..2abad9e928 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1055,7 +1055,7 @@ projects while introducing many more.") (define-public gnome-mpv (package (name "gnome-mpv") - (version "0.11") + (version "0.12") (source (origin (method url-fetch) @@ -1064,7 +1064,7 @@ projects while introducing many more.") ".tar.xz")) (sha256 (base32 - "1hn3mpsxbrwf2m0nz4vzji4i6i896y8kqjb9kijqpk04cnrs3fgz")))) + "0dcnz9vlf791v8d15j7hpymv87h6nb15alww6xjq0zpal5hi44kc")))) (native-inputs `(("intltool" ,intltool) ("pkg-config" ,pkg-config))) From 1a34ca0e8fd888a71f80b4f64e07d78a633c677d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 20 Jul 2017 01:34:37 +0200 Subject: [PATCH 0309/1227] gnu: openh264: Update to 1.7.0. * gnu/packages/video.scm (openh264): Update to 1.7.0. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 2abad9e928..ed9ad74142 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -2146,7 +2146,7 @@ of modern, widely supported codecs.") (define-public openh264 (package (name "openh264") - (version "1.6.0") + (version "1.7.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/cisco/" @@ -2154,7 +2154,7 @@ of modern, widely supported codecs.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1ix2fhk62i4q4kbnkl0gfk4x53vxqavsn0pck1pashr566zhglv5")))) + "0gv571bqkxk7ic64dmavs1q8nr7p59mcf4ibqp4lc070gn6w61ww")))) (build-system gnu-build-system) (native-inputs `(("nasm" ,nasm) From 0762a1dbf4c4766dff5a8a006306f1f1f1f48ea8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 20 Jul 2017 02:09:15 +0200 Subject: [PATCH 0310/1227] gnu: perl-html-template: Update to 2.97. * gnu/packages/web.scm (perl-html-template): Update to 2.97. --- gnu/packages/web.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 90ddd9f7c7..8acd37bc22 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2229,14 +2229,14 @@ kinds of HTML parsing operations.") (define-public perl-html-template (package (name "perl-html-template") - (version "2.95") + (version "2.97") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/W/WO/WONKO/" + (uri (string-append "mirror://cpan/authors/id/S/SA/SAMTREGAR/" "HTML-Template-" version ".tar.gz")) (sha256 (base32 - "07ahpfgidxsw2yb7y8i7bbr8s64aq6qgq832h9jswmksxbd0l43q")))) + "17qjw8swj2q4b1ic285pndgrkmvpsqw0j68nhqzpk1daydhsyiv5")))) (build-system perl-build-system) (propagated-inputs `(("perl-cgi" ,perl-cgi))) From ab466d79e1d1e9dc42c9f58cbce83a9dda9739f3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 19 Jul 2017 23:54:52 +0200 Subject: [PATCH 0311/1227] gnu: Add eolie. * gnu/packages/gnome.scm (eolie): New variable. --- gnu/packages/gnome.scm | 61 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 345dc6a748..be00fcff54 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3886,6 +3886,67 @@ the same backend as XSANE uses. This means that all existing scanners will work and the interface is well tested.") (license license:gpl3+))) +(define-public eolie + (package + (name "eolie") + (version "0.9.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/gnumdk/eolie/" + "releases/download/" + (version-major+minor version) + "/eolie-" version ".tar.xz")) + (sha256 + (base32 + "1lb3rd2as12vq24fcf9nmlhggf8vka3kli2i92i8iylwi7nq5n2a")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:modules ((guix build glib-or-gtk-build-system) + (guix build utils) + (ice-9 match)) + #:phases + (modify-phases %standard-phases + (add-after 'wrap 'wrap-more + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + ;; These libraries must be on LD_LIBRARY_PATH. + (libs '("gtkspell3" "webkitgtk" "libsoup" "libsecret" + "atk" "gtk+" "gsettings-desktop-schemas" + "gobject-introspection")) + (path (string-join + (map (lambda (lib) + (string-append (assoc-ref inputs lib) "/lib")) + libs) + ":"))) + (wrap-program (string-append out "/bin/eolie") + `("LD_LIBRARY_PATH" ":" prefix (,path)) + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))) + `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))) + #t))))) + (native-inputs + `(("intltool" ,intltool) + ("itstool" ,itstool) + ("pkg-config" ,pkg-config))) + (inputs + `(("gobject-introspection" ,gobject-introspection) + ("glib-networking" ,glib-networking) + ("cairo" ,cairo) + ("gtk+" ,gtk+) + ("atk" ,atk) ; propagated by gtk+, but we need it in LD_LIBRARY_PATH + ("python" ,python-wrapper) + ("python-pygobject" ,python-pygobject) + ("python-pycairo" ,python-pycairo) + ("libsecret" ,libsecret) + ("gtkspell3" ,gtkspell3) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("webkitgtk" ,webkitgtk))) + (home-page "https://github.com/gnumdk/eolie/") + (synopsis "Web browser for GNOME") + (description + "Eolie is a new web browser for GNOME. It features Firefox sync support, +a secret password store, an adblocker, and a modern UI.") + (license license:gpl3+))) + (define-public epiphany (package (name "epiphany") From 6158309450220c4346428dc8abc385c4b175fe3d Mon Sep 17 00:00:00 2001 From: Theodoros Foradis Date: Fri, 14 Jul 2017 13:13:58 +0300 Subject: [PATCH 0312/1227] gnu: Update g-wrap to use guile-2.2. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/guile.scm (g-wrap): [propagated-inputs]: Use guile-2.2. [arguments]: Add "--disable-Werror" to configure-flags. Signed-off-by: Ludovic Courtès --- gnu/packages/guile.scm | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index c91d6b235c..dd852cb3e6 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2017 Andy Wingo ;;; Copyright © 2017 David Thompson ;;; Copyright © 2017 Mathieu Othacehe +;;; Copyright © 2017 Theodoros Foradis ;;; ;;; This file is part of GNU Guix. ;;; @@ -1346,20 +1347,21 @@ capabilities.") (native-inputs `(("pkg-config" ,pkg-config))) (propagated-inputs - `(("guile" ,guile-2.0) + `(("guile" ,guile-2.2) ("guile-lib" ,guile-lib))) (inputs `(("libffi" ,libffi))) (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'configure 'pre-configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* (find-files "." "^Makefile.in$") - (("guilemoduledir =.*guile/site" all) - (string-append all "/2.0"))) - #t)))))) + `(#:configure-flags '("--disable-Werror") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* (find-files "." "^Makefile.in$") + (("guilemoduledir =.*guile/site" all) + (string-append all "/@GUILE_EFFECTIVE_VERSION@"))) + #t)))))) (synopsis "Generate C bindings for Guile") (description "G-Wrap is a tool and Guile library for generating function wrappers for inter-language calls. It currently only supports generating Guile From 742242a5bede366819fa2058b8897072ba710c94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= Date: Wed, 5 Jul 2017 17:48:51 +0200 Subject: [PATCH 0313/1227] gnu: Add java-commons-cli@1.2. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/java.scm(java-commons-cli-1.2): New variable. Co-authored-by: Ludovic Courtès --- gnu/packages/java.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index f231380506..de992c6499 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -4672,3 +4672,28 @@ generate classes, directly in binary form. The provided common transformations and analysis algorithms allow to easily assemble custom complex transformations and code analysis tools.") (license license:bsd-3))) + +(define-public java-commons-cli-1.2 + ;; This is a bootstrap dependency for Maven2. + (package + (inherit java-commons-cli) + (version "1.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://apache/commons/cli/source/" + "commons-cli-" version "-src.tar.gz")) + (sha256 + (base32 + "0rvfgzgv2pc1m091dfj3ih9ddsjjppr1f1wf0qmc3bk6b1kwv2dm")))) + (arguments + `(#:jar-name "commons-cli.jar" + #:phases + (modify-phases %standard-phases + (add-before 'check 'fix-build-xml + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "build.xml" + (("dir=\"\\$\\{test.home\\}/java\"") + "dir=\"${test.home}\"")) + #t))))) + (native-inputs + `(("java-junit" ,java-junit))))) From c97cef0a91abc960e871be30da2c5096f4f83dd1 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Fri, 14 Jul 2017 13:04:15 +0300 Subject: [PATCH 0314/1227] gnu: Add premake4. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/build-tools.scm (premake4): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/build-tools.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 423ad7fd95..353c9c8efb 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -23,6 +23,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (gnu packages) + #:use-module (gnu packages compression) #:use-module (gnu packages python) #:use-module (gnu packages ninja) #:use-module (guix build-system gnu) @@ -90,3 +91,37 @@ Autoconf/Automake/make combo. Build specifications, also known as @dfn{Meson files}, are written in a custom domain-specific language (DSL) that resembles Python.") (license license:asl2.0))) + +(define-public premake4 + (package + (name "premake") + (version "4.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/premake/Premake/" + version "/premake-" version "-src.zip")) + (sha256 + (base32 + "1017rd0wsjfyq2jvpjjhpszaa7kmig6q1nimw76qx3cjz2868lrn")))) + (build-system gnu-build-system) + (native-inputs + `(("unzip" ,unzip))) ; for unpacking the source + (arguments + `(#:make-flags '("CC=gcc") + #:tests? #f ; No test suite + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'enter-source + (lambda _ (chdir "build/gmake.unix") #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (install-file "../../bin/release/premake4" + (string-append (assoc-ref outputs "out") "/bin")) + #t))))) + (synopsis "Portable software build tool") + (description "@code{premake4} is a command line utility that reads a +scripted definition of a software project and outputs @file{Makefile}s or +other lower-level build files.") + (home-page "https://premake.github.io") + (license license:bsd-3))) From ed419fa0c56e6ff3aa8bd8e8f100a81442c51e6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 10:36:21 +0200 Subject: [PATCH 0315/1227] vm: Add a type and associated gexp compiler. * gnu/system/vm.scm (system-qemu-image/shared-store-script): Add #:options parameter and honor it. (): New record type. (virtual-machine): New macro. (port-forwardings->qemu-options, virtual-machine-compiler): New procedures. --- gnu/system/vm.scm | 70 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 67 insertions(+), 3 deletions(-) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 6f979aee43..90d29b0783 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -68,7 +68,10 @@ system-qemu-image/shared-store system-qemu-image/shared-store-script - system-disk-image)) + system-disk-image + + virtual-machine + virtual-machine?)) ;;; Commentary: @@ -581,7 +584,8 @@ with '-virtfs' options for the host file systems listed in SHARED-FS." full-boot? (disk-image-size (* (if full-boot? 500 70) - (expt 2 20)))) + (expt 2 20))) + (options '())) "Return a derivation that builds a script to run a virtual machine image of OS that shares its store with the host. The virtual machine runs with MEMORY-SIZE MiB of memory. @@ -614,7 +618,8 @@ it is mostly useful when FULL-BOOT? is true." #$@(common-qemu-options image (map file-system-mapping-source (cons %store-mapping mappings))) - "-m " (number->string #$memory-size))) + "-m " (number->string #$memory-size) + #$@options)) (define builder #~(call-with-output-file #$output @@ -626,4 +631,63 @@ it is mostly useful when FULL-BOOT? is true." (gexp->derivation "run-vm.sh" builder))) + +;;; +;;; High-level abstraction. +;;; + +(define-record-type* %virtual-machine + make-virtual-machine + virtual-machine? + (operating-system virtual-machine-operating-system) ; + (qemu virtual-machine-qemu ; + (default qemu)) + (graphic? virtual-machine-graphic? ;Boolean + (default #f)) + (memory-size virtual-machine-memory-size ;integer (MiB) + (default 256)) + (port-forwardings virtual-machine-port-forwardings ;list of integer pairs + (default '()))) + +(define-syntax virtual-machine + (syntax-rules () + "Declare a virtual machine running the specified OS, with the given +options." + ((_ os) ;shortcut + (%virtual-machine (operating-system os))) + ((_ fields ...) + (%virtual-machine fields ...)))) + +(define (port-forwardings->qemu-options forwardings) + "Return the QEMU option for the given port FORWARDINGS as a string, where +FORWARDINGS is a list of host-port/guest-port pairs." + (string-join + (map (match-lambda + ((host-port . guest-port) + (string-append "hostfwd=tcp::" + (number->string host-port) + "-:" (number->string guest-port)))) + forwardings) + ",")) + +(define-gexp-compiler (virtual-machine-compiler (vm ) + system target) + ;; XXX: SYSTEM and TARGET are ignored. + (match vm + (($ os qemu graphic? memory-size ()) + (system-qemu-image/shared-store-script os + #:qemu qemu + #:graphic? graphic? + #:memory-size memory-size)) + (($ os qemu graphic? memory-size forwardings) + (let ((options + `("-net" ,(string-append + "user," + (port-forwardings->qemu-options forwardings))))) + (system-qemu-image/shared-store-script os + #:qemu qemu + #:graphic? graphic? + #:memory-size memory-size + #:options options))))) + ;;; vm.scm ends here From 8b113790fa3bfd2300c737901ba161f079fedbdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 18 Jul 2017 10:41:51 +0200 Subject: [PATCH 0316/1227] tests: Use 'virtual-machine' records instead of monadic procedures. * gnu/tests/base.scm (%test-basic-os): Use 'let*' instead of 'mlet*' and 'virtual-machine' instead of 'system-qemu-image/shared-store-script'. (run-mcron-test): Likewise. (run-nss-mdns-test): Likewise. * gnu/tests/dict.scm (run-dicod-test): Likewise. * gnu/tests/mail.scm (run-opensmtpd-test): Likewise. (run-exim-test): Likewise. * gnu/tests/messaging.scm (run-xmpp-test): Likewise. * gnu/tests/networking.scm (run-inetd-test): Likewise. * gnu/tests/nfs.scm (run-nfs-test): Likewise. * gnu/tests/ssh.scm (run-ssh-test): Likewise. * gnu/tests/web.scm (run-nginx-test): Likewise. --- gnu/tests/base.scm | 264 +++++++++++++++--------------- gnu/tests/dict.scm | 145 +++++++++-------- gnu/tests/mail.scm | 342 +++++++++++++++++++-------------------- gnu/tests/messaging.scm | 172 ++++++++++---------- gnu/tests/networking.scm | 95 +++++------ gnu/tests/nfs.scm | 120 +++++++------- gnu/tests/ssh.scm | 240 +++++++++++++-------------- gnu/tests/web.scm | 107 ++++++------ 8 files changed, 744 insertions(+), 741 deletions(-) diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 8389b67f68..6132aa96ef 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -34,7 +34,6 @@ #:use-module (gnu packages package-management) #:use-module (guix gexp) #:use-module (guix store) - #:use-module (guix monads) #:use-module (guix packages) #:use-module (srfi srfi-1) #:export (run-basic-test @@ -393,17 +392,16 @@ info --version") "Instrument %SIMPLE-OS, run it in a VM, and run a series of basic functionality tests.") (value - (mlet* %store-monad ((os -> (marionette-operating-system - %simple-os - #:imported-modules '((gnu services herd) - (guix combinators)))) - (run (system-qemu-image/shared-store-script - os #:graphic? #f))) + (let* ((os (marionette-operating-system + %simple-os + #:imported-modules '((gnu services herd) + (guix combinators)))) + (vm (virtual-machine os))) ;; XXX: Add call to 'virtualized-operating-system' to get the exact same ;; set of services as the OS produced by ;; 'system-qemu-image/shared-store-script'. (run-basic-test (virtualized-operating-system os '()) - #~(list #$run)))))) + #~(list #$vm)))))) ;;; @@ -430,60 +428,60 @@ functionality tests.") (mcron-service (list job1 job2 job3))))) (define (run-mcron-test name) - (mlet* %store-monad ((os -> (marionette-operating-system - %mcron-os - #:imported-modules '((gnu services herd) - (guix combinators)))) - (command (system-qemu-image/shared-store-script - os #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (gnu build marionette) - (srfi srfi-64) - (ice-9 match)) + (define os + (marionette-operating-system + %mcron-os + #:imported-modules '((gnu services herd) + (guix combinators)))) - (define marionette - (make-marionette (list #$command))) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-64) + (ice-9 match)) - (mkdir #$output) - (chdir #$output) + (define marionette + (make-marionette (list #$(virtual-machine os)))) - (test-begin "mcron") + (mkdir #$output) + (chdir #$output) - (test-eq "service running" - 'running! - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'mcron) - 'running!) - marionette)) + (test-begin "mcron") - ;; Make sure root's mcron job runs, has its cwd set to "/root", and - ;; runs with the right UID/GID. - (test-equal "root's job" - '(0 0) - (wait-for-file "/root/witness" marionette)) + (test-eq "service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'mcron) + 'running!) + marionette)) - ;; Likewise for Alice's job. We cannot know what its GID is since - ;; it's chosen by 'groupadd', but it's strictly positive. - (test-assert "alice's job" - (match (wait-for-file "/home/alice/witness" marionette) - ((1000 gid) - (>= gid 100)))) + ;; Make sure root's mcron job runs, has its cwd set to "/root", and + ;; runs with the right UID/GID. + (test-equal "root's job" + '(0 0) + (wait-for-file "/root/witness" marionette)) - ;; Last, the job that uses a command; allows us to test whether - ;; $PATH is sane. (Note that 'marionette-eval' stringifies objects - ;; that don't have a read syntax, hence the string.) - (test-equal "root's job with command" - "#" - (wait-for-file "/root/witness-touch" marionette)) + ;; Likewise for Alice's job. We cannot know what its GID is since + ;; it's chosen by 'groupadd', but it's strictly positive. + (test-assert "alice's job" + (match (wait-for-file "/home/alice/witness" marionette) + ((1000 gid) + (>= gid 100)))) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + ;; Last, the job that uses a command; allows us to test whether + ;; $PATH is sane. (Note that 'marionette-eval' stringifies objects + ;; that don't have a read syntax, hence the string.) + (test-equal "root's job with command" + "#" + (wait-for-file "/root/witness-touch" marionette)) - (gexp->derivation name test))) + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation name test)) (define %test-mcron (system-test @@ -526,102 +524,102 @@ functionality tests.") ;; *after* nscd. Failing to do that, libc will try to connect to nscd, ;; fail, then never try again (see '__nss_not_use_nscd_hosts' in libc), ;; leading to '.local' resolution failures. - (mlet* %store-monad ((os -> (marionette-operating-system - %avahi-os - #:requirements '(nscd) - #:imported-modules '((gnu services herd) - (guix combinators)))) - (run (system-qemu-image/shared-store-script - os #:graphic? #f))) - (define mdns-host-name - (string-append (operating-system-host-name os) - ".local")) + (define os + (marionette-operating-system + %avahi-os + #:requirements '(nscd) + #:imported-modules '((gnu services herd) + (guix combinators)))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (gnu build marionette) - (srfi srfi-1) - (srfi srfi-64) - (ice-9 match)) + (define mdns-host-name + (string-append (operating-system-host-name os) + ".local")) - (define marionette - (make-marionette (list #$run))) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-1) + (srfi srfi-64) + (ice-9 match)) - (mkdir #$output) - (chdir #$output) + (define marionette + (make-marionette (list #$(virtual-machine os)))) - (test-begin "avahi") + (mkdir #$output) + (chdir #$output) - (test-assert "wait for services" - (marionette-eval - '(begin - (use-modules (gnu services herd)) + (test-begin "avahi") - (start-service 'nscd) + (test-assert "wait for services" + (marionette-eval + '(begin + (use-modules (gnu services herd)) - ;; XXX: Work around a race condition in nscd: nscd creates its - ;; PID file before it is listening on its socket. - (let ((sock (socket PF_UNIX SOCK_STREAM 0))) - (let try () - (catch 'system-error - (lambda () - (connect sock AF_UNIX "/var/run/nscd/socket") - (close-port sock) - (format #t "nscd is ready~%")) - (lambda args - (format #t "waiting for nscd...~%") - (usleep 500000) - (try))))) + (start-service 'nscd) - ;; Wait for the other useful things. - (start-service 'avahi-daemon) - (start-service 'networking) + ;; XXX: Work around a race condition in nscd: nscd creates its + ;; PID file before it is listening on its socket. + (let ((sock (socket PF_UNIX SOCK_STREAM 0))) + (let try () + (catch 'system-error + (lambda () + (connect sock AF_UNIX "/var/run/nscd/socket") + (close-port sock) + (format #t "nscd is ready~%")) + (lambda args + (format #t "waiting for nscd...~%") + (usleep 500000) + (try))))) - #t) - marionette)) + ;; Wait for the other useful things. + (start-service 'avahi-daemon) + (start-service 'networking) - (test-equal "avahi-resolve-host-name" - 0 - (marionette-eval - '(system* - "/run/current-system/profile/bin/avahi-resolve-host-name" - "-v" #$mdns-host-name) - marionette)) + #t) + marionette)) - (test-equal "avahi-browse" - 0 - (marionette-eval - '(system* "avahi-browse" "-avt") - marionette)) + (test-equal "avahi-resolve-host-name" + 0 + (marionette-eval + '(system* + "/run/current-system/profile/bin/avahi-resolve-host-name" + "-v" #$mdns-host-name) + marionette)) - (test-assert "getaddrinfo .local" - ;; Wait for the 'avahi-daemon' service and perform a resolution. - (match (marionette-eval - '(getaddrinfo #$mdns-host-name) - marionette) - (((? vector? addrinfos) ..1) - (pk 'getaddrinfo addrinfos) - (and (any (lambda (ai) - (= AF_INET (addrinfo:fam ai))) - addrinfos) - (any (lambda (ai) - (= AF_INET6 (addrinfo:fam ai))) - addrinfos))))) + (test-equal "avahi-browse" + 0 + (marionette-eval + '(system* "avahi-browse" "-avt") + marionette)) - (test-assert "gethostbyname .local" - (match (pk 'gethostbyname - (marionette-eval '(gethostbyname #$mdns-host-name) - marionette)) - ((? vector? result) - (and (string=? (hostent:name result) #$mdns-host-name) - (= (hostent:addrtype result) AF_INET))))) + (test-assert "getaddrinfo .local" + ;; Wait for the 'avahi-daemon' service and perform a resolution. + (match (marionette-eval + '(getaddrinfo #$mdns-host-name) + marionette) + (((? vector? addrinfos) ..1) + (pk 'getaddrinfo addrinfos) + (and (any (lambda (ai) + (= AF_INET (addrinfo:fam ai))) + addrinfos) + (any (lambda (ai) + (= AF_INET6 (addrinfo:fam ai))) + addrinfos))))) + + (test-assert "gethostbyname .local" + (match (pk 'gethostbyname + (marionette-eval '(gethostbyname #$mdns-host-name) + marionette)) + ((? vector? result) + (and (string=? (hostent:name result) #$mdns-host-name) + (= (hostent:addrtype result) AF_INET))))) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) - (gexp->derivation "nss-mdns" test))) + (gexp->derivation "nss-mdns" test)) (define %test-nss-mdns (system-test diff --git a/gnu/tests/dict.scm b/gnu/tests/dict.scm index 16b6edbd9e..b9c741e3e0 100644 --- a/gnu/tests/dict.scm +++ b/gnu/tests/dict.scm @@ -27,7 +27,6 @@ #:use-module (gnu packages wordnet) #:use-module (guix gexp) #:use-module (guix store) - #:use-module (guix monads) #:use-module (guix packages) #:use-module (guix modules) #:export (%test-dicod)) @@ -54,86 +53,90 @@ (define* (run-dicod-test) "Run tests of 'dicod-service-type'." - (mlet* %store-monad ((os -> (marionette-operating-system - %dicod-os - #:imported-modules - (source-module-closure '((gnu services herd))))) - (command (system-qemu-image/shared-store-script - os #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (ice-9 rdelim) - (ice-9 regex) - (srfi srfi-64) - (gnu build marionette)) - (define marionette - ;; Forward the guest's DICT port to local port 8000. - (make-marionette (list #$command "-net" - "user,hostfwd=tcp::8000-:2628"))) + (define os + (marionette-operating-system + %dicod-os + #:imported-modules + (source-module-closure '((gnu services herd))))) - (define %dico-socket - (socket PF_INET SOCK_STREAM 0)) + (define vm + (virtual-machine + (operating-system os) + (port-forwardings '((8000 . 2628))))) - (mkdir #$output) - (chdir #$output) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (ice-9 rdelim) + (ice-9 regex) + (srfi srfi-64) + (gnu build marionette)) + (define marionette + ;; Forward the guest's DICT port to local port 8000. + (make-marionette (list #$vm))) - (test-begin "dicod") + (define %dico-socket + (socket PF_INET SOCK_STREAM 0)) - ;; Wait for the service to be started. - (test-eq "service is running" - 'running! - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'dicod) - 'running!) - marionette)) + (mkdir #$output) + (chdir #$output) - ;; Wait until dicod is actually listening. - ;; TODO: Use a PID file instead. - (test-assert "connect inside" - (marionette-eval - '(begin - (use-modules (ice-9 rdelim)) - (let ((sock (socket PF_INET SOCK_STREAM 0))) - (let loop ((i 0)) - (pk 'try i) - (catch 'system-error - (lambda () - (connect sock AF_INET INADDR_LOOPBACK 2628)) - (lambda args - (pk 'connection-error args) - (when (< i 20) - (sleep 1) - (loop (+ 1 i)))))) - (read-line sock 'concat))) - marionette)) + (test-begin "dicod") - (test-assert "connect" - (let ((addr (make-socket-address AF_INET INADDR_LOOPBACK 8000))) - (connect %dico-socket addr) - (read-line %dico-socket 'concat))) + ;; Wait for the service to be started. + (test-eq "service is running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'dicod) + 'running!) + marionette)) - (test-equal "CLIENT" - "250 ok\r\n" - (begin - (display "CLIENT \"GNU Guile\"\r\n" %dico-socket) - (read-line %dico-socket 'concat))) + ;; Wait until dicod is actually listening. + ;; TODO: Use a PID file instead. + (test-assert "connect inside" + (marionette-eval + '(begin + (use-modules (ice-9 rdelim)) + (let ((sock (socket PF_INET SOCK_STREAM 0))) + (let loop ((i 0)) + (pk 'try i) + (catch 'system-error + (lambda () + (connect sock AF_INET INADDR_LOOPBACK 2628)) + (lambda args + (pk 'connection-error args) + (when (< i 20) + (sleep 1) + (loop (+ 1 i)))))) + (read-line sock 'concat))) + marionette)) - (test-assert "DEFINE" - (begin - (display "DEFINE ! hello\r\n" %dico-socket) - (display "QUIT\r\n" %dico-socket) - (let ((result (read-string %dico-socket))) - (and (string-contains result "gcide") - (string-contains result "hello") - result)))) + (test-assert "connect" + (let ((addr (make-socket-address AF_INET INADDR_LOOPBACK 8000))) + (connect %dico-socket addr) + (read-line %dico-socket 'concat))) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (test-equal "CLIENT" + "250 ok\r\n" + (begin + (display "CLIENT \"GNU Guile\"\r\n" %dico-socket) + (read-line %dico-socket 'concat))) - (gexp->derivation "dicod" test))) + (test-assert "DEFINE" + (begin + (display "DEFINE ! hello\r\n" %dico-socket) + (display "QUIT\r\n" %dico-socket) + (let ((result (read-string %dico-socket))) + (and (string-contains result "gcide") + (string-contains result "hello") + result)))) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "dicod" test)) (define %test-dicod (system-test diff --git a/gnu/tests/mail.scm b/gnu/tests/mail.scm index 247f4f667f..312df9b1cd 100644 --- a/gnu/tests/mail.scm +++ b/gnu/tests/mail.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Sou Bunnbu ;;; Copyright © 2017 Carlo Zancanaro +;;; Copyright © 2017 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,7 +26,6 @@ #:use-module (gnu services mail) #:use-module (gnu services networking) #:use-module (guix gexp) - #:use-module (guix monads) #:use-module (guix store) #:use-module (ice-9 ftw) #:export (%test-opensmtpd @@ -44,105 +44,105 @@ accept from any for local deliver to mbox (define (run-opensmtpd-test) "Return a test of an OS running OpenSMTPD service." - (mlet* %store-monad ((command (system-qemu-image/shared-store-script - (marionette-operating-system - %opensmtpd-os - #:imported-modules '((gnu services herd))) - #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (rnrs base) - (srfi srfi-64) - (ice-9 rdelim) - (ice-9 regex) - (gnu build marionette)) + (define vm + (virtual-machine + (operating-system (marionette-operating-system + %opensmtpd-os + #:imported-modules '((gnu services herd)))) + (port-forwardings '((1025 . 25))))) - (define marionette - (make-marionette - ;; Enable TCP forwarding of the guest's port 25. - '(#$command "-net" "user,hostfwd=tcp::1025-:25"))) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (rnrs base) + (srfi srfi-64) + (ice-9 rdelim) + (ice-9 regex) + (gnu build marionette)) - (define (read-reply-code port) - "Read a SMTP reply from PORT and return its reply code." - (let* ((line (read-line port)) - (mo (string-match "([0-9]+)([ -]).*" line)) - (code (string->number (match:substring mo 1))) - (finished? (string= " " (match:substring mo 2)))) - (if finished? - code - (read-reply-code port)))) + (define marionette + (make-marionette '(#$vm))) - (mkdir #$output) - (chdir #$output) + (define (read-reply-code port) + "Read a SMTP reply from PORT and return its reply code." + (let* ((line (read-line port)) + (mo (string-match "([0-9]+)([ -]).*" line)) + (code (string->number (match:substring mo 1))) + (finished? (string= " " (match:substring mo 2)))) + (if finished? + code + (read-reply-code port)))) - (test-begin "opensmptd") + (mkdir #$output) + (chdir #$output) - (test-assert "service is running" - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'smtpd) - #t) - marionette)) + (test-begin "opensmptd") - (test-assert "mbox is empty" - (marionette-eval - '(and (file-exists? "/var/mail") - (not (file-exists? "/var/mail/root"))) - marionette)) + (test-assert "service is running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'smtpd) + #t) + marionette)) - (test-eq "accept an email" - #t - (let* ((smtp (socket AF_INET SOCK_STREAM 0)) - (addr (make-socket-address AF_INET INADDR_LOOPBACK 1025))) - (connect smtp addr) - ;; Be greeted. - (read-reply-code smtp) ;220 - ;; Greet the server. - (write-line "EHLO somehost" smtp) - (read-reply-code smtp) ;250 - ;; Set sender email. - (write-line "MAIL FROM: " smtp) - (read-reply-code smtp) ;250 - ;; Set recipient email. - (write-line "RCPT TO: " smtp) - (read-reply-code smtp) ;250 - ;; Send message. - (write-line "DATA" smtp) - (read-reply-code smtp) ;354 - (write-line "Subject: Hello" smtp) - (newline smtp) - (write-line "Nice to meet you!" smtp) - (write-line "." smtp) - (read-reply-code smtp) ;250 - ;; Say goodbye. - (write-line "QUIT" smtp) - (read-reply-code smtp) ;221 - (close smtp) - #t)) + (test-assert "mbox is empty" + (marionette-eval + '(and (file-exists? "/var/mail") + (not (file-exists? "/var/mail/root"))) + marionette)) - (test-assert "mail arrived" - (marionette-eval - '(begin - (use-modules (ice-9 popen) - (ice-9 rdelim)) + (test-eq "accept an email" + #t + (let* ((smtp (socket AF_INET SOCK_STREAM 0)) + (addr (make-socket-address AF_INET INADDR_LOOPBACK 1025))) + (connect smtp addr) + ;; Be greeted. + (read-reply-code smtp) ;220 + ;; Greet the server. + (write-line "EHLO somehost" smtp) + (read-reply-code smtp) ;250 + ;; Set sender email. + (write-line "MAIL FROM: " smtp) + (read-reply-code smtp) ;250 + ;; Set recipient email. + (write-line "RCPT TO: " smtp) + (read-reply-code smtp) ;250 + ;; Send message. + (write-line "DATA" smtp) + (read-reply-code smtp) ;354 + (write-line "Subject: Hello" smtp) + (newline smtp) + (write-line "Nice to meet you!" smtp) + (write-line "." smtp) + (read-reply-code smtp) ;250 + ;; Say goodbye. + (write-line "QUIT" smtp) + (read-reply-code smtp) ;221 + (close smtp) + #t)) - (define (queue-empty?) - (eof-object? - (read-line - (open-input-pipe "smtpctl show queue")))) + (test-assert "mail arrived" + (marionette-eval + '(begin + (use-modules (ice-9 popen) + (ice-9 rdelim)) - (let wait () - (if (queue-empty?) - (file-exists? "/var/mail/root") - (begin (sleep 1) (wait))))) - marionette)) + (define (queue-empty?) + (eof-object? + (read-line + (open-input-pipe "smtpctl show queue")))) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (let wait () + (if (queue-empty?) + (file-exists? "/var/mail/root") + (begin (sleep 1) (wait))))) + marionette)) - (gexp->derivation "opensmtpd-test" test))) + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "opensmtpd-test" test)) (define %test-opensmtpd (system-test @@ -179,100 +179,100 @@ acl_check_data: (define (run-exim-test) "Return a test of an OS running an Exim service." - (mlet* %store-monad ((command (system-qemu-image/shared-store-script - (marionette-operating-system - %exim-os - #:imported-modules '((gnu services herd))) - #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette) - (ice-9 ftw)) - #~(begin - (use-modules (rnrs base) - (srfi srfi-64) - (ice-9 ftw) - (ice-9 rdelim) - (ice-9 regex) - (gnu build marionette)) + (define vm + (virtual-machine + (operating-system (marionette-operating-system + %exim-os + #:imported-modules '((gnu services herd)))) + (port-forwardings '((1025 . 25))))) - (define marionette - (make-marionette - ;; Enable TCP forwarding of the guest's port 25. - '(#$command "-net" "user,hostfwd=tcp::1025-:25"))) + (define test + (with-imported-modules '((gnu build marionette) + (ice-9 ftw)) + #~(begin + (use-modules (rnrs base) + (srfi srfi-64) + (ice-9 ftw) + (ice-9 rdelim) + (ice-9 regex) + (gnu build marionette)) - (define (read-reply-code port) - "Read a SMTP reply from PORT and return its reply code." - (let* ((line (read-line port)) - (mo (string-match "([0-9]+)([ -]).*" line)) - (code (string->number (match:substring mo 1))) - (finished? (string= " " (match:substring mo 2)))) - (if finished? - code - (read-reply-code port)))) + (define marionette + (make-marionette '(#$vm))) - (define smtp (socket AF_INET SOCK_STREAM 0)) - (define addr (make-socket-address AF_INET INADDR_LOOPBACK 1025)) + (define (read-reply-code port) + "Read a SMTP reply from PORT and return its reply code." + (let* ((line (read-line port)) + (mo (string-match "([0-9]+)([ -]).*" line)) + (code (string->number (match:substring mo 1))) + (finished? (string= " " (match:substring mo 2)))) + (if finished? + code + (read-reply-code port)))) - (mkdir #$output) - (chdir #$output) + (define smtp (socket AF_INET SOCK_STREAM 0)) + (define addr (make-socket-address AF_INET INADDR_LOOPBACK 1025)) - (test-begin "exim") + (mkdir #$output) + (chdir #$output) - (test-assert "service is running" - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'exim) - #t) - marionette)) + (test-begin "exim") - (sleep 1) ;; give the service time to start talking + (test-assert "service is running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'exim) + #t) + marionette)) - (connect smtp addr) - ;; Be greeted. - (test-eq "greeting received" - 220 (read-reply-code smtp)) - ;; Greet the server. - (write-line "EHLO somehost" smtp) - (test-eq "greeting successful" - 250 (read-reply-code smtp)) - ;; Set sender email. - (write-line "MAIL FROM: test@example.com" smtp) - (test-eq "sender set" - 250 (read-reply-code smtp)) ;250 - ;; Set recipient email. - (write-line "RCPT TO: root@komputilo" smtp) - (test-eq "recipient set" - 250 (read-reply-code smtp)) ;250 - ;; Send message. - (write-line "DATA" smtp) - (test-eq "data begun" - 354 (read-reply-code smtp)) ;354 - (write-line "Subject: Hello" smtp) - (newline smtp) - (write-line "Nice to meet you!" smtp) - (write-line "." smtp) - (test-eq "message sent" - 250 (read-reply-code smtp)) ;250 - ;; Say goodbye. - (write-line "QUIT" smtp) - (test-eq "quit successful" - 221 (read-reply-code smtp)) ;221 - (close smtp) + (sleep 1) ;; give the service time to start talking - (test-eq "the email is received" - 1 - (marionette-eval - '(begin - (use-modules (ice-9 ftw)) - (length (scandir "/var/spool/exim/msglog" - (lambda (x) (not (string-prefix? "." x)))))) - marionette)) + (connect smtp addr) + ;; Be greeted. + (test-eq "greeting received" + 220 (read-reply-code smtp)) + ;; Greet the server. + (write-line "EHLO somehost" smtp) + (test-eq "greeting successful" + 250 (read-reply-code smtp)) + ;; Set sender email. + (write-line "MAIL FROM: test@example.com" smtp) + (test-eq "sender set" + 250 (read-reply-code smtp)) ;250 + ;; Set recipient email. + (write-line "RCPT TO: root@komputilo" smtp) + (test-eq "recipient set" + 250 (read-reply-code smtp)) ;250 + ;; Send message. + (write-line "DATA" smtp) + (test-eq "data begun" + 354 (read-reply-code smtp)) ;354 + (write-line "Subject: Hello" smtp) + (newline smtp) + (write-line "Nice to meet you!" smtp) + (write-line "." smtp) + (test-eq "message sent" + 250 (read-reply-code smtp)) ;250 + ;; Say goodbye. + (write-line "QUIT" smtp) + (test-eq "quit successful" + 221 (read-reply-code smtp)) ;221 + (close smtp) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (test-eq "the email is received" + 1 + (marionette-eval + '(begin + (use-modules (ice-9 ftw)) + (length (scandir "/var/spool/exim/msglog" + (lambda (x) (not (string-prefix? "." x)))))) + marionette)) - (gexp->derivation "exim-test" test))) + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "exim-test" test)) (define %test-exim (system-test diff --git a/gnu/tests/messaging.scm b/gnu/tests/messaging.scm index b76b8e8434..0ba0c839de 100644 --- a/gnu/tests/messaging.scm +++ b/gnu/tests/messaging.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,108 +27,109 @@ #:use-module (gnu packages messaging) #:use-module (guix gexp) #:use-module (guix store) - #:use-module (guix monads) #:export (%test-prosody)) (define (run-xmpp-test name xmpp-service pid-file create-account) "Run a test of an OS running XMPP-SERVICE, which writes its PID to PID-FILE." - (mlet* %store-monad ((os -> (marionette-operating-system - (simple-operating-system (dhcp-client-service) - xmpp-service) - #:imported-modules '((gnu services herd)))) - (command (system-qemu-image/shared-store-script - os #:graphic? #f)) - (username -> "alice") - (server -> "localhost") - (jid -> (string-append username "@" server)) - (password -> "correct horse battery staple") - (port -> 15222) - (message -> "hello world") - (witness -> "/tmp/freetalk-witness")) + (define os + (marionette-operating-system + (simple-operating-system (dhcp-client-service) + xmpp-service) + #:imported-modules '((gnu services herd)))) - (define script.ft - (scheme-file - "script.ft" - #~(begin - (define (handle-received-message time from nickname message) - (define (touch file-name) - (call-with-output-file file-name (const #t))) - (when (equal? message #$message) - (touch #$witness))) - (add-hook! ft-message-receive-hook handle-received-message) + (define port 15222) - (ft-set-jid! #$jid) - (ft-set-password! #$password) - (ft-set-server! #$server) - (ft-set-port! #$port) - (ft-set-sslconn! #f) - (ft-connect-blocking) - (ft-send-message #$jid #$message) + (define vm + (virtual-machine + (operating-system os) + (port-forwardings `((,port . 5222))))) - (ft-set-daemon) - (ft-main-loop)))) + (define username "alice") + (define server "localhost") + (define jid (string-append username "@" server)) + (define password "correct horse battery staple") + (define message "hello world") + (define witness "/tmp/freetalk-witness") - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (gnu build marionette) - (srfi srfi-64)) + (define script.ft + (scheme-file + "script.ft" + #~(begin + (define (handle-received-message time from nickname message) + (define (touch file-name) + (call-with-output-file file-name (const #t))) + (when (equal? message #$message) + (touch #$witness))) + (add-hook! ft-message-receive-hook handle-received-message) - (define marionette - ;; Enable TCP forwarding of the guest's port 5222. - (make-marionette (list #$command "-net" - (string-append "user,hostfwd=tcp::" - (number->string #$port) - "-:5222")))) + (ft-set-jid! #$jid) + (ft-set-password! #$password) + (ft-set-server! #$server) + (ft-set-port! #$port) + (ft-set-sslconn! #f) + (ft-connect-blocking) + (ft-send-message #$jid #$message) - (define (host-wait-for-file file) - ;; Wait until FILE exists in the host. - (let loop ((i 60)) - (cond ((file-exists? file) - #t) - ((> i 0) - (begin - (sleep 1)) - (loop (- i 1))) - (else - (error "file didn't show up" file))))) + (ft-set-daemon) + (ft-main-loop)))) - (mkdir #$output) - (chdir #$output) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-64)) - (test-begin "xmpp") + (define marionette + (make-marionette (list #$vm))) - ;; Wait for XMPP service to be up and running. - (test-eq "service running" - 'running! - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'xmpp-daemon) - 'running!) - marionette)) + (define (host-wait-for-file file) + ;; Wait until FILE exists in the host. + (let loop ((i 60)) + (cond ((file-exists? file) + #t) + ((> i 0) + (begin + (sleep 1)) + (loop (- i 1))) + (else + (error "file didn't show up" file))))) - ;; Check XMPP service's PID. - (test-assert "service process id" - (let ((pid (number->string (wait-for-file #$pid-file - marionette)))) - (marionette-eval `(file-exists? (string-append "/proc/" ,pid)) - marionette))) + (mkdir #$output) + (chdir #$output) - ;; Alice sends an XMPP message to herself, with Freetalk. - (test-assert "client-to-server communication" - (let ((freetalk-bin (string-append #$freetalk "/bin/freetalk"))) - (marionette-eval '(system* #$create-account #$jid #$password) - marionette) - ;; Freetalk requires write access to $HOME. - (setenv "HOME" "/tmp") - (system* freetalk-bin "-s" #$script.ft) - (host-wait-for-file #$witness))) + (test-begin "xmpp") - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + ;; Wait for XMPP service to be up and running. + (test-eq "service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'xmpp-daemon) + 'running!) + marionette)) - (gexp->derivation name test))) + ;; Check XMPP service's PID. + (test-assert "service process id" + (let ((pid (number->string (wait-for-file #$pid-file + marionette)))) + (marionette-eval `(file-exists? (string-append "/proc/" ,pid)) + marionette))) + + ;; Alice sends an XMPP message to herself, with Freetalk. + (test-assert "client-to-server communication" + (let ((freetalk-bin (string-append #$freetalk "/bin/freetalk"))) + (marionette-eval '(system* #$create-account #$jid #$password) + marionette) + ;; Freetalk requires write access to $HOME. + (setenv "HOME" "/tmp") + (system* freetalk-bin "-s" #$script.ft) + (host-wait-for-file #$witness))) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation name test)) (define %create-prosody-account (program-file diff --git a/gnu/tests/networking.scm b/gnu/tests/networking.scm index cfcb490874..aeee105a1c 100644 --- a/gnu/tests/networking.scm +++ b/gnu/tests/networking.scm @@ -74,60 +74,61 @@ done" )))))))))) (define* (run-inetd-test) "Run tests in %INETD-OS, where the inetd service provides an echo service on port 7, and a dict service on port 2628." - (mlet* %store-monad ((os -> (marionette-operating-system %inetd-os)) - (command (system-qemu-image/shared-store-script - os #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (ice-9 rdelim) - (srfi srfi-64) - (gnu build marionette)) - (define marionette - ;; Forward guest ports 7 and 2628 to host ports 8007 and 8628. - (make-marionette (list #$command "-net" - (string-append - "user" - ",hostfwd=tcp::8007-:7" - ",hostfwd=tcp::8628-:2628")))) + (define os + (marionette-operating-system %inetd-os)) - (mkdir #$output) - (chdir #$output) + (define vm + (virtual-machine + (operating-system os) + (port-forwardings `((8007 . 7) + (8628 . 2628))))) - (test-begin "inetd") + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (ice-9 rdelim) + (srfi srfi-64) + (gnu build marionette)) + (define marionette + (make-marionette (list #$vm))) - ;; Make sure the PID file is created. - (test-assert "PID file" - (marionette-eval - '(file-exists? "/var/run/inetd.pid") - marionette)) + (mkdir #$output) + (chdir #$output) - ;; Test the echo service. - (test-equal "echo response" - "Hello, Guix!" - (let ((echo (socket PF_INET SOCK_STREAM 0)) - (addr (make-socket-address AF_INET INADDR_LOOPBACK 8007))) - (connect echo addr) - (display "Hello, Guix!\n" echo) - (let ((response (read-line echo))) - (close echo) - response))) + (test-begin "inetd") - ;; Test the dict service - (test-equal "dict response" - "GNU Guix is a package management tool for the GNU system." - (let ((dict (socket PF_INET SOCK_STREAM 0)) - (addr (make-socket-address AF_INET INADDR_LOOPBACK 8628))) - (connect dict addr) - (display "DEFINE Guix\n" dict) - (let ((response (read-line dict))) - (close dict) - response))) + ;; Make sure the PID file is created. + (test-assert "PID file" + (marionette-eval + '(file-exists? "/var/run/inetd.pid") + marionette)) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + ;; Test the echo service. + (test-equal "echo response" + "Hello, Guix!" + (let ((echo (socket PF_INET SOCK_STREAM 0)) + (addr (make-socket-address AF_INET INADDR_LOOPBACK 8007))) + (connect echo addr) + (display "Hello, Guix!\n" echo) + (let ((response (read-line echo))) + (close echo) + response))) - (gexp->derivation "inetd-test" test))) + ;; Test the dict service + (test-equal "dict response" + "GNU Guix is a package management tool for the GNU system." + (let ((dict (socket PF_INET SOCK_STREAM 0)) + (addr (make-socket-address AF_INET INADDR_LOOPBACK 8628))) + (connect dict addr) + (display "DEFINE Guix\n" dict) + (let ((response (read-line dict))) + (close dict) + response))) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "inetd-test" test)) (define %test-inetd (system-test diff --git a/gnu/tests/nfs.scm b/gnu/tests/nfs.scm index 9e1ac1d55a..2e666b2c08 100644 --- a/gnu/tests/nfs.scm +++ b/gnu/tests/nfs.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2016, 2017 Ludovic Courtès ;;; Copyright © 2016 John Darrington ;;; Copyright © 2017 Mathieu Othacehe ;;; @@ -55,75 +55,75 @@ (define (run-nfs-test name socket) "Run a test of an OS running RPC-SERVICE, which should create SOCKET." - (mlet* %store-monad ((os -> (marionette-operating-system - %base-os - #:imported-modules '((gnu services herd) - (guix combinators)))) - (command (system-qemu-image/shared-store-script - os #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (gnu build marionette) - (srfi srfi-64)) + (define os + (marionette-operating-system + %base-os + #:imported-modules '((gnu services herd) + (guix combinators)))) - (define marionette - (make-marionette (list #$command))) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-64)) - (define (wait-for-socket file) - ;; Wait until SOCKET exists in the guest - (marionette-eval - `(let loop ((i 10)) - (cond ((and (file-exists? ,file) - (eq? 'socket (stat:type (stat ,file)))) - #t) - ((> i 0) - (sleep 1) - (loop (- i 1))) - (else - (error "Socket didn't show up: " ,file)))) - marionette)) + (define marionette + (make-marionette (list #$(virtual-machine os)))) - (mkdir #$output) - (chdir #$output) + (define (wait-for-socket file) + ;; Wait until SOCKET exists in the guest + (marionette-eval + `(let loop ((i 10)) + (cond ((and (file-exists? ,file) + (eq? 'socket (stat:type (stat ,file)))) + #t) + ((> i 0) + (sleep 1) + (loop (- i 1))) + (else + (error "Socket didn't show up: " ,file)))) + marionette)) - (test-begin "rpc-daemon") + (mkdir #$output) + (chdir #$output) - ;; Wait for the rpcbind daemon to be up and running. - (test-eq "RPC service running" - 'running! - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'rpcbind-daemon) - 'running!) - marionette)) + (test-begin "rpc-daemon") - ;; Check the socket file and that the service is still running. - (test-assert "RPC socket exists" - (and - (wait-for-socket #$socket) - (marionette-eval - '(begin - (use-modules (gnu services herd) - (srfi srfi-1)) + ;; Wait for the rpcbind daemon to be up and running. + (test-eq "RPC service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'rpcbind-daemon) + 'running!) + marionette)) - (live-service-running - (find (lambda (live) - (memq 'rpcbind-daemon - (live-service-provision live))) - (current-services)))) - marionette))) + ;; Check the socket file and that the service is still running. + (test-assert "RPC socket exists" + (and + (wait-for-socket #$socket) + (marionette-eval + '(begin + (use-modules (gnu services herd) + (srfi srfi-1)) - (test-assert "Probe RPC daemon" - (marionette-eval - '(zero? (system* "rpcinfo" "-p")) - marionette)) + (live-service-running + (find (lambda (live) + (memq 'rpcbind-daemon + (live-service-provision live))) + (current-services)))) + marionette))) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (test-assert "Probe RPC daemon" + (marionette-eval + '(zero? (system* "rpcinfo" "-p")) + marionette)) - (gexp->derivation name test))) + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation name test)) (define %test-nfs (system-test diff --git a/gnu/tests/ssh.scm b/gnu/tests/ssh.scm index 9c83a9cd48..05a8d35476 100644 --- a/gnu/tests/ssh.scm +++ b/gnu/tests/ssh.scm @@ -27,7 +27,6 @@ #:use-module (gnu packages ssh) #:use-module (guix gexp) #:use-module (guix store) - #:use-module (guix monads) #:export (%test-openssh %test-dropbear)) @@ -37,142 +36,143 @@ SSH-SERVICE must be configured to listen on port 22 and to allow for root and empty-password logins. When SFTP? is true, run an SFTP server test." - (mlet* %store-monad ((os -> (marionette-operating-system - (simple-operating-system - (dhcp-client-service) - ssh-service) - #:imported-modules '((gnu services herd) - (guix combinators)))) - (command (system-qemu-image/shared-store-script - os #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (eval-when (expand load eval) - ;; Prepare to use Guile-SSH. - (set! %load-path - (cons (string-append #+guile2.0-ssh "/share/guile/site/" - (effective-version)) - %load-path))) + (define os + (marionette-operating-system + (simple-operating-system (dhcp-client-service) ssh-service) + #:imported-modules '((gnu services herd) + (guix combinators)))) + (define vm + (virtual-machine + (operating-system os) + (port-forwardings '((2222 . 22))))) - (use-modules (gnu build marionette) - (srfi srfi-26) - (srfi srfi-64) - (ice-9 match) - (ssh session) - (ssh auth) - (ssh channel) - (ssh sftp)) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (eval-when (expand load eval) + ;; Prepare to use Guile-SSH. + (set! %load-path + (cons (string-append #+guile2.0-ssh "/share/guile/site/" + (effective-version)) + %load-path))) - (define marionette - ;; Enable TCP forwarding of the guest's port 22. - (make-marionette (list #$command "-net" - "user,hostfwd=tcp::2222-:22"))) + (use-modules (gnu build marionette) + (srfi srfi-26) + (srfi srfi-64) + (ice-9 match) + (ssh session) + (ssh auth) + (ssh channel) + (ssh sftp)) - (define (make-session-for-test) - "Make a session with predefined parameters for a test." - (make-session #:user "root" - #:port 2222 - #:host "localhost" - #:log-verbosity 'protocol)) + (define marionette + ;; Enable TCP forwarding of the guest's port 22. + (make-marionette (list #$vm))) - (define (call-with-connected-session proc) - "Call the one-argument procedure PROC with a freshly created and + (define (make-session-for-test) + "Make a session with predefined parameters for a test." + (make-session #:user "root" + #:port 2222 + #:host "localhost" + #:log-verbosity 'protocol)) + + (define (call-with-connected-session proc) + "Call the one-argument procedure PROC with a freshly created and connected SSH session object, return the result of the procedure call. The session is disconnected when the PROC is finished." - (let ((session (make-session-for-test))) - (dynamic-wind - (lambda () - (let ((result (connect! session))) - (unless (equal? result 'ok) - (error "Could not connect to a server" - session result)))) - (lambda () (proc session)) - (lambda () (disconnect! session))))) + (let ((session (make-session-for-test))) + (dynamic-wind + (lambda () + (let ((result (connect! session))) + (unless (equal? result 'ok) + (error "Could not connect to a server" + session result)))) + (lambda () (proc session)) + (lambda () (disconnect! session))))) - (define (call-with-connected-session/auth proc) - "Make an authenticated session. We should be able to connect as + (define (call-with-connected-session/auth proc) + "Make an authenticated session. We should be able to connect as root with an empty password." - (call-with-connected-session - (lambda (session) - ;; Try the simple authentication methods. Dropbear requires - ;; 'none' when there are no passwords, whereas OpenSSH accepts - ;; 'password' with an empty password. - (let loop ((methods (list (cut userauth-password! <> "") - (cut userauth-none! <>)))) - (match methods - (() - (error "all the authentication methods failed")) - ((auth rest ...) - (match (pk 'auth (auth session)) - ('success - (proc session)) - ('denied - (loop rest))))))))) + (call-with-connected-session + (lambda (session) + ;; Try the simple authentication methods. Dropbear requires + ;; 'none' when there are no passwords, whereas OpenSSH accepts + ;; 'password' with an empty password. + (let loop ((methods (list (cut userauth-password! <> "") + (cut userauth-none! <>)))) + (match methods + (() + (error "all the authentication methods failed")) + ((auth rest ...) + (match (pk 'auth (auth session)) + ('success + (proc session)) + ('denied + (loop rest))))))))) - (mkdir #$output) - (chdir #$output) + (mkdir #$output) + (chdir #$output) - (test-begin "ssh-daemon") + (test-begin "ssh-daemon") - ;; Wait for sshd to be up and running. - (test-eq "service running" - 'running! - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'ssh-daemon) - 'running!) - marionette)) + ;; Wait for sshd to be up and running. + (test-eq "service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'ssh-daemon) + 'running!) + marionette)) - ;; Check sshd's PID file. - (test-equal "sshd PID" - (wait-for-file #$pid-file marionette) - (marionette-eval - '(begin - (use-modules (gnu services herd) - (srfi srfi-1)) + ;; Check sshd's PID file. + (test-equal "sshd PID" + (wait-for-file #$pid-file marionette) + (marionette-eval + '(begin + (use-modules (gnu services herd) + (srfi srfi-1)) - (live-service-running - (find (lambda (live) - (memq 'ssh-daemon - (live-service-provision live))) - (current-services)))) - marionette)) + (live-service-running + (find (lambda (live) + (memq 'ssh-daemon + (live-service-provision live))) + (current-services)))) + marionette)) - ;; Connect to the guest over SSH. Make sure we can run a shell - ;; command there. - (test-equal "shell command" - 'hello - (call-with-connected-session/auth - (lambda (session) - ;; FIXME: 'get-server-public-key' segfaults. - ;; (get-server-public-key session) - (let ((channel (make-channel session))) - (channel-open-session channel) - (channel-request-exec channel "echo hello > /root/witness") - (and (zero? (channel-get-exit-status channel)) - (wait-for-file "/root/witness" marionette)))))) + ;; Connect to the guest over SSH. Make sure we can run a shell + ;; command there. + (test-equal "shell command" + 'hello + (call-with-connected-session/auth + (lambda (session) + ;; FIXME: 'get-server-public-key' segfaults. + ;; (get-server-public-key session) + (let ((channel (make-channel session))) + (channel-open-session channel) + (channel-request-exec channel "echo hello > /root/witness") + (and (zero? (channel-get-exit-status channel)) + (wait-for-file "/root/witness" marionette)))))) - ;; Connect to the guest over SFTP. Make sure we can write and - ;; read a file there. - (unless #$sftp? - (test-skip 1)) - (test-equal "SFTP file writing and reading" - 'hello - (call-with-connected-session/auth - (lambda (session) - (let ((sftp-session (make-sftp-session session)) - (witness "/root/sftp-witness")) - (call-with-remote-output-file sftp-session witness - (cut display "hello" <>)) - (call-with-remote-input-file sftp-session witness - read))))) + ;; Connect to the guest over SFTP. Make sure we can write and + ;; read a file there. + (unless #$sftp? + (test-skip 1)) + (test-equal "SFTP file writing and reading" + 'hello + (call-with-connected-session/auth + (lambda (session) + (let ((sftp-session (make-sftp-session session)) + (witness "/root/sftp-witness")) + (call-with-remote-output-file sftp-session witness + (cut display "hello" <>)) + (call-with-remote-input-file sftp-session witness + read))))) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) - (gexp->derivation name test))) + (gexp->derivation name test)) (define %test-openssh (system-test diff --git a/gnu/tests/web.scm b/gnu/tests/web.scm index bc7e3b89a9..3fa272c676 100644 --- a/gnu/tests/web.scm +++ b/gnu/tests/web.scm @@ -27,7 +27,6 @@ #:use-module (gnu services networking) #:use-module (guix gexp) #:use-module (guix store) - #:use-module (guix monads) #:export (%test-nginx)) (define %index.html-contents @@ -65,68 +64,68 @@ (define* (run-nginx-test #:optional (http-port 8042)) "Run tests in %NGINX-OS, which has nginx running and listening on HTTP-PORT." - (mlet* %store-monad ((os -> (marionette-operating-system - %nginx-os - #:imported-modules '((gnu services herd) - (guix combinators)))) - (command (system-qemu-image/shared-store-script - os #:graphic? #f))) - (define test - (with-imported-modules '((gnu build marionette)) - #~(begin - (use-modules (srfi srfi-11) (srfi srfi-64) - (gnu build marionette) - (web uri) - (web client) - (web response)) + (define os + (marionette-operating-system + %nginx-os + #:imported-modules '((gnu services herd) + (guix combinators)))) - (define marionette - ;; Forward the guest's HTTP-PORT, where nginx is listening, to - ;; port 8080 in the host. - (make-marionette (list #$command "-net" - (string-append - "user,hostfwd=tcp::8080-:" - #$(number->string http-port))))) + (define vm + (virtual-machine + (operating-system os) + (port-forwardings `((8080 . ,http-port))))) - (mkdir #$output) - (chdir #$output) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (srfi srfi-11) (srfi srfi-64) + (gnu build marionette) + (web uri) + (web client) + (web response)) - (test-begin "nginx") + (define marionette + (make-marionette (list #$vm))) - ;; Wait for nginx to be up and running. - (test-eq "service running" - 'running! - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'nginx) - 'running!) - marionette)) + (mkdir #$output) + (chdir #$output) - ;; Make sure the PID file is created. - (test-assert "PID file" - (marionette-eval - '(file-exists? "/var/run/nginx/pid") - marionette)) + (test-begin "nginx") - ;; Retrieve the index.html file we put in /srv. - (test-equal "http-get" - '(200 #$%index.html-contents) - (let-values (((response text) - (http-get "http://localhost:8080/index.html" - #:decode-body? #t))) - (list (response-code response) text))) + ;; Wait for nginx to be up and running. + (test-eq "service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'nginx) + 'running!) + marionette)) - ;; There should be a log file in here. - (test-assert "log file" - (marionette-eval - '(file-exists? "/var/log/nginx/access.log") - marionette)) + ;; Make sure the PID file is created. + (test-assert "PID file" + (marionette-eval + '(file-exists? "/var/run/nginx/pid") + marionette)) - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + ;; Retrieve the index.html file we put in /srv. + (test-equal "http-get" + '(200 #$%index.html-contents) + (let-values (((response text) + (http-get "http://localhost:8080/index.html" + #:decode-body? #t))) + (list (response-code response) text))) - (gexp->derivation "nginx-test" test))) + ;; There should be a log file in here. + (test-assert "log file" + (marionette-eval + '(file-exists? "/var/log/nginx/access.log") + marionette)) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "nginx-test" test)) (define %test-nginx (system-test From da036496406f60e591786f89e8a51ad75cb0e5c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Jul 2017 11:44:12 +0200 Subject: [PATCH 0317/1227] profiles: Remove workaround for an old Guile 'scandir' bug. * guix/profiles.scm (generation-numbers)[scandir]: Remove. --- guix/profiles.scm | 34 ---------------------------------- 1 file changed, 34 deletions(-) diff --git a/guix/profiles.scm b/guix/profiles.scm index 85c1722d62..b3732f61ed 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -1313,40 +1313,6 @@ are cross-built for TARGET." (define (generation-numbers profile) "Return the sorted list of generation numbers of PROFILE, or '(0) if no former profiles were found." - (define* (scandir name #:optional (select? (const #t)) - (entry (file-system-fold enter? leaf down up skip error #f name lstat) - (lambda (files) - (sort files entry)) (#f ; no profile directory From 426b0b898f70a58133d80779980f163a5761686e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 19 Jul 2017 22:14:07 -0400 Subject: [PATCH 0318/1227] gnu: pcre: Update replacement to 8.41 [fixes CVE-2017-{7244,7245,7246}]. * gnu/packages/pcre.scm (pcre)[replacement]: Update to pcre-8.41. (pcre/fixed): Replace with ... (pcre-8.41): ... new variable. --- gnu/packages/pcre.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/gnu/packages/pcre.scm b/gnu/packages/pcre.scm index 67a8db1c73..8dd5099314 100644 --- a/gnu/packages/pcre.scm +++ b/gnu/packages/pcre.scm @@ -34,7 +34,7 @@ (package (name "pcre") (version "8.40") - (replacement pcre/fixed) + (replacement pcre-8.41) (source (origin (method url-fetch) (uri (list @@ -72,12 +72,20 @@ POSIX regular expression API.") (license license:bsd-3) (home-page "http://www.pcre.org/"))) -(define pcre/fixed +(define pcre-8.41 (package (inherit pcre) + (version "8.41") (source (origin - (inherit (package-source pcre)) - (patches (search-patches "pcre-CVE-2017-7186.patch")))))) + (method url-fetch) + (uri (list (string-append "mirror://sourceforge/pcre/pcre/" + version "/pcre-" version ".tar.bz2") + (string-append "ftp://ftp.csx.cam.ac.uk" + "/pub/software/programming/pcre/" + "pcre-" version ".tar.bz2"))) + (sha256 + (base32 + "0c5m469p5pd7jip621ipq6hbgh7128lzh7xndllfgh77ban7wb76")))))) (define-public pcre2 (package From 8582e03ae59ff51d2aacc24da611f769484dd4cb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 20 Jul 2017 08:59:35 -0400 Subject: [PATCH 0319/1227] gnu: Remove a left-over patch. This is a followup to commit 426b0b898f70a58133d80779980f163a5761686e. * gnu/packages/patches/pcre-CVE-2017-7186.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/patches/pcre-CVE-2017-7186.patch | 56 ------------------- 2 files changed, 57 deletions(-) delete mode 100644 gnu/packages/patches/pcre-CVE-2017-7186.patch diff --git a/gnu/local.mk b/gnu/local.mk index ee932006b7..bf9143ae23 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -893,7 +893,6 @@ dist_patch_DATA = \ %D%/packages/patches/patchelf-rework-for-arm.patch \ %D%/packages/patches/patchutils-xfail-gendiff-tests.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ - %D%/packages/patches/pcre-CVE-2017-7186.patch \ %D%/packages/patches/pcre2-CVE-2017-7186.patch \ %D%/packages/patches/pcre2-CVE-2017-8786.patch \ %D%/packages/patches/perl-file-path-CVE-2017-6512.patch \ diff --git a/gnu/packages/patches/pcre-CVE-2017-7186.patch b/gnu/packages/patches/pcre-CVE-2017-7186.patch deleted file mode 100644 index d23aa10374..0000000000 --- a/gnu/packages/patches/pcre-CVE-2017-7186.patch +++ /dev/null @@ -1,56 +0,0 @@ -Patch for -from . - ---- trunk/pcre_internal.h 2016/05/21 13:34:44 1649 -+++ trunk/pcre_internal.h 2017/02/24 17:30:30 1688 -@@ -2772,6 +2772,9 @@ - extern const pcre_uint16 PRIV(ucd_stage2)[]; - extern const pcre_uint32 PRIV(ucp_gentype)[]; - extern const pcre_uint32 PRIV(ucp_gbtable)[]; -+#ifdef COMPILE_PCRE32 -+extern const ucd_record PRIV(dummy_ucd_record)[]; -+#endif - #ifdef SUPPORT_JIT - extern const int PRIV(ucp_typerange)[]; - #endif -@@ -2780,9 +2783,15 @@ - /* UCD access macros */ - - #define UCD_BLOCK_SIZE 128 --#define GET_UCD(ch) (PRIV(ucd_records) + \ -+#define REAL_GET_UCD(ch) (PRIV(ucd_records) + \ - PRIV(ucd_stage2)[PRIV(ucd_stage1)[(int)(ch) / UCD_BLOCK_SIZE] * \ - UCD_BLOCK_SIZE + (int)(ch) % UCD_BLOCK_SIZE]) -+ -+#ifdef COMPILE_PCRE32 -+#define GET_UCD(ch) ((ch > 0x10ffff)? PRIV(dummy_ucd_record) : REAL_GET_UCD(ch)) -+#else -+#define GET_UCD(ch) REAL_GET_UCD(ch) -+#endif - - #define UCD_CHARTYPE(ch) GET_UCD(ch)->chartype - #define UCD_SCRIPT(ch) GET_UCD(ch)->script - ---- trunk/pcre_ucd.c 2014/06/19 07:51:39 1490 -+++ trunk/pcre_ucd.c 2017/02/24 17:30:30 1688 -@@ -38,6 +38,20 @@ - const pcre_uint32 PRIV(ucd_caseless_sets)[] = {0}; - #else - -+/* If the 32-bit library is run in non-32-bit mode, character values -+greater than 0x10ffff may be encountered. For these we set up a -+special record. */ -+ -+#ifdef COMPILE_PCRE32 -+const ucd_record PRIV(dummy_ucd_record)[] = {{ -+ ucp_Common, /* script */ -+ ucp_Cn, /* type unassigned */ -+ ucp_gbOther, /* grapheme break property */ -+ 0, /* case set */ -+ 0, /* other case */ -+ }}; -+#endif -+ - /* When recompiling tables with a new Unicode version, please check the - types in this structure definition from pcre_internal.h (the actual - field names will be different): From 457103b90bba42d4eaf508031044548c3ba95723 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Jul 2017 15:18:06 +0200 Subject: [PATCH 0320/1227] doc: Discuss when to run a GC. * doc/guix.texi (Invoking guix gc): Add a paragraph on when to run a GC. --- doc/guix.texi | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index ecf9617725..dbdd9b5ff5 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -2315,6 +2315,22 @@ package builds referenced by those generations can be reclaimed. This is achieved by running @code{guix package --delete-generations} (@pxref{Invoking guix package}). +Our recommendation is to run a garbage collection periodically, or when +you are short on disk space. For instance, to guarantee that at least +5@tie{}GB are available on your disk, simply run: + +@example +guix gc -F 5G +@end example + +It is perfectly safe to run as a non-interactive periodic job +(@pxref{Scheduled Job Execution}, for how to set up such a job on +GuixSD). Running @command{guix gc} with no arguments will collect as +much garbage as it can, but that is often inconvenient: you may find +yourself having to rebuild or re-download software that is ``dead'' from +the GC viewpoint but that is necessary to build other pieces of +software---e.g., the compiler tool chain. + The @command{guix gc} command has three modes of operation: it can be used to garbage-collect any dead files (the default), to delete specific files (the @code{--delete} option), to print garbage-collector From edbe07cd67d6050d94fe8ac1af15ab15e857b61d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Jul 2017 15:23:13 +0200 Subject: [PATCH 0321/1227] guix package: Trim trailing slashes from the profile name. Fixes . Reported by Ricardo Wurmus . * guix/scripts/package.scm (canonicalize-profile): Trim trailing slashes from PROFILE. --- guix/scripts/package.scm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 58da3113a0..96ee5c00ed 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -84,12 +84,16 @@ "If PROFILE is %USER-PROFILE-DIRECTORY, return %CURRENT-PROFILE. Otherwise return PROFILE unchanged. The goal is to treat '-p ~/.guix-profile' as if '-p' was omitted." ; see - (if (and %user-profile-directory - (string=? (canonicalize-path (dirname profile)) - (dirname %user-profile-directory)) - (string=? (basename profile) (basename %user-profile-directory))) - %current-profile - profile)) + + ;; Trim trailing slashes so that the basename comparison below works as + ;; intended. + (let ((profile (string-trim-right profile #\/))) + (if (and %user-profile-directory + (string=? (canonicalize-path (dirname profile)) + (dirname %user-profile-directory)) + (string=? (basename profile) (basename %user-profile-directory))) + %current-profile + profile))) (define (user-friendly-profile profile) "Return either ~/.guix-profile if that's what PROFILE refers to, directly or From 561f4e450078a06c707d3dcda2cf0e7d6eb5ebae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Jul 2017 15:27:54 +0200 Subject: [PATCH 0322/1227] guix package: '-l' correctly handles zero-generation profiles. * guix/scripts/package.scm (process-query) <'list-generations>: Properly handle the case where 'profile-generations' returns the empty list. --- guix/scripts/package.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 96ee5c00ed..8da7a3fd3a 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -713,9 +713,12 @@ processed, #f otherwise." (raise (condition (&profile-not-found-error (profile profile))))) ((string-null? pattern) - (list-generation display-profile-content - (car (profile-generations profile))) - (diff-profiles profile (profile-generations profile))) + (match (profile-generations profile) + (() + #t) + ((first rest ...) + (list-generation display-profile-content first) + (diff-profiles profile (cons first rest))))) ((matching-generations pattern profile) => (lambda (numbers) From 41209a6f3a9945b55bcc06b989628e09e9f98b6a Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Jul 2017 19:33:05 +0530 Subject: [PATCH 0323/1227] licenses: Add MirOS license. * guix/licenses.scm (miros): New variable. --- guix/licenses.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/guix/licenses.scm b/guix/licenses.scm index 1bed56af20..b7dadd9750 100644 --- a/guix/licenses.scm +++ b/guix/licenses.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2017 Clément Lassieur ;;; Copyright © 2017 Petter ;;; Copyright © 2017 Marius Bakke +;;; Copyright © 2017 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -67,6 +68,7 @@ lppl1.3a lppl1.3a+ lppl1.3b lppl1.3b+ lppl1.3c lppl1.3c+ + miros mpl1.0 mpl1.1 mpl2.0 ms-pl ncsa @@ -452,6 +454,11 @@ at URI, which may be a file:// URI pointing the package's tree." "https://www.latex-project.org/lppl/lppl-1-3c/" "LaTeX Project Public License 1.3c or later")) +(define miros + (license "MirOS" + "https://www.mirbsd.org/MirOS-Licence.htm" + "MirOS License")) + (define mpl1.0 (license "MPL 1.0" "http://www.mozilla.org/MPL/1.0/" From 0daa1d646ae1ee6337bdbf13d8555020c7f119a8 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Jul 2017 19:33:56 +0530 Subject: [PATCH 0324/1227] gnu: Add mksh. * gnu/packages/shells.scm (mksh): New variable. --- gnu/packages/shells.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 339faba05f..c66c575c18 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2017 ng0 ;;; Copyright © 2017 Leo Famulari +;;; Copyright © 2017 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -587,3 +588,42 @@ interactive POSIX shell targeted at resource-constrained systems.") ;; The file 'LEGAL' says it is the public domain, and the 2 ;; exceptions which are listed are not included in this port. (license public-domain))) + +(define-public mksh + (package + (name "mksh") + (version "55") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R" + version ".tgz")) + (sha256 + (base32 + "0mssqd2wp3cs9x01v6g66iy3ymdxagbyw2c0v597vnc1l6s2rm6f")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; tests require access to /dev/tty + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (setenv "CC" "gcc") + (zero? (system* (which "sh") "Build.sh")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man (string-append out "/share/man/man1"))) + (install-file "mksh" bin) + (with-directory-excursion bin + (symlink "mksh" "ksh")) + (install-file "mksh.1" man))))))) + (home-page "https://www.mirbsd.org/mksh.htm") + (synopsis "Korn Shell from MirBSD") + (description "mksh is an actively developed free implementation of the +Korn Shell programming language and a successor to the Public Domain Korn +Shell (pdksh).") + (license (list miros + isc)))) ; strlcpy.c From 09acbb02c70912a9f63b2be985a05b91ce1786b7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 20 Jul 2017 16:35:38 +0200 Subject: [PATCH 0325/1227] gnu: texlive-latex-environ: Fix invalid texinfo markup. * gnu/packages/tex.scm (texlive-latex-environ)[description]: Fix texinfo syntax errors. --- gnu/packages/tex.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 85cf6fe866..7588eb5392 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -1846,10 +1846,10 @@ on everypage.") (home-page "http://www.ctan.org/pkg/environ") (synopsis "New interface for environments in LaTeX") (description - "This package provides the @code{\\collect@body} command (as in -@code{amsmath}), as well as a @code{\\long} version @code{\\Collect@Body}, for -collecting the body text of an environment. These commands are used to define -a new author interface to creating new environments.") + "This package provides the @code{\\collect@@body} command (as in +@code{amsmath}), as well as a @code{\\long} version @code{\\Collect@@Body}, +for collecting the body text of an environment. These commands are used to +define a new author interface to creating new environments.") (license license:lppl))) (define-public texlive-latex-eqparbox From fb5dfa86b1b2a6601a773869f021a959757076fd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 20 Jul 2017 16:40:29 +0200 Subject: [PATCH 0326/1227] gnu: texlive-latex-mdwtools: Fix syntax error in description. * gnu/packages/tex.scm (texlive-latex-mdwtools)[description]: Fix texinfo syntax error. --- gnu/packages/tex.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 7588eb5392..601705e98a 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2418,8 +2418,8 @@ pdf and HTML backends. The package is distributed with the @code{backref} and (synopsis "Miscellaneous tools by Mark Wooding") (description "This collection of tools includes: @code{atsupport} for short commands -starting with @code{@}, macros to sanitize the OT1 encoding of the @code{cmtt} -fonts; a @code{doafter} command; improved @code{footnote} support; +starting with @code{@@}, macros to sanitize the OT1 encoding of the +@code{cmtt} fonts; a @code{doafter} command; improved @code{footnote} support; @code{mathenv} for various alignment in maths; list handling; @code{mdwmath} which adds some minor changes to LaTeX maths; a rewrite of LaTeX's tabular and array environments; verbatim handling; and syntax diagrams.") From 302d46e63f406f0f8acb024557498deaef2d4255 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Jul 2017 15:48:09 +0200 Subject: [PATCH 0327/1227] gexp: Slightly improve error reporting for 'local-file'. Reported by Ricardo Wurmus. * guix/gexp.scm (local-file): Define using 'syntax-case' instead of 'syntax-rules'. Explicitly handle the zero-argument case and the use-as-an-identifier case. --- guix/gexp.scm | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/guix/gexp.scm b/guix/gexp.scm index 2094c495d6..2622c5cb62 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -269,8 +269,9 @@ vicinity of DIRECTORY." (string-append directory "/" file)) (else file)))) -(define-syntax-rule (local-file file rest ...) - "Return an object representing local file FILE to add to the store; this +(define-syntax local-file + (lambda (s) + "Return an object representing local file FILE to add to the store; this object can be used in a gexp. If FILE is a relative file name, it is looked up relative to the source file where this form appears. FILE will be added to the store under NAME--by default the base name of FILE. @@ -283,10 +284,23 @@ When RECURSIVE? is true, call (SELECT? FILE STAT) for each directory entry, where FILE is the entry's absolute file name and STAT is the result of 'lstat'; exclude entries for which SELECT? does not return true. -This is the declarative counterpart of the 'interned-file' monadic procedure." - (%local-file file - (delay (absolute-file-name file (current-source-directory))) - rest ...)) +This is the declarative counterpart of the 'interned-file' monadic procedure. +It is implemented as a macro to capture the current source directory where it +appears." + (syntax-case s () + ((_ file rest ...) + #'(%local-file file + (delay (absolute-file-name file (current-source-directory))) + rest ...)) + ((_) + #'(syntax-error "missing file name")) + (id + (identifier? #'id) + ;; XXX: We could return #'(lambda (file . rest) ...). However, + ;; (syntax-source #'id) is #f so (current-source-directory) would not + ;; work. Thus, simply forbid this form. + #'(syntax-error + "'local-file' is a macro and cannot be used like this"))))) (define (local-file-absolute-file-name file) "Return the absolute file name for FILE, a instance. A From dbfcadfc304bf2dab73f4e88377e7fe902e1ca72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Jul 2017 17:05:07 +0200 Subject: [PATCH 0328/1227] doc: Show the "git clone" command. Suggested by Joshua Branson . * doc/contributing.texi (Building from Git): Add "git clone" command. --- doc/contributing.texi | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 0073f24518..00edd47710 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -31,7 +31,13 @@ choice. @section Building from Git If you want to hack Guix itself, it is recommended to use the latest -version from the Git repository. When building Guix from a checkout, +version from the Git repository: + +@example +git clone https://git.savannah.gnu.org/git/guix.git +@end example + +When building Guix from a checkout, the following packages are required in addition to those mentioned in the installation instructions (@pxref{Requirements}). From cfd6a3b1ee6b8c64d5e370f2a461a7882dbe58ab Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Jul 2017 21:10:02 +0530 Subject: [PATCH 0329/1227] gnu: Add bmon. * gnu/packages/networking.scm (bmon): New variable. --- gnu/packages/networking.scm | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index ef50756ddf..2f4d3d233e 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016 Nicolas Goaziou ;;; Copyright © 2016 Eric Bavier ;;; Copyright © 2016, 2017 ng0 -;;; Copyright © 2016 Arun Isaac +;;; Copyright © 2016, 2017 Arun Isaac ;;; Copyright © 2016 Benz Schenk ;;; Copyright © 2016, 2017 Pjotr Prins ;;; Copyright © 2017 Mathieu Othacehe @@ -70,6 +70,7 @@ #:use-module (gnu packages textutils) #:use-module (gnu packages tls) #:use-module (gnu packages valgrind) + #:use-module (gnu packages wm) #:use-module (gnu packages xml) #:use-module (ice-9 match)) @@ -1395,3 +1396,35 @@ newer and only works on Ethernet network interfaces.") ;; AGPL 3 with exception for linking with OpenSSL. See the 'LICENSE' file in ;; the source distribution for more information. (license license:agpl3))) + +(define-public bmon + (package + (name "bmon") + (version "4.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/tgraf/bmon/releases/download/v" + version "/bmon-" version ".tar.gz")) + (sha256 + (base32 + "0ylzriv4pwh76344abzl1w219x188gshbycbna35gsyfp09c7z82")))) + (build-system gnu-build-system) + (inputs + `(("libconfuse" ,libconfuse) + ("libnl" ,libnl) + ("ncurses" ,ncurses))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Bandwidth monitor") + (description "bmon is a monitoring and debugging tool to capture +networking-related statistics and prepare them visually in a human-friendly +way. It features various output methods including an interactive curses user +interface and a programmable text output for scripting.") + (home-page "https://github.com/tgraf/bmon") + ;; README.md mentions both the 2-clause BSD and expat licenses, but all + ;; the source files only have expat license headers. Upstream has been + ;; contacted for clarification: https://github.com/tgraf/bmon/issues/59 + ;; Update the license field when upstream responds. + (license (list license:bsd-2 + license:expat)))) From 81c35029d4ee4fa7cd517998844229a514b35531 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Thu, 20 Jul 2017 15:30:12 -0400 Subject: [PATCH 0330/1227] gnu: heimdal: Fix CVE-2017-{6594,11103}. * gnu/packages/patches/heimdal-CVE-2017-6594.patch, gnu/packages/patches/heimdal-CVE-2017-11103.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/kerberos.scm (heimdal)[source]: Use them. --- gnu/local.mk | 2 + gnu/packages/kerberos.scm | 2 + .../patches/heimdal-CVE-2017-11103.patch | 45 ++++++++++ .../patches/heimdal-CVE-2017-6594.patch | 85 +++++++++++++++++++ 4 files changed, 134 insertions(+) create mode 100644 gnu/packages/patches/heimdal-CVE-2017-11103.patch create mode 100644 gnu/packages/patches/heimdal-CVE-2017-6594.patch diff --git a/gnu/local.mk b/gnu/local.mk index bf9143ae23..6d9e570622 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -691,6 +691,8 @@ dist_patch_DATA = \ %D%/packages/patches/hdf-eos5-remove-gctp.patch \ %D%/packages/patches/hdf-eos5-fix-szip.patch \ %D%/packages/patches/hdf-eos5-fortrantests.patch \ + %D%/packages/patches/heimdal-CVE-2017-6594.patch \ + %D%/packages/patches/heimdal-CVE-2017-11103.patch \ %D%/packages/patches/hmmer-remove-cpu-specificity.patch \ %D%/packages/patches/higan-remove-march-native-flag.patch \ %D%/packages/patches/hubbub-sort-entities.patch \ diff --git a/gnu/packages/kerberos.scm b/gnu/packages/kerberos.scm index 58f6197700..59fd944c69 100644 --- a/gnu/packages/kerberos.scm +++ b/gnu/packages/kerberos.scm @@ -144,6 +144,8 @@ secure manner through client-server mutual authentication via tickets.") (sha256 (base32 "19gypf9vzfrs2bw231qljfl4cqc1riyg0ai0xmm1nd1wngnpphma")) + (patches (search-patches "heimdal-CVE-2017-6594.patch" + "heimdal-CVE-2017-11103.patch")) (modules '((guix build utils))) (snippet '(substitute* "configure" diff --git a/gnu/packages/patches/heimdal-CVE-2017-11103.patch b/gnu/packages/patches/heimdal-CVE-2017-11103.patch new file mode 100644 index 0000000000..d76f0df369 --- /dev/null +++ b/gnu/packages/patches/heimdal-CVE-2017-11103.patch @@ -0,0 +1,45 @@ +Fix CVE-2017-11103: + +https://orpheus-lyre.info/ +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11103 +https://security-tracker.debian.org/tracker/CVE-2017-11103 + +Patch lifted from upstream source repository: + +https://github.com/heimdal/heimdal/commit/6dd3eb836bbb80a00ffced4ad57077a1cdf227ea + +From 6dd3eb836bbb80a00ffced4ad57077a1cdf227ea Mon Sep 17 00:00:00 2001 +From: Jeffrey Altman +Date: Wed, 12 Apr 2017 15:40:42 -0400 +Subject: [PATCH] CVE-2017-11103: Orpheus' Lyre KDC-REP service name validation + +In _krb5_extract_ticket() the KDC-REP service name must be obtained from +encrypted version stored in 'enc_part' instead of the unencrypted version +stored in 'ticket'. Use of the unecrypted version provides an +opportunity for successful server impersonation and other attacks. + +Identified by Jeffrey Altman, Viktor Duchovni and Nico Williams. + +Change-Id: I45ef61e8a46e0f6588d64b5bd572a24c7432547c +--- + lib/krb5/ticket.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/krb5/ticket.c b/lib/krb5/ticket.c +index d95d96d1b..b8d81c6ad 100644 +--- a/lib/krb5/ticket.c ++++ b/lib/krb5/ticket.c +@@ -705,8 +705,8 @@ _krb5_extract_ticket(krb5_context context, + /* check server referral and save principal */ + ret = _krb5_principalname2krb5_principal (context, + &tmp_principal, +- rep->kdc_rep.ticket.sname, +- rep->kdc_rep.ticket.realm); ++ rep->enc_part.sname, ++ rep->enc_part.srealm); + if (ret) + goto out; + if((flags & EXTRACT_TICKET_ALLOW_SERVER_MISMATCH) == 0){ +-- +2.13.3 + diff --git a/gnu/packages/patches/heimdal-CVE-2017-6594.patch b/gnu/packages/patches/heimdal-CVE-2017-6594.patch new file mode 100644 index 0000000000..714af60304 --- /dev/null +++ b/gnu/packages/patches/heimdal-CVE-2017-6594.patch @@ -0,0 +1,85 @@ +Fix CVE-2017-6594: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6594 +https://security-tracker.debian.org/tracker/CVE-2017-6594 + +Patch lifted from upstream source repository: + +https://github.com/heimdal/heimdal/commit/b1e699103f08d6a0ca46a122193c9da65f6cf837 + +To apply the patch to Heimdal 1.5.3 release tarball, the changes to 'NEWS' and +files in 'tests/' are removed, and hunk #4 of 'kdc/krb5tgs.c' is modified. + +From b1e699103f08d6a0ca46a122193c9da65f6cf837 Mon Sep 17 00:00:00 2001 +From: Viktor Dukhovni +Date: Wed, 10 Aug 2016 23:31:14 +0000 +Subject: [PATCH] Fix transit path validation CVE-2017-6594 + +Commit f469fc6 (2010-10-02) inadvertently caused the previous hop realm +to not be added to the transit path of issued tickets. This may, in +some cases, enable bypass of capath policy in Heimdal versions 1.5 +through 7.2. + +Note, this may break sites that rely on the bug. With the bug some +incomplete [capaths] worked, that should not have. These may now break +authentication in some cross-realm configurations. +--- + NEWS | 14 ++++++++++++++ + kdc/krb5tgs.c | 12 ++++++++++-- + tests/kdc/check-kdc.in | 17 +++++++++++++++++ + tests/kdc/krb5.conf.in | 4 ++++ + 4 files changed, 45 insertions(+), 2 deletions(-) + +diff --git a/kdc/krb5tgs.c b/kdc/krb5tgs.c +index 6048b9c55..98503812f 100644 +--- a/kdc/krb5tgs.c ++++ b/kdc/krb5tgs.c +@@ -655,8 +655,12 @@ fix_transited_encoding(krb5_context context, + "Decoding transited encoding"); + return ret; + } ++ ++ /* ++ * If the realm of the presented tgt is neither the client nor the server ++ * realm, it is a transit realm and must be added to transited set. ++ */ + if(strcmp(client_realm, tgt_realm) && strcmp(server_realm, tgt_realm)) { +- /* not us, so add the previous realm to transited set */ + if (num_realms + 1 > UINT_MAX/sizeof(*realms)) { + ret = ERANGE; + goto free_realms; +@@ -737,6 +741,7 @@ tgs_make_reply(krb5_context context, + const char *server_name, + hdb_entry_ex *client, + krb5_principal client_principal, ++ const char *tgt_realm, + hdb_entry_ex *krbtgt, + krb5_enctype krbtgt_etype, + krb5_principals spp, +@@ -798,7 +803,7 @@ tgs_make_reply(krb5_context context, + &tgt->transited, &et, + krb5_principal_get_realm(context, client_principal), + krb5_principal_get_realm(context, server->entry.principal), +- krb5_principal_get_realm(context, krbtgt->entry.principal)); ++ tgt_realm); + if(ret) + goto out; + +@@ -1519,4 +1524,6 @@ tgs_build_reply(krb5_context context, + krb5_keyblock sessionkey; + krb5_kvno kvno; + krb5_data rspac; ++ const char *tgt_realm = /* Realm of TGT issuer */ ++ krb5_principal_get_realm(context, krbtgt->entry.principal); + +@@ -2324,6 +2331,7 @@ server_lookup: + spn, + client, + cp, ++ tgt_realm, + krbtgt_out, + tkey_sign->key.keytype, + spp, +-- +2.13.3 + From f8fabfc99f6ee373159ff5d627b6018febf43050 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 20 Jul 2017 18:38:17 -0400 Subject: [PATCH 0331/1227] gnu: bitcoin-core: Actually build the graphical client. * gnu/packages/finance.scm (bitcoin-core)[inputs]: Replace qtbase with qt. --- gnu/packages/finance.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 04ae70b07a..748b59c9e1 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -70,7 +70,8 @@ ("miniupnpc" ,miniupnpc) ("openssl" ,openssl) ("protobuf" ,protobuf) - ("qtbase" ,qtbase))) + ;; TODO Build with the modular Qt. + ("qt" ,qt))) (arguments `(#:configure-flags (list From cd4f35c3794acbe78aab83972c22335479162cd8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 20 Jul 2017 22:03:52 -0400 Subject: [PATCH 0332/1227] gnu: borg: Update to 1.0.11. * gnu/packages/backup.scm (borg): Update to 1.0.11. --- gnu/packages/backup.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index c619961aac..f9a537d712 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -462,13 +462,13 @@ detection, and lossless compression.") (define-public borg (package (name "borg") - (version "1.0.10") + (version "1.0.11") (source (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) (sha256 (base32 - "1sarmpzwr8dhbg0hsvaclcsjfax36ssb32d9klhhah4j8kqji3wp")) + "14fjk5dfwmjkn7nmkbhhbrk3g1wfrn8arvqd5r9jaij534nzsvpw")) (modules '((guix build utils))) (snippet '(for-each From 0cf9f9b1e3cff70e837ca5b0759acd0f94f38732 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 21 Jul 2017 05:14:32 +0200 Subject: [PATCH 0333/1227] gnu: libpsl: Update to 0.18.0. * gnu/packages/web.scm (libpsl): Update to 0.18.0. [native-inputs]: Add pkg-config. [inputs]: Replace icu4c with libidn2; add libunistring. --- gnu/packages/web.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 8acd37bc22..66183273e6 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -72,9 +72,9 @@ #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gperf) #:use-module (gnu packages gtk) - #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages libidn) + #:use-module (gnu packages libunistring) #:use-module (gnu packages lua) #:use-module (gnu packages ncurses) #:use-module (gnu packages base) @@ -543,7 +543,7 @@ for efficient socket-like bidirectional reliable communication channels.") (define-public libpsl (package (name "libpsl") - (version "0.17.0") + (version "0.18.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/rockdaboot/libpsl/" @@ -551,10 +551,13 @@ for efficient socket-like bidirectional reliable communication channels.") "/libpsl-" version ".tar.gz")) (sha256 (base32 - "0jyxwc6bcvkcahkwcq237a0x209cysb63n5lak5m7zbglbb2jmq2")))) + "00iids8ldsqnnndmcfjp6kc00lv7fawf5l24mpbdbkh98yazgc4i")))) (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) (inputs - `(("icu4c" ,icu4c) + `(("libidn2" ,libidn2) + ("libunistring" ,libunistring) ("python-2" ,python-2))) (home-page "https://github.com/rockdaboot/libpsl") (synopsis "C library for the Publix Suffix List") From 3d3e93b3f9cdf05f3dde07db45147f5919242fa2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Jul 2017 14:07:29 +0200 Subject: [PATCH 0334/1227] substitute: Optimize hash-part-to-path conversion on non-200 responses. Previously this operation was linear in the number of requests and involved costly calls to 'string-contains'. * guix/scripts/substitute.scm (fetch-narinfos)[hash-part->path]: New procedure. [handle-narinfo-response]: Use it for caching when CODE is not 200. --- guix/scripts/substitute.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm index 9348599193..c066016aa4 100755 --- a/guix/scripts/substitute.scm +++ b/guix/scripts/substitute.scm @@ -47,6 +47,7 @@ #:use-module (ice-9 format) #:use-module (ice-9 ftw) #:use-module (ice-9 binary-ports) + #:use-module (ice-9 vlist) #:use-module (rnrs bytevectors) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) @@ -609,6 +610,17 @@ if file doesn't exist, and the narinfo otherwise." url (* 100. (/ done (length paths)))) (set! done (+ 1 done))))) + (define hash-part->path + (let ((mapping (fold (lambda (path result) + (vhash-cons (store-path-hash-part path) path + result)) + vlist-null + paths))) + (lambda (hash) + (match (vhash-assoc hash mapping) + (#f #f) + ((_ . path) path))))) + (define (handle-narinfo-response request response port result) (let* ((code (response-code response)) (len (response-content-length response)) @@ -627,9 +639,7 @@ if file doesn't exist, and the narinfo otherwise." (if len (get-bytevector-n port len) (read-to-eof port)) - (cache-narinfo! url - (find (cut string-contains <> hash-part) paths) - #f + (cache-narinfo! url (hash-part->path hash-part) #f (if (= 404 code) ttl %narinfo-transient-error-ttl)) From 75a4d86f50e1682b96c51eb46a6aba24afc25d03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Jul 2017 14:13:58 +0200 Subject: [PATCH 0335/1227] substitute: Avoid repeated calls to 'length'. * guix/scripts/substitute.scm (fetch-narinfos)[update-progress!]: Move 'length' call outside of lambda. --- guix/scripts/substitute.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm index c066016aa4..35282f9027 100755 --- a/guix/scripts/substitute.scm +++ b/guix/scripts/substitute.scm @@ -601,13 +601,14 @@ if file doesn't exist, and the narinfo otherwise." (define (fetch-narinfos url paths) "Retrieve all the narinfos for PATHS from the cache at URL and return them." (define update-progress! - (let ((done 0)) + (let ((done 0) + (total (length paths))) (lambda () (display #\cr (current-error-port)) (force-output (current-error-port)) (format (current-error-port) (G_ "updating list of substitutes from '~a'... ~5,1f%") - url (* 100. (/ done (length paths)))) + url (* 100. (/ done total))) (set! done (+ 1 done))))) (define hash-part->path From 0a94dc63964c88903079c0a040162439fe07a306 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Jul 2017 14:32:24 +0200 Subject: [PATCH 0336/1227] base32: Export the base32 charsets. * guix/base32.scm (%nix-base32-charset, %rfc4648-base32-charset): New variables. --- guix/base32.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/guix/base32.scm b/guix/base32.scm index 7b2e2a6712..49f191ba26 100644 --- a/guix/base32.scm +++ b/guix/base32.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2015 Ludovic Courtès +;;; Copyright © 2012, 2015, 2017 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,6 +28,8 @@ bytevector->nix-base32-string base32-string->bytevector nix-base32-string->bytevector + %nix-base32-charset + %rfc4648-base32-charset &invalid-base32-character invalid-base32-character? invalid-base32-character-value @@ -152,11 +154,17 @@ the previous application or INIT." #\a #\b #\c #\d #\f #\g #\h #\i #\j #\k #\l #\m #\n #\p #\q #\r #\s #\v #\w #\x #\y #\z)) +(define %nix-base32-charset + (list->char-set (vector->list %nix-base32-chars))) + (define %rfc4648-base32-chars #(#\a #\b #\c #\d #\e #\f #\g #\h #\i #\j #\k #\l #\m #\n #\o #\p #\q #\r #\s #\t #\u #\v #\w #\x #\y #\z #\2 #\3 #\4 #\5 #\6 #\7)) +(define %rfc4648-base32-charset + (list->char-set (vector->list %rfc4648-base32-chars))) + (define bytevector->base32-string (make-bytevector->base32-string bytevector-quintet-fold %rfc4648-base32-chars)) From 33463986ba5093c7513c9dc7702a66929f504aa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Jul 2017 14:48:52 +0200 Subject: [PATCH 0337/1227] publish: Remove 'regexp-exec' call from the hot path. * guix/scripts/publish.scm (extract-narinfo-hash): Rewrite without resorting to regexps. --- guix/scripts/publish.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/guix/scripts/publish.scm b/guix/scripts/publish.scm index a7e3e6d629..cb1abc32fb 100644 --- a/guix/scripts/publish.scm +++ b/guix/scripts/publish.scm @@ -565,13 +565,13 @@ has the given HASH of type ALGO." " speaking. Welcome!"))) port))))) -(define extract-narinfo-hash - (let ((regexp (make-regexp "^([a-df-np-sv-z0-9]{32}).narinfo$"))) - (lambda (str) - "Return the hash within the narinfo resource string STR, or false if STR +(define (extract-narinfo-hash str) + "Return the hash within the narinfo resource string STR, or false if STR is invalid." - (and=> (regexp-exec regexp str) - (cut match:substring <> 1))))) + (and (string-suffix? ".narinfo" str) + (let ((base (string-drop-right str 8))) + (and (string-every %nix-base32-charset base) + base)))) (define (get-request? request) "Return #t if REQUEST uses the GET method." From 35eb77b09d957019b2437e7681bd88013d67d3cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Jul 2017 14:50:16 +0200 Subject: [PATCH 0338/1227] store: Rewrite 'store-path-hash-part' to not use regexps. * guix/store.scm (store-path-hash-part): Rewrite without using a regexp. This speeds up 'guix substitute'. --- guix/store.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/guix/store.scm b/guix/store.scm index b15da54852..2563d26fa0 100644 --- a/guix/store.scm +++ b/guix/store.scm @@ -1549,9 +1549,12 @@ valid inputs." (define (store-path-hash-part path) "Return the hash part of PATH as a base32 string, or #f if PATH is not a syntactically valid store path." - (let ((path-rx (store-regexp* (%store-prefix)))) - (and=> (regexp-exec path-rx path) - (cut match:substring <> 1)))) + (and (string-prefix? (%store-prefix) path) + (let ((base (string-drop path (+ 1 (string-length (%store-prefix)))))) + (and (> (string-length base) 33) + (let ((hash (string-take base 32))) + (and (string-every %nix-base32-charset hash) + hash)))))) (define (log-file store file) "Return the build log file for FILE, or #f if none could be found. FILE From deac674ab4015e52fb6fb883f578e5c5891291a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Jul 2017 14:52:08 +0200 Subject: [PATCH 0339/1227] publish: Avoid 'valid-path?' RPC for non-existent items. * guix/scripts/publish.scm (render-narinfo/cached): Call 'file-exists?' before calling 'valid-path?'. This makes the 404 path slightly faster. --- guix/scripts/publish.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/guix/scripts/publish.scm b/guix/scripts/publish.scm index cb1abc32fb..cd57b13dc3 100644 --- a/guix/scripts/publish.scm +++ b/guix/scripts/publish.scm @@ -417,7 +417,8 @@ requested using POOL." (display (call-with-input-file cached read-string) port)))) - ((valid-path? store item) + ((and (file-exists? item) ;cheaper than the 'valid-path?' RPC + (valid-path? store item)) ;; Nothing in cache: bake the narinfo and nar in the background and ;; return 404. (eventually pool From c95644f0172ba87822ee7ecee3d2743ebd2c84bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Jul 2017 17:02:19 +0200 Subject: [PATCH 0340/1227] publish: Make the cache eviction policy less aggressive. Suggested by Mark H Weaver . * guix/scripts/publish.scm (nar-expiration-time): New procedure. (render-narinfo/cached): Use it as the #:entry-expiration passed to 'maybe-remove-expired-cache-entries'. --- doc/guix.texi | 3 ++- guix/scripts/publish.scm | 20 +++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index dbdd9b5ff5..875c1ffa26 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -6960,7 +6960,8 @@ guarantee that the store items it provides will indeed remain available for as long as @var{ttl}. Additionally, when @option{--cache} is used, cached entries that have -not been accessed for @var{ttl} may be deleted. +not been accessed for @var{ttl} and that no longer have a corresponding +item in the store, may be deleted. @item --nar-path=@var{path} Use @var{path} as the prefix for the URLs of ``nar'' files diff --git a/guix/scripts/publish.scm b/guix/scripts/publish.scm index cd57b13dc3..ade3c49a54 100644 --- a/guix/scripts/publish.scm +++ b/guix/scripts/publish.scm @@ -385,6 +385,24 @@ at a time." (string-suffix? ".narinfo" file))) '())) +(define (nar-expiration-time ttl) + "Return the narinfo expiration time (in seconds since the Epoch). The +expiration time is +inf.0 when passed an item that is still in the store; in +other cases, it is the last-access time of the item plus TTL. + +This policy allows us to keep cached nars that correspond to valid store +items. Failing that, we could eventually have to recompute them and return +404 in the meantime." + (let ((expiration-time (file-expiration-time ttl))) + (lambda (file) + (let ((item (string-append (%store-prefix) "/" + (basename file ".narinfo")))) + ;; Note: We don't need to use 'valid-path?' here because FILE would + ;; not exist if ITEM were not valid in the first place. + (if (file-exists? item) + +inf.0 + (expiration-time file)))))) + (define* (render-narinfo/cached store request hash #:key ttl (compression %no-compression) (nar-path "nar") @@ -436,7 +454,7 @@ requested using POOL." (maybe-remove-expired-cache-entries cache narinfo-files #:entry-expiration - (file-expiration-time ttl) + (nar-expiration-time ttl) #:delete-entry delete-entry #:cleanup-period ttl)))) (not-found request From 6f226c078c5dceddd7fbcba8f878f101e5bffd9a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 21 Jul 2017 13:32:00 -0400 Subject: [PATCH 0341/1227] gnu: mysql: Update to 5.7.19. * gnu/packages/databases.scm (mysql): Update to 5.7.19. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index bd0ff32426..d0b9ac73de 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -293,7 +293,7 @@ mapping from string keys to string values.") (define-public mysql (package (name "mysql") - (version "5.7.18") + (version "5.7.19") (source (origin (method url-fetch) (uri (list (string-append @@ -305,7 +305,7 @@ mapping from string keys to string values.") name "-" version ".tar.gz"))) (sha256 (base32 - "18m1mr55k9zmvnyqs0wr50csqsz3scs09fykh60wsml6c3np2p8b")))) + "1c8y54yk756179nx4dgg79dijmjdq5n8l057cnqsg70pjdpyfl9y")))) (build-system cmake-build-system) (arguments `(#:configure-flags From 3c14378381fc1f187a07b2f958eeed1958f02672 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 20 Jul 2017 01:35:45 -0400 Subject: [PATCH 0342/1227] gnu: vim: Update to 8.0.0727 [fixes CVE-2017-11109]. * gnu/packages/vim.scm (vim): Update to 8.0.0727. (vim-full)[source]: Add field and hold back at version 8.0.0600. --- gnu/packages/vim.scm | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 27c0b0da9c..f8c9761924 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -60,7 +60,7 @@ (define-public vim (package (name "vim") - (version "8.0.0600") + (version "8.0.0727") (source (origin (method url-fetch) (uri (string-append "https://github.com/vim/vim/archive/v" @@ -68,7 +68,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1ifaj0lfzqn06snkcd83l58m9r6lg7lk3wspx71k5ycvypyfi67s")))) + "0hwqglpsk8qlp2rn6q9p35fxk88xixljk1yv42m3j01g3bgqg0gx")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -111,8 +111,20 @@ configuration files.") (define-public vim-full (package + ;; This package should share its source with Vim, but it doesn't + ;; build reliably, and we want to keep Vim up to date due to the + ;; frequency of important bug fixes. (inherit vim) (name "vim-full") + (version "8.0.0600") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/vim/vim/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ifaj0lfzqn06snkcd83l58m9r6lg7lk3wspx71k5ycvypyfi67s")))) (arguments `(#:configure-flags (list (string-append "--with-lua-prefix=" From c800fd564b9dc37f1fb95fa5f49230b4865f0541 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 13 Jul 2017 11:34:26 +0200 Subject: [PATCH 0343/1227] services: cuirass: Add fallback parameter. * gnu/services/cuirass.scm ()[fallback?]: New field. (cuirass-shepherd-service): Take it into account. * doc/guix.texi (Continuous Integration): Document it. --- doc/guix.texi | 4 ++++ gnu/services/cuirass.scm | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 875c1ffa26..dfa1e22fcc 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -14773,6 +14773,10 @@ from source. @item @code{one-shot?} (default: @code{#f}) Only evaluate specifications and build derivations once. +@item @code{fallback?} (default: @code{#f}) +When substituting a pre-built binary fails, fall back to building +packages locally. + @item @code{load-path} (default: @code{'()}) This allows users to define their own packages and make them visible to cuirass as in @command{guix build} command. diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index 88a9a86111..d27a2bbc44 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -66,6 +66,8 @@ (default #f)) (one-shot? cuirass-configuration-one-shot? ;boolean (default #f)) + (fallback? cuirass-configuration-fallback? ;boolean + (default #f)) (load-path cuirass-configuration-load-path (default '()))) @@ -84,6 +86,7 @@ (specs (cuirass-configuration-specifications config)) (use-substitutes? (cuirass-configuration-use-substitutes? config)) (one-shot? (cuirass-configuration-one-shot? config)) + (fallback? (cuirass-configuration-fallback? config)) (load-path (cuirass-configuration-load-path config))) (list (shepherd-service (documentation "Run Cuirass.") @@ -99,6 +102,7 @@ "--interval" #$(number->string interval) #$@(if use-substitutes? '("--use-substitutes") '()) #$@(if one-shot? '("--one-shot") '()) + #$@(if fallback? '("--fallback") '()) #$@(if (null? load-path) '() `("--load-path" ,(string-join load-path ":")))) #:user #$user From e9185cbac68fad318f90fae3ae15155989d5db52 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 21 Jul 2017 13:39:23 -0400 Subject: [PATCH 0344/1227] gnu: icedtea@3: Update to 3.5.0 [security fixes]. Fixes CVE-2017-{10053,10067,10074,10074,10078,10081,10087,10089,10090,10096, 10101,10102,10107,10108,10109,10110,10111,10115,10116,10118,10135,10176,10193, 10198}. * gnu/packages/java.scm (icedtea-8): Update to 3.5.0. --- gnu/packages/java.scm | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index de992c6499..5744db6ebc 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1543,7 +1543,7 @@ IcedTea build harness.") (license license:gpl2+)))) (define-public icedtea-8 - (let* ((version "3.4.0") + (let* ((version "3.5.0") (drop (lambda (name hash) (origin (method url-fetch) @@ -1552,7 +1552,7 @@ IcedTea build harness.") "/icedtea8/" version "/" name ".tar.xz")) (sha256 (base32 hash)))))) (package (inherit icedtea-7) - (version "3.4.0") + (version "3.5.0") (source (origin (method url-fetch) (uri (string-append @@ -1560,7 +1560,7 @@ IcedTea build harness.") version ".tar.xz")) (sha256 (base32 - "16if055973y6yw7n5gczp8iksvc31cy4p5by9lkbniadqj4z665m")) + "1dfa7ing61i73m6wfx2kx59q44npqdiy7cd66xmslyy0xh09xa4s")) (modules '((guix build utils))) (snippet '(begin @@ -1632,34 +1632,34 @@ IcedTea build harness.") `(("jdk" ,icedtea-7 "jdk") ("openjdk-src" ,(drop "openjdk" - "0va5i3zr8y8ncv914rz914jda9d88gq0viww3smdqnln8n78rszi")) + "0di7gmyis1p6rpksmff1q21ck85i51sqcl9awqyvg7xiwggq0wsm")) ("aarch32-drop" ,(drop "aarch32" "0cway5a5hcfyh4pzl9zz5xr7lil4gsliy6r5iqbaasd2d9alvqiq")) ("corba-drop" ,(drop "corba" - "1l9zr97a3kq00bj4i8wcdsjlz3xlfldxd8zhkcxikinwd5n0n8a7")) + "1xk64bsdxfc66g61d8k6xrhqj8rc56vzrlxx6s23gkr45604bl8x")) ("jaxp-drop" ,(drop "jaxp" - "0lqxrsr3xlpwm2na6f2rpl7znrz34dkb9dg3zjmympyjy4kqljn7")) + "1iw9xa4s5kxijdqpf0ih4x6g0lw142yy11vrzfmz6n1y4b0ic7iw")) ("jaxws-drop" ,(drop "jaxws" - "1b3chckk10dzrpa7cswmcf1jvryaiwkj8lihfqjr5j7l668jwr4h")) + "14p2l4j985wh5cdd4hfmm18gb5wmry73yiysdx9pg3aqpkw9qms7")) ("jdk-drop" ,(drop "jdk" - "15lq0k2jv2x26x6vqkbljdcxk35i3b60pcsw3j1sdfmlk1xy6wgc")) + "1qwmb80vicn7jd801f3j23lyil7327ks54d3s87czwv8h108m40r")) ("langtools-drop" ,(drop "langtools" - "17xkb8ahkg04ri0bp5wblcp1a2lp8j7c83ic5zdbggvgm339k5s8")) + "175pi2privhcvn9sbam5mhhgcvicfqbgldiw25fi5g80fqkkrza9")) ("hotspot-drop" ,(drop "hotspot" - "0xpx8ykaq0ki6r0dl3dzca2xgp1p82z8mvsxcs2931ib667ncgcp")) + "1qdyn02p4ssl3p7z9aadhzl9qdam2q7pvwddz2jkyvajcrxb0mpi")) ("nashorn-drop" ,(drop "nashorn" - "1bnn4731lhlvg8axy4mjxgvh646yl22hp52wipx8cfca4vkn2f1z")) + "0kzmpf5b9kwhrvnwn7m20q3dzz8s82jjvbac84606x3ff97xk5gr")) ("shenandoah-drop" ,(drop "shenandoah" - "0fpxl8zlii1hpm777r875ys2cr5ih3gb6p1nm9jfa6krjrccrxv1")) + "0kjc5m5jj2bzyy1vj1s59khv5xjfnkxy18z0g4bdb1kb3g21c5wi")) ,@(fold alist-delete (package-native-inputs icedtea-7) '("jdk" "openjdk-src" "corba-drop" "jaxp-drop" "jaxws-drop" "jdk-drop" "langtools-drop" "hotspot-drop"))))))) From 1ffe41711b5ea00ec10c26a81e6c97d063b28682 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Fri, 21 Jul 2017 22:40:22 -0500 Subject: [PATCH 0345/1227] gnu: tint2: Update to 0.14.6. * gnu/packages/xdisorg.scm (tint2): Update to 0.14.6. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 5e24440e41..11acf326ef 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -1061,7 +1061,7 @@ by name.") (define-public tint2 (package (name "tint2") - (version "0.12.11") + (version "0.14.6") (source (origin (method url-fetch) (uri (string-append "https://gitlab.com/o9000/" name @@ -1069,7 +1069,7 @@ by name.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0dv7zaj2ahnfclnwnwcz9arrvzxn65yy29z7fqdgifdh3jk1kl2h")))) + "1kwzwxy4myagybm3rc7dgynfgp75742n348qibn1p2an9ggyivda")))) (build-system cmake-build-system) (arguments '(#:tests? #f ;no test target From de469015c4422b21d4619b8ff8a0fc8d917c7794 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 22 Jul 2017 12:18:24 +0200 Subject: [PATCH 0346/1227] gnu: man-pages: Update to 4.12. * gnu/packages/man.scm (man-pages): Update to 4.12. --- gnu/packages/man.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index d8a64d1a86..4eefafbe12 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -138,7 +138,7 @@ the traditional flat-text whatis databases.") (define-public man-pages (package (name "man-pages") - (version "4.11") + (version "4.12") (source (origin (method url-fetch) (uri @@ -151,7 +151,7 @@ the traditional flat-text whatis databases.") "man-pages-" version ".tar.xz"))) (sha256 (base32 - "097m0gsbaz0gf9ir4lmph3h5jj6wmydk1rglfz82dysybx4q1pmd")))) + "14z0zcwm0m98fk2m2b3pvr8rs2sb602mg8f7wwb4xl7yj7cpjvbg")))) (build-system gnu-build-system) (arguments '(#:phases (alist-delete 'configure %standard-phases) From 3fee00395031a7144b108c2839fcbb570d5df8bd Mon Sep 17 00:00:00 2001 From: Muriithi Frederick Muriuki Date: Tue, 18 Jul 2017 11:37:05 +0300 Subject: [PATCH 0347/1227] gnu: Update python-pytz to 2017.2. * gnu/packages/python.scm (python-pytz, python2-pytz): Update to 2017.2. Co-authored-by: Ricardo Wurmus --- gnu/packages/python.scm | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index d3832f30fb..da139c2473 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -43,6 +43,7 @@ ;;; Copyright © 2017 Roel Janssen ;;; Copyright © 2017 Kei Kebreau ;;; Copyright © 2017 Rutger Helling +;;; Copyright © 2017 Muriithi Frederick Muriuki ;;; ;;; This file is part of GNU Guix. ;;; @@ -653,27 +654,28 @@ on localhost.") (define-public python-pytz (package (name "python-pytz") - (version "2016.10") + (version "2017.2") (source (origin (method url-fetch) - (uri (pypi-uri "pytz" version ".tar.bz2")) + (uri (pypi-uri "pytz" version ".zip")) (sha256 (base32 - "0az099cyp6p5xbsvfcdacj4hvxncbwm2ayn3h55mcp07zb2b45kh")))) + "12cmd3j46d2gcw08bspvp6s9icfcvx88zjz52n1bli9dyvl5dh7m")))) (build-system python-build-system) - (arguments `(#:tests? #f)) ; no test target + (native-inputs + `(("unzip" ,unzip))) (home-page "http://pythonhosted.org/pytz") (synopsis "Python timezone library") - (description - "This library allows accurate and cross platform timezone calculations -using Python 2.4 or higher and provides access to the Olson timezone database.") + (description "This library brings the Olson tz database into Python. It +allows accurate and cross platform timezone calculations using Python 2.4 or +higher. It also solves the issue of ambiguous times at the end of daylight +saving time. Almost all of the Olson timezones are supported.") (license license:expat))) (define-public python2-pytz (package-with-python2 python-pytz)) - (define-public python-babel (package (name "python-babel") From 1f84ff51352b99ccf5b98cf16798a03c938465fa Mon Sep 17 00:00:00 2001 From: Muriithi Frederick Muriuki Date: Tue, 18 Jul 2017 11:37:06 +0300 Subject: [PATCH 0348/1227] gnu: Add python-clyent. * gnu/packages/python.scm (python-clyent, python2-clyent): New variables. --- gnu/packages/python.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index da139c2473..82be9e8542 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -676,6 +676,29 @@ saving time. Almost all of the Olson timezones are supported.") (define-public python2-pytz (package-with-python2 python-pytz)) +(define-public python-clyent + (package + (name "python-clyent") + (version "1.2.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "clyent" version)) + (sha256 + (base32 + "1r9987qmy1pz3hq54160bapqsywpq14waw4w9x3ly8hmq7kpgfbj")))) + (build-system python-build-system) + (native-inputs + `(("python-mock" ,python-mock))) + (home-page "https://github.com/binstar/clyent") + (synopsis "Command line client library") + (description "Clyent is a Python command line utiliy library. It is used +by @code{binstar}, @code{binstar-build} and @code{chalmers}.") + (license license:bsd-3))) + +(define-public python2-clyent + (package-with-python2 python-clyent)) + (define-public python-babel (package (name "python-babel") From 513d35f191915484334d50e470199318711a2db5 Mon Sep 17 00:00:00 2001 From: Muriithi Frederick Muriuki Date: Tue, 18 Jul 2017 11:37:07 +0300 Subject: [PATCH 0349/1227] gnu: Add python-anaconda-client. * gnu/packages/package-management.scm (python-anaconda-client, python2-anaconda-client): New variables. Co-authored-by: Ricardo Wurmus --- gnu/packages/package-management.scm | 58 ++++++++++++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index d2e30781ba..73e6948d34 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2015, 2017 Ricardo Wurmus +;;; Copyright © 2017 Muriithi Frederick Muriuki ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,7 +26,7 @@ #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system python) - #:use-module ((guix licenses) #:select (gpl2+ gpl3+ lgpl2.1+ asl2.0)) + #:use-module ((guix licenses) #:select (gpl2+ gpl3+ lgpl2.1+ asl2.0 bsd-3)) #:use-module (gnu packages) #:use-module (gnu packages guile) #:use-module (gnu packages file) @@ -516,3 +517,58 @@ different. It recursively unpacks archives of many kinds and transforms various binary formats into more human readable forms to compare them. It can compare two tarballs, ISO images, or PDFs just as easily.") (license gpl3+))) + +(define-public python-anaconda-client + (package + (name "python-anaconda-client") + (version "1.6.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Anaconda-Platform/" + "anaconda-client/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1wv4wi6k5jz7rlwfgvgfdizv77x3cr1wa2aj0k1595g7fbhkjhz2")))) + (build-system python-build-system) + (propagated-inputs + `(("python-pyyaml" ,python-pyyaml) + ("python-requests" ,python-requests) + ("python-clyent" ,python-clyent))) + (native-inputs + `(("python-pytz" ,python-pytz) + ("python-dateutil" ,python-dateutil) + ("python-mock" ,python-mock) + ("python-coverage" ,python-coverage) + ("python-pillow" ,python-pillow))) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; This is needed for some tests. + (add-before 'check 'set-up-home + (lambda* _ (setenv "HOME" "/tmp") #t)) + (add-before 'check 'remove-network-tests + (lambda* _ + ;; Remove tests requiring a network connection + (let ((network-tests '("tests/test_upload.py" + "tests/test_authorizations.py" + "tests/test_login.py" + "tests/test_whoami.py" + "utils/notebook/tests/test_data_uri.py" + "utils/notebook/tests/test_base.py" + "utils/notebook/tests/test_downloader.py" + "inspect_package/tests/test_conda.py"))) + (with-directory-excursion "binstar_client" + (for-each delete-file network-tests))) + #t))))) + (home-page "https://github.com/Anaconda-Platform/anaconda-client") + (synopsis "Anaconda Cloud command line client library") + (description + "Anaconda Cloud command line client library provides an interface to +Anaconda Cloud. Anaconda Cloud is useful for sharing packages, notebooks and +environments.") + (license bsd-3))) + +(define-public python2-anaconda-client + (package-with-python2 python-anaconda-client)) From 4bc08b6e79e864ab2bfd21f387b669d7fda89880 Mon Sep 17 00:00:00 2001 From: Muriithi Frederick Muriuki Date: Tue, 18 Jul 2017 11:37:08 +0300 Subject: [PATCH 0350/1227] gnu: Add python-conda. * gnu/packages/package-management.scm (python-conda, python2-conda): New variables. Signed-off-by: Ricardo Wurmus --- gnu/packages/package-management.scm | 77 +++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 73e6948d34..1e46187988 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages tls) #:use-module (gnu packages ssh) #:use-module (gnu packages vim) + #:use-module (gnu packages serialization) #:use-module (srfi srfi-1) #:use-module (ice-9 match)) @@ -572,3 +573,79 @@ environments.") (define-public python2-anaconda-client (package-with-python2 python-anaconda-client)) + +(define-public python-conda + (package + (name "python-conda") + (version "4.3.16") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/conda/conda/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jq8hyrc5npb5sf4vw6s6by4602yj8f79vzpbwdfgpkn02nfk1dv")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'create-version-file + (lambda _ + (with-output-to-file "conda/.version" + (lambda () (display ,version))) + #t)) + (add-before 'check 'remove-failing-tests + (lambda _ + ;; These tests require internet/network access + (let ((network-tests '("test_cli.py" + "test_create.py" + "test_export.py" + "test_fetch.py" + "test_history.py" + "test_info.py" + "test_install.py" + "test_priority.py" + "conda_env/test_cli.py" + "conda_env/test_create.py" + "conda_env/specs/test_notebook.py" + "conda_env/utils/test_notebooks.py" + "core/test_index.py" + "core/test_repodata.py"))) + (with-directory-excursion "tests" + (for-each delete-file network-tests) + + ;; FIXME: This test creates a file, then deletes it and tests + ;; that the file was deleted. For some reason it fails when + ;; building with guix, but does not when you run it in the + ;; directory left when you build with the --keep-failed + ;; option + (delete-file "gateways/disk/test_delete.py") + #t)))) + (replace 'check + (lambda _ + (setenv "HOME" "/tmp") + (zero? (system* "py.test"))))))) + (native-inputs + `(("python-ruamel.yaml" ,python-ruamel.yaml) + ("python-requests" ,python-requests) + ("python-pycosat" ,python-pycosat) + ("python-pytest" ,python-pytest) + ("python-responses" ,python-responses) + ("python-pyyaml" ,python-pyyaml) + ("python-anaconda-client" ,python-anaconda-client))) + (home-page "https://github.com/conda/conda") + (synopsis "Cross-platform, OS-agnostic, system-level binary package manager") + (description + "Conda is a cross-platform, Python-agnostic binary package manager. It +is the package manager used by Anaconda installations, but it may be used for +other systems as well. Conda makes environments first-class citizens, making +it easy to create independent environments even for C libraries. Conda is +written entirely in Python. + +This package provides Conda as a library.") + (license bsd-3))) + +(define-public python2-conda + (package-with-python2 python-conda)) From 84fcb58050f4dc18cd3ec3ae13846789de5223b2 Mon Sep 17 00:00:00 2001 From: Muriithi Frederick Muriuki Date: Tue, 18 Jul 2017 11:37:09 +0300 Subject: [PATCH 0351/1227] gnu: Add conda. * gnu/packages/package-management.scm (conda): New variable. Co-authored-by: Ricardo Wurmus --- gnu/packages/package-management.scm | 49 +++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 1e46187988..d9ea6579e3 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -649,3 +649,52 @@ This package provides Conda as a library.") (define-public python2-conda (package-with-python2 python-conda)) + +(define-public conda + (package (inherit python-conda) + (name "conda") + (arguments + (substitute-keyword-arguments (package-arguments python-conda) + ((#:phases phases) + `(modify-phases ,phases + (replace 'build + (lambda* (#:key outputs #:allow-other-keys) + ;; This test fails when run before installation. + (delete-file "tests/test_activate.py") + + ;; Fix broken defaults + (substitute* "conda/base/context.py" + (("return sys.prefix") + (string-append "return \"" (assoc-ref outputs "out") "\"")) + (("return (prefix_is_writable\\(self.root_prefix\\))" _ match) + (string-append "return False if self.root_prefix == self.conda_prefix else " + match))) + + ;; The util/setup-testing.py is used to build conda in + ;; application form, rather than the default, library form. + ;; With this, we are able to run commands like `conda --help` + ;; directly on the command line + (zero? (system* "python" "utils/setup-testing.py" "build_py")))) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (target (string-append out "/lib/python" + ((@@ (guix build python-build-system) + get-python-version) + (assoc-ref inputs "python")) + "/site-packages/"))) + ;; The installer aborts if the target directory is not on + ;; PYTHONPATH. + (setenv "PYTHONPATH" + (string-append target ":" (getenv "PYTHONPATH"))) + + ;; And it aborts if the directory doesn't exist. + (mkdir-p target) + (zero? (system* "python" "utils/setup-testing.py" "install" + (string-append "--prefix=" out)))))))))) + (description + "Conda is a cross-platform, Python-agnostic binary package manager. It +is the package manager used by Anaconda installations, but it may be used for +other systems as well. Conda makes environments first-class citizens, making +it easy to create independent environments even for C libraries. Conda is +written entirely in Python."))) From f03d8d67a50b86078d4d196fce656a1fa562b34a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 22 Jul 2017 12:46:11 +0200 Subject: [PATCH 0352/1227] gnu: acct: Update to 6.6.4. * gnu/packages/acct.scm (acct): Update to 6.6.4. --- gnu/packages/acct.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/acct.scm b/gnu/packages/acct.scm index c86713cb35..a0aac153b0 100644 --- a/gnu/packages/acct.scm +++ b/gnu/packages/acct.scm @@ -25,7 +25,7 @@ (define-public acct (package (name "acct") - (version "6.6.3") + (version "6.6.4") (source (origin (method url-fetch) @@ -33,7 +33,7 @@ version ".tar.gz")) (sha256 (base32 - "14x0zklwlg7cc7amlyzffqr8az3fqj1h9dyj0hvl1kpi7cr7kbjy")))) + "0gv6m8giazshvgpvwbng98chpas09myyfw1zr2y7hqxib0mvy5ac")))) (build-system gnu-build-system) (home-page "https://gnu.org/software/acct/") (synopsis "Standard login and process accounting utilities") From f7975a3bdedb03522ec89f985b816213c1a76696 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 22 Jul 2017 12:59:24 +0200 Subject: [PATCH 0353/1227] gnu: nano: Update to 2.8.6. * gnu/packages/nano.scm (nano): Update to 2.8.6. --- gnu/packages/nano.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/nano.scm b/gnu/packages/nano.scm index 093adaae0a..4d0f89996e 100644 --- a/gnu/packages/nano.scm +++ b/gnu/packages/nano.scm @@ -29,7 +29,7 @@ (define-public nano (package (name "nano") - (version "2.8.5") + (version "2.8.6") (source (origin (method url-fetch) @@ -37,7 +37,7 @@ version ".tar.xz")) (sha256 (base32 - "1hl9gni3qmblr062a7w6vz16gvxbswgc5c19c923ja0bk48vyhyb")))) + "0xjpm2ka56x5ycrgjh06v110na13xlbm42bs8qibk7g578m9cils")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) From bc35c9d3189cd50349e2764ee478fea13d9ae9ab Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 22 Jul 2017 13:05:25 +0200 Subject: [PATCH 0354/1227] gnu: font-gnu-unifont: Update to 10.0.05. * gnu/packages/fonts.scm (font-gnu-unifont): Update to 10.0.05. --- gnu/packages/fonts.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 7687ed2350..51073eff9f 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -561,7 +561,7 @@ languages, plus Greek and Cyrillic.") (define-public font-gnu-unifont (package (name "font-gnu-unifont") - (version "10.0.04") + (version "10.0.05") (source (origin (method url-fetch) (uri (string-append @@ -569,7 +569,7 @@ languages, plus Greek and Cyrillic.") version ".tar.gz")) (sha256 (base32 - "150p79rq4rzb4pbg2dwcz93k1chzzvm0l0nwh60spw19nfyrxj0p")))) + "07sajc32l2knnz6gmd81zxjhcxq8xr6r2kf42wig56vj05s3d1cb")))) (build-system gnu-build-system) (outputs '("out" ; TrueType version "pcf" ; PCF (bitmap) version From 0cd95cefe0b09626833a67e5ab4072148f3bffdf Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 22 Jul 2017 13:06:50 +0200 Subject: [PATCH 0355/1227] gnu: parallel: Update to 20170722. * gnu/packages/parallel.scm (parallel): Update to 20170722. --- gnu/packages/parallel.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 37126040af..179fa7ed32 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -45,7 +45,7 @@ (define-public parallel (package (name "parallel") - (version "20170522") + (version "20170722") (source (origin (method url-fetch) @@ -53,7 +53,7 @@ version ".tar.bz2")) (sha256 (base32 - "1k5wlcc0dr2fxna0vi48s0l6pvbyl4pbclbih4103f1155im23ca")))) + "117g50bx1kcbrqix0f1539z5rzhvgsni2wddjv939wcxkrdb1idx")))) (build-system gnu-build-system) (arguments `(#:phases From eb2b5f9d03caefe9052e20a18dd740d1be37c927 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 13:26:50 +0200 Subject: [PATCH 0356/1227] gnu: slop: Update to 6.3.47. * gnu/packages/xdisorg.scm (slop): Update to 6.3.47. [inputs]: Add GLEW. --- gnu/packages/xdisorg.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 11acf326ef..c8f4f9746f 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -452,7 +452,7 @@ of the screen selected by mouse.") (define-public slop (package (name "slop") - (version "6.3.45") + (version "6.3.47") (source (origin (method url-fetch) (uri (string-append @@ -461,12 +461,13 @@ of the screen selected by mouse.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0lzyjcg6yff1vzlsda45i57khajp56yrmcjfa5faw3i60fnqqiy7")))) + "1kjivsq4c7dr7ggp44k09xm97i9chg8czvachqrfnv6fiqvwys0i")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target (inputs - `(("glm" ,glm) + `(("glew" ,glew) + ("glm" ,glm) ("icu4c" ,icu4c) ("libxext" ,libxext) ("libxrender" ,libxrender) From 6027cb8a82429ffa53f50fc6d4bffcd78c57a752 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 13:30:41 +0200 Subject: [PATCH 0357/1227] gnu: maim: Update to 5.4.64. * gnu/packages/xdisorg.scm (maim): Update to 5.4.64. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index c8f4f9746f..d102077c91 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -485,7 +485,7 @@ selection's dimensions to stdout.") (define-public maim (package (name "maim") - (version "5.4.63") + (version "5.4.64") (source (origin (method url-fetch) (uri (string-append @@ -494,7 +494,7 @@ selection's dimensions to stdout.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0ncly3mmg9pihda3jfwmvfa4sd3xanrm8hpvfq7lr2rl8rqknx80")))) + "0y7ajwcp6x9q7581alz2b5xqijs5cb9l38h10fzinswqrcz53ak1")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target From 4e52739c61e1b54f4988181c425bb9cbb3d92378 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 14:07:34 +0200 Subject: [PATCH 0358/1227] gnu: Add python-flaky. * gnu/packages/python.scm (python-flaky, python2-flaky): New variables. --- gnu/packages/python.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 82be9e8542..619dc07ee0 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4639,6 +4639,35 @@ multivalue dictionary that retains the order of insertions and deletions.") (define-public python2-furl (package-with-python2 python-furl)) +(define-public python-flaky + (package + (name "python-flaky") + (version "3.4.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "flaky" version)) + (sha256 + (base32 + "18pkmf79rfkfpy1d2rrx3v55nxj762ilyk9rvd6s6dccxw58imsa")))) + (build-system python-build-system) + (arguments + ;; TODO: Tests require 'coveralls' and 'genty' which are not in Guix yet. + '(#:tests? #f)) + (home-page "https://github.com/box/flaky") + (synopsis "Automatically rerun flaky tests") + (description + "Flaky is a plugin for @code{nose} or @code{py.test} that automatically +reruns flaky tests. + +Ideally, tests reliably pass or fail, but sometimes test fixtures must rely +on components that aren't 100% reliable. With flaky, instead of removing +those tests or marking them to @code{@skip}, they can be automatically +retried.") + (license license:asl2.0))) + +(define-public python2-flaky + (package-with-python2 python-flaky)) + (define-public python-flask-babel (package (name "python-flask-babel") From 2580c2f07f2882552ecfee5206dccf9ada15c7e1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 14:19:43 +0200 Subject: [PATCH 0359/1227] gnu: python-pyopenssl: Update to 17.2.0. * gnu/packages/patches/python-pyopenssl-17.1.0-test-overflow.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. * gnu/packages/python.scm (python-pyopenssl, python2-pyopenssl): Update to 17.2.0. [native-inputs]: Add PYTHON-FLAKY. [source](patches): Remove. --- gnu/local.mk | 1 - ...ython-pyopenssl-17.1.0-test-overflow.patch | 36 ------------------- gnu/packages/python.scm | 9 +++-- 3 files changed, 4 insertions(+), 42 deletions(-) delete mode 100644 gnu/packages/patches/python-pyopenssl-17.1.0-test-overflow.patch diff --git a/gnu/local.mk b/gnu/local.mk index 6d9e570622..bc2d79c1a8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -972,7 +972,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \ %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \ %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \ - %D%/packages/patches/python-pyopenssl-17.1.0-test-overflow.patch \ %D%/packages/patches/python2-subprocess32-disable-input-test.patch \ %D%/packages/patches/qemu-CVE-2017-7493.patch \ %D%/packages/patches/qemu-CVE-2017-8112.patch \ diff --git a/gnu/packages/patches/python-pyopenssl-17.1.0-test-overflow.patch b/gnu/packages/patches/python-pyopenssl-17.1.0-test-overflow.patch deleted file mode 100644 index 06b2f4fe03..0000000000 --- a/gnu/packages/patches/python-pyopenssl-17.1.0-test-overflow.patch +++ /dev/null @@ -1,36 +0,0 @@ -Resolves a test failure on 32-bit platforms. - -https://github.com/pyca/pyopenssl/issues/657 - -Patch copied from upstream source repository: - -https://github.com/pyca/pyopenssl/commit/ecc0325479c0d5c5f2ca88b4550e87cdb59d6c95 - -From ecc0325479c0d5c5f2ca88b4550e87cdb59d6c95 Mon Sep 17 00:00:00 2001 -From: Alex Gaynor -Date: Thu, 6 Jul 2017 22:14:44 -0400 -Subject: [PATCH] Fixed #657 -- handle OverflowErrors on large allocation - requests - ---- - tests/test_rand.py | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/tests/test_rand.py b/tests/test_rand.py -index bdd3af08..6adf72a1 100644 ---- a/tests/test_rand.py -+++ b/tests/test_rand.py -@@ -32,10 +32,10 @@ def test_bytes_wrong_args(self, args): - - def test_insufficient_memory(self): - """ -- `OpenSSL.rand.bytes` raises `MemoryError` if more bytes are requested -- than will fit in memory. -+ `OpenSSL.rand.bytes` raises `MemoryError` or `OverflowError` if more -+ bytes are requested than will fit in memory. - """ -- with pytest.raises(MemoryError): -+ with pytest.raises((MemoryError, OverflowError)): - rand.bytes(sys.maxsize) - - def test_bytes(self): diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 619dc07ee0..ce2864e1c6 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7709,16 +7709,14 @@ message digests and key derivation functions.") (define-public python-pyopenssl (package (name "python-pyopenssl") - (version "17.1.0") + (version "17.2.0") (source (origin (method url-fetch) (uri (pypi-uri "pyOpenSSL" version)) - (patches - (search-patches "python-pyopenssl-17.1.0-test-overflow.patch")) (sha256 (base32 - "0qwmqhfsq84ydir9dz273ypmlcvs7v71m1jns0sd4k0h6lfsa82s")))) + "0d283g4zi0hr9papd24mjl70mi15gyzq6fx618rizi87dgipqqax")))) (build-system python-build-system) (arguments '(#:phases @@ -7742,7 +7740,8 @@ message digests and key derivation functions.") (inputs `(("openssl" ,openssl))) (native-inputs - `(("python-pretend" ,python-pretend) + `(("python-flaky" ,python-flaky) + ("python-pretend" ,python-pretend) ("python-pytest" ,python-pytest-3.0))) (home-page "https://github.com/pyca/pyopenssl") (synopsis "Python wrapper module around the OpenSSL library") From c799eb2eb8b1a820147af96988eddaa9f752994b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 14:27:19 +0200 Subject: [PATCH 0360/1227] gnu: Remove python-fake-factory. Superseded by python-faker since ce7911ddae5d30ba73c8c9552b7d4e71268e5db3. * gnu/packages/python.scm (python-fake-factory, python2-fake-factory): Remove variables. --- gnu/packages/python.scm | 47 ----------------------------------------- 1 file changed, 47 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index ce2864e1c6..e7a40dfcdd 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -11890,53 +11890,6 @@ addresses, and phone numbers.") `(("python2-ipaddress" ,python2-ipaddress) ,@(package-propagated-inputs base)))))) -(define-public python-fake-factory - (package - (name "python-fake-factory") - (version "0.7.2") - (source (origin - (method url-fetch) - (uri (pypi-uri "fake-factory" version)) - (sha256 - (base32 - "0vs0dkmg0dlaxf8w6q2i3k0i03gmp56ablldv7ci9x3nbadkn71g")) - (patches - (search-patches - "python-fake-factory-fix-build-32bit.patch")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (zero? (system* "python" "-m" "unittest" "-v" "faker.tests"))))))) - (native-inputs - `(;; For testing - ("python-email-validator" ,python-email-validator) - ("python-mock" ,python-mock) - ("python-ukpostcodeparser" ,python-ukpostcodeparser))) - (propagated-inputs - `(("python-dateutil" ,python-dateutil) - ("python-six" ,python-six))) - (home-page "https://github.com/joke2k/faker") - (synopsis "Python package that generates fake data") - (description - "Faker is a Python package that generates fake data such as names, -addresses, and phone numbers.") - (license license:expat) - (properties `((python2-variant . ,(delay python2-fake-factory)) - (superseded . ,python-faker))))) - -(define-public python2-fake-factory - (let ((base (package-with-python2 (strip-python2-variant - python-fake-factory)))) - (package - (inherit base) - (properties `((superseded . ,python2-faker))) - (propagated-inputs - `(("python2-ipaddress" ,python2-ipaddress) - ,@(package-propagated-inputs base)))))) - (define-public python-pyaml (package (name "python-pyaml") From aa51da7eef28706317ffd7c717f0c881b1e45748 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 15:07:45 +0200 Subject: [PATCH 0361/1227] gnu: Remove python-fake-factory leftovers. This is a followup to c799eb2eb8b1a820147af96988eddaa9f752994b. * gnu/packages/patches/python-fake-factory-fix-build-32bit.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../python-fake-factory-fix-build-32bit.patch | 36 ------------------- 2 files changed, 37 deletions(-) delete mode 100644 gnu/packages/patches/python-fake-factory-fix-build-32bit.patch diff --git a/gnu/local.mk b/gnu/local.mk index bc2d79c1a8..dd111e0299 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -961,7 +961,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-statsmodels-fix-tests.patch \ %D%/packages/patches/python-configobj-setuptools.patch \ %D%/packages/patches/python-cython-fix-tests-32bit.patch \ - %D%/packages/patches/python-fake-factory-fix-build-32bit.patch \ %D%/packages/patches/python-faker-fix-build-32bit.patch \ %D%/packages/patches/python-pandas-skip-failing-tests.patch \ %D%/packages/patches/python-paste-remove-website-test.patch \ diff --git a/gnu/packages/patches/python-fake-factory-fix-build-32bit.patch b/gnu/packages/patches/python-fake-factory-fix-build-32bit.patch deleted file mode 100644 index cb60896fad..0000000000 --- a/gnu/packages/patches/python-fake-factory-fix-build-32bit.patch +++ /dev/null @@ -1,36 +0,0 @@ -These tests fail on 32-bit due to an overflow. - -Upstream bug URL: https://github.com/joke2k/faker/issues/408 - -diff --git a/faker/tests/__init__.py b/faker/tests/__init__.py -index 6026772..58b6b83 100644 ---- a/faker/tests/__init__.py -+++ b/faker/tests/__init__.py -@@ -384,7 +384,6 @@ class FactoryTestCase(unittest.TestCase): - provider = Provider - # test century - self.assertTrue(self._datetime_to_time(provider.date_time_this_century(after_now=False)) <= self._datetime_to_time(datetime.datetime.now())) -- self.assertTrue(self._datetime_to_time(provider.date_time_this_century(before_now=False, after_now=True)) >= self._datetime_to_time(datetime.datetime.now())) - # test decade - self.assertTrue(self._datetime_to_time(provider.date_time_this_decade(after_now=False)) <= self._datetime_to_time(datetime.datetime.now())) - self.assertTrue(self._datetime_to_time(provider.date_time_this_decade(before_now=False, after_now=True)) >= self._datetime_to_time(datetime.datetime.now())) -@@ -413,8 +412,6 @@ class FactoryTestCase(unittest.TestCase): - - # ensure all methods provide timezone aware datetimes - with self.assertRaises(TypeError): -- provider.date_time_this_century(before_now=False, after_now=True, tzinfo=utc) >= datetime.datetime.now() -- with self.assertRaises(TypeError): - provider.date_time_this_decade(after_now=False, tzinfo=utc) <= datetime.datetime.now() - with self.assertRaises(TypeError): - provider.date_time_this_year(after_now=False, tzinfo=utc) <= datetime.datetime.now() -@@ -423,7 +420,6 @@ class FactoryTestCase(unittest.TestCase): - - # test century - self.assertTrue(provider.date_time_this_century(after_now=False, tzinfo=utc) <= datetime.datetime.now(utc)) -- self.assertTrue(provider.date_time_this_century(before_now=False, after_now=True, tzinfo=utc) >= datetime.datetime.now(utc)) - # test decade - self.assertTrue(provider.date_time_this_decade(after_now=False, tzinfo=utc) <= datetime.datetime.now(utc)) - self.assertTrue(provider.date_time_this_decade(before_now=False, after_now=True, tzinfo=utc) >= datetime.datetime.now(utc)) --- -2.11.1 - From a35a1e9c13a03dddc38e75c2393fe123405ce88e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 22 Jul 2017 17:22:07 +0200 Subject: [PATCH 0362/1227] gnu: r-genomicranges: Update to 1.28.4. * gnu/packages/bioinformatics.scm (r-genomicranges): Update to 1.28.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 1caddb9eed..b5bf562d06 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6784,13 +6784,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.28.0") + (version "1.28.4") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "10x9zx0b7j05d1j6p0xs4q4f4wzbhf3rq64wzi9cgv7f44q43a5n")))) + "1y15kg1q81h8rmga83ljiwr8whkajcargfjiljr212d6if17ys1z")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) From 3a4b0b126bf602f44807638d80296ff2d215a924 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 22 Jul 2017 17:31:19 +0200 Subject: [PATCH 0363/1227] gnu: r-s4vectors: Update to 0.14.3. * gnu/packages/bioinformatics.scm (r-s4vectors): Update to 0.14.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 b5bf562d06..16339f9d6e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6532,13 +6532,13 @@ abnormal copy number.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.14.0") + (version "0.14.3") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "0ywwrs4d752xfk0p0w122kvi0xvp6nmxnyynchbsa8zciqymhgv8")))) + "1r7s4pfw026qazzic090mhk8d9m39j2nwl87dyqcpdylyq7gq5qs")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) From f97c67a275c2d95e512dcfa8089a7a15cda8665a Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 22 Jul 2017 14:44:24 -0400 Subject: [PATCH 0364/1227] gnu: linux-libre@4.4: Update to 4.4.78. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.78. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 93a6a583a2..315f24061e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -379,8 +379,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.77" - "0y1myjwbqjx8k9c2z83p04a7ncl2ca6gkyxk0zyyabjfvxb5g9k9" + (make-linux-libre "4.4.78" + "0g8pc0kam33rn2dx9fkp7w749s38qs2iykawpj0k9jm19775hn4k" %intel-compatible-systems #:configuration-file kernel-config)) From d422eac54ef3040a4fd66107d3f8cc697273b229 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 22 Jul 2017 14:45:06 -0400 Subject: [PATCH 0365/1227] gnu: linux-libre@4.9: Update to 4.9.39. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.39. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 315f24061e..100de3b683 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -373,8 +373,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.38" - "13pfawwnf46yqsrx3k5mj4pa7cs2x4v23qi8ncpxz0vqzgz9xxrd" + (make-linux-libre "4.9.39" + "03rnbz1wf3d0fi5zrhygx1b20bx23fy310d8h74zc6z4jh6fsbx3" %intel-compatible-systems #:configuration-file kernel-config)) From 30f8349efb31dc1fb1bf628ee0e609683da311c3 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 22 Jul 2017 14:46:00 -0400 Subject: [PATCH 0366/1227] gnu: linux-libre: Update to 4.12.3. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.3. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 100de3b683..94314d3f09 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -363,8 +363,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.2") -(define %linux-libre-hash "12jqvkp7vyhmqahkk2yv6qdfxan9r6y1999hcbmjl4z6qkv38pc3") +(define %linux-libre-version "4.12.3") +(define %linux-libre-hash "1b02snh41fgr5i55wlc86nvksyzy1cq994mkmj195pa57hy6y6ak") (define-public linux-libre (make-linux-libre %linux-libre-version From 056468dc5fe8edcce513b2f962156d8b56fc0b04 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 22 Jul 2017 23:45:53 +0200 Subject: [PATCH 0367/1227] gnu: Add cran module. * gnu/packages/cran.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/packages/statistics.scm (r-colorspace): Move to cran.scm. --- gnu/local.mk | 1 + gnu/packages/cran.scm | 44 +++++++++++++++++++++++++++++++++++++ gnu/packages/statistics.scm | 21 +----------------- 3 files changed, 46 insertions(+), 20 deletions(-) create mode 100644 gnu/packages/cran.scm diff --git a/gnu/local.mk b/gnu/local.mk index dd111e0299..d471c3b028 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -99,6 +99,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/cpio.scm \ %D%/packages/cpp.scm \ %D%/packages/cppi.scm \ + %D%/packages/cran.scm \ %D%/packages/cross-base.scm \ %D%/packages/crypto.scm \ %D%/packages/cryptsetup.scm \ diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm new file mode 100644 index 0000000000..9ebfbbed2d --- /dev/null +++ b/gnu/packages/cran.scm @@ -0,0 +1,44 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages cran) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix utils) + #:use-module (guix build-system r)) + +(define-public r-colorspace + (package + (name "r-colorspace") + (version "1.3-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "colorspace" version)) + (sha256 + (base32 "0d1ya7hx4y58n5ivwmdmq2zgh0g2sbv7ykh13n85c1355csd57yx")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/colorspace") + (synopsis "Color space manipulation") + (description + "This package carries out a mapping between assorted color spaces +including RGB, HSV, HLS, CIEXYZ, CIELUV, HCL (polar CIELUV), CIELAB and polar +CIELAB. Qualitative, sequential, and diverging color palettes based on HCL +colors are provided.") + (license license:bsd-3))) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 41c0668151..604bdf9c5f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -34,6 +34,7 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages compression) + #:use-module (gnu packages cran) #:use-module (gnu packages curl) #:use-module (gnu packages gcc) #:use-module (gnu packages gtk) @@ -644,26 +645,6 @@ interactive data exploration and manipulation and optionally leverage caching.") (license license:gpl2))) -(define-public r-colorspace - (package - (name "r-colorspace") - (version "1.3-2") - (source - (origin - (method url-fetch) - (uri (cran-uri "colorspace" version)) - (sha256 - (base32 "0d1ya7hx4y58n5ivwmdmq2zgh0g2sbv7ykh13n85c1355csd57yx")))) - (build-system r-build-system) - (home-page "http://cran.r-project.org/web/packages/colorspace") - (synopsis "Color space manipulation") - (description - "This package carries out a mapping between assorted color spaces -including RGB, HSV, HLS, CIEXYZ, CIELUV, HCL (polar CIELUV), CIELAB and polar -CIELAB. Qualitative, sequential, and diverging color palettes based on HCL -colors are provided.") - (license license:bsd-3))) - (define-public r-dichromat (package (name "r-dichromat") From 3befd0a97caa16982adf54fb482f6229b37b65ed Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 18 Jul 2017 16:36:42 +0200 Subject: [PATCH 0368/1227] gnu: Add qscintilla. * gnu/packages/qt.scm (qscintilla): New variable. Co-authored-by: Quiliro --- gnu/packages/qt.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 65067efe75..5e5e5cdb37 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -5,6 +5,8 @@ ;;; Copyright © 2015, 2016, 2017 Efraim Flashner ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 Thomas Danckaert +;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2017 Quiliro ;;; ;;; This file is part of GNU Guix. ;;; @@ -1374,6 +1376,45 @@ contain over 620 classes.") (inputs `(("python" ,python-2))))) +(define-public qscintilla + (package + (name "qscintilla") + (version "2.10.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/pyqt/QScintilla2/" + "QScintilla-" version "/QScintilla_gpl-" + version ".tar.gz")) + (sha256 + (base32 + "0r7s7ndblv3jc0xig1y4l64b6mfr879cdv3zwdndn27rj6fqmycp")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (chdir "Qt4Qt5") + (substitute* "qscintilla.pro" + (("\\$\\$\\[QT_INSTALL_LIBS\\]") + (string-append out "/lib")) + (("\\$\\$\\[QT_INSTALL_HEADERS\\]") + (string-append out "/include")) + (("\\$\\$\\[QT_INSTALL_TRANSLATIONS\\]") + (string-append out "/translations")) + (("\\$\\$\\[QT_INSTALL_DATA\\]") out) + (("\\$\\$\\[QT_HOST_DATA\\]") out)) + (zero? (system* "qmake")))))))) + (native-inputs `(("qtbase" ,qtbase))) + (home-page "http://www.riverbankcomputing.co.uk/software/qscintilla/intro") + (synopsis "Qt port of the Scintilla C++ editor control") + (description "QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ +editor control. QScintilla includes features especially useful when editing +and debugging source code. These include support for syntax styling, error +indicators, code completion and call tips.") + (license license:gpl3+))) + (define-public qtkeychain (package (name "qtkeychain") From 06d04dbcfc22950e5610f9b78d3bfe58a62a2f62 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 18 Jul 2017 16:39:10 +0200 Subject: [PATCH 0369/1227] gnu: Add python-qscintilla. * gnu/packages/qt.scm (python-qscintilla): New variable. Co-authored-by: Quiliro --- gnu/packages/qt.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 5e5e5cdb37..b0fc7432cb 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -1415,6 +1415,46 @@ and debugging source code. These include support for syntax styling, error indicators, code completion and call tips.") (license license:gpl3+))) +(define-public python-qscintilla + (package (inherit qscintilla) + (name "python-qscintilla") + (arguments + `(#:configure-flags + (list "--pyqt=PyQt5" + (string-append "--pyqt-sipdir=" + (assoc-ref %build-inputs "python-pyqt") + "/share/sip") + (string-append "--qsci-incdir=" + (assoc-ref %build-inputs "qscintilla") + "/include") + (string-append "--qsci-libdir=" + (assoc-ref %build-inputs "qscintilla") + "/lib")) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs configure-flags #:allow-other-keys) + (chdir "Python") + (and (zero? (apply system* "python3" "configure.py" + configure-flags)) + ;; Install to the right directory + (begin + (substitute* '("Makefile" + "Qsci/Makefile") + (("\\$\\(INSTALL_ROOT\\)/gnu/store/[^/]+") + (assoc-ref outputs "out"))) + #t))))))) + (inputs + `(("qscintilla" ,qscintilla) + ("python" ,python) + ("python-pyqt" ,python-pyqt))) + (description "QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ +editor control. QScintilla includes features especially useful when editing +and debugging source code. These include support for syntax styling, error +indicators, code completion and call tips. + +This package provides the Python bindings."))) + (define-public qtkeychain (package (name "qtkeychain") From 2456153adc3422153b95c154df02da80a2ce8e95 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 18 Jul 2017 16:39:11 +0200 Subject: [PATCH 0370/1227] gnu: Add python-pyqt+qscintilla. * gnu/packages/qt.scm (python-pyqt+qscintilla): New variable. --- gnu/packages/qt.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index b0fc7432cb..3e3588a505 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -30,6 +30,7 @@ #:use-module (guix build utils) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) + #:use-module (guix build-system trivial) #:use-module (guix packages) #:use-module (guix utils) #:use-module (gnu packages) @@ -1455,6 +1456,30 @@ indicators, code completion and call tips. This package provides the Python bindings."))) +;; PyQt only looks for modules in its own directory. It ignores environment +;; variables such as PYTHONPATH, so we need to build a union package to make +;; it work. +(define-public python-pyqt+qscintilla + (package (inherit python-pyqt) + (name "python-pyqt+qscintilla") + (source #f) + (build-system trivial-build-system) + (arguments + '(#:modules ((guix build union)) + #:builder (begin + (use-modules (ice-9 match) + (guix build union)) + (match %build-inputs + (((names . directories) ...) + (union-build (assoc-ref %outputs "out") + directories)))))) + (inputs + `(("python-pyqt" ,python-pyqt) + ("python-qscintilla" ,python-qscintilla))) + (synopsis "Union of PyQt and the Qscintilla extension") + (description + "This package contains the union of PyQt and the Qscintilla extension."))) + (define-public qtkeychain (package (name "qtkeychain") From a68a83f0156d17dfdfb95557e5cf36a1a024dfc7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 18 Jul 2017 16:39:12 +0200 Subject: [PATCH 0371/1227] gnu: Add openmolar. * gnu/packages/medical.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Co-authored-by: Quiliro --- gnu/local.mk | 1 + gnu/packages/medical.scm | 60 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 gnu/packages/medical.scm diff --git a/gnu/local.mk b/gnu/local.mk index d471c3b028..12cd8865a1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -266,6 +266,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/maths.scm \ %D%/packages/mc.scm \ %D%/packages/mcrypt.scm \ + %D%/packages/medical.scm \ %D%/packages/mes.scm \ %D%/packages/messaging.scm \ %D%/packages/mingw.scm \ diff --git a/gnu/packages/medical.scm b/gnu/packages/medical.scm new file mode 100644 index 0000000000..c0d9d597b7 --- /dev/null +++ b/gnu/packages/medical.scm @@ -0,0 +1,60 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2017 Quiliro +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages medical) + #:use-module (guix build-system python) + #:use-module (guix download) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (gnu packages python) + #:use-module (gnu packages qt)) + +(define-public openmolar-1 + (package + (name "openmolar") + (version "1.0.15-gd81f9e5") + (source (origin + (method url-fetch) + (uri (string-append + "https://static.openmolar.com/om1/releases/openmolar-" + version ".tar.gz")) + (sha256 + (base32 + "1cfdzfbi6wslw7k0dc6ad6xrgs75iwsl91cg73w4myswaqqkfk3z")))) + (build-system python-build-system) + (arguments + `(#:use-setuptools? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-/usr + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "setup.py" + (("/usr") (assoc-ref outputs "out"))) + #t))))) + (inputs + `(("python-pyqt+qscintilla" ,python-pyqt+qscintilla) + ("python-mysqlclient" ,python-mysqlclient) + ("qscintilla" ,qscintilla))) + (home-page "https://openmolar.com/om1") + (synopsis "Dental practice management software") + (description "Openmolar is a dental practice management suite. Its +functionality includes appointments, patient records, treatment planning, +billing etc. It is a full featured, reliable and thoroughly tested +application and has been translated into many languages.") + (license gpl3+))) From 4b8b245b83a69b6f214b1cc517df3f31dda1000a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 23 Jul 2017 01:26:33 +0200 Subject: [PATCH 0372/1227] gnu: mosh: Update to 1.3.2. * gnu/packages/ssh.scm (mosh): Update to 1.3.2. --- gnu/packages/ssh.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 89df37a636..22737b7aec 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -343,13 +343,13 @@ authentication scheme.") (define-public mosh (package (name "mosh") - (version "1.3.0") + (version "1.3.2") (source (origin (method url-fetch) (uri (string-append "https://mosh.org/mosh-" version ".tar.gz")) (sha256 (base32 - "0xikz40q873g9ihvz3x6bwkcb9hb8kcnp5wpcmb72pg5c7s143ij")))) + "05hjhlp6lk8yjcy59zywpf0r6s0h0b9zxq0lw66dh9x8vxrhaq6s")))) (build-system gnu-build-system) (arguments '(#:phases From e745221408c92df511c383dec6c78ef6c5e1d177 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 23 Jul 2017 01:59:32 +0200 Subject: [PATCH 0373/1227] gnu: youtube-dl: Update to 2017.07.23. * gnu/packages/video.scm (youtube-dl): Update to 2017.07.23. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index ed9ad74142..d953ca0fd4 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.07.15") + (version "2017.07.23") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1jmmi50hysgad9828niz03rm3y9v5ir26n4lmksd5jk1ddh0anb6")))) + "0h8jim7qx7b97wg7s8izz3and1xp70b9clqwpxl33xls9linh04m")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From 36378bd57ec31ba2bbedbdbdbd77b5b0f82f3b8a Mon Sep 17 00:00:00 2001 From: Ryan Moe Date: Sat, 22 Jul 2017 07:18:42 -0700 Subject: [PATCH 0374/1227] gnu: quassel: Enable TLS. * gnu/packages/patches/quassel-fix-tls-check.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/irc.scm (quassel)[source]: Use it. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 + gnu/packages/irc.scm | 1 + .../patches/quassel-fix-tls-check.patch | 25 +++++++++++++++++++ 3 files changed, 27 insertions(+) create mode 100644 gnu/packages/patches/quassel-fix-tls-check.patch diff --git a/gnu/local.mk b/gnu/local.mk index 12cd8865a1..8d3916e26d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -984,6 +984,7 @@ dist_patch_DATA = \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/quagga-reproducible-build.patch \ + %D%/packages/patches/quassel-fix-tls-check.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/rapicorn-isnan.patch \ %D%/packages/patches/raptor2-heap-overflow.patch \ diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 011665d387..1d6ac82e5f 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -66,6 +66,7 @@ (method url-fetch) (uri (string-append "http://quassel-irc.org/pub/quassel-" version ".tar.bz2")) + (patches (search-patches "quassel-fix-tls-check.patch")) (sha256 (base32 "0ka456fb8ha3w7g74xlzfg6w4azxjjxgrhl4aqpbwg3lnd6fbr4k")))) diff --git a/gnu/packages/patches/quassel-fix-tls-check.patch b/gnu/packages/patches/quassel-fix-tls-check.patch new file mode 100644 index 0000000000..057bc02a14 --- /dev/null +++ b/gnu/packages/patches/quassel-fix-tls-check.patch @@ -0,0 +1,25 @@ +This allows quasselclient to connect to SSL-enabled quasselcore instances. + +The check in qglobal.h requires -fPIC (not -fPIE as it is now). When this check +fails SSL / TLS is disabled. + +This patch comes from the upstream source repository [0] and can be +removed when the next version is packaged. + +[0] https://github.com/quassel/quassel/commit/4768c9e99f99b581d4e32e797db91d0182391696 + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -428,6 +428,11 @@ endif() + cmake_push_check_state(RESET) + set(CMAKE_REQUIRED_INCLUDES ${QT_INCLUDES} ${Qt5Core_INCLUDE_DIRS}) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Core_EXECUTABLE_COMPILE_FLAGS}") ++ ++if (USE_QT5 AND Qt5_POSITION_INDEPENDENT_CODE) ++ set(CMAKE_REQUIRED_FLAGS "-fPIC -DQT_NO_VERSION_TAGGING") ++endif() ++ + check_cxx_source_compiles(" + #include \"qglobal.h\" + #if defined QT_NO_SSL + From 7e3c977da6ea15acfad361200cdde12636406b61 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 12 Jul 2017 19:32:51 +0000 Subject: [PATCH 0375/1227] gnu: Add oksh. * gnu/packages/shells.scm (oksh): New variable. Signed-off-by: Leo Famulari --- gnu/packages/shells.scm | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index c66c575c18..8d2a957eae 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2016 Tobias Geerinckx-Rice ;;; Copyright © 2016 Stefan Reichör ;;; Copyright © 2017 Ricardo Wurmus -;;; Copyright © 2017 ng0 +;;; Copyright © 2017 ng0 ;;; Copyright © 2017 Leo Famulari ;;; Copyright © 2017 Arun Isaac ;;; @@ -553,6 +553,29 @@ extra programs. > is just another unix command, < is essentially cat(1). A @code{andglob} program is also provided along with s.") (license bsd-3)))) +(define-public oksh + (package + (name "oksh") + (version "0.5.9") + (source + (origin + (method url-fetch) + (uri (string-append "https://connochaetos.org/oksh/oksh-" + version ".tar.gz")) + (sha256 + (base32 + "0ln9yf6pxngsviqszv8klnnvn8vcpplvj1njdn8xr2y8frkbw8r3")))) + (build-system gnu-build-system) + (arguments + `(; The test files are not part of the distributed tarball. + #:tests? #f)) + (home-page "https://connochaetos.org/oksh") + (synopsis "Port of OpenBSD Korn Shell") + (description + "Oksh is a port of the OpenBSD Korn Shell. +The OpenBSD Korn Shell is a cleaned up and enhanced ksh.") + (license gpl3+))) + (define-public loksh (package (name "loksh") From c62d1a6e6ca693a97eefb3289bea39ddb9779988 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 22 Jul 2017 20:38:20 +0000 Subject: [PATCH 0376/1227] gnu: bspwm: Update to 0.9.3. * gnu/packages/wm.scm (bspwm): Update to 0.9.3. Signed-off-by: Leo Famulari --- gnu/packages/wm.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index f901fc1d55..4250f7d16b 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016 Al McElrath ;;; Copyright © 2016 Carlo Zancanaro ;;; Copyright © 2016 Ludovic Courtès -;;; Copyright © 2016, 2017 ng0 +;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 doncatnip ;;; Copyright © 2016 Ivan Vilata i Balaguer ;;; Copyright © 2017 Mekeor Melire @@ -94,7 +94,7 @@ nested include statements).") (define-public bspwm (package (name "bspwm") - (version "0.9") + (version "0.9.3") (source (origin (file-name (string-append name "-" version ".tar.gz")) @@ -104,7 +104,7 @@ nested include statements).") version ".tar.gz")) (sha256 (base32 - "1pig0h2jk8wipyz90j69c4bk37bfyq60asnn0v0bqld2p2vjvyqy")))) + "17dwj7w16cdj7g4s2y2f96lgj5msq1s4543dnfa3rijlazzy6mmk")))) (build-system gnu-build-system) (inputs `(("libxcb" ,libxcb) From c842d425933d0b7d6c5e88bb5fd52c3008b8951d Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 6 Apr 2017 22:27:23 +1000 Subject: [PATCH 0377/1227] gnu: samtools: Use "modify-phases" syntax. * gnu/packages/bioinformatics.scm (samtools)[arguments]: Use "modify-phases" syntax. --- gnu/packages/bioinformatics.scm | 41 +++++++++++++++------------------ 1 file changed, 19 insertions(+), 22 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 16339f9d6e..7669b4c3f0 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4533,29 +4533,26 @@ to the user's query of interest.") #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) #:configure-flags (list "--with-ncurses") #:phases - (alist-cons-after - 'unpack 'patch-tests - (lambda _ - (substitute* "test/test.pl" - ;; The test script calls out to /bin/bash - (("/bin/bash") (which "bash"))) - #t) - (alist-cons-after - 'install 'install-library - (lambda* (#:key outputs #:allow-other-keys) - (let ((lib (string-append (assoc-ref outputs "out") "/lib"))) - (install-file "libbam.a" lib) + (modify-phases %standard-phases + (add-after 'unpack 'patch-tests + (lambda _ + (substitute* "test/test.pl" + ;; The test script calls out to /bin/bash + (("/bin/bash") (which "bash"))) #t)) - (alist-cons-after - 'install 'install-headers - (lambda* (#:key outputs #:allow-other-keys) - (let ((include (string-append (assoc-ref outputs "out") - "/include/samtools/"))) - (for-each (lambda (file) - (install-file file include)) - (scandir "." (lambda (name) (string-match "\\.h$" name)))) - #t)) - %standard-phases))))) + (add-after 'install 'install-library + (lambda* (#:key outputs #:allow-other-keys) + (let ((lib (string-append (assoc-ref outputs "out") "/lib"))) + (install-file "libbam.a" lib) + #t))) + (add-after 'install 'install-headers + (lambda* (#:key outputs #:allow-other-keys) + (let ((include (string-append (assoc-ref outputs "out") + "/include/samtools/"))) + (for-each (lambda (file) + (install-file file include)) + (scandir "." (lambda (name) (string-match "\\.h$" name)))) + #t)))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("ncurses" ,ncurses) ("perl" ,perl) From a9e4a1e641c3d24ce2aab65546dcac1fd9c37e47 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 6 Apr 2017 22:57:31 +1000 Subject: [PATCH 0378/1227] gnu: htslib: Update to 1.4.1. * gnu/packages/bioinformatics.scm (htslib): Update to 1.4.1. [inputs]: Add curl, openssl. --- gnu/packages/bioinformatics.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7669b4c3f0..97a58a5371 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3051,7 +3051,7 @@ manipulating HTS data.") (define-public htslib (package (name "htslib") - (version "1.3.1") + (version "1.4.1") (source (origin (method url-fetch) (uri (string-append @@ -3059,7 +3059,7 @@ manipulating HTS data.") version "/htslib-" version ".tar.bz2")) (sha256 (base32 - "1rja282fwdc25ql6izkhdyh8ppw8x2fs0w0js78zgkmqjlikmma9")))) + "1crkk79kgxcmrkmh5f58c4k93w4rz6lp97sfsq3s6556zxcxvll5")))) (build-system gnu-build-system) (arguments `(#:phases @@ -3071,7 +3071,9 @@ manipulating HTS data.") (("/bin/bash") (which "bash"))) #t))))) (inputs - `(("zlib" ,zlib))) + `(("openssl" ,openssl) + ("curl" ,curl) + ("zlib" ,zlib))) (native-inputs `(("perl" ,perl))) (home-page "http://www.htslib.org") From 4ab1644049ad2d1cf7a997dfa910a4d7d646e49f Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 6 Apr 2017 22:51:26 +1000 Subject: [PATCH 0379/1227] gnu: samtools: Update to 1.4.1. * gnu/packages/bioinformatics.scm (samtools): Update to 1.4.1. [arguments]: Add '--with-htslib=system' configure flag. [inputs]: Add htslib. --- gnu/packages/bioinformatics.scm | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 97a58a5371..f5122a1802 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4516,7 +4516,7 @@ to the user's query of interest.") (define-public samtools (package (name "samtools") - (version "1.3.1") + (version "1.4.1") (source (origin (method url-fetch) @@ -4525,7 +4525,7 @@ to the user's query of interest.") version "/samtools-" version ".tar.bz2")) (sha256 (base32 - "0znnnxc467jbf1as2dpskrjhfh8mbll760j6w6rdkwlwbqsp8gbc")))) + "0vzxjm5vkgvzynl7cssm1l560rqs2amdaib1x8sp2ch9b7bxx9xx")))) (build-system gnu-build-system) (arguments `(#:modules ((ice-9 ftw) @@ -4533,7 +4533,7 @@ to the user's query of interest.") (guix build gnu-build-system) (guix build utils)) #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) - #:configure-flags (list "--with-ncurses") + #:configure-flags (list "--with-ncurses" "--with-htslib=system") #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-tests @@ -4556,10 +4556,12 @@ to the user's query of interest.") (scandir "." (lambda (name) (string-match "\\.h$" name)))) #t)))))) (native-inputs `(("pkg-config" ,pkg-config))) - (inputs `(("ncurses" ,ncurses) - ("perl" ,perl) - ("python" ,python) - ("zlib" ,zlib))) + (inputs + `(("htslib" ,htslib) + ("ncurses" ,ncurses) + ("perl" ,perl) + ("python" ,python) + ("zlib" ,zlib))) (home-page "http://samtools.sourceforge.net") (synopsis "Utilities to efficiently manipulate nucleotide sequence alignments") (description From 98593f9f51c8f6e3c2208d8443fdf08cf4d633bb Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 7 Apr 2017 19:21:28 +1000 Subject: [PATCH 0380/1227] gnu: bcftools: Update to 1.4.1. * gnu/packages/bioinformatics.scm (bcftools): Update to 1.4.1. [arguments]: Move Makefile modifications from here ... [source]: ... to added patch. Adjust patch for update to 1.4. * gnu/packages/patches/bcftools-fix-makefile.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/bioinformatics.scm | 20 ++++------- .../patches/bcftools-fix-makefile.patch | 33 +++++++++++++++++++ 3 files changed, 41 insertions(+), 13 deletions(-) create mode 100644 gnu/packages/patches/bcftools-fix-makefile.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8d3916e26d..3397216e15 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -522,6 +522,7 @@ dist_patch_DATA = \ %D%/packages/patches/awesome-reproducible-png.patch \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-completion-directories.patch \ + %D%/packages/patches/bcftools-fix-makefile.patch \ %D%/packages/patches/binutils-ld-new-dtags.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/binutils-mips-bash-bug.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f5122a1802..87da4aed15 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -300,7 +300,7 @@ BAM files.") (define-public bcftools (package (name "bcftools") - (version "1.3.1") + (version "1.4.1") (source (origin (method url-fetch) (uri (string-append @@ -308,11 +308,12 @@ BAM files.") version "/bcftools-" version ".tar.bz2")) (sha256 (base32 - "095ry68vmz9q5s1scjsa698dhgyvgw5aicz24c19iwfbai07mhqj")) + "024xv59bzv148b6w3das4jmldf7rywsf8y1fbqznap008qc8gl6p")) + (patches (search-patches "bcftools-fix-makefile.patch")) (modules '((guix build utils))) (snippet ;; Delete bundled htslib. - '(delete-file-recursively "htslib-1.3.1")))) + '(delete-file-recursively "htslib-1.4.1")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -321,19 +322,12 @@ BAM files.") "USE_GPL=1" (string-append "prefix=" (assoc-ref %outputs "out")) (string-append "HTSDIR=" (assoc-ref %build-inputs "htslib") "/include") - (string-append "HTSLIB=" (assoc-ref %build-inputs "htslib") "/lib/libhts.a") + (string-append "HTSLIB=" (assoc-ref %build-inputs "htslib") "/lib/libhts.so") (string-append "BGZIP=" (assoc-ref %build-inputs "htslib") "/bin/bgzip") - (string-append "TABIX=" (assoc-ref %build-inputs "htslib") "/bin/tabix")) + (string-append "TABIX=" (assoc-ref %build-inputs "htslib") "/bin/tabix") + (string-append "PACKAGE_VERSION=" ,version)) #:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-Makefile - (lambda _ - (substitute* "Makefile" - ;; Do not attempt to build htslib. - (("^include \\$\\(HTSDIR\\)/htslib\\.mk") "") - ;; Link against GSL cblas. - (("-lcblas") "-lgslcblas")) - #t)) (delete 'configure) (add-before 'check 'patch-tests (lambda _ diff --git a/gnu/packages/patches/bcftools-fix-makefile.patch b/gnu/packages/patches/bcftools-fix-makefile.patch new file mode 100644 index 0000000000..614f5fd6bd --- /dev/null +++ b/gnu/packages/patches/bcftools-fix-makefile.patch @@ -0,0 +1,33 @@ +diff --git a/Makefile b/Makefile +index edd2c4a..73b25ea 100644 +--- a/Makefile ++++ b/Makefile +@@ -30,8 +30,8 @@ all: $(PROG) $(TEST_PROG) + + # Adjust $(HTSDIR) to point to your top-level htslib directory + HTSDIR = htslib-1.4.1 +-include $(HTSDIR)/htslib.mk +-include $(HTSDIR)/htslib_static.mk ++#include $(HTSDIR)/htslib.mk ++#include $(HTSDIR)/htslib_static.mk + HTSLIB = $(HTSDIR)/libhts.a + BGZIP = $(HTSDIR)/bgzip + TABIX = $(HTSDIR)/tabix +@@ -73,7 +73,7 @@ GSL_LIBS = + ifdef USE_GPL + EXTRA_CPPFLAGS += -DUSE_GPL + OBJS += polysomy.o peakfit.o +- GSL_LIBS = -lgsl -lcblas ++ GSL_LIBS = -lgsl -lgslcblas + endif + + prefix = /usr/local +@@ -217,7 +217,7 @@ test/test-regidx.o: test/test-regidx.c regidx.h + test/test-regidx: test/test-regidx.o regidx.o $(HTSLIB) + $(CC) $(ALL_LDFLAGS) -o $@ $^ $(HTSLIB) -lpthread $(HTSLIB_LIBS) $(ALL_LIBS) + +-bcftools: $(HTSLIB) $(OBJS) ++bcftools: $(OBJS) + $(CC) $(ALL_LDFLAGS) -o $@ $(OBJS) $(HTSLIB) -lpthread $(HTSLIB_LIBS) $(GSL_LIBS) $(ALL_LIBS) + + doc/bcftools.1: doc/bcftools.txt From bca2c57658db1fdccca996cd59a3b43f739f0d87 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 26 Jun 2017 21:07:10 +1000 Subject: [PATCH 0381/1227] gnu: bamm: Use htslib-1.3. * gnu/packages/bioinformatics (htslib-1.3): New variable. (bamm)[inputs]: Replace htslib with htslib-1.3. --- gnu/packages/bioinformatics.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 87da4aed15..53239cb697 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -248,7 +248,7 @@ structure of the predicted RNA.") ("python-nose" ,python2-nose) ("python-pysam" ,python2-pysam))) (inputs - `(("htslib" ,htslib) + `(("htslib" ,htslib-1.3) ; At least one test fails on htslib-1.4+. ("samtools" ,samtools) ("bwa" ,bwa) ("grep" ,grep) @@ -3079,6 +3079,20 @@ data. It also provides the bgzip, htsfile, and tabix utilities.") ;; the rest is released under the Expat license (license (list license:expat license:bsd-3)))) +;; This package should be removed once no packages rely upon it. +(define htslib-1.3 + (package + (inherit htslib) + (version "1.3.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/samtools/htslib/releases/download/" + version "/htslib-" version ".tar.bz2")) + (sha256 + (base32 + "1rja282fwdc25ql6izkhdyh8ppw8x2fs0w0js78zgkmqjlikmma9")))))) + (define-public idr (package (name "idr") From 60739965daf61150f07c7a505d682e65190733e0 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 7 Apr 2017 22:07:45 +1000 Subject: [PATCH 0382/1227] gnu: python-pysam: Update to 0.11.2.2. * gnu/packages/bioinformatics.scm (python-pysam): Update to 0.11.2.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 53239cb697..ee317e5bc9 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1418,7 +1418,7 @@ multiple sequence alignments.") (define-public python-pysam (package (name "python-pysam") - (version "0.10.0") + (version "0.11.2.2") (source (origin (method url-fetch) ;; Test data is missing on PyPi. @@ -1428,7 +1428,7 @@ multiple sequence alignments.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1mmvn91agr238kwz7226xq0i7k84lg2nxywn9712mzj7gvgqhfy8")) + "1cfqdxsqs3xhacns9n0271ck6wkc76px66ddjm91wfw2jxxfklvc")) (modules '((guix build utils))) (snippet ;; Drop bundled htslib. TODO: Also remove samtools and bcftools. From 4fb6d1280ec273c58812f0448c63717a90463745 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 27 Jun 2017 08:18:04 +1000 Subject: [PATCH 0383/1227] gnu: htslib: Update to 1.5. * gnu/packages/bioinformatics.scm (htslib): Update to 1.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 ee317e5bc9..0447626a4a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3045,7 +3045,7 @@ manipulating HTS data.") (define-public htslib (package (name "htslib") - (version "1.4.1") + (version "1.5") (source (origin (method url-fetch) (uri (string-append @@ -3053,7 +3053,7 @@ manipulating HTS data.") version "/htslib-" version ".tar.bz2")) (sha256 (base32 - "1crkk79kgxcmrkmh5f58c4k93w4rz6lp97sfsq3s6556zxcxvll5")))) + "0bcjmnbwp2bib1z1bkrp95w9v2syzdwdfqww10mkb1hxlmg52ax0")))) (build-system gnu-build-system) (arguments `(#:phases From 63fa0ffcd43484c2d7dcf32866529c022309ff20 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 27 Jun 2017 08:22:25 +1000 Subject: [PATCH 0384/1227] gnu: samtools: Update to 1.5. * gnu/packages/bioinformatics.scm (samtools): Update to 1.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 0447626a4a..3e3aaeb657 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4524,7 +4524,7 @@ to the user's query of interest.") (define-public samtools (package (name "samtools") - (version "1.4.1") + (version "1.5") (source (origin (method url-fetch) @@ -4533,7 +4533,7 @@ to the user's query of interest.") version "/samtools-" version ".tar.bz2")) (sha256 (base32 - "0vzxjm5vkgvzynl7cssm1l560rqs2amdaib1x8sp2ch9b7bxx9xx")))) + "1xidmv0jmfy7l0kb32hdnlshcxgzi1hmygvig0cqrq1fhckdlhl5")))) (build-system gnu-build-system) (arguments `(#:modules ((ice-9 ftw) From 0620387a594be1e8069dea8cda83dfc4a0b7f2de Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 22 Jul 2017 20:36:44 +1000 Subject: [PATCH 0385/1227] gnu: bcftools: Update to 1.5. * gnu/packages/bioinformatics.scm (bcftools): Update to 1.5. [origin]: Remove fix-makefile patch. [arguments]: Add configure flags, add LIBS make flag. Do not delete configure phase. * gnu/packages/patches/bcftools-fix-makefile.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/bioinformatics.scm | 10 +++--- .../patches/bcftools-fix-makefile.patch | 33 ------------------- 3 files changed, 5 insertions(+), 39 deletions(-) delete mode 100644 gnu/packages/patches/bcftools-fix-makefile.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3397216e15..8d3916e26d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -522,7 +522,6 @@ dist_patch_DATA = \ %D%/packages/patches/awesome-reproducible-png.patch \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-completion-directories.patch \ - %D%/packages/patches/bcftools-fix-makefile.patch \ %D%/packages/patches/binutils-ld-new-dtags.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/binutils-mips-bash-bug.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3e3aaeb657..d9f7e2a5e1 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -300,7 +300,7 @@ BAM files.") (define-public bcftools (package (name "bcftools") - (version "1.4.1") + (version "1.5") (source (origin (method url-fetch) (uri (string-append @@ -308,18 +308,19 @@ BAM files.") version "/bcftools-" version ".tar.bz2")) (sha256 (base32 - "024xv59bzv148b6w3das4jmldf7rywsf8y1fbqznap008qc8gl6p")) - (patches (search-patches "bcftools-fix-makefile.patch")) + "0093hkkvxmbwfaa7905s6185jymynvg42kq6sxv7fili11l5mxwz")) (modules '((guix build utils))) (snippet ;; Delete bundled htslib. - '(delete-file-recursively "htslib-1.4.1")))) + '(delete-file-recursively "htslib-1.5")))) (build-system gnu-build-system) (arguments `(#:test-target "test" + #:configure-flags (list "--with-htslib=system") #:make-flags (list "USE_GPL=1" + "LIBS=-lgsl -lgslcblas" (string-append "prefix=" (assoc-ref %outputs "out")) (string-append "HTSDIR=" (assoc-ref %build-inputs "htslib") "/include") (string-append "HTSLIB=" (assoc-ref %build-inputs "htslib") "/lib/libhts.so") @@ -328,7 +329,6 @@ BAM files.") (string-append "PACKAGE_VERSION=" ,version)) #:phases (modify-phases %standard-phases - (delete 'configure) (add-before 'check 'patch-tests (lambda _ (substitute* "test/test.pl" diff --git a/gnu/packages/patches/bcftools-fix-makefile.patch b/gnu/packages/patches/bcftools-fix-makefile.patch deleted file mode 100644 index 614f5fd6bd..0000000000 --- a/gnu/packages/patches/bcftools-fix-makefile.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/Makefile b/Makefile -index edd2c4a..73b25ea 100644 ---- a/Makefile -+++ b/Makefile -@@ -30,8 +30,8 @@ all: $(PROG) $(TEST_PROG) - - # Adjust $(HTSDIR) to point to your top-level htslib directory - HTSDIR = htslib-1.4.1 --include $(HTSDIR)/htslib.mk --include $(HTSDIR)/htslib_static.mk -+#include $(HTSDIR)/htslib.mk -+#include $(HTSDIR)/htslib_static.mk - HTSLIB = $(HTSDIR)/libhts.a - BGZIP = $(HTSDIR)/bgzip - TABIX = $(HTSDIR)/tabix -@@ -73,7 +73,7 @@ GSL_LIBS = - ifdef USE_GPL - EXTRA_CPPFLAGS += -DUSE_GPL - OBJS += polysomy.o peakfit.o -- GSL_LIBS = -lgsl -lcblas -+ GSL_LIBS = -lgsl -lgslcblas - endif - - prefix = /usr/local -@@ -217,7 +217,7 @@ test/test-regidx.o: test/test-regidx.c regidx.h - test/test-regidx: test/test-regidx.o regidx.o $(HTSLIB) - $(CC) $(ALL_LDFLAGS) -o $@ $^ $(HTSLIB) -lpthread $(HTSLIB_LIBS) $(ALL_LIBS) - --bcftools: $(HTSLIB) $(OBJS) -+bcftools: $(OBJS) - $(CC) $(ALL_LDFLAGS) -o $@ $(OBJS) $(HTSLIB) -lpthread $(HTSLIB_LIBS) $(GSL_LIBS) $(ALL_LIBS) - - doc/bcftools.1: doc/bcftools.txt From 897ab082b23109d7710ff11bb18360153295bed2 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 27 Jun 2017 11:16:40 +1000 Subject: [PATCH 0386/1227] gnu: python-plastid: Update to 0.4.8. * gnu/packages/bioinformatics.scm (python-plastid): Update to 0.4.8. --- 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 d9f7e2a5e1..eab9d49e12 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1527,13 +1527,13 @@ UCSC genome browser.") (define-public python-plastid (package (name "python-plastid") - (version "0.4.6") + (version "0.4.8") (source (origin (method url-fetch) (uri (pypi-uri "plastid" version)) (sha256 (base32 - "1sqkz5d3b9kf688mp7k771c87ins42j7j0whmkb49cb3fsg8s8lj")))) + "0l24dd3q66if8yj042m4s0g95n6acn7im1imqd3p6h8ns43kxhj8")))) (build-system python-build-system) (arguments ;; Some test files are not included. From f3f68a442c1c40438078c24c0869e22c08f30c48 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 15 Jul 2017 16:31:40 +1000 Subject: [PATCH 0387/1227] gnu: metabat: Update to 2.11.1. * gnu/packages/bioinformatics.scm (metabat): Update to 2.11.1. [source]: Add patch to fix compilation. [arguments]: Adjust regular expressions modifying 'SConstruct'. * gnu/packages/patches/metabat-fix-compilation.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/bioinformatics.scm | 89 +++++++++---------- .../patches/metabat-fix-compilation.patch | 39 ++++++++ 3 files changed, 83 insertions(+), 46 deletions(-) create mode 100644 gnu/packages/patches/metabat-fix-compilation.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8d3916e26d..3eccc879b0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -840,6 +840,7 @@ dist_patch_DATA = \ %D%/packages/patches/mesa-skip-disk-cache-test.patch \ %D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \ %D%/packages/patches/metabat-remove-compilation-date.patch \ + %D%/packages/patches/metabat-fix-compilation.patch \ %D%/packages/patches/mhash-keygen-test-segfault.patch \ %D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch \ %D%/packages/patches/mpc123-initialize-ao.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index eab9d49e12..3b4cc359ee 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3467,23 +3467,20 @@ form of assemblies or reads.") license:cpl1.0)))) ; Open Bloom Filter (define-public metabat - ;; We package from a git commit because compilation of the released version - ;; fails. - (let ((commit "cbdca756993e66ae57e50a27970595dda9cbde1b")) - (package - (name "metabat") - (version (string-append "0.32.4-1." (string-take commit 8))) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://bitbucket.org/berkeleylab/metabat.git") - (commit commit))) - (file-name (string-append name "-" version)) - (sha256 - (base32 - "0byia8nsip6zvc4ha0qkxkxxyjf4x7jcvy48q2dvb0pzr989syzr")) - (patches (search-patches "metabat-remove-compilation-date.patch")))) + (package + (name "metabat") + (version "2.11.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://bitbucket.org/berkeleylab/metabat/get/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ll00l81aflscgggs5nfhj12cbvdiz3gg7f7n5f537a3xhx60vn9")) + (patches (search-patches "metabat-remove-compilation-date.patch" + "metabat-fix-compilation.patch")))) (build-system gnu-build-system) (arguments `(#:phases @@ -3500,35 +3497,35 @@ form of assemblies or reads.") "#include \"htslib/kseq.h\"")) #t)) (add-after 'unpack 'fix-scons - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "SConstruct" - (("^htslib_dir = 'samtools'") - (string-append "hitslib_dir = '" - (assoc-ref inputs "htslib") - "'")) - (("^samtools_dir = 'samtools'") - (string-append "samtools_dir = '" - (assoc-ref inputs "htslib") - "'")) - (("^findStaticOrShared\\('bam', hts_lib") - (string-append "findStaticOrShared('bam', '" - (assoc-ref inputs "samtools") - "/lib'")) - ;; Do not distribute README. - (("^env\\.Install\\(idir_prefix, 'README\\.md'\\)") "")) - #t)) + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "SConstruct" + (("^htslib_dir += 'samtools'") + (string-append "htslib_dir = '" + (assoc-ref inputs "htslib") + "'")) + (("^samtools_dir = 'samtools'") + (string-append "samtools_dir = '" + (assoc-ref inputs "samtools") + "'")) + (("^findStaticOrShared\\('bam', hts_lib") + (string-append "findStaticOrShared('bam', '" + (assoc-ref inputs "samtools") + "/lib'")) + ;; Do not distribute README. + (("^env\\.Install\\(idir_prefix, 'README\\.md'\\)") "")) + #t)) (delete 'configure) (replace 'build - (lambda* (#:key inputs outputs #:allow-other-keys) - (mkdir (assoc-ref outputs "out")) - (zero? (system* "scons" - (string-append - "PREFIX=" - (assoc-ref outputs "out")) - (string-append - "BOOST_ROOT=" - (assoc-ref inputs "boost")) - "install")))) + (lambda* (#:key inputs outputs #:allow-other-keys) + (mkdir (assoc-ref outputs "out")) + (zero? (system* "scons" + (string-append + "PREFIX=" + (assoc-ref outputs "out")) + (string-append + "BOOST_ROOT=" + (assoc-ref inputs "boost")) + "install")))) ;; Check and install are carried out during build phase. (delete 'check) (delete 'install)))) @@ -3549,8 +3546,8 @@ sequences to deconvolute complex microbial communities, or metagenome binning, enables the study of individual organisms and their interactions. MetaBAT is an automated metagenome binning software, which integrates empirical probabilistic distances of genome abundance and tetranucleotide frequency.") - (license (license:non-copyleft "file://license.txt" - "See license.txt in the distribution."))))) + (license (license:non-copyleft "file://license.txt" + "See license.txt in the distribution.")))) (define-public minced (package diff --git a/gnu/packages/patches/metabat-fix-compilation.patch b/gnu/packages/patches/metabat-fix-compilation.patch new file mode 100644 index 0000000000..7086a96e86 --- /dev/null +++ b/gnu/packages/patches/metabat-fix-compilation.patch @@ -0,0 +1,39 @@ +This patch changes metabat so that (1) it is not build statically, (2) it uses +shared libraries rather than static libraries where possible. + +diff --git a/SConstruct b/SConstruct +index 69cdc0a..ac99bcb 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -26,8 +26,6 @@ debug = ARGUMENTS.get('DEBUG', None) + build_flags = ['-Wall', '-g', '-std=c++11', '-fopenmp'] + link_flags = ['-lstdc++', '-lm', '-fopenmp'] + +-if platform.platform(True, True).find('Darwin') == -1: +- link_flags.extend(['-static', '-static-libgcc', '-static-libstdc++']) + + if debug is None: + build_flags.extend(['-O3', '-DNDEBUG', '-Wno-unknown-pragmas', '-Wno-deprecated-declarations', '-Wno-overflow', '-Wno-unused-variable']) +@@ -110,17 +108,17 @@ def findStaticOrShared( lib, testPaths, static_source_list, link_flag_list, stat + for path in testPaths: + if not os.path.isdir(path): + continue ++ for testfile in ('%s/lib%s.so' % (path, lib), '%s/lib%s.dylib' % (path, lib)): ++ if os.path.isfile(testfile): ++ print "Found shared library %s as %s" % (lib, testfile) ++ link_flag_list.extend( ["-L%s" % (path), "-l%s" % (lib) ] ) ++ return + for suffix in staticSuffixes: + testfile = '%s/lib%s%s' % (path, lib, suffix) + if os.path.isfile(testfile): + static_source_list.append(testfile) + print "Found static library %s as %s" % (lib, testfile) + return +- for testfile in ('%s/lib%s.so' % (path, lib), '%s/lib%s.dylib' % (path, lib)): +- if os.path.isfile(testfile): +- print "Found shared library %s as %s" % (lib, testfile) +- link_flag_list.extend( ["-L%s" % (path), "-l%s" % (lib) ] ) +- return + print "Could not find library for %s!!! Looked in %s" % (lib, testPaths) + return + From 9478c05955643f8ff95dabccc1e42b20abb88049 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 15 Jul 2017 22:26:50 +0000 Subject: [PATCH 0388/1227] gnu: getmail: Update to 5.1. * gnu/packages/mail.scm (getmail): Update to 5.1. Signed-off-by: Leo Famulari --- gnu/packages/mail.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 0d1d399904..7374cdda1f 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -805,7 +805,7 @@ and search library.") (define-public getmail (package (name "getmail") - (version "4.52.0") + (version "5.1") (source (origin (method url-fetch) @@ -813,7 +813,7 @@ and search library.") name "-" version ".tar.gz")) (sha256 (base32 - "0pzplrlxwbxydvfw4kkwn60l40hk1h5sxawaa6pi0k75c220k4ni")))) + "0zh220vx10wi6x61qi0mjayjxgvllk9f6vd4hjrgzha1xbjj0vix")))) (build-system python-build-system) (arguments `(#:tests? #f ; no tests From 8f155e3cff0c6ffed5f0b91e9fc9c1bf98a8c6b6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 23 Jul 2017 11:05:54 +0300 Subject: [PATCH 0389/1227] gnu: bash-completion: Update to 2.7. * gnu/packages/bash.scm (bash-completion): Update to 2.7. --- gnu/packages/bash.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index 34cfa08944..9e93dfc491 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -263,7 +263,7 @@ without modification.") (define-public bash-completion (package (name "bash-completion") - (version "2.6") + (version "2.7") (source (origin (method url-fetch) (uri (string-append @@ -271,7 +271,7 @@ without modification.") version "/" name "-" version ".tar.xz")) (sha256 (base32 - "1vx5bjasi0y3iwhgy2v72bdrsprkw8zjc9s8qd1l8rxil0nnbyv1")) + "07j484vb3k90f4989xh1g1x99g01akrp69p3dml4lza27wnqkfj1")) (patches (search-patches "bash-completion-directories.patch")))) (build-system gnu-build-system) From d3dce32216905a3beab6cdc6ba444d92f934ea29 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sun, 23 Jul 2017 22:35:52 +1000 Subject: [PATCH 0390/1227] gnu: metabat: Fix boost-related compilation issue. Reported by Leo Famulari. * gnu/packages/patches/metabat-fix-boost-issue.patch: New file. * gnu/packages/bioinformatics.scm (metabat): Use it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/bioinformatics.scm | 3 ++- .../patches/metabat-fix-boost-issue.patch | 27 +++++++++++++++++++ 3 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/metabat-fix-boost-issue.patch diff --git a/gnu/local.mk b/gnu/local.mk index f01ed62ff9..acfd2af36f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -822,6 +822,7 @@ dist_patch_DATA = \ %D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \ %D%/packages/patches/metabat-remove-compilation-date.patch \ %D%/packages/patches/metabat-fix-compilation.patch \ + %D%/packages/patches/metabat-fix-boost-issue.patch \ %D%/packages/patches/mhash-keygen-test-segfault.patch \ %D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch \ %D%/packages/patches/mpc123-initialize-ao.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3b4cc359ee..60beed8fb3 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3480,7 +3480,8 @@ form of assemblies or reads.") (base32 "0ll00l81aflscgggs5nfhj12cbvdiz3gg7f7n5f537a3xhx60vn9")) (patches (search-patches "metabat-remove-compilation-date.patch" - "metabat-fix-compilation.patch")))) + "metabat-fix-compilation.patch" + "metabat-fix-boost-issue.patch")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/patches/metabat-fix-boost-issue.patch b/gnu/packages/patches/metabat-fix-boost-issue.patch new file mode 100644 index 0000000000..3382d84d66 --- /dev/null +++ b/gnu/packages/patches/metabat-fix-boost-issue.patch @@ -0,0 +1,27 @@ +This patch fixes the issue described at +https://bitbucket.org/berkeleylab/metabat/issues/28/compilation-fail-with-boost-164 + +diff --git a/src/metabat.h b/src/metabat.h +index 32ae94c..2292c04 100644 +--- a/src/metabat.h ++++ b/src/metabat.h +@@ -35,6 +35,7 @@ KSEQ_INIT(gzFile, gzread) + + #include + #include ++#include + #include + #include + #include +diff --git a/src/metabat2.h b/src/metabat2.h +index 60a9998..19fa815 100644 +--- a/src/metabat2.h ++++ b/src/metabat2.h +@@ -41,6 +41,7 @@ KSEQ_INIT(gzFile, gzread) + + #include + #include ++#include + #include + #include + #include From 6e864d0081779f4bde3607fa7ea02bbb52f7ce3f Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sun, 23 Jul 2017 21:31:51 +0300 Subject: [PATCH 0391/1227] gnu: Add xmobar. gnu/packages/wm.scm (xmobar): New variable. Signed-off-by: Leo Famulari --- gnu/packages/wm.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 4250f7d16b..6e458bfdef 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2016 Ivan Vilata i Balaguer ;;; Copyright © 2017 Mekeor Melire ;;; Copyright © 2017 Marius Bakke +;;; Copyright © 2017 Oleg Pykhalov ;;; ;;; This file is part of GNU Guix. ;;; @@ -382,6 +383,39 @@ used on each workspace. Xinerama is fully supported, allowing windows to be tiled on several screens.") (license license:bsd-3))) +(define-public xmobar + (package + (name "xmobar") + (version "0.24.5") + (source (origin + (method url-fetch) + (uri (string-append "mirror://hackage/package/xmobar/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0sdzfj2wa4wpig1i2i5n9qpwm90jp88qifsmaa7j37yhhs6snfir")))) + (build-system haskell-build-system) + (inputs + `(("ghc-http" ,ghc-http) + ("ghc-parsec" ,ghc-parsec) + ("ghc-regex-compat" ,ghc-regex-compat) + ("ghc-stm" ,ghc-stm) + ("ghc-x11-xft" ,ghc-x11-xft) + ("ghc-hinotify" ,ghc-hinotify) + ("libxpm" ,libxpm) + ("wireless-tools" ,wireless-tools))) + (arguments + `(#:configure-flags + '("--flags=with_utf8 with_xft with_xpm with_inotify with_iwlib"))) + (home-page "http://xmobar.org") + (synopsis "Minimalistic text based status bar") + (description + "@code{xmobar} is a lightweight, text-based, status bar written in +Haskell. It was originally designed to be used together with Xmonad, but it +is also usable with any other window manager. While xmobar is written in +Haskell, no knowledge of the language is required to install and use it.") + (license license:bsd-3))) + (define-public ghc-xmonad-contrib (package (name "ghc-xmonad-contrib") From 007176e7103fc25bca295c7b09578a37f5d635c7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 15:24:54 +0200 Subject: [PATCH 0392/1227] gnu: python-pyparsing: Use 'modify-phases' syntax. * gnu/packages/python.scm (python-pyparsing)[arguments]<#:phases>: Use 'modify-phases'. --- gnu/packages/python.scm | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e7a40dfcdd..a8e3186bec 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3955,26 +3955,24 @@ library, libgit2 implements Git plumbing.") (outputs '("out" "doc")) (arguments `(#:tests? #f ; no test target - #:modules ((guix build python-build-system) - (guix build utils)) #:phases - (alist-cons-after - 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) - (let* ((doc (string-append (assoc-ref outputs "doc") - "/share/doc/" ,name "-" ,version)) - (html-doc (string-append doc "/html")) - (examples (string-append doc "/examples"))) - (mkdir-p html-doc) - (mkdir-p examples) - (for-each - (lambda (dir tgt) - (map (lambda (file) - (install-file file tgt)) - (find-files dir ".*"))) - (list "docs" "htmldoc" "examples") - (list doc html-doc examples)))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'install 'install-doc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((doc (string-append (assoc-ref outputs "doc") + "/share/doc/" ,name "-" ,version)) + (html-doc (string-append doc "/html")) + (examples (string-append doc "/examples"))) + (mkdir-p html-doc) + (mkdir-p examples) + (for-each + (lambda (dir tgt) + (map (lambda (file) + (install-file file tgt)) + (find-files dir ".*"))) + (list "docs" "htmldoc" "examples") + (list doc html-doc examples)) + #t)))))) (home-page "http://pyparsing.wikispaces.com") (synopsis "Python parsing class library") (description From 9e5ee6b60cb7d2a0bc0281634e3e434c885877a6 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 15:30:34 +0200 Subject: [PATCH 0393/1227] gnu: python-pyparsing: Update to 2.2.0. * gnu/packages/python.scm (python-pyparsing, python2-pyparsing): Update to 2.2.0. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index a8e3186bec..6d9963dec4 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3941,7 +3941,7 @@ library, libgit2 implements Git plumbing.") (define-public python-pyparsing (package (name "python-pyparsing") - (version "2.0.3") + (version "2.2.0") (source (origin (method url-fetch) @@ -3950,7 +3950,7 @@ library, libgit2 implements Git plumbing.") "/pyparsing-" version ".tar.gz")) (sha256 (base32 - "0kw4py7gn45j93q8r7bzajfrjdc3xlsn2yzln41lf9zmrghjkrq6")))) + "016b9gh606aa44sq92jslm89bg874ia0yyiyb643fa6dgbsbqch8")))) (build-system python-build-system) (outputs '("out" "doc")) (arguments From 71d20587a5c8e1d8c5025322e27f9312586e9b99 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 15:50:42 +0200 Subject: [PATCH 0394/1227] gnu: python-matplotlib: Update to 2.0.2. * gnu/packages/python.scm (python-matplotlib): Update to 2.0.2. [source]: Use 'pypi-uri'. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 6d9963dec4..698fb605fd 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4115,16 +4115,14 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc. (define-public python-matplotlib (package (name "python-matplotlib") - (version "2.0.0") + (version "2.0.2") (source (origin (method url-fetch) - (uri (string-append - "https://github.com/matplotlib/matplotlib/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (pypi-uri "matplotlib" version)) (sha256 (base32 - "0w3k5m5qb3wsd7yhvmg042xddvligklvcq2visk2c5wnph3hhsln")))) + "1w8z2a1l7s72p1byfz7g03wqhygqxi8w82619dqb3a1lm97w9yqg")))) (build-system python-build-system) (propagated-inputs ; the following packages are all needed at run time `(("python-cycler" ,python-cycler) From 09efef338430d1f3bc2473f05f0c30ae3070e60e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 22 Jul 2017 18:58:29 +0200 Subject: [PATCH 0395/1227] gnu: python-scipy: Update to 0.19.1. * gnu/packages/python.scm (python-scipy): Update to 0.19.1. [source]: Use 'pypi-uri'. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 698fb605fd..ae7ab6eb57 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4358,16 +4358,14 @@ functions.") (define-public python-scipy (package (name "python-scipy") - (version "0.18.1") + (version "0.19.1") (source (origin (method url-fetch) - (uri (string-append "https://github.com/scipy/scipy/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (pypi-uri "scipy" version)) (sha256 (base32 - "17slsrfawjp7if6qrlx03zhgp05350ginxx8ddpw9zqx43x905sn")))) + "1rl411bvla6q7qfdb47fpdnyjhfgzl6smpha33n9ar1klykjr6m1")))) (build-system python-build-system) (propagated-inputs `(("python-numpy" ,python-numpy) From 38bb9df150e8bce33b6f1e067ac3b013ffd95faa Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 23 Jul 2017 14:17:33 +0200 Subject: [PATCH 0396/1227] gnu: tdb: Update to 1.3.14. * gnu/packages/databases.scm (tdb): Update to 1.3.14. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index d0b9ac73de..ee340505e6 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -769,14 +769,14 @@ is in the public domain.") (define-public tdb (package (name "tdb") - (version "1.3.11") + (version "1.3.14") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/tdb/tdb-" version ".tar.gz")) (sha256 (base32 - "0i1l38h0vyck6zkcj4fn2l03spadlmyr1qa1xpdp9dy2ccbm3s1r")))) + "1sfbia8xyaywgx9zy7x618vrvyx9gc3cgqf763shsii9javlnz9s")))) (build-system gnu-build-system) (arguments '(#:phases From 17c3f1fb6792c684a4655c6310ae887e12fa003a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 23 Jul 2017 14:21:07 +0200 Subject: [PATCH 0397/1227] gnu: cmocka: Update to 1.1.1. * gnu/packages/check.scm (cmocka): Update to 1.1.1. --- gnu/packages/check.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 4b59ac567d..2ab5c01359 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -157,7 +157,7 @@ multi-paradigm automated test framework for C++ and Objective-C.") (define-public cmocka (package (name "cmocka") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) (uri (string-append "https://cmocka.org/files/" @@ -165,7 +165,7 @@ multi-paradigm automated test framework for C++ and Objective-C.") version ".tar.xz")) (sha256 (base32 - "0c0k8ax16fgh39nsva09q4jsh83g9nxihkwj9d5666763fzx6q79")))) + "1283zi9qf5613g8iadm1fxmjh4rzxqd5np2j3lcpgairf25g8bph")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; No test target From fbed15013398f468bfc8cf857b9359fb6c235cff Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 23 Jul 2017 14:24:28 +0200 Subject: [PATCH 0398/1227] gnu: ldb: Update to 1.1.31. * gnu/packages/samba.scm (ldb): Update to 1.1.31. [native-inputs]: Add CMOCKA. --- gnu/packages/samba.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 4e0121040e..9cf0afd6fe 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Adonay "adfeno" Felipe Nogueira ;;; Copyright © 2017 Thomas Danckaert +;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ #:use-module (gnu packages acl) #:use-module (gnu packages admin) #:use-module (gnu packages autotools) + #:use-module (gnu packages check) #:use-module (gnu packages crypto) #:use-module (gnu packages cups) #:use-module (gnu packages databases) @@ -329,14 +331,14 @@ many event types, including timers, signals, and the classic file descriptor eve (define-public ldb (package (name "ldb") - (version "1.1.27") + (version "1.1.31") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/ldb/ldb-" version ".tar.gz")) (sha256 (base32 - "1b1mkl5p8swb67s9aswavhzswlib34hpgsv66zgns009paf2df6d")))) + "0ipbz9m50dkancq0dbz12q815nkknbsp2i3sxpsqhmmknlm3xm84")))) (build-system gnu-build-system) (arguments '(#:phases @@ -351,7 +353,8 @@ many event types, including timers, signals, and the classic file descriptor eve "/lib/ldb/modules") "--bundled-libraries=NONE")))))))) (native-inputs - `(("pkg-config" ,pkg-config) + `(("cmocka" ,cmocka) + ("pkg-config" ,pkg-config) ("python" ,python-2))) (propagated-inputs ;; ldb.pc refers to all these. From 85a5800e52da736c828577807e74846d1a3c6193 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 23 Jul 2017 14:25:50 +0200 Subject: [PATCH 0399/1227] gnu: talloc: Update to 2.1.10. * gnu/packages/samba.scm (talloc): Update to 2.1.10. --- gnu/packages/samba.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 9cf0afd6fe..41b1b52388 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -221,14 +221,14 @@ Desktops into Active Directory environments using the winbind daemon.") (define-public talloc (package (name "talloc") - (version "2.1.9") + (version "2.1.10") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/talloc/talloc-" version ".tar.gz")) (sha256 (base32 - "0qhhf4ib9k65sri2ky115iya6j7dgg0dsdi1r03j4cm3i35x9aph")))) + "06gn45if56g81vbj3841fzdjsahrrczwqpfrydm2zv6nxd5yk1f9")))) (build-system gnu-build-system) (arguments '(#:phases From 846cb73865c13d063862268ed74513c1d9f70fc9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 23 Jul 2017 14:26:24 +0200 Subject: [PATCH 0400/1227] gnu: tevent: Update to 0.9.33. * gnu/packages/samba.scm (tevent): Update to 0.9.33. --- gnu/packages/samba.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 41b1b52388..4a7880cfe5 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -296,14 +296,14 @@ destructors. It is the core memory allocator used in Samba.") (define-public tevent (package (name "tevent") - (version "0.9.31") + (version "0.9.33") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/tevent/tevent-" version ".tar.gz")) (sha256 (base32 - "1z1bij9gccps34q8zakr1k7k3gpqs25jas20x1hch16qd8jz44sa")))) + "1p0vxmldk99xpp7i4y6kpb75f8m7hxyv5bzkspy9hhpxh7ljww92")))) (build-system gnu-build-system) (arguments '(#:phases From 13136283393c19c6bbbcd8bbb5dc158ee7b24fdb Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 21 Jul 2017 15:41:41 +0300 Subject: [PATCH 0401/1227] gnu: u-boot: Update to 2017.07. * gnu/packages/bootloaders.scm (u-boot): Update to 2017.07. --- gnu/packages/bootloaders.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 802e8ab8dc..1527cd35de 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -263,7 +263,7 @@ tree binary files. These are board description files used by Linux and BSD.") (define u-boot (package (name "u-boot") - (version "2017.03") + (version "2017.07") (source (origin (method url-fetch) (uri (string-append @@ -271,7 +271,7 @@ tree binary files. These are board description files used by Linux and BSD.") "u-boot-" version ".tar.bz2")) (sha256 (base32 - "0gqihplap05dlpwdb971wsqyv01nz2vabwq5g5649gr5jczsyjzm")))) + "1zzywk0fgngm1mfnhkp8d0v57rs51zr1y6rp4p03i6nbibfbyx2k")))) (native-inputs `(("bc" ,bc) ("dtc" ,dtc) From 4adeb3f6e60432e2125e70cbd76c9b47c34cf3a9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 21 Jul 2017 15:42:57 +0300 Subject: [PATCH 0402/1227] gnu: Add u-boot-odroid-c2. * gnu/packages/bootloaders.scm (u-boot-odroid-c2): New variable. --- gnu/packages/bootloaders.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 1527cd35de..299a569595 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016, 2017 Marius Bakke ;;; Copyright © 2016, 2017 Danny Milosavljevic ;;; Copyright © 2016, 2017 David Craven +;;; Copyright © 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -336,3 +337,6 @@ also initializes the boards (RAM etc).") (define-public u-boot-beagle-bone-black (make-u-boot-package "am335x_boneblack" "arm-linux-gnueabihf")) + +(define-public u-boot-odroid-c2 + (make-u-boot-package "odroid-c2" "aarch64-linux-gnu")) From 826adfdb37656a5191a617c9eb6c8e8f80de0df8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 21 Jul 2017 15:43:52 +0300 Subject: [PATCH 0403/1227] gnu: Add xf86-video-freedreno. * gnu/packages/xorg.scm (xf86-video-freedreno): New variable. --- gnu/packages/xorg.scm | 49 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 6adf2e2fc0..1fe9a328d0 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2016 Mathieu Lirzin ;;; Copyright © 2015 Cyrill Schenkel -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Alex Kost ;;; Copyright © 2016 David Craven @@ -2705,6 +2705,53 @@ framebuffer device.") (license license:x11))) +(define-public xf86-video-freedreno + (let ((commit "ccba8f89995de7d5e1b216e580b789c4cda05035")) + (package + (name "xf86-video-freedreno") + (version (string-append "1.4.0-1-" (string-take commit 7))) + (source + (origin + ;; there's no current tarball + (method git-fetch) + (uri (git-reference + (url (string-append "https://anongit.freedesktop.org/git/xorg/" + "driver/xf86-video-freedreno.git")) + (commit commit))) + (sha256 + (base32 + "0bl9m1agi793lcddv94j8afzw1xc9w810q91mbq0n3dscbbcr9nh")) + (file-name (string-append name "-" version)))) + (build-system gnu-build-system) + (inputs + `(("libdrm" ,libdrm) + ("mesa" ,mesa) + ("udev" ,eudev) + ("xorg-server" ,xorg-server))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + ;; This driver is only supported on ARM systems. + (supported-systems '("armhf-linux" "aarch64-linux")) + (arguments + `(#:configure-flags + (list (string-append "--with-xorg-conf-dir=" + (assoc-ref %outputs "out") + "/share/X11/xorg.conf.d")) + #:phases (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + (zero? (system* "autoreconf" "-vfi"))))))) + (home-page "https://www.x.org/wiki/") + (synopsis "Adreno video driver for X server") + (description + "xf86-video-freedreno is a 2D graphics driver for the Xorg X server. +It supports a variety of Adreno graphics chipsets.") + (license license:x11)))) + + (define-public xf86-video-geode (package (name "xf86-video-geode") From fd900d68a519938e4a5064fcede5da81728d32b1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 21 Jul 2017 18:07:19 +0300 Subject: [PATCH 0404/1227] gnu: Add support for aarch64's compiled kernel. * gnu/packages/linux.scm (linux-libre)[arguments]: Add to the regex to find and install the aarch64-linux kernel. * gnu/system.scm (system-linux-image-file-name): Add entry for aarch64. --- gnu/packages/linux.scm | 2 +- gnu/system.scm | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 94314d3f09..c116716e6e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -340,7 +340,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (kmod (assoc-ref (or native-inputs inputs) "kmod"))) ;; Install kernel image, kernel configuration and link map. (for-each (lambda (file) (install-file file out)) - (find-files "." "^(\\.config|bzImage|zImage|vmlinuz|System\\.map)$")) + (find-files "." "^(\\.config|bzImage|zImage|Image|vmlinuz|System\\.map)$")) ;; Install device tree files (for-each (lambda (file) (install-file file dtbdir)) (find-files "." "\\.dtb$")) diff --git a/gnu/system.scm b/gnu/system.scm index 998bd68396..746c511187 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -392,6 +392,7 @@ from the initrd." (cond ((string-prefix? "arm" (%current-system)) "zImage") ((string-prefix? "mips" (%current-system)) "vmlinuz") + ((string-prefix? "aarch64" (%current-system)) "Image") (else "bzImage"))) (define (operating-system-kernel-file os) From c67d80563fc7021484602889454de534469f2785 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 23 Jul 2017 17:04:51 -0400 Subject: [PATCH 0405/1227] gnu: ncurses/gpm: Move to (gnu packages ncurses). This is needed to avoid compilation problems caused by the cyclic dependency between (gnu packages ncurses) and (gnu packages linux). * gnu/packages/linux.scm (ncurses/gpm): Move to ... * gnu/packages/ncurses.scm (ncurses/gpm): ... here. Fix misleading indentation. Add (gnu packages linux) to the module imports. --- gnu/packages/linux.scm | 12 ------------ gnu/packages/ncurses.scm | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c116716e6e..456909a940 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3013,18 +3013,6 @@ applications running on the Linux console. It allows users to select items and copy/paste text in the console and in xterm.") (license license:gpl2+))) -(define-public ncurses/gpm - (package/inherit ncurses - (name "ncurses-with-gpm") - (arguments - (substitute-keyword-arguments (package-arguments ncurses) - ((#:configure-flags cf) - `(cons (string-append "--with-gpm=" - (assoc-ref %build-inputs "gpm") - "/lib/libgpm.so.2") ,cf)))) - (inputs - `(("gpm" ,gpm))))) - (define-public btrfs-progs (package (name "btrfs-progs") diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm index 0b23baf129..7899f19128 100644 --- a/gnu/packages/ncurses.scm +++ b/gnu/packages/ncurses.scm @@ -32,6 +32,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages swig) + #:use-module (gnu packages linux) #:use-module (guix utils)) (define-public ncurses @@ -200,6 +201,19 @@ ncursesw library provides wide character support.") (origin-patches (package-source ncurses)) (search-patches "ncurses-CVE-2017-10684-10685.patch"))))))) +(define-public ncurses/gpm + (package/inherit ncurses + (name "ncurses-with-gpm") + (arguments + (substitute-keyword-arguments (package-arguments ncurses) + ((#:configure-flags cf) + `(cons (string-append "--with-gpm=" + (assoc-ref %build-inputs "gpm") + "/lib/libgpm.so.2") + ,cf)))) + (inputs + `(("gpm" ,gpm))))) + (define-public dialog (package (name "dialog") From 5391c6c9d224bba4732d91471da6d314bc90dd01 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 23 Jul 2017 18:34:30 -0400 Subject: [PATCH 0406/1227] gnu: bind: Update to 9.11.1-P3. This fixes a regression introduced in the fix for CVE-2017-3142, in BIND 9.11.1-P2, commit faa1369e3cb72bda4ba8b63029d0ad780df9cf78. See 'CHANGELOG' in the source distribution for more information. * gnu/packages/dns.scm (isc-bind): Update to 9.11.1-P3. --- gnu/packages/dns.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index ccb13d4fec..e29708a3a6 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -99,7 +99,7 @@ and BOOTP/TFTP for network booting of diskless machines.") (define-public isc-bind (package (name "bind") - (version "9.11.1-P2") + (version "9.11.1-P3") (source (origin (method url-fetch) (uri (string-append @@ -107,7 +107,7 @@ and BOOTP/TFTP for network booting of diskless machines.") version ".tar.gz")) (sha256 (base32 - "19gyh7yij6cpvk5b199ghhns5wmsz67d2rpgvl91dbkm2m1wclxz")))) + "1x6cfwkcv6nwc0mh5fzv70f38nl04yhgq90gr5nrjiif8dsnwhjj")))) (build-system gnu-build-system) (outputs `("out" "utils")) (inputs From 2472f7a8f1343ff11bb14e7135faddac3fc38e20 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 23 Jul 2017 18:36:30 -0400 Subject: [PATCH 0407/1227] gnu: isc-dhcp: Update bundled bind to 9.9.10-P3. This fixes a regression introduced in the fix for CVE-2017-3142, in BIND 9.9.10-P2, commit ecb232bdfcb2718de5944bcf4d9c4e288ec41519. See 'CHANGELOG' in the source distribution for more information. * gnu/packages/admin.scm (isc-dhcp): Update bundled bind to 9.9.10-P3. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 319a34ae8b..8e9b9828ec 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -499,7 +499,7 @@ connection alive.") (bind-minor-version "9") (bind-patch-version "10") (bind-release-type "-P") ; for patch release, use "-P" - (bind-release-version "2") ; for patch release, e.g. "6" + (bind-release-version "3") ; for patch release, e.g. "6" (bind-version (string-append bind-major-version "." bind-minor-version @@ -615,7 +615,7 @@ connection alive.") "/bind-" bind-version ".tar.gz")) (sha256 (base32 - "19yl7axphmpm4n2ggb7j5irw4c655yifa1bnlckg6qiyv8dr8n7b")))) + "00yh1d5shrq7y0kfwacax4f8dc0akaa2fha430j92n7mshms65m1")))) ;; When cross-compiling, we need the cross Coreutils and sed. ;; Otherwise just use those from %FINAL-INPUTS. From f1ddfe4f14b8a8d963f2f3e68d800b745696246d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 24 Jul 2017 12:05:53 +0200 Subject: [PATCH 0408/1227] gnu: python-flaky: Fix Texinfo markup in description. * gnu/packages/python.scm (python-flaky)[description]: Escape "@". --- gnu/packages/python.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index ae7ab6eb57..89c2de63bd 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4655,7 +4655,7 @@ reruns flaky tests. Ideally, tests reliably pass or fail, but sometimes test fixtures must rely on components that aren't 100% reliable. With flaky, instead of removing -those tests or marking them to @code{@skip}, they can be automatically +those tests or marking them to @code{@@skip}, they can be automatically retried.") (license license:asl2.0))) From c022e1118782a9afbd71468cd660c224af0013f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 24 Jul 2017 12:25:08 +0200 Subject: [PATCH 0409/1227] gnu: guix: Update snapshot. * gnu/packages/package-management.scm (guix): Update to f1ddfe4. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index d9ea6579e3..d49b4c3a4f 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -76,8 +76,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "0.13.0") - (commit "b547349d505c57fd679b6e48c472d8ab65469c96") - (revision 3)) + (commit "f1ddfe4f14b8a8d963f2f3e68d800b745696246d") + (revision 4)) (package (name "guix") @@ -93,7 +93,7 @@ (commit commit))) (sha256 (base32 - "0q6qr9hvrac1wj2ygn4jj4w89h1m35zkcjjd741sibc3l46pa93l")) + "11yjsn957igh6migxrnicdqrxc76skz5r0l7hfnm5gp45my1kd9p")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments From e2f24597a9da51ba6739f4fdb44217b41a8bab84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 24 Jul 2017 16:33:54 +0200 Subject: [PATCH 0410/1227] gnu: perl-regexp-common: Update to 2017060201. * gnu/packages/perl.scm (perl-regexp-common): Update to 2017060201. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 3cae8dfa8f..6bf82eb61a 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5642,14 +5642,14 @@ variables that should not be changed.") (define-public perl-regexp-common (package (name "perl-regexp-common") - (version "2013031301") + (version "2017060201") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/A/AB/ABIGAIL/" "Regexp-Common-" version ".tar.gz")) (sha256 (base32 - "112wybsm0vr8yfannx6sdfvgp5vza28gjgr3pgn69ak4sac836kj")))) + "16q8d7mx0c4nbjrvj69jdn4q33d1k40imgxn83h11wq6xqx8a1zf")))) (build-system perl-build-system) (synopsis "Provide commonly requested regular expressions") (description From 23212bf9e68d53c18343149eeea9c436ab6f4f52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 24 Jul 2017 16:36:13 +0200 Subject: [PATCH 0411/1227] gnu: perl: Work around "dotless @INC" build issues. * gnu/packages/perl.scm (perl-task-weaken)[arguments]: New field. (perl-unicode-normalize): Likewise. * gnu/packages/web.scm (perl-http-server-simple)[arguments]: Add #:phases. --- gnu/packages/perl.scm | 20 +++++++++++++++++++- gnu/packages/web.scm | 11 ++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 6bf82eb61a..d9f5fe1377 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2015, 2016 Ricardo Wurmus ;;; Copyright © 2015, 2016 Eric Bavier @@ -6161,6 +6161,15 @@ of a system.") (base32 "1i7kd9v8fjsqyhr4rx4a1jv7n5vfjjm1v4agb24pizh0b72p3qk7")))) (build-system perl-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'configure 'set-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) ":" + (getenv "PERL5LIB"))) + #t))))) (home-page "http://search.cpan.org/dist/Task-Weaken") (synopsis "Ensure that a platform has weaken support") (description "One recurring problem in modules that use Scalar::Util's @@ -7722,6 +7731,15 @@ common serialisation formats such as JSON or CBOR.") (base32 "0v04bcyjfcfap4kfpc8q3ikq3j7s68nym4ckw3iasmmksdskmcq0")))) (build-system perl-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'configure 'set-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) ":" + (getenv "PERL5LIB"))) + #t))))) (home-page "http://search.cpan.org/dist/Unicode-Normalize") (synopsis "Unicode normalization forms") (description "This Perl module provides Unicode normalization forms.") diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 69a979eaef..e9c5021617 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2515,7 +2515,16 @@ environment from an HTTP::Request.") (arguments ;; See the discussion of a related tests issue at ;; https://lists.gnu.org/archive/html/guix-devel/2015-01/msg00346.html - `(#:tests? #f)) + `(#:tests? #f + + #:phases (modify-phases %standard-phases + (add-before 'configure 'set-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) ":" + (getenv "PERL5LIB"))) + #t))))) (home-page "http://search.cpan.org/dist/HTTP-Server-Simple") (synopsis "Lightweight HTTP server") (description "HTTP::Server::Simple is a simple standalone HTTP daemon with From 3e6add96c52fc6c92acc9bb5da3eb5a208c90a67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 24 Jul 2017 17:11:30 +0200 Subject: [PATCH 0412/1227] gnu: gnome-mime-data: Do not use the bundled intltool. * gnu/packages/gnome.scm (gnome-mime-data)[arguments]: New field. --- gnu/packages/gnome.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 8a9ddf62c7..b560fe816a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1288,6 +1288,17 @@ is intended for user preferences; not arbitrary data storage.") (native-inputs `(("perl" ,perl) ("intltool" ,intltool))) + (arguments + '(#:phases (modify-phases %standard-phases + (add-after 'configure 'use-our-intltool + (lambda _ + ;; Do not use the bundled intltool commands, which lack + ;; the "dotless @INC" fixes of our 'intltool' package. + (substitute* (find-files "." "^Makefile$") + (("^INTLTOOL_(EXTRACT|UPDATE|MERGE) = .*$" _ tool) + (string-append "INTLTOOL_" tool " = intltool-" + (string-downcase tool) "\n"))) + #t))))) (home-page "http://www.gnome.org") (synopsis "Base MIME and Application database for GNOME") (description "GNOME Mime Data is a module which contains the base MIME From dc4f697f01848019b61ead5e548a4a7aa1a5d97c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 24 Jul 2017 17:24:17 +0200 Subject: [PATCH 0413/1227] gnu: python-pexpect: Add dependency on the full Bash. Fixes a regression introduced in 704243e0c6ec5ac86e2f45aaa469717e60b89124. * gnu/packages/python.scm (python-pexpect)[native-inputs]: Add BASH. --- gnu/packages/python.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e9196b949e..c903de4c36 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5237,7 +5237,8 @@ cluster without needing to write any wrapper code yourself.") `(("python-nose" ,python-nose) ("python-pytest" ,python-pytest-3.0) ("man-db" ,man-db) - ("which" ,which))) + ("which" ,which) + ("bash-full" ,bash))) ;full Bash for 'test_replwrap.py' (propagated-inputs `(("python-ptyprocess" ,python-ptyprocess))) (home-page "http://pexpect.readthedocs.org/") From e956ae16a4c676cd8787b7f246350426522f87cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 24 Jul 2017 17:35:26 +0200 Subject: [PATCH 0414/1227] import: cpan: Updater returns a list of URLs. * guix/import/cpan.scm (latest-release): Return a list in the 'urls' field of 'upstream-source'. --- guix/import/cpan.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/import/cpan.scm b/guix/import/cpan.scm index a41f918049..9ee69e5296 100644 --- a/guix/import/cpan.scm +++ b/guix/import/cpan.scm @@ -296,7 +296,7 @@ META." (upstream-source (package (package-name package)) (version version) - (urls url)))))) + (urls (list url))))))) (define %cpan-updater (upstream-updater From d61a894bfa3670c0742e72222af02ede820fd6cd Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 20 May 2017 16:24:19 +0100 Subject: [PATCH 0415/1227] gnu: gnome: Add deja-dup. * gnu/packages/gnome.scm (deja-dup): New variable. * gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch: New file. * gnu/local.mk (dist_patch_DATA): Add patch file entry. --- gnu/local.mk | 1 + gnu/packages/gnome.scm | 78 +++++++++++++++++++ .../deja-dup-use-ref-keyword-for-iter.patch | 41 ++++++++++ 3 files changed, 120 insertions(+) create mode 100644 gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3eccc879b0..60ad007a28 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -565,6 +565,7 @@ dist_patch_DATA = \ %D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \ %D%/packages/patches/dblatex-remove-multirow.patch \ %D%/packages/patches/dbus-helper-search-path.patch \ + %D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch \ %D%/packages/patches/dfu-programmer-fix-libusb.patch \ %D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/doc++-include-directives.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index be00fcff54..1ab59a6303 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -61,6 +61,7 @@ #:use-module (gnu packages bison) #:use-module (gnu packages calendar) #:use-module (gnu packages check) + #:use-module (gnu packages cmake) #:use-module (gnu packages cups) #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) @@ -193,6 +194,83 @@ Desktop. It is designed to be as simple as possible and has some unique features to enable users to create their discs easily and quickly.") (license license:gpl2+))) +(define-public deja-dup + (package + (name "deja-dup") + (version "34.3") + (source (origin + (method url-fetch) + (uri "https://launchpadlibrarian.net/295170991/deja-dup-34.3.tar.xz") + (sha256 + (base32 + "1xqcr61hpbahbla7gdjn4ngjfz7w6f57y7f5pkb77yk05f60j2n9")) + (patches + (search-patches "deja-dup-use-ref-keyword-for-iter.patch")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:modules ((guix build gnu-build-system) + ((guix build cmake-build-system) #:prefix cmake:) + (guix build glib-or-gtk-build-system) + (guix build utils)) + #:imported-modules (,@%glib-or-gtk-build-system-modules + (guix build cmake-build-system)) + #:test-target "test" + #:configure-flags (list (string-append + "-DCMAKE_INSTALL_FULL_DATADIR=" %output) + (string-append + "-DCMAKE_INSTALL_LIBEXECDIR=" %output)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-lockfile-deletion + (lambda rest + (substitute* "libdeja/tools/duplicity/DuplicityInstance.vala" + (("/bin/rm") + (which "rm"))))) + (replace 'configure + (assoc-ref cmake:%standard-phases 'configure)) + (delete 'check) ;; Fails due to issues with DBus + (add-after 'install 'wrap-deja-dup + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((python (assoc-ref inputs "python")) + (python-path (getenv "PYTHONPATH")) + (duplicity (assoc-ref inputs "duplicity")) + (out (assoc-ref outputs "out"))) + (for-each + (lambda (program) + (wrap-program program + `("PATH" ":" prefix (,(string-append python "/bin") + ,(string-append duplicity "/bin")))) + (wrap-program program + `("PYTHONPATH" ":" prefix (,python-path)))) + + (find-files (string-append out "/bin"))) + #t)))))) + (inputs + `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gobject-introspection" ,gobject-introspection) + ("duplicity" ,duplicity) + ("python" ,python2-minimal) + ("python-pygobject" ,python2-pygobject) + ("gtk+" ,gtk+) + ("libnotify" ,libnotify) + ("libpeas" ,libpeas) + ("libsecret" ,libsecret) + ("packagekit" ,packagekit))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("vala" ,vala) + ("gettext" ,gettext-minimal) + ("itstool" ,itstool) + ("intltool" ,intltool) + ("cmake", cmake))) + (home-page "https://launchpad.net/deja-dup") + (synopsis "Simple backup tool, for regular encrypted backups") + (description + "Déjà Dup is a simple backup tool, for regular encrypted backups. It +uses duplicity as the backend, which supports incremental backups and storage +either on a local, or remote machine via a number of methods.") + (license license:gpl3+))) + (define-public dia ;; This version from GNOME's repository includes fixes for compiling with ;; recent versions of the build tools. The latest activity on the diff --git a/gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch b/gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch new file mode 100644 index 0000000000..a03e0c5481 --- /dev/null +++ b/gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch @@ -0,0 +1,41 @@ +From 5676766be5e845ccb6cdf46cfa8722497f151752 Mon Sep 17 00:00:00 2001 +From: Jeremy Bicha +Date: Fri, 16 Jun 2017 15:11:37 -0400 +Subject: Use 'ref' keyword for iter, requires vala 0.36 + + +diff --git a/deja-dup/widgets/ConfigList.vala b/deja-dup/widgets/ConfigList.vala +index 15de2d6..02cd81a 100644 +--- a/deja-dup/widgets/ConfigList.vala ++++ b/deja-dup/widgets/ConfigList.vala +@@ -333,7 +333,7 @@ public class ConfigList : ConfigWidget + + model.row_deleted.disconnect(write_to_config); + foreach (Gtk.TreeIter iter in iters) { +- (model as Gtk.ListStore).remove(iter); ++ (model as Gtk.ListStore).remove(ref iter); + } + model.row_deleted.connect(write_to_config); + +diff --git a/deja-dup/widgets/ConfigLocation.vala b/deja-dup/widgets/ConfigLocation.vala +index 869e2a8..d21c556 100644 +--- a/deja-dup/widgets/ConfigLocation.vala ++++ b/deja-dup/widgets/ConfigLocation.vala +@@ -397,12 +397,12 @@ public class ConfigLocation : ConfigWidget + if (uuid == saved_uuid) + return; + +- store.remove(iter); ++ store.remove(ref iter); + + if (--num_volumes == 0) { + Gtk.TreeIter sep_iter; + if (store.get_iter_from_string(out sep_iter, index_vol_sep.to_string())) { +- store.remove(sep_iter); ++ store.remove(ref sep_iter); + index_vol_sep = -2; + } + } +-- +cgit v0.10.2 + From 1627ca0494c7ea9cb32731451eac87cf6439c82c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 24 Jul 2017 22:32:00 +0300 Subject: [PATCH 0416/1227] gnu: perl-context-preserve: Update to 0.02. * gnu/packages/perl.scm (perl-context-preserve): Update to 0.02. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d9f5fe1377..42ac911787 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1286,7 +1286,7 @@ and writing of @code{.ini}-style configuration files.") (define-public perl-context-preserve (package (name "perl-context-preserve") - (version "0.01") + (version "0.02") (source (origin (method url-fetch) @@ -1294,7 +1294,7 @@ and writing of @code{.ini}-style configuration files.") "Context-Preserve-" version ".tar.gz")) (sha256 (base32 - "0gssillawjknqks81x7fg7w2x94bnyklgd8ry2pr1k6ifkjhwz46")))) + "0qkjj1qifr87zlfpfnn21gdyrpfgilh8zp3b53008m2ax02k87gc")))) (build-system perl-build-system) (native-inputs `(("perl-test-exception" ,perl-test-exception) From f6062e5432586815dfc2af492a51528b9b5ab710 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 24 Jul 2017 22:32:48 +0300 Subject: [PATCH 0417/1227] gnu: perl-data-dumper-concise: Update to 2.023. * gnu/packages/perl.scm (perl-data-dumper-concise): Update to 2.023. [source]: Update source uri. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 42ac911787..02670724ed 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1518,15 +1518,15 @@ code that, when \"eval\"ed, produces a deep copy of the original arguments.") (define-public perl-data-dumper-concise (package (name "perl-data-dumper-concise") - (version "2.022") + (version "2.023") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/F/FR/FREW/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "Data-Dumper-Concise-" version ".tar.gz")) (sha256 (base32 - "0z7vxgk1f2kw2zpiimdsyf7jq9f4s5dhh3dlimq5yrirypnk03sc")))) + "0lsqbl1mxhkj0qnjfa1jrvx8wwbyi81bgwfyj1si6cdg7h8jzhm6")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Data-Dumper-Concise") (synopsis "Concise data dumper") From fce8285e4b0f2e055e36e7c4d60ed9a4ca0c8712 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 24 Jul 2017 17:07:50 -0400 Subject: [PATCH 0418/1227] gnu: opus: Update to 1.2.1. * gnu/packages/xiph.scm (opus): Update to 1.2.1. [source]: Use new source URL. --- gnu/packages/xiph.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/gnu/packages/xiph.scm b/gnu/packages/xiph.scm index 5f6f47f305..47274411b5 100644 --- a/gnu/packages/xiph.scm +++ b/gnu/packages/xiph.scm @@ -322,15 +322,14 @@ ogginfo, to obtain information (tags, bitrate, length, etc.) about (define opus (package (name "opus") - (version "1.2") + (version "1.2.1") (source (origin (method url-fetch) - (uri (string-append - "http://downloads.xiph.org/releases/opus/opus-" version - ".tar.gz")) + (uri (string-append "https://archive.mozilla.org/pub/opus/opus-" + version ".tar.gz")) (sha256 (base32 - "1ad9q2g9vivx409jdsslv1hrh5r616qz2pjm96y8ymsigfl4bnvp")))) + "0ch7yzgg4bn1g36bpjsfrgs4n19c84d7wpdida6yzifrrhwx7byg")))) (build-system gnu-build-system) (synopsis "Versatile audio codec") (description From 0e8fed86d839d848ca7b6173e1f229eb91c0dba4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 24 Jul 2017 22:45:06 -0400 Subject: [PATCH 0419/1227] gnu: dialog: Update to 1.3-20170509. * gnu/packages/ncurses.scm (dialog): Update to 1.3-20170509. --- gnu/packages/ncurses.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm index 7899f19128..ae4548bb6b 100644 --- a/gnu/packages/ncurses.scm +++ b/gnu/packages/ncurses.scm @@ -217,7 +217,7 @@ ncursesw library provides wide character support.") (define-public dialog (package (name "dialog") - (version "1.2-20150920") + (version "1.3-20170509") (source (origin (method url-fetch) (uri (string-append @@ -225,7 +225,7 @@ ncursesw library provides wide character support.") version ".tgz")) (sha256 (base32 - "01ccd585c241nkj02n0zdbx8jqhylgcfpcmmshynh0c7fv2ixrn4")))) + "0mj7rl5psilaj3bxxvjfd44qjknxjli98b0d1lxd3f9jqrsbmw9g")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; no test suite From 5b4a6ba04499ef4827894918f43e29812311edf5 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 24 Jul 2017 22:45:36 -0400 Subject: [PATCH 0420/1227] gnu: xterm: Update to 330. * gnu/packages/xorg.scm (xterm): Update to 330. --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 1fe9a328d0..54167e2fb2 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -5685,14 +5685,14 @@ to answer a question. Xmessage can also exit after a specified time.") (define-public xterm (package (name "xterm") - (version "322") + (version "330") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.invisible-island.net/xterm/" "xterm-" version ".tgz")) (sha256 (base32 - "1mh9s5g3fs64iimnl7axk0isb5306dyshisxlv5gr8vn7ysl3nws")))) + "1psnfmqd23v9gxj8a98nzrgvymrk0p1whwqi92gy15bbkzrgkvks")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--enable-wide-chars" "--enable-256-color" From 585347d7aa3a2a23359b354a550f161d5102c517 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 12:14:04 +0200 Subject: [PATCH 0421/1227] Add 'guix weather'. * guix/scripts/weather.scm: New file. * Makefile.am (MODULES): Add it. * doc/guix.texi (Substitutes, Invoking guix publish): Mention "guix weather". (Invoking guix weather): New node. Co-authored-by: Ricardo Wurmus --- Makefile.am | 1 + doc/guix.texi | 75 ++++++++++++- guix/scripts/weather.scm | 234 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 309 insertions(+), 1 deletion(-) create mode 100644 guix/scripts/weather.scm diff --git a/Makefile.am b/Makefile.am index 4d1512f8ce..5888bc0266 100644 --- a/Makefile.am +++ b/Makefile.am @@ -171,6 +171,7 @@ MODULES = \ guix/scripts/import/texlive.scm \ guix/scripts/environment.scm \ guix/scripts/publish.scm \ + guix/scripts/weather.scm \ guix/scripts/edit.scm \ guix/scripts/size.scm \ guix/scripts/graph.scm \ diff --git a/doc/guix.texi b/doc/guix.texi index dfa1e22fcc..932b118f7d 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -158,6 +158,7 @@ Utilities * Invoking guix challenge:: Challenging substitute servers. * Invoking guix copy:: Copying to and from a remote store. * Invoking guix container:: Process isolation. +* Invoking guix weather:: Assessing substitute availability. Invoking @command{guix build} @@ -2201,6 +2202,9 @@ authenticates substitute information itself, as explained above, which is what we care about (whereas X.509 certificates are about authenticating bindings between domain names and public keys.) +You can get statistics on the substitutes provided by a server using the +@command{guix weather} command (@pxref{Invoking guix weather}). + The substitute mechanism can be disabled globally by running @code{guix-daemon} with @code{--no-substitutes} (@pxref{Invoking guix-daemon}). It can also be disabled temporarily by passing the @@ -4933,6 +4937,7 @@ the Scheme programming interface of Guix in a convenient way. * Invoking guix challenge:: Challenging substitute servers. * Invoking guix copy:: Copying to and from a remote store. * Invoking guix container:: Process isolation. +* Invoking guix weather:: Assessing substitute availability. @end menu @node Invoking guix build @@ -6869,7 +6874,8 @@ serves them. This ``on-the-fly'' mode is convenient in that it requires no setup and is immediately available. However, when serving lots of clients, we recommend using the @option{--cache} option, which enables caching of the archives before they are sent to clients---see below for -details. +details. The @command{guix weather} command provides a handy way to +check what a server provides (@pxref{Invoking guix weather}). As a bonus, @command{guix publish} also serves as a content-addressed mirror for source files referenced in @code{origin} records @@ -7269,6 +7275,73 @@ must be PID 1 of the container or one of its child processes. @end table +@node Invoking guix weather +@section Invoking @command{guix weather} + +Occasionally you're grumpy because substitutes are lacking and you end +up building packages by yourself (@pxref{Substitutes}). The +@command{guix weather} command reports on substitute availability on the +specified servers so you can have an idea of whether you'll be grumpy +today. It can sometimes be useful info as a user, but it is primarily +useful to people running @command{guix publish} (@pxref{Invoking guix +publish}). + +@cindex statistics, for substitutes +@cindex availability of substitutes +@cindex substitute availability +@cindex weather, substitute availability +Here's a sample run: + +@example +$ guix weather --substitute-urls=https://guix.example.org +computing 5,872 package derivations for x86_64-linux... +looking for 6,128 store items on https://guix.example.org.. +updating list of substitutes from 'https://guix.example.org'... 100.0% +https://guix.example.org + 43.4% substitutes available (2,658 out of 6,128) + 7,032.5 MiB of nars (compressed) + 19,824.2 MiB on disk (uncompressed) + 0.030 seconds per request (182.9 seconds in total) + 33.5 requests per second +@end example + +As you can see, it reports the fraction of all the packages for which +substitutes are available on the server---regardless of whether +substitutes are enabled, and regardless of whether this server's signing +key is authorized. It also reports the size of the compressed archives +(``nars'') provided by the server, the size the corresponding store +items occupy in the store (assuming deduplication is turned off), and +the server's throughput. + +To achieve that, @command{guix weather} queries over HTTP(S) meta-data +(@dfn{narinfos}) for all the relevant store items. Like @command{guix +challenge}, it ignores signatures on those substitutes, which is +innocuous since the command only gathers statistics and cannot install +those substitutes. + +Among other things, it is possible to query specific system types and +specific package sets. The available options are listed below. + +@table @code +@item --substitute-urls=@var{urls} +@var{urls} is the space-separated list of substitute server URLs to +query. When this option is omitted, the default set of substitute +servers is queried. + +@item --system=@var{system} +@itemx -s @var{system} +Query substitutes for @var{system}---e.g., @code{aarch64-linux}. This +option can be repeated, in which case @command{guix weather} will query +substitutes for several system types. + +@item --manifest=@var{file} +Instead of querying substitutes for all the packages, only ask for those +specified in @var{file}. @var{file} must contain a @dfn{manifest}, as +with the @code{-m} option of @command{guix package} (@pxref{Invoking +guix package}). +@end table + + @c ********************************************************************* @node GNU Distribution @chapter GNU Distribution diff --git a/guix/scripts/weather.scm b/guix/scripts/weather.scm new file mode 100644 index 0000000000..9cbeedd288 --- /dev/null +++ b/guix/scripts/weather.scm @@ -0,0 +1,234 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Ludovic Courtès +;;; Copyright © 2017 Ricardo Wurmus +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (guix scripts weather) + #:use-module (guix ui) + #:use-module (guix scripts) + #:use-module (guix packages) + #:use-module (guix profiles) + #:use-module (guix derivations) + #:use-module (guix monads) + #:use-module (guix store) + #:use-module (guix grafts) + #:use-module (guix build syscalls) + #:use-module (guix scripts substitute) + #:use-module (gnu packages) + #:use-module (web uri) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-19) + #:use-module (srfi srfi-26) + #:use-module (srfi srfi-37) + #:use-module (ice-9 match) + #:use-module (ice-9 format) + #:export (guix-weather)) + +(define (all-packages) + "Return the list of public packages we are going to query." + (fold-packages (lambda (package result) + (match (package-replacement package) + ((? package? replacement) + (cons* replacement package result)) + (#f + (cons package result)))) + '())) + +(define* (package-outputs packages + #:optional (system (%current-system))) + "Return the list of outputs of all of PACKAGES for the given SYSTEM." + (let ((packages (filter (cut supported-package? <> system) packages))) + + (define update-progress! + (let ((total (length packages)) + (done 0) + (width (max 10 (- (terminal-columns) 10)))) + (lambda () + (set! done (+ 1 done)) + (let* ((ratio (/ done total 1.)) + (done (inexact->exact (round (* width ratio)))) + (left (- width done))) + (format (current-error-port) "~5,1f% [~a~a]\r" + (* ratio 100.) + (make-string done #\#) + (make-string left #\space)) + (when (>= done total) + (newline (current-error-port))) + (force-output (current-error-port)))))) + + (format (current-error-port) + (G_ "computing ~h package derivations for ~a...~%") + (length packages) system) + + (foldm %store-monad + (lambda (package result) + (mlet %store-monad ((drv (package->derivation package system + #:graft? #f))) + (update-progress!) + (match (derivation->output-paths drv) + (((names . items) ...) + (return (append items result)))))) + '() + packages))) + +(cond-expand + (guile-2.2 + ;; Guile 2.2.2 has a bug whereby 'time-monotonic' objects have seconds and + ;; nanoseconds swapped (fixed in Guile commit 886ac3e). Work around it. + (define time-monotonic time-tai)) + (else #t)) + +(define (call-with-time thunk kont) + "Call THUNK and pass KONT the elapsed time followed by THUNK's return +values." + (let* ((start (current-time time-monotonic)) + (result (call-with-values thunk list)) + (end (current-time time-monotonic))) + (apply kont (time-difference end start) result))) + +(define-syntax-rule (let/time ((time result exp)) body ...) + (call-with-time (lambda () exp) (lambda (time result) body ...))) + +(define (report-server-coverage server items) + "Report the subset of ITEMS available as substitutes on SERVER." + (define MiB (* (expt 2 20) 1.)) + + (format #t (G_ "looking for ~h store items on ~a...~%") + (length items) server) + + (let/time ((time narinfos (lookup-narinfos server items))) + (format #t "~a~%" server) + (let ((obtained (length narinfos)) + (requested (length items)) + (sizes (filter-map narinfo-file-size narinfos)) + (time (+ (time-second time) + (/ (time-nanosecond time) 1e9)))) + (format #t (G_ " ~2,1f% substitutes available (~h out of ~h)~%") + (* 100. (/ obtained requested 1.)) + obtained requested) + (let ((total (/ (reduce + 0 sizes) MiB))) + (match (length sizes) + ((? zero?) + (format #t (G_ " unknown substitute sizes~%"))) + (len + (if (= len obtained) + (format #t (G_ " ~,1h MiB of nars (compressed)~%") total) + (format #t (G_ " at least ~,1h MiB of nars (compressed)~%") + total))))) + (format #t (G_ " ~,1h MiB on disk (uncompressed)~%") + (/ (reduce + 0 (map narinfo-size narinfos)) MiB)) + (format #t (G_ " ~,3h seconds per request (~,1h seconds in total)~%") + (/ time requested 1.) time) + (format #t (G_ " ~,1h requests per second~%") + (/ requested time 1.))))) + + +;;; +;;; Command-line options. +;;; + +(define (show-help) + (display (G_ "Usage: guix weather [OPTIONS] +Report the availability of substitutes.\n")) + (display (G_ " + --substitute-urls=URLS + check for available substitutes at URLS")) + (display (G_ " + --manifest=MANIFEST + look up substitutes for packages specified in MANIFEST")) + (display (G_ " + -s, --system=SYSTEM consider substitutes for SYSTEM--e.g., \"i686-linux\"")) + (newline) + (display (G_ " + -h, --help display this help and exit")) + (display (G_ " + -V, --version display version information and exit")) + (newline) + (show-bug-report-information)) + +(define %options + (list (option '(#\h "help") #f #f + (lambda args + (show-help) + (exit 0))) + (option '(#\V "version") #f #f + (lambda args + (show-version-and-exit "guix challenge"))) + + (option '("substitute-urls") #t #f + (lambda (opt name arg result . rest) + (let ((urls (string-tokenize arg))) + (for-each (lambda (url) + (unless (string->uri url) + (leave (G_ "~a: invalid URL~%") url))) + urls) + (apply values + (alist-cons 'substitute-urls urls + (alist-delete 'substitute-urls result)) + rest)))) + (option '(#\m "manifest") #t #f + (lambda (opt name arg result) + (alist-cons 'manifest arg result))) + (option '(#\s "system") #t #f + (lambda (opt name arg result) + (alist-cons 'system arg result))))) + +(define %default-options + `((substitute-urls . ,%default-substitute-urls))) + +(define (load-manifest file) + "Load the manifest from FILE and return the list of packages it refers to." + (let* ((user-module (make-user-module '((guix profiles) (gnu)))) + (manifest (load* file user-module))) + (map manifest-entry-item + (manifest-transitive-entries manifest)))) + + +;;; +;;; Entry point. +;;; + +(define (guix-weather . args) + (with-error-handling + (let* ((opts (parse-command-line args %options + (list %default-options))) + (urls (assoc-ref opts 'substitute-urls)) + (systems (match (filter-map (match-lambda + (('system . system) system) + (_ #f)) + opts) + (() (list (%current-system))) + (systems systems))) + (packages (let ((file (assoc-ref opts 'manifest))) + (if file + (load-manifest file) + (all-packages)))) + (items (with-store store + (parameterize ((%graft? #f)) + (concatenate + (run-with-store store + (mapm %store-monad + (lambda (system) + (package-outputs packages system)) + systems))))))) + (for-each (lambda (server) + (report-server-coverage server items)) + urls)))) + +;;; Local Variables: +;;; eval: (put 'let/time 'scheme-indent-function 1) +;;; End: From a84ea2191e3781317b53bacf392343eb3b15e1be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 12:23:26 +0200 Subject: [PATCH 0422/1227] system: Add a default '.guile' skeleton. * gnu/system/shadow.scm (default-skeletons): Add ".guile". --- gnu/system/shadow.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index 712e6df8d8..4e6f645e93 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -189,6 +189,11 @@ set debug-file-directory ~/.guix-profile/lib/debug\n"))) (".bashrc" ,bashrc) (".zlogin" ,zlogin) (".Xdefaults" ,xdefaults) + (".guile" ,(plain-file "dot-guile" + (string-append + "(use-modules (ice-9 readline))\n\n" + ";; Enable completion at the REPL.\n" + "(activate-readline)\n"))) (".guile-wm" ,guile-wm) (".gdbinit" ,gdbinit)))) From ebc9f7050c6912b015395e020fe6a07b0369e3a8 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 25 Jul 2017 07:32:25 -0400 Subject: [PATCH 0423/1227] gnu: webkitgtk: Update to 2.16.6 [security fixes]. Includes fixes for CVE-2017-7039, CVE-2017-7018, CVE-2017-7030, CVE-2017-7037, CVE-2017-7034, CVE-2017-7055, CVE-2017-7056, CVE-2017-7064, CVE-2017-7061, CVE-2017-7048, and CVE-2017-7046. * gnu/packages/webkit.scm (webkitgtk): Update to 2.16.6. --- gnu/packages/webkit.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index 8d04242743..5ab27b49f5 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -53,14 +53,14 @@ (define-public webkitgtk (package (name "webkitgtk") - (version "2.16.5") + (version "2.16.6") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "1m3xpqs6ddq3m8z6vn83mqh5mkagxlp68vl5qnc7hxcf8brrc0wf")))) + "08abxbhi2n1pfby9f2c20z8mpmbvbs2z7vf0p5ckq4jkz46na8zw")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no tests From 5ea8dbf0c906d51779ba0cf775ec9967f5f42382 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sat, 8 Jul 2017 17:36:29 -0400 Subject: [PATCH 0424/1227] gnu: gcl: Ensure gcc and binutils are available at runtime. * gnu/packages/lisp.scm (gcl)[arguments]: Add -fgnu89-inline to CFLAGS. Add GCC path to make-flags. Modify 'pre-conf' phase. Add 'wrap' phase. --- gnu/packages/lisp.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index e92ae2ebfe..224cea56f6 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -88,6 +88,10 @@ `(#:parallel-build? #f ; The build system seems not to be thread safe. #:tests? #f ; There does not seem to be make check or anything similar. #:configure-flags '("--enable-ansi") ; required for use by the maxima package + #:make-flags (list + "CFLAGS=-fgnu89-inline" ; removes inline function warnings + (string-append "GCC=" (assoc-ref %build-inputs "gcc") + "/bin/gcc")) #:phases (modify-phases %standard-phases (add-before 'configure 'pre-conf (lambda _ @@ -104,6 +108,27 @@ (string-append "SHELL=" (which "bash"))) (("SHELL=/bin/sh") (string-append "SHELL=" (which "sh")))) + (substitute* "h/linux.defs" + (("#CC") "CC") + (("-fwritable-strings") "") + (("-Werror") "")) + #t)) + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((gcl (assoc-ref outputs "out")) + (input-path (lambda (lib path) + (string-append + (assoc-ref inputs lib) path))) + (binaries '("binutils"))) + ;; GCC and the GNU binutils are necessary for GCL to be + ;; able to compile Lisp functions and programs (this is + ;; a standard feature in Common Lisp). While the + ;; the location of GCC is specified in the make-flags, + ;; the GNU binutils must be available in GCL's $PATH. + (wrap-program (string-append gcl "/bin/gcl") + `("PATH" prefix ,(map (lambda (binary) + (input-path binary "/bin")) + binaries)))) #t)) ;; drop strip phase to make maxima build, see ;; https://www.ma.utexas.edu/pipermail/maxima/2008/009769.html From 6b2eafaaa81cddc66c128a0aeeee99ed33cfb4ca Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sat, 8 Jul 2017 18:50:48 -0400 Subject: [PATCH 0425/1227] Revert "gnu: maxima: Ensure gcc is available at runtime." This reverts commit f2fa86cc82b5941bde63b666337eea59aa609e55. Commit 5ea8dbf0c906d51779ba0cf775ec9967f5f42382 fixes the underlying issue in GNU Common Lisp. --- gnu/packages/maths.scm | 71 ++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 40 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f8967cd944..91a092d569 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2075,8 +2075,7 @@ to BMP, JPEG or PNG image formats.") (patches (search-patches "maxima-defsystem-mkdir.patch")))) (build-system gnu-build-system) (inputs - `(("gcc" ,gcc) - ("gcl" ,gcl) + `(("gcl" ,gcl) ("gnuplot" ,gnuplot) ;for plots ("tk" ,tk))) ;Tcl/Tk is used by 'xmaxima' (native-inputs @@ -2098,44 +2097,36 @@ to BMP, JPEG or PNG image formats.") ;; '/tmp/nix-build-maxima-*', which won't exist at run time. ;; Work around that. #:make-flags (list "TMPDIR=/tmp") - #:phases - (modify-phases %standard-phases - (add-before 'configure 'set-gcc-path - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "lisp-utils/defsystem.lisp" - (("\\(defparameter \\*c-compiler\\* \"gcc\"\\)") - (string-append "(defparameter *c-compiler* \"" - (assoc-ref inputs "gcc") "/bin/gcc\")"))) - #t)) - (add-before 'check 'pre-check - (lambda _ - (chmod "src/maxima" #o555) - #t)) - ;; Make sure the doc and emacs files are found in the - ;; standard location. Also configure maxima to find gnuplot - ;; without having it on the PATH. - (add-after 'install 'post-install - (lambda* (#:key outputs inputs #:allow-other-keys) - (let* ((gnuplot (assoc-ref inputs "gnuplot")) - (out (assoc-ref outputs "out")) - (datadir (string-append out "/share/maxima/" ,version))) - (with-directory-excursion out - (mkdir-p "share/emacs") - (mkdir-p "share/doc") - (symlink - (string-append datadir "/emacs/") - (string-append out "/share/emacs/site-lisp")) - (symlink - (string-append datadir "/doc/") - (string-append out "/share/doc/maxima")) - (with-atomic-file-replacement - (string-append datadir "/share/maxima-init.lisp") - (lambda (in out) - (format out "~a ~s~a~%" - "(setf $gnuplot_command " - (string-append gnuplot "/bin/gnuplot") ")") - (dump-port in out))))) - #t))))) + #:phases (alist-cons-before + 'check 'pre-check + (lambda _ + (chmod "src/maxima" #o555)) + ;; Make sure the doc and emacs files are found in the + ;; standard location. Also configure maxima to find gnuplot + ;; without having it on the PATH. + (alist-cons-after + 'install 'post-install + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((gnuplot (assoc-ref inputs "gnuplot")) + (out (assoc-ref outputs "out")) + (datadir (string-append out "/share/maxima/" ,version))) + (with-directory-excursion out + (mkdir-p "share/emacs") + (mkdir-p "share/doc") + (symlink + (string-append datadir "/emacs/") + (string-append out "/share/emacs/site-lisp")) + (symlink + (string-append datadir "/doc/") + (string-append out "/share/doc/maxima")) + (with-atomic-file-replacement + (string-append datadir "/share/maxima-init.lisp") + (lambda (in out) + (format out "~a ~s~a~%" + "(setf $gnuplot_command " + (string-append gnuplot "/bin/gnuplot") ")") + (dump-port in out)))))) + %standard-phases)))) (home-page "http://maxima.sourceforge.net") (synopsis "Numeric and symbolic expression manipulation") (description "Maxima is a system for the manipulation of symbolic and From 0093b1262b1af6b66cf255112bdad7ed6f8f08e3 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sat, 8 Jul 2017 18:57:15 -0400 Subject: [PATCH 0426/1227] gnu: maxima: Ensure binutils are available at runtime. * gnu/packages/maths.scm (maxima)[arguments]: Use modify-phases syntax. Modify 'post-install' phase. --- gnu/packages/maths.scm | 67 +++++++++++++++++++++++------------------- 1 file changed, 37 insertions(+), 30 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 91a092d569..287710d4fc 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2097,36 +2097,43 @@ to BMP, JPEG or PNG image formats.") ;; '/tmp/nix-build-maxima-*', which won't exist at run time. ;; Work around that. #:make-flags (list "TMPDIR=/tmp") - #:phases (alist-cons-before - 'check 'pre-check - (lambda _ - (chmod "src/maxima" #o555)) - ;; Make sure the doc and emacs files are found in the - ;; standard location. Also configure maxima to find gnuplot - ;; without having it on the PATH. - (alist-cons-after - 'install 'post-install - (lambda* (#:key outputs inputs #:allow-other-keys) - (let* ((gnuplot (assoc-ref inputs "gnuplot")) - (out (assoc-ref outputs "out")) - (datadir (string-append out "/share/maxima/" ,version))) - (with-directory-excursion out - (mkdir-p "share/emacs") - (mkdir-p "share/doc") - (symlink - (string-append datadir "/emacs/") - (string-append out "/share/emacs/site-lisp")) - (symlink - (string-append datadir "/doc/") - (string-append out "/share/doc/maxima")) - (with-atomic-file-replacement - (string-append datadir "/share/maxima-init.lisp") - (lambda (in out) - (format out "~a ~s~a~%" - "(setf $gnuplot_command " - (string-append gnuplot "/bin/gnuplot") ")") - (dump-port in out)))))) - %standard-phases)))) + #:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + (chmod "src/maxima" #o555) + #t)) + ;; Make sure the doc and emacs files are found in the + ;; standard location. Also configure maxima to find gnuplot + ;; without having it on the PATH. + (add-after 'install 'post-install + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((gnuplot (assoc-ref inputs "gnuplot")) + (out (assoc-ref outputs "out")) + (datadir (string-append out "/share/maxima/" ,version)) + (binutils (string-append (assoc-ref inputs "binutils") + "/bin"))) + (with-directory-excursion out + (mkdir-p "share/emacs") + (mkdir-p "share/doc") + (symlink + (string-append datadir "/emacs/") + (string-append out "/share/emacs/site-lisp")) + (symlink + (string-append datadir "/doc/") + (string-append out "/share/doc/maxima")) + (with-atomic-file-replacement + (string-append datadir "/share/maxima-init.lisp") + (lambda (in out) + (format out "~a ~s~a~%" + "(setf $gnuplot_command " + (string-append gnuplot "/bin/gnuplot") ")") + (dump-port in out)))) + ;; Ensure that Maxima will have access to the GNU binutils + ;; components at runtime. + (wrap-program (string-append out "/bin/maxima") + `("PATH" prefix (,binutils)))) + #t))))) (home-page "http://maxima.sourceforge.net") (synopsis "Numeric and symbolic expression manipulation") (description "Maxima is a system for the manipulation of symbolic and From 726ecfeb3ae9eb4baacf042e2dd34b1e377dccfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 17:06:51 +0200 Subject: [PATCH 0427/1227] gnu: Add guile2.0-bytestructures. * gnu/packages/patches/guile-bytestructures-name-clash.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/guile.scm (guile-bytestructures)[source]: Use it. [arguments]: Unpack the source. [native-inputs]: New field. (guile2.0-bytestructures): New variable. --- gnu/local.mk | 1 + gnu/packages/guile.scm | 22 +++++++++++-- .../guile-bytestructures-name-clash.patch | 31 +++++++++++++++++++ 3 files changed, 52 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/guile-bytestructures-name-clash.patch diff --git a/gnu/local.mk b/gnu/local.mk index 60ad007a28..1cc8f08d98 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -668,6 +668,7 @@ dist_patch_DATA = \ %D%/packages/patches/gsl-test-i686.patch \ %D%/packages/patches/gspell-dash-test.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \ + %D%/packages/patches/guile-bytestructures-name-clash.patch \ %D%/packages/patches/guile-default-utf8.patch \ %D%/packages/patches/guile-linux-syscalls.patch \ %D%/packages/patches/guile-present-coding.patch \ diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index dd852cb3e6..21cc59ef04 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1543,16 +1543,28 @@ is no support for parsing block and inline level HTML.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "04lgh0nk6ddnwgh20hnz4pyhczaik0xbd50kikjsxcwcl46shavb")))) + "04lgh0nk6ddnwgh20hnz4pyhczaik0xbd50kikjsxcwcl46shavb")) + (patches (search-patches "guile-bytestructures-name-clash.patch")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils) + (ice-9 ftw) (ice-9 match) (ice-9 popen) (ice-9 rdelim)) + ;; Unpack. + (setenv "PATH" + (string-join (list (assoc-ref %build-inputs "tar") + (assoc-ref %build-inputs "xz")) + "/bin:" 'suffix)) + (system* "tar" "xf" (assoc-ref %build-inputs "source")) + (match (scandir ".") + (("." ".." directory) + (chdir directory))) + (let* ((out (assoc-ref %outputs "out")) (guile (assoc-ref %build-inputs "guile")) (effective (read-line @@ -1561,7 +1573,7 @@ is no support for parsing block and inline level HTML.") "-c" "(display (effective-version))"))) (module-dir (string-append out "/share/guile/site/" effective)) - (source (assoc-ref %build-inputs "source")) + (source (getcwd)) (doc (string-append out "/share/doc/scheme-bytestructures")) (sld-files (with-directory-excursion source (find-files "bytestructures/r7" "\\.exports.sld$"))) @@ -1601,6 +1613,9 @@ is no support for parsing block and inline level HTML.") ;; Also copy over the README. (install-file "README.md" doc) #t)))) + (native-inputs + `(("tar" ,tar) + ("xz" ,xz))) (inputs `(("guile" ,guile-2.2))) (home-page "https://github.com/TaylanUB/scheme-bytestructures") @@ -1613,6 +1628,9 @@ an abstraction over raw memory. It's also more powerful than the C type system, elevating types to first-class status.") (license license:gpl3+))) +(define-public guile2.0-bytestructures + (package-for-guile-2.0 guile-bytestructures)) + (define-public guile-aspell (package (name "guile-aspell") diff --git a/gnu/packages/patches/guile-bytestructures-name-clash.patch b/gnu/packages/patches/guile-bytestructures-name-clash.patch new file mode 100644 index 0000000000..ac834dd504 --- /dev/null +++ b/gnu/packages/patches/guile-bytestructures-name-clash.patch @@ -0,0 +1,31 @@ +This patch works around a name clash between the 'cstring-pointer' module and +the 'cstring-module' variable that occurs in Guile 2.0: + + ice-9/boot-9.scm:109:20: re-exporting local variable: cstring-pointer + +--- guile-bytestructures-20170402.91d042e-checkout/bytestructures/guile.scm 2017-07-25 17:04:32.858289986 +0200 ++++ guile-bytestructures-20170402.91d042e-checkout/bytestructures/guile.scm 2017-07-25 17:04:41.130244725 +0200 +@@ -1,6 +1,6 @@ + (define-module (bytestructures guile)) + +-(import ++(use-modules + (bytestructures guile base) + (bytestructures guile vector) + (bytestructures guile struct) +@@ -8,7 +8,7 @@ + (bytestructures guile pointer) + (bytestructures guile numeric) + (bytestructures guile string) +- (bytestructures guile cstring-pointer)) ++ ((bytestructures guile cstring-pointer) #:prefix cstr:)) + (re-export + make-bytestructure-descriptor + bytestructure-descriptor? +@@ -75,5 +75,5 @@ + + bs:string + +- cstring-pointer ++ cstr:cstring-pointer + ) From 70bc608503f9029a065026a99ec45dbd0ec631c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 17:11:41 +0200 Subject: [PATCH 0428/1227] gnu: Add guile2.0-git. * gnu/packages/guile.scm (guile2.0-git): New variable. --- gnu/packages/guile.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 21cc59ef04..f1ffc0e006 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1841,6 +1841,9 @@ is not available for Guile 2.0.") manipulate repositories of the Git version control system.") (license license:gpl3+)))) +(define-public guile2.0-git + (package-for-guile-2.0 guile-git)) + (define-public guile-syntax-highlight (let ((commit "a047675e66861b647426372aa2ba7820f749616d") (revision "0")) From 06ce8e568059caa95006913c062a3df6cf07e943 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 17:30:36 +0200 Subject: [PATCH 0429/1227] hydra: Simplify 'tarball' job. * build-aux/hydra/guix.scm (tarball-package): Remove. (hydra-jobs): Use 'dist-package' instead of 'tarball-package'. --- build-aux/hydra/guix.scm | 35 ++++------------------------------- 1 file changed, 4 insertions(+), 31 deletions(-) diff --git a/build-aux/hydra/guix.scm b/build-aux/hydra/guix.scm index f496357562..80831c4616 100644 --- a/build-aux/hydra/guix.scm +++ b/build-aux/hydra/guix.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,11 +45,7 @@ (guix utils) (guix derivations) (guix build-system gnu) - (gnu packages version-control) (gnu packages package-management) - (gnu packages imagemagick) - (gnu packages graphviz) - (gnu packages man) (srfi srfi-1) (srfi srfi-26) (ice-9 match)) @@ -70,29 +66,6 @@ (home-page . ,(package-home-page package)) (maintainers . ("bug-guix@gnu.org")))) -(define (tarball-package checkout) - "Return a package that does `make distcheck' from CHECKOUT, a directory -containing a Git checkout of Guix." - (let ((guix (@@ (gnu packages package-management) guix))) - (dist-package (package - (inherit guix) - (arguments (package-arguments guix)) - (native-inputs `(("imagemagick" ,imagemagick) - ,@(package-native-inputs guix)))) - checkout - - #:phases - '(modify-phases %dist-phases - (add-before 'build 'build-daemon - ;; Build 'guix-daemon' first so that help2man - ;; successfully creates 'guix-daemon.1'. - (lambda _ - (let ((n (number->string - (parallel-job-count)))) - (zero? (system* "make" - "nix/libstore/schema.sql.hh" - "guix-daemon" "-j" n))))))))) - (define (hydra-jobs store arguments) "Return Hydra jobs." (define systems @@ -109,9 +82,9 @@ containing a Git checkout of Guix." (define guix-checkout (assq-ref arguments 'guix)) - (let ((guix (assq-ref guix-checkout 'file-name))) + (let ((file (assq-ref guix-checkout 'file-name))) (format (current-error-port) "using checkout ~s (~s)~%" - guix-checkout guix) + guix-checkout file) `((tarball . ,(cute package->alist store - (tarball-package guix) + (dist-package guix file) (%current-system)))))) From 386f5415569604d3c4c83823ffc6b71b3012670c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 17:44:35 +0200 Subject: [PATCH 0430/1227] hydra: Add 'guix.SYSTEM' jobs. * build-aux/hydra/guix.scm (package->alist): Disable grafting. (hydra-jobs): Return 'guix.SYSTEM' jobs in addition to 'tarball'. --- build-aux/hydra/guix.scm | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/build-aux/hydra/guix.scm b/build-aux/hydra/guix.scm index 80831c4616..659b8bfbc1 100644 --- a/build-aux/hydra/guix.scm +++ b/build-aux/hydra/guix.scm @@ -43,6 +43,7 @@ (use-modules (guix store) (guix packages) (guix utils) + (guix grafts) (guix derivations) (guix build-system gnu) (gnu packages package-management) @@ -59,7 +60,9 @@ #:optional (package-derivation package-derivation)) "Convert PACKAGE to an alist suitable for Hydra." `((derivation . ,(derivation-file-name - (package-derivation store package system))) + (parameterize ((%graft? #f)) + (package-derivation store package system + #:graft? #f)))) (description . ,(package-synopsis package)) (long-description . ,(package-description package)) (license . ,(package-license package)) @@ -85,6 +88,19 @@ (let ((file (assq-ref guix-checkout 'file-name))) (format (current-error-port) "using checkout ~s (~s)~%" guix-checkout file) + `((tarball . ,(cute package->alist store (dist-package guix file) - (%current-system)))))) + (%current-system))) + + ,@(map (lambda (system) + (let ((name (string->symbol + (string-append "guix." system)))) + `(,name + . ,(cute package->alist store + (package + (inherit guix) + (version "latest") + (source file)) + system)))) + %hydra-supported-systems)))) From 1f9bff415220ed412a95d3190faaa449150864d6 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Sun, 23 Jul 2017 22:00:21 +0100 Subject: [PATCH 0431/1227] gnu: openmpi: Update to 1.10.7. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mpi.scm (openmpi): Update to 1.10.7. Signed-off-by: Ludovic Courtès --- gnu/packages/mpi.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 3b1ba003c6..6adff2a795 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2014 Ian Denhardt ;;; Copyright © 2016 Andreas Enge +;;; Copyright © 2017 Dave Love ;;; ;;; This file is part of GNU Guix. ;;; @@ -110,7 +111,7 @@ bind processes, and much more.") (define-public openmpi (package (name "openmpi") - (version "1.10.3") + (version "1.10.7") (source (origin (method url-fetch) @@ -119,7 +120,7 @@ bind processes, and much more.") "/downloads/openmpi-" version ".tar.bz2")) (sha256 (base32 - "0k95ri9f8kzx5vhzrdbzn59rn2324fs4a96w5v8jy20j8dkbp13l")))) + "142s1vny9gllkq336yafxayjgcirj2jv0ddabj879jgya7hyr2d0")))) (build-system gnu-build-system) (inputs `(("hwloc" ,hwloc "lib") From bb0f6d7526477c321d025bc8e2dcb019dcc1f415 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Sun, 23 Jul 2017 22:30:40 +0100 Subject: [PATCH 0432/1227] gnu: openmpi: Description mentions MPI 3.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mpi.scm (openmpi): It's MPI 3, not MPI 2. Signed-off-by: Ludovic Courtès --- gnu/packages/mpi.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 6adff2a795..b20993b952 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -156,9 +156,9 @@ bind processes, and much more.") (for-each delete-file (find-files out "config.log")) #t)))))) (home-page "http://www.open-mpi.org") - (synopsis "MPI-2 implementation") + (synopsis "MPI-3 implementation") (description - "The Open MPI Project is an MPI-2 implementation that is developed and + "The Open MPI Project is an MPI-3 implementation that is developed and maintained by a consortium of academic, research, and industry partners. Open MPI is therefore able to combine the expertise, technologies, and resources from all across the High Performance Computing community in order to build the From c7db7b86cef0cca32c4f22deab4f0d6caf964729 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Mon, 24 Jul 2017 13:51:50 -0400 Subject: [PATCH 0433/1227] gnu: perl-dbd-mysql: Fix CVE-2017-10788. * gnu/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/databases.scm (perl-dbd-mysql)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/databases.scm | 3 +- .../perl-dbd-mysql-CVE-2017-10788.patch | 62 +++++++++++++++++++ 3 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1cc8f08d98..f5255feff6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -904,6 +904,7 @@ dist_patch_DATA = \ %D%/packages/patches/pcre2-CVE-2017-8786.patch \ %D%/packages/patches/perl-file-path-CVE-2017-6512.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \ + %D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \ %D%/packages/patches/perl-deterministic-ordering.patch \ %D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \ %D%/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch \ diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index ee340505e6..7e62452ea6 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1015,7 +1015,8 @@ columns, primary keys, unique constraints and relationships.") "DBD-mysql-" version ".tar.gz")) (sha256 (base32 - "16bg7l28n65ngi1abjxvwk906a80i2vd5vzjn812dx8phdg8d7v2")))) + "16bg7l28n65ngi1abjxvwk906a80i2vd5vzjn812dx8phdg8d7v2")) + (patches (search-patches "perl-dbd-mysql-CVE-2017-10788.patch")))) (build-system perl-build-system) ;; Tests require running MySQL server (arguments `(#:tests? #f)) diff --git a/gnu/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch b/gnu/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch new file mode 100644 index 0000000000..74613cb632 --- /dev/null +++ b/gnu/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch @@ -0,0 +1,62 @@ +Fix CVE-2017-10788: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-10788 + +Patch written to match corrected documentation specifications: + +Old: http://web.archive.org/web/20161220021610/https://dev.mysql.com/doc/refman/5.7/en/mysql-stmt-close.html +New: https://dev.mysql.com/doc/refman/5.7/en/mysql-stmt-close.html + +The patch itself is from https://github.com/perl5-dbi/DBD-mysql/issues/120#issuecomment-312420660. + +From 9ce10cfae7138c37c3a0cb2ba2a1d682482943d0 Mon Sep 17 00:00:00 2001 +From: Pali +Date: Sun, 25 Jun 2017 10:07:39 +0200 +Subject: [PATCH] Fix use-after-free after calling mysql_stmt_close() + +Ignore return value from mysql_stmt_close() and also its error message +because it points to freed memory after mysql_stmt_close() was called. +--- + dbdimp.c | 8 ++------ + mysql.xs | 7 ++----- + 2 files changed, 4 insertions(+), 11 deletions(-) + +diff --git a/dbdimp.c b/dbdimp.c +index c60a5f6..a6410e5 100644 +--- a/dbdimp.c ++++ b/dbdimp.c +@@ -4894,12 +4894,8 @@ void dbd_st_destroy(SV *sth, imp_sth_t *imp_sth) { + + if (imp_sth->stmt) + { +- if (mysql_stmt_close(imp_sth->stmt)) +- { +- do_error(DBIc_PARENT_H(imp_sth), mysql_stmt_errno(imp_sth->stmt), +- mysql_stmt_error(imp_sth->stmt), +- mysql_stmt_sqlstate(imp_sth->stmt)); +- } ++ mysql_stmt_close(imp_sth->stmt); ++ imp_sth->stmt= NULL; + } + #endif + +diff --git a/mysql.xs b/mysql.xs +index 55376e1..affde59 100644 +--- a/mysql.xs ++++ b/mysql.xs +@@ -434,11 +434,8 @@ do(dbh, statement, attr=Nullsv, ...) + if (bind) + Safefree(bind); + +- if(mysql_stmt_close(stmt)) +- { +- fprintf(stderr, "\n failed while closing the statement"); +- fprintf(stderr, "\n %s", mysql_stmt_error(stmt)); +- } ++ mysql_stmt_close(stmt); ++ stmt= NULL; + + if (retval == -2) /* -2 means error */ + { +-- +1.7.9.5 From 90062885b7ddde7eb17e67c2572b10745288f962 Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Tue, 25 Jul 2017 20:49:14 +0800 Subject: [PATCH 0434/1227] gnu: you-get: Update to 0.4.803. * gnu/packages/video.scm (you-get): Update to 0.4.803. Signed-off-by: Leo Famulari --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index d953ca0fd4..7f3f1ce8d6 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1238,7 +1238,7 @@ other site that youtube-dl supports.") (define-public you-get (package (name "you-get") - (version "0.4.775") + (version "0.4.803") (source (origin (method url-fetch) (uri (string-append @@ -1247,7 +1247,7 @@ other site that youtube-dl supports.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1pjjv42c9bysnj8s3c6v0g6b00lr7b21y8ypibnzd6z0jxlsq7sz")))) + "1rjy809x67dadzvj3midkhcda2kp6rqmbj6rbhjd5f16rvqgn7jp")))) (build-system python-build-system) (arguments ;; no tests From e9f468dfcdc91915f6eaeac335e54d70d9cf5117 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 25 Jul 2017 14:59:48 -0400 Subject: [PATCH 0435/1227] gnu: tcpdump: Update to 4.9.1 [fixes CVE-2017-11108]. * gnu/packages/admin.scm (tcpdump): Update to 4.9.1. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 8e9b9828ec..451faf9eac 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -661,14 +661,14 @@ network statistics collection, security monitoring, network debugging, etc.") (define-public tcpdump (package (name "tcpdump") - (version "4.9.0") + (version "4.9.1") (source (origin (method url-fetch) (uri (string-append "http://www.tcpdump.org/release/tcpdump-" version ".tar.gz")) (sha256 (base32 - "0pjsxsy8l71i813sa934cwf1ryp9xbr7nxwsvnzavjdirchq3sga")))) + "1wyqbg7bkmgqyslf1ns0xx9fcqi66hvcfm9nf77rl15jvvs8qi7r")))) (build-system gnu-build-system) (inputs `(("libpcap" ,libpcap) ("openssl" ,openssl))) From 4fdab1737186afefa3a80c2a3ed1fdaa48c9c57a Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Tue, 25 Jul 2017 14:38:50 -0400 Subject: [PATCH 0436/1227] gnu: python2-urwid: Actually build urwid for Python 2. * gnu/packages/python.scm (python2-urwid)[arguments]: Add #:python. --- gnu/packages/python.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 89c2de63bd..03f8134115 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5871,7 +5871,11 @@ features useful for text console applications.") (inherit python2-urwid) (arguments (append - '(#:phases + `(;; Explicitly using Python 2 is necessary due the argument list being + ;; built from only the 'delete-test_vterm.py' phase and python-urwid's + ;; package arguments, which by default assumes the use of Python 3. + #:python ,python-2 + #:phases (modify-phases %standard-phases ;; Disable the vterm tests because of non-deterministic failures ;; with Python 2. See https://github.com/urwid/urwid/issues/230. From 5f02ea1a6de4e06f31af62c14a25db6b980a6f9d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 25 Jul 2017 20:41:01 +0200 Subject: [PATCH 0437/1227] gnu: notmuch: Update to 0.25. * gnu/packages/mail.scm (notmuch): Update to 0.25. --- gnu/packages/mail.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 7374cdda1f..157a33f45d 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -667,14 +667,14 @@ invoking @command{notifymuch} from the post-new hook.") (define-public notmuch (package (name "notmuch") - (version "0.24.2") + (version "0.25") (source (origin (method url-fetch) (uri (string-append "https://notmuchmail.org/releases/notmuch-" version ".tar.gz")) (sha256 (base32 - "0lfchvapk11qazdgsxj42igp9mpp83zbd0h1jj6r3ifmhikajxma")))) + "02z6d87ip1hkipz8d7w0sfklg8dd5fd5vlgp768640ixg0gqvlk5")))) (build-system gnu-build-system) (arguments '(#:make-flags (list "V=1") ; Verbose test output. From 4eacb47de033188a1fa464d1253feb999e056c0f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 25 Jul 2017 20:43:46 +0200 Subject: [PATCH 0438/1227] gnu: feh: Update to 2.19.1. * gnu/packages/image-viewers.scm (feh): Update to 2.19.1. --- gnu/packages/image-viewers.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 6d85fce40b..644780b5e9 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -54,7 +54,7 @@ (define-public feh (package (name "feh") - (version "2.19") + (version "2.19.1") (home-page "https://feh.finalrewind.org/") (source (origin (method url-fetch) @@ -62,11 +62,11 @@ name "-" version ".tar.bz2")) (sha256 (base32 - "1sfhr6628xpj9p6bqihdq35y139x2gmrpydjlrwsl1rs77c2bgnf")))) + "1d4ycmai3dpajl0bdr9i56646g4h5j1lb95jjn0nckwcddcj927c")))) (build-system gnu-build-system) (arguments '(#:phases (alist-delete 'configure %standard-phases) - #:tests? #f + #:tests? #f ;FIXME: Requires 'perl-test-command'. #:make-flags (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))))) (inputs `(("imlib2" ,imlib2) From 16fb1e79cab8d52f9ed1f1cecbd017829c91ed51 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 25 Jul 2017 23:06:45 +0200 Subject: [PATCH 0439/1227] gnu: chess: Update to 6.2.5. * gnu/packages/games.scm (chess): Update to 6.2.5. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 2dec9a3951..35577228f1 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -725,7 +725,7 @@ asynchronously and at a user-defined speed.") (define-public chess (package (name "chess") - (version "6.2.4") + (version "6.2.5") (source (origin (method url-fetch) @@ -733,7 +733,7 @@ asynchronously and at a user-defined speed.") ".tar.gz")) (sha256 (base32 - "1vw2w3jwnmn44d5vsw47f8y70xvxcsz9m5msq9fgqlzjch15qhiw")))) + "00j8s0npgfdi41a0mr5w9qbdxagdk2v41lcr42rwl1jp6miyk6cs")))) (build-system gnu-build-system) (home-page "https://www.gnu.org/software/chess/") (synopsis "Full chess implementation") From af79852c99ef25f6d661c470f1d020e69ef34f1f Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 25 Jul 2017 23:21:42 +0300 Subject: [PATCH 0440/1227] gnu: neofetch: Fix search path. * gnu/packages/admin.scm (neofetch): Fix "No such file or directory" for distro logo. Signed-off-by: Marius Bakke --- gnu/packages/admin.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 451faf9eac..4d9afe8134 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2169,7 +2169,7 @@ tool for remote execution and deployment.") (("\"/etc/neofetch") (string-append "\"" out "/etc/neofetch")) (("\"/usr/share/neofetch") - (string-append "\"" out "/usr/share/neofetch")))) + (string-append "\"" out "/share/neofetch")))) #t)) (delete 'configure)))) (home-page "https://github.com/dylanaraps/neofetch") From 236cae0628fd02002ec2c5e0405880908f244b56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 21:37:06 +0200 Subject: [PATCH 0441/1227] offload: Disconnect sessions created by 'machine-load'. This fixes a memory leak that can be seen by running: (map (lambda _ (machine-load m)) (iota 1000)) * guix/scripts/offload.scm (machine-load): Add call to 'disconnect!'. --- guix/scripts/offload.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/guix/scripts/offload.scm b/guix/scripts/offload.scm index 566d117b02..868f54d1c6 100644 --- a/guix/scripts/offload.scm +++ b/guix/scripts/offload.scm @@ -400,6 +400,7 @@ allowed on MACHINE. Return +∞ if MACHINE is unreachable." "cat" "/proc/loadavg")) (line (read-line pipe))) (close-port pipe) + (disconnect! session) (if (eof-object? line) +inf.0 ;MACHINE does not respond, so assume it is infinitely loaded From 84620dd0c4f8f96cfdafb9a3ce8cce5d36a52b03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 21:55:20 +0200 Subject: [PATCH 0442/1227] offload: Fix potential file descriptor and memory leak. The '%slots' list could grow indefinitely; in practice though, guix-daemon is likely to restart 'guix offload' often enough. * guix/scripts/offload.scm (%slots): Remove. (choose-build-machine): Don't 'set!' %SLOTS. Return the acquired slot as a second value. (process-request): Adjust accordingly. Release the returned slot after 'transfer-and-offload'. --- guix/scripts/offload.scm | 47 +++++++++++++++++++++------------------- 1 file changed, 25 insertions(+), 22 deletions(-) diff --git a/guix/scripts/offload.scm b/guix/scripts/offload.scm index 868f54d1c6..d3cb64d604 100644 --- a/guix/scripts/offload.scm +++ b/guix/scripts/offload.scm @@ -428,13 +428,9 @@ allowed on MACHINE. Return +∞ if MACHINE is unreachable." "Return the name of the file used as a lock when choosing a build machine." (string-append %state-directory "/offload/machine-choice.lock")) - -(define %slots - ;; List of acquired build slots (open ports). - '()) - (define (choose-build-machine machines) - "Return the best machine among MACHINES, or #f." + "Return two values: the best machine among MACHINES and its build +slot (which must later be released with 'release-build-slot'), or #f and #f." ;; Proceed like this: ;; 1. Acquire the global machine-choice lock. @@ -481,14 +477,15 @@ allowed on MACHINE. Return +∞ if MACHINE is unreachable." ;; Release slots from the uninteresting machines. (for-each release-build-slot slots) - ;; Prevent SLOT from being GC'd. - (set! %slots (cons slot %slots)) - best)) + ;; The caller must keep SLOT to protect it from GC and to + ;; eventually release it. + (values best slot))) (begin ;; BEST is overloaded, so try the next one. (release-build-slot slot) (loop others)))) - (() #f))))) + (() + (values #f #f)))))) (define* (process-request wants-local? system drv features #:key @@ -506,19 +503,25 @@ allowed on MACHINE. Return +∞ if MACHINE is unreachable." ;; We'll never be able to match REQS. (display "# decline\n")) ((x ...) - (let ((machine (choose-build-machine candidates))) + (let-values (((machine slot) + (choose-build-machine candidates))) (if machine - (begin - ;; Offload DRV to MACHINE. - (display "# accept\n") - (let ((inputs (string-tokenize (read-line))) - (outputs (string-tokenize (read-line)))) - (transfer-and-offload drv machine - #:inputs inputs - #:outputs outputs - #:max-silent-time max-silent-time - #:build-timeout build-timeout - #:print-build-trace? print-build-trace?))) + (dynamic-wind + (const #f) + (lambda () + ;; Offload DRV to MACHINE. + (display "# accept\n") + (let ((inputs (string-tokenize (read-line))) + (outputs (string-tokenize (read-line)))) + (transfer-and-offload drv machine + #:inputs inputs + #:outputs outputs + #:max-silent-time max-silent-time + #:build-timeout build-timeout + #:print-build-trace? + print-build-trace?))) + (lambda () + (release-build-slot slot))) ;; Not now, all the machines are busy. (display "# postpone\n"))))))) From f135b4ae8397d2c501150d3ead3e0603e770ce3f Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 19 Jun 2017 08:14:43 +0100 Subject: [PATCH 0443/1227] git-download: Speed up 'git-predicate'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adjust 'git-predicate' to use data structures that perform better when used with git repositories with a large number of files. Previously when matching either a regular file or directory, 'git-predicate' would search a list with a length equal to the number of files in the repository. As a search operation happens for roughly every file in the repository, this meant that the time taken to use 'git-predicate' to traverse all the files in a repository was roughly exponential with respect to the number of files in the repository. Now, for matching regular files or symlinks, 'git-predicate' uses a vhash using the inode value as the key. This should perform roughly in constant amount of time, instead of linear with respect to the number of files in the repository. For matching directories, 'git-predicate' now uses a tree structure stored in association lists. To check if a directory is in the tree, the tree is traversed from the root. The time complexity of this depends on the shape of the tree, but it should be an improvement on searching through the list of all files. * guix/git-download.scm (files->directory-tree, directory-in-tree?): New procedures. (git-predicate): Compute DIRECTORY-TREE. Turn INODES into a vhash. Adjust body of lambda accordingly. Co-authored-by: Ludovic Courtès --- guix/git-download.scm | 95 +++++++++++++++++++++++++++++++------------ 1 file changed, 68 insertions(+), 27 deletions(-) diff --git a/guix/git-download.scm b/guix/git-download.scm index 316835502c..5019a3e62f 100644 --- a/guix/git-download.scm +++ b/guix/git-download.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Mathieu Lirzin +;;; Copyright © 2017 Christopher Baines ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,6 +29,7 @@ #:use-module (ice-9 match) #:use-module (ice-9 popen) #:use-module (ice-9 rdelim) + #:use-module (ice-9 vlist) #:use-module (srfi srfi-1) #:export (git-reference git-reference? @@ -125,45 +127,84 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a generic name if #f." "Return the file-name for packages using git-download." (string-append name "-" version "-checkout")) + +;;; +;;; 'git-predicate'. +;;; + +(define (files->directory-tree files) + "Return a tree of vhashes representing the directory listed in FILES, a list +like '(\"a/b\" \"b/c/d\")." + (fold (lambda (file result) + (let loop ((file (string-split file #\/)) + (result result)) + (match file + ((_) + result) + ((directory children ...) + (match (vhash-assoc directory result) + (#f + (vhash-cons directory (loop children vlist-null) + result)) + ((_ . previous) + ;; XXX: 'vhash-delete' is O(n). + (vhash-cons directory (loop children previous) + (vhash-delete directory result))))) + (() + result)))) + vlist-null + files)) + +(define (directory-in-tree? tree directory) + "Return true if DIRECTORY, a string like \"a/b\", denotes a directory listed +in TREE." + (let loop ((directory (string-split directory #\/)) + (tree tree)) + (match directory + (() + #t) + ((head . tail) + (match (vhash-assoc head tree) + ((_ . sub-tree) (loop tail sub-tree)) + (#f #f)))))) + (define (git-predicate directory) "Return a predicate that returns true if a file is part of the Git checkout living at DIRECTORY. Upon Git failure, return #f instead of a predicate. The returned predicate takes two arguments FILE and STAT where FILE is an absolute file name and STAT is the result of 'lstat'." - (define (parent-directory? thing directory) - ;; Return #t if DIRECTORY is the parent of THING. - (or (string-suffix? thing directory) - (and (string-index thing #\/) - (parent-directory? (dirname thing) directory)))) - - (let* ((pipe (with-directory-excursion directory - (open-pipe* OPEN_READ "git" "ls-files"))) - (files (let loop ((lines '())) - (match (read-line pipe) - ((? eof-object?) - (reverse lines)) - (line - (loop (cons line lines)))))) - (inodes (map (lambda (file) - (let ((stat (lstat - (string-append directory "/" file)))) - (cons (stat:dev stat) (stat:ino stat)))) - files)) - (status (close-pipe pipe))) + (let* ((pipe (with-directory-excursion directory + (open-pipe* OPEN_READ "git" "ls-files"))) + (files (let loop ((lines '())) + (match (read-line pipe) + ((? eof-object?) + (reverse lines)) + (line + (loop (cons line lines)))))) + (directory-tree (files->directory-tree files)) + (inodes (fold (lambda (file result) + (let ((stat + (lstat (string-append directory "/" + file)))) + (vhash-consv (stat:ino stat) (stat:dev stat) + result))) + vlist-null + files)) + (prefix-length (+ 1 (string-length (canonicalize-path directory)))) + (status (close-pipe pipe))) (and (zero? status) (lambda (file stat) (match (stat:type stat) ('directory - ;; 'git ls-files' does not list directories, only regular files, - ;; so we need this special trick. - (any (lambda (f) (parent-directory? f file)) - files)) + (directory-in-tree? directory-tree + (string-drop file prefix-length))) ((or 'regular 'symlink) ;; Comparing file names is always tricky business so we rely on ;; inode numbers instead - (member (cons (stat:dev stat) (stat:ino stat)) - inodes)) + (match (vhash-assv (stat:ino stat) inodes) + ((_ . dev) (= dev (stat:dev stat))) + (#f #f))) (_ #f)))))) From aa588d8a38e9333d7a4b1ef6984d3f58abdd9a8c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 23 Jul 2017 16:29:14 +0200 Subject: [PATCH 0444/1227] gnu: sdparm: Update to 1.10. * gnu/packages/disk.scm (sdparm): Update to 1.10. --- gnu/packages/disk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index a087141a87..b65a7a8372 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -245,7 +245,7 @@ and a @command{fsck.vfat} compatibility symlink for use in an initrd.") (define-public sdparm (package (name "sdparm") - (version "1.09") + (version "1.10") (source (origin (method url-fetch) @@ -253,7 +253,7 @@ and a @command{fsck.vfat} compatibility symlink for use in an initrd.") name "-" version ".tar.xz")) (sha256 (base32 - "0jakqyjwi72zqjzss04bally0xl0lc4710mx8da08vpmir1hfphg")))) + "1jjq3lzgfy4r76rc26q02lv4wm5cb4dx5nh913h489zjrr4f3jbx")))) (build-system gnu-build-system) (home-page "http://sg.danny.cz/sg/sdparm.html") (synopsis "Provide access to SCSI device parameters") From ae03ee4274670e516b630ae12f8f4350289e8008 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 23 Jul 2017 18:12:52 +0200 Subject: [PATCH 0445/1227] gnu: fdisk: Update to 2.0.0a1. * gnu/packages/disk.scm (fdisk): Update to 2.0.0a1. [arguments]: Make sure the build finds its own headers. --- gnu/packages/disk.scm | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index b65a7a8372..0a6e2c9e1f 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -90,7 +90,7 @@ tables. It includes a library and command-line utility.") (define-public fdisk (package (name "fdisk") - (version "2.0.0a") + (version "2.0.0a1") (source (origin (method url-fetch) @@ -98,13 +98,27 @@ tables. It includes a library and command-line utility.") version ".tar.gz")) (sha256 (base32 - "04nd7civ561x2lwcmxhsqbprml3178jfc58fy1v7hzqg5k4nbhy3")))) + "1d8za79kw8ihnp2br084rgyjv9whkwp7957rzw815i0izx6xhqy9")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) ("guile" ,guile-1.8) ("util-linux" ,util-linux) ("parted" ,parted))) + ;; The build neglects to look for its own headers in its own tree. A next + ;; release should fix this, but may never come: GNU fdisk looks abandoned. + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'skip-broken-header-probes + (lambda _ + (substitute* "backend/configure" + (("gnufdisk-common.h .*") "\n")) + #t))) + #:make-flags (list (string-append "CPPFLAGS=" + " -I../common/include " + " -I../debug/include " + " -I../exception/include")))) (home-page "https://www.gnu.org/software/fdisk/") (synopsis "Low-level disk partitioning and formatting") (description From 980fe414c1a9be96b820a6e36c90a98f99e25936 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 25 Jul 2017 22:57:38 +0200 Subject: [PATCH 0446/1227] gnu: hplip: Update to 3.17.7. * gnu/packages/cups.scm (hplip): Update to 3.17.7. --- gnu/packages/cups.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 576b69bb27..fec328cda6 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -339,14 +339,14 @@ device-specific programs to convert and print many types of files.") (define-public hplip (package (name "hplip") - (version "3.17.6") + (version "3.17.7") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/hplip/hplip/" version "/hplip-" version ".tar.gz")) (sha256 (base32 - "0zhhnp3ksd9i2maaqrsjn4p3y7im3llgylp2y8qgmqypm8s7ha40")))) + "03a0vkbrzvgj15il9rvr93kf5pc706gxcjk6akbkzds0zmdbsxrm")))) (build-system gnu-build-system) (home-page "http://hplipopensource.com/") (synopsis "HP Printer Drivers") From 8ad40a69d16d33cb307cd2a7762ac8ea807bfb92 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Tue, 25 Jul 2017 16:19:45 -0400 Subject: [PATCH 0447/1227] gnu: evince: Update to 3.24.1. * gnu/packages/gnome.scm (evince): Update to 3.24.1. [source]: Remove obsolete patch. * gnu/packages/patches/evince-CVE-2017-1000083.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/gnome.scm | 5 +- .../patches/evince-CVE-2017-1000083.patch | 109 ------------------ 3 files changed, 2 insertions(+), 113 deletions(-) delete mode 100644 gnu/packages/patches/evince-CVE-2017-1000083.patch diff --git a/gnu/local.mk b/gnu/local.mk index f5255feff6..9dfca9dbb7 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -582,7 +582,6 @@ dist_patch_DATA = \ %D%/packages/patches/eudev-rules-directory.patch \ %D%/packages/patches/eudev-conflicting-declaration.patch \ %D%/packages/patches/evilwm-lost-focus-bug.patch \ - %D%/packages/patches/evince-CVE-2017-1000083.patch \ %D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch \ %D%/packages/patches/exim-CVE-2017-1000369.patch \ %D%/packages/patches/fabric-tests.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 1ab59a6303..b670ef7a3e 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -687,16 +687,15 @@ forgotten when the session ends.") (define-public evince (package (name "evince") - (version "3.24.0") + (version "3.24.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" (version-major+minor version) "/" name "-" version ".tar.xz")) - (patches (search-patches "evince-CVE-2017-1000083.patch")) (sha256 (base32 - "13yw0i68dgqp9alyliy3zifszh7rikkpi1xbz5binvxxgfpraf04")))) + "0dqgzwxl0xfr341r5i8j8hn6j6rhv62lmc6xbzjppcq76hhwb84w")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags '("--disable-nautilus") diff --git a/gnu/packages/patches/evince-CVE-2017-1000083.patch b/gnu/packages/patches/evince-CVE-2017-1000083.patch deleted file mode 100644 index 2ca062f337..0000000000 --- a/gnu/packages/patches/evince-CVE-2017-1000083.patch +++ /dev/null @@ -1,109 +0,0 @@ -Fix CVE-2017-1000083. - -http://seclists.org/oss-sec/2017/q3/128 -https://bugzilla.gnome.org/show_bug.cgi?id=784630 - -Patch copied from upstream source repository: - -https://git.gnome.org/browse/evince/commit/?id=717df38fd8509bf883b70d680c9b1b3cf36732ee - -From 717df38fd8509bf883b70d680c9b1b3cf36732ee Mon Sep 17 00:00:00 2001 -From: Bastien Nocera -Date: Thu, 6 Jul 2017 20:02:00 +0200 -Subject: comics: Remove support for tar and tar-like commands - -diff --git a/backend/comics/comics-document.c b/backend/comics/comics-document.c -index 4c74731..641d785 100644 ---- a/backend/comics/comics-document.c -+++ b/backend/comics/comics-document.c -@@ -56,8 +56,7 @@ typedef enum - RARLABS, - GNAUNRAR, - UNZIP, -- P7ZIP, -- TAR -+ P7ZIP - } ComicBookDecompressType; - - typedef struct _ComicsDocumentClass ComicsDocumentClass; -@@ -117,9 +116,6 @@ static const ComicBookDecompressCommand command_usage_def[] = { - - /* 7zip */ - {NULL , "%s l -- %s" , "%s x -y %s -o%s", FALSE, OFFSET_7Z}, -- -- /* tar */ -- {"%s -xOf" , "%s -tf %s" , NULL , FALSE, NO_OFFSET} - }; - - static GSList* get_supported_image_extensions (void); -@@ -364,13 +360,6 @@ comics_check_decompress_command (gchar *mime_type, - comics_document->command_usage = GNAUNRAR; - return TRUE; - } -- comics_document->selected_command = -- g_find_program_in_path ("bsdtar"); -- if (comics_document->selected_command) { -- comics_document->command_usage = TAR; -- return TRUE; -- } -- - } else if (g_content_type_is_a (mime_type, "application/x-cbz") || - g_content_type_is_a (mime_type, "application/zip")) { - /* InfoZIP's unzip program */ -@@ -396,12 +385,6 @@ comics_check_decompress_command (gchar *mime_type, - comics_document->command_usage = P7ZIP; - return TRUE; - } -- comics_document->selected_command = -- g_find_program_in_path ("bsdtar"); -- if (comics_document->selected_command) { -- comics_document->command_usage = TAR; -- return TRUE; -- } - - } else if (g_content_type_is_a (mime_type, "application/x-cb7") || - g_content_type_is_a (mime_type, "application/x-7z-compressed")) { -@@ -425,27 +408,6 @@ comics_check_decompress_command (gchar *mime_type, - comics_document->command_usage = P7ZIP; - return TRUE; - } -- comics_document->selected_command = -- g_find_program_in_path ("bsdtar"); -- if (comics_document->selected_command) { -- comics_document->command_usage = TAR; -- return TRUE; -- } -- } else if (g_content_type_is_a (mime_type, "application/x-cbt") || -- g_content_type_is_a (mime_type, "application/x-tar")) { -- /* tar utility (Tape ARchive) */ -- comics_document->selected_command = -- g_find_program_in_path ("tar"); -- if (comics_document->selected_command) { -- comics_document->command_usage = TAR; -- return TRUE; -- } -- comics_document->selected_command = -- g_find_program_in_path ("bsdtar"); -- if (comics_document->selected_command) { -- comics_document->command_usage = TAR; -- return TRUE; -- } - } else { - g_set_error (error, - EV_DOCUMENT_ERROR, -diff --git a/configure.ac b/configure.ac -index 9e9f831..7eb0f1f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -795,7 +795,7 @@ AC_SUBST(TIFF_MIME_TYPES) - AC_SUBST(APPDATA_TIFF_MIME_TYPES) - AM_SUBST_NOTMAKE(APPDATA_TIFF_MIME_TYPES) - if test "x$enable_comics" = "xyes"; then -- COMICS_MIME_TYPES="application/x-cbr;application/x-cbz;application/x-cb7;application/x-cbt;application/x-ext-cbr;application/x-ext-cbz;application/vnd.comicbook+zip;application/x-ext-cb7;application/x-ext-cbt" -+ COMICS_MIME_TYPES="application/x-cbr;application/x-cbz;application/x-cb7;application/x-ext-cbr;application/x-ext-cbz;application/vnd.comicbook+zip;application/x-ext-cb7;" - APPDATA_COMICS_MIME_TYPES=$(echo "$COMICS_MIME_TYPES" | sed -e 's/;/<\/mimetype>\n /g') - if test -z "$EVINCE_MIME_TYPES"; then - EVINCE_MIME_TYPES="${COMICS_MIME_TYPES}" --- -cgit v0.12 - From ff4192ff5783855b025093c6e5cf133efb60943b Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 17 Jul 2017 20:29:50 +0200 Subject: [PATCH 0448/1227] gnu: claws-mail: Disable (duplicate) Gtk+ icon cache generation. * gnu/packages/mail.scm (claws-mail)[arguments]: Add make-flags to disable Gtk+ icon cache generation. --- gnu/packages/mail.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 157a33f45d..cc76a93ed0 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -930,6 +930,11 @@ compresses it.") (arguments '(#:configure-flags '("--enable-gnutls" "--enable-pgpmime-plugin" "--enable-enchant") + #:make-flags + ;; Disable updating icon cache since it's done by the profile hook. + ;; Conflict with other packages in the profile would be inevitable + ;; otherwise. + '("gtk_update_icon_cache=true") #:phases (modify-phases %standard-phases (add-before 'build 'patch-mime (lambda* (#:key inputs #:allow-other-keys) From 4f038621a5f6a6a4178c8bd0926cb3ae6a55f7ea Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 17 Jul 2017 20:37:31 +0200 Subject: [PATCH 0449/1227] gnu: leafpad: Use glib-or-gtk build-system. * gnu/packages/text-editors.scm (leafpad): Use glib-or-gtk build-system. --- gnu/packages/text-editors.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 98df48119a..56049eb510 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -26,6 +26,7 @@ #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system glib-or-gtk) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) #:use-module (gnu packages assembly) @@ -178,7 +179,7 @@ bindings and many of the powerful features of GNU Emacs.") (sha256 (base32 "0b0az2wvqgvam7w0ns1j8xp2llslm1rx6h7zcsy06a7j0yp257cm")))) - (build-system gnu-build-system) + (build-system glib-or-gtk-build-system) (native-inputs `(("intltool" ,intltool) ("pkg-config" ,pkg-config))) From 360f6927838b74e66b8e56341db96cd661131b9f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 26 Jul 2017 09:10:11 +0300 Subject: [PATCH 0450/1227] gnu: perl-anyevent: Update to 7.14. * gnu/packages/libevent.scm (perl-anyevent): Update to 7.14. --- gnu/packages/libevent.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index bda15393f6..4f6064e939 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -163,14 +163,14 @@ resolution, asynchronous file system operations, and threading primitives.") (define-public perl-anyevent (package (name "perl-anyevent") - (version "7.13") + (version "7.14") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/" "AnyEvent-" version ".tar.gz")) (sha256 (base32 - "1b84ilkbrfbzqapv25x8z6gva92skbrf2srybdabb1wnxx6ky454")))) + "0akxr9y0q9yjkl614x4clbiiayvh5a67y8gmci54plxs4p95i4sk")))) (build-system perl-build-system) (native-inputs `(("perl-canary-stability" ,perl-canary-stability))) From 1cae188e61bb1e8a896bee2ac9bbe066f2f6e92d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 26 Jul 2017 10:15:54 +0300 Subject: [PATCH 0451/1227] gnu: glpk: Update to 4.63. * gnu/packages/maths.scm (glpk): Update to 4.63. --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 287710d4fc..7d4cb45b18 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -316,7 +316,7 @@ the OCaml language.") (define-public glpk (package (name "glpk") - (version "4.62") + (version "4.63") (source (origin (method url-fetch) @@ -324,7 +324,7 @@ the OCaml language.") version ".tar.gz")) (sha256 (base32 - "0w7s3869ybwyq9a4490dikpib1qp3jnn5nqz1vvwqy1qz3ilnvh9")))) + "1xp7nclmp8inp20968bvvfcwmz3mz03sbm0v3yjz8aqwlpqjfkci")))) (build-system gnu-build-system) (inputs `(("gmp" ,gmp))) From a5130d10fa39fa9a05edfe6934b2c88a33ec906f Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Thu, 27 Apr 2017 10:08:36 +0200 Subject: [PATCH 0452/1227] gnu: Add fcgiwrap service. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * doc/guix.texi (Web Services): Add documentation. * gnu/services/web.scm (): New record type. (fcgiwrap-accounts, fcgiwrap-shepherd-service): New service extensions. (fcgiwrap-service-type): New service type. Signed-off-by: Ludovic Courtès --- doc/guix.texi | 53 +++++++++++++++++++++++++++++++++++++++- gnu/services/web.scm | 58 +++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 109 insertions(+), 2 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 932b118f7d..e8c4e0eaf3 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13731,7 +13731,8 @@ Local accounts with lower values will silently fail to authenticate. @cindex web @cindex www @cindex HTTP -The @code{(gnu services web)} module provides the following service: +The @code{(gnu services web)} module provides the nginx web server and +also a fastcgi wrapper daemon. @deffn {Scheme Procedure} nginx-service [#:nginx nginx] @ [#:log-directory ``/var/log/nginx''] @ @@ -13883,6 +13884,56 @@ body of a named location block cannot contain location blocks. @end table @end deftp +@cindex fastcgi +@cindex fcgiwrap +FastCGI is an interface between the front-end and the back-end of a web +service. It is a somewhat legacy facility; new web services should +generally just talk HTTP between the front-end and the back-end. +However there are a number of back-end services such as PHP or the +optimized HTTP Git repository access that use FastCGI, so we have +support for it in Guix. + +To use FastCGI, you configure the front-end web server (e.g., nginx) to +dispatch some subset of its requests to the fastcgi backend, which +listens on a local TCP or UNIX socket. There is an intermediary +@code{fcgiwrap} program that sits between the actual backend process and +the web server. The front-end indicates which backend program to run, +passing that information to the @code{fcgiwrap} process. + +@defvr {Scheme Variable} fcgiwrap-service-type +A service type for the @code{fcgiwrap} FastCGI proxy. +@end defvr + +@deftp {Data Type} fcgiwrap-configuration +Data type representing the configuration of the @code{fcgiwrap} serice. +This type has the following parameters: +@table @asis +@item @code{package} (default: @code{fcgiwrap}) +The fcgiwrap package to use. + +@item @code{socket} (default: @code{tcp:127.0.0.1:9000}) +The socket on which the @code{fcgiwrap} process should listen, as a +string. Valid @var{socket} values include +@code{unix:@var{/path/to/unix/socket}}, +@code{tcp:@var{dot.ted.qu.ad}:@var{port}} and +@code{tcp6:[@var{ipv6_addr}]:port}. + +@item @code{user} (default: @code{fcgiwrap}) +@itemx @code{group} (default: @code{fcgiwrap}) +The user and group names, as strings, under which to run the +@code{fcgiwrap} process. The @code{fastcgi} service will ensure that if +the user asks for the specific user or group names @code{fcgiwrap} that +the corresponding user and/or group is present on the system. + +It is possible to configure a FastCGI-backed web service to pass HTTP +authentication information from the front-end to the back-end, and to +allow @code{fcgiwrap} to run the back-end process as a corresponding +local user. To enable this capability on the back-end., run +@code{fcgiwrap} as the @code{root} user and group. Note that this +capability also has to be configured on the front-end as well. +@end table +@end deftp + @node DNS Services @subsubsection DNS Services diff --git a/gnu/services/web.scm b/gnu/services/web.scm index f85b412159..c605d76866 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -41,7 +41,11 @@ nginx-named-location-configuration nginx-named-location-configuration? nginx-service - nginx-service-type)) + nginx-service-type + + fcgiwrap-configuration + fcgiwrap-configuration? + fcgiwrap-service-type)) ;;; Commentary: ;;; @@ -305,3 +309,55 @@ files in LOG-DIRECTORY, and stores temporary runtime files in RUN-DIRECTORY." (server-blocks server-list) (upstream-blocks upstream-list) (file config-file)))) + +(define-record-type* fcgiwrap-configuration + make-fcgiwrap-configuration + fcgiwrap-configuration? + (package fcgiwrap-configuration-package ; + (default fcgiwrap)) + (socket fcgiwrap-configuration-socket + (default "tcp:127.0.0.1:9000")) + (user fcgiwrap-configuration-user + (default "fcgiwrap")) + (group fcgiwrap-configuration-group + (default "fcgiwrap"))) + +(define fcgiwrap-accounts + (match-lambda + (($ package socket user group) + (filter identity + (list + (and (equal? group "fcgiwrap") + (user-group + (name "fcgiwrap") + (system? #t))) + (and (equal? user "fcgiwrap") + (user-account + (name "fcgiwrap") + (group group) + (system? #t) + (comment "Fcgiwrap Daemon") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin"))))))))) + +(define fcgiwrap-shepherd-service + (match-lambda + (($ package socket user group) + (list (shepherd-service + (provision '(fcgiwrap)) + (documentation "Run the fcgiwrap daemon.") + (requirement '(networking)) + (start #~(make-forkexec-constructor + '(#$(file-append package "/sbin/fcgiwrap") + "-s" #$socket) + #:user #$user #:group #$group)) + (stop #~(make-kill-destructor))))))) + +(define fcgiwrap-service-type + (service-type (name 'fcgiwrap) + (extensions + (list (service-extension shepherd-root-service-type + fcgiwrap-shepherd-service) + (service-extension account-service-type + fcgiwrap-accounts))) + (default-value (fcgiwrap-configuration)))) From bcd757fdb49753f41a7ee4f0181cdef582705a6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 26 Jul 2017 11:11:11 +0200 Subject: [PATCH 0453/1227] gnu: mg: Move to (gnu packages text-editors). * gnu/packages/mg.scm: Remove. * gnu/local.mk (GNU_SYSTEM_MODULES): Remove it. * gnu/packages/text-editors.scm (mg): New variable. --- gnu/local.mk | 1 - gnu/packages/mg.scm | 76 ----------------------------------- gnu/packages/text-editors.scm | 51 +++++++++++++++++++++++ 3 files changed, 51 insertions(+), 77 deletions(-) delete mode 100644 gnu/packages/mg.scm diff --git a/gnu/local.mk b/gnu/local.mk index 9dfca9dbb7..724c6b6758 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -270,7 +270,6 @@ GNU_SYSTEM_MODULES = \ %D%/packages/mes.scm \ %D%/packages/messaging.scm \ %D%/packages/mingw.scm \ - %D%/packages/mg.scm \ %D%/packages/microcom.scm \ %D%/packages/moe.scm \ %D%/packages/monitoring.scm \ diff --git a/gnu/packages/mg.scm b/gnu/packages/mg.scm deleted file mode 100644 index 5df6770009..0000000000 --- a/gnu/packages/mg.scm +++ /dev/null @@ -1,76 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer -;;; Copyright © 2017 Eric Bavier -;;; -;;; This file is part of GNU Guix. -;;; -;;; GNU Guix is free software; you can redistribute it and/or modify it -;;; under the terms of the GNU General Public License as published by -;;; the Free Software Foundation; either version 3 of the License, or (at -;;; your option) any later version. -;;; -;;; GNU Guix is distributed in the hope that it will be useful, but -;;; WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with GNU Guix. If not, see . - -(define-module (gnu packages mg) - #:use-module (guix licenses) - #:use-module (guix download) - #:use-module (guix packages) - #:use-module (guix build-system gnu) - #:use-module (gnu packages libbsd) - #:use-module (gnu packages ncurses) - #:use-module (gnu packages pkg-config)) - -(define-public mg - (package - (name "mg") - (version "20161005") - (source (origin - (method url-fetch) - (uri (string-append "http://homepage.boetes.org/software/mg/mg-" - version ".tar.gz")) - (sha256 - (base32 - "0qaydk2cy765n9clghmi5gdnpwn15y2v0fj6r0jcm0v7d89vbz5p")) - (modules '((guix build utils))) - (snippet - '(begin - (substitute* "GNUmakefile" - (("/usr/bin/") "")))))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) - (inputs - `(("libbsd" ,libbsd) - ("ncurses" ,ncurses))) - (arguments - ;; No test suite available. - '(#:tests? #f - #:make-flags (list (string-append "prefix=" %output) - "CURSES_LIBS=-lncurses" - "CC=gcc") - #:phases (modify-phases %standard-phases - (delete 'configure) - (add-before 'install 'patch-tutorial-location - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "mg.1" - (("/usr") (assoc-ref outputs "out"))) - #t)) - (add-after 'install 'install-tutorial - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (doc (string-append out "/share/doc/mg"))) - (install-file "tutorial" doc) - #t)))))) - (home-page "http://homepage.boetes.org/software/mg/") - (synopsis "Microscopic GNU Emacs clone") - (description - "Mg (mg) is a GNU Emacs style editor, with which it is \"broadly\" -compatible. This is a portable version of the mg maintained by the OpenBSD -team.") - (license public-domain))) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 56049eb510..756c2beab2 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017 Eric Bavier ;;; Copyright © 2017 Feng Shu ;;; Copyright © 2017 ng0 +;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,6 +36,7 @@ #:use-module (gnu packages gcc) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) + #:use-module (gnu packages libbsd) #:use-module (gnu packages lua) #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) @@ -228,3 +230,52 @@ Wordstar-, EMACS-, Pico, Nedit or vi-like key bindings. e3 can be used on 16, 32, and 64-bit CPUs.") (supported-systems '("x86_64-linux" "i686-linux")) (license license:gpl2+))) + +(define-public mg + (package + (name "mg") + (version "20161005") + (source (origin + (method url-fetch) + (uri (string-append "http://homepage.boetes.org/software/mg/mg-" + version ".tar.gz")) + (sha256 + (base32 + "0qaydk2cy765n9clghmi5gdnpwn15y2v0fj6r0jcm0v7d89vbz5p")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* "GNUmakefile" + (("/usr/bin/") "")))))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libbsd" ,libbsd) + ("ncurses" ,ncurses))) + (arguments + ;; No test suite available. + '(#:tests? #f + #:make-flags (list (string-append "prefix=" %output) + "CURSES_LIBS=-lncurses" + "CC=gcc") + #:phases (modify-phases %standard-phases + (delete 'configure) + (add-before 'install 'patch-tutorial-location + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "mg.1" + (("/usr") (assoc-ref outputs "out"))) + #t)) + (add-after 'install 'install-tutorial + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (string-append out "/share/doc/mg"))) + (install-file "tutorial" doc) + #t)))))) + (home-page "http://homepage.boetes.org/software/mg/") + (synopsis "Microscopic GNU Emacs clone") + (description + "Mg (mg) is a GNU Emacs style editor, with which it is \"broadly\" +compatible. This is a portable version of the mg maintained by the OpenBSD +team.") + (license license:public-domain))) From d39238cf3d71abaacb57317499692217bf24235c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 26 Jul 2017 12:26:04 +0200 Subject: [PATCH 0454/1227] gnu: synfig: Fix boost build error. * gnu/packages/animation.scm (synfig)[arguments]: Add phase "fix-boost-build-error". --- gnu/packages/animation.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm index 3c590950fd..faa0d17230 100644 --- a/gnu/packages/animation.scm +++ b/gnu/packages/animation.scm @@ -78,6 +78,16 @@ C++ @dfn{Standard Template Library} (STL).") "/lib")) #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-boost-build-error + ;; A chain of Boost headers leads to this error: "make_array" is + ;; not a member of "boost::serialization". This can be avoided by + ;; loading the "array_wrapper" header first. + (lambda _ + (substitute* "src/synfig/valuenodes/valuenode_dynamic.cpp" + (("#include " match) + (string-append + "#include \n" match))) + #t)) (add-after 'unpack 'adapt-to-libxml++-changes (lambda _ (substitute* "configure" From f96dbf6b70364518072c63037d3fca105dfe6497 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 25 Jul 2017 20:24:23 -0400 Subject: [PATCH 0455/1227] gnu: net-tools: Add a test-only variant and use it for GnuTLS. * gnu/packages/linux.scm (net-tools-for-tests): Add hidden net-tools variant. * gnu/packages/tls.scm (gnutls)[native-inputs]: Use net-tools-for-tests instead of net-tools. --- gnu/packages/linux.scm | 3 +++ gnu/packages/tls.scm | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 456909a940..7412ee5717 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1288,6 +1288,9 @@ network hardware types (plipconfig, slattach) and advanced aspects of IP configuration (iptunnel, ipmaddr).") (license license:gpl2+))) +(define-public net-tools-for-tests + (hidden-package net-tools)) + (define-public libcap (package (name "libcap") diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 0a81633aa7..b39e06c8d9 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -140,6 +140,9 @@ coordinating the use of PKCS#11 by different components or libraries living in the same process.") (license license:bsd-3))) + +;; TODO Add net-tools-for-tests to #:disallowed-references when we can afford +;; rebuild GnuTLS (i.e. core-updates). (define-public gnutls (package (name "gnutls") @@ -194,7 +197,7 @@ living in the same process.") "debug" "doc")) ;4.1 MiB of man pages (native-inputs - `(("net-tools" ,net-tools) + `(("net-tools" ,net-tools-for-tests) ("pkg-config" ,pkg-config) ("which" ,which))) (inputs From 9d9fc399463ea1371fff37320774a99d66d7eb2b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 25 Jul 2017 04:51:35 +0200 Subject: [PATCH 0456/1227] gnu: Add lziprecover. * gnu/packages/compression.scm (lziprecover): New variable. --- gnu/packages/compression.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index ede35f9f5b..92636de7fe 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -480,6 +480,36 @@ more than bzip2, which makes it well suited for software distribution and data archiving. Lzip is a clean implementation of the LZMA algorithm.") (license license:gpl3+))) +(define-public lziprecover + (package + (name "lziprecover") + (version "1.19") + (source (origin + (method url-fetch) + (uri (string-append "mirror://savannah/lzip/" name "/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0z5fbkm0qprypjf7kxkqganniibj0zml13zvfkrchnjafcmmzyld")))) + (build-system gnu-build-system) + (home-page "http://www.nongnu.org/lzip/lziprecover.html") + (synopsis "Recover and decompress data from damaged lzip files") + (description + "Lziprecover is a data recovery tool and decompressor for files in the lzip +compressed data format (.lz). It can test the integrity of lzip files, extract +data from damaged ones, and repair most files with small errors (up to one +single-byte error per member) entirely. + +Lziprecover is not a replacement for regular backups, but a last line of defence +when even the backups are corrupt. It can recover files by merging the good +parts of two or more damaged copies, such as can be easily produced by running +@command{ddrescue} on a failing device. + +This package also includes @command{unzcrash}, a tool to test the robustness of +decompressors when faced with corrupted input.") + (license (list license:bsd-2 ; arg_parser.{cc,h} + license:gpl2+)))) ; everything else + (define-public sharutils (package (name "sharutils") From 9ea61b1c6f0caf9dd3632bce18926444b3d8f30e Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Wed, 26 Jul 2017 21:51:24 +0200 Subject: [PATCH 0457/1227] gnu: Add python-flask-principal. * gnu/packages/python.scm (python-flask-principal, python2-flask-principal): New variables. --- gnu/packages/python.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 03f8134115..7974dfa581 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -15815,3 +15815,30 @@ pure Python module.") (define-public python2-rencode (package-with-python2 python-rencode)) + +(define-public python-flask-principal + (package + (name "python-flask-principal") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Flask-Principal" version)) + (sha256 + (base32 + "0lwlr5smz8vfm5h9a9i7da3q1c24xqc6vm9jdywdpgxfbi5i7mpm")))) + (build-system python-build-system) + (propagated-inputs + `(("python-blinker" ,python-blinker))) + (native-inputs + `(("python-flask" ,python-flask) + ("python-nose" ,python-nose))) + (home-page "http://packages.python.org/Flask-Principal/") + (synopsis "Identity management for Flask") + (description "@code{flask_principal} is a identity management library for +Flask. It supports managing both authentication and authorization data in a +thread-local variable.") + (license license:expat))) + +(define-public python2-flask-principal + (package-with-python2 python-flask-principal)) From 1a5a8afea0c09d98b8db87dba4955209d8786249 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 26 Jul 2017 14:21:21 +0000 Subject: [PATCH 0458/1227] gnu: mg: Update to 20170401. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/text-editors.scm (mg): Update to 20170401. Signed-off-by: Ludovic Courtès --- gnu/packages/text-editors.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 756c2beab2..7b9732ab8f 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2016 Carlo Zancanaro ;;; Copyright © 2017 Eric Bavier ;;; Copyright © 2017 Feng Shu -;;; Copyright © 2017 ng0 +;;; Copyright © 2017 ng0 ;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer ;;; ;;; This file is part of GNU Guix. @@ -234,14 +234,14 @@ Wordstar-, EMACS-, Pico, Nedit or vi-like key bindings. e3 can be used on (define-public mg (package (name "mg") - (version "20161005") + (version "20170401") (source (origin (method url-fetch) (uri (string-append "http://homepage.boetes.org/software/mg/mg-" version ".tar.gz")) (sha256 (base32 - "0qaydk2cy765n9clghmi5gdnpwn15y2v0fj6r0jcm0v7d89vbz5p")) + "1arasswgdadbb265rahq3867r9s54jva6k4m3p5n0f8mgjqhhdha")) (modules '((guix build utils))) (snippet '(begin From bcd1544dd27a17fd554e297cd8672231d7488c98 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 26 Jul 2017 14:22:54 +0000 Subject: [PATCH 0459/1227] gnu: mg: Fetch source via HTTPS. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/text-editors.scm (mg)[source]: Use HTTPS. Signed-off-by: Ludovic Courtès --- gnu/packages/text-editors.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 7b9732ab8f..7357df7fb3 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -237,7 +237,7 @@ Wordstar-, EMACS-, Pico, Nedit or vi-like key bindings. e3 can be used on (version "20170401") (source (origin (method url-fetch) - (uri (string-append "http://homepage.boetes.org/software/mg/mg-" + (uri (string-append "https://homepage.boetes.org/software/mg/mg-" version ".tar.gz")) (sha256 (base32 From 217ce5702cde1543cfc56727c1ca3bb3f9dbc5a5 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 26 Jul 2017 14:24:56 +0000 Subject: [PATCH 0460/1227] gnu: mg: Add new phase to find 'diff'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/text-editors.scm (mg)[phases]: Add new 'correct-location-of-difftool'. Signed-off-by: Ludovic Courtès --- gnu/packages/text-editors.scm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 7357df7fb3..7843c120aa 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -261,6 +261,12 @@ Wordstar-, EMACS-, Pico, Nedit or vi-like key bindings. e3 can be used on "CC=gcc") #:phases (modify-phases %standard-phases (delete 'configure) + (add-before 'build 'correct-location-of-difftool + (lambda _ + (substitute* "buffer.c" + (("/usr/bin/diff") + (which "diff"))) + #t)) (add-before 'install 'patch-tutorial-location (lambda* (#:key outputs #:allow-other-keys) (substitute* "mg.1" From efcacc17c763801aa1e3eb0045d4abcfe31561ce Mon Sep 17 00:00:00 2001 From: Dave Love Date: Sun, 23 Jul 2017 22:02:54 +0100 Subject: [PATCH 0461/1227] gnu: openmpi: Enable SGE support. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mpi.scm (openmpi)[arguments]: Pass "--with-sge" in #:configure-flags. Signed-off-by: Ludovic Courtès --- gnu/packages/mpi.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index b20993b952..ed4e900a48 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -138,6 +138,7 @@ bind processes, and much more.") "--enable-mpi-ext=all" "--with-devel-headers" "--enable-memchecker" + "--with-sge" ,(string-append "--with-valgrind=" (assoc-ref %build-inputs "valgrind")) ,(string-append "--with-hwloc=" From 56ab0f0c6db03321b03c5788ffdca09b4f7b9c1e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 27 Jul 2017 00:12:29 +0200 Subject: [PATCH 0462/1227] gnu: nnn: Update to 1.3. * gnu/packages/admin.scm (nnn): Update to 1.3. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 4d9afe8134..9729a30fc7 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2184,7 +2184,7 @@ you are running, what theme or icon set you are using, etc.") (define-public nnn (package (name "nnn") - (version "1.2") + (version "1.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/jarun/nnn/" @@ -2192,7 +2192,7 @@ you are running, what theme or icon set you are using, etc.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "08l0wcwwsl5kix9kg3h51s2afzg97y1rjjfi0ijs294kz57g1cfq")))) + "0sivgcmg3hihz15v2wgbxnd0icn06pyvvqdqh8x0mwkhvm434fpb")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses) ("readline" ,readline))) From 620b0468e986f6dbffce175dd3fbb2ae60c2b60a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 23 Jul 2017 20:22:10 +0200 Subject: [PATCH 0463/1227] gnu: Add cowsay. * gnu/packages/games.scm (cowsay): New variable. --- gnu/packages/games.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 35577228f1..d8848f82fa 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -242,6 +242,44 @@ giant insects to killer robots and things far stranger and deadlier, and against the others like yourself, that want what you have.") (license license:cc-by-sa3.0))) +(define-public cowsay + (package + (name "cowsay") + (version "3.03") + (source (origin + (method url-fetch) + (uri (string-append "https://web.archive.org/web/20071026043648/" + "http://www.nog.net:80/~tony/warez/" + "cowsay-" version ".tar.gz")) + (sha256 + (base32 + "1bxj802na2si2bk5zh7n0b7c33mg8a5n2wnvh0vihl9bmjkp51hb")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'install) + (replace 'build + (lambda* (#:key outputs #:allow-other-keys) + (zero? (system* "sh" "install.sh" + (assoc-ref outputs "out"))))) + (replace 'check + (lambda* (#:key outputs #:allow-other-keys) + (zero? (system* (string-append (assoc-ref outputs "out") + "/bin/cowsay") + "We're done!"))))))) + (inputs + `(("perl" ,perl))) + (home-page (string-append "https://web.archive.org/web/20071026043648/" + "http://www.nog.net:80/~tony/warez/")) + (synopsis "Speaking cow text filter") + (description "Cowsay is basically a text filter. Send some text into it, +and you get a cow saying your text. If you think a talking cow isn't enough, +cows can think too. All you have to do is run @code{cowthink}.") + ;; Any version of the GPL. + (license license:gpl3+))) + (define-public freedoom (package (name "freedoom") From 8f2c410fc557cad527318e45e96897c924cb13de Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 27 Jul 2017 10:02:38 +0200 Subject: [PATCH 0464/1227] gnu: r-preprocesscore: Update to 1.38.1. * gnu/packages/statistics.scm (r-preprocesscore): Update to 1.38.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 604bdf9c5f..e9bda5c1fa 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3900,14 +3900,14 @@ hierarchical clustering dendrograms.") (define-public r-preprocesscore (package (name "r-preprocesscore") - (version "1.38.0") + (version "1.38.1") (source (origin (method url-fetch) (uri (bioconductor-uri "preprocessCore" version)) (sha256 (base32 - "1vq8hwxz73j93q0ldw5bnhbas1f2ha5q1lr9pp4l8gp8zdwzfrjn")))) + "1ggvmak13rhxc4ghf16ncjfvgszc8yvza93s2l9kn8yiwr96vp2h")))) (properties `((upstream-name . "preprocessCore"))) (build-system r-build-system) From dd54d3d5dafefc5845cec118538d1e07469ca8b3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 27 Jul 2017 10:20:23 +0200 Subject: [PATCH 0465/1227] gnu: po4a: Work around "dotless @INC" build issues. * gnu/packages/gettext.scm (po4a)[arguments]: Add build phase "set-search-path". --- gnu/packages/gettext.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index 44535859cb..76c01b1e09 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -144,6 +144,13 @@ translated messages from the catalogs. Nearly all GNU packages use Gettext.") (arguments `(#:phases (modify-phases %standard-phases + (add-before 'configure 'set-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) ":" + (getenv "PERL5LIB"))) + #t)) ;; FIXME: One test fails as we don't have SGMLS.pm (add-before 'check 'disable-sgml-test (lambda _ From f1be6f5b5a7398d5eba6831a4eb82bcfeaa306ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 27 Jul 2017 10:46:52 +0200 Subject: [PATCH 0466/1227] gnu: openmpi: Add "static" output. * gnu/packages/mpi.scm (openmpi)[outputs]: New field. [arguments]: Add 'move-static-libraries' phase. --- gnu/packages/mpi.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index ed4e900a48..54fdd35ad5 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -122,6 +122,7 @@ bind processes, and much more.") (base32 "142s1vny9gllkq336yafxayjgcirj2jv0ddabj879jgya7hyr2d0")))) (build-system gnu-build-system) + (outputs '("out" "static")) (inputs `(("hwloc" ,hwloc "lib") ("gfortran" ,gfortran) @@ -155,6 +156,20 @@ bind processes, and much more.") (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (for-each delete-file (find-files out "config.log")) + #t))) + (add-after 'install 'move-static-libraries + (lambda* (#:key outputs #:allow-other-keys) + ;; Move 19 MiB of static libraries to 'static'. + (let* ((out (assoc-ref outputs "out")) + (static (assoc-ref outputs "static")) + (lib (string-append out "/lib")) + (slib (string-append static "/lib"))) + (mkdir-p slib) + (for-each (lambda (file) + (rename-file + file + (string-append slib "/" (basename file)))) + (find-files lib "\\.a$")) #t)))))) (home-page "http://www.open-mpi.org") (synopsis "MPI-3 implementation") From 952cf67cb13a63cc083f29165f5487d8d69dc04f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 27 Jul 2017 11:05:03 +0200 Subject: [PATCH 0467/1227] weather: Show "-m" option in help message. Reported by Alex Kost . * guix/scripts/weather.scm (show-help): Show "-m". --- guix/scripts/weather.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/scripts/weather.scm b/guix/scripts/weather.scm index 9cbeedd288..4c4dfac8f6 100644 --- a/guix/scripts/weather.scm +++ b/guix/scripts/weather.scm @@ -148,7 +148,7 @@ Report the availability of substitutes.\n")) --substitute-urls=URLS check for available substitutes at URLS")) (display (G_ " - --manifest=MANIFEST + -m, --manifest=MANIFEST look up substitutes for packages specified in MANIFEST")) (display (G_ " -s, --system=SYSTEM consider substitutes for SYSTEM--e.g., \"i686-linux\"")) From 111b2853c7e18b7dc6b448d6cea944ef7b6409f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 27 Jul 2017 11:05:56 +0200 Subject: [PATCH 0468/1227] nls: Mark (guix scripts weather) as translatable. * po/guix/POTFILES.in: Add guix/scripts/weather.scm. --- po/guix/POTFILES.in | 1 + 1 file changed, 1 insertion(+) diff --git a/po/guix/POTFILES.in b/po/guix/POTFILES.in index 6ec3e8d405..b8e0aca877 100644 --- a/po/guix/POTFILES.in +++ b/po/guix/POTFILES.in @@ -27,6 +27,7 @@ guix/scripts/graph.scm guix/scripts/challenge.scm guix/scripts/copy.scm guix/scripts/pack.scm +guix/scripts/weather.scm guix/gnu-maintenance.scm guix/scripts/container.scm guix/scripts/container/exec.scm From a812aff99c35aab4044be8332d8ef973f4be4d79 Mon Sep 17 00:00:00 2001 From: Julian Graham Date: Fri, 7 Jul 2017 23:35:55 -0400 Subject: [PATCH 0469/1227] gnu: gzochi: Update to 0.11.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/game-development.scm (gzochi): Update to 0.11.1. (gzochi)[arguments]: Remove patch for `-Werror', which is no longer necessary. Signed-off-by: Ludovic Courtès --- gnu/packages/game-development.scm | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index dabe951da8..7ab9a1aefc 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016, 2017 Kei Kebreau ;;; Copyright © 2016 Ricardo Wurmus -;;; Copyright © 2016 Julian Graham +;;; Copyright © 2016, 2017 Julian Graham ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. @@ -209,26 +209,15 @@ necessary. (define-public gzochi (package (name "gzochi") - (version "0.10.1") + (version "0.11.1") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/gzochi/gzochi-" version ".tar.gz")) (sha256 (base32 - "166rawdal45kvanhvi0bkzy1d2pwf1p0lzslb287lcnm9vdw97yy")))) + "13j1m92zhxwkaaja3lg5x0h0b28mrrawdzk9d3hd19031akfxwb3")))) (build-system gnu-build-system) - (arguments - '(#:phases (modify-phases %standard-phases - (add-before 'configure 'remove-Werror - (lambda _ - ;; We can't build with '-Werror', notably - ;; because deprecated functions of - ;; libmicrohttpd are being used. - (substitute* (find-files "." "^Makefile\\.in$") - (("-Werror") - "")) - #t))))) (native-inputs `(("pkgconfig" ,pkg-config))) (inputs `(("bdb" ,bdb) ("glib" ,glib) From 138fe4119881577249be7362b3ea3b1125837902 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 27 Jul 2017 14:44:28 +0200 Subject: [PATCH 0470/1227] system: Add 'grep --color' alias in '.bash_profile' skeleton. * gnu/system/shadow.scm (default-skeletons)[profile]: Add 'grep' alias. --- gnu/system/shadow.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index 4e6f645e93..236807c70a 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -174,7 +174,8 @@ else PS1='\\u@\\h \\w\\$ ' fi alias ls='ls -p --color' -alias ll='ls -l'\n")) +alias ll='ls -l' +alias grep='grep --color'\n")) (zlogin (plain-file "zlogin" "\ # Honor system-wide environment variables source /etc/profile\n")) From 412701b0e5e073e6767eed162c14698db99df69c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 27 Jul 2017 14:48:38 +0200 Subject: [PATCH 0471/1227] services: guix-publish: Run in a UTF-8 locale. Works around . * gnu/services/base.scm (guix-publish-shepherd-service): Pass #:environment-variables to 'make-forkexec-constructor'. --- gnu/services/base.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 813535ed65..e28e0d7ac5 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -37,7 +37,7 @@ #:use-module ((gnu packages linux) #:select (alsa-utils crda eudev e2fsprogs fuse gpm kbd lvm2 rng-tools)) #:use-module ((gnu packages base) - #:select (canonical-package glibc)) + #:select (canonical-package glibc glibc-utf8-locales)) #:use-module (gnu packages bash) #:use-module (gnu packages package-management) #:use-module (gnu packages linux) @@ -1499,7 +1499,15 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) #~()) #$@(if cache #~((string-append "--cache=" #$cache)) - #~())))) + #~())) + + ;; Make sure we run in a UTF-8 locale so we can produce + ;; nars for packages that contain UTF-8 file names such + ;; as 'nss-certs'. See . + #:environment-variables + (list (string-append "GUIX_LOCPATH=" + #$glibc-utf8-locales "/lib/locale") + "LC_ALL=en_US.utf8"))) (stop #~(make-kill-destructor))))))) (define %guix-publish-accounts From 6d31c175b2e7b062ce71648595c7af2e1381a036 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 25 Jul 2017 20:33:27 -0400 Subject: [PATCH 0472/1227] gnu: net-tools: Update to 1.60-0.479bb4a7. This leaves net-tools-for-tests unchanged. Fixes . * gnu/packages/linux.scm (net-tools): Update to 1.60-0.479bb4a7. [source]: Use git-fetch. [inputs]: Remove the Debian patch. [arguments]: Use modify-phases. Remove the 'patch' phase. Disable SELINUX and AFBLUETOOTH from build configuration. --- gnu/packages/linux.scm | 108 ++++++++++++++++++++++++++++++++++------- 1 file changed, 91 insertions(+), 17 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 7412ee5717..a82d009a44 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -106,6 +106,7 @@ #:use-module (guix build-system python) #:use-module (guix build-system trivial) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) @@ -1187,14 +1188,96 @@ consists of several tools, of which the most important are @command{ip} and messages and are accompanied by a set of manpages.") (license license:gpl2+))) +;; There are two packages for net-tools. The first, net-tools, is more recent +;; and probably safer to use with untrusted inputs (i.e. the internet). The +;; second, net-tools-for-tests, is relatively old and buggy. It can be used in +;; package test suites and should never be referred to by a built package. Use +;; #:disallowed-references to enforce this. +;; +;; When we are able to rebuild many packages (i.e. core-updates), we can update +;; net-tools-for-tests if appropriate. +;; +;; See for more information. (define-public net-tools ;; XXX: This package is basically unmaintained, but it provides a few ;; commands not yet provided by Inetutils, such as 'route', so we have to ;; live with it. - (package - (name "net-tools") + (let ((commit "479bb4a7e11a4084e2935c0a576388f92469225b") + (revision "0")) + (package + (name "net-tools") + (version (string-append "1.60-" revision "." (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.code.sf.net/p/net-tools/code") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "189mdjfbd7j7j0jysy34nqn5byy9g5f6ylip1sikk7kz08vjml4s")))) + (home-page "http://net-tools.sourceforge.net/") + (build-system gnu-build-system) + (arguments + '(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1) + (srfi srfi-26)) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/bin")) + (mkdir-p (string-append out "/sbin")) + + ;; Pretend we have everything... + (system "yes | make config") + + ;; ... except for the things we don't have. + ;; HAVE_AFDECnet requires libdnet, which we don't have. + ;; HAVE_HWSTRIP and HAVE_HWTR require kernel headers + ;; that have been removed. + ;; XXX SELINUX and AFBLUETOOTH are removed for now, but we should + ;; think about adding them later. + (substitute* '("config.make" "config.h") + (("^.*HAVE_(AFDECnet|HWSTRIP|HWTR|SELINUX|AFBLUETOOTH)[ =]1.*$") + ""))))) + (add-after 'install 'remove-redundant-commands + (lambda* (#:key outputs #:allow-other-keys) + ;; Remove commands and man pages redundant with Inetutils. + (let* ((out (assoc-ref outputs "out")) + (dup (append-map (cut find-files out <>) + '("^hostname" + "^(yp|nis|dns)?domainname")))) + (for-each delete-file dup) + #t)))) + ;; Binaries that depend on libnet-tools.a don't declare that + ;; dependency, making it parallel-unsafe. + #:parallel-build? #f + + #:tests? #f ; no test suite + #:make-flags (let ((out (assoc-ref %outputs "out"))) + (list "CC=gcc" + (string-append "BASEDIR=" out) + (string-append "INSTALLNLSDIR=" out "/share/locale") + (string-append "mandir=/share/man"))))) + (native-inputs `(("gettext" ,gettext-minimal))) + (synopsis "Tools for controlling the network subsystem in Linux") + (description + "This package includes the important tools for controlling the network +subsystem of the Linux kernel. This includes arp, ifconfig, netstat, rarp and +route. Additionally, this package contains utilities relating to particular +network hardware types (plipconfig, slattach) and advanced aspects of IP +configuration (iptunnel, ipmaddr).") + (license license:gpl2+)))) + +(define-public net-tools-for-tests + (hidden-package (package (inherit net-tools) (version "1.60") - (home-page "http://net-tools.sourceforge.net/") + ;; Git depends on net-tools-for-tests via GnuTLS, so we can't use git-fetch + ;; here. We should find a better workaround for this problem so that we can + ;; use the latest upstream source. (source (origin (method url-fetch) (uri (list (string-append @@ -1270,26 +1353,17 @@ messages and are accompanied by a set of manpages.") ;; Use the big Debian patch set (the thing does not even compile out of ;; the box.) + ;; XXX The patch is not actually applied, due to a bug in the 'patch' phase + ;; above. However, this package variant is only used in GnuTLS's tests. It + ;; will be adjusted when convenient for the build farm. + ;; See for more information. (inputs `(("patch" ,(origin (method url-fetch) (uri "http://ftp.de.debian.org/debian/pool/main/n/net-tools/net-tools_1.60-24.2.diff.gz") (sha256 (base32 - "0p93lsqx23v5fv4hpbrydmfvw1ha2rgqpn2zqbs2jhxkzhjc030p")))))) - (native-inputs `(("gettext" ,gettext-minimal))) - - (synopsis "Tools for controlling the network subsystem in Linux") - (description - "This package includes the important tools for controlling the network -subsystem of the Linux kernel. This includes arp, ifconfig, netstat, rarp and -route. Additionally, this package contains utilities relating to particular -network hardware types (plipconfig, slattach) and advanced aspects of IP -configuration (iptunnel, ipmaddr).") - (license license:gpl2+))) - -(define-public net-tools-for-tests - (hidden-package net-tools)) + "0p93lsqx23v5fv4hpbrydmfvw1ha2rgqpn2zqbs2jhxkzhjc030p"))))))))) (define-public libcap (package From b2973d9634e1ff433532c84baf7319b021d70690 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 13:45:32 -0400 Subject: [PATCH 0473/1227] gnu: subversion: Update to 1.8.18. * gnu/packages/version-control.scm (subversion): Update to 1.8.18. --- gnu/packages/version-control.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 0d10af020c..2e17201a5f 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -785,14 +785,14 @@ following features: (define-public subversion (package (name "subversion") - (version "1.8.17") + (version "1.8.18") (source (origin (method url-fetch) (uri (string-append "https://archive.apache.org/dist/subversion/" "subversion-" version ".tar.bz2")) (sha256 (base32 - "1450fkj1jmxyphqn6cd95z1ykwsabajm9jw4i412qpwss8w9a4fy")))) + "19lpqdrl86mjfdpayhn3f9rkmpb6zs2iny38cnxq6wcj7snh0sz5")))) (build-system gnu-build-system) (arguments '(#:phases From f27954a077244b783f47095710b48375dcc9b2ee Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 15:38:12 -0400 Subject: [PATCH 0474/1227] gnu: perl-encode-hanextra: Fix build with Perl 5.26.0. * gnu/packages/perl.scm (perl-encode-hanextra)[arguments]: Set PERL_USE_UNSAFE_INC in new 'set-env' phase. --- gnu/packages/perl.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 02670724ed..1d485c4843 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2561,6 +2561,11 @@ also known as JIS 2000.") (base32 "0fj4vd8iva2i0j6s2fyhwgr9afrvhr6gjlzi7805h257mmnb1m0z")))) (build-system perl-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-env + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1")))))) (home-page "http://search.cpan.org/dist/Encode-HanExtra") (synopsis "Additional Chinese encodings") (description "This Perl module provides Chinese encodings that are not From 90335ccea65ba0b9d905bf2e5cac54ff2ef64d21 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 27 Jul 2017 21:51:58 +0200 Subject: [PATCH 0475/1227] gnu: python-cryptography: Update to 2.0.2. * gnu/packages/python.scm (python-cryptography-vectors, python-cryptography): Update to 2.0.2. --- gnu/packages/python.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 7974dfa581..2b38202218 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7636,14 +7636,14 @@ responses, rather than doing any computation.") (define-public python-cryptography-vectors (package (name "python-cryptography-vectors") - (version "2.0") + (version "2.0.2") (source (origin (method url-fetch) (uri (pypi-uri "cryptography_vectors" version)) (sha256 (base32 - "0qadys01517k5wy0rifxip02p08kzrqxm5j0lmmlp0kr07h9jc7h")))) + "0yvi2cp23rg20bq3hd47ixbvjh0zgxnxrriqx5v17d7vkmliwbsi")))) (build-system python-build-system) (home-page "https://github.com/pyca/cryptography") (synopsis "Test vectors for the cryptography package") @@ -7658,14 +7658,14 @@ responses, rather than doing any computation.") (define-public python-cryptography (package (name "python-cryptography") - (version "2.0") + (version "2.0.2") (source (origin (method url-fetch) (uri (pypi-uri "cryptography" version)) (sha256 (base32 - "1c40qlxyn1jgg99f3pqi7146d3561rn9zdqc7w8f7kwr9ysm696k")))) + "1aq6ilnf2zdqshwqai4w8gmb5y6p7ip34qrjp1yb7sz77rkb501p")))) (build-system python-build-system) (inputs `(("openssl" ,openssl))) From 657175446257f8f8d16fd3464da9d95dce8a95f4 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 27 Jul 2017 21:57:06 +0200 Subject: [PATCH 0476/1227] gnu: nspr: Update to 4.16. * gnu/packages/gnuzilla.scm (nspr): Update to 4.16. --- gnu/packages/gnuzilla.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index d4f1018f86..06b8d665fc 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -249,7 +249,7 @@ in C/C++.") (define-public nspr (package (name "nspr") - (version "4.15") + (version "4.16") (source (origin (method url-fetch) (uri (string-append @@ -257,7 +257,7 @@ in C/C++.") version "/src/nspr-" version ".tar.gz")) (sha256 (base32 - "101dksqm1z0hzd7ap82ccbxjr48s6q3xhshdl81qkj6hqdmy1p97")))) + "1l9wlnb9y0bzicv448jjl9kssqn044dc2qrkwzp4ll35fvch4ccv")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) From 70629b6d9a7fc48fdbe4667f99d004c9a99ba703 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 16:18:07 -0400 Subject: [PATCH 0477/1227] gnu: perl-feed-find: Fix build with Perl 5.26.0. * gnu/packages/web.scm (perl-feed-find)[arguments]: Set PERL_USE_UNSAFE_INC in new 'set-env' phase. --- gnu/packages/web.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index e9c5021617..7baee03185 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1980,7 +1980,11 @@ with Encode::decode(locale => $string).") (build-system perl-build-system) (arguments ;; Tests expect to query files at http://stupidfool.org/perl/feeds/ - `(#:tests? #f)) + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-env + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1")))))) (inputs `(("perl-class-errorhandler" ,perl-class-errorhandler) ("perl-html-parser" ,perl-html-parser) From 201c0e72768fa92e2035512e16c17c07f308815b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 16:20:46 -0400 Subject: [PATCH 0478/1227] gnu: perl-gd-securityimage: Fix build with Perl 5.26.0. * gnu/packages/gd.scm (perl-gd-securityimage)[arguments]: Set PERL_USE_UNSAFE_INC in new 'set-env' phase. --- gnu/packages/gd.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm index aac0f9664c..b4e6ce435b 100644 --- a/gnu/packages/gd.scm +++ b/gnu/packages/gd.scm @@ -154,6 +154,11 @@ you can create PNG images on the fly or modify existing files.") (base32 "1kaxs67rfd4w46lxgcg3pa05a596l0h1k8n4zk2gwrrar4022wpx")))) (build-system perl-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-env + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1")))))) (native-inputs `(("perl-module-build" ,perl-module-build))) (propagated-inputs From bd51224936f3f1146800f48e5827baeb00ec30fd Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 27 Jul 2017 21:59:22 +0200 Subject: [PATCH 0479/1227] gnu: nss, nss-certs: Update to 3.32. This release includes minor code changes and many certificate updates: * gnu/packages/certs.scm (nss-certs): Update to 3.32. * gnu/packages/gnuzilla.scm (nss): Update to 3.32. [arguments]: Prevent another test file from being installed. * gnu/packages/patches/nss-pkgconfig.patch: Adjust. --- gnu/packages/certs.scm | 4 ++-- gnu/packages/gnuzilla.scm | 5 +++-- gnu/packages/patches/nss-pkgconfig.patch | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index 2441de6631..c7242dea92 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -74,7 +74,7 @@ (define-public nss-certs (package (name "nss-certs") - (version "3.31") + (version "3.32") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -85,7 +85,7 @@ "nss-" version ".tar.gz"))) (sha256 (base32 - "0pd643a8ns7q5az5ai3ascrw666i2kbfiyy1c9hlhw9jd8jn21g9")))) + "0dfkgvah0ji8b8lpxyy2w0b3lyz5ldmryii4z7j2bfwnrj0z7iim")))) (build-system gnu-build-system) (outputs '("out")) (native-inputs diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 06b8d665fc..0fb25d8432 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -281,7 +281,7 @@ in the Mozilla clients.") (define-public nss (package (name "nss") - (version "3.31") + (version "3.32") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -292,7 +292,7 @@ in the Mozilla clients.") "nss-" version ".tar.gz"))) (sha256 (base32 - "0pd643a8ns7q5az5ai3ascrw666i2kbfiyy1c9hlhw9jd8jn21g9")) + "0dfkgvah0ji8b8lpxyy2w0b3lyz5ldmryii4z7j2bfwnrj0z7iim")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-pkgconfig.patch" "nss-increase-test-timeout.patch")))) @@ -364,6 +364,7 @@ in the Mozilla clients.") ;; phase to fail. Here we simply delete libgtest1.so, since it ;; seems to be used only during the tests. (delete-file (string-append lib "/libgtest1.so")) + (delete-file (string-append lib "/libgtestutil.so")) #t)))))) (inputs diff --git a/gnu/packages/patches/nss-pkgconfig.patch b/gnu/packages/patches/nss-pkgconfig.patch index a33e05fcf2..e3145aa4cf 100644 --- a/gnu/packages/patches/nss-pkgconfig.patch +++ b/gnu/packages/patches/nss-pkgconfig.patch @@ -221,5 +221,5 @@ Later adapted to apply cleanly to nss-3.21. RELEASE = nss --DIRS = coreconf lib cmd gtests -+DIRS = coreconf lib cmd gtests config +-DIRS = coreconf lib cmd cpputil gtests ++DIRS = coreconf lib cmd cpputil gtests config From fb2715720adfb770bccd37dd72b2bf1b0bc22e36 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 27 Jul 2017 23:46:46 +0200 Subject: [PATCH 0480/1227] gnu: whois: Update to 5.2.17. * gnu/packages/networking.scm (whois): Update to 5.2.17. --- gnu/packages/networking.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 2f4d3d233e..5f555ee67f 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -441,7 +441,7 @@ and up to 1 Mbit/s downstream.") (define-public whois (package (name "whois") - (version "5.2.16") + (version "5.2.17") (source (origin (method url-fetch) @@ -449,7 +449,7 @@ and up to 1 Mbit/s downstream.") name "_" version ".tar.xz")) (sha256 (base32 - "0fpwac26ja0rdqsbxyjcsk8gxgixfpxk0baj3rhnpaff3jv0ilp9")))) + "0r4np8gaxhy9c0v795dc4dhxms9zak31vd378sb1h7jpixkqax95")))) (build-system gnu-build-system) ;; TODO: unbundle mkpasswd binary + its po files. (arguments From c8fc9a379bf34292f47338700d85e40272b254e9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 27 Jul 2017 19:45:54 +0200 Subject: [PATCH 0481/1227] gnu: shotwell: Update to 0.26.2. * gnu/packages/gnome.scm (shotwell): Update to 0.26.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b670ef7a3e..c8fc34ff81 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4290,7 +4290,7 @@ metadata in photo and video files of various formats.") (define-public shotwell (package (name "shotwell") - (version "0.26.1") + (version "0.26.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4298,7 +4298,7 @@ metadata in photo and video files of various formats.") name "-" version ".tar.xz")) (sha256 (base32 - "0xak1f69lp1yx3p8jgmr9c0z3jypi8zjpy3kiknn5n9g2f5cqq0a")))) + "0frjqa6nmh025clwnb74z2rzbdq65wjcp2lf9csgcbkpahyjhrag")))) (build-system glib-or-gtk-build-system) (propagated-inputs `(("dconf" ,dconf))) From 0193e3be530ea405609057c675aaf8d709048ca1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 27 Jul 2017 21:05:03 +0200 Subject: [PATCH 0482/1227] gnu: goffice: Update to 3.24.2.1. * gnu/packages/gnome.scm (goffice): Update to 3.24.2.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index c8fc34ff81..abc5c2697d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1755,14 +1755,14 @@ Hints specification (EWMH).") (define-public goffice (package (name "goffice") - (version "0.10.34") + (version "0.10.35") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" (version-major+minor version) "/" name "-" version ".tar.xz")) (sha256 - (base32 "00yn5ly1x50ynrwgl783pwnjy4k2ckp8n54mfnqv6qsq5fi7ajjm")))) + (base32 "0f2p3p7idfpbms4mi75031014mqsv09s21b6w1359p09raph3461")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;4.1 MiB of gtk-doc From 73fe4552aa4958d4ea0d9ea0ef0326e112b22a92 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 27 Jul 2017 21:10:12 +0200 Subject: [PATCH 0483/1227] gnu: gptfdisk: Update description. * gnu/packages/disk.scm (gptfdisk): Remove outdated statement and use @dfn. --- gnu/packages/disk.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 0a6e2c9e1f..91629547a7 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -168,9 +168,9 @@ tables, and it understands a variety of different formats.") (home-page "http://www.rodsbooks.com/gdisk/") (synopsis "Low-level GPT disk partitioning and formatting") (description "GPT fdisk (aka gdisk) is a text-mode partitioning tool that -works on Globally Unique Identifier (GUID) Partition Table (GPT) disks, rather -than on the more common (through 2009) Master Boot Record (MBR) partition -tables.") +works on Globally Unique Identifier (@dfn{GUID}) Partition Table (@dfn{GPT}) +disks, rather than on the older Master Boot Record (@dfn{MBR}) partition +scheme.") (license license:gpl2))) (define-public ddrescue From 0f6cf5a61cd50623f42b177cea429bbaf19e25b3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 27 Jul 2017 21:31:14 +0200 Subject: [PATCH 0484/1227] gnu: nautilus: Update to 3.24.2.1. * gnu/packages/gnome.scm (nautilus): Update to 3.24.2.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index abc5c2697d..931c50e9db 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5490,7 +5490,7 @@ shared object databases, search tools and indexing.") (define-public nautilus (package (name "nautilus") - (version "3.24.1") + (version "3.24.2.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -5498,7 +5498,7 @@ shared object databases, search tools and indexing.") name "-" version ".tar.xz")) (sha256 (base32 - "1cn6bmzmahzlwcd4gllsvx6dva386xm3papgzpv1r34abw73sf27")))) + "1cv138z04qx0fh1a2z2hvxy4p1x15vdv5gmkx5f3hb6c3w2rsz9m")))) (build-system glib-or-gtk-build-system) (arguments '(#:configure-flags From ec5c986e33748be65457a18c52d169c5a622cd1b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 28 Jul 2017 00:55:23 +0200 Subject: [PATCH 0485/1227] gnu: perl-anyevent-i3: Update to 0.17. * gnu/packages/wm.scm (perl-anyevent-i3): Update to 0.17. --- gnu/packages/wm.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 6e458bfdef..2b6ea4f235 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -225,14 +225,14 @@ developers.") (define-public perl-anyevent-i3 (package (name "perl-anyevent-i3") - (version "0.16") + (version "0.17") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MS/MSTPLBG/" "AnyEvent-I3-" version ".tar.gz")) (sha256 (base32 - "1qwva5vmmn929l6k9wzhp4h80ad4qm4m1g2dyv4nlas624003hig")))) + "0qvd9bq16jyy7v3ma82qcnvz9j503bw0mh7h55gkjf7ir62ck0jk")))) (build-system perl-build-system) (propagated-inputs `(("perl-anyevent" ,perl-anyevent) From 5890b40bd00b51a095cf9599f3da688be96a290b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 28 Jul 2017 01:22:05 +0200 Subject: [PATCH 0486/1227] gnu: perl-mousex-nativetraits: Fix build with perl@5.26. * gnu/packages/perl.scm (perl-mousex-nativetraits)[native-inputs]: Add PERL-MODULE-INSTALL. --- gnu/packages/perl.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 1d485c4843..08e85ed231 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5044,6 +5044,7 @@ subset of the functionality for reduced startup time.") (build-system perl-build-system) (native-inputs `(("perl-any-moose" ,perl-any-moose) + ("perl-module-install" ,perl-module-install) ("perl-test-fatal" ,perl-test-fatal))) (propagated-inputs `(("perl-mouse" ,perl-mouse))) From 4685866a94c65c09a1358f39e9d5a629b7baa4be Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 28 Jul 2017 01:25:31 +0200 Subject: [PATCH 0487/1227] gnu: perl-xs-object-magic: Fix build with perl@5.26. * gnu/packages/perl.scm (perl-xs-object-magic)[native-inputs]: Add PERL-MODULE-INSTALL. --- gnu/packages/perl.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 08e85ed231..e237dba127 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7923,6 +7923,7 @@ attribute names.") (build-system perl-build-system) (native-inputs `(("perl-extutils-depends" ,perl-extutils-depends) + ("perl-module-install" ,perl-module-install) ("perl-test-fatal" ,perl-test-fatal))) (home-page "http://search.cpan.org/dist/XS-Object-Magic") (synopsis "Opaque, extensible XS pointer backed objects using sv_magic") From 26f4a377361fa5cbc84012e1ec80db3f1b5273e8 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 22 Jul 2017 20:00:01 +1000 Subject: [PATCH 0488/1227] gnu: ruby-mini-portile2: Update to 2.2.0. * gnu/packages/ruby.scm (ruby-mini-portile2): Update to 2.2.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 7eba684440..7f4075a146 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1913,13 +1913,13 @@ to reproduce user environments.") (define-public ruby-mini-portile-2 (package (inherit ruby-mini-portile) - (version "2.1.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (rubygems-uri "mini_portile2" version)) (sha256 (base32 - "1y25adxb1hgg1wb2rn20g3vl07qziq6fz364jc5694611zz863hb")))))) + "0g5bpgy08q0nc0anisg3yvwc1gc3inl854fcrg48wvg7glqd6dpm")))))) (define-public ruby-nokogiri (package From efb94fda6406133b2865173c07d762d2ae72aefc Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 22 Jul 2017 18:21:54 +1000 Subject: [PATCH 0489/1227] gnu: ruby-nokogiri: Update to 1.8.0. * gnu/packages/ruby.scm (ruby-nokogiri): Update to 1.8.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 7f4075a146..ada47b7ef6 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1924,13 +1924,13 @@ to reproduce user environments.") (define-public ruby-nokogiri (package (name "ruby-nokogiri") - (version "1.7.0.1") + (version "1.8.0") (source (origin (method url-fetch) (uri (rubygems-uri "nokogiri" version)) (sha256 (base32 - "10xahg0fwydh27psm8bv429mdja2ks6x83vxizq26ib8wvs05mv3")))) + "1nffsyx1xjg6v5n9rrbi8y1arrcx2i5f21cp6clgh9iwiqkr7rnn")))) (build-system ruby-build-system) (arguments ;; Tests fail because Nokogiri can only test with an installed extension, From 00eeb45fcaffffd00e8f556e28114d077584c890 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 22 Jul 2017 21:42:03 +1000 Subject: [PATCH 0490/1227] gnu: redis: Update to 4.0.0. * gnu/packages/databases.scm (redis): Update to 4.0.0. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 7e62452ea6..ec812afb0e 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1180,14 +1180,14 @@ similar to BerkeleyDB, LevelDB, etc.") (define-public redis (package (name "redis") - (version "3.2.4") + (version "4.0.0") (source (origin (method url-fetch) (uri (string-append "http://download.redis.io/releases/redis-" version".tar.gz")) (sha256 (base32 - "1wb9jd692a0y52bkkxr6815kk4g039mirjdrvqx24265lv2l5l1a")))) + "0bfzb70pbd9a6nhg5z95bnmqcvsvchwqjafp7rf1swlmj8qawffm")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; tests related to master/slave and replication fail From a2a558147a014468b289a6b9823c6c12e2056f60 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 25 Jul 2017 11:32:14 +1000 Subject: [PATCH 0491/1227] gnu: ruby-ffi: Update to 1.9.18. * gnu/packages/ruby.scm (ruby-ffi): Update to 1.9.18. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ada47b7ef6..fac2e861a6 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -929,13 +929,13 @@ Ruby Gems.") (define-public ruby-ffi (package (name "ruby-ffi") - (version "1.9.14") + (version "1.9.18") (source (origin (method url-fetch) (uri (rubygems-uri "ffi" version)) (sha256 (base32 - "1nkcrmxqr0vb1y4rwliclwlj2ajsi4ddpdx2gvzjy0xbkk5iqzfp")))) + "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0")))) (build-system ruby-build-system) ;; FIXME: Before running tests the build system attempts to build libffi ;; from sources. From 9c14bc7a4d5274477401833cdee45310e6aea091 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 27 Jul 2017 21:41:08 +1000 Subject: [PATCH 0492/1227] gnu: bundler: Update to 1.15.3. * gnu/packages/ruby.scm (bundler): Update to 1.15.3. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index fac2e861a6..ff3ccfb0dd 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -443,13 +443,13 @@ expectations and mocks frameworks.") (define-public bundler (package (name "bundler") - (version "1.15.1") + (version "1.15.3") (source (origin (method url-fetch) (uri (rubygems-uri "bundler" version)) (sha256 (base32 - "1mq0n8g08vf2rnd7fvylx3f4sspx15abid49gycf9zzsjj7w8vps")))) + "125amldnpzzrfw76mmr7mlx002k1k6xdyrqf5bdnzl5hajvn0s5f")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; avoid dependency cycles From ac01cb07902ec88b390a7597513c534017f76bf3 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 28 Jul 2017 17:50:36 +1000 Subject: [PATCH 0493/1227] gnu: ruby-json-pure: Update to 2.1.0. * gnu/packages/ruby.scm (ruby-json-pure): Update to 2.1.0. [arguments]: Replace 'replace-git-ls-files' phase with 'fix-rakefile' and 'regenerate-gemspec' phases. [inputs]: Remove ruby-permutation, ruby-utils, ragel. Add ruby-test-unit, ruby-simplecov. --- gnu/packages/ruby.scm | 48 ++++++++++++++++--------------------------- 1 file changed, 18 insertions(+), 30 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ff3ccfb0dd..bc98dc2845 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2463,46 +2463,34 @@ a native C extension.") (define-public ruby-json-pure (package (name "ruby-json-pure") - (version "1.8.3") + (version "2.1.0") (source (origin (method url-fetch) (uri (rubygems-uri "json_pure" version)) (sha256 (base32 - "025aykr360x6dr1jmg8pmsrx7gr30pws4p1q686vnb48zyw1sc94")))) + "12yf9fmhr4c2jm3xl20vf1qyz5i63vc8a6ngz9j0f86nqwhmi2as")))) (build-system ruby-build-system) (arguments - `(#:modules ((srfi srfi-1) - (ice-9 regex) - (rnrs io ports) - (guix build ruby-build-system) - (guix build utils)) - #:phases + `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'replace-git-ls-files + (add-after 'unpack 'fix-rakefile (lambda _ - ;; The existing gemspec file already contains a nice list of - ;; files that belong to the gem. We extract the list from the - ;; gemspec file and then replace the file list in the Rakefile to - ;; get rid of the call to "git ls-files". - (let* ((contents (call-with-input-file "json.gemspec" get-string-all)) - ;; Guile is unhappy about the #\nul characters in comments. - (filtered (string-filter (lambda (char) - (not (equal? #\nul char))) - contents)) - (files (match:substring - (string-match " s\\.files = ([^]]+\\])" filtered) 1))) - (substitute* "Rakefile" - (("FileList\\[`git ls-files`\\.split\\(/\\\\n/\\)\\]") - (string-append "FileList" files)))) - (substitute* "Gemfile" - ((".*json-java.*") "\n")) - #t))))) + (substitute* "Rakefile" + ;; Since this is not a git repository, do not call 'git'. + (("`git ls-files`") "`find . -type f |sort`") + ;; Loosen dependency constraint. + (("'test-unit', '~> 2.0'") "'test-unit', '>= 2.0'")) + #t)) + (add-after 'replace-git-ls-files 'regenerate-gemspec + (lambda _ + ;; Regenerate gemspec so loosened dependency constraints are + ;; propagated. + (zero? (system* "rake" "gemspec"))))))) (native-inputs - `(("ruby-permutation" ,ruby-permutation) - ("ruby-utils" ,ruby-utils) - ("ragel" ,ragel) - ("bundler" ,bundler))) + `(("bundler" ,bundler) + ("ruby-test-unit" ,ruby-test-unit) + ("ruby-simplecov" ,ruby-simplecov))) (synopsis "JSON implementation in pure Ruby") (description "This package provides a JSON implementation written in pure Ruby.") From f112bd26aec9685f7a0592dbfbcf2aead72f762a Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 28 Jul 2017 21:10:49 +1000 Subject: [PATCH 0494/1227] gnu: redis: Update to 4.0.1. * gnu/packages/databases.scm (redis): Update to 4.0.1. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index ec812afb0e..8f5857ad7d 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1180,14 +1180,14 @@ similar to BerkeleyDB, LevelDB, etc.") (define-public redis (package (name "redis") - (version "4.0.0") + (version "4.0.1") (source (origin (method url-fetch) (uri (string-append "http://download.redis.io/releases/redis-" version".tar.gz")) (sha256 (base32 - "0bfzb70pbd9a6nhg5z95bnmqcvsvchwqjafp7rf1swlmj8qawffm")))) + "14bm8lkhylc93r4dgl7kkzzpw2xq7gr6w6h80n3jazqnx5mcsj90")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; tests related to master/slave and replication fail From c4b006ba12cd12a1c4971a36303582a096ce0948 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 28 Jul 2017 16:31:00 +0200 Subject: [PATCH 0495/1227] gnu: btrfs-progs: Update to 4.12. * gnu/packages/linux.scm (btrfs-progs): Update to 4.12. [outputs]: Remove inaccurate comment on size. --- gnu/packages/linux.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a82d009a44..e9921838c8 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3093,7 +3093,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "4.11.1") + (version "4.12") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -3101,10 +3101,10 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "0vcp9a0a35chhjhq291kvirqhd4i9w5f4zql4y5n81kbwcrxil6h")))) + "1kif8xw2dbyc70ygkp0wyq4x96p1mkwdv4430f99qllx9b410xwi")))) (build-system gnu-build-system) (outputs '("out" - "static")) ; static versions of binaries in "out" (~16MiB!) + "static")) ; static versions of the binaries in "out" (arguments '(#:phases (modify-phases %standard-phases (add-after 'build 'build-static From 6f0f55148d8f70ff5bb7455689a4e78b1807d555 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 28 Jul 2017 14:50:52 +0200 Subject: [PATCH 0496/1227] gnu: le-certs: Create OpenSSL hash symlinks. * gnu/packages/certs.scm (le-certs)[arguments]: Run 'c_rehash' on the result. [native-inputs]: New fields. --- gnu/packages/certs.scm | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index c7242dea92..31ffa54d87 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Andreas Enge ;;; Copyright © 2015 Mark H Weaver -;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Leo Famulari ;;; ;;; This file is part of GNU Guix. @@ -155,13 +155,26 @@ taken from the NSS package and thus ultimately from the Mozilla project.") (let ((root (assoc-ref %build-inputs "isrgrootx1.pem")) (intermediate (assoc-ref %build-inputs "letsencryptauthorityx3.pem")) (backup (assoc-ref %build-inputs "letsencryptauthorityx4.pem")) - (out (string-append (assoc-ref %outputs "out") "/etc/ssl/certs"))) + (out (string-append (assoc-ref %outputs "out") "/etc/ssl/certs")) + (openssl (assoc-ref %build-inputs "openssl")) + (perl (assoc-ref %build-inputs "perl"))) (mkdir-p out) (for-each (lambda (cert) (copy-file cert (string-append out "/" (strip-store-file-name cert)))) - (list root intermediate backup)))))) + (list root intermediate backup)) + + ;; Create hash symlinks suitable for OpenSSL ('SSL_CERT_DIR' and + ;; similar.) + (chdir (string-append %output "/etc/ssl/certs")) + (unless (zero? (system* (string-append perl "/bin/perl") + (string-append openssl "/bin/c_rehash") + ".")) + (error "'c_rehash' failed" openssl)))))) + (native-inputs + `(("openssl" ,openssl) + ("perl" ,perl))) ;for 'c_rehash' (inputs `(; The Let's Encrypt root certificate, "ISRG Root X1". ("isrgrootx1.pem" From f0e492f0a54f184e47c0bd639ad338b1b783d258 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 28 Jul 2017 14:51:44 +0200 Subject: [PATCH 0497/1227] utils: Factorize XDG directory handling. * guix/ui.scm (config-directory): Remove. * guix/utils.scm (xdg-directory, config-directory): New procedures. (cache-directory): Rewrite in terms of 'xdg-directory'. * guix/scripts/substitute.scm (%narinfo-cache-directory): Pass #:ensure? #f to 'cache-directory'. --- guix/scripts/substitute.scm | 2 +- guix/ui.scm | 21 --------------------- guix/utils.scm | 32 ++++++++++++++++++++++++-------- 3 files changed, 25 insertions(+), 30 deletions(-) diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm index 35282f9027..0d36997bc4 100755 --- a/guix/scripts/substitute.scm +++ b/guix/scripts/substitute.scm @@ -113,7 +113,7 @@ (or (and=> (getenv "XDG_CACHE_HOME") (cut string-append <> "/guix/substitute")) (string-append %state-directory "/substitute/cache")) - (string-append (cache-directory) "/substitute"))) + (string-append (cache-directory #:ensure? #f) "/substitute"))) (define %allow-unauthenticated-substitutes? ;; Whether to allow unchecked substitutes. This is useful for testing diff --git a/guix/ui.scm b/guix/ui.scm index 4bad00e8cf..b0108d0705 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -36,7 +36,6 @@ #:use-module (guix combinators) #:use-module (guix build-system) #:use-module (guix serialization) - #:use-module ((guix build utils) #:select (mkdir-p)) #:use-module ((guix licenses) #:select (license? license-name)) #:use-module ((guix build syscalls) #:select (free-disk-space terminal-columns)) @@ -79,7 +78,6 @@ read/eval read/eval-package-expression location->string - config-directory fill-paragraph texi->plain-text package-description-string @@ -856,25 +854,6 @@ replacement if PORT is not Unicode-capable." (($ file line column) (format #f "~a:~a:~a" file line column)))) -(define* (config-directory #:key (ensure? #t)) - "Return the name of the configuration directory, after making sure that it -exists if ENSURE? is true. Honor the XDG specs, -." - (let ((dir (and=> (or (getenv "XDG_CONFIG_HOME") - (and=> (getenv "HOME") - (cut string-append <> "/.config"))) - (cut string-append <> "/guix")))) - (catch 'system-error - (lambda () - (when ensure? - (mkdir-p dir)) - dir) - (lambda args - (let ((err (system-error-errno args))) - ;; ERR is necessarily different from EEXIST. - (leave (G_ "failed to create configuration directory `~a': ~a~%") - dir (strerror err))))))) - (define* (fill-paragraph str width #:optional (column 0)) "Fill STR such that each line contains at most WIDTH characters, assuming that the first character is at COLUMN. diff --git a/guix/utils.scm b/guix/utils.scm index 9bf1cc893f..ab43ed4008 100644 --- a/guix/utils.scm +++ b/guix/utils.scm @@ -33,7 +33,7 @@ #:autoload (rnrs io ports) (make-custom-binary-input-port) #:use-module ((rnrs bytevectors) #:select (bytevector-u8-set!)) #:use-module (guix memoization) - #:use-module ((guix build utils) #:select (dump-port)) + #:use-module ((guix build utils) #:select (dump-port mkdir-p)) #:use-module ((guix build syscalls) #:select (mkdtemp! fdatasync)) #:use-module (ice-9 format) #:autoload (ice-9 popen) (open-pipe*) @@ -81,7 +81,10 @@ call-with-temporary-output-file call-with-temporary-directory with-atomic-file-output + + config-directory cache-directory + readlink* edit-expression @@ -598,13 +601,26 @@ output port, and PROC's result is returned." (false-if-exception (delete-file template)) (close-port out))))) -(define (cache-directory) - "Return the cache directory for Guix, by default ~/.cache/guix." - (string-append (or (getenv "XDG_CACHE_HOME") - (and=> (or (getenv "HOME") - (passwd:dir (getpwuid (getuid)))) - (cut string-append <> "/.cache"))) - "/guix")) +(define* (xdg-directory variable suffix #:key (ensure? #t)) + "Return the name of the XDG directory that matches VARIABLE and SUFFIX, +after making sure that it exists if ENSURE? is true. VARIABLE is an +environment variable name like \"XDG_CONFIG_HOME\"; SUFFIX is a suffix like +\"/.config\". Honor the XDG specs, +." + (let ((dir (and=> (or (getenv variable) + (and=> (or (getenv "HOME") + (passwd:dir (getpwuid (getuid)))) + (cut string-append <> suffix))) + (cut string-append <> "/guix")))) + (when ensure? + (mkdir-p dir)) + dir)) + +(define config-directory + (cut xdg-directory "XDG_CONFIG_HOME" "/.config" <...>)) + +(define cache-directory + (cut xdg-directory "XDG_CACHE_HOME" "/.cache" <...>)) (define (readlink* file) "Call 'readlink' until the result is not a symlink." From 3a53759807b4d139de40266c4875ba5b9d9e1fe7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 28 Jul 2017 17:12:29 +0200 Subject: [PATCH 0498/1227] gnu: guile-git: Update snapshot. * gnu/packages/guile.scm (guile-git): Update to commit e156a10. [native-inputs]: Add TEXINFO. --- gnu/packages/guile.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index f1ffc0e006..6011e85162 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1807,8 +1807,8 @@ is not available for Guile 2.0.") (license license:lgpl3+))) (define-public guile-git - (let ((revision "2") - (commit "06f9fc3d9ac95798d4a51e6310f7b594ce5597e0")) + (let ((revision "3") + (commit "e156a1054cc1d9e58d9be82e36e8acf5c9f9ee8d")) (package (name "guile-git") (version (string-append "0.0-" revision "." (string-take commit 7))) @@ -1818,7 +1818,7 @@ is not available for Guile 2.0.") (uri (git-reference (url home-page) (commit commit))) (sha256 (base32 - "0rcq0f8dhl89ia7336bq8y279q5ada0b1kabcqw9zl3125k3cp4v")) + "1vhr2bqkljy1zzdy02dky2nk1w9bd46afj5wd4gp4kr333pz4ch6")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments @@ -1829,6 +1829,7 @@ is not available for Guile 2.0.") (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) + ("texinfo" ,texinfo) ("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.2) From 9ca8aa38ecce0b0651a0ff394ee4ce32bdd0bb41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 28 Jul 2017 17:52:21 +0200 Subject: [PATCH 0499/1227] gnu: guix: Add dependency on Guile-Git. * gnu/packages/package-management.scm (guix)[arguments] : Add Guile-Git to PATH. [propagated-inputs]: Add GUILE-GIT. (guile2.0-guix)[propagated-inputs]: Add GUILE2.0-GIT. --- gnu/packages/package-management.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index d49b4c3a4f..3650b5d957 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -187,6 +187,7 @@ (let* ((out (assoc-ref outputs "out")) (guile (assoc-ref inputs "guile")) (json (assoc-ref inputs "guile-json")) + (git (assoc-ref inputs "guile-git")) (ssh (assoc-ref inputs "guile-ssh")) (gnutls (assoc-ref inputs "gnutls")) (effective @@ -196,6 +197,7 @@ "-c" "(display (effective-version))"))) (path (string-append json "/share/guile/site/" effective ":" + git "/share/guile/site/" effective ":" ssh "/share/guile/site/" effective ":" gnutls "/share/guile/site/" effective))) @@ -252,7 +254,8 @@ (propagated-inputs `(("gnutls" ,gnutls/guile-2.2) ;for 'guix download' & co. ("guile-json" ,guile-json) - ("guile-ssh" ,guile-ssh))) + ("guile-ssh" ,guile-ssh) + ("guile-git" ,guile-git))) (home-page "https://www.gnu.org/software/guix/") (synopsis "Functional package manager for installed software packages and versions") @@ -278,7 +281,8 @@ the Nix package manager.") (propagated-inputs `(("gnutls" ,gnutls) ("guile-json" ,guile2.0-json) - ("guile-ssh" ,guile2.0-ssh))))) + ("guile-ssh" ,guile2.0-ssh) + ("guile-git" ,guile2.0-git))))) (define (source-file? file stat) "Return true if FILE is likely a source file, false if it is a typical From 1975c754f487eb4933724ca3b116442d21ef8dd9 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 29 Jun 2017 12:42:59 +0200 Subject: [PATCH 0500/1227] bootloader: Use for the bootloader side. * gnu/bootloader.scm (menu-entry-device-mount-point): New variable. Export it. (: New field "device". * gnu/bootloader/grub.scm (grub-confgiuration-file): Handle entries. * gnu/bootloader/extlinux.scm (extlinux-configuration-file): Handle entries. * gnu/system.scm (menu->entry->boot-parameters): Delete variable. (boot-parameters->menu-entry): New variable. Export it. (operating-system-bootcfg): Make OLD-ENTRIES a list of . * guix/script/system.scm (reinstall-bootloader): Fix bootcfg usage. (perform-action): Fix bootcfg usage. --- gnu/bootloader.scm | 3 +++ gnu/bootloader/extlinux.scm | 17 ++++++++--------- gnu/bootloader/grub.scm | 27 ++++++++++++--------------- gnu/system.scm | 29 ++++++++++++++--------------- guix/scripts/system.scm | 13 +++++++------ 5 files changed, 44 insertions(+), 45 deletions(-) diff --git a/gnu/bootloader.scm b/gnu/bootloader.scm index d5fcf30f05..e080b04568 100644 --- a/gnu/bootloader.scm +++ b/gnu/bootloader.scm @@ -30,6 +30,7 @@ menu-entry-linux menu-entry-linux-arguments menu-entry-initrd + menu-entry-device-mount-point bootloader bootloader? @@ -67,6 +68,8 @@ (label menu-entry-label) (device menu-entry-device ; file system uuid, label, or #f (default #f)) + (device-mount-point menu-entry-device-mount-point + (default #f)) (linux menu-entry-linux) (linux-arguments menu-entry-linux-arguments (default '())) ; list of string-valued gexps diff --git a/gnu/bootloader/extlinux.scm b/gnu/bootloader/extlinux.scm index 219b058e53..e5fdeb5801 100644 --- a/gnu/bootloader/extlinux.scm +++ b/gnu/bootloader/extlinux.scm @@ -38,14 +38,13 @@ corresponding to old generations of the system." (define all-entries - (append entries (map menu-entry->boot-parameters - (bootloader-configuration-menu-entries config)))) + (append entries (bootloader-configuration-menu-entries config))) - (define (boot-parameters->gexp params) - (let ((label (boot-parameters-label params)) - (kernel (boot-parameters-kernel params)) - (kernel-arguments (boot-parameters-kernel-arguments params)) - (initrd (boot-parameters-initrd params))) + (define (menu-entry->gexp entry) + (let ((label (menu-entry-label entry)) + (kernel (menu-entry-linux entry)) + (kernel-arguments (menu-entry-linux-arguments entry)) + (initrd (menu-entry-initrd entry))) #~(format port "LABEL ~a MENU LABEL ~a KERNEL ~a @@ -69,11 +68,11 @@ TIMEOUT ~a~%" (if (> timeout 0) 1 0) ;; timeout is expressed in 1/10s of seconds. (* 10 timeout)) - #$@(map boot-parameters->gexp all-entries) + #$@(map menu-entry->gexp all-entries) #$@(if (pair? old-entries) #~((format port "~%") - #$@(map boot-parameters->gexp old-entries) + #$@(map menu-entry->gexp old-entries) (format port "~%")) #~()))))) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index 880491c983..3a3456ca46 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -316,16 +316,14 @@ code." STORE-FS, a object. OLD-ENTRIES is taken to be a list of menu entries corresponding to old generations of the system." (define all-entries - (append entries (map menu-entry->boot-parameters - (bootloader-configuration-menu-entries config)))) - - (define (boot-parameters->gexp params) - (let ((device (boot-parameters-store-device params)) - (device-mount-point (boot-parameters-store-mount-point params)) - (label (boot-parameters-label params)) - (kernel (boot-parameters-kernel params)) - (arguments (boot-parameters-kernel-arguments params)) - (initrd (boot-parameters-initrd params))) + (append entries (bootloader-configuration-menu-entries config))) + (define (menu-entry->gexp entry) + (let ((device (menu-entry-device entry)) + (device-mount-point (menu-entry-device-mount-point entry)) + (label (menu-entry-label entry)) + (kernel (menu-entry-linux entry)) + (arguments (menu-entry-linux-arguments entry)) + (initrd (menu-entry-initrd entry))) ;; Here DEVICE is the store and DEVICE-MOUNT-POINT is its mount point. ;; Use the right file names for KERNEL and INITRD in case ;; DEVICE-MOUNT-POINT is not "/", meaning that the store is on a @@ -341,11 +339,10 @@ entries corresponding to old generations of the system." #$(grub-root-search device kernel) #$kernel (string-join (list #$@arguments)) #$initrd)))) - (mlet %store-monad ((sugar (eye-candy config - (boot-parameters-store-device + (menu-entry-device (first all-entries)) - (boot-parameters-store-mount-point + (menu-entry-device-mount-point (first all-entries)) #:system system #:port #~port))) @@ -362,12 +359,12 @@ set default=~a set timeout=~a~%" #$(bootloader-configuration-default-entry config) #$(bootloader-configuration-timeout config)) - #$@(map boot-parameters->gexp all-entries) + #$@(map menu-entry->gexp all-entries) #$@(if (pair? old-entries) #~((format port " submenu \"GNU system, old configurations...\" {~%") - #$@(map boot-parameters->gexp old-entries) + #$@(map menu-entry->gexp old-entries) (format port "}~%")) #~())))) diff --git a/gnu/system.scm b/gnu/system.scm index 746c511187..fdb5be287e 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -112,7 +112,7 @@ boot-parameters-initrd read-boot-parameters read-boot-parameters-file - menu-entry->boot-parameters + boot-parameters->menu-entry local-host-aliases %setuid-programs @@ -301,17 +301,15 @@ The object has its kernel-arguments extended in order to make it bootable." root-device))) #f))) -(define (menu-entry->boot-parameters menu-entry) - "Convert a instance to a corresponding ." - (boot-parameters - (label (menu-entry-label menu-entry)) - (root-device #f) - (bootloader-name 'custom) - (store-device #f) - (store-mount-point #f) - (kernel (menu-entry-linux menu-entry)) - (kernel-arguments (menu-entry-linux-arguments menu-entry)) - (initrd (menu-entry-initrd menu-entry)))) +(define (boot-parameters->menu-entry conf) + (menu-entry + (label (boot-parameters-label conf)) + (device (boot-parameters-store-device conf)) + (device-mount-point (boot-parameters-store-mount-point conf)) + (linux (boot-parameters-kernel conf)) + (linux-arguments (boot-parameters-kernel-arguments conf)) + (initrd (boot-parameters-initrd conf)))) + ;;; @@ -866,15 +864,16 @@ listed in OS. The C library expects to find it under (store-file-system (operating-system-file-systems os))) (define* (operating-system-bootcfg os #:optional (old-entries '())) - "Return the bootloader configuration file for OS. Use OLD-ENTRIES to -populate the \"old entries\" menu." + "Return the bootloader configuration file for OS. Use OLD-ENTRIES +(which is a list of ) to populate the \"old entries\" menu." (mlet* %store-monad ((system (operating-system-derivation os)) (root-fs -> (operating-system-root-file-system os)) (root-device -> (if (eq? 'uuid (file-system-title root-fs)) (uuid->string (file-system-device root-fs)) (file-system-device root-fs))) - (entry (operating-system-boot-parameters os system root-device)) + (params (operating-system-boot-parameters os system root-device)) + (entry -> (boot-parameters->menu-entry params)) (bootloader-conf -> (operating-system-bootloader os))) ((bootloader-configuration-file-generator (bootloader-configuration-bootloader bootloader-conf)) diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 0fcb6a9b0f..5a2811e75b 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -431,8 +431,6 @@ generation as its default entry. STORE is an open connection to the store." "Re-install bootloader for existing system profile generation NUMBER. STORE is an open connection to the store." (let* ((generation (generation-file-name %system-profile number)) - (params (unless-file-not-found - (read-boot-parameters-file generation))) ;; Detect the bootloader used in %system-profile. (bootloader (lookup-bootloader-by-name (system-bootloader-name))) @@ -442,10 +440,12 @@ STORE is an open connection to the store." (bootloader bootloader))) ;; Make the specified system generation the default entry. - (entries (profile-boot-parameters %system-profile (list number))) + (params (profile-boot-parameters %system-profile (list number))) (old-generations (delv number (generation-numbers %system-profile))) - (old-entries (profile-boot-parameters - %system-profile old-generations))) + (old-params (profile-boot-parameters + %system-profile old-generations)) + (entries (map boot-parameters->menu-entry params)) + (old-entries (map boot-parameters->menu-entry old-params))) (run-with-store store (mlet* %store-monad ((bootcfg ((bootloader-configuration-file-generator bootloader) @@ -657,7 +657,8 @@ output when building a system derivation, such as a disk image." os (if (eq? 'init action) '() - (profile-boot-parameters))))) + (map boot-parameters->menu-entry + (profile-boot-parameters)))))) (bootcfg-file -> (bootloader-configuration-file bootloader)) (bootloader-installer (let ((installer (bootloader-installer bootloader)) From 1f88f189eb903887e7b78215f0497b312f9e2951 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 25 Jul 2017 19:27:47 +0300 Subject: [PATCH 0501/1227] gnu: Add tome4. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm (tome4): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/games.scm | 120 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index d8848f82fa..071311a751 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4617,3 +4617,123 @@ computer-hosted roleplaying games. This is the last version released by Crowther & Woods, its original authors, in 1995. It has been known as \"adventure 2.5\" and \"430-point adventure\".") (license license:bsd-2)))) + +(define-public tome4 + (package + (name "tome4") + (version "1.5.5") + (synopsis "Single-player, RPG roguelike game set in the world of Eyal") + (source + (origin + (method url-fetch) + (uri (string-append "https://te4.org/dl/t-engine/t-engine4-src-" + version ".tar.bz2")) + (sha256 + (base32 + "0v2qgdfpvdzd1bcbp9v8pfahj1bgczsq2d4xfhh5wg11jgjcwz03")) + (modules '((guix build utils))) + (snippet + '(for-each (lambda (file) + (substitute* file + (("#elif defined(__FreeBSD__)" line) + (string-append + line " || defined(__GNUC__)")))) + '("src/music.h" "src/tSDL.h"))))) + (build-system gnu-build-system) + (native-inputs + `(("unzip" ,unzip))) + (inputs + `(("sdl-union" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))) + ("glu" ,glu) + ("premake4" ,premake4) + ("openal" ,openal) + ("vorbis" ,libvorbis) + ("luajit" ,luajit))) + (arguments + `(#:make-flags '("CC=gcc" "config=release") + #:phases (modify-phases %standard-phases + (replace 'configure + (lambda _ + (zero? (system* "premake4" "gmake")) + #t)) + (add-after 'set-paths 'set-sdl-paths + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CPATH" + (string-append (assoc-ref inputs "sdl-union") + "/include/SDL2")) + #t)) + (delete 'check) + ;; premake doesn't provide install target + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (usr (string-append out "/usr")) + (bin (string-append out "/bin")) + (licenses (string-append out "/share/licenses")) + (documents (string-append out "/share/doc")) + (pixmaps (string-append out "/share/pixmaps")) + (icon "te4-icon.png") + (data (string-append out "/share/" ,name)) + (applications (string-append + out "/share/applications")) + (unzip (string-append + (assoc-ref inputs "unzip") "/bin/unzip")) + (wrapper (string-append bin "/" ,name))) + ;; icon + (mkdir-p pixmaps) + (system* unzip "-j" + (string-append + "game/engines/te4-" ,version ".teae") + (string-append + "data/gfx/" icon) "-d" pixmaps) + ;; game executable + (install-file "t-engine" data) + (mkdir-p bin) + (with-output-to-file wrapper + (lambda () + (display + (string-append + "#!/bin/sh\n" + ;; No bootstrap code found, + ;; defaulting to working directory + ;; for engine code! + "cd " data "\n" + "exec -a tome4 ./t-engine \"$@\"\n")))) + (chmod wrapper #o555) + ;; licenses + (for-each (lambda (file) + (install-file file licenses)) + '("COPYING" "COPYING-MEDIA")) + ;; documents + (for-each (lambda (file) + (install-file file documents)) + '("CONTRIBUTING" "CREDITS")) + ;; data + (copy-recursively "bootstrap" (string-append + data "/bootstrap")) + (copy-recursively "game" (string-append data "/game")) + ;; launcher + (mkdir-p applications) + (with-output-to-file (string-append applications "/" + ,name ".desktop") + (lambda () + (display + (string-append + "[Desktop Entry] +Name=ToME4 +Comment=" ,synopsis "\n" +"Exec=" ,name "\n" +"Icon=" icon "\n" +"Terminal=false +Type=Application +Categories=Game;RolePlaying;\n"))))) + #t))))) + (home-page "https://te4.org") + (description "Tales of Maj’Eyal (ToME) RPG, featuring tactical turn-based +combat and advanced character building. Play as one of many unique races and +classes in the lore-filled world of Eyal, exploring random dungeons, facing +challenging battles, and developing characters with your own tailored mix of +abilities and powers. With a modern graphical and customisable interface, +intuitive mouse control, streamlined mechanics and deep, challenging combat, +Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century.") + (license license:gpl3+))) From 32c4a5060ecbb4ac08a04f3742face12211545ef Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Fri, 28 Jul 2017 18:52:34 +0300 Subject: [PATCH 0502/1227] gnu: emacs-auctex: Update to 11.91.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (emacs-auctex): Update to 11.91.0. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 43de130574..2c720ef71e 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -1113,7 +1113,7 @@ as a library for other Emacs packages.") (define-public emacs-auctex (package (name "emacs-auctex") - (version "11.90.0") + (version "11.91.0") (source (origin (method url-fetch) @@ -1123,7 +1123,7 @@ as a library for other Emacs packages.") ".tar")) (sha256 (base32 - "04nsndwcf0dimgc2p1yzzrymc36amzdnjg0158nxplmjkzdp28gy")))) + "1yh182mxgngjmwpkyv2n9km3vyq95bqfq8mnly3dbv78nwk7f2l3")))) (build-system emacs-build-system) ;; We use 'emacs' because AUCTeX requires dbus at compile time ;; ('emacs-minimal' does not provide dbus). From d02e19aa2c1d3d72ccda37ed8415f03100000a31 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 29 Jul 2017 00:19:45 +0200 Subject: [PATCH 0503/1227] gnu: bind: Update to 9.11.2. * gnu/packages/dns.scm (isc-bind): Update to 9.11.2. --- gnu/packages/dns.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index e29708a3a6..afae4596bd 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -99,7 +99,7 @@ and BOOTP/TFTP for network booting of diskless machines.") (define-public isc-bind (package (name "bind") - (version "9.11.1-P3") + (version "9.11.2") (source (origin (method url-fetch) (uri (string-append @@ -107,7 +107,7 @@ and BOOTP/TFTP for network booting of diskless machines.") version ".tar.gz")) (sha256 (base32 - "1x6cfwkcv6nwc0mh5fzv70f38nl04yhgq90gr5nrjiif8dsnwhjj")))) + "0yn7wgi2y8mpmvbjbkl4va7p0xsnn48m4yjx6ynb1hzp423asikz")))) (build-system gnu-build-system) (outputs `("out" "utils")) (inputs From 4f9dd97e658a8ddc1b672de7af0af8b8aaa4749f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 29 Jul 2017 00:20:10 +0200 Subject: [PATCH 0504/1227] gnu: sssd: Update to 1.15.3. * gnu/packages/sssd.scm (sssd): Update to 1.15.3. [native-inputs]: Add util-linux. --- gnu/packages/sssd.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/sssd.scm b/gnu/packages/sssd.scm index 2afef03055..7d52ebab4c 100644 --- a/gnu/packages/sssd.scm +++ b/gnu/packages/sssd.scm @@ -80,14 +80,14 @@ fundamental object types for C.") (define-public sssd (package (name "sssd") - (version "1.15.2") + (version "1.15.3") (source (origin (method url-fetch) (uri (string-append "http://releases.pagure.org/SSSD/sssd/" "sssd-" version ".tar.gz")) (sha256 (base32 - "0r6j28f7vjb1aw65gkw4nz2l3jy605h7wsr1k815hynp2jrzrmac")))) + "0d36dmzqdjfpspm9fw4zx0kh0qcx60p9vchxvcajn4qf3k3qsl3f")))) (build-system gnu-build-system) (arguments `(#:make-flags @@ -161,7 +161,8 @@ fundamental object types for C.") ("docbook-xsl" ,docbook-xsl) ("docbook-xml" ,docbook-xml) ("libxslt" ,libxslt) - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("util-linux" ,util-linux))) ; for uuid.h, reqired for KCM (home-page "https://pagure.io/SSSD/sssd/") (synopsis "System security services daemon") (description "SSSD is a system daemon. Its primary function is to provide From 6b96478c6d09db55ac8192140ccbd828c7614185 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 28 Jul 2017 21:07:31 -0400 Subject: [PATCH 0505/1227] gnu: linux-libre@4.4: Update to 4.4.79. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.79. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index e9921838c8..021a90f60e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -380,8 +380,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.78" - "0g8pc0kam33rn2dx9fkp7w749s38qs2iykawpj0k9jm19775hn4k" + (make-linux-libre "4.4.79" + "03x1nc2fxmh29sf2fbsqzmw8qrdzv5gakr9xrg1shxh31c6xr3xr" %intel-compatible-systems #:configuration-file kernel-config)) From dfa0c66cc96350aff08817f1271817e27fc1e5ec Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 28 Jul 2017 21:08:19 -0400 Subject: [PATCH 0506/1227] gnu: linux-libre@4.9: Update to 4.9.40. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.40. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 021a90f60e..f43fe12066 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -374,8 +374,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.39" - "03rnbz1wf3d0fi5zrhygx1b20bx23fy310d8h74zc6z4jh6fsbx3" + (make-linux-libre "4.9.40" + "1qaqi2dcydyxw79yj9pa7yxf13ss4rng7bgg0i1dl63c3g7qjgcz" %intel-compatible-systems #:configuration-file kernel-config)) From 38ba8a61165477c3bc555561a549bb4aede14145 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 28 Jul 2017 21:08:51 -0400 Subject: [PATCH 0507/1227] gnu: linux-libre: Update to 4.12.4. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.4. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index f43fe12066..a189458ada 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -364,8 +364,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.3") -(define %linux-libre-hash "1b02snh41fgr5i55wlc86nvksyzy1cq994mkmj195pa57hy6y6ak") +(define %linux-libre-version "4.12.4") +(define %linux-libre-hash "13c6ka4fhzi41bjlssbkz84hkag7knqpvfyp2jjhm3wm25r4lhw8") (define-public linux-libre (make-linux-libre %linux-libre-version From 3b56776fb86665f1afdc3894cc248d707ac2c31b Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Wed, 26 Jul 2017 13:22:58 +0200 Subject: [PATCH 0508/1227] gnu: mescc-tools: Update to 0.2. * gnu/packages/mes.scm (mescc-tools): Update to 0.2. --- gnu/packages/mes.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index 3fcf5f0fa4..e107867ab5 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -103,17 +103,17 @@ prototype in C and a Nyacc-based C compiler in [Guile] Scheme.") (define-public mescc-tools (package (name "mescc-tools") - (version "0.1") + (version "0.2") (source (origin (method url-fetch) (uri (string-append - "https://github.com/oriansj/MESCC_Tools/archive/Release_" + "https://github.com/oriansj/mescc-tools/archive/Release_" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1lzi9sqv41269isn7in70q2hhh087n4v97zr5i2qzz69j2lkr3xb")))) + "0gmyczh88xcsmrmxqksbpaqidchj5hfqxqk7apx40k9r3vav6mnz")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (arguments @@ -124,7 +124,7 @@ prototype in C and a Nyacc-based C compiler in [Guile] Scheme.") (synopsis "Tools for the full source bootstrapping process") (description "Mescc-tools is a collection of tools for use in a full source -bootstrapping process. Currently consists of the M0 macro assembler and the +bootstrapping process. Currently consists of the M1 macro assembler and the hex2 linker.") - (home-page "https://github.com/oriansj/MESCC_Tools") + (home-page "https://github.com/oriansj/mescc-tools") (license gpl3+))) From e8d9a87862fd9d9b19e77f0b88c7f8e774f33961 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Fri, 28 Jul 2017 17:48:23 +0300 Subject: [PATCH 0509/1227] gnu: Add emacs-rpm-spec-mode. * gnu/packages/emacs.scm (emacs-rpm-spec-mode): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 2c720ef71e..f0490e7072 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5200,3 +5200,26 @@ src block.") "@code{emacs-emamux} lets Emacs interact with the @code{tmux} terminal multiplexer.") (license license:gpl3+))) + +(define-public emacs-rpm-spec-mode + (package + (name "emacs-rpm-spec-mode") + (version "0.16") + (source + (origin + (method url-fetch) + ;; URI has the Fedora release number instead of the version + ;; number. This will have to updated manually every new release. + (uri (string-append + "https://src.fedoraproject.org/cgit/rpms" + "/emacs-rpm-spec-mode.git/snapshot" + "/emacs-rpm-spec-mode-f26.tar.gz")) + (sha256 + (base32 + "17dz80lhjrc89fj17pysl8slahzrqdkxgcjdk55zls6jizkr6kz3")))) + (build-system emacs-build-system) + (home-page "http://pkgs.fedoraproject.org/cgit/rpms/emacs-rpm-spec-mode.git") + (synopsis "Emacs major mode for editing RPM spec files") + (description "@code{emacs-rpm-spec-mode} provides an Emacs major mode for +editing RPM spec files.") + (license license:gpl2+))) From b5244fcb49804922e34fffb18d71908dac37b303 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Fri, 28 Jul 2017 14:47:16 +0530 Subject: [PATCH 0510/1227] gnu: arandr: Remove make-xrandr-available phase. wrap-program functionality is already provided by python-build-system. * gnu/packages/xdisorg.scm (arandr): Remove make-xrandr-available phase. --- gnu/packages/xdisorg.scm | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index d102077c91..84794a05c3 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -93,16 +93,7 @@ (build-system python-build-system) (arguments `(#:python ,python-2 ;incompatible with python 3 - #:tests? #f ;no tests - #:phases - (modify-phases %standard-phases - (add-after 'install 'make-xrandr-available - (lambda* (#:key inputs outputs #:allow-other-keys) - (wrap-program (string-append (assoc-ref outputs "out") - "/bin/arandr") - `("PATH" ":" prefix (,(string-append (assoc-ref inputs "xrandr") - "/bin")))) - #t))))) + #:tests? #f)) ;no tests (inputs `(("pygtk" ,python2-pygtk) ("xrandr" ,xrandr))) (native-inputs `(("gettext" ,gettext-minimal) From 730ed6ec8b69a0f908a8aadbbe0555dd45de227c Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 24 Jun 2017 14:19:46 +0100 Subject: [PATCH 0511/1227] gnu: services: admin: Add tailon. * gnu/services/admin.scm (, ): New record types. (tailon-configuration-files-string, tailon-shepherd-service): New procedures. (%tailon-accounts, tailon-service-type: New variables. * doc/guix.texi (Monitoring Services: Document the Tailon service. * gnu/local.mk (GNU_SYSTEM_MODULES): Add gnu/tests/admin.scm. * gnu/tests/admin.scm: New file. --- doc/guix.texi | 90 ++++++++++++++++++++++++ gnu/local.mk | 1 + gnu/services/admin.scm | 151 ++++++++++++++++++++++++++++++++++++++++- gnu/tests/admin.scm | 128 ++++++++++++++++++++++++++++++++++ 4 files changed, 369 insertions(+), 1 deletion(-) create mode 100644 gnu/tests/admin.scm diff --git a/doc/guix.texi b/doc/guix.texi index e8c4e0eaf3..3452850316 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -219,6 +219,7 @@ Services * Database Services:: SQL databases. * Mail Services:: IMAP, POP3, SMTP, and all that. * Messaging Services:: Messaging services. +* Monitoring Services:: Monitoring services. * Kerberos Services:: Kerberos services. * Web Services:: Web servers. * DNS Services:: DNS daemons. @@ -9011,6 +9012,7 @@ declaration. * Database Services:: SQL databases. * Mail Services:: IMAP, POP3, SMTP, and all that. * Messaging Services:: Messaging services. +* Monitoring Services:: Monitoring services. * Kerberos Services:: Kerberos services. * Web Services:: Web servers. * DNS Services:: DNS daemons. @@ -13599,6 +13601,94 @@ string, you could instantiate a prosody service like this: (prosody.cfg.lua ""))) @end example +@node Monitoring Services +@subsubsection Monitoring Services + +@subsubheading Tailon Service + +@uref{https://tailon.readthedocs.io/, Tailon} is a web application for +viewing and searching log files. + +The following example will configure the service with default values. +By default, Tailon can be accessed on port 8080 (@code{http://localhost:8080}). + +@example +(service tailon-service-type) +@end example + +The following example customises more of the Tailon configuration, +adding @command{sed} to the list of allowed commands. + +@example +(service tailon-service-type + (tailon-configuration + (config-file + (tailon-configuration-file + (allowed-commands '("tail" "grep" "awk" "sed")))))) +@end example + + +@deftp {Data Type} tailon-configuration +Data type representing the configuration of Tailon. +This type has the following parameters: + +@table @asis +@item @code{config-file} (default: @code{(tailon-configuration-file)}) +The configuration file to use for Tailon. This can be set to a +@dfn{tailon-configuration-file} record value, or any gexp +(@pxref{G-Expressions}). + +For example, to instead use a local file, the @code{local-file} function +can be used: + +@example +(service tailon-service-type + (tailon-configuration + (config-file (local-file "./my-tailon.conf")))) +@end example + +@item @code{package} (default: @code{tailon}) +The tailon package to use. + +@end table +@end deftp + +@deftp {Data Type} tailon-configuration-file +Data type representing the configuration options for Tailon. +This type has the following parameters: + +@table @asis +@item @code{files} (default: @code{(list "/var/log")}) +List of files to display. The list can include strings for a single file +or directory, or a list, where the first item is the name of a +subsection, and the remaining items are the files or directories in that +subsection. + +@item @code{bind} (default: @code{"localhost:8080"}) +Address and port to which Tailon should bind on. + +@item @code{relative-root} (default: @code{#f}) +URL path to use for Tailon, set to @code{#f} to not use a path. + +@item @code{allow-transfers?} (default: @code{#t}) +Allow downloading the log files in the web interface. + +@item @code{follow-names?} (default: @code{#t}) +Allow tailing of not-yet existent files. + +@item @code{tail-lines} (default: @code{200}) +Number of lines to read initially from each file. + +@item @code{allowed-commands} (default: @code{(list "tail" "grep" "awk")}) +Commands to allow running. By default, @code{sed} is disabled. + +@item @code{debug?} (default: @code{#f}) +Set @code{debug?} to @code{#t} to show debug messages. + +@end table +@end deftp + + @node Kerberos Services @subsubsection Kerberos Services @cindex Kerberos diff --git a/gnu/local.mk b/gnu/local.mk index 724c6b6758..29dee73c46 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -478,6 +478,7 @@ GNU_SYSTEM_MODULES = \ %D%/build/vm.scm \ \ %D%/tests.scm \ + %D%/tests/admin.scm \ %D%/tests/base.scm \ %D%/tests/dict.scm \ %D%/tests/nfs.scm \ diff --git a/gnu/services/admin.scm b/gnu/services/admin.scm index b9e3fa70a4..1044833fef 100644 --- a/gnu/services/admin.scm +++ b/gnu/services/admin.scm @@ -20,14 +20,19 @@ (define-module (gnu services admin) #:use-module (gnu packages admin) #:use-module (gnu packages base) + #:use-module (gnu packages logging) #:use-module (gnu services) #:use-module (gnu services mcron) #:use-module (gnu services shepherd) + #:use-module (gnu services web) + #:use-module (gnu system shadow) #:use-module (guix gexp) + #:use-module (guix store) #:use-module (guix packages) #:use-module (guix records) #:use-module (srfi srfi-1) #:use-module (ice-9 vlist) + #:use-module (ice-9 match) #:export (%default-rotations %rotated-files @@ -41,7 +46,27 @@ rottlog-configuration rottlog-configuration? rottlog-service - rottlog-service-type)) + rottlog-service-type + + + tailon-configuration-file + tailon-configuration-file? + tailon-configuration-file-files + tailon-configuration-file-bind + tailon-configuration-file-relative-root + tailon-configuration-file-allow-transfers? + tailon-configuration-file-follow-names? + tailon-configuration-file-tail-lines + tailon-configuration-file-allowed-commands + tailon-configuration-file-debug? + + + tailon-configuration + tailon-configuration? + tailon-configuration-config-file + tailon-configuration-package + + tailon-service-type)) ;;; Commentary: ;;; @@ -172,4 +197,128 @@ for ROTATION." rotations))))) (default-value (rottlog-configuration)))) + +;;; +;;; Tailon +;;; + +(define-record-type* + tailon-configuration-file make-tailon-configuration-file + tailon-configuration-file? + (files tailon-configuration-file-files + (default '("/var/log"))) + (bind tailon-configuration-file-bind + (default "localhost:8080")) + (relative-root tailon-configuration-file-relative-root + (default #f)) + (allow-transfers? tailon-configuration-file-allow-transfers? + (default #t)) + (follow-names? tailon-configuration-file-follow-names? + (default #t)) + (tail-lines tailon-configuration-file-tail-lines + (default 200)) + (allowed-commands tailon-configuration-file-allowed-commands + (default '("tail" "grep" "awk"))) + (debug? tailon-configuration-file-debug? + (default #f))) + +(define (tailon-configuration-files-string files) + (string-append + "\n" + (string-join + (map + (lambda (x) + (string-append + " - " + (cond + ((string? x) + (simple-format #f "'~A'" x)) + ((list? x) + (string-join + (cons (simple-format #f "'~A':" (car x)) + (map + (lambda (x) (simple-format #f " - '~A'" x)) + (cdr x))) + "\n")) + (else (error x))))) + files) + "\n"))) + +(define-gexp-compiler (tailon-configuration-file-compiler + (file ) system target) + (match file + (($ files bind relative-root + allow-transfers? follow-names? + tail-lines allowed-commands debug?) + (text-file + "tailon-config.yaml" + (string-concatenate + (filter-map + (match-lambda + ((key . #f) #f) + ((key . value) (string-append key ": " value "\n"))) + + `(("files" . ,(tailon-configuration-files-string files)) + ("bind" . ,bind) + ("relative-root" . ,relative-root) + ("allow-transfers" . ,(if allow-transfers? "true" "false")) + ("follow-names" . ,(if follow-names? "true" "false")) + ("tail-lines" . ,(number->string tail-lines)) + ("commands" . ,(string-append "[" + (string-join allowed-commands ", ") + "]")) + ,@(if debug? '(("debug" . "true")) '())))))))) + +(define-record-type* + tailon-configuration make-tailon-configuration + tailon-configuration? + (config-file tailon-configuration-config-file + (default (tailon-configuration-file))) + (package tailon-configuration-package + (default tailon))) + +(define tailon-shepherd-service + (match-lambda + (($ config-file package) + (list (shepherd-service + (provision '(tailon)) + (documentation "Run the tailon daemon.") + (start #~(make-forkexec-constructor + `(,(string-append #$package "/bin/tailon") + "-c" ,#$config-file) + #:user "tailon" + #:group "tailon")) + (stop #~(make-kill-destructor))))))) + +(define %tailon-accounts + (list (user-group (name "tailon") (system? #t)) + (user-account + (name "tailon") + (group "tailon") + (system? #t) + (comment "tailon") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin"))))) + +(define tailon-service-type + (service-type + (name 'tailon) + (extensions + (list (service-extension shepherd-root-service-type + tailon-shepherd-service) + (service-extension account-service-type + (const %tailon-accounts)))) + (compose concatenate) + (extend (lambda (parameter files) + (tailon-configuration + (inherit parameter) + (config-file + (let ((old-config-file + (tailon-configuration-config-file parameter))) + (tailon-configuration-file + (inherit old-config-file) + (files (append (tailon-configuration-file-files old-config-file) + files)))))))) + (default-value (tailon-configuration)))) + ;;; admin.scm ends here diff --git a/gnu/tests/admin.scm b/gnu/tests/admin.scm new file mode 100644 index 0000000000..3c7deb5426 --- /dev/null +++ b/gnu/tests/admin.scm @@ -0,0 +1,128 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Christopher Baines +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests admin) + #:use-module (gnu tests) + #:use-module (gnu system) + #:use-module (gnu system file-systems) + #:use-module (gnu system shadow) + #:use-module (gnu system vm) + #:use-module (gnu services) + #:use-module (gnu services admin) + #:use-module (gnu services networking) + #:use-module (guix gexp) + #:use-module (guix store) + #:use-module (guix monads) + #:export (%test-tailon)) + +(define %tailon-os + ;; Operating system under test. + (simple-operating-system + (dhcp-client-service) + (service tailon-service-type + (tailon-configuration + (config-file + (tailon-configuration-file + (bind "0.0.0.0:8080"))))))) + +(define* (run-tailon-test #:optional (http-port 8081)) + "Run tests in %TAILON-OS, which has tailon running and listening on +HTTP-PORT." + (define os + (marionette-operating-system + %tailon-os + #:imported-modules '((gnu services herd) + (guix combinators)))) + + (define vm + (virtual-machine + (operating-system os) + (port-forwardings `((,http-port . 8080))))) + + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (srfi srfi-11) (srfi srfi-64) + (ice-9 match) + (gnu build marionette) + (web uri) + (web client) + (web response)) + + (define marionette + ;; Forward the guest's HTTP-PORT, where tailon is listening, to + ;; port 8080 in the host. + (make-marionette (list #$vm))) + + (mkdir #$output) + (chdir #$output) + + (test-begin "tailon") + + (test-eq "service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'tailon) + 'running!) + marionette)) + + (define* (retry-on-error f #:key times delay) + (let loop ((attempt 1)) + (match (catch + #t + (lambda () + (cons #t + (f))) + (lambda args + (cons #f + args))) + ((#t . return-value) + return-value) + ((#f . error-args) + (if (>= attempt times) + error-args + (begin + (sleep delay) + (loop (+ 1 attempt)))))))) + + (test-equal "http-get" + 200 + (retry-on-error + (lambda () + (let-values (((response text) + (http-get #$(format + #f + "http://localhost:~A/" + http-port) + #:decode-body? #t))) + (response-code response))) + #:times 10 + #:delay 5)) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "tailon-test" test)) + +(define %test-tailon + (system-test + (name "tailon") + (description "Connect to a running Tailon server.") + (value (run-tailon-test)))) From 9f9b7a0d0123a5d04cdd0e19d3acea589452581c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 29 Jul 2017 14:15:48 +0200 Subject: [PATCH 0512/1227] gnu: gptfdisk: Update to 1.0.3. * gnu/packages/disk.scm (gptfdisk): Update to 1.0.3. --- gnu/packages/disk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 91629547a7..030fabfa58 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -130,7 +130,7 @@ tables, and it understands a variety of different formats.") (define-public gptfdisk (package (name "gptfdisk") - (version "1.0.1") + (version "1.0.3") (source (origin (method url-fetch) @@ -138,7 +138,7 @@ tables, and it understands a variety of different formats.") version "/" name "-" version ".tar.gz")) (sha256 (base32 - "1izazbyv5n2d81qdym77i8mg9m870hiydmq4d0s51npx5vp8lk46")))) + "0p0vr67lnqdsgdv2y144xmjqa1a2nijrrd3clc8dc2f46pn5mzc9")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) From 0e016722eef4b0775d24d288d86e6479d6a1f9ab Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Wed, 26 Jul 2017 16:21:33 +0200 Subject: [PATCH 0513/1227] gnu: mes: Update to 0.9. * gnu/packages/mes.scm (mes): Update to 0.9. [arguments]: Delete `strip' phase. [synopsis]: Rewrite to be more descriptive. [description]: Include expanded acronym. --- gnu/packages/mes.scm | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index e107867ab5..39f9765320 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -57,7 +57,7 @@ extensive examples, including parsers for the Javascript and C99 languages.") (let ((triplet "i686-unknown-linux-gnu")) (package (name "mes") - (version "0.8") + (version "0.9") (source (origin (method url-fetch) (uri (string-append "https://gitlab.com/janneke/mes" @@ -66,7 +66,7 @@ extensive examples, including parsers for the Javascript and C99 languages.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1igmrks20ci6l5c0jx2bn4swf0w8jy5inhg61cwld9d7hwanmdnj")))) + "0ph0fvabpb7zhbk4zpacbp7m4b142ds17dq5dzn00m7dz8farw9r")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (propagated-inputs @@ -91,12 +91,14 @@ extensive examples, including parsers for the Javascript and C99 languages.") (lambda () (display "Please run build-aux/gitlog-to-changelog --srcdir= > ChangeLog\n"))) - #t))))) - (synopsis "Maxwell Equations of Software") + #t)) + (delete 'strip)))) ; binutil's strip b0rkes Mescc/M1/hex2 binaries + (synopsis "Scheme interpreter and C compiler for full source bootstrapping") (description - "Mes aims to create full source bootstrapping for GuixSD. It -consists of a mutual self-hosting [close to Guile-] Scheme interpreter -prototype in C and a Nyacc-based C compiler in [Guile] Scheme.") + "Mes [Maxwell Equations of Software] aims to create full source +bootstrapping for GuixSD. It consists of a mutual self-hosting [close to +Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in +[Guile] Scheme.") (home-page "https://gitlab.com/janneke/mes") (license gpl3+)))) From a9085f0c5ced981941b17eccbf447d52232012d6 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 29 Jul 2017 22:33:35 +1000 Subject: [PATCH 0514/1227] gnu: metabat: Update to 2.11.2. * gnu/packages/bioinformatics.scm (metabat): Update to 2.11.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 3b4cc359ee..614a7d4075 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3469,7 +3469,7 @@ form of assemblies or reads.") (define-public metabat (package (name "metabat") - (version "2.11.1") + (version "2.11.2") (source (origin (method url-fetch) @@ -3478,7 +3478,7 @@ form of assemblies or reads.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0ll00l81aflscgggs5nfhj12cbvdiz3gg7f7n5f537a3xhx60vn9")) + "0rws9r1ziv6way8cf49jg8bzj7x2131kfqkhj8byf0z5hnrq3bwv")) (patches (search-patches "metabat-remove-compilation-date.patch" "metabat-fix-compilation.patch")))) (build-system gnu-build-system) From 8f82110492c0ecdb2fe0f6aba0a981cb34c66472 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jul 2017 14:32:59 +0200 Subject: [PATCH 0515/1227] gnu: gnupg: Update to 2.1.22. * gnu/packages/gnupg.scm (gnupg): Update to 2.1.22. --- gnu/packages/gnupg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index e71ec8dce6..5b46257948 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -228,14 +228,14 @@ compatible to GNU Pth.") (define-public gnupg (package (name "gnupg") - (version "2.1.21") + (version "2.1.22") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "1p97limv29p01y79mgnzpwixa50lv53wgdl3ymk9idkmpaldisks")))) + "1msazgy1q1pp7y2xr46z0il4pfzmzgzkp7v0hv5cz4hvkspnywa6")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From d163d97d92f3abea98f4b36d55ac3bb9db23d423 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Thu, 8 Jun 2017 18:25:32 +0200 Subject: [PATCH 0516/1227] gnu: Add coq-flocq. * gnu/packages/ocaml.scm (coq-flocq): New variable. --- gnu/packages/ocaml.scm | 45 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 68619019f1..82da0bf1d0 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -3153,3 +3153,48 @@ writing to these structures, and they are accessed via the Bigarray module.") (synopsis "Minimal library providing hexadecimal converters") (description "Hex is a minimal library providing hexadecimal converters.") (license license:isc))) + +(define-public coq-flocq + (package + (name "coq-flocq") + (version "2.5.2") + (source (origin + (method url-fetch) + (uri (string-append "https://gforge.inria.fr/frs/download.php/file" + "/36199/flocq-" version ".tar.gz")) + (sha256 + (base32 + "0h5mlasirfzc0wwn2isg4kahk384n73145akkpinrxq5jsn5d22h")))) + (build-system gnu-build-system) + (native-inputs + `(("ocaml" ,ocaml) + ("which" ,which) + ("coq" ,coq))) + (arguments + `(#:configure-flags + (list (string-append "--libdir=" (assoc-ref %outputs "out") + "/lib/coq/user-contrib/Flocq")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-remake + (lambda _ + (substitute* "remake.cpp" + (("/bin/sh") (which "sh"))))) + (replace 'build + (lambda _ + (zero? (system* "./remake")))) + (replace 'check + (lambda _ + (zero? (system* "./remake" "check")))) + ;; TODO: requires coq-gappa and coq-interval. + ;(zero? (system* "./remake" "check-more")))) + (replace 'install + (lambda _ + (zero? (system* "./remake" "install"))))))) + (home-page "http://flocq.gforge.inria.fr/") + (synopsis "Floating-point formalization for the Coq system") + (description "Flocq (Floats for Coq) is a floating-point formalization for +the Coq system. It provides a comprehensive library of theorems on a multi-radix +multi-precision arithmetic. It also supports efficient numerical computations +inside Coq.") + (license license:lgpl3+))) From 88191acee23ce304c25da623efe56ff011831f3c Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Wed, 21 Jun 2017 21:38:42 +0200 Subject: [PATCH 0517/1227] gnu: Add coq-gappa. * gnu/packages/ocaml.scm (coq-gappa): New variable. --- gnu/packages/ocaml.scm | 55 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 82da0bf1d0..687b3d25fc 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -28,10 +28,13 @@ #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages base) + #:use-module (gnu packages bison) + #:use-module (gnu packages boost) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages emacs) + #:use-module (gnu packages flex) #:use-module (gnu packages gcc) #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) @@ -3198,3 +3201,55 @@ the Coq system. It provides a comprehensive library of theorems on a multi-radi multi-precision arithmetic. It also supports efficient numerical computations inside Coq.") (license license:lgpl3+))) + +(define-public coq-gappa + (package + (name "coq-gappa") + (version "1.3.1") + (source (origin + (method url-fetch) + (uri (string-append "https://gforge.inria.fr/frs/download.php/file/36351/gappa-" + version ".tar.gz")) + (sha256 + (base32 + "0924jr6f15fx22qfsvim5vc0qxqg30ivg9zxj34lf6slbgdl3j39")))) + (build-system gnu-build-system) + (native-inputs + `(("ocaml" ,ocaml) + ("which" ,which) + ("coq" ,coq) + ("bison" ,bison) + ("flex" ,flex))) + (inputs + `(("gmp" ,gmp) + ("mpfr" ,mpfr) + ("boost" ,boost))) + (arguments + `(#:configure-flags + (list (string-append "--libdir=" (assoc-ref %outputs "out") + "/lib/coq/user-contrib/Gappa")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-remake + (lambda _ + (substitute* "remake.cpp" + (("/bin/sh") (which "sh"))))) + (replace 'build + (lambda _ + (zero? (system* "./remake")))) + (replace 'check + (lambda _ + (zero? (system* "./remake" "check")))) + (replace 'install + (lambda _ + (zero? (system* "./remake" "install"))))))) + (home-page "http://gappa.gforge.inria.fr/") + (synopsis "Verify and formally prove properties on numerical programs") + (description "Gappa is a tool intended to help verifying and formally proving +properties on numerical programs dealing with floating-point or fixed-point +arithmetic. It has been used to write robust floating-point filters for CGAL +and it is used to certify elementary functions in CRlibm. While Gappa is +intended to be used directly, it can also act as a backend prover for the Why3 +software verification plateform or as an automatic tactic for the Coq proof +assistant.") + (license (list license:gpl2+ license:cecill))));either gpl2+ or cecill From 380c65de949bbba0db3ff1679df723ddb50d9665 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Wed, 21 Jun 2017 21:39:33 +0200 Subject: [PATCH 0518/1227] gnu: Add coq-mathcomp. * gnu/packages/ocaml.scm (coq-mathcomp): New variable. --- gnu/packages/ocaml.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 687b3d25fc..1ed0ffa76e 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -3253,3 +3253,45 @@ intended to be used directly, it can also act as a backend prover for the Why3 software verification plateform or as an automatic tactic for the Coq proof assistant.") (license (list license:gpl2+ license:cecill))));either gpl2+ or cecill + +(define-public coq-mathcomp + (package + (name "coq-mathcomp") + (version "1.6.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/math-comp/math-comp/archive/mathcomp-" + version ".tar.gz")) + (sha256 + (base32 + "1j9ylggjzrxz1i2hdl2yhsvmvy5z6l4rprwx7604401080p5sgjw")))) + (build-system gnu-build-system) + (native-inputs + `(("ocaml" ,ocaml) + ("which" ,which) + ("coq" ,coq))) + (arguments + `(#:tests? #f; No need to test formally-verified programs :) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'chdir + (lambda _ + (chdir "mathcomp"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (setenv "COQLIB" (string-append (assoc-ref outputs "out") "/lib/coq/")) + (zero? (system* "make" "-f" "Makefile.coq" + (string-append "COQLIB=" (assoc-ref outputs "out") + "/lib/coq/") + "install"))))))) + (home-page "https://math-comp.github.io/math-comp/") + (synopsis "Mathematical Components for Coq") + (description "Mathematical Components for Coq has its origins in the formal +proof of the Four Colour Theorem. Since then it has grown to cover many areas +of mathematics and has been used for large scale projects like the formal proof +of the Odd Order Theorem. + +The library is written using the Ssreflect proof language that is an integral +part of the distribution.") + (license license:cecill-b))) From b09c4244f7c77b11e039cd5348270b2d1da77577 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Wed, 21 Jun 2017 21:40:23 +0200 Subject: [PATCH 0519/1227] gnu: Add coq-coquelicot. * gnu/packages/ocaml.scm (coq-coquelicot): New variable. --- gnu/packages/ocaml.scm | 50 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 1ed0ffa76e..86af187aa0 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -3295,3 +3295,53 @@ of the Odd Order Theorem. The library is written using the Ssreflect proof language that is an integral part of the distribution.") (license license:cecill-b))) + +(define-public coq-coquelicot + (package + (name "coq-coquelicot") + (version "3.0.0") + (source (origin + (method url-fetch) + (uri (string-append "https://gforge.inria.fr/frs/download.php/" + "file/36537/coquelicot-" version ".tar.gz")) + (sha256 + (base32 + "0fx99bvsbdizj00gx2im8939y4wwl05f4qhw184j90kcx5vjxxv9")))) + (build-system gnu-build-system) + (native-inputs + `(("ocaml" ,ocaml) + ("which" ,which) + ("coq" ,coq))) + (propagated-inputs + `(("mathcomp" ,coq-mathcomp))) + (arguments + `(#:configure-flags + (list (string-append "--libdir=" (assoc-ref %outputs "out") + "/lib/coq/user-contrib/Coquelicot")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-remake + (lambda _ + (substitute* "remake.cpp" + (("/bin/sh") (which "sh"))))) + (replace 'build + (lambda _ + (zero? (system* "./remake")))) + (replace 'check + (lambda _ + (zero? (system* "./remake" "check")))) + (replace 'install + (lambda _ + (zero? (system* "./remake" "install"))))))) + (home-page "http://coquelicot.saclay.inria.fr/index.html") + (synopsis "Coq library for Reals") + (description "Coquelicot is an easier way of writing formulas and theorem +statements, achieved by relying on total functions in place of dependent types +for limits, derivatives, integrals, power series, and so on. To help with the +proof process, the library comes with a comprehensive set of theorems that cover +not only these notions, but also some extensions such as parametric integrals, +two-dimensional differentiability, asymptotic behaviors. It also offers some +automations for performing differentiability proofs. Moreover, Coquelicot is a +conservative extension of Coq's standard library and provides correspondence +theorems between the two libraries.") + (license license:lgpl3+))) From 303690c405446d1eea231044f0bcb48b88b6508d Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Wed, 21 Jun 2017 21:41:36 +0200 Subject: [PATCH 0520/1227] gnu: Add coq-interval. * gnu/packages/ocaml.scm (coq-interval): New variable. --- gnu/packages/ocaml.scm | 46 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 86af187aa0..43bbdcd6e2 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -3345,3 +3345,49 @@ automations for performing differentiability proofs. Moreover, Coquelicot is a conservative extension of Coq's standard library and provides correspondence theorems between the two libraries.") (license license:lgpl3+))) + +(define-public coq-interval + (package + (name "coq-interval") + (version "3.2.0") + (source (origin + (method url-fetch) + (uri (string-append "https://gforge.inria.fr/frs/download.php/" + "file/36538/interval-" version ".tar.gz")) + (sha256 + (base32 + "16ir7mizl18kwa1ls8fwjih6r87894bvc1r6lh85cd43la7nriq3")))) + (build-system gnu-build-system) + (native-inputs + `(("ocaml" ,ocaml) + ("which" ,which) + ("coq" ,coq))) + (propagated-inputs + `(("flocq" ,coq-flocq) + ("coquelicot" ,coq-coquelicot) + ("mathcomp" ,coq-mathcomp))) + (arguments + `(#:configure-flags + (list (string-append "--libdir=" (assoc-ref %outputs "out") + "/lib/coq/user-contrib/Gappa")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-remake + (lambda _ + (substitute* "remake.cpp" + (("/bin/sh") (which "sh"))))) + (replace 'build + (lambda _ + (zero? (system* "./remake")))) + (replace 'check + (lambda _ + (zero? (system* "./remake" "check")))) + (replace 'install + (lambda _ + (zero? (system* "./remake" "install"))))))) + (home-page "http://coq-interval.gforge.inria.fr/") + (synopsis "Coq tactics to simplify inequality proofs") + (description "Interval provides vernacular files containing tactics for +simplifying the proofs of inequalities on expressions of real numbers for the +Coq proof assistant.") + (license license:cecill-c))) From 444f9dccc24138acf833f6fea17a8b47a776ba2b Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 21 Jul 2017 01:06:45 +0200 Subject: [PATCH 0521/1227] gnu: grub-efi: Add mtools input. * gnu/packages/bootloaders.scm: Add (gnu packages mtools). (grub-efi)[inputs]: Add mtools. [arguments]: Add phase "use-absolute-mtools-path". --- gnu/packages/bootloaders.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 299a569595..34b8953aa7 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -38,6 +38,7 @@ #:use-module (gnu packages gettext) #:use-module (gnu packages linux) #:use-module (gnu packages man) + #:use-module (gnu packages mtools) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages python) @@ -150,6 +151,7 @@ menu to select one of the installed operating systems.") (synopsis "GRand Unified Boot loader (UEFI version)") (inputs `(("efibootmgr" ,efibootmgr) + ("mtools", mtools) ,@(package-inputs grub))) (arguments `(;; TODO: Tests need a UEFI firmware for qemu. There is one at @@ -167,7 +169,19 @@ menu to select one of the installed operating systems.") (("efibootmgr") (string-append (assoc-ref inputs "efibootmgr") "/sbin/efibootmgr"))) - #t))))))))) + #t)) + (add-after 'patch-stuff 'use-absolute-mtools-path + (lambda* (#:key inputs #:allow-other-keys) + (let ((mtools (assoc-ref inputs "mtools"))) + (substitute* "util/grub-mkrescue.c" + (("\"mformat\"") + (string-append "\"" mtools + "/bin/mformat\""))) + (substitute* "util/grub-mkrescue.c" + (("\"mcopy\"") + (string-append "\"" mtools + "/bin/mcopy\""))) + #t)))))))))) (define-public syslinux (let ((commit "bb41e935cc83c6242de24d2271e067d76af3585c")) From b1a6a7068401785fbcc1f5e9df677bc57691674f Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Tue, 18 Jul 2017 16:44:22 +0300 Subject: [PATCH 0522/1227] gnu: emacs-ess: Install elisp files in "guix.d". Fixes . Reported by Adonay Felipe Nogueira . * gnu/packages/emacs.scm (emacs-ess)[arguments]: Add LISPDIR to 'make-flags' to install *.el files into "guix.d" sub-directory. --- gnu/packages/emacs.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index f0490e7072..1175bacfde 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -3134,7 +3134,9 @@ E-Prime forbids the use of the \"to be\" form to strengthen your writing.") (build-system gnu-build-system) (arguments `(#:tests? #f ; There is no test suite. - #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:make-flags (list (string-append "PREFIX=" %output) + (string-append "LISPDIR=" %output + "/share/emacs/site-lisp/guix.d/ess")) #:phases (modify-phases %standard-phases (delete 'configure) From 469c7ce058a6477bfdc1d965b17c3fb296df424b Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Mon, 24 Jul 2017 19:44:23 -0400 Subject: [PATCH 0523/1227] gnu: Remove let-alist. The let-alist package has been included with Emacs since version 25.1. * gnu/packages/emacs.scm (let-alist): Remove variable. (flycheck, emacs-pdf-tools, emacs-sx)[propagated-inputs]: Remove let-alist. Signed-off-by: Alex Kost --- gnu/packages/emacs.scm | 30 +----------------------------- 1 file changed, 1 insertion(+), 29 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 1175bacfde..aae153b1c6 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -641,30 +641,6 @@ process, passing on the arguments as command line arguments.") programs.") (license license:gpl3+))) -(define-public let-alist - (package - (name "emacs-let-alist") - (version "1.0.4") - (source (origin - (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/let-alist-" - version ".el")) - (sha256 - (base32 - "07312bvvyz86lf64vdkxg2l1wgfjl25ljdjwlf1bdzj01c4hm88x")))) - (build-system emacs-build-system) - (home-page "https://elpa.gnu.org/packages/let-alist.html") - (synopsis "Easily let-bind values of an assoc-list by their names") - (description - "This package offers a single Emacs Lisp macro, @code{let-alist}. This -macro takes a first argument, whose value must be an alist (association list), -and a body. - -The macro expands to a let form containing the body, where each dotted symbol -inside body is let-bound to their cdrs in the alist. Only those present in -the body are let-bound and this search is done at compile time.") - (license license:gpl3+))) - (define-public flycheck (package (name "emacs-flycheck") @@ -680,7 +656,6 @@ the body are let-bound and this search is done at compile time.") (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash) - ("emacs-let-alist" ,let-alist) ("emacs-seq" ,emacs-seq))) (home-page "https://www.flycheck.org") (synopsis "On-the-fly syntax checking") @@ -1326,8 +1301,6 @@ single buffer.") ("automake" ,automake) ("pkg-config" ,pkg-config) ("emacs" ,emacs-minimal))) - (propagated-inputs - `(("let-alist" ,let-alist))) (inputs `(("poppler" ,poppler) ("cairo" ,cairo) ("glib" ,glib) @@ -1579,8 +1552,7 @@ strings.") "1w0xghfljqg31axcnv8gzlrd8pw25nji6idnrhflq0af9qh1dw03")))) (build-system emacs-build-system) (propagated-inputs - `(("emacs-markdown-mode" ,emacs-markdown-mode) - ("let-alist" ,let-alist))) + `(("emacs-markdown-mode" ,emacs-markdown-mode))) (home-page "https://github.com/vermiculus/sx.el/") (synopsis "Emacs StackExchange client") (description From d0a5205292a24f350522bf461582cac5242f0cfa Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Mon, 24 Jul 2017 19:44:24 -0400 Subject: [PATCH 0524/1227] gnu: Remove emacs-seq. The seq.el library has been included with Emacs since version 25.1. * gnu/packages/emacs.scm (emacs-seq): Remove variable. (flycheck, emacs-cider)[propagated-inputs]: Remove emacs-seq. Signed-off-by: Alex Kost --- gnu/packages/emacs.scm | 26 ++------------------------ 1 file changed, 2 insertions(+), 24 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index aae153b1c6..02e7a9e908 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -655,8 +655,7 @@ programs.") "1rxzkaqsj48z3nska5wsgwafvwkam014dzqd32baycmxjl0jxvy7")))) (build-system emacs-build-system) (propagated-inputs - `(("emacs-dash" ,emacs-dash) - ("emacs-seq" ,emacs-seq))) + `(("emacs-dash" ,emacs-dash))) (home-page "https://www.flycheck.org") (synopsis "On-the-fly syntax checking") (description @@ -3007,26 +3006,6 @@ be removed from the front. This type of data structure is sometimes called an ongoing operations.") (license license:gpl3+))) -(define-public emacs-seq - (package - (name "emacs-seq") - (version "2.19") - (source (origin - (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/seq-" - version ".tar")) - (sha256 - (base32 - "11hb7is6a4h1lscjcfrzh576j0g3m5yjydn16s6x5bxp5gsr6zha")))) - (build-system emacs-build-system) - (home-page "https://elpa.gnu.org/packages/seq.html") - (synopsis "Sequence manipulation functions for Emacs") - (description - "This Emacs library provides sequence-manipulation functions that -complement basic functions provided by @code{subr.el}. All provided functions -work on lists, strings and vectors.") - (license license:gpl3+))) - (define-public emacs-sparql-mode (package (name "emacs-sparql-mode") @@ -3532,8 +3511,7 @@ for search-based navigation of buffers.") `(("emacs-clojure-mode" ,emacs-clojure-mode) ("emacs-spinner" ,emacs-spinner) ("emacs-pkg-info" ,emacs-pkg-info) - ("emacs-queue" ,emacs-queue) - ("emacs-seq" ,emacs-seq))) + ("emacs-queue" ,emacs-queue))) (home-page "https://cider.readthedocs.org/") (synopsis "Clojure development environment for Emacs") (description From 24b115dff570948f88bfd67179055097bcf875ff Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Thu, 27 Jul 2017 01:01:26 -0400 Subject: [PATCH 0525/1227] gnu: emacs: Check GUIX_ENVIRONMENT when autoloading packages. Check the environment profile so that we autoload packages that are given as arguments to "guix environment" but are not in the system or user profile. Note that the union of Emacs packages in the system, user, and environment profiles will be autoloaded even when --pure was passed to "guix environment", because it's not clear how to detect that --pure was given. * gnu/packages/aux-files/emacs/guix-emacs.el (guix-emacs-autoload-packages): Add Emacs packages from GUIX_ENVIRONMENT profile. Signed-off-by: Alex Kost --- gnu/packages/aux-files/emacs/guix-emacs.el | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/aux-files/emacs/guix-emacs.el b/gnu/packages/aux-files/emacs/guix-emacs.el index 2bbd639ffd..9a49e8861c 100644 --- a/gnu/packages/aux-files/emacs/guix-emacs.el +++ b/gnu/packages/aux-files/emacs/guix-emacs.el @@ -1,6 +1,7 @@ ;;; guix-emacs.el --- Emacs packages installed with Guix ;; Copyright © 2014, 2015, 2016, 2017 Alex Kost +;; Copyright © 2017 Kyle Meyer ;; This file is part of GNU Guix. @@ -87,9 +88,11 @@ profiles. (interactive (list (if (fboundp 'guix-read-package-profile) (funcall 'guix-read-package-profile) guix-user-profile))) - (let ((profiles (or profiles - (list "/run/current-system/profile" - guix-user-profile)))) + (let* ((env (getenv "GUIX_ENVIRONMENT")) + (profiles (or profiles + (append (list "/run/current-system/profile" + guix-user-profile) + (and env (list env)))))) (dolist (profile profiles) (let ((dirs (guix-emacs-directories profile))) (when dirs From baa6b777891062494e336017777865e10063d6a8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jul 2017 22:53:39 +0200 Subject: [PATCH 0526/1227] gnu: vim: Update to 8.0.0808. * gnu/packages/vim.scm (vim): Update to 8.0.0808. [arguments]: Remove obsolete 'make-bit-reproducable' phase. (vim-full): Update to 8.0.0808. [arguments]: Remove 'drop-failing-tests' phase. --- gnu/packages/vim.scm | 31 ++----------------------------- 1 file changed, 2 insertions(+), 29 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index f8c9761924..7db81ee57d 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -60,7 +60,7 @@ (define-public vim (package (name "vim") - (version "8.0.0727") + (version "8.0.0808") (source (origin (method url-fetch) (uri (string-append "https://github.com/vim/vim/archive/v" @@ -68,20 +68,13 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0hwqglpsk8qlp2rn6q9p35fxk88xixljk1yv42m3j01g3bgqg0gx")))) + "0qrn9fhq5wdrrf2qhpygwfm5rynl32l406xhbr7lg69r9wl8cjjn")))) (build-system gnu-build-system) (arguments `(#:test-target "test" #:parallel-tests? #f #:phases (modify-phases %standard-phases - (add-after 'unpack 'make-bit-reproducable - (lambda _ - (substitute* "src/version.c" - ((" VIM_VERSION_LONG_DATE") " VIM_VERSION_LONG") - ((" __DATE__") "") - ((" __TIME__") "")) - #t)) (add-after 'configure 'patch-config-files (lambda _ (substitute* "runtime/tools/mve.awk" @@ -116,15 +109,6 @@ configuration files.") ;; frequency of important bug fixes. (inherit vim) (name "vim-full") - (version "8.0.0600") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/vim/vim/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1ifaj0lfzqn06snkcd83l58m9r6lg7lk3wspx71k5ycvypyfi67s")))) (arguments `(#:configure-flags (list (string-append "--with-lua-prefix=" @@ -144,17 +128,6 @@ configuration files.") ,@(substitute-keyword-arguments (package-arguments vim) ((#:phases phases) `(modify-phases ,phases - (add-after 'build 'drop-failing-tests - (lambda _ - ;; These tests fail mysteriously with GUI enabled. - ;; https://github.com/vim/vim/issues/1460 - (substitute* "src/testdir/test_cmdline.vim" - (("call assert_equal\\(.+getcmd.+\\(\\)\\)") "")) - ;; FIXME: This test broke after GCC-5 core-updates merge. - ;; "Test_system_exmode line 7: Expected '0' but got '/'" - (substitute* "src/testdir/test_system.vim" - (("call assert_equal\\('0', a\\[0\\]\\)") "")) - #t)) (add-before 'check 'start-xserver (lambda* (#:key inputs #:allow-other-keys) ;; Some tests require an X server, but does not start one. From 53ac6977ac0bbd766d014d3b0aefea3958bbf54f Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Wed, 26 Jul 2017 15:48:12 +0300 Subject: [PATCH 0527/1227] gnu: tome4: Clean up snippet. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm (tome4)[source](snippet): Use a single 'substitute*' call instead of 'for-each'. Signed-off-by: Ludovic Courtès --- gnu/packages/games.scm | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 071311a751..d859a6398c 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4633,12 +4633,10 @@ Crowther & Woods, its original authors, in 1995. It has been known as "0v2qgdfpvdzd1bcbp9v8pfahj1bgczsq2d4xfhh5wg11jgjcwz03")) (modules '((guix build utils))) (snippet - '(for-each (lambda (file) - (substitute* file - (("#elif defined(__FreeBSD__)" line) - (string-append - line " || defined(__GNUC__)")))) - '("src/music.h" "src/tSDL.h"))))) + '(substitute* '("src/music.h" "src/tSDL.h") + (("#elif defined(__FreeBSD__)" line) + (string-append + line " || defined(__GNUC__)")))))) (build-system gnu-build-system) (native-inputs `(("unzip" ,unzip))) From a4078acf4ab7d694e86ffcaef2073d71e58508f1 Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Sat, 29 Jul 2017 17:06:55 +0200 Subject: [PATCH 0528/1227] gnu: erlang: Fix man-pages search path of 'erl -man'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/erlang-man-path.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/erlang.scm (erlang)[source]: Use it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/erlang.scm | 4 +++- gnu/packages/patches/erlang-man-path.patch | 24 ++++++++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/erlang-man-path.patch diff --git a/gnu/local.mk b/gnu/local.mk index 29dee73c46..9f0915ff6b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -579,6 +579,7 @@ dist_patch_DATA = \ %D%/packages/patches/emacs-fix-scheme-indent-function.patch \ %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \ %D%/packages/patches/emacs-source-date-epoch.patch \ + %D%/packages/patches/erlang-man-path.patch \ %D%/packages/patches/eudev-rules-directory.patch \ %D%/packages/patches/eudev-conflicting-declaration.patch \ %D%/packages/patches/evilwm-lost-focus-bug.patch \ diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm index 07f117e283..9658061f21 100644 --- a/gnu/packages/erlang.scm +++ b/gnu/packages/erlang.scm @@ -23,6 +23,7 @@ #:use-module (guix build-system gnu) #:use-module (guix download) #:use-module (guix packages) + #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) @@ -45,7 +46,8 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1b47jh549yywyp8fbs8a8j4ydr3zn982navzyqvlms6rg8vwb0pw")))) + "1b47jh549yywyp8fbs8a8j4ydr3zn982navzyqvlms6rg8vwb0pw")) + (patches (search-patches "erlang-man-path.patch")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl) diff --git a/gnu/packages/patches/erlang-man-path.patch b/gnu/packages/patches/erlang-man-path.patch new file mode 100644 index 0000000000..68fc9f45b4 --- /dev/null +++ b/gnu/packages/patches/erlang-man-path.patch @@ -0,0 +1,24 @@ +Patch originally from https://sources.debian.net/patches/erlang/1:20.0.1%2Bdfsg-2/man.patch/ +by Francois-Denis Gonthier . + +Patch description rewritten for Guix. + +This patch allows access to the man page with the 'erl -man' command +(Erlang manual pages are placed to /gnu/store/..erlang../share/man/ hierarchy +as other man pages.) + +--- a/erts/etc/common/erlexec.c ++++ b/erts/etc/common/erlexec.c +@@ -709,8 +709,10 @@ + error("-man not supported on Windows"); + #else + argv[i] = "man"; +- erts_snprintf(tmpStr, sizeof(tmpStr), "%s/man", rootdir); +- set_env("MANPATH", tmpStr); ++ /* ++ * Conform to erlang-manpages content. ++ */ ++ putenv(strsave("MANSECT=1:3:5:7")); + execvp("man", argv+i); + error("Could not execute the 'man' command."); + #endif From 313844d9dc098b44cd27dcfa1a26de306c9a8fe2 Mon Sep 17 00:00:00 2001 From: Theodoros Foradis Date: Tue, 25 Jul 2017 19:11:12 +0300 Subject: [PATCH 0529/1227] gnu: Add z3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (z3): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 7d4cb45b18..6566d750b2 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2017 Paul Garlick ;;; Copyright © 2017 ng0 ;;; Copyright © 2017 Ben Woodcroft +;;; Copyright © 2017 Theodoros Foradis ;;; ;;; This file is part of GNU Guix. ;;; @@ -3161,3 +3162,37 @@ as equations, scalars, vectors, and matrices.") (home-page "https://www.gnu.org/software/jacal/") (license license:gpl3+))) +(define-public z3 + (package + (name "z3") + (version "4.5.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/Z3Prover/z3/archive/z3-" + version ".tar.gz")) + (sha256 + (base32 + "032a5lvji2liwmc25jv52bdrhimqflvqbpg77ccaq1jykhiivbmf")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (zero? + (system* "python" "scripts/mk_make.py" + (string-append "--prefix=" + (assoc-ref outputs "out")))))) + (add-after 'configure 'change-dir + (lambda _ + (chdir "build") + #t))))) + (native-inputs + `(("python" ,python-2))) + (synopsis "Theorem prover") + (description "Z3 is a theorem prover and @dfn{satisfiability modulo +theories} (SMT) solver. It provides a C/C++ API.") + (home-page "https://github.com/Z3Prover/z3") + (license license:expat))) From 85cdab64c672c228069cd9d74d737de61db2f3e9 Mon Sep 17 00:00:00 2001 From: Theodoros Foradis Date: Sat, 29 Jul 2017 22:54:18 +0200 Subject: [PATCH 0530/1227] gnu: yosys: Add dependency on z3. * gnu/packages/fpga.scm (yosys): Add z3 to propagated-inputs. --- gnu/packages/fpga.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index 420d0aff28..2208775772 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Danny Milosavljevic -;;; Copyright © 2016 Theodoros Foradis +;;; Copyright © 2016, 2017 Theodoros Foradis ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,6 +36,7 @@ #:use-module (gnu packages graphviz) #:use-module (gnu packages libffi) #:use-module (gnu packages linux) + #:use-module (gnu packages maths) #:use-module (gnu packages perl) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gperf) @@ -198,6 +199,8 @@ For synthesis, the compiler generates netlists in the desired format.") ("psmisc" ,psmisc) ("xdot" ,xdot) ("abc" ,abc))) + (propagated-inputs + `(("z3" ,z3))) ; should be in path for yosys-smtbmc (home-page "http://www.clifford.at/yosys/") (synopsis "FPGA Verilog RTL synthesizer") (description "Yosys synthesizes Verilog-2005.") From c00c90ca37f98b9710fa51cffed3e3135880fd99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Sun, 30 Jul 2017 15:07:14 +0800 Subject: [PATCH 0531/1227] gnu: retroarch: Update to 1.6.3. * gnu/packages/games.scm (retroarch): Update to 1.6.3. --- gnu/packages/games.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index d859a6398c..069fa1d651 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1301,15 +1301,15 @@ either by Infocom or created using the Inform compiler.") (define-public retroarch (package (name "retroarch") - (version "1.6.1") + (version "1.6.3") (source (origin (method url-fetch) - (uri (string-append "https://github.com/libretro/RetroArch/archive/v" + (uri (string-append "https://github.com/libretro/RetroArch/archive/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "121h9j57gvjr155vvm4f7ybphfvqrdz2ib059kfi444xcxz19sl0")))) + (base32 "0a0w2sjizjs20376h7j1gfi0qccr8mhkl1cm6hi0c17hy1493l6d")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests From 686144e986518a27180ff9099c3e419a89e6101c Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Thu, 27 Jul 2017 17:11:33 +0100 Subject: [PATCH 0532/1227] gnu: Add memcached. * gnu/packages/databases.scm (memcached): New variable. --- gnu/packages/databases.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 8f5857ad7d..13efc5edca 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages gnupg) #:use-module (gnu packages jemalloc) #:use-module (gnu packages language) + #:use-module (gnu packages libevent) #:use-module (gnu packages linux) #:use-module (gnu packages man) #:use-module (gnu packages ncurses) @@ -290,6 +291,28 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.") mapping from string keys to string values.") (license license:bsd-3))) +(define-public memcached + (package + (name "memcached") + (version "1.5.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://memcached.org/files/memcached-" version ".tar.gz")) + (sha256 + (base32 "0chwc0g7wfvcad36z8pf2jbgygdnm9nm1l6pwjsn3d2b089gh0f0")))) + (build-system gnu-build-system) + (inputs + `(("libevent" ,libevent) + ("cyrus-sasl" ,cyrus-sasl))) + (home-page "https://memcached.org/") + (synopsis "In memory caching service") + (description "Memcached is a in memory key value store. It has a small +and generic API, and was originally intended for use with dynamic web +applications.") + (license license:bsd-3))) + (define-public mysql (package (name "mysql") From 119fdd0d0e33492ef2b563295fe9564258d51401 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Thu, 27 Jul 2017 17:13:49 +0100 Subject: [PATCH 0533/1227] services: Add memcached. * gnu/services/databases.scm (memcached-service-type, %memcached-accounts): New variables. (): New record type. (memcached-service-type): New procedures. * gnu/tests/databases.scm: New file. * doc/guix.texi (Database Services): Document the new memcached service. * gnu/local.mk (GNU_SYSTEM_MODULES): Add entry for tests/databases.scm. --- doc/guix.texi | 32 ++++++++++ gnu/local.mk | 1 + gnu/services/databases.scm | 73 ++++++++++++++++++++++ gnu/tests/databases.scm | 121 +++++++++++++++++++++++++++++++++++++ 4 files changed, 227 insertions(+) create mode 100644 gnu/tests/databases.scm diff --git a/doc/guix.texi b/doc/guix.texi index 3452850316..2beeaf9779 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -11724,6 +11724,38 @@ TCP port on which the database server listens for incoming connections. @end table @end deftp +@defvr {Scheme Variable} memcached-service-type +This is the service type for the @uref{https://memcached.org/, +Memcached} service, which provides a distributed in memory cache. The +value for the service type is a @code{memcached-configuration} object. +@end defvr + +@example +(service memcached-service-type) +@end example + +@deftp {Data Type} memcached-configuration +Data type representing the configuration of memcached. + +@table @asis +@item @code{memcached} (default: @code{memcached}) +The Memcached package to use. + +@item @code{interfaces} (default: @code{'("0.0.0.0")}) +Network interfaces on which to listen. + +@item @code{tcp-port} (default: @code{11211}) +Port on which to accept connections on, + +@item @code{udp-port} (default: @code{11211}) +Port on which to accept UDP connections on, a value of 0 will disable +listening on a UDP socket. + +@item @code{additional-options} (default: @code{'()}) +Additional command line options to pass to @code{memcached}. +@end table +@end deftp + @defvr {Scheme Variable} redis-service-type This is the service type for the @uref{https://redis.io/, Redis} key/value store, whose value is a @code{redis-configuration} object. diff --git a/gnu/local.mk b/gnu/local.mk index 9f0915ff6b..ff47777650 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -480,6 +480,7 @@ GNU_SYSTEM_MODULES = \ %D%/tests.scm \ %D%/tests/admin.scm \ %D%/tests/base.scm \ + %D%/tests/databases.scm \ %D%/tests/dict.scm \ %D%/tests/nfs.scm \ %D%/tests/install.scm \ diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm index 3ecc8aff78..3b64d0e075 100644 --- a/gnu/services/databases.scm +++ b/gnu/services/databases.scm @@ -25,6 +25,7 @@ #:use-module (gnu system shadow) #:use-module (gnu packages admin) #:use-module (gnu packages databases) + #:use-module (guix modules) #:use-module (guix records) #:use-module (guix gexp) #:use-module (ice-9 match) @@ -33,6 +34,16 @@ postgresql-service postgresql-service-type + memcached-service-type + + memcached-configuration + memcached-configuration? + memcached-configuration-memecached + memcached-configuration-interfaces + memcached-configuration-tcp-port + memcached-configuration-udp-port + memcached-configuration-additional-options + mysql-service mysql-service-type mysql-configuration @@ -176,6 +187,68 @@ and stores the database cluster in @var{data-directory}." (config-file config-file) (data-directory data-directory)))) + +;;; +;;; Memcached +;;; + +(define-record-type* + memcached-configuration make-memcached-configuration + memcached-configuration? + (memcached memcached-configuration-memcached ; + (default memcached)) + (interfaces memcached-configuration-interfaces + (default '("0.0.0.0"))) + (tcp-port memcached-configuration-tcp-port + (default 11211)) + (udp-port memcached-configuration-udp-port + (default 11211)) + (additional-options memcached-configuration-additional-options + (default '()))) + +(define %memcached-accounts + (list (user-group (name "memcached") (system? #t)) + (user-account + (name "memcached") + (group "memcached") + (system? #t) + (comment "Memcached server user") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin"))))) + +(define memcached-shepherd-service + (match-lambda + (($ memcached interfaces tcp-port udp-port + additional-options) + (with-imported-modules (source-module-closure + '((gnu build shepherd))) + (list (shepherd-service + (provision '(memcached)) + (documentation "Run the Memcached daemon.") + (requirement '(user-processes loopback)) + (modules '((gnu build shepherd))) + (start #~(make-forkexec-constructor + `(#$(file-append memcached "/bin/memcached") + "-l" #$(string-join interfaces ",") + "-p" #$(number->string tcp-port) + "-U" #$(number->string udp-port) + "--daemon" + "-P" "/var/run/memcached.pid" + "-u" "memcached" + ,#$@additional-options) + #:log-file "/var/log/memcached" + #:pid-file "/var/run/memcached.pid")) + (stop #~(make-kill-destructor)))))))) + +(define memcached-service-type + (service-type (name 'memcached) + (extensions + (list (service-extension shepherd-root-service-type + memcached-shepherd-service) + (service-extension account-service-type + (const %memcached-accounts)))) + (default-value (memcached-configuration)))) + ;;; ;;; MySQL. diff --git a/gnu/tests/databases.scm b/gnu/tests/databases.scm new file mode 100644 index 0000000000..310210c368 --- /dev/null +++ b/gnu/tests/databases.scm @@ -0,0 +1,121 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Christopher Baines +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests databases) + #:use-module (gnu tests) + #:use-module (gnu system) + #:use-module (gnu system file-systems) + #:use-module (gnu system shadow) + #:use-module (gnu system vm) + #:use-module (gnu services) + #:use-module (gnu services databases) + #:use-module (gnu services networking) + #:use-module (guix gexp) + #:use-module (guix store) + #:export (%test-memcached)) + +(define %memcached-os + (simple-operating-system + (dhcp-client-service) + (service memcached-service-type))) + +(define* (run-memcached-test #:optional (port 11211)) + "Run tests in %MEMCACHED-OS, forwarding PORT." + (define os + (marionette-operating-system + %memcached-os + #:imported-modules '((gnu services herd) + (guix combinators)))) + + (define vm + (virtual-machine + (operating-system os) + (port-forwardings `((11211 . ,port))))) + + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (srfi srfi-11) (srfi srfi-64) + (gnu build marionette) + (ice-9 rdelim)) + + (define marionette + (make-marionette (list #$vm))) + + (mkdir #$output) + (chdir #$output) + + (test-begin "memcached") + + ;; Wait for memcached to be up and running. + (test-eq "service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'memcached) + 'running!) + marionette)) + + (let* ((ai (car (getaddrinfo "localhost" + #$(number->string port)))) + (s (socket (addrinfo:fam ai) + (addrinfo:socktype ai) + (addrinfo:protocol ai))) + (key "testkey") + (value "guix")) + (connect s (addrinfo:addr ai)) + + (test-equal "set" + "STORED\r" + (begin + (simple-format s "set ~A 0 60 ~A\r\n~A\r\n" + key + (string-length value) + value) + (read-line s))) + + (test-equal "get" + (simple-format #f "VALUE ~A 0 ~A\r~A\r" + key + (string-length value) + value) + (begin + (simple-format s "get ~A\r\n" key) + (string-append + (read-line s) + (read-line s)))) + + (close-port s)) + + ;; There should be a log file in here. + (test-assert "log file" + (marionette-eval + '(file-exists? "/var/log/memcached") + marionette)) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "memcached-test" test)) + +(define %test-memcached + (system-test + (name "memcached") + (description "Connect to a running MEMCACHED server.") + (value (run-memcached-test)))) From fa65e84aab41dad64fcaf8d65b1496266fe30b27 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 26 Jul 2017 12:52:43 +0100 Subject: [PATCH 0534/1227] gnu: qemu: Build with support for Linux AIO Add libaio as an input, such that QEMU is built with support for Asynchronous I/O (AIO). * gnu/packages/virtualization.scm (qemu)[inputs]: Uncomment libaio. --- gnu/packages/virtualization.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index d999d16e37..0ac76a72d9 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -145,7 +145,7 @@ `(("alsa-lib" ,alsa-lib) ("attr" ,attr) ("glib" ,glib) - ;; ("libaio" ,libaio) + ("libaio" ,libaio) ("libattr" ,attr) ("libcap" ,libcap) ; virtfs support requires libcap & libattr ("libjpeg" ,libjpeg-8) From c918773a03ba54649b9cb702aacf7bc2d97a2e7a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jul 2017 12:40:55 +0200 Subject: [PATCH 0535/1227] gnu: ffmpeg: Update to 3.3.3. * gnu/packages/video.scm (ffmpeg): Update to 3.3.3. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 7f3f1ce8d6..0a551c74f4 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -580,14 +580,14 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).") (define-public ffmpeg (package (name "ffmpeg") - (version "3.3.2") + (version "3.3.3") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "11974vcfsy8w0i6f4lfwqmg80xkfybqw7vw6zzrcn5i6ncddx60r")))) + "07is8msrhxr1dk6vgwa192k2pl2a0in1h9w8f9cknlvbvhn01afj")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) From 9dab50179a221050fd40f0ecba9fa3a730a440d4 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jul 2017 14:14:52 +0200 Subject: [PATCH 0536/1227] gnu: perl: Add missing dependencies on Module::Install. Perl 5.26 and later does not provide this module. * gnu/packages/databases.scm (perl-sql-abstract)[native-inputs]: Add PERL-MODULE-INSTALL. * gnu/packages/perl.scm (perl-moosex-emulate-class-accessor-fast, perl-file-zglob, perl-object-signature, perl-test-utf8, perl-time-duration, perl-benchmark-timer, perl-class-accessor-grouped, perl-class-c3-componentised, perl-term-encoding)[native-inputs]: Likewise. * gnu/packages/web.scm (perl-http-parser-xs, perl-uri-template, perl-www-curl)[native-inputs]: Likewise. * gnu/packages/xml.scm (perl-xml-atom)[native-inputs]: Likewise. --- gnu/packages/databases.scm | 3 ++- gnu/packages/perl.scm | 22 ++++++++++++++++++---- gnu/packages/web.scm | 5 +++++ gnu/packages/xml.scm | 1 + 4 files changed, 26 insertions(+), 5 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 994b8499ff..773a539e57 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1066,7 +1066,8 @@ module, and nothing else.") "17sgwq3mvqjhv3b77cnvrq60xgp8harjhlnvpwmxc914rqc5ckaz")))) (build-system perl-build-system) (native-inputs - `(("perl-test-deep" ,perl-test-deep) + `(("perl-module-install" ,perl-module-install) + ("perl-test-deep" ,perl-test-deep) ("perl-test-exception" ,perl-test-exception) ("perl-test-warn" ,perl-test-warn))) (propagated-inputs diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e237dba127..b298becdc3 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -415,6 +415,8 @@ compiling the surrounding scope.") (base32 "1gl9ybm9hgia3ld5s11b7bv2p2hmx5rss5hxcfy6rmbzrjcnci01")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) ;; The optional input module Statistics::PointEstimation (from ;; Statistics-TTest) lists no license. (synopsis "Benchmarking with statistical confidence") @@ -790,7 +792,8 @@ the same mk_accessors interface.") "1zp74yv023q3macrf4rv3i82z8pkffqyhh7xk9xg8fbr63ikwqf4")))) (build-system perl-build-system) (native-inputs - `(("perl-test-exception" ,perl-test-exception))) + `(("perl-module-install" ,perl-module-install) + ("perl-test-exception" ,perl-test-exception))) (propagated-inputs `(("perl-class-xsaccessor" ,perl-class-xsaccessor) ("perl-module-runtime" ,perl-module-runtime) @@ -861,7 +864,8 @@ supporting the same interface, but using Class::C3 to do the hard work.") "1nzav8arxll0rya7r2vp032s3acliihbb9mjlfa13rywhh77bzvl")))) (build-system perl-build-system) (native-inputs - `(("perl-test-exception" ,perl-test-exception))) + `(("perl-module-install" ,perl-module-install) + ("perl-test-exception" ,perl-test-exception))) (propagated-inputs `(("perl-class-c3" ,perl-class-c3) ("perl-class-inspector" ,perl-class-inspector) @@ -3252,6 +3256,8 @@ shell.") (base32 "16v61rn0yimpv5kp6b20z2f1c93n5kpsyjvr0gq4w2dc43gfvc8w")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (home-page "http://search.cpan.org/dist/File-Zglob") (synopsis "Extended Unix style glob functionality") (description "@code{File::Zglob} provides a traditional Unix @code{glob} @@ -4544,7 +4550,8 @@ sentences.") "1lkn1h4sxr1483jicsgsgzclbfw63g2i2c3m4v4j9ar75yrb0kh8")))) (build-system perl-build-system) (native-inputs - `(("perl-test-exception" ,perl-test-exception))) + `(("perl-module-install" ,perl-module-install) + ("perl-test-exception" ,perl-test-exception))) (propagated-inputs `(("perl-moose" ,perl-moose))) (home-page "http://search.cpan.org/dist/MooseX-Emulate-Class-Accessor-Fast") @@ -5207,6 +5214,8 @@ subroutine, which you can call with a value to be tested against.") (base32 "0c8l7195bjvx0v6zmkgdnxvwg7yj2zq8hi7xd25a3iikd12dc4f6")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (home-page "http://search.cpan.org/dist/Object-Signature") (synopsis "Generate cryptographic signatures for objects") (description "Object::Signature is an abstract base class that you can @@ -6245,6 +6254,8 @@ processing in Perl code.") (base32 "1k6g4q7snxggv5fdqnzw29al4mwbwg0hl0skzfnczh508qiyfx7j")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (home-page "http://search.cpan.org/dist/Term-Encoding") (synopsis "Detect encoding of the current terminal") (description "Term::Encoding is a simple module to detect the encoding of @@ -7062,6 +7073,8 @@ from boxed blocks of test code.") (base32 "0yhvf735v334qqvp9zg7i66qyk6r4cbk5s2psv93d3fdd4bindzg")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (home-page "http://search.cpan.org/dist/Test-utf8") (synopsis "UTF-8 testing in Perl") (description "This module is a collection of tests useful for dealing with @@ -7540,7 +7553,8 @@ $object->TIEHASH are avoided.") "0klg33yzb7pr9ra76s6gj5k7nravqnw2lbh022x1xwlj92f43756")))) (build-system perl-build-system) (native-inputs - `(("perl-test-pod" ,perl-test-pod) + `(("perl-module-install" ,perl-module-install) + ("perl-test-pod" ,perl-test-pod) ("perl-test-pod-coverage" ,perl-test-pod-coverage))) (home-page "http://search.cpan.org/dist/Time-Duration") (synopsis "English expression of durations") diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 7baee03185..9c3373f8de 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2473,6 +2473,8 @@ supported.") (base32 "02d84xq1mm53c7jl33qyb7v5w4372vydp74z6qj0vc96wcrnhkkr")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (home-page "http://search.cpan.org/dist/HTTP-Parser-XS") (synopsis "Fast HTTP request parser") (description "HTTP::Parser::XS is a fast, primitive HTTP request/response @@ -3230,6 +3232,7 @@ methods for WebSocket URIs as it does for HTTP URIs.") (native-inputs `(("perl-test-pod-coverage" ,perl-test-pod-coverage) ("perl-test-pod" ,perl-test-pod) + ("perl-module-install" ,perl-module-install) ("perl-json" ,perl-json))) (home-page "http://search.cpan.org/dist/URI-Template") (synopsis "Object for handling URI templates") @@ -3253,6 +3256,8 @@ RFC 6570.") (build-system perl-build-system) (arguments '(#:tests? #f)) ;XXX: tests require network access + (native-inputs + `(("perl-module-install" ,perl-module-install))) (inputs `(("curl" ,curl))) (synopsis "Perl extension interface for libcurl") (description diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 28d11efdae..44fa48af8c 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -239,6 +239,7 @@ the @code{Graph} class and write it out in a specific file format.") (native-inputs `(("perl-datetime" ,perl-datetime) ;; TODO package: perl-datetime-format-atom + ("perl-module-install" ,perl-module-install) ("perl-xml-xpath" ,perl-xml-xpath))) (inputs `(("perl-class-data-inheritable" ,perl-class-data-inheritable) From 03317cbfc4e76cfe208cafaa9ba9a103bb2b33b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 30 Jul 2017 14:23:51 +0200 Subject: [PATCH 0537/1227] doc: Give an example of arguments for the 'run-vm.sh' script. Suggested by Oleg Pykhalov . * doc/guix.texi (Invoking guix system): Give an example of passing arguments to the 'run-vm.sh' script. --- doc/guix.texi | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 2beeaf9779..4d2c45e8a4 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -16472,7 +16472,13 @@ passed. @anchor{guix system vm} Build a virtual machine that contains the operating system declared in @var{file}, and return a script to run that virtual machine (VM). -Arguments given to the script are passed to QEMU. +Arguments given to the script are passed to QEMU as in the example +below, which enables networking and requests 1@tie{}GiB of RAM for the +emulated machine: + +@example +$ /gnu/store/@dots{}-run-vm.sh -m 1024 -net user +@end example The VM shares its store with the host system. From 75bddb13eb47ed798f6b5630e22d6b5adbd22227 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 30 Jul 2017 15:00:21 +0200 Subject: [PATCH 0538/1227] services: cuirass: Set 'GIT_SSL_CAINFO' and 'GIT_EXEC_PATH'. Reported by Ricardo Wurmus. * gnu/services/cuirass.scm (cuirass-shepherd-service): Pass #:environment-variables. --- gnu/services/cuirass.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index d27a2bbc44..73a30b2402 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -23,6 +23,7 @@ #:use-module (guix records) #:use-module (gnu packages admin) #:autoload (gnu packages ci) (cuirass) + #:autoload (gnu packages version-control) (git) #:use-module (gnu services) #:use-module (gnu services base) #:use-module (gnu services shepherd) @@ -105,6 +106,12 @@ #$@(if fallback? '("--fallback") '()) #$@(if (null? load-path) '() `("--load-path" ,(string-join load-path ":")))) + + #:environment-variables + (list "GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt" + (string-append "GIT_EXEC_PATH=" #$git + "/libexec/git-core")) + #:user #$user #:group #$group #:log-file #$log-file)) From 4892eb7c6a21416f3a18e18ca17984e2b66050ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 25 Jul 2017 15:27:58 +0200 Subject: [PATCH 0539/1227] services: openssh: Add 'authorized-keys' field. * gnu/services/ssh.scm ()[authorized-keys]: New field. (authorized-key-directory): New procedure. (openssh-config-file): Honor 'authorized-keys'. (openssh-activation): Use 'with-imported-modules'. Make /etc/ssh 755. Create /etc/ssh/authorized_keys.d. * doc/guix.texi (Networking Services): Document it. --- doc/guix.texi | 29 ++++++++++++++-- gnu/services/ssh.scm | 80 ++++++++++++++++++++++++++++++++++++-------- 2 files changed, 93 insertions(+), 16 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 4d2c45e8a4..962bdc17f9 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10203,7 +10203,10 @@ shell daemon, @command{sshd}. Its value must be an (service openssh-service-type (openssh-configuration (x11-forwarding? #t) - (permit-root-login 'without-password))) + (permit-root-login 'without-password) + (authorized-keys + `(("alice" ,(local-file "alice.pub")) + ("bob" ,(local-file "bob.pub")))))) @end example See below for details about @code{openssh-configuration}. @@ -10278,8 +10281,30 @@ server. Alternately, one can specify the @command{sftp-server} command: (service openssh-service-type (openssh-configuration (subsystems - '(("sftp" ,(file-append openssh "/libexec/sftp-server")))))) + `(("sftp" ,(file-append openssh "/libexec/sftp-server")))))) @end example + +@item @code{authorized-keys} (default: @code{'()}) +@cindex authorized keys, SSH +@cindex SSH authorized keys +This is the list of authorized keys. Each element of the list is a user +name followed by one or more file-like objects that represent SSH public +keys. For example: + +@example +(openssh-configuration + (authorized-keys + `(("rekado" ,(local-file "rekado.pub")) + ("chris" ,(local-file "chris.pub")) + ("root" ,(local-file "rekado.pub") ,(local-file "chris.pub"))))) +@end example + +@noindent +registers the specified public keys for user accounts @code{rekado}, +@code{chris}, and @code{root}. + +Note that this does @emph{not} interfere with the use of +@file{~/.ssh/authorized_keys}. @end table @end deftp diff --git a/gnu/services/ssh.scm b/gnu/services/ssh.scm index 2a6c8d45c2..08635af16d 100644 --- a/gnu/services/ssh.scm +++ b/gnu/services/ssh.scm @@ -28,6 +28,7 @@ #:use-module (gnu system shadow) #:use-module (guix gexp) #:use-module (guix records) + #:use-module (guix modules) #:use-module (srfi srfi-26) #:use-module (ice-9 match) #:export (lsh-configuration @@ -295,7 +296,11 @@ The other options should be self-descriptive." (default #t)) ;; list of two-element lists (subsystems openssh-configuration-subsystems - (default '(("sftp" "internal-sftp"))))) + (default '(("sftp" "internal-sftp")))) + + ;; list of user-name/file-like tuples + (authorized-keys openssh-authorized-keys + (default '()))) (define %openssh-accounts (list (user-group (name "sshd") (system? #t)) @@ -309,22 +314,64 @@ The other options should be self-descriptive." (define (openssh-activation config) "Return the activation GEXP for CONFIG." - #~(begin - (use-modules (guix build utils)) - (mkdir-p "/etc/ssh") - (mkdir-p (dirname #$(openssh-configuration-pid-file config))) + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) - (define (touch file-name) - (call-with-output-file file-name (const #t))) + (define (touch file-name) + (call-with-output-file file-name (const #t))) - (let ((lastlog "/var/log/lastlog")) - (when #$(openssh-configuration-print-last-log? config) - (unless (file-exists? lastlog) - (touch lastlog)))) + ;; Make sure /etc/ssh can be read by the 'sshd' user. + (mkdir-p "/etc/ssh") + (chmod "/etc/ssh" #o755) + (mkdir-p (dirname #$(openssh-configuration-pid-file config))) - ;; Generate missing host keys. - (system* (string-append #$(openssh-configuration-openssh config) - "/bin/ssh-keygen") "-A"))) + ;; 'sshd' complains if the authorized-key directory and its parents + ;; are group-writable, which rules out /gnu/store. Thus we copy the + ;; authorized-key directory to /etc. + (catch 'system-error + (lambda () + (delete-file-recursively "/etc/authorized_keys.d")) + (lambda args + (unless (= ENOENT (system-error-errno args)) + (apply throw args)))) + (copy-recursively #$(authorized-key-directory + (openssh-authorized-keys config)) + "/etc/ssh/authorized_keys.d") + + (chmod "/etc/ssh/authorized_keys.d" #o555) + + (let ((lastlog "/var/log/lastlog")) + (when #$(openssh-configuration-print-last-log? config) + (unless (file-exists? lastlog) + (touch lastlog)))) + + ;; Generate missing host keys. + (system* (string-append #$(openssh-configuration-openssh config) + "/bin/ssh-keygen") "-A")))) + +(define (authorized-key-directory keys) + "Return a directory containing the authorized keys specified in KEYS, a list +of user-name/file-like tuples." + (define build + (with-imported-modules (source-module-closure '((guix build utils))) + #~(begin + (use-modules (ice-9 match) (srfi srfi-26) + (guix build utils)) + + (mkdir #$output) + (for-each (match-lambda + ((user keys ...) + (let ((file (string-append #$output "/" user))) + (call-with-output-file file + (lambda (port) + (for-each (lambda (key) + (call-with-input-file key + (cut dump-port <> port))) + keys)))))) + '#$keys)))) + + (computed-file "openssh-authorized-keys" build)) (define (openssh-config-file config) "Return the sshd configuration file corresponding to CONFIG." @@ -367,6 +414,11 @@ The other options should be self-descriptive." (format port "PrintLastLog ~a\n" #$(if (openssh-configuration-print-last-log? config) "yes" "no")) + + ;; Add '/etc/authorized_keys.d/%u', which we populate. + (format port "AuthorizedKeysFile \ + .ssh/authorized_keys .ssh/authorized_keys2 /etc/ssh/authorized_keys.d/%u\n") + (for-each (match-lambda ((name command) (format port "Subsystem\t~a\t~a\n" name command))) From 1398a43816011c435fb6723154dbf1d3414b5b3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 30 Jul 2017 16:03:43 +0200 Subject: [PATCH 0540/1227] services: openssh: Extensions provide extra authorized keys. * gnu/services/ssh.scm (extend-openssh-authorized-keys): New procedure. (openssh-service-type)[compose, extend]: New fields. * doc/guix.texi (Networking Services): Document the extension. --- doc/guix.texi | 12 ++++++++++++ gnu/services/ssh.scm | 10 ++++++++++ 2 files changed, 22 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 962bdc17f9..6b4b19d0cf 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10210,6 +10210,15 @@ shell daemon, @command{sshd}. Its value must be an @end example See below for details about @code{openssh-configuration}. + +This service can be extended with extra authorized keys, as in this +example: + +@example +(service-extension openssh-service-type + (const `(("charlie" + ,(local-file "charlie.pub"))))) +@end example @end deffn @deftp {Data Type} openssh-configuration @@ -10303,6 +10312,9 @@ keys. For example: registers the specified public keys for user accounts @code{rekado}, @code{chris}, and @code{root}. +Additional authorized keys can be specified @i{via} +@code{service-extension}. + Note that this does @emph{not} interfere with the use of @file{~/.ssh/authorized_keys}. @end table diff --git a/gnu/services/ssh.scm b/gnu/services/ssh.scm index 08635af16d..697bb1b82e 100644 --- a/gnu/services/ssh.scm +++ b/gnu/services/ssh.scm @@ -29,6 +29,7 @@ #:use-module (guix gexp) #:use-module (guix records) #:use-module (guix modules) + #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (ice-9 match) #:export (lsh-configuration @@ -450,6 +451,13 @@ of user-name/file-like tuples." #:allow-empty-passwords? (openssh-configuration-allow-empty-passwords? config)))) +(define (extend-openssh-authorized-keys config keys) + "Extend CONFIG with the extra authorized keys listed in KEYS." + (openssh-configuration + (inherit config) + (authorized-keys + (append (openssh-authorized-keys config) keys)))) + (define openssh-service-type (service-type (name 'openssh) (extensions @@ -461,6 +469,8 @@ of user-name/file-like tuples." openssh-activation) (service-extension account-service-type (const %openssh-accounts)))) + (compose concatenate) + (extend extend-openssh-authorized-keys) (default-value (openssh-configuration)))) From 228a3982df157847554abc9d0831d687264d8ebd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 30 Jul 2017 17:19:42 +0200 Subject: [PATCH 0541/1227] git-download: Remove call to 'canonicalize-path'. * guix/git-download.scm (git-predicate): Remove call to 'canonicalize-path' since this could lead to discrepancies. For instance it broke 'make update-guix-package' since it passes a non-canonical directory name. --- guix/git-download.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/guix/git-download.scm b/guix/git-download.scm index 5019a3e62f..7397cbe7f5 100644 --- a/guix/git-download.scm +++ b/guix/git-download.scm @@ -191,7 +191,12 @@ absolute file name and STAT is the result of 'lstat'." result))) vlist-null files)) - (prefix-length (+ 1 (string-length (canonicalize-path directory)))) + + ;; Note: For this to work we must *not* call 'canonicalize-path' on + ;; DIRECTORY or we would get discrepancies of the returned lambda is + ;; called with a non-canonical file name. + (prefix-length (+ 1 (string-length directory))) + (status (close-pipe pipe))) (and (zero? status) (lambda (file stat) From 1c0ee79d4dc74f1001644dbb610075dc95dcf102 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 30 Jul 2017 17:58:04 +0200 Subject: [PATCH 0542/1227] gnu: guix: Update snapshot. * gnu/packages/package-management.scm (guix): Update to 228a398. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 3650b5d957..835c0b291b 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -76,8 +76,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "0.13.0") - (commit "f1ddfe4f14b8a8d963f2f3e68d800b745696246d") - (revision 4)) + (commit "228a3982df157847554abc9d0831d687264d8ebd") + (revision 5)) (package (name "guix") @@ -93,7 +93,7 @@ (commit commit))) (sha256 (base32 - "11yjsn957igh6migxrnicdqrxc76skz5r0l7hfnm5gp45my1kd9p")) + "1gnc1w9kby7db9jih4xwrhrv0j57zy09lmr85gbmcqna6bx3wypw")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments From c91171627b5e8351c1b0251cc64ddfea2d952869 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 30 Jul 2017 21:36:18 +0200 Subject: [PATCH 0543/1227] gnu: guix: Search .go files of dependencies in lib/guile/. * gnu/packages/package-management.scm (guix)[arguments]: Add (srfi srfi-26) to #:modules. Introduce 'gopath', distinct from 'path'. --- gnu/packages/package-management.scm | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 835c0b291b..5c0e5a9c7d 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -121,6 +121,7 @@ #:modules ((guix build gnu-build-system) (guix build utils) + (srfi srfi-26) (ice-9 popen) (ice-9 rdelim)) @@ -190,20 +191,28 @@ (git (assoc-ref inputs "guile-git")) (ssh (assoc-ref inputs "guile-ssh")) (gnutls (assoc-ref inputs "gnutls")) + (deps (list json gnutls git ssh)) (effective (read-line (open-pipe* OPEN_READ (string-append guile "/bin/guile") "-c" "(display (effective-version))"))) - (path (string-append - json "/share/guile/site/" effective ":" - git "/share/guile/site/" effective ":" - ssh "/share/guile/site/" effective ":" - gnutls "/share/guile/site/" effective))) + (path (string-join + (map (cut string-append <> + "/share/guile/site/" + effective) + deps) + ":")) + (gopath (string-join + (map (cut string-append <> + "/lib/guile/" effective + "/site-ccache") + deps) + ":"))) (wrap-program (string-append out "/bin/guix") `("GUILE_LOAD_PATH" ":" prefix (,path)) - `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,path))) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,gopath))) #t)))))) (native-inputs `(("pkg-config" ,pkg-config) From 706448b193406fcc50535d722196ee9bb0d99934 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 30 Jul 2017 22:31:10 +0200 Subject: [PATCH 0544/1227] gnu: automake: Add 1.15.1. * gnu/packages/autotools.scm (automake/latest): New variable. --- gnu/packages/autotools.scm | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm index 4dbe7b2a21..30a9aac824 100644 --- a/gnu/packages/autotools.scm +++ b/gnu/packages/autotools.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012 Nikita Karetnikov -;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2015 Mathieu Lirzin ;;; Copyright © 2014 Manolis Fragkiskos Ragkousis ;;; Copyright © 2015, 2017 Mark H Weaver @@ -237,6 +237,7 @@ output is indexed in many ways to simplify browsing.") (license gpl3+))) (define-public automake + ;; Replace with 'automake/latest' on the next rebuild cycle. (package (name "automake") (version "1.15") @@ -315,6 +316,22 @@ intuitive format and then Automake works with Autoconf to produce a robust Makefile, simplifying the entire process for the developer.") (license gpl2+))) ; some files are under GPLv3+ + +(define-public automake/latest + ;; Merge with 'automake' on the next rebuild cycle. + (package + (inherit automake) + (version "1.15.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/automake/automake-" + version ".tar.xz")) + (sha256 + (base32 + "1bzd9g32dfm4rsbw93ld9x7b5nc1y6i4m6zp032qf1i28a8s6sxg")) + (patches + (search-patches "automake-skip-amhello-tests.patch")))))) + (define-public libtool (package (name "libtool") From 13d73c42f9c86f59525523112e3726c75faf4261 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 15:05:28 -0400 Subject: [PATCH 0545/1227] gnu: Add perl-file-sharedir-dist. * gnu/packages/perl.scm (perl-file-sharedir-dist): New variable. --- gnu/packages/perl.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index b298becdc3..4b038a4837 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2017 Marius Bakke ;;; Copyright © 2017 Adriano Peluso ;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; Copyright © 2017 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; @@ -3119,6 +3120,25 @@ correct directory, you can use File::ShareDir to find your files again after the installation.") (license (package-license perl)))) +(define-public perl-file-sharedir-dist + (package + (name "perl-file-sharedir-dist") + (version "0.04") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/P/PL/PLICEASE/" + "File-ShareDir-Dist-" version ".tar.gz")) + (sha256 + (base32 + "028vnjw3fdmwk540w3b07cmr93ap0s13ni2b4c7iv56mgyy6gfc1")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/File-ShareDir-Dist") + (synopsis "Locate per-dist shared files") + (description "File::ShareDir::Dist finds share directories for +distributions. It is a companion module to File::ShareDir.") + (license (package-license perl)))) + (define-public perl-file-sharedir-install (package (name "perl-file-sharedir-install") From df4fc5217fb6d1f2bd18e20f237393f08c6e9e4a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:43:08 -0400 Subject: [PATCH 0546/1227] gnu: Add perl-importer. * gnu/packages/perl.scm (perl-importer): New variable. --- gnu/packages/perl.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 4b038a4837..d24eec3260 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3446,6 +3446,29 @@ merged.") that may contain multiple values per key, inspired by MultiDict of WebOb.") (license (package-license perl)))) +(define-public perl-importer + (package + (name "perl-importer") + (version "0.024") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/Importer-" + version ".tar.gz")) + (sha256 + (base32 + "0mx50xds7iphxykbr9b0w2qki92l3gpagsdchm4ncsrnxc67c68x")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Importer/") + (synopsis "Alternative but compatible interface to modules that export symbols") + (description "This module acts as a layer between Exporter and modules which +consume exports. It is feature-compatible with Exporter, plus some much needed +extras. You can use this to import symbols from any exporter that follows +Exporters specification. The exporter modules themselves do not need to use or +inherit from the Exporter module, they just need to set @EXPORT and/or other +variables.") + (license (package-license perl)))) + (define-public perl-import-into (package (name "perl-import-into") From b51f02a94939e7f8a3d85b24f45fc0ea75d7c979 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:44:08 -0400 Subject: [PATCH 0547/1227] gnu: Add perl-specio. * gnu/packages/perl.scm (perl-specio): New variable. --- gnu/packages/perl.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d24eec3260..c8ea0fd5a5 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5868,6 +5868,38 @@ compact.") arrays by one or multiple calculated keys.") (license (package-license perl)))) +(define-public perl-specio + (package + (name "perl-specio") + (version "0.38") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/D/DR/DROLSKY/" + "Specio-" version ".tar.gz")) + (sha256 + (base32 + "1s5xd9awwrzc94ymimjkxqs6jq513wwlmwwarxaklvg2hk4lps0l")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-devel-stacktrace" ,perl-devel-stacktrace) + ("perl-eval-closure" ,perl-eval-closure) + ("perl-module-runtime" ,perl-module-runtime) + ("perl-mro-compat" ,perl-mro-compat) + ("perl-role-tiny" ,perl-role-tiny) + ("perl-test-fatal" ,perl-test-fatal) + ("perl-test-needs" ,perl-test-needs))) + (home-page "http://search.cpan.org/dist/Specio/") + (synopsis "Classes for representing type constraints and coercion") + (description "The Specio distribution provides classes for representing type +constraints and coercion, along with syntax sugar for declaring them. Note that +this is not a proper type system for Perl. Nothing in this distribution will +magically make the Perl interpreter start checking a value's type on assignment +to a variable. In fact, there's no built-in way to apply a type to a variable at +all. Instead, you can explicitly check a value against a type, and optionally +coerce values to that type.") + (license artistic2.0))) + (define-public perl-spiffy (package (name "perl-spiffy") From 6d6646f9326a8c5c853cd41dc74938b899f5cbd5 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:44:54 -0400 Subject: [PATCH 0548/1227] gnu: Add perl-term-table. * gnu/packages/perl.scm (perl-term-table): New variable. --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c8ea0fd5a5..e3dee0f9b2 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6431,6 +6431,27 @@ other terminal related features, including retrieval/modification of the screen size, and retrieval/modification of the control characters.") (license (package-license perl)))) +(define-public perl-term-table + (package + (name "perl-term-table") + (version "0.008") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/Term-Table-" + version ".tar.gz")) + (sha256 + (base32 + "0gi4lyvs6n8y6hjwmflfpamfl65y7mb1g39zi0rx35nclj8xb370")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-importer" ,perl-importer))) + (home-page "http://search.cpan.org/dist/Term-Table/") + (synopsis "Format a header and rows into a table") + (description "This module is able to generically format rows of data +into tables.") + (license (package-license perl)))) + (define-public perl-test-base (package (name "perl-test-base") From 721fd1779766deb350f5d9b114d6ba167523b9ec Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:49:22 -0400 Subject: [PATCH 0549/1227] gnu: Add perl-sub-info. * gnu/packages/perl.scm (perl-sub-info): New variable. --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e3dee0f9b2..bddcab57d5 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6092,6 +6092,27 @@ renaming exports, if they try to use them.") references.") (license (package-license perl)))) +(define-public perl-sub-info + (package + (name "perl-sub-info") + (version "0.002") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/Sub-Info-" + version ".tar.gz")) + (sha256 + (base32 + "1snhrmc6gpw2zjnj7zvvqj69mlw711bxah6kk4dg5vxxjvb5cc7a")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-importer" ,perl-importer))) + (home-page "http://search.cpan.org/dist/Sub-Info/") + (synopsis "Tool to inspect subroutines") + (description "This package provides tools for inspecting subroutines +in Perl.") + (license (package-license perl)))) + (define-public perl-sub-install (package (name "perl-sub-install") From 9ad78b2c21738e853986281a5051158fe39d8435 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:49:57 -0400 Subject: [PATCH 0550/1227] gnu: Add perl-test2-bundle-extended. * gnu/packages/perl.scm (perl-test2-bundle-extended): New variable. --- gnu/packages/perl.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index bddcab57d5..54f57a7cb7 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6473,6 +6473,34 @@ screen size, and retrieval/modification of the control characters.") into tables.") (license (package-license perl)))) +(define-public perl-test2-bundle-extended + (package + (name "perl-test2-bundle-extended") + (version "0.000072") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/Test2-Suite-" + version ".tar.gz")) + (sha256 + (base32 + "0hgd6n29qjh1pwqvbglm2kb852yqshmixqqjhsr2kvvibdr58qpf")))) + (build-system perl-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-env + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1")))))) + (propagated-inputs + `(("perl-importer" ,perl-importer) + ("perl-term-table" ,perl-term-table) + ("perl-sub-info" ,perl-sub-info))) + (home-page "http://search.cpan.org/~exodist/Test2-Suite/lib/Test2/Bundle/Extended.pm") + (synopsis "Full set of tools for Test2::Suite") + (description "This package provides a rich set of tools, plugins, bundles, +etc built upon the Test2 testing library.") + (license (package-license perl)))) + (define-public perl-test-base (package (name "perl-test-base") From a4d6a95793b2c98fb11908d6dec85532d6df5613 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:51:38 -0400 Subject: [PATCH 0551/1227] gnu: Add perl-test2-plugin-nowarnings. * gnu/packages/perl.scm (perl-test2-plugin-nowarnings): New variable. --- gnu/packages/perl.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 54f57a7cb7..26ff0458fb 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6501,6 +6501,28 @@ into tables.") etc built upon the Test2 testing library.") (license (package-license perl)))) +(define-public perl-test2-plugin-nowarnings + (package + (name "perl-test2-plugin-nowarnings") + (version "0.06") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/D/DR/DROLSKY/Test2-Plugin-NoWarnings-" + version ".tar.gz")) + (sha256 + (base32 + "002qk6qsm0l6r2kaxywvc38w0yf0mlavgywq8li076pn6kcw3242")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-test2-bundle-extended" ,perl-test2-bundle-extended))) + (home-page "http://search.cpan.org/dist/Test2-Plugin-NoWarnings/") + (synopsis "Fail if tests warn") + (description "Loading this plugin causes your tests to fail if there any +warnings while they run. Each warning generates a new failing test and the +warning content is outputted via diag.") + (license (package-license perl)))) + (define-public perl-test-base (package (name "perl-test-base") From 00ace8839690e56e9095969cf7c21f288322072e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:53:42 -0400 Subject: [PATCH 0552/1227] gnu: Add perl-test-file-sharedir-dist. * gnu/packages/perl.scm (perl-test-file-sharedir-dist): New variable. --- gnu/packages/perl.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 26ff0458fb..714c111392 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6762,6 +6762,32 @@ Test::Exception. It does much less, but should allow greater flexibility in testing exception-throwing code with about the same amount of typing.") (license (package-license perl)))) +(define-public perl-test-file-sharedir-dist + (package + (name "perl-test-file-sharedir-dist") + (version "1.001002") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/K/KE/KENTNL/" + "Test-File-ShareDir-" version ".tar.gz")) + (sha256 + (base32 + "1bbs6cx69wcinq77gif4i4pmrj8a7lwb92sgvvxzrwmjnk5lfdmk")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-class-tiny" ,perl-class-tiny) + ("perl-file-copy-recursive" ,perl-file-copy-recursive) + ("perl-file-sharedir" ,perl-file-sharedir) + ("perl-path-tiny" ,perl-path-tiny) + ("perl-scope-guard" ,perl-scope-guard) + ("perl-test-fatal" ,perl-test-fatal))) + (home-page "https://github.com/kentnl/Test-File-ShareDir") + (synopsis "Dist oriented ShareDir tester") + (description "This module creates a Fake ShareDir for your modules +for testing.") + (license (package-license perl)))) + (define-public perl-test-files (package (name "perl-test-files") From ccb38cdc8dd4d268bb345f31cfb98a7629886610 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 17:54:01 -0400 Subject: [PATCH 0553/1227] gnu: Add perl-params-validationcompiler. * gnu/packages/perl.scm (perl-params-validationcompiler): New variable. --- gnu/packages/perl.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 714c111392..e68b2630ed 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5485,6 +5485,36 @@ checking parameters easier.") function call parameters to an arbitrary level of specificity.") (license artistic2.0))) +(define-public perl-params-validationcompiler + (package + (name "perl-params-validationcompiler") + (version "0.24") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/D/DR/DROLSKY/" + "Params-ValidationCompiler-" version ".tar.gz")) + (sha256 + (base32 + "11s29wd7gci4c7gcksxw7pzxfzganvr8x4f1dsww4676p93kg5m8")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-without-module" ,perl-test-without-module) + ("perl-test2-bundle-extended" ,perl-test2-bundle-extended) + ("perl-test2-plugin-nowarnings" ,perl-test2-plugin-nowarnings))) + (propagated-inputs + `(("perl-eval-closure" ,perl-eval-closure) + ("perl-exception-class" ,perl-exception-class) + ("perl-specio" ,perl-specio))) + (home-page "https://github.com/houseabsolute/Params-ValidationCompiler") + (synopsis "Build an optimized subroutine parameter validator") + (description "This module creates a customized, highly efficient +parameter checking subroutine. It can handle named or positional +parameters, and can return the parameters as key/value pairs or a list +of values. In addition to type checks, it also supports parameter +defaults, optional parameters, and extra \"slurpy\" parameters.") + (license artistic2.0))) + (define-public perl-par-dist (package (name "perl-par-dist") From ed9543c0edc4e0e969acc5e06bf9df00b735dbed Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:59:02 -0400 Subject: [PATCH 0554/1227] gnu: perl-cpan-meta-check: Update to 0.014. * gnu/packages/perl.scm (perl-cpan-meta-check): Update to 0.014. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e68b2630ed..8a9feb86a4 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1314,7 +1314,7 @@ the caller.") (define-public perl-cpan-meta-check (package (name "perl-cpan-meta-check") - (version "0.011") + (version "0.014") (source (origin (method url-fetch) @@ -1322,7 +1322,7 @@ the caller.") "CPAN-Meta-Check-" version ".tar.gz")) (sha256 (base32 - "0nxi0xhhd3dwhgri3l8z8gpz2ibvhm5k7jjls8xmnlh0v84p04kh")))) + "07rmdbz1rbnb7w33vswn1wixlyh947sqr93xrvcph1hwzhmmg818")))) (build-system perl-build-system) (native-inputs `(("perl-test-deep" ,perl-test-deep))) (propagated-inputs `(("perl-cpan-meta" ,perl-cpan-meta))) From 1c0c608566e21c00f6df910d67100312934194d9 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:49:54 -0400 Subject: [PATCH 0555/1227] gnu: perl-file-sharedir: Update to 1.104. * gnu/packages/perl.scm (perl-file-sharedir): Update to 1.104. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 8a9feb86a4..e0af46bbcd 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3096,7 +3096,7 @@ accepts wildcards, * and ?, as arguments for file names.") (define-public perl-file-sharedir (package (name "perl-file-sharedir") - (version "1.102") + (version "1.104") (source (origin (method url-fetch) @@ -3104,7 +3104,7 @@ accepts wildcards, * and ?, as arguments for file names.") "File-ShareDir-" version ".tar.gz")) (sha256 (base32 - "04blqn4cms9zjmhlfvwyx6mrglaaq1mmy4xwv7xqf9c8fjwk8wvw")))) + "1bqwhk3qfg60bkpi5b83bh93sng8jx20i3ka5sixc0prrppjidh7")))) (build-system perl-build-system) (native-inputs `(("perl-file-sharedir-install" ,perl-file-sharedir-install))) From 7ab1833598958f3a1d584fd7bedf7dce158a5b7a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:50:16 -0400 Subject: [PATCH 0556/1227] gnu: perl-file-sharedir-install: Update to 0.11. * gnu/packages/perl.scm (perl-file-sharedir-install): Update to 0.11. [native-inputs]: Add perl-module-build. --- gnu/packages/perl.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e0af46bbcd..c3bb55d737 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3142,16 +3142,18 @@ distributions. It is a companion module to File::ShareDir.") (define-public perl-file-sharedir-install (package (name "perl-file-sharedir-install") - (version "0.10") + (version "0.11") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/G/GW/GWYN/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "File-ShareDir-Install-" version ".tar.gz")) (sha256 (base32 - "1xz60bi7x8755lq24rx7y1jkyk3icssn7s55z665mysdxhfzg2kh")))) + "1j0cw1aq9fdv9kl1a6fnfa4zihsvmcqzy9sb0xk0i9pyx5r8ggrj")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build))) (home-page "http://search.cpan.org/dist/File-ShareDir-Install") (synopsis "Install shared files") (description "File::ShareDir::Install allows you to install read-only data From 34048030573fc502f536669574087c6c6cd44d2d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:34:03 -0400 Subject: [PATCH 0557/1227] gnu: perl-datetime: Update to 1.43. * gnu/packages/perl.scm (perl-datetime): Update to 1.43. [native-inputs]: Add perl-cpan-meta-check. [propagated-inputs]: Add perl-file-sharedir. --- gnu/packages/perl.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c3bb55d737..703891f831 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1793,7 +1793,7 @@ hours, minutes, seconds, and time zones.") (define-public perl-datetime (package (name "perl-datetime") - (version "1.18") + (version "1.43") (source (origin (method url-fetch) @@ -1801,15 +1801,17 @@ hours, minutes, seconds, and time zones.") "DateTime-" version ".tar.gz")) (sha256 (base32 - "0fli1ls298qa8nfki15myxqqqfpxvslxk4j5r3vjk577wfgjrnms")))) + "0xgrcqs7zza7646g81j54z3fcxb8rw11ynlfm02afr436lgfnfql")))) (build-system perl-build-system) (native-inputs - `(("perl-module-build" ,perl-module-build) + `(("perl-cpan-meta-check" ,perl-cpan-meta-check) + ("perl-module-build" ,perl-module-build) ("perl-test-fatal" ,perl-test-fatal) ("perl-test-warnings" ,perl-test-warnings))) (propagated-inputs `(("perl-datetime-locale" ,perl-datetime-locale) ("perl-datetime-timezone" ,perl-datetime-timezone) + ("perl-file-sharedir" ,perl-file-sharedir) ("perl-params-validate" ,perl-params-validate) ("perl-try-tiny" ,perl-try-tiny))) (home-page "http://search.cpan.org/dist/DateTime") From d388e4e2929c24389c15c7a4f6f64432bb6b203a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:34:27 -0400 Subject: [PATCH 0558/1227] gnu: perl-datetime-set: Update to 0.3900. * gnu/packages/perl.scm (perl-datetime-set): Update to 0.3900. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 703891f831..a6773737a4 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1848,7 +1848,7 @@ precise.") (define-public perl-datetime-set (package (name "perl-datetime-set") - (version "0.3400") + (version "0.3900") (source (origin (method url-fetch) @@ -1856,7 +1856,7 @@ precise.") "DateTime-Set-" version ".tar.gz")) (sha256 (base32 - "1b27699zkj68w5ll9chjhs52vmf39f9via6x5r5844as30qh9zxb")))) + "0ih9pi6myg5i26hjpmpzqn58s0yljl2qxdd6gzpy9zda4hwirx4l")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build))) From ff3034de5d74b40c87d5f8b23868bac4eb74f7a8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:34:51 -0400 Subject: [PATCH 0559/1227] gnu: perl-datetime-event-local: Update to 0.13. * gnu/packages/perl.scm (perl-datetime-event-local): Update to 0.13. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index a6773737a4..aef8c46595 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1875,7 +1875,7 @@ within a time range.") (define-public perl-datetime-event-ical (package (name "perl-datetime-event-ical") - (version "0.12") + (version "0.13") (source (origin (method url-fetch) @@ -1883,7 +1883,7 @@ within a time range.") "DateTime-Event-ICal-" version ".tar.gz")) (sha256 (base32 - "1rfrjhczfmasf7aaz8rfd89vhwjj2nkxlnirxxrmy75z10nmrpjk")))) + "1skmykxbrf98ldi72d5s1v6228gfdr5iy4y0gpl0xwswxy247njk")))) (build-system perl-build-system) (propagated-inputs `(("perl-datetime" ,perl-datetime) From dc8e21110abffe9e1e28a0cf9e956c9764333325 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:35:16 -0400 Subject: [PATCH 0560/1227] gnu: perl-datetime-event-recurrence: Update to 0.19. * gnu/packages/perl.scm (perl-datetime-event-recurrence): Update to 0.19. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index aef8c46595..e0c900a433 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1897,7 +1897,7 @@ create DateTime::Set objects for RFC 2445 style recurrences.") (define-public perl-datetime-event-recurrence (package (name "perl-datetime-event-recurrence") - (version "0.16") + (version "0.19") (source (origin (method url-fetch) @@ -1905,7 +1905,7 @@ create DateTime::Set objects for RFC 2445 style recurrences.") "DateTime-Event-Recurrence-" version ".tar.gz")) (sha256 (base32 - "02c6ky3k26r0c8r87rcsd8gbn7rd6j2pylryin8pllnrdh9f0wiq")))) + "19dms2vg9hvfx80p85m8gkn2ww0yxjrjn8qsr9k7f431lj4qfh7r")))) (build-system perl-build-system) (propagated-inputs `(("perl-datetime" ,perl-datetime) From 9e5df71e7dbd2a0817c66b42a141db82f29cfaf9 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:36:03 -0400 Subject: [PATCH 0561/1227] gnu: perl-datetime-format-flexible: Update to 0.28. * gnu/packages/perl.scm (perl-datetime-format-flexible): Update to 0.28. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e0c900a433..ee8c415a05 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1947,7 +1947,7 @@ to do this without writing reams of structural code.") (define-public perl-datetime-format-flexible (package (name "perl-datetime-format-flexible") - (version "0.26") + (version "0.28") (source (origin (method url-fetch) @@ -1955,7 +1955,7 @@ to do this without writing reams of structural code.") "DateTime-Format-Flexible-" version ".tar.gz")) (sha256 (base32 - "0gb9dsn178dpvgbbgwnaf3v2v8zy4xj36i0w5q8qbhvwx32znvj3")))) + "1g63zs0q2x40h29r7in50c55g6kxiw3m2faw2p6c4rg74sj2k2b5")))) (build-system perl-build-system) (propagated-inputs `(("perl-datetime" ,perl-datetime) From 09d94b2babe44d6b6b0a041ff74384e1e9e270fa Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:36:36 -0400 Subject: [PATCH 0562/1227] gnu: perl-datetime-format-natural: Update to 1.05. * gnu/packages/perl.scm (perl-datetime-format-natural: Update to 1.05. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index ee8c415a05..a98d650732 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2001,7 +2001,7 @@ order to create the appropriate objects.") (define-public perl-datetime-format-natural (package (name "perl-datetime-format-natural") - (version "1.02") + (version "1.05") (source (origin (method url-fetch) @@ -2009,7 +2009,7 @@ order to create the appropriate objects.") "DateTime-Format-Natural-" version ".tar.gz")) (sha256 (base32 - "1qq3adq1y08d0jlmwk9059s5d39hb26f3zjag099gjjyvs5c8yal")))) + "10ldrhz5rnpsd8qmqn1a4s0w5hhfbjrr13a93yx7kpp89g85pxqv")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build) From e780fde51534c379dfb3e1aa590727343e7ba567 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:36:59 -0400 Subject: [PATCH 0563/1227] gnu: perl-datetime-format-strptime: Update to 1.73. * gnu/packages/perl.scm (perl-datetime-format-strptime): Update to 1.73. [propagated-inputs]: Add perl-package-deprecationmanager, perl-params-validate, perl-sub-name, perl-test-warnings. --- gnu/packages/perl.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index a98d650732..82157c0395 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2034,7 +2034,7 @@ parsing logic.") (define-public perl-datetime-format-strptime (package (name "perl-datetime-format-strptime") - (version "1.56") + (version "1.73") (source (origin (method url-fetch) @@ -2042,13 +2042,16 @@ parsing logic.") "DateTime-Format-Strptime-" version ".tar.gz")) (sha256 (base32 - "0a4bszmff16rw6fz1yr4v9001q9vxrdxnxkj9sqaln83b87rvxig")))) + "1gmjcmvh81cla6yn2pvlkr7i25bspg90pzzsizrfb0c5xc37h1vd")))) (build-system perl-build-system) (propagated-inputs `(("perl-datetime" ,perl-datetime) ("perl-datetime-locale" ,perl-datetime-locale) ("perl-datetime-timezone" ,perl-datetime-timezone) - ("perl-params-validate" ,perl-params-validate))) + ("perl-package-deprecationmanager" ,perl-package-deprecationmanager) + ("perl-params-validate" ,perl-params-validate) + ("perl-sub-name" ,perl-sub-name) + ("perl-test-warnings" ,perl-test-warnings))) (home-page "http://search.cpan.org/dist/DateTime-Format-Strptime") (synopsis "Parse and format strp and strf time patterns") (description "This module implements most of `strptime(3)`, the POSIX From 8ec0877a6bbddf0d82fd09309a79e19bf507a115 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:37:22 -0400 Subject: [PATCH 0564/1227] gnu: perl-datetime-locale: Update to 1.16. * gnu/packages/perl.scm (perl-datetime-locale): Update to 1.16. [native-inputs]: Add perl-file-sharedir-install, perl-file-sharedir, perl-test-file-sharedir-dist, perl-test-warnings, perl-test-requires, perl-namespace-autoclean, perl-cpan-meta-check. [propagated-inputs]: Add perl-params-validationcompiler. Remove perl-params-validate. --- gnu/packages/perl.scm | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 82157c0395..9d9ca0fae2 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2063,7 +2063,7 @@ takes a string and a pattern and returns the `DateTime` object associated.") (define-public perl-datetime-locale (package (name "perl-datetime-locale") - (version "0.45") + (version "1.16") (source (origin (method url-fetch) @@ -2071,13 +2071,20 @@ takes a string and a pattern and returns the `DateTime` object associated.") "DateTime-Locale-" version ".tar.gz")) (sha256 (base32 - "175grkrxiv012n6ch3z1sip4zprcili6m5zqi3njdk5c1gdvi8ca")))) + "1zkc0wggbsczbj4qadahh197imr9fa6knxr10zl241lw2i14rbyz")))) (build-system perl-build-system) (native-inputs - `(("perl-module-build" ,perl-module-build))) + `(("perl-file-sharedir" ,perl-file-sharedir) + ("perl-test-file-sharedir-dist" ,perl-test-file-sharedir-dist) + ("perl-test-warnings" ,perl-test-warnings) + ("perl-test-requires" ,perl-test-requires) + ("perl-namespace-autoclean" ,perl-namespace-autoclean) + ("perl-file-sharedir-install" ,perl-file-sharedir-install) + ("perl-cpan-meta-check" ,perl-cpan-meta-check) + ("perl-module-build" ,perl-module-build))) (propagated-inputs `(("perl-list-moreutils" ,perl-list-moreutils) - ("perl-params-validate" ,perl-params-validate))) + ("perl-params-validationcompiler" ,perl-params-validationcompiler))) (home-page "http://search.cpan.org/dist/DateTime-Locale") (synopsis "Localization support for DateTime.pm") (description "The DateTime::Locale modules provide localization data for From 1fdf14e1702446fde33e837f40d0548fa2bd4802 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 14:37:43 -0400 Subject: [PATCH 0565/1227] gnu: perl-datetime-timezone: Update to 2.13. * gnu/packages/perl.scm (perl-datetime-timezone): Update to 2.13. [propagated-inputs]: Remove perl-params-validate. Add perl-namespace-autoclean, perl-params-validationcompiler. --- gnu/packages/perl.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 9d9ca0fae2..4a87d0ae63 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2094,7 +2094,7 @@ the DateTime.pm class.") (define-public perl-datetime-timezone (package (name "perl-datetime-timezone") - (version "1.86") + (version "2.13") (source (origin (method url-fetch) @@ -2102,7 +2102,7 @@ the DateTime.pm class.") "DateTime-TimeZone-" version ".tar.gz")) (sha256 (base32 - "1aj5liy9as7yci2s9cqv9gqna5wggah8yg2jqrc89dnrin25s26z")))) + "1371sk4p9clygfwxzvivfqz6q9dy8gn3n4dr1424d0xqsv63jg9k")))) (build-system perl-build-system) (native-inputs `(("perl-test-fatal" ,perl-test-fatal) @@ -2111,7 +2111,8 @@ the DateTime.pm class.") `(("perl-class-singleton" ,perl-class-singleton) ("perl-list-allutils" ,perl-list-allutils) ("perl-module-runtime" ,perl-module-runtime) - ("perl-params-validate" ,perl-params-validate) + ("perl-namespace-autoclean" ,perl-namespace-autoclean) + ("perl-params-validationcompiler" ,perl-params-validationcompiler) ("perl-try-tiny" ,perl-try-tiny))) (home-page "http://search.cpan.org/dist/DateTime-TimeZone") (synopsis "Time zone object for Perl") From 6484e82d4ce79b7b5ce72ecf77fb8d450eb0c401 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 27 Jul 2017 19:04:25 -0400 Subject: [PATCH 0566/1227] gnu: biber-next: Update to 2.7. * gnu/packages/tex.scm (biber): Update to 2.7. --- gnu/packages/tex.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 601705e98a..729f9c01bf 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -4059,7 +4059,7 @@ values (strings, macros, or numbers) pasted together.") (define-public biber (package (name "biber-next") - (version "2.6") + (version "2.7") (source (origin (method url-fetch) (uri (string-append "https://github.com/plk/biber/archive/v" @@ -4067,7 +4067,7 @@ values (strings, macros, or numbers) pasted together.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "158smzgjhjvyabdv97si5q88zjj5l8j1zbfnddvzy6fkpfhskgkp")))) + "17wd80jg98qyddhvz4cin8779ycvppaf2va77r1lyvymjz6w9bx0")))) (build-system perl-build-system) (arguments `(#:phases From 57f57a7bbfe1dbb2092ea082f575706fed03a42f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 29 Jul 2017 20:43:40 -0400 Subject: [PATCH 0567/1227] services: ntp: Use the NTP pool via the 'guix' zone. * gnu/services/networking.scm (%ntp-servers): Use *.guix.pool.ntp.org. --- gnu/services/networking.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index c381581896..b45008de64 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -334,10 +334,13 @@ Protocol (DHCP) client, on all the non-loopback network interfaces." (service dhcp-client-service-type dhcp)) (define %ntp-servers - ;; Default set of NTP servers. - '("0.pool.ntp.org" - "1.pool.ntp.org" - "2.pool.ntp.org")) + ;; Default set of NTP servers. These URLs are managed by the NTP Pool project. + ;; Within Guix, Leo Famulari is the administrative contact + ;; for this NTP pool "zone". + '("0.guix.pool.ntp.org" + "1.guix.pool.ntp.org" + "2.guix.pool.ntp.org" + "3.guix.pool.ntp.org")) ;;; From 0d3ecf77ba7c2b0fea6677eb056c04e44c1db3bd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 31 Jul 2017 11:38:43 +0300 Subject: [PATCH 0568/1227] gnu: gst-plugins-good: Update disable-failing-tests phase. * gnu/packages/gstreamer.scm (gst-plugins-good)[arguments]: Change the list of tests to disable during 'disable-failing-tests phase. --- gnu/packages/gstreamer.scm | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 176336d710..69b8ffabee 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2014 John Darrington ;;; Copyright © 2015, 2016 Sou Bunnbu ;;; Copyright © 2015 Mark H Weaver -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Leo Famulari ;;; ;;; This file is part of GNU Guix. @@ -244,15 +244,9 @@ for the GStreamer multimedia library.") 'unpack 'disable-failing-tests (lambda _ ;; Disable tests that fail non-deterministically. - ;; XXX FIXME: Try removing this for version > 1.8.0. - (substitute* "tests/check/elements/rtprtx.c" - (("tcase_add_test \\(tc_chain, test_push_forward_seq\\);" all) - (string-append "/* " all " */")) - (("tcase_add_test \ -\\(tc_chain, test_rtxreceive_data_reconstruction\\);" all) - (string-append "/* " all " */"))) - (substitute* "tests/check/elements/splitmux.c" - (("tcase_add_test \\(tc_chain, test_splitmuxsink\\);" all) + ;; This test fails on aarch64 on 1.12.x. + (substitute* "tests/check/elements/alpha.c" + (("tcase_add_test \\(tc_chain, test_chromakeying\\);" all) (string-append "/* " all " */"))) #t))))) (home-page "https://gstreamer.freedesktop.org/") From 6ce8fe4cd01be01c817627a75650475cbf572ff9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 20 Jun 2017 13:12:52 +0300 Subject: [PATCH 0569/1227] gnu: efl: Add wayland support. * gnu/packages/enlightenment.scm (efl)[inputs]: Add wayland-protocols. Move mesa ... [propagated-inputs]: ... to here. Add libinput, libxkbcommon, wayland. [arguments]: Add flags to enable wayland, elput and drm. --- gnu/packages/enlightenment.scm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index b62ab5f6f5..512dd9b099 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages tls) #:use-module (gnu packages video) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg)) (define-public efl @@ -101,11 +102,11 @@ ("libxscrnsaver" ,libxscrnsaver) ("libxtst" ,libxtst) ("lz4" ,lz4) - ("mesa" ,mesa) ("openjpeg" ,openjpeg-1) ("poppler" ,poppler) ("printproto" ,printproto) ("scrnsaverproto" ,scrnsaverproto) + ("wayland-protocols" ,wayland-protocols) ("xextproto" ,xextproto) ("xinput" ,xinput) ("xpr" ,xpr) @@ -122,11 +123,15 @@ ("glib" ,glib) ; ecore.pc, ecore-cxx.pc ("harfbuzz" ,harfbuzz) ; evas.pc, evas-cxx.pc ("luajit" ,luajit) ; elua.pc, evas.pc, evas-cxx.pc + ("libinput" ,libinput) ; elput.pc ("libpng" ,libpng) ; evas.pc, evas-cxx.pc ("libsndfile" ,libsndfile) ; ecore-audio.pc, ecore-audio-cxx.pc + ("libxkbcommon" ,libxkbcommon) ; ecore-wl2.pc, elementary.pc, elput.pc + ("mesa" ,mesa) ; ecore-drm2.pc ("openssl" ,openssl) ; ecore-con.pc, eet.pc, eet-cxx.pc, emile.pc ("pulseaudio" ,pulseaudio) ; ecore-audio.pc, ecore-audio-cxx.pc ("util-linux" ,util-linux) ; mount: eeze.pc + ("wayland" ,wayland) ; ecore-wl2.pc, elementary.pc ("zlib" ,zlib))) ; eet.pc, eet-cxx.pc, emile.pc (arguments `(#:configure-flags '("--disable-silent-rules" @@ -137,7 +142,11 @@ "--enable-multisense" "--with-opengl=es" "--enable-egl" - "--enable-harfbuzz") + "--enable-harfbuzz" + ;; for wayland + "--enable-wayland" + "--enable-elput" + "--enable-drm") #:phases (modify-phases %standard-phases (add-after 'unpack 'set-home-directory From 58dce7bfb59d4f89b035c9bf181e73f4b667b57c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 11:13:49 +0200 Subject: [PATCH 0570/1227] gnu: libgit2: Update to 0.26.0. * gnu/packages/version-control.scm (libgit2): Update to 0.26.0. Remove "libgit2-use-after-free.patch". * gnu/packages/patches/libgit2-use-after-free.patch: Remove. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../patches/libgit2-use-after-free.patch | 24 ------------------- gnu/packages/version-control.scm | 7 +++--- 3 files changed, 3 insertions(+), 29 deletions(-) delete mode 100644 gnu/packages/patches/libgit2-use-after-free.patch diff --git a/gnu/local.mk b/gnu/local.mk index ff47777650..3fb8f168de 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -756,7 +756,6 @@ dist_patch_DATA = \ %D%/packages/patches/libgit2-0.25.1-mtime-0.patch \ %D%/packages/patches/libgdata-fix-tests.patch \ %D%/packages/patches/libgdata-glib-duplicate-tests.patch \ - %D%/packages/patches/libgit2-use-after-free.patch \ %D%/packages/patches/libjxr-fix-function-signature.patch \ %D%/packages/patches/libjxr-fix-typos.patch \ %D%/packages/patches/liboop-mips64-deplibs-fix.patch \ diff --git a/gnu/packages/patches/libgit2-use-after-free.patch b/gnu/packages/patches/libgit2-use-after-free.patch deleted file mode 100644 index 580af8781a..0000000000 --- a/gnu/packages/patches/libgit2-use-after-free.patch +++ /dev/null @@ -1,24 +0,0 @@ -This patch is taken from ; -we need it to fix the use-after-free error in 'git_commit_extract_signature' -reported at . - -From ade0d9c658fdfc68d8046935f6908f033fe7a529 Mon Sep 17 00:00:00 2001 -From: Patrick Steinhardt -Date: Mon, 13 Feb 2017 13:46:17 +0100 -Subject: [PATCH 3/3] commit: avoid possible use-after-free - -diff --git a/src/commit.c b/src/commit.c -index 89a4db1..05b70a9 100644 ---- a/src/commit.c -+++ b/src/commit.c -@@ -766,8 +766,9 @@ int git_commit_extract_signature(git_buf *signature, git_buf *signed_data, git_r - if (git_buf_oom(signature)) - goto oom; - -+ error = git_buf_puts(signed_data, eol+1); - git_odb_object_free(obj); -- return git_buf_puts(signed_data, eol+1); -+ return error; - } - - giterr_set(GITERR_OBJECT, "this commit is not signed"); diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 2e17201a5f..fbaf8f2f29 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -334,7 +334,7 @@ everything from small to very large projects with speed and efficiency.") (define-public libgit2 (package (name "libgit2") - (version "0.25.1") + (version "0.26.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/libgit2/libgit2/" @@ -342,9 +342,8 @@ everything from small to very large projects with speed and efficiency.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1cdwcw38frc1wf28x5ppddazv9hywc718j92f3xa3ybzzycyds3s")) - (patches (search-patches "libgit2-use-after-free.patch" - "libgit2-0.25.1-mtime-0.patch")))) + "1fdk9yhwvl1w1z71ykzcvgh4nsf8scxcbclz5anh98zpplmhmisa")) + (patches (search-patches "libgit2-0.25.1-mtime-0.patch")))) (build-system cmake-build-system) (arguments `(#:phases From 8ecba89b7777a21b633f9807b997076e4e5c210d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 11:14:37 +0200 Subject: [PATCH 0571/1227] gnu: libgit2: Add "debug" output. * gnu/packages/version-control.scm (libgit2)[outputs]: New field. --- gnu/packages/version-control.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index fbaf8f2f29..bc4242fc10 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -345,6 +345,7 @@ everything from small to very large projects with speed and efficiency.") "1fdk9yhwvl1w1z71ykzcvgh4nsf8scxcbclz5anh98zpplmhmisa")) (patches (search-patches "libgit2-0.25.1-mtime-0.patch")))) (build-system cmake-build-system) + (outputs '("out" "debug")) (arguments `(#:phases (modify-phases %standard-phases From 44b0faee6bb76c73384d42af95e492329fd45842 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 15:19:14 +0200 Subject: [PATCH 0572/1227] gnu: guile-git: Skip faulty tests on non-x86_64. Reported by Mark H Weaver. * gnu/packages/guile.scm (guile-git)[arguments]: Add 'skip-tests' phase unless on x86_64-linux. --- gnu/packages/guile.scm | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 6011e85162..376cdeede8 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1822,10 +1822,22 @@ is not available for Guile 2.0.") (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments - '(#:phases (modify-phases %standard-phases + `(#:phases (modify-phases %standard-phases (add-after 'unpack 'bootstrap (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) + (zero? (system* "autoreconf" "-vfi")))) + + ;; FIXME: On i686, bytestructures miscalculates the offset + ;; of the 'old-file' and 'new-file' fields within the + ;; '%diff-delta' structure. + ,@(if (string=? (%current-system) "x86_64-linux") + '() + '((add-before 'check 'skip-tests + (lambda _ + (substitute* "Makefile" + (("tests/status\\.scm") + "")) + #t))))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) From c27e02bf6b249321c9e699e414f474ce072a6f14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 15:22:13 +0200 Subject: [PATCH 0573/1227] gnu: network-manager: Add dependency on Newt. Suggested by Mark H Weaver. * gnu/packages/gnome.scm (network-manager)[inputs]: Add NEWT. --- gnu/packages/gnome.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 931c50e9db..d9d3fe7939 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -109,6 +109,7 @@ #:use-module (gnu packages rdesktop) #:use-module (gnu packages scanner) #:use-module (gnu packages selinux) + #:use-module (gnu packages slang) #:use-module (gnu packages ssh) #:use-module (gnu packages xml) #:use-module (gnu packages gl) @@ -4967,6 +4968,7 @@ users.") ("libnl" ,libnl) ("libsoup" ,libsoup) ("modem-manager" ,modem-manager) + ("newt" ,newt) ;for the 'nmtui' console interface ("polkit" ,polkit) ("ppp" ,ppp) ("readline" ,readline) From ee217402f7bf4b9fd49250650cf94d882a5e1a23 Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Mon, 31 Jul 2017 01:19:15 +0200 Subject: [PATCH 0574/1227] gnu: erlang: Update to 20.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/erlang.scm (erlang): Update to 20.0. Signed-off-by: Ludovic Courtès --- gnu/packages/erlang.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm index 9658061f21..a400e712d5 100644 --- a/gnu/packages/erlang.scm +++ b/gnu/packages/erlang.scm @@ -35,7 +35,7 @@ (define-public erlang (package (name "erlang") - (version "19.3") + (version "20.0") (source (origin (method url-fetch) ;; The tarball from http://erlang.org/download contains many @@ -46,7 +46,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1b47jh549yywyp8fbs8a8j4ydr3zn982navzyqvlms6rg8vwb0pw")) + "1azjjyb743i6vjq7rnh5qnslsqg0x60a9zrlhg9n3dpm13z1b22l")) (patches (search-patches "erlang-man-path.patch")))) (build-system gnu-build-system) (native-inputs @@ -62,7 +62,7 @@ version ".tar.gz")) (sha256 (base32 - "0p6r3n3y7lbhv38sw8f2vi1xlmc137gyspk9ap086w1nszyjy6gq")))))) + "1k25p37w1l1j20qd8rga4j4q7s7r0rbsi02x3xwzhw51jhm59wdp")))))) (inputs `(("ncurses" ,ncurses) ("openssl" ,openssl) @@ -111,8 +111,7 @@ (("date\\(\\), time\\(\\),") (date->string source-date-epoch "{~Y,~m,~d}, {~H,~M,~S},"))) - (substitute* '("lib/dialyzer/test/small_SUITE_data/src/gs_make.erl" - "lib/gs/src/gs_make.erl") + (substitute* "lib/dialyzer/test/small_SUITE_data/src/gs_make.erl" (("tuple_to_list\\(date\\(\\)\\),tuple_to_list\\(time\\(\\)\\)") (date->string source-date-epoch From 54727850c39e7e66b4baa79b1437e55e3b4bb46f Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 29 Jul 2017 17:26:04 +0000 Subject: [PATCH 0575/1227] gnu: tor: Remove '--enable-expensive-hardening' option. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/tor.scm (tor)[arguments]: Remove '--enable-expensive-hardening' option. Signed-off-by: Ludovic Courtès --- gnu/packages/tor.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index 314901fa4e..1d5a1f1612 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2016, 2017 Efraim Flashner -;;; Copyright © 2016, 2017 ng0 +;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; Copyright © 2017 Eric Bavier ;;; Copyright © 2017 Rutger Helling @@ -54,8 +54,7 @@ "0hhyb1wil8japynqnm07r1f67w3wdnafdg9amzlrrcfcyq5qim28")))) (build-system gnu-build-system) (arguments - `(#:configure-flags (list "--enable-expensive-hardening" - "--enable-gcc-hardening" + `(#:configure-flags (list "--enable-gcc-hardening" "--enable-linker-hardening"))) (native-inputs `(("python" ,python-2))) ; for tests From f0732ee48586c3be84e4b9edba94740e123fec4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 17:36:24 +0200 Subject: [PATCH 0576/1227] gnu: guile-bytestructures: Install .go files to lib/guile/X.Y. * gnu/packages/guile.scm (guile-bytestructures)[arguments]: Install .go files to OBJECT-DIR, defined as OUT/lib/guile/X.Y/site-ccache. --- gnu/packages/guile.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 376cdeede8..3fd3f89dc8 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1573,6 +1573,8 @@ is no support for parsing block and inline level HTML.") "-c" "(display (effective-version))"))) (module-dir (string-append out "/share/guile/site/" effective)) + (object-dir (string-append out "/lib/guile/" effective + "/site-ccache")) (source (getcwd)) (doc (string-append out "/share/doc/scheme-bytestructures")) (sld-files (with-directory-excursion source @@ -1592,7 +1594,7 @@ is no support for parsing block and inline level HTML.") (for-each (lambda (file) (let* ((dest-file (string-append module-dir "/" file)) - (go-file (string-append module-dir "/" + (go-file (string-append object-dir "/" (substring file 0 (string-rindex file #\.)) ".go"))) From a6b5af0cffd1655afc4cc32fd53c4d6f81e5c5f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 22:10:34 +0200 Subject: [PATCH 0577/1227] gnu: xf86-video-intel: Update snapshot. * gnu/packages/xorg.scm (xf86-video-intel): Update to 2100efa. Introduce 'revision' variable. --- gnu/packages/xorg.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 54167e2fb2..b50807702b 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -2864,10 +2864,12 @@ X server.") (define-public xf86-video-intel - (let ((commit "6babcf15dd605ef40de53f5c34f95b7fd195edbe")) + (let ((commit "2100efa105e8c9615eda867d39471d78e500b1bb") + (revision "7")) (package (name "xf86-video-intel") - (version (string-append "2.99.917-6-" (string-take commit 7))) + (version (string-append "2.99.917-" revision "-" + (string-take commit 7))) (source (origin ;; there's no current tarball @@ -2877,7 +2879,7 @@ X server.") (commit commit))) (sha256 (base32 - "055v4z26r00h3mxsd084n3aq8b5h0h3jkv52xss76zgbsq3n2354")) + "15fg844msmixsvlxcd5wm2awmns652sxcxj2wmp6819lr32lc4ir")) (file-name (string-append name "-" version)))) (build-system gnu-build-system) (inputs `(("mesa" ,mesa) From 6ddf97f81bb99a73f00e30ad5fc19577872b5b49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 22:22:27 +0200 Subject: [PATCH 0578/1227] guix package: Warn when invoked with '-u -something'. Fixes . Reported by Hartmut Goebel . * guix/scripts/package.scm (%options) <"-u">: Emit a warning when ARG starts with "-". --- guix/scripts/package.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 8da7a3fd3a..b6133b6af0 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -486,6 +486,11 @@ Install, remove, or upgrade packages in a single transaction.\n")) arg-handler)))) (option '(#\u "upgrade") #f #t (lambda (opt name arg result arg-handler) + (when (string-prefix? "-" arg) + (warning (G_ "upgrade regexp '~a' looks like a \ +command-line option~%") + arg) + (warning (G_ "is this intended?~%"))) (let arg-handler ((arg arg) (result result)) (values (alist-cons 'upgrade arg ;; Delete any prior "upgrade all" From e1ecc8908e8cd97c1291740dcd7b57b842f2203b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 31 Jul 2017 22:51:34 +0200 Subject: [PATCH 0579/1227] gnu: libmicrohttpd: Update to 0.9.55. * gnu/packages/gnunet.scm (libmicrohttpd): Update to 0.9.55. [arguments]: Add 'add-missing-LDFLAGS' phase. --- gnu/packages/gnunet.scm | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 56db405bc8..9ca2d9502b 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015 Andreas Enge ;;; Copyright © 2014 Sree Harsha Totakura -;;; Copyright © 2015 Ludovic Courtès +;;; Copyright © 2015, 2017 Ludovic Courtès ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2016 Mark H Weaver @@ -144,14 +144,14 @@ tool to extract metadata from a file and print the results.") (define-public libmicrohttpd (package (name "libmicrohttpd") - (version "0.9.52") + (version "0.9.55") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-" version ".tar.gz")) (sha256 (base32 - "1smgxw6jv81yybg86bzr4c2sn7a31apf8q4zz0kpch9xfrp7yyal")))) + "1y6h1slav5l6k8zyb01dpw65dscdgxxgfa3a0z9qnn7jr66sn70c")))) (build-system gnu-build-system) (inputs `(("curl" ,curl) @@ -160,7 +160,17 @@ tool to extract metadata from a file and print the results.") ("openssl" ,openssl) ("zlib" ,zlib))) (arguments - `(#:parallel-tests? #f)) + `(#:parallel-tests? #f + #:phases (modify-phases %standard-phases + (add-before 'check 'add-missing-LDFLAGS + (lambda _ + ;; The two test_upgrade* programs depend on GnuTLS + ;; directly but lack -lgnutls; add it. + (substitute* "src/microhttpd/Makefile" + (("^test_upgrade(.*)LDFLAGS = (.*)$" _ first rest) + (string-append "test_upgrade" first + "LDFLAGS = -lgnutls " rest))) + #t))))) (synopsis "C library implementing an HTTP 1.1 server") (description "GNU libmicrohttpd is a small, embeddable HTTP server implemented as a From befb2c0e6e17ce224586e9c2380f0470a5bef1c8 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 1 Aug 2017 14:09:04 +1000 Subject: [PATCH 0580/1227] gnu: ruby-bio-commandeer: Update to 0.2.0. * gnu/packages/ruby.scm (ruby-bio-commandeer): Update to 0.2.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index bc98dc2845..414b38c4fe 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3627,14 +3627,14 @@ subprocess.") (define-public ruby-bio-commandeer (package (name "ruby-bio-commandeer") - (version "0.1.3") + (version "0.2.0") (source (origin (method url-fetch) (uri (rubygems-uri "bio-commandeer" version)) (sha256 (base32 - "0lin6l99ldqqjc90l9ihcrv882c4xgbgqm16jqkdy6jf955jd9a8")))) + "1xlcnh13r33zybpmqniw0j8q5n0kq9al67ygqpf0xbbwxnnkqqvj")))) (build-system ruby-build-system) (arguments `(#:phases From 3d0fbd3c2f92cee74fd443eb5c252b8dd9b75b43 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 31 Jul 2017 18:56:44 -0400 Subject: [PATCH 0581/1227] gnu: libgit2: Enable SHA-1 collision detection. * gnu/packages/version-control.scm (libgit2)[arguments]: Enable '-DUSE_SHA1DC' in #:configure-flags. --- gnu/packages/version-control.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index bc4242fc10..9667b2f3ec 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -347,7 +347,8 @@ everything from small to very large projects with speed and efficiency.") (build-system cmake-build-system) (outputs '("out" "debug")) (arguments - `(#:phases + `(#:configure-flags '("-DUSE_SHA1DC=ON") ; SHA-1 collision detection + #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-hardcoded-paths (lambda _ From 269504a797a3e950725e406edf550a03946900ad Mon Sep 17 00:00:00 2001 From: Muriithi Frederick Muriuki Date: Thu, 15 Jun 2017 18:39:05 +0300 Subject: [PATCH 0582/1227] gnu: python-pbr-minimal: Update to 3.0.1 * gnu/packages/python.scm (python-pbr-minimal): Update to 3.0.1 [source]: Update hash and remove patch. * gnu/packages/patches/python-pbr-fix-man-page-support.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Remove it. Signed-off-by: Efraim Flashner --- gnu/local.mk | 1 - .../python-pbr-fix-man-page-support.patch | 28 ------------------- gnu/packages/python.scm | 5 ++-- 3 files changed, 2 insertions(+), 32 deletions(-) delete mode 100644 gnu/packages/patches/python-pbr-fix-man-page-support.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3fb8f168de..4189703c92 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -971,7 +971,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-pandas-skip-failing-tests.patch \ %D%/packages/patches/python-paste-remove-website-test.patch \ %D%/packages/patches/python-paste-remove-timing-test.patch \ - %D%/packages/patches/python-pbr-fix-man-page-support.patch \ %D%/packages/patches/python-pillow-freetype-2.7-test-failure.patch \ %D%/packages/patches/python-pygit2-disable-network-tests.patch \ %D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \ diff --git a/gnu/packages/patches/python-pbr-fix-man-page-support.patch b/gnu/packages/patches/python-pbr-fix-man-page-support.patch deleted file mode 100644 index b9036f5b01..0000000000 --- a/gnu/packages/patches/python-pbr-fix-man-page-support.patch +++ /dev/null @@ -1,28 +0,0 @@ -See: https://bugs.launchpad.net/oslosphinx/+bug/1661861 -diff -ur orig/pbr-1.10.0/pbr/builddoc.py pbr-1.10.0/pbr/builddoc.py ---- orig/pbr-1.10.0/pbr/builddoc.py 2016-05-23 21:38:18.000000000 +0200 -+++ pbr-1.10.0/pbr/builddoc.py 2017-02-18 14:01:37.424434317 +0100 -@@ -138,7 +138,8 @@ - sphinx_config.init_values(warnings.warn) - else: - sphinx_config.init_values() -- if self.builder == 'man' and len(sphinx_config.man_pages) == 0: -+ if self.builder == 'man' and len( -+ getattr(sphinx_config, 'man_pages', '')) == 0: - return - app = application.Sphinx( - self.source_dir, self.config_dir, -diff -ur orig/pbr-1.10.0/pbr/util.py pbr-1.10.0/pbr/util.py ---- orig/pbr-1.10.0/pbr/util.py 2016-05-23 21:38:18.000000000 +0200 -+++ pbr-1.10.0/pbr/util.py 2017-02-18 15:36:32.951196795 +0100 -@@ -211,7 +211,9 @@ - parser.read(path) - config = {} - for section in parser.sections(): -- config[section] = dict(parser.items(section)) -+ config[section] = dict() -+ for k, value in parser.items(section): -+ config[section][k.replace('-', '_')] = value - - # Run setup_hooks, if configured - setup_hooks = has_get_option(config, 'global', 'setup_hooks') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 2b38202218..21e32c343d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2276,15 +2276,14 @@ protocol.") (define python-pbr-minimal (package (name "python-pbr-minimal") - (version "1.10.0") + (version "3.0.1") (source (origin (method url-fetch) (uri (pypi-uri "pbr" version)) (sha256 (base32 - "177kd9kbv1hvf2ban7l3x9ymzbi1md4hkaymwbgnz7ihf312hr0q")) - (patches (search-patches "python-pbr-fix-man-page-support.patch")))) + "14fs5acnalnb3h62s7q7av239j541fk0n0z0lawh4h09b1s93s6p")))) (build-system python-build-system) (arguments `(#:tests? #f)) From 9081a776ea917ca8beda2cf41e8f37575c00deee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 1 Aug 2017 14:18:35 +0200 Subject: [PATCH 0583/1227] lint: formatting: Detect sexp boundaries. * guix/scripts/lint.scm (report-formatting-issues)[last-line]: Remove. [sexp-last-line]: New procedure. Use it. --- guix/scripts/lint.scm | 41 ++++++++++++++++++++++++++++------------- 1 file changed, 28 insertions(+), 13 deletions(-) diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm index 04ab852999..aceafc674d 100644 --- a/guix/scripts/lint.scm +++ b/guix/scripts/lint.scm @@ -878,24 +878,39 @@ move to the previous or next line") #:key (reporters %formatting-reporters)) "Report white-space issues in FILE starting from STARTING-LINE, and report them for PACKAGE." - (define last-line - ;; Number of the presumed last line. - ;; XXX: Ideally we'd stop at the boundaries of the surrounding sexp, but - ;; for now just use this simple heuristic. - (+ starting-line 60)) + (define (sexp-last-line port) + ;; Return the last line of the sexp read from PORT or an estimate thereof. + (define &failure (list 'failure)) + + (let ((start (ftell port)) + (start-line (port-line port)) + (sexp (catch 'read-error + (lambda () (read port)) + (const &failure)))) + (let ((line (port-line port))) + (seek port start SEEK_SET) + (set-port-line! port start-line) + (if (eq? sexp &failure) + (+ start-line 60) ;conservative estimate + line)))) (call-with-input-file file (lambda (port) - (let loop ((line-number 1)) + (let loop ((line-number 1) + (last-line #f)) (let ((line (read-line port))) (or (eof-object? line) - (> line-number last-line) - (begin - (unless (< line-number starting-line) - (for-each (lambda (report) - (report package line line-number)) - reporters)) - (loop (+ 1 line-number))))))))) + (and last-line (> line-number last-line)) + (if (and (= line-number starting-line) + (not last-line)) + (loop (+ 1 line-number) + (+ 1 (sexp-last-line port))) + (begin + (unless (< line-number starting-line) + (for-each (lambda (report) + (report package line line-number)) + reporters)) + (loop (+ 1 line-number) last-line))))))))) (define (check-formatting package) "Check the formatting of the source code of PACKAGE." From 12235a124f7fc56d9cd4eaf76a453cf55d3026ea Mon Sep 17 00:00:00 2001 From: Adonay Felipe Nogueira Date: Fri, 28 Jul 2017 11:18:03 -0300 Subject: [PATCH 0584/1227] gnu: artanis: Unbundled guile-json and version according to documentation. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/guile.scm (artanis): Unbundled guile-json and version according to documentation. Signed-off-by: Ludovic Courtès --- gnu/packages/guile.scm | 130 ++++++++++++++++++++++++----------------- 1 file changed, 78 insertions(+), 52 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 3fd3f89dc8..74aea8e238 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2016 Erik Edrosa ;;; Copyright © 2016 Eraim Flashner ;;; Copyright © 2016, 2017 Alex Kost -;;; Copyright © 2016 Adonay "adfeno" Felipe Nogueira +;;; Copyright © 2016, 2017 Adonay "adfeno" Felipe Nogueira ;;; Copyright © 2016 Amirouche ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2017 Andy Wingo @@ -384,55 +384,81 @@ program can be installed in one go.") ;;; (define-public artanis - (package - (name "artanis") - (version "0.2.1") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/artanis/artanis-" - version ".tar.gz")) - (sha256 - (base32 - "041ajcg2pz918kd9iqcj4inpzddc3impvz3r2nhlpbv8zrz011hn")))) - (build-system gnu-build-system) - ;; TODO: Add guile-dbi and guile-dbd optional dependencies. - (inputs `(("guile" ,guile-2.2))) - (native-inputs `(("bash" ,bash) ;for the `source' builtin - ("pkgconfig" ,pkg-config) - ("util-linux" ,util-linux))) ;for the `script' command - (arguments - '(#:make-flags - ;; TODO: The documentation must be built with the `docs' target. - (let* ((out (assoc-ref %outputs "out")) - (scm (string-append out "/share/guile/site/2.2")) - (go (string-append out "/lib/guile/2.2/site-ccache"))) - ;; Don't use (%site-dir) for site paths. - (list (string-append "MOD_PATH=" scm) - (string-append "MOD_COMPILED_PATH=" go))) - #:test-target "test" - #:phases - (modify-phases %standard-phases - (add-before 'install 'substitute-root-dir - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* "Makefile" ;ignore the execution of bash.bashrc - ((" /etc/bash.bashrc") " /dev/null")) - (substitute* "Makefile" ;set the root of config files to OUT - ((" /etc") (string-append " " out "/etc"))) - (mkdir-p (string-append out "/bin")) ;for the `art' executable - #t))) - (add-after 'install 'wrap-art - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (scm (string-append out "/share/guile/site/2.2")) - (go (string-append out "/lib/guile/2.2/site-ccache"))) - (wrap-program (string-append bin "/art") - `("GUILE_LOAD_PATH" ":" prefix (,scm)) - `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go))) - #t)))))) - (synopsis "Web application framework written in Guile") - (description "GNU Artanis is a web application framework written in Guile + (let ((release "0.2.1") + (revision 3)) + (package + (name "artanis") + (version (if (zero? revision) + release + (string-append release "-" + (number->string revision)))) + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/artanis/artanis-" + release ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "041ajcg2pz918kd9iqcj4inpzddc3impvz3r2nhlpbv8zrz011hn")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "artanis/third-party/json.scm") + (delete-file-recursively "artanis/third-party/json") + (substitute* '("artanis/artanis.scm" + "artanis/oht.scm") + (("(#:use-module \\()artanis third-party (json\\))" _ + use-module json) + (string-append use-module json))) + (substitute* "artanis/oht.scm" + (("([[:punct:][:space:]]+)(->json-string)([[:punct:][:space:]]+)" + _ pre json-string post) + (string-append pre + "scm" json-string + post))) + (substitute* "artanis/artanis.scm" + (("[[:punct:][:space:]]+->json-string[[:punct:][:space:]]+") + "")))))) + (build-system gnu-build-system) + ;; TODO: Add guile-dbi and guile-dbd optional dependencies. + (inputs `(("guile" ,guile-2.2) + ("guile-json" ,guile-json))) + (native-inputs `(("bash" ,bash) ;for the `source' builtin + ("pkgconfig" ,pkg-config) + ("util-linux" ,util-linux))) ;for the `script' command + (arguments + '(#:make-flags + ;; TODO: The documentation must be built with the `docs' target. + (let* ((out (assoc-ref %outputs "out")) + (scm (string-append out "/share/guile/site/2.2")) + (go (string-append out "/lib/guile/2.2/site-ccache"))) + ;; Don't use (%site-dir) for site paths. + (list (string-append "MOD_PATH=" scm) + (string-append "MOD_COMPILED_PATH=" go))) + #:test-target "test" + #:phases + (modify-phases %standard-phases + (add-before 'install 'substitute-root-dir + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "Makefile" ;ignore the execution of bash.bashrc + ((" /etc/bash.bashrc") " /dev/null")) + (substitute* "Makefile" ;set the root of config files to OUT + ((" /etc") (string-append " " out "/etc"))) + (mkdir-p (string-append out "/bin")) ;for the `art' executable + #t))) + (add-after 'install 'wrap-art + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (scm (string-append out "/share/guile/site/2.2")) + (go (string-append out "/lib/guile/2.2/site-ccache"))) + (wrap-program (string-append bin "/art") + `("GUILE_LOAD_PATH" ":" prefix (,scm)) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go))) + #t)))))) + (synopsis "Web application framework written in Guile") + (description "GNU Artanis is a web application framework written in Guile Scheme. A web application framework (WAF) is a software framework that is designed to support the development of dynamic websites, web applications, web services and web resources. The framework aims to alleviate the overhead @@ -440,8 +466,8 @@ associated with common activities performed in web development. Artanis provides several tools for web development: database access, templating frameworks, session management, URL-remapping for RESTful, page caching, and more.") - (home-page "https://www.gnu.org/software/artanis/") - (license (list license:gpl3+ license:lgpl3+)))) ;dual license + (home-page "https://www.gnu.org/software/artanis/") + (license (list license:gpl3+ license:lgpl3+))))) ;dual license (define-public guile-reader (package From 04b6d6f7f7a73e39dcff1e2bca3113ea567e2944 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 1 Aug 2017 15:19:38 +0200 Subject: [PATCH 0585/1227] gnu: guile-ssh: Update to 0.11.2. * gnu/packages/ssh.scm (guile-ssh): Update to 0.11.2. [source]: Remove 'patches', 'modules', and 'snippet'. * gnu/packages/patches/guile-ssh-channel-finalization.patch, gnu/packages/patches/guile-ssh-double-free.patch, gnu/packages/patches/guile-ssh-rexec-bug.patch: Remove. * gnu/local.mk (dist_patch_DATA): Remove them. --- gnu/local.mk | 3 -- .../guile-ssh-channel-finalization.patch | 28 -------------- .../patches/guile-ssh-double-free.patch | 37 ------------------- .../patches/guile-ssh-rexec-bug.patch | 16 -------- gnu/packages/ssh.scm | 16 +------- 5 files changed, 2 insertions(+), 98 deletions(-) delete mode 100644 gnu/packages/patches/guile-ssh-channel-finalization.patch delete mode 100644 gnu/packages/patches/guile-ssh-double-free.patch delete mode 100644 gnu/packages/patches/guile-ssh-rexec-bug.patch diff --git a/gnu/local.mk b/gnu/local.mk index 4189703c92..db8be36fb4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -675,9 +675,6 @@ dist_patch_DATA = \ %D%/packages/patches/guile-present-coding.patch \ %D%/packages/patches/guile-relocatable.patch \ %D%/packages/patches/guile-rsvg-pkgconfig.patch \ - %D%/packages/patches/guile-ssh-channel-finalization.patch \ - %D%/packages/patches/guile-ssh-double-free.patch \ - %D%/packages/patches/guile-ssh-rexec-bug.patch \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \ %D%/packages/patches/gtk2-theme-paths.patch \ diff --git a/gnu/packages/patches/guile-ssh-channel-finalization.patch b/gnu/packages/patches/guile-ssh-channel-finalization.patch deleted file mode 100644 index 54b5055a20..0000000000 --- a/gnu/packages/patches/guile-ssh-channel-finalization.patch +++ /dev/null @@ -1,28 +0,0 @@ -Avoid asynchronous channel finalization, which could lead to segfaults due to -libssh not being thread-safe: . - ---- guile-ssh-0.11.0/modules/ssh/dist/node.scm 2017-06-13 14:37:44.861671297 +0200 -+++ guile-ssh-0.11.0/modules/ssh/dist/node.scm 2017-06-13 14:38:02.841580565 +0200 -@@ -391,11 +391,18 @@ listens on an expected port, return #f o - "Evaluate QUOTED-EXP on the node and return the evaluated result." - (let ((repl-channel (node-open-rrepl node))) - (rrepl-skip-to-prompt repl-channel) -- (call-with-values (lambda () (rrepl-eval repl-channel quoted-exp)) -- (lambda vals -- (and (node-stop-repl-server? node) -+ (dynamic-wind -+ (const #t) -+ (lambda () -+ (rrepl-eval repl-channel quoted-exp)) -+ (lambda () -+ (when (node-stop-repl-server? node) - (node-stop-server node)) -- (apply values vals))))) -+ -+ ;; Close REPL-CHANNEL right away to prevent finalization from -+ ;; happening in another thread at the wrong time (see -+ ;; .) -+ (close-port repl-channel))))) - - (define (node-eval-1 node quoted-exp) - "Evaluate QUOTED-EXP on the node and return the evaluated result. The diff --git a/gnu/packages/patches/guile-ssh-double-free.patch b/gnu/packages/patches/guile-ssh-double-free.patch deleted file mode 100644 index 9692b81d39..0000000000 --- a/gnu/packages/patches/guile-ssh-double-free.patch +++ /dev/null @@ -1,37 +0,0 @@ -Fix a double-free or use-after-free issue with Guile-SSH used -with Guile 2.2. See . - -diff --git a/libguile-ssh/channel-type.c b/libguile-ssh/channel-type.c -index 3dd641f..0839854 100644 ---- a/libguile-ssh/channel-type.c -+++ b/libguile-ssh/channel-type.c -@@ -229,10 +229,11 @@ ptob_close (SCM channel) - ssh_channel_free (ch->ssh_channel); - } - -+ SCM_SETSTREAM (channel, NULL); -+ - #if USING_GUILE_BEFORE_2_2 - scm_gc_free (pt->write_buf, pt->write_buf_size, "port write buffer"); - scm_gc_free (pt->read_buf, pt->read_buf_size, "port read buffer"); -- SCM_SETSTREAM (channel, NULL); - - return 0; - #endif -diff --git a/libguile-ssh/sftp-file-type.c b/libguile-ssh/sftp-file-type.c -index 8879924..f87cf03 100644 ---- a/libguile-ssh/sftp-file-type.c -+++ b/libguile-ssh/sftp-file-type.c -@@ -224,10 +224,11 @@ ptob_close (SCM sftp_file) - sftp_close (fd->file); - } - -+ SCM_SETSTREAM (sftp_file, NULL); -+ - #if USING_GUILE_BEFORE_2_2 - scm_gc_free (pt->write_buf, pt->write_buf_size, "port write buffer"); - scm_gc_free (pt->read_buf, pt->read_buf_size, "port read buffer"); -- SCM_SETSTREAM (sftp_file, NULL); - - return 1; - #endif diff --git a/gnu/packages/patches/guile-ssh-rexec-bug.patch b/gnu/packages/patches/guile-ssh-rexec-bug.patch deleted file mode 100644 index 363fea38c9..0000000000 --- a/gnu/packages/patches/guile-ssh-rexec-bug.patch +++ /dev/null @@ -1,16 +0,0 @@ -Fix a bug whereby 'node-guile-version' would pass a node instead of -a session to 'rexec'. - -diff --git a/modules/ssh/dist/node.scm b/modules/ssh/dist/node.scm -index 9c065c7..29a3906 100644 ---- a/modules/ssh/dist/node.scm -+++ b/modules/ssh/dist/node.scm -@@ -411,7 +411,8 @@ procedure returns the 1st evaluated value if multiple values were returned." - "Get Guile version installed on a NODE, return the version string. Return - #f if Guile is not installed." - (receive (result rc) -- (rexec node "which guile > /dev/null && guile --version") -+ (rexec (node-session node) -+ "which guile > /dev/null && guile --version") - (and (zero? rc) - (car result)))) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 22737b7aec..55689a6c6d 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -215,7 +215,7 @@ Additionally, various channel-specific options can be negotiated.") (define-public guile-ssh (package (name "guile-ssh") - (version "0.11.0") + (version "0.11.2") (home-page "https://github.com/artyom-poptsov/guile-ssh") (source (origin ;; ftp://memory-heap.org/software/guile-ssh/guile-ssh-VERSION.tar.gz @@ -227,19 +227,7 @@ Additionally, various channel-specific options can be negotiated.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0r261i8kc3avbmbwgyzak2vnqwssjlgz37g2y2fwm80w9bmn2m7j")) - (patches (search-patches "guile-ssh-rexec-bug.patch" - "guile-ssh-double-free.patch" - "guile-ssh-channel-finalization.patch")) - (modules '((guix build utils))) - (snippet - ;; 'configure.ac' mistakenly tries to link files from examples/ - ;; that are not instantiated yet. Work around it. - '(substitute* "configure.ac" - (("AC_CONFIG_LINKS\\(\\[examples/([^:]+):.*" _ file) - (string-append "AC_CONFIG_FILES([examples/" file - "], [chmod +x examples/" - file "])\n")))))) + "1w0k5s09xj5xycb7lbp5b7rm0xncclms3jwl98lwj8fxwngi1s90")))) (build-system gnu-build-system) (outputs '("out" "debug")) (arguments From 1f0d47059d31bbbaf588a4ca2de38d2ded8678cc Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Sat, 22 Jul 2017 18:57:02 -0400 Subject: [PATCH 0586/1227] gnu: emacs-yasnippet: Upgrade to 0.12.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (emacs-yasnippet): Upgrade to 0.12.0. [source]: Remove an uninstalled directory from yas-snippet-dirs. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs.scm | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 02e7a9e908..f6411c78c7 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -4112,7 +4112,7 @@ mode-line.") (define-public emacs-yasnippet (package (name "emacs-yasnippet") - (version "0.11.0") + (version "0.12.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/joaotavora/yasnippet/" @@ -4120,7 +4120,18 @@ mode-line.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "15di6mkkf09b7qddpsrm0qln02hji3sx8blya5jxssi9wxxx9iq5")))) + "1yqiprighgqz1hsslph50cy09xxqabc06jffrnjcsdf6nj70xlkc")) + (modules '((guix build utils))) + (snippet + '(begin + ;; YASnippet expects a "snippets" subdirectory in the same + ;; directory as yasnippet.el, but we don't install it + ;; because it's a git submodule pointing to an external + ;; repository. Adjust `yas-snippet-dirs' to prevent + ;; warnings about a missing directory. + (substitute* "yasnippet.el" + (("^ +'yas-installed-snippets-dir\\)\\)\n") + "))\n")))))) (build-system emacs-build-system) (home-page "https://github.com/joaotavora/yasnippet") (synopsis "Yet another snippet extension for Emacs") From 4bfdf034e24853ddea52d2aafd00036981bd187f Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Sat, 22 Jul 2017 18:57:03 -0400 Subject: [PATCH 0587/1227] gnu: Add emacs-yasnippet-snippets. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (emacs-yasnippet-snippets): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs.scm | 45 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index f6411c78c7..917c511f32 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -4140,6 +4140,51 @@ mode-line.") abbreviation and automatically expand it into function templates.") (license license:gpl3+))) +(define-public emacs-yasnippet-snippets + (let ((commit "885050d34737e2fb36a3e7759d60c09347bd4ce0") + (revision "1")) + (package + (name "emacs-yasnippet-snippets") + (version (string-append "1-" revision "." (string-take commit 8))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/AndreaCrotti/yasnippet-snippets") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1m935zgglw0iakzrixld5rcjz3wnj84f8wy2mvc3pggjri9l0qr9")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((ice-9 ftw) + (ice-9 regex) + (guix build utils)) + #:builder + (begin + (use-modules (ice-9 ftw) + (ice-9 regex) + (guix build utils)) + (with-directory-excursion (assoc-ref %build-inputs "source") + (for-each (lambda (dir) + (copy-recursively + dir + (string-append %output + "/share/emacs/yasnippet-snippets/" + dir))) + (scandir "." (lambda (fname) + (and (string-match "-mode$" fname) + (directory-exists? fname))))))))) + (home-page "https://github.com/AndreaCrotti/yasnippet-snippets") + (synopsis "Collection of YASnippet snippets for many languages") + (description + "Provides Andrea Crotti's collection of YASnippet snippets. After installation, +the snippets will be in \"~/.guix-profile/share/emacs/yasnippet-snippets/\". +To make YASnippet aware of these snippets, add the above directory to +@code{yas-snippet-dirs}.") + (license license:expat)))) + (define-public emacs-memoize (package (name "emacs-memoize") From d931a4bbeb4a23a26fa046bdc34c618b75bc94f1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 1 Aug 2017 17:24:56 +0300 Subject: [PATCH 0588/1227] gnu: metabat: Limit to x86_64 and i686 only. * gnu/packages/bioinformatics.scm (metabat)[supported-systems]: New field. --- gnu/packages/bioinformatics.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 614a7d4075..909044f2fd 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3546,6 +3546,8 @@ sequences to deconvolute complex microbial communities, or metagenome binning, enables the study of individual organisms and their interactions. MetaBAT is an automated metagenome binning software, which integrates empirical probabilistic distances of genome abundance and tetranucleotide frequency.") + ;; The source code contains inline assembly. + (supported-systems '("x86_64-linux" "i686-linux")) (license (license:non-copyleft "file://license.txt" "See license.txt in the distribution.")))) From 89c9445aa27036a13ed485c0f5eda59314152927 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Tue, 1 Aug 2017 12:14:54 -0400 Subject: [PATCH 0589/1227] gnu: hyperrogue: Update to 10.0e. * gnu/packages/games.scm (hyperrogue): Update to 10.0e. [arguments]: Adjust accordingly. --- gnu/packages/games.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 069fa1d651..3093b77aea 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -3532,7 +3532,7 @@ throwing people around in pseudo-randomly generated buildings.") (define-public hyperrogue (package (name "hyperrogue") - (version "9.4n") + (version "10.0e") ;; When updating this package, be sure to update the "hyperrogue-data" ;; origin in native-inputs. (source (origin @@ -3543,7 +3543,7 @@ throwing people around in pseudo-randomly generated buildings.") "-src.tgz")) (sha256 (base32 - "1kf9i9gqadnb0m143c860dcvdn91vp6vnfzma4bcgfgwmcn9sx0r")))) + "1p6fam73khhys54098qsgmp52d0rnqc3k5hknjig0znvfb2kwi38")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -3565,7 +3565,7 @@ throwing people around in pseudo-randomly generated buildings.") "/share/fonts/truetype")) (dejavu-font "DejaVuSans-Bold.ttf") (music-file "hyperrogue-music.txt")) - (substitute* "graph.cpp" + (substitute* "basegraph.cpp" ((dejavu-font) (string-append dejavu-dir "/" dejavu-font))) (substitute* "sound.cpp" @@ -3618,7 +3618,7 @@ throwing people around in pseudo-randomly generated buildings.") "-win.zip")) (sha256 (base32 - "1vrk0k0ch3azpa72y7acmmpifvks6c0466fvmz804hici93pglvi")))) + "1z9w3nd57ybnf4w7ckhhp5vfws2hwd8x26fx6h496f6160fgcj6m")))) ("unzip" ,unzip))) (inputs `(("font-dejavu" ,font-dejavu) From f2e1271809f0aaf33ff1afa082bf2e00af8633cf Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 30 Apr 2017 19:09:00 +0000 Subject: [PATCH 0590/1227] gnu: Add pidentd. * gnu/packages/networking.scm (pidentd): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/networking.scm | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 5f555ee67f..6dd6046461 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2016 John Darrington ;;; Copyright © 2016 Nicolas Goaziou ;;; Copyright © 2016 Eric Bavier -;;; Copyright © 2016, 2017 ng0 +;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016, 2017 Arun Isaac ;;; Copyright © 2016 Benz Schenk ;;; Copyright © 2016, 2017 Pjotr Prins @@ -1270,6 +1270,32 @@ enabled due to license conflicts between the BSD advertising clause and the GPL. ;; distribution for clarification. (license (list license:bsd-3 license:bsd-4)))) +(define-public pidentd + (package + (name "pidentd") + (version "3.0.19") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/ptrrkssn/pidentd/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0y3kd1bkydqkpc1qdff24yswysamsqivvadjy0468qri5730izgc")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f)) ; No tests are included + (inputs + `(("openssl" ,openssl))) ; For the DES library + (home-page "https://www.lysator.liu.se/~pen/pidentd/") + (synopsis "Small Ident Daemon") + (description + "@dfn{Pidentd} (Peter's Ident Daemon) is a identd, which implements a +identification server. Pidentd looks up specific TCP/IP connections and +returns the user name and other information about the connection.") + (license license:public-domain))) + (define-public spiped (package (name "spiped") From d0386db49327c312c2957e3453d9f12fb5863113 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 1 Aug 2017 13:09:26 -0400 Subject: [PATCH 0591/1227] gnu: rapidjson: Update to 1.1.0. * gnu/packages/web.scm (rapidjson): Update to 1.1.0. [source]: Remove snippet. --- gnu/packages/web.scm | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 66183273e6..f03f67bf8c 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -449,7 +449,7 @@ current version of any major web browser.") (define-public rapidjson (package (name "rapidjson") - (version "1.0.2") + (version "1.1.0") (source (origin (method url-fetch) (uri (string-append @@ -458,13 +458,7 @@ current version of any major web browser.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0rl6s0vg5y1dhh9vfl1lqay3sxf69sxjh0czxrjmasn7ng91wwf3")) - (modules '((guix build utils))) - (snippet - ;; Building with GCC 4.8 with -Werror was fine, but 4.9.3 - ;; complains in new ways, so turn of -Werror. - '(substitute* (find-files "." "^CMakeLists\\.txt$") - (("-Werror") ""))))) + "13nrpvw8f1wx0ga7svbzld7pgrv8l172nangpipnj7jaf0lysz5z")))) (build-system cmake-build-system) (arguments `(,@(if (string-prefix? "aarch64" (or (%current-target-system) From a60667245f7b31abba5cb5bb4e5a435816b82950 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 1 Aug 2017 23:02:26 +0300 Subject: [PATCH 0592/1227] guix package: Allow `guix package -u' to fuction as before. This is a follow up to 6ddf97f81bb99a73f00e30ad5fc19577872b5b49 * guix/scripts/package.scm (%options) <"-u">: Only check for a flag when there is an ARG after '-u'. --- guix/scripts/package.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index b6133b6af0..fa45bd48a6 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -486,7 +486,7 @@ Install, remove, or upgrade packages in a single transaction.\n")) arg-handler)))) (option '(#\u "upgrade") #f #t (lambda (opt name arg result arg-handler) - (when (string-prefix? "-" arg) + (when (and arg (string-prefix? "-" arg)) (warning (G_ "upgrade regexp '~a' looks like a \ command-line option~%") arg) From 5d7e8543659874682b618bba799ba7cd6ffce554 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Tue, 1 Aug 2017 22:57:22 +0200 Subject: [PATCH 0593/1227] graph: Provide access to the package record in the emit functions. * guix/graph.scm (export-graph): Pass the node to the emit functions, instead of the node's label. --- guix/graph.scm | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/guix/graph.scm b/guix/graph.scm index d7fd5f3e4b..5b650f5448 100644 --- a/guix/graph.scm +++ b/guix/graph.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016 Ludovic Courtès ;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2017 Roel Janssen ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,6 +23,7 @@ #:use-module (guix monads) #:use-module (guix records) #:use-module (guix sets) + #:use-module (guix packages) #:use-module (rnrs io ports) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) @@ -170,9 +172,9 @@ typically returned by 'node-edges' or 'node-back-edges'." name)) (define (emit-epilogue port) (display "\n}\n" port)) -(define (emit-node id label port) +(define (emit-node id node port) (format port " \"~a\" [label = \"~a\", shape = box, fontname = Helvetica];~%" - id label)) + id (package-full-name node))) (define (emit-edge id1 id2 port) (format port " \"~a\" -> \"~a\" [color = ~a];~%" id1 id2 (pop-color id1))) @@ -213,11 +215,11 @@ var nodes = {}, (format port "" (search-path %load-path "graph.js"))) -(define (emit-d3js-node id label port) +(define (emit-d3js-node id node port) (format port "\ nodes[\"~a\"] = {\"id\": \"~a\", \"label\": \"~a\", \"index\": nodeArray.length}; nodeArray.push(nodes[\"~a\"]);~%" - id id label id)) + id id (package-full-name node) id)) (define (emit-d3js-edge id1 id2 port) (format port "links.push({\"source\": \"~a\", \"target\": \"~a\"});~%" @@ -241,9 +243,9 @@ nodeArray.push(nodes[\"~a\"]);~%" (define (emit-cypher-epilogue port) (format port "")) -(define (emit-cypher-node id label port) +(define (emit-cypher-node id node port) (format port "MERGE (p:Package { id: ~s }) SET p.name = ~s;~%" - id label )) + id (package-name node))) (define (emit-cypher-edge id1 id2 port) (format port "MERGE (a:Package { id: ~s });~%" id1) @@ -296,7 +298,7 @@ true, draw reverse arrows." (ids (mapm %store-monad node-identifier dependencies))) - (emit-node id (node-label head) port) + (emit-node id head port) (for-each (lambda (dependency dependency-id) (if reverse-edges? (emit-edge dependency-id id port) From cdf124c60798b0e334dd0ac6d7a95f4709cca090 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Tue, 1 Aug 2017 23:06:02 +0200 Subject: [PATCH 0594/1227] gnu: r-foreign: Remove duplicate recipe. * gnu/packages/statistics.scm (r-foreign): Remove duplicate recipe. --- gnu/packages/statistics.scm | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e9bda5c1fa..ff6c12b543 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1602,26 +1602,6 @@ It is based on the methods described in Kaufman and Rousseeuw (1990) \"Finding Groups in Data\".") (license license:gpl2+))) -(define-public r-foreign - (package - (name "r-foreign") - (version "0.8-67") - (source - (origin - (method url-fetch) - (uri (cran-uri "foreign" version)) - (sha256 - (base32 - "1mcrm2pydimbyjhkrw5h380bifj1jhwzifph1xgh90asf3lvd1xd")))) - (build-system r-build-system) - (home-page "http://cran.r-project.org/web/packages/foreign") - (synopsis "Read data stored by other statistics software in R") - (description - "This package provides functions for reading and writing data stored by -some versions of Epi Info, Minitab, S, SAS, SPSS, Stata, Systat and Weka, and -for reading and writing some dBase files.") - (license license:gpl2+))) - (define-public r-formula (package (name "r-formula") From 14fce399ccf3384385c6bb89db1dc1cee111e2a3 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Tue, 1 Aug 2017 23:06:41 +0200 Subject: [PATCH 0595/1227] gnu: r-foreign: Update hash after upstream tarball change. * gnu/packages/statistics.scm (r-foreign): Update hash. The only difference in the tarball is the metadata. The contents are identical. --- gnu/packages/statistics.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ff6c12b543..99fd2e8d12 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -373,7 +373,7 @@ Hubert, based on Kaufman and Rousseeuw (1990) \"Finding Groups in Data\".") (uri (cran-uri "foreign" version)) (sha256 (base32 - "1mcrm2pydimbyjhkrw5h380bifj1jhwzifph1xgh90asf3lvd1xd")))) + "0j0z815zyp8n97rk6hlk68d1r8b26vls39s03viq0pnx3cbpwyga")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/foreign") (synopsis "Read data stored by other statistics software") From b73e49f595635d191b98997e4c6cce67b1bbe071 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Aug 2017 23:28:23 +0200 Subject: [PATCH 0596/1227] gnu: git: Update to 2.13.4. * gnu/packages/version-control.scm (git): Update to 2.13.4. --- gnu/packages/version-control.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 9667b2f3ec..9274a93f6a 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -120,14 +120,14 @@ as well as the classic centralized workflow.") (define-public git (package (name "git") - (version "2.13.3") + (version "2.13.4") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "0qiy696pwqhbxcrvm3zhyjnfjrym541glhvgc4cynrwg8az27ali")))) + "1nmg0n9l5ix876iqhcyhdnmiy7ihv0ybdijf1lssch6ja8m5j6ip")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -140,7 +140,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "1hl1fhbr3jn4y9pkj26kk9frj6wjlxiphl7x5c9ma6x4081xna0i")))))) + "0ljxkfi7ski9bgpdb8xpikl1xgjjk7bdzmzzkbj93jybk6iajkv7")))))) (inputs `(("curl" ,curl) ("expat" ,expat) From 7d960db1e3968aa87dc973c8dc863844f099f240 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Aug 2017 23:35:03 +0200 Subject: [PATCH 0597/1227] gnu: slop: Update to 7.3.48. * gnu/packages/xdisorg.scm (slop): Update to 7.3.48. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 84794a05c3..6f3c4cea8a 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -443,7 +443,7 @@ of the screen selected by mouse.") (define-public slop (package (name "slop") - (version "6.3.47") + (version "7.3.48") (source (origin (method url-fetch) (uri (string-append @@ -452,7 +452,7 @@ of the screen selected by mouse.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1kjivsq4c7dr7ggp44k09xm97i9chg8czvachqrfnv6fiqvwys0i")))) + "14igmf6a6vwx75gjnj10497n04klc35dvq87id8g9jn9rd3m6n25")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target From 1926fd2baa8e1d2363e0aeead9a69a01d4140232 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Aug 2017 23:35:31 +0200 Subject: [PATCH 0598/1227] gnu: maim: Update to 5.4.66. * gnu/packages/xdisorg.scm (maim): Update to 5.4.66. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 6f3c4cea8a..31d39ea1ff 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -476,7 +476,7 @@ selection's dimensions to stdout.") (define-public maim (package (name "maim") - (version "5.4.64") + (version "5.4.66") (source (origin (method url-fetch) (uri (string-append @@ -485,7 +485,7 @@ selection's dimensions to stdout.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0y7ajwcp6x9q7581alz2b5xqijs5cb9l38h10fzinswqrcz53ak1")))) + "077aww1fab3ihzxdybxpdh0h3d7fbgpvsm9q92byfb2ig32viyfa")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target From fc8f0631b4163d31a97fccb9a14201b5e861fa52 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 1 Aug 2017 23:37:20 +0200 Subject: [PATCH 0599/1227] gnu: re2: Update to 2017-08-01. * gnu/packages/regex.scm (re2): Update to 2017-08-01. --- gnu/packages/regex.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm index 275912b9d0..f35d3e63aa 100644 --- a/gnu/packages/regex.scm +++ b/gnu/packages/regex.scm @@ -28,7 +28,7 @@ (define-public re2 (package (name "re2") - (version "2017-07-01") + (version "2017-08-01") (source (origin (method url-fetch) (uri @@ -38,7 +38,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "07jbhcfpa4z8ra08q0i7j9p9sq6yy1wdx09laysz9jysgkc6mw76")))) + "0dhndzr4ncdpa3yq22qlzxk7i1vlrcdg9z65k0k3j9bi37f271wk")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) From 7441f1dbd77b09f6170858795bc7deea6280b972 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 28 Jul 2017 17:47:19 +0200 Subject: [PATCH 0600/1227] build: Make Guile-Git a hard requirement. * configure.ac: Error out when (git) is missing. * doc/guix.texi (Requirements): Mention Guile-Git. * Makefile.am (MODULES): Add guix/git.scm unconditionally. --- Makefile.am | 8 +------- configure.ac | 10 ++++++---- doc/guix.texi | 4 ++++ 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Makefile.am b/Makefile.am index 5888bc0266..0a7e375c29 100644 --- a/Makefile.am +++ b/Makefile.am @@ -66,6 +66,7 @@ MODULES = \ guix/gnu-maintenance.scm \ guix/upstream.scm \ guix/licenses.scm \ + guix/git.scm \ guix/graph.scm \ guix/cache.scm \ guix/cve.scm \ @@ -207,13 +208,6 @@ MODULES += \ endif HAVE_GUILE_SSH -if HAVE_GUILE_GIT - -MODULES += \ - guix/git.scm - -endif HAVE_GUILE_GIT - if BUILD_DAEMON_OFFLOAD MODULES += \ diff --git a/configure.ac b/configure.ac index 2b75c900cc..9ad7598f8b 100644 --- a/configure.ac +++ b/configure.ac @@ -100,14 +100,16 @@ if test "x$have_gnutls" != "xyes"; then AC_MSG_ERROR([The Guile bindings of GnuTLS are missing; please install them.]) fi +dnl Check for Guile-Git. +GUILE_MODULE_AVAILABLE([have_guile_git], [(git)]) +if test "x$have_guile_git" != "xyes"; then + AC_MSG_ERROR([Guile-Git is missing; please install it.]) +fi + dnl Guile-JSON is used in various places. GUILE_MODULE_AVAILABLE([have_guile_json], [(json)]) AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"]) -dnl Check for Guile-Git. -GUILE_MODULE_AVAILABLE([have_guile_git], [(git)]) -AM_CONDITIONAL([HAVE_GUILE_GIT], [test "x$have_guile_git" = "xyes"]) - dnl Make sure we have a full-fledged Guile. GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads]) diff --git a/doc/guix.texi b/doc/guix.texi index 6b4b19d0cf..7957565e85 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -580,6 +580,10 @@ later, including 2.2.x; @uref{http://gnutls.org/, GnuTLS}, specifically its Guile bindings (@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile}); +@item +@c FIXME: Specify a version number once a release has been made. +@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August +2017 or later; @item @url{http://www.gnu.org/software/make/, GNU Make}. @end itemize From 59a16275189f55ddd692b0ea5b415c706fa1fd69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 28 Jul 2017 17:38:19 +0200 Subject: [PATCH 0601/1227] pull: Fetch source code from Git. * guix/scripts/pull.scm (%snapshot-url, with-environment-variable) (with-PATH): Remove. (ensure-guile-git!): New procedure. (%repository-url): New variable. (%default-options): Add 'repository-url' and 'ref'. (show-help, %options): Add '--commit' and '--url'. (temporary-directory, first-directory, interned-then-deleted) (unpack): Remove. (build-from-source): Rename 'tarball' to 'source'. Remove call to 'unpack'. (build-and-install): Rename 'tarball' to 'source'. (honor-lets-encrypt-certificates!, report-git-error): New procedures. (with-git-error-handling): New macro. (guix-pull)[fetch-tarball]: Remove. Wrap body in 'with-git-error-handling'. Rewrite to use 'latest-repository-commit'. * build-aux/build-self.scm (build): Print an error message and exit when GUILE-GIT is #f. * doc/guix.texi (Invoking guix pull): Mention Git. Document '--commit' and '--branch'. --- build-aux/build-self.scm | 17 +++ doc/guix.texi | 25 ++--- guix/scripts/pull.scm | 237 +++++++++++++++++++++------------------ 3 files changed, 153 insertions(+), 126 deletions(-) diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm index 8fb9af23ca..4933e02712 100644 --- a/build-aux/build-self.scm +++ b/build-aux/build-self.scm @@ -224,6 +224,23 @@ files." (current-error-port) (%make-void-port "w"))))) + (unless guile-git + ;; XXX: Guix before February 2017 lacks a 'guile-git' package altogether. + ;; If we try to upgrade anyway, the logic in (guix scripts pull) will not + ;; build (guix git), which will leave us with an unusable 'guix pull'. To + ;; avoid that, fail early. + (format (current-error-port) + "\ +Your installation is too old and lacks a '~a' package. +Please upgrade to an intermediate version first, for instance with: + + guix pull --url=https://git.savannah.gnu.org/cgit/guix.git/snapshot/v0.13.0.tar.gz +\n" + (match (effective-version) + ("2.0" "guile2.0-git") + (_ "guile-git"))) + (exit 1)) + (mlet %store-monad ((guile (guile-for-build))) (gexp->derivation "guix-latest" builder #:modules '((guix build pull) diff --git a/doc/guix.texi b/doc/guix.texi index 7957565e85..0ea677387b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -2477,7 +2477,8 @@ Packages are installed or upgraded to the latest version available in the distribution currently available on your local machine. To update that distribution, along with the Guix tools, you must run @command{guix pull}: the command downloads the latest Guix source code and package -descriptions, and deploys it. +descriptions, and deploys it. Source code is downloaded from a +@uref{https://git-scm.com, Git} repository. On completion, @command{guix package} will use packages and package versions from this just-retrieved copy of Guix. Not only that, but all @@ -2503,24 +2504,18 @@ but it supports the following options: Produce verbose output, writing build logs to the standard error output. @item --url=@var{url} -Download the source tarball of Guix from @var{url}. +Download Guix from the Git repository at @var{url}. -By default, the tarball is taken from its canonical address at +By default, the source is taken from its canonical Git repository at @code{gnu.org}, for the stable branch of Guix. -With some Git servers, this can be used to deploy any version of Guix. -For example, to download and deploy version 0.12.0 of Guix from the -canonical Git repo: +@item --commit=@var{commit} +Deploy @var{commit}, a valid Git commit ID represented as a hexadecimal +string. -@example -guix pull --url=https://git.savannah.gnu.org/cgit/guix.git/snapshot/v0.12.0.tar.gz -@end example - -It can also be used to deploy arbitrary Git revisions: - -@example -guix pull --url=https://git.savannah.gnu.org/cgit/guix.git/snapshot/74d862e8a.tar.gz -@end example +@item --branch=@var{branch} +Deploy the tip of @var{branch}, the name of a Git branch available on +the repository at @var{url}. @item --bootstrap Use the bootstrap Guile to build the latest Guix. This option is only diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index 58b87d4df4..e3b07e08b1 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -41,6 +41,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages gnupg) #:use-module (srfi srfi-1) + #:use-module (srfi srfi-11) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) #:use-module (srfi srfi-37) @@ -48,23 +49,39 @@ #:use-module (ice-9 match) #:export (guix-pull)) -(define %snapshot-url - ;; "http://hydra.gnu.org/job/guix/master/tarball/latest/download" - "https://git.savannah.gnu.org/cgit/guix.git/snapshot/master.tar.gz" - ) +(module-autoload! (resolve-module '(guix scripts pull)) + '(git) '(git-error? set-tls-certificate-locations!) + '(guix git) '(latest-repository-commit)) -(define-syntax-rule (with-environment-variable variable value body ...) - (let ((original (getenv variable))) - (dynamic-wind - (lambda () - (setenv variable value)) - (lambda () - body ...) - (lambda () - (setenv variable original))))) +(define (ensure-guile-git!) + ;; Previously Guile-Git was not a prerequisite. Thus, someone running 'guix + ;; pull' on an old installation may be lacking Guile-Git. To address this, + ;; we autoload things that depend on Guile-Git and check in the entry point + ;; whether Guile-Git is available. + ;; + ;; TODO: Remove this hack when Guile-Git is widespread or enforced. -(define-syntax-rule (with-PATH value body ...) - (with-environment-variable "PATH" value body ...)) + (unless (false-if-exception (resolve-interface '(git))) + (leave (G_ "Guile-Git is missing but it is now required by 'guix pull'. +Install it by running: + + guix package -i ~a + export GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/~a:$GUILE_LOAD_PATH + export GUILE_LOAD_COMPILED_PATH=$HOME/.guix-profile/lib/guile/~a/site-ccache:$GUILE_LOAD_COMPILED_PATH +\n") + (match (effective-version) + ("2.0" "guile2.0-git") + (_ "guile-git")) + (effective-version) + (effective-version))) + + ;; XXX: For unclear reasons this is needed for + ;; 'set-tls-certificate-locations!'. + (module-use! (resolve-module '(guix scripts pull)) + (resolve-interface '(git)))) + +(define %repository-url + "https://git.savannah.gnu.org/git/guix.git") ;;; @@ -73,7 +90,8 @@ (define %default-options ;; Alist of default option values. - `((tarball-url . ,%snapshot-url) + `((repository-url . ,%repository-url) + (ref . (branch . "origin/master")) (system . ,(%current-system)) (substitutes? . #t) (graft? . #t) @@ -86,7 +104,11 @@ Download and deploy the latest version of Guix.\n")) (display (G_ " --verbose produce verbose output")) (display (G_ " - --url=URL download the Guix tarball from URL")) + --url=URL download from the Git repository at URL")) + (display (G_ " + --commit=COMMIT download the specified COMMIT")) + (display (G_ " + --branch=BRANCH download the tip of the specified BRANCH")) (display (G_ " --bootstrap use the bootstrap Guile to build the new Guix")) (newline) @@ -105,8 +127,15 @@ Download and deploy the latest version of Guix.\n")) (alist-cons 'verbose? #t result))) (option '("url") #t #f (lambda (opt name arg result) - (alist-cons 'tarball-url arg - (alist-delete 'tarball-url result)))) + (alist-cons 'repository-url arg + (alist-delete 'repository-url result)))) + (option '("commit") #t #f + (lambda (opt name arg result) + (alist-cons 'ref `(commit . ,arg) result))) + (option '("branch") #t #f + (lambda (opt name arg result) + (alist-cons 'ref `(branch . ,(string-append "origin/" arg)) + result))) (option '(#\n "dry-run") #f #f (lambda (opt name arg result) (alist-cons 'dry-run? #t (alist-cons 'graft? #f result)))) @@ -129,81 +158,28 @@ Download and deploy the latest version of Guix.\n")) (define indirect-root-added (store-lift add-indirect-root)) -(define (temporary-directory) - "Make a temporary directory and return its name." - (let ((name (tmpnam))) - (mkdir name) - (chmod name #o700) - name)) - -(define (first-directory directory) - "Return a the name of the first file found under DIRECTORY." - (match (scandir directory - (lambda (name) - (and (not (member name '("." ".."))) - (file-is-directory? name)))) - ((directory) - directory) - (x - (raise (condition - (&message - (message "tarball did not produce a single source directory"))))))) - -(define (interned-then-deleted directory name) - "Add DIRECTORY to the store under NAME, and delete it. Return the resulting -store file name." - (mlet %store-monad ((result (interned-file directory name - #:recursive? #t))) - (delete-file-recursively directory) - (return result))) - -(define (unpack tarball) - "Return the name of the directory where TARBALL has been unpacked." - (mlet* %store-monad ((format -> (lift format %store-monad)) - (tar (package->derivation tar)) - (gzip (package->derivation gzip))) - (mbegin %store-monad - (what-to-build (list tar gzip)) - (built-derivations (list tar gzip)) - (format #t (G_ "unpacking '~a'...~%") tarball) - - (let ((source (temporary-directory))) - (with-directory-excursion source - (with-PATH (string-append (derivation->output-path gzip) "/bin") - (unless (zero? (system* (string-append (derivation->output-path tar) - "/bin/tar") - "xf" tarball)) - (raise (condition - (&message (message "failed to unpack source code")))))) - - (interned-then-deleted (string-append source "/" - (first-directory source)) - "guix-source")))))) - (define %self-build-file ;; The file containing code to build Guix. This serves the same purpose as ;; a makefile, and, similarly, is intended to always keep this name. "build-aux/build-self.scm") -(define* (build-from-source tarball #:key verbose?) - "Return a derivation to build Guix from TARBALL, using the self-build script +(define* (build-from-source source #:key verbose?) + "Return a derivation to build Guix from SOURCE, using the self-build script contained therein." ;; Running the self-build script makes it easier to update the build ;; procedure: the self-build script of the Guix-to-be-installed contains the ;; right dependencies, build procedure, etc., which the Guix-in-use may not ;; be know. - (mlet* %store-monad ((source (unpack tarball)) - (script -> (string-append source "/" - %self-build-file)) - (build -> (primitive-load script))) + (let* ((script (string-append source "/" %self-build-file)) + (build (primitive-load script))) ;; BUILD must be a monadic procedure of at least one argument: the source ;; tree. (build source #:verbose? verbose?))) -(define* (build-and-install tarball config-dir +(define* (build-and-install source config-dir #:key verbose?) - "Build the tool from TARBALL, and install it in CONFIG-DIR." - (mlet* %store-monad ((source (build-from-source tarball + "Build the tool from SOURCE, and install it in CONFIG-DIR." + (mlet* %store-monad ((source (build-from-source source #:verbose? verbose?)) (source-dir -> (derivation->output-path source)) (to-do? (what-to-build (list source))) @@ -227,44 +203,83 @@ contained therein." (return #t)))) (leave (G_ "failed to update Guix, check the build log~%"))))) +(define (honor-lets-encrypt-certificates! store) + "Tell Guile-Git to use the Let's Encrypt certificates." + (let* ((drv (package-derivation store le-certs)) + (certs (string-append (derivation->output-path drv) + "/etc/ssl/certs"))) + (build-derivations store (list drv)) + + ;; In the past Guile-Git would not provide this procedure. + (if (module-defined? (resolve-interface '(git)) + 'set-tls-certificate-locations!) + (set-tls-certificate-locations! certs) + (begin + ;; In this case we end up using whichever certificates OpenSSL + ;; chooses to use: $SSL_CERT_FILE, $SSL_CERT_DIR, or /etc/ssl/certs. + (warning (G_ "cannot enforce use of the Let's Encrypt \ +certificates~%")) + (warning (G_ "please upgrade Guile-Git~%")))))) + +(define (report-git-error error) + "Report the given Guile-Git error." + ;; Prior to Guile-Git commit b6b2760c2fd6dfaa5c0fedb43eeaff06166b3134, + ;; errors would be represented by integers. + (match error + ((? integer? error) ;old Guile-Git + (leave (G_ "Git error ~a~%") error)) + ((? git-error? error) ;new Guile-Git + (leave (G_ "Git error: ~a~%") (git-error-message error))))) + +(define-syntax-rule (with-git-error-handling body ...) + (catch 'git-error + (lambda () + body ...) + (lambda (key err) + (report-git-error err)))) + (define (guix-pull . args) (define (use-le-certs? url) (string-prefix? "https://git.savannah.gnu.org/" url)) - (define (fetch-tarball store url) - (download-to-store store url "guix-latest.tar.gz")) - (with-error-handling - (let* ((opts (parse-command-line args %options - (list %default-options))) - (url (assoc-ref opts 'tarball-url))) - (unless (assoc-ref opts 'dry-run?) ;XXX: not very useful - (with-store store - (set-build-options-from-command-line store opts) - (let ((tarball - (if (use-le-certs? url) - (let* ((drv (package-derivation store le-certs)) - (certs (string-append (derivation->output-path drv) - "/etc/ssl/certs"))) - (build-derivations store (list drv)) - (parameterize ((%x509-certificate-directory certs)) - (fetch-tarball store url))) - (fetch-tarball store url)))) - (unless tarball - (leave (G_ "failed to download up-to-date source, exiting\n"))) - (parameterize ((%guile-for-build - (package-derivation store - (if (assoc-ref opts 'bootstrap?) - %bootstrap-guile - (canonical-package guile-2.0))))) - (run-with-store store - (build-and-install tarball (config-directory) - #:verbose? (assoc-ref opts 'verbose?)))))))))) + (with-git-error-handling + (let* ((opts (parse-command-line args %options + (list %default-options))) + (url (assoc-ref opts 'repository-url)) + (ref (assoc-ref opts 'ref)) + (cache (string-append (cache-directory) "/pull"))) + (ensure-guile-git!) -;; Local Variables: -;; eval: (put 'with-PATH 'scheme-indent-function 1) -;; eval: (put 'with-temporary-directory 'scheme-indent-function 1) -;; End: + (unless (assoc-ref opts 'dry-run?) ;XXX: not very useful + (with-store store + (set-build-options-from-command-line store opts) + + ;; For reproducibility, always refer to the LE certificates when we + ;; know we're talking to Savannah. + (when (use-le-certs? url) + (honor-lets-encrypt-certificates! store)) + + (format (current-error-port) + (G_ "Updating from Git repository at '~a'...~%") + url) + + (let-values (((checkout commit) + (latest-repository-commit store url + #:ref ref + #:cache-directory cache))) + + (format (current-error-port) + (G_ "Building from Git commit ~a...~%") + commit) + (parameterize ((%guile-for-build + (package-derivation store + (if (assoc-ref opts 'bootstrap?) + %bootstrap-guile + (canonical-package guile-2.0))))) + (run-with-store store + (build-and-install checkout (config-directory) + #:verbose? (assoc-ref opts 'verbose?))))))))))) ;;; pull.scm ends here From 3085b50200a49429d51b043c742bf053f37d1491 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 28 Jul 2017 17:58:18 +0200 Subject: [PATCH 0602/1227] pull: Use the commit ID as the version string. * guix/scripts/pull.scm (build-from-source): Add #:commit parameter. Pass it to BUILD. (build-and-install): Add #:commit and pass it to 'build-from-source'. (guix-pull): Pass #:commit to 'build-and-install'. --- guix/scripts/pull.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index e3b07e08b1..02cec999a3 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -163,9 +163,10 @@ Download and deploy the latest version of Guix.\n")) ;; a makefile, and, similarly, is intended to always keep this name. "build-aux/build-self.scm") -(define* (build-from-source source #:key verbose?) +(define* (build-from-source source + #:key verbose? commit) "Return a derivation to build Guix from SOURCE, using the self-build script -contained therein." +contained therein. Use COMMIT as the version string." ;; Running the self-build script makes it easier to update the build ;; procedure: the self-build script of the Guix-to-be-installed contains the ;; right dependencies, build procedure, etc., which the Guix-in-use may not @@ -174,12 +175,13 @@ contained therein." (build (primitive-load script))) ;; BUILD must be a monadic procedure of at least one argument: the source ;; tree. - (build source #:verbose? verbose?))) + (build source #:verbose? verbose? #:version commit))) (define* (build-and-install source config-dir - #:key verbose?) + #:key verbose? commit) "Build the tool from SOURCE, and install it in CONFIG-DIR." (mlet* %store-monad ((source (build-from-source source + #:commit commit #:verbose? verbose?)) (source-dir -> (derivation->output-path source)) (to-do? (what-to-build (list source))) @@ -280,6 +282,7 @@ certificates~%")) (canonical-package guile-2.0))))) (run-with-store store (build-and-install checkout (config-directory) + #:commit commit #:verbose? (assoc-ref opts 'verbose?))))))))))) ;;; pull.scm ends here From c53fc481440ff9d4cf23e8da3abc0759faca337a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 1 Aug 2017 23:38:07 +0200 Subject: [PATCH 0603/1227] pull: Honor '--no-grafts'. * guix/scripts/pull.scm (guix-pull): Parameterize %GRAFT? as a function of OPTS. --- guix/scripts/pull.scm | 54 +++++++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index 02cec999a3..a1deec8040 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -27,6 +27,7 @@ #:use-module (guix derivations) #:use-module (guix download) #:use-module (guix gexp) + #:use-module (guix grafts) #:use-module (guix monads) #:use-module (guix scripts build) #:use-module ((guix build utils) @@ -256,33 +257,36 @@ certificates~%")) (unless (assoc-ref opts 'dry-run?) ;XXX: not very useful (with-store store - (set-build-options-from-command-line store opts) + (parameterize ((%graft? (assoc-ref opts 'graft?))) + (set-build-options-from-command-line store opts) - ;; For reproducibility, always refer to the LE certificates when we - ;; know we're talking to Savannah. - (when (use-le-certs? url) - (honor-lets-encrypt-certificates! store)) - - (format (current-error-port) - (G_ "Updating from Git repository at '~a'...~%") - url) - - (let-values (((checkout commit) - (latest-repository-commit store url - #:ref ref - #:cache-directory cache))) + ;; For reproducibility, always refer to the LE certificates when we + ;; know we're talking to Savannah. + (when (use-le-certs? url) + (honor-lets-encrypt-certificates! store)) (format (current-error-port) - (G_ "Building from Git commit ~a...~%") - commit) - (parameterize ((%guile-for-build - (package-derivation store - (if (assoc-ref opts 'bootstrap?) - %bootstrap-guile - (canonical-package guile-2.0))))) - (run-with-store store - (build-and-install checkout (config-directory) - #:commit commit - #:verbose? (assoc-ref opts 'verbose?))))))))))) + (G_ "Updating from Git repository at '~a'...~%") + url) + + (let-values (((checkout commit) + (latest-repository-commit store url + #:ref ref + #:cache-directory cache))) + + (format (current-error-port) + (G_ "Building from Git commit ~a...~%") + commit) + (parameterize ((%guile-for-build + (package-derivation + store + (if (assoc-ref opts 'bootstrap?) + %bootstrap-guile + (canonical-package guile-2.0))))) + (run-with-store store + (build-and-install checkout (config-directory) + #:commit commit + #:verbose? + (assoc-ref opts 'verbose?)))))))))))) ;;; pull.scm ends here From aa184803f8b4cdfcd174f2999c8529b59743f652 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:21:40 +0200 Subject: [PATCH 0604/1227] gnu: Add r-pkgconfig. * gnu/packages/statistics.scm (r-pkgconfig): New variable. --- gnu/packages/statistics.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 99fd2e8d12..9d17df52c8 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2587,6 +2587,24 @@ the plog header-only C++ logging library, and a method to log to R's standard error stream.") (license license:expat))) +(define-public r-pkgconfig + (package + (name "r-pkgconfig") + (version "2.0.1") + (source (origin + (method url-fetch) + (uri (cran-uri "pkgconfig" version)) + (sha256 + (base32 + "0h2sp93fqqjbfqgq82a3i94ybnndx6ghaal8pbf99firnsjb40mb")))) + (build-system r-build-system) + (home-page "https://github.com/gaborcsardi/pkgconfig") + (synopsis "Private configuration for R packages") + (description "This package provides the functionality to set configuration +options on a per-package basis. Options set by a given package only apply to +that package, other packages are unaffected.") + (license license:expat))) + (define-public r-rsqlite (package (name "r-rsqlite") From 796237a9a4f30b1106e7c6c7a505fbc61e59b163 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:22:33 +0200 Subject: [PATCH 0605/1227] gnu: Add r-blob. * gnu/packages/statistics.scm (r-blob): New variable. --- gnu/packages/statistics.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 9d17df52c8..47a04ce328 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2605,6 +2605,27 @@ options on a per-package basis. Options set by a given package only apply to that package, other packages are unaffected.") (license license:expat))) +(define-public r-blob + (package + (name "r-blob") + (version "1.1.0") + (source (origin + (method url-fetch) + (uri (cran-uri "blob" version)) + (sha256 + (base32 + "05pazzcyz3c3vd2l70zq9cf172cgjff4dnf419zigfnxycyn1mhn")))) + (build-system r-build-system) + (propagated-inputs + `(("r-tibble" ,r-tibble))) + (home-page "https://github.com/hadley/blob") + (synopsis "Simple S3 Class for representing vectors of binary data") + (description "Raw vectors in R are useful for storing a single binary +object. What if you want to put a vector of them in a data frame? The blob +package provides the blob object, a list of raw vectors, suitable for use as +a column in data frame.") + (license license:gpl3+))) + (define-public r-rsqlite (package (name "r-rsqlite") From 8060a617989d72e829551aee18b250bacd5262c6 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:23:16 +0200 Subject: [PATCH 0606/1227] gnu: r-rsqlite: Update to 2.0. * gnu/packages/statistics.scm (r-rsqlite): Update to 2.0. --- gnu/packages/statistics.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 47a04ce328..d13a8e8650 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2629,13 +2629,13 @@ a column in data frame.") (define-public r-rsqlite (package (name "r-rsqlite") - (version "1.1-2") + (version "2.0") (source (origin (method url-fetch) (uri (cran-uri "RSQLite" version)) (sha256 (base32 - "0mg9yhdvny3vjn72agai5ghqxd3vk8cd4x1lsc0gzc2b2dm2w0p4")))) + "1xpg1i1jkzkzv44k512k90c2vvl960pl2d4a3spwcha6yclyc3vz")))) (properties `((upstream-name . "RSQLite"))) (build-system r-build-system) (propagated-inputs @@ -2643,13 +2643,16 @@ a column in data frame.") ("r-bh" ,r-bh) ("r-memoise" ,r-memoise) ("r-plogr" ,r-plogr) - ("r-rcpp" ,r-rcpp))) + ("r-rcpp" ,r-rcpp) + ("r-bit64" ,r-bit64) + ("r-blob" ,r-blob) + ("r-pkgconfig" ,r-pkgconfig))) (home-page "https://github.com/rstats-db/RSQLite") (synopsis "SQLite interface for R") (description "This package embeds the SQLite database engine in R and provides an interface compliant with the DBI package. The source for the SQLite -engine (version 3.8.6) is included.") +engine (version 3.8.8.2) is included.") (license license:lgpl2.0+))) (define-public r-rcurl From bfa0d1e77351ee0be85c06595e6eb398731adde2 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:24:27 +0200 Subject: [PATCH 0607/1227] gnu: r-sva: Update to 3.24.4. * gnu/packages/bioinformatics.scm (r-sva): Update to 3.24.4. --- gnu/packages/bioinformatics.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 909044f2fd..c4414ba8b5 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8619,18 +8619,21 @@ number detection tools.") (define-public r-sva (package (name "r-sva") - (version "3.24.0") + (version "3.24.4") (source (origin (method url-fetch) (uri (bioconductor-uri "sva" version)) (sha256 (base32 - "04pxl61iyc845wmqca1qv8kbb8zcp0qp72zgvgki3zzmrph9a362")))) + "0wcway4ai9im81xnrzb1vij2iidq5pw24qhjfgacmhxvx3dzhbsc")))) (build-system r-build-system) (propagated-inputs `(("r-genefilter" ,r-genefilter) - ("r-mgcv" ,r-mgcv))) + ("r-mgcv" ,r-mgcv) + ("r-biocparallel" ,r-biocparallel) + ("r-matrixstats" ,r-matrixstats) + ("r-limma" ,r-limma))) (home-page "http://bioconductor.org/packages/sva") (synopsis "Surrogate variable analysis") (description From 9eb2714625a68d5108e8371c8fef23c5694b631e Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:25:00 +0200 Subject: [PATCH 0608/1227] gnu: r-copywriter: Update to 2.8.1. * gnu/packages/bioinformatics.scm (r-copywriter): Update to 2.8.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 c4414ba8b5..678ce454b4 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8579,14 +8579,14 @@ GenomicRanges Bioconductor package.") (define-public r-copywriter (package (name "r-copywriter") - (version "2.8.0") + (version "2.8.1") (source (origin (method url-fetch) (uri (bioconductor-uri "CopywriteR" version)) (sha256 (base32 - "183nmrqmdf9syqljslvwv7mhs9ar5xizzq98imgsc80q0m25ncjf")))) + "0xgqnq5v5213b3nzvlmjysjb7w1bc0iblqpmzbjqn7n0ib0qyhbm")))) (properties `((upstream-name . "CopywriteR"))) (build-system r-build-system) (propagated-inputs From 8cfaa9ab4e7b87dffc29e6f34e3ca81a48ff92f4 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:25:26 +0200 Subject: [PATCH 0609/1227] gnu: r-genomicfeatures: Update to 1.28.4. * gnu/packages/bioinformatics.scm (r-genomicfeatures): Update to 1.28.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 678ce454b4..c68f0c4014 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7133,13 +7133,13 @@ as well as query and modify the browser state, such as the current viewport.") (define-public r-genomicfeatures (package (name "r-genomicfeatures") - (version "1.28.0") + (version "1.28.4") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "1pjxlr34ygv8pvfwpyq268wpgqzphiwpij85fyhjqdwdp0a253ik")))) + "01ylvg275iy0cvsbxkbfxcf9pi9al597v5wnlqi2xdpmrcxyc3q0")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) From 15afa9bf8f8e4a76ad03bb61e9c9e4e66d36bb5d Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:26:00 +0200 Subject: [PATCH 0610/1227] gnu: r-rtracklayer: Update to 1.36.4. * gnu/packages/bioinformatics.scm (r-rtracklayer): Update to 1.36.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 c68f0c4014..5723947ab2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7088,13 +7088,13 @@ alignments.") (define-public r-rtracklayer (package (name "r-rtracklayer") - (version "1.36.0") + (version "1.36.4") (source (origin (method url-fetch) (uri (bioconductor-uri "rtracklayer" version)) (sha256 (base32 - "0dv7p3wzmx57inznf6fb06417zcm48g7fpazyahxny7bqgzwq0ig")))) + "050q1rv04w31168ljr975vxva31n9lqdx84rnmsk6zcr6p640ffp")))) (build-system r-build-system) (arguments `(#:phases From 26760c80cd453d56fcd78dfeddb80b105a68792b Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:26:33 +0200 Subject: [PATCH 0611/1227] gnu: r-genomicalignments: Update to 1.12.1. * gnu/packages/bioinformatics.scm (r-genomicalignments): Update to 1.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 5723947ab2..993cb1c371 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7055,13 +7055,13 @@ samples.") (define-public r-genomicalignments (package (name "r-genomicalignments") - (version "1.12.0") + (version "1.12.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicAlignments" version)) (sha256 (base32 - "1aagyrdk5309a7awg42lg0bpirp91i6i2ddvpmrs38pzriwahnjy")))) + "127690sys4i5q3l4vxnjg4xg8q19qlw2258vgs5d1156w9ypp04h")))) (properties `((upstream-name . "GenomicAlignments"))) (build-system r-build-system) From f41150f13d1dc956c78792aa69c0d7eaad14de19 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:26:55 +0200 Subject: [PATCH 0612/1227] gnu: r-summarizedexperiment: Update to 1.6.3. * gnu/packages/bioinformatics.scm (r-summarizedexperiment): 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 993cb1c371..c660898e5d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7024,13 +7024,13 @@ array-like objects like @code{DataFrame} objects (typically with Rle columns), (define-public r-summarizedexperiment (package (name "r-summarizedexperiment") - (version "1.6.0") + (version "1.6.3") (source (origin (method url-fetch) (uri (bioconductor-uri "SummarizedExperiment" version)) (sha256 (base32 - "1szjbzzz4pyip891nji71caalxh0rhqiv7rpv6q54swlrqpfkqkw")))) + "0j7xn7pk52d383fb1wplcggacl2586c4zi0alkgfc3wz7qq9w13s")))) (properties `((upstream-name . "SummarizedExperiment"))) (build-system r-build-system) From adf5d0a0bc5d675a9ffff857f7121d6c49d26d75 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:27:16 +0200 Subject: [PATCH 0613/1227] gnu: r-delayedarray: Update to 0.2.7. * gnu/packages/bioinformatics.scm (r-delayedarray): Update to 0.2.7. --- 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 c660898e5d..a8b2f3c705 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6994,13 +6994,13 @@ files.") (define-public r-delayedarray (package (name "r-delayedarray") - (version "0.2.0") + (version "0.2.7") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedArray" version)) (sha256 (base32 - "0pcsk0f2dg2ldzprs1cccqrk53jrysmm6ccgjj5wh6z3x17g7g2r")))) + "02dfqp4md9xaqjj712ijc3jswghmipr5hwkd5hr0x1xi6l2fb69g")))) (properties `((upstream-name . "DelayedArray"))) (build-system r-build-system) From 5077bc3e2e08135048b806a239b07f19b8398161 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:27:35 +0200 Subject: [PATCH 0614/1227] gnu: r-biostrings: Update to 2.44.2. * gnu/packages/bioinformatics.scm (r-biostrings): Update to 2.44.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 a8b2f3c705..60597cd9c8 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6924,13 +6924,13 @@ objects.") (define-public r-biostrings (package (name "r-biostrings") - (version "2.44.0") + (version "2.44.2") (source (origin (method url-fetch) (uri (bioconductor-uri "Biostrings" version)) (sha256 (base32 - "0ixgx12cx2z4n2khxq83crz9gc21qckj2v78y2p31567kfsw7clg")))) + "12c5abgshwq86357jr0r9039y6vl4d6ngysy89rsnr23ldnsirjp")))) (properties `((upstream-name . "Biostrings"))) (build-system r-build-system) From 1ff74d074ee06c1858daa7455a2103e542f14364 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:27:57 +0200 Subject: [PATCH 0615/1227] gnu: r-biocparallel: Update to 1.10.1. * gnu/packages/bioinformatics.scm (r-biocparallel): Update to 1.10.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 60597cd9c8..3c9a42d8fe 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6900,13 +6900,13 @@ powerful online queries from gene annotation to database mining.") (define-public r-biocparallel (package (name "r-biocparallel") - (version "1.10.0") + (version "1.10.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocParallel" version)) (sha256 (base32 - "01ph0kq70b5gkd7n6a4myjlvwzgc0hi4xfwz8h17h06n9p5sdwa9")))) + "08mdfxyk9nwz77v0xhlvs19p2wj0phgm5c5b25vm0xh3749njsp0")))) (properties `((upstream-name . "BiocParallel"))) (build-system r-build-system) From 0c6494a1db94b4d0816e4b1f705b11fbba77f197 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:28:16 +0200 Subject: [PATCH 0616/1227] gnu: r-biomart: Update to 2.32.1. * gnu/packages/bioinformatics.scm (r-biomart): Update to 2.32.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 3c9a42d8fe..15c40c9415 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6870,13 +6870,13 @@ annotation data packages using SQLite data storage.") (define-public r-biomart (package (name "r-biomart") - (version "2.32.0") + (version "2.32.1") (source (origin (method url-fetch) (uri (bioconductor-uri "biomaRt" version)) (sha256 (base32 - "0knkxh23vl9pa0by03xr6dy9aiah714cmf54jl828k51l9wv5l2j")))) + "0fhpbjlsgbqxrpj6nzhhk9q3ph81n5x4p7mmd097xjjn6b05w1d8")))) (properties `((upstream-name . "biomaRt"))) (build-system r-build-system) From 62eb93a7d07d7a744260476cc5060dd338d772ff Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:28:32 +0200 Subject: [PATCH 0617/1227] gnu: r-annotationdbi: Update to 1.38.2. * gnu/packages/bioinformatics.scm (r-annotationdbi): Update to 1.38.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 15c40c9415..6ea12caa1b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6843,13 +6843,13 @@ on Bioconductor or which replace R functions.") (define-public r-annotationdbi (package (name "r-annotationdbi") - (version "1.38.0") + (version "1.38.2") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationDbi" version)) (sha256 (base32 - "1xffm98s817mfc827cnr0by6167nlrl1glxzjawzz0rkghs41g27")))) + "1lsamnbf07zzsy5asy5hn97n2a4layv58w2bzd90ikcdx0gmzarj")))) (properties `((upstream-name . "AnnotationDbi"))) (build-system r-build-system) From 1898a7832fbd6d103b5e2fba07f502588b7fe0c8 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:30:27 +0200 Subject: [PATCH 0618/1227] gnu: r-biobase: Update to 2.36.2. * gnu/packages/bioinformatics.scm (r-biobase): Update to 2.36.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 6ea12caa1b..f09399e571 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6821,13 +6821,13 @@ manipulating genomic intervals and variables defined along a genome.") (define-public r-biobase (package (name "r-biobase") - (version "2.36.0") + (version "2.36.2") (source (origin (method url-fetch) (uri (bioconductor-uri "Biobase" version)) (sha256 (base32 - "0x7pf5xsdcj12dbf5qqki2c6bd5madqg2fbiq5xgisarpc9v6c1m")))) + "0sr48nqx5bqid4g6lr9zr9286xh842w717yvmssvddb5xxynib6f")))) (properties `((upstream-name . "Biobase"))) (build-system r-build-system) From 1b4738e23c88acdb89875c9247101e00514445e0 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:30:49 +0200 Subject: [PATCH 0619/1227] gnu: r-limma: Update to 3.32.5. * gnu/packages/bioinformatics.scm (r-limma): Update to 3.32.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 f09399e571..947e8000e3 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6737,13 +6737,13 @@ coding changes and predict coding outcomes.") (define-public r-limma (package (name "r-limma") - (version "3.32.0") + (version "3.32.5") (source (origin (method url-fetch) (uri (bioconductor-uri "limma" version)) (sha256 (base32 - "0q7rqm86nwq0rg4fjggfr7xqybjrxj425vni3cva70b4c8d1h425")))) + "0p2ayha9g9w5r8s7pgdf16mkmdbqwh6f35jh07g3b8gyra48gwiw")))) (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 48f5d283b2c38e8ea3958fc141df5a630e2f267c Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:31:08 +0200 Subject: [PATCH 0620/1227] gnu: r-variantannotation: Update to 1.22.3. * gnu/packages/bioinformatics.scm (r-variantannotation): Update to 1.22.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 947e8000e3..bace3de0e5 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6699,13 +6699,13 @@ CAGE.") (define-public r-variantannotation (package (name "r-variantannotation") - (version "1.22.0") + (version "1.22.3") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantAnnotation" version)) (sha256 (base32 - "05hpm4as36kvpiqhgnkfjwfx0a05p304c21ggba29iac4nanm8b3")))) + "0sr3vdn85x5zdxh80cfwlpfdpi2hmjy3fwi00ac3jya4v145vawr")))) (properties `((upstream-name . "VariantAnnotation"))) (inputs From 6252dd0f15925969d317fcf7b26940e7ec350bd8 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:31:28 +0200 Subject: [PATCH 0621/1227] gnu: r-genomeinfodb: Update to 1.12.2. * gnu/packages/bioinformatics.scm (r-genomeinfodb): Update to 1.12.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 bace3de0e5..d866510960 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6644,13 +6644,13 @@ ID and species. It is used by functions in the GenomeInfoDb package.") (define-public r-genomeinfodb (package (name "r-genomeinfodb") - (version "1.12.0") + (version "1.12.2") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomeInfoDb" version)) (sha256 (base32 - "1bwwhscjl376a5p43mx8ijrqajxmgypbqhv049pgagl22hkkf0y3")))) + "1hjxgmcnrngp1307ipqaq9hgxz4j0ldn7d46knhzs30k2r4qnrfp")))) (properties `((upstream-name . "GenomeInfoDb"))) (build-system r-build-system) From 3ec25eb2a8d10bab2e5a7c2efdaea49d435b0840 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:31:46 +0200 Subject: [PATCH 0622/1227] gnu: r-iranges: Update to 2.10.2. * gnu/packages/bioinformatics.scm (r-iranges): Update to 2.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 d866510960..6e323d3890 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6592,13 +6592,13 @@ utilities for sequence data management under the ACNUC system.") (define-public r-iranges (package (name "r-iranges") - (version "2.10.0") + (version "2.10.2") (source (origin (method url-fetch) (uri (bioconductor-uri "IRanges" version)) (sha256 (base32 - "0zp4mxm9h1p4krj7m7cinkvwa2ibqkq59jwpan97yvhb4z8q0d6n")))) + "1brmzs3rsf97gymridrh9c9r3vws8b3rpghaanxnniw36lmcajfy")))) (properties `((upstream-name . "IRanges"))) (build-system r-build-system) From 9c4348d8c4532c63879ac3ea076ac255124328fb Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:32:11 +0200 Subject: [PATCH 0623/1227] gnu: r-dnacopy: Update to 1.50.1. * gnu/packages/bioinformatics.scm (r-dnacopy): Update to 1.50.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 6e323d3890..4c21a21383 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6518,13 +6518,13 @@ that accept short and long options.") (define-public r-dnacopy (package (name "r-dnacopy") - (version "1.50.0") + (version "1.50.1") (source (origin (method url-fetch) (uri (bioconductor-uri "DNAcopy" version)) (sha256 (base32 - "0112ry62z18m7rdyrn3gvbxq2f6m44cawhcfb1f02z9xzlsj0k28")))) + "0f0x83db7rm5xf9fg5pjhvs4i165qqaf01lbwb8kj13fsqpwx15p")))) (properties `((upstream-name . "DNAcopy"))) (build-system r-build-system) From 0ff478344bcbc81993395c3cb2dc81771753a1ed Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:32:31 +0200 Subject: [PATCH 0624/1227] gnu: r-biocstyle: Update to 2.4.1. * gnu/packages/bioinformatics.scm (r-biocstyle): Update to 2.4.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 4c21a21383..8a9bd9c660 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6401,13 +6401,13 @@ authoring books and technical documents with R Markdown.") (define-public r-biocstyle (package (name "r-biocstyle") - (version "2.4.0") + (version "2.4.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocStyle" version)) (sha256 (base32 - "1n2c8rj920wmk3q2khmjfnhn5i4b3lmhx1whnghk0zk3jf88hvbi")))) + "0bmgmsfll923v573g0kyzlmjd7gly5jwgd8vkrcwvbam1gz75f2c")))) (properties `((upstream-name . "BiocStyle"))) (build-system r-build-system) From bd4a0bab5f8eb89e39884f890ea8462366b5b93a Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:32:46 +0200 Subject: [PATCH 0625/1227] gnu: r-category: Update to 2.42.1. * gnu/packages/bioinformatics.scm (r-category): Update to 2.42.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 8a9bd9c660..c856c5065d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5867,14 +5867,14 @@ Enrichment Analysis} (GSEA).") (define-public r-category (package (name "r-category") - (version "2.42.0") + (version "2.42.1") (source (origin (method url-fetch) (uri (bioconductor-uri "Category" version)) (sha256 (base32 - "0swcmihyjg0fhaaydl9hm24aj9zffw3bibza9y6sqs6jaqd97f09")))) + "1w186nhc85bglcgmbcrsdbb8l6rph21pl5kdwjqwkp0jnr9z0ifn")))) (properties `((upstream-name . "Category"))) (build-system r-build-system) (propagated-inputs From fd215c2978cc0abe5aca85b647446c2e8a947284 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:33:07 +0200 Subject: [PATCH 0626/1227] gnu: r-annotationforge: Update to 1.18.1. * gnu/packages/bioinformatics.scm (r-annotationforge): Update to 1.18.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 c856c5065d..4a8edad777 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5789,14 +5789,14 @@ distribution.") (define-public r-annotationforge (package (name "r-annotationforge") - (version "1.18.0") + (version "1.18.1") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationForge" version)) (sha256 (base32 - "01kd86vvgpa4a5zivcy4g6z8rhcykasdskrz8yqsqz211sd1xsr3")))) + "1366qvykd9cpcvwgc5g9mm9adw9rxw6p4814dd6l5fyb0pwpmysx")))) (properties `((upstream-name . "AnnotationForge"))) (build-system r-build-system) From f1915a5dd09bb18d06b57b118efd8a537e9754ce Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:33:23 +0200 Subject: [PATCH 0627/1227] gnu: r-deseq2: Update to 1.16.1. * gnu/packages/bioinformatics.scm (r-deseq2): Update to 1.16.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 4a8edad777..b47d13ea55 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5752,14 +5752,14 @@ high-throughput sequencing experiments.") (define-public r-deseq2 (package (name "r-deseq2") - (version "1.16.0") + (version "1.16.1") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq2" version)) (sha256 (base32 - "0m0apn3xi4kdkinsj4xkw5cwysicyjr6xxlxhpa4scyv589am1s5")))) + "01pvyljxkwazxl510v7h0971nx65iqd2bdkbdhw3xzind0n9pdvq")))) (properties `((upstream-name . "DESeq2"))) (build-system r-build-system) (propagated-inputs From 2f06dc04356f8e6f8d210f7bbcc73a75666bc3a8 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Wed, 2 Aug 2017 00:57:39 +0200 Subject: [PATCH 0628/1227] gnu: Add r-rlang. * gnu/packages/statistics.scm (r-rlang): New variable. --- gnu/packages/statistics.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d13a8e8650..fb7431c811 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1504,6 +1504,24 @@ private members, and they support inheritance, even when the classes are defined in different packages.") (license license:expat))) +(define-public r-rlang + (package + (name "r-rlang") + (version "0.1.1") + (source (origin + (method url-fetch) + (uri (cran-uri "rlang" version)) + (sha256 + (base32 + "0grwqy3zkvz96mvpwfbfyqid4jkfrqh3ldy2n6dpv2kjd1fzj0ar")))) + (build-system r-build-system) + (home-page "http://rlang.tidyverse.org") + (synopsis "Functions for base types, core R and Tidyverse features") + (description "This package provides a toolbox for working with base types, +core R features like the condition system, and core @code{Tidyverse} features +like tidy evaluation.") + (license license:gpl3))) + (define-public r-tibble (package (name "r-tibble") From 2e508b6dc0b1e8eb40f84b077875d01ea4fd920a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 2 Aug 2017 07:10:19 +0200 Subject: [PATCH 0629/1227] gnu: libvirt: Use HTTPS. * gnu/packages/virtualization.scm (libvirt)[source, home-page]: Use HTTPS. --- gnu/packages/virtualization.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 0ac76a72d9..4aa90010ea 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -320,7 +320,7 @@ manage system or application containers.") (version "3.5.0") (source (origin (method url-fetch) - (uri (string-append "http://libvirt.org/sources/libvirt-" + (uri (string-append "https://libvirt.org/sources/libvirt-" version ".tar.xz")) (sha256 (base32 @@ -381,7 +381,7 @@ manage system or application containers.") ("iptables" ,iptables))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://libvirt.org") + (home-page "https://libvirt.org") (synopsis "Simple API for virtualization") (description "Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux. The library aims at providing long From ced2d2b7ca547bdc0192445dd29ea1b356b752af Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 2 Aug 2017 07:09:53 +0200 Subject: [PATCH 0630/1227] gnu: libvirt: Update to 3.6.0. * gnu/packages/virtualization.scm (libvirt): Update to 3.6.0. --- gnu/packages/virtualization.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 4aa90010ea..628396e52c 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -317,14 +317,14 @@ manage system or application containers.") (define-public libvirt (package (name "libvirt") - (version "3.5.0") + (version "3.6.0") (source (origin (method url-fetch) (uri (string-append "https://libvirt.org/sources/libvirt-" version ".tar.xz")) (sha256 (base32 - "05mm4xdw6g960rwvc9189nhxpm1vrilnmpl4h4m1lha11pivlqr9")))) + "0gcyql5dp6j370kvik9hjhxirrg89m7l1q52yq0g75h7jpv9fb1s")))) (build-system gnu-build-system) (arguments `(;; FAIL: virshtest @@ -334,7 +334,7 @@ manage system or application containers.") ;; FAIL: networkxml2firewalltest ;; FAIL: nwfilterebiptablestest ;; FAIL: nwfilterxml2firewalltest - ;; Times out after PASS: virsh-vcpupin + ;; Times while running commandest. #:tests? #f #:configure-flags (list "--with-polkit" From 0abf52642043f5ed4b1a9ce51026f7e9bad2f428 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Tue, 1 Aug 2017 10:26:39 +0200 Subject: [PATCH 0631/1227] gnu: hdf4: Update to 4.12.13. * gnu/packages/maths.scm (hdf4): Update to 4.12.13. --- gnu/packages/maths.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 6566d750b2..1761f0222d 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -561,18 +561,17 @@ computations.") (define-public hdf4 (package (name "hdf4") - (version "4.2.12") + (version "4.2.13") (source (origin (method url-fetch) (uri (string-append "https://support.hdfgroup.org/ftp/HDF/releases/HDF" version "/src/hdf-" version ".tar.bz2")) (sha256 - (base32 "020jh563sjyxsgml8l809d2i1d4ms9shivwj3gbm7n0ilxbll8id")) + (base32 "1wz0586zh91pqb95wvr0pbh71a8rz358fdj6n2ksp85x2cis9lsm")) (patches (search-patches "hdf4-architectures.patch" "hdf4-reproducibility.patch" "hdf4-shared-fortran.patch")))) - (build-system gnu-build-system) (native-inputs `(("gfortran" ,gfortran) From a70b03d413b196dbce4747f9f039ebf28d1c568a Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Thu, 27 Jul 2017 16:45:19 +0200 Subject: [PATCH 0632/1227] gnu: Add python-grako * gnu/packages/python.scm (python-grako): New variable. --- gnu/packages/python.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 21e32c343d..cf77abdba5 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5168,6 +5168,34 @@ Python language binding specification.") (define-public python2-drmaa (package-with-python2 python-drmaa)) +(define-public python-grako + (package + (name "python-grako") + (version "3.99.9") + (source + (origin + (method url-fetch) + (uri + (pypi-uri "grako" version ".zip")) + (sha256 + (base32 + "0r63i68wcnv63rfjkasq1ah81frz61a6mzbcnaxhrkdpx84p7hzw")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; Test file 'grako.ebnf' is missing from archive. + (native-inputs + `(("unzip" ,unzip) + ("python-pytest" ,python-pytest-3.0) + ("python-pytest-runner" ,python-pytest-runner))) + (home-page "https://bitbucket.org/neogeny/grako") + (synopsis "EBNF parser generator") + (description + "Grako takes a grammar in a variation of EBNF as input, and outputs a +memoizing PEG/Packrat parser in Python.") + (license license:bsd-3))) + +(define-public python2-grako + (package-with-python2 python-grako)) + (define-public python-gridmap (package (name "python-gridmap") From 33485fa91316556ccc91314fab0477d3337c9d07 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Thu, 27 Jul 2017 16:47:53 +0200 Subject: [PATCH 0633/1227] gnu: eyed3: Update to 0.8, build with python3. * gnu/packages/mp3.scm (eyed3): [source] Update to 0.8. [arguments]: Disable tests; don't use python-2. [propagated-inputs]: Add python-six and python-grako. [native-inputs]: Remove. --- gnu/packages/mp3.scm | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index 789e596f84..37885c9e34 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -462,7 +462,7 @@ compression format (.mpc files).") (define-public eyed3 (package (name "eyed3") - (version "0.7.10") + (version "0.8") (source (origin (method url-fetch) (uri (string-append @@ -470,14 +470,13 @@ compression format (.mpc files).") version ".tar.gz")) (sha256 (base32 - "0wjicszs64ksj2y5jbk09yjd08znc1qnarlq8ssmx13f2d4x59wq")))) + "1dcswb0f6w3b05s1v43pq8fmavkd5g88ysndn9160wlaa1v9n40h")))) (build-system python-build-system) (arguments - `(#:python ,python-2)) - (native-inputs - `(("python2-nose" ,python2-nose) - ("python2-sphinx" ,python2-sphinx) - ("python2-coverage" ,python2-coverage))) + `(#:tests? #f)) ; the required test data contains copyrighted material. + (propagated-inputs + `(("python-six" ,python-six) + ("python-grako" ,python-grako))) (synopsis "MP3 tag ID3 metadata editor") (description "eyeD3 is a Python tool for working with audio files, specifically mp3 files containing ID3 metadata (i.e. song info). It provides a From e0958c2df833a5eb3b6ecfb66f8d971cd44dd49b Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 1 Aug 2017 15:37:28 +0000 Subject: [PATCH 0634/1227] gnu: libpng-apng: Update to 1.6.28. Fixes . * gnu/packages/image.scm (libpng-apng): Update to 1.6.28. Remove inherit of 'libpng'. [version]: Use own version, remove 'package-version libpng'. [source]: Don't inherit the source of libpng. [arguments]: Update hash of libpng-apng source. Signed-off-by: Leo Famulari --- gnu/packages/image.scm | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 139be62819..ab560d2acb 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2016 Eric Bavier ;;; Copyright © 2016 Arun Isaac ;;; Copyright © 2016, 2017 Kei Kebreau -;;; Copyright © 2017 ng0 +;;; Copyright © 2017 ng0 ;;; Copyright © 2017 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. @@ -91,11 +91,27 @@ library. It supports almost all PNG features and is extensible.") (license license:zlib) (home-page "http://www.libpng.org/pub/png/libpng.html"))) +;; libpng-apng should be updated when the APNG patch is released: +;; (define-public libpng-apng (package - (inherit libpng) (name "libpng-apng") - (version (package-version libpng)) + (version "1.6.28") + (source + (origin + (method url-fetch) + (uri (list (string-append "mirror://sourceforge/libpng/libpng16/" + version "/libpng-" version ".tar.xz") + (string-append + "ftp://ftp.simplesystems.org/pub/libpng/png/src" + "/libpng16/libpng-" version ".tar.xz") + (string-append + "ftp://ftp.simplesystems.org/pub/libpng/png/src/history" + "/libpng16/libpng-" version ".tar.xz"))) + (sha256 + (base32 + "0ylgyx93hnk38haqrh8prd3ax5ngzwvjqw5cxw7p9nxmwsfyrlyq")))) + (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -111,7 +127,7 @@ library. It supports almost all PNG features and is extensible.") (and (apply-patch "the-patch") (for-each apply-patch (find-files "\\.patch")))) - #t)) + #t)) (add-before 'configure 'no-checks (lambda _ (substitute* "Makefile.in" @@ -126,15 +142,19 @@ library. It supports almost all PNG features and is extensible.") version "/libpng-" version "-apng.patch.gz")) (sha256 (base32 - "026r0gbkf6d6v54wca02cdxln8sj4m2c1yk62sj2aasv2ki2ffh5")))))) + "0m5nv70n9903x3xzxw9qqc6sgf2rp106ha0x6gix0xf8wcrljaab")))))) (native-inputs `(("libtool" ,libtool))) + ;; libpng.la says "-lz", so propagate it. + (propagated-inputs + `(("zlib" ,zlib))) (synopsis "APNG patch for libpng") (description "APNG (Animated Portable Network Graphics) is an unofficial extension of the APNG (Portable Network Graphics) format. APNG patch provides APNG support to libpng.") - (home-page "https://sourceforge.net/projects/libpng-apng/"))) + (home-page "https://sourceforge.net/projects/libpng-apng/") + (license license:zlib))) (define-public libpng-1.2 (package From 696f1d0fb1d3f5211d9b38d0f70a5f5c9055a641 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 2 Aug 2017 11:16:30 -0400 Subject: [PATCH 0635/1227] gnu: libpng-apng: Be sure to apply the APNG patch. * gnu/packages/image.scm (libpng-apng)[arguments]: Check the return status of the patching procedures. --- gnu/packages/image.scm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index ab560d2acb..63e3fa5049 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -113,7 +113,10 @@ library. It supports almost all PNG features and is extensible.") "0ylgyx93hnk38haqrh8prd3ax5ngzwvjqw5cxw7p9nxmwsfyrlyq")))) (build-system gnu-build-system) (arguments - `(#:phases + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) + #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-apng (lambda* (#:key inputs #:allow-other-keys) @@ -123,11 +126,10 @@ library. It supports almost all PNG features and is extensible.") (let ((apng.gz (assoc-ref inputs "apng"))) (format #t "Applying APNG patch '~a'...~%" apng.gz) - (system (string-append "gunzip < " apng.gz " > the-patch")) - (and (apply-patch "the-patch") - (for-each apply-patch - (find-files "\\.patch")))) - #t)) + (and + (zero? + (system (string-append "gunzip < " apng.gz " > the-patch"))) + (apply-patch "the-patch"))))) (add-before 'configure 'no-checks (lambda _ (substitute* "Makefile.in" From 721d7a69126113c4dd068a7c86f339cf5e96b69d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 2 Aug 2017 19:14:06 +0300 Subject: [PATCH 0636/1227] gnu: gcc@4.7: Don't built on aarch64. * gnu/packages/gcc.scm (gcc@4.7, gcc@4.8, gcc@4.9)[supported-systems]: New field. --- gnu/packages/gcc.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index f0e8dae3e8..bb8570bec5 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -340,6 +340,7 @@ where the OS part is overloaded to denote a specific ABI---into GCC for several languages, including C, C++, Objective-C, Fortran, Java, Ada, and Go. It also includes runtime support libraries for these languages.") (license gpl3+) + (supported-systems (delete "aarch64-linux" %supported-systems)) (home-page "https://gcc.gnu.org/")))) (define-public gcc-4.8 @@ -352,7 +353,8 @@ Go. It also includes runtime support libraries for these languages.") (sha256 (base32 "08yggr18v373a1ihj0rg2vd6psnic42b518xcgp3r9k81xz1xyr2")) - (patches (search-patches "gcc-arm-link-spec-fix.patch")))))) + (patches (search-patches "gcc-arm-link-spec-fix.patch")))) + (supported-systems %supported-systems))) (define-public gcc-4.9 (package (inherit gcc-4.7) @@ -366,7 +368,8 @@ Go. It also includes runtime support libraries for these languages.") "14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc")) (patches (search-patches "gcc-arm-bug-71399.patch" "gcc-libvtv-runpath.patch")))) - (native-inputs `(("texinfo" ,texinfo))))) + (native-inputs `(("texinfo" ,texinfo))) + (supported-systems %supported-systems))) (define-public gcc-5 ;; Note: GCC >= 5 ships with .info files but 'make install' fails to install From 9ef5940ce4b0548e7831436a8f34967e21f8d69e Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Tue, 1 Aug 2017 17:56:26 +0300 Subject: [PATCH 0637/1227] gnu: calibre: Add python2-msgpack as an input. * gnu/packages/ebook.scm (calibre)[inputs]: Add python2-msgpack. --- gnu/packages/ebook.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index bbb127a7d9..32f4f3b2d1 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -41,6 +41,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages qt) + #:use-module (gnu packages serialization) #:use-module (gnu packages tls) #:use-module (gnu packages web) #:use-module (gnu packages xorg)) @@ -126,6 +127,8 @@ ("python2-lxml" ,python2-lxml) ("python2-markdown" ,python2-markdown) ("python2-mechanize" ,python2-mechanize) + ;; python2-msgpack is needed for the network content server to work. + ("python2-msgpack" ,python2-msgpack) ("python2-netifaces" ,python2-netifaces) ("python2-pillow" ,python2-pillow) ("python2-pygments" ,python2-pygments) From 2c5cf844302e06086647a137f01a35f777ae25d7 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 2 Aug 2017 14:36:05 -0400 Subject: [PATCH 0638/1227] gnu: python2-conda: Fix build by building with enum34. * gnu/packages/package-management.scm (python2-conda): Use 'python2-variant'. [native-inputs]: Add python2-enum34. --- gnu/packages/package-management.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 5c0e5a9c7d..d9ba5f6ce1 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -661,7 +661,12 @@ This package provides Conda as a library.") (license bsd-3))) (define-public python2-conda - (package-with-python2 python-conda)) + (let ((base (package-with-python2 + (strip-python2-variant python-conda)))) + (package (inherit base) + (native-inputs + `(("python2-enum34" ,python2-enum34) + ,@(package-native-inputs base)))))) (define-public conda (package (inherit python-conda) From 575e5e4e51e01aed1044cd8ba9e00a9631eba794 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 2 Aug 2017 20:48:12 +0300 Subject: [PATCH 0639/1227] gnu: glibc@2.24: Fix CVE-2015-5180. * gnu/packages/base.scm (glibc@2.24)[source]: Add patch. * gnu/packages/patches/glibc-CVE-2015-5180.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/base.scm | 1 + .../patches/glibc-CVE-2015-5180.patch | 311 ++++++++++++++++++ 3 files changed, 313 insertions(+) create mode 100644 gnu/packages/patches/glibc-CVE-2015-5180.patch diff --git a/gnu/local.mk b/gnu/local.mk index db8be36fb4..5cc8b64aa0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -644,6 +644,7 @@ dist_patch_DATA = \ %D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ + %D%/packages/patches/glibc-CVE-2015-5180.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt1.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt2.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt3.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 2040f84bf1..f23db9a778 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -933,6 +933,7 @@ GLIBC/HURD for a Hurd host" "glibc-versioned-locpath.patch" "glibc-o-largefile.patch" "glibc-vectorized-strcspn-guards.patch" + "glibc-CVE-2015-5180.patch" "glibc-CVE-2017-1000366-pt1.patch" "glibc-CVE-2017-1000366-pt2.patch" "glibc-CVE-2017-1000366-pt3.patch")))))) diff --git a/gnu/packages/patches/glibc-CVE-2015-5180.patch b/gnu/packages/patches/glibc-CVE-2015-5180.patch new file mode 100644 index 0000000000..92e3740fc1 --- /dev/null +++ b/gnu/packages/patches/glibc-CVE-2015-5180.patch @@ -0,0 +1,311 @@ +From b3b37f1a5559a7620e31c8053ed1b44f798f2b6d Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Sat, 31 Dec 2016 20:22:09 +0100 +Subject: [PATCH] CVE-2015-5180: resolv: Fix crash with internal QTYPE [BZ + #18784] + +Also rename T_UNSPEC because an upcoming public header file +update will use that name. + +(cherry picked from commit fc82b0a2dfe7dbd35671c10510a8da1043d746a5) +--- + ChangeLog | 14 ++++ + NEWS | 6 ++ + include/arpa/nameser_compat.h | 6 +- + resolv/Makefile | 5 ++ + resolv/nss_dns/dns-host.c | 2 +- + resolv/res_mkquery.c | 4 + + resolv/res_query.c | 6 +- + resolv/tst-resolv-qtypes.c | 185 ++++++++++++++++++++++++++++++++++++++++++ + 8 files changed, 221 insertions(+), 7 deletions(-) + create mode 100644 resolv/tst-resolv-qtypes.c + +diff --git a/include/arpa/nameser_compat.h b/include/arpa/nameser_compat.h +index 2e735ed..7c0deed 100644 +--- a/include/arpa/nameser_compat.h ++++ b/include/arpa/nameser_compat.h +@@ -1,8 +1,8 @@ + #ifndef _ARPA_NAMESER_COMPAT_ + #include + +-/* Picksome unused number to represent lookups of IPv4 and IPv6 (i.e., +- T_A and T_AAAA). */ +-#define T_UNSPEC 62321 ++/* The number is outside the 16-bit RR type range and is used ++ internally by the implementation. */ ++#define T_QUERY_A_AND_AAAA 439963904 + + #endif +diff --git a/resolv/Makefile b/resolv/Makefile +index 8be41d3..a4c86b9 100644 +--- a/resolv/Makefile ++++ b/resolv/Makefile +@@ -40,6 +40,9 @@ ifeq ($(have-thread-library),yes) + extra-libs += libanl + routines += gai_sigqueue + tests += tst-res_hconf_reorder ++ ++# This test sends millions of packets and is rather slow. ++xtests += tst-resolv-qtypes + endif + extra-libs-others = $(extra-libs) + libresolv-routines := gethnamaddr res_comp res_debug \ +@@ -117,3 +120,5 @@ tst-leaks2-ENV = MALLOC_TRACE=$(objpfx)tst-leaks2.mtrace + $(objpfx)mtrace-tst-leaks2.out: $(objpfx)tst-leaks2.out + $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks2.mtrace > $@; \ + $(evaluate-test) ++ ++$(objpfx)tst-resolv-qtypes: $(objpfx)libresolv.so $(shared-thread-library) +diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c +index 5f9e357..d16fa4b 100644 +--- a/resolv/nss_dns/dns-host.c ++++ b/resolv/nss_dns/dns-host.c +@@ -323,7 +323,7 @@ _nss_dns_gethostbyname4_r (const char *name, struct gaih_addrtuple **pat, + + int olderr = errno; + enum nss_status status; +- int n = __libc_res_nsearch (&_res, name, C_IN, T_UNSPEC, ++ int n = __libc_res_nsearch (&_res, name, C_IN, T_QUERY_A_AND_AAAA, + host_buffer.buf->buf, 2048, &host_buffer.ptr, + &ans2p, &nans2p, &resplen2, &ans2p_malloced); + if (n >= 0) +diff --git a/resolv/res_mkquery.c b/resolv/res_mkquery.c +index 12f9730..d80b531 100644 +--- a/resolv/res_mkquery.c ++++ b/resolv/res_mkquery.c +@@ -103,6 +103,10 @@ res_nmkquery(res_state statp, + int n; + u_char *dnptrs[20], **dpp, **lastdnptr; + ++ if (class < 0 || class > 65535 ++ || type < 0 || type > 65535) ++ return -1; ++ + #ifdef DEBUG + if (statp->options & RES_DEBUG) + printf(";; res_nmkquery(%s, %s, %s, %s)\n", +diff --git a/resolv/res_query.c b/resolv/res_query.c +index 944d1a9..07dc6f6 100644 +--- a/resolv/res_query.c ++++ b/resolv/res_query.c +@@ -122,7 +122,7 @@ __libc_res_nquery(res_state statp, + int n, use_malloc = 0; + u_int oflags = statp->_flags; + +- size_t bufsize = (type == T_UNSPEC ? 2 : 1) * QUERYSIZE; ++ size_t bufsize = (type == T_QUERY_A_AND_AAAA ? 2 : 1) * QUERYSIZE; + u_char *buf = alloca (bufsize); + u_char *query1 = buf; + int nquery1 = -1; +@@ -137,7 +137,7 @@ __libc_res_nquery(res_state statp, + printf(";; res_query(%s, %d, %d)\n", name, class, type); + #endif + +- if (type == T_UNSPEC) ++ if (type == T_QUERY_A_AND_AAAA) + { + n = res_nmkquery(statp, QUERY, name, class, T_A, NULL, 0, NULL, + query1, bufsize); +@@ -190,7 +190,7 @@ __libc_res_nquery(res_state statp, + if (__builtin_expect (n <= 0, 0) && !use_malloc) { + /* Retry just in case res_nmkquery failed because of too + short buffer. Shouldn't happen. */ +- bufsize = (type == T_UNSPEC ? 2 : 1) * MAXPACKET; ++ bufsize = (type == T_QUERY_A_AND_AAAA ? 2 : 1) * MAXPACKET; + buf = malloc (bufsize); + if (buf != NULL) { + query1 = buf; +diff --git a/resolv/tst-resolv-qtypes.c b/resolv/tst-resolv-qtypes.c +new file mode 100644 +index 0000000..b3e60c6 +--- /dev/null ++++ b/resolv/tst-resolv-qtypes.c +@@ -0,0 +1,185 @@ ++/* Exercise low-level query functions with different QTYPEs. ++ Copyright (C) 2016 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++/* If ture, the response function will send the actual response packet ++ over TCP instead of UDP. */ ++static volatile bool force_tcp; ++ ++/* Send back a fake resource record matching the QTYPE. */ ++static void ++response (const struct resolv_response_context *ctx, ++ struct resolv_response_builder *b, ++ const char *qname, uint16_t qclass, uint16_t qtype) ++{ ++ if (force_tcp && ctx->tcp) ++ { ++ resolv_response_init (b, (struct resolv_response_flags) { .tc = 1 }); ++ resolv_response_add_question (b, qname, qclass, qtype); ++ return; ++ } ++ ++ resolv_response_init (b, (struct resolv_response_flags) { }); ++ resolv_response_add_question (b, qname, qclass, qtype); ++ resolv_response_section (b, ns_s_an); ++ resolv_response_open_record (b, qname, qclass, qtype, 0); ++ resolv_response_add_data (b, &qtype, sizeof (qtype)); ++ resolv_response_close_record (b); ++} ++ ++static const const char *domain = "www.example.com"; ++ ++static int ++wrap_res_query (int type, unsigned char *answer, int answer_length) ++{ ++ return res_query (domain, C_IN, type, answer, answer_length); ++} ++ ++static int ++wrap_res_search (int type, unsigned char *answer, int answer_length) ++{ ++ return res_query (domain, C_IN, type, answer, answer_length); ++} ++ ++static int ++wrap_res_querydomain (int type, unsigned char *answer, int answer_length) ++{ ++ return res_querydomain ("www", "example.com", C_IN, type, ++ answer, answer_length); ++} ++ ++static int ++wrap_res_send (int type, unsigned char *answer, int answer_length) ++{ ++ unsigned char buf[512]; ++ int ret = res_mkquery (QUERY, domain, C_IN, type, ++ (const unsigned char *) "", 0, NULL, ++ buf, sizeof (buf)); ++ if (type < 0 || type >= 65536) ++ { ++ /* res_mkquery fails for out-of-range record types. */ ++ TEST_VERIFY_EXIT (ret == -1); ++ return -1; ++ } ++ TEST_VERIFY_EXIT (ret > 12); /* DNS header length. */ ++ return res_send (buf, ret, answer, answer_length); ++} ++ ++static int ++wrap_res_nquery (int type, unsigned char *answer, int answer_length) ++{ ++ return res_nquery (&_res, domain, C_IN, type, answer, answer_length); ++} ++ ++static int ++wrap_res_nsearch (int type, unsigned char *answer, int answer_length) ++{ ++ return res_nquery (&_res, domain, C_IN, type, answer, answer_length); ++} ++ ++static int ++wrap_res_nquerydomain (int type, unsigned char *answer, int answer_length) ++{ ++ return res_nquerydomain (&_res, "www", "example.com", C_IN, type, ++ answer, answer_length); ++} ++ ++static int ++wrap_res_nsend (int type, unsigned char *answer, int answer_length) ++{ ++ unsigned char buf[512]; ++ int ret = res_nmkquery (&_res, QUERY, domain, C_IN, type, ++ (const unsigned char *) "", 0, NULL, ++ buf, sizeof (buf)); ++ if (type < 0 || type >= 65536) ++ { ++ /* res_mkquery fails for out-of-range record types. */ ++ TEST_VERIFY_EXIT (ret == -1); ++ return -1; ++ } ++ TEST_VERIFY_EXIT (ret > 12); /* DNS header length. */ ++ return res_nsend (&_res, buf, ret, answer, answer_length); ++} ++ ++static void ++test_function (const char *fname, ++ int (*func) (int type, ++ unsigned char *answer, int answer_length)) ++{ ++ unsigned char buf[512]; ++ for (int tcp = 0; tcp < 2; ++tcp) ++ { ++ force_tcp = tcp; ++ for (unsigned int type = 1; type <= 65535; ++type) ++ { ++ if (test_verbose) ++ printf ("info: sending QTYPE %d with %s (tcp=%d)\n", ++ type, fname, tcp); ++ int ret = func (type, buf, sizeof (buf)); ++ if (ret != 47) ++ FAIL_EXIT1 ("%s tcp=%d qtype=%d return value %d", ++ fname,tcp, type, ret); ++ /* One question, one answer record. */ ++ TEST_VERIFY (memcmp (buf + 4, "\0\1\0\1\0\0\0\0", 8) == 0); ++ /* Question section. */ ++ static const char qname[] = "\3www\7example\3com"; ++ size_t qname_length = sizeof (qname); ++ TEST_VERIFY (memcmp (buf + 12, qname, qname_length) == 0); ++ /* RDATA part of answer. */ ++ uint16_t type16 = type; ++ TEST_VERIFY (memcmp (buf + ret - 2, &type16, sizeof (type16)) == 0); ++ } ++ } ++ ++ TEST_VERIFY (func (-1, buf, sizeof (buf) == -1)); ++ TEST_VERIFY (func (65536, buf, sizeof (buf) == -1)); ++} ++ ++static int ++do_test (void) ++{ ++ struct resolv_redirect_config config = ++ { ++ .response_callback = response, ++ }; ++ struct resolv_test *obj = resolv_test_start (config); ++ ++ test_function ("res_query", &wrap_res_query); ++ test_function ("res_search", &wrap_res_search); ++ test_function ("res_querydomain", &wrap_res_querydomain); ++ test_function ("res_send", &wrap_res_send); ++ ++ test_function ("res_nquery", &wrap_res_nquery); ++ test_function ("res_nsearch", &wrap_res_nsearch); ++ test_function ("res_nquerydomain", &wrap_res_nquerydomain); ++ test_function ("res_nsend", &wrap_res_nsend); ++ ++ resolv_test_end (obj); ++ return 0; ++} ++ ++#define TIMEOUT 300 ++#include +-- +2.9.3 + From a0ae64a334ce4dda269828bbb3c9182842e5cd50 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 2 Aug 2017 21:11:57 +0300 Subject: [PATCH 0640/1227] gnu: glibc@2.23: Fix CVE-2015-5180, CVE-2016-{3075,3706,4429}. * gnu/packages/base.scm (glibc@2.23)[source]: Add patches. * gnu/packages/patches/glibc-CVE-2016-3075.patch, gnu/packages/patches/glibc-CVE-2016-3706.patch, gnu/packages/patches/glibc-CVE-2016-4429.patch: New files. * gnu/local.mk (dist_patch_DATA): Register them. --- gnu/local.mk | 3 + gnu/packages/base.scm | 4 + .../patches/glibc-CVE-2016-3075.patch | 43 ++++ .../patches/glibc-CVE-2016-3706.patch | 188 ++++++++++++++++++ .../patches/glibc-CVE-2016-4429.patch | 58 ++++++ 5 files changed, 296 insertions(+) create mode 100644 gnu/packages/patches/glibc-CVE-2016-3075.patch create mode 100644 gnu/packages/patches/glibc-CVE-2016-3706.patch create mode 100644 gnu/packages/patches/glibc-CVE-2016-4429.patch diff --git a/gnu/local.mk b/gnu/local.mk index 5cc8b64aa0..67150aed67 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -645,6 +645,9 @@ dist_patch_DATA = \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glibc-CVE-2015-5180.patch \ + %D%/packages/patches/glibc-CVE-2016-3075.patch \ + %D%/packages/patches/glibc-CVE-2016-3706.patch \ + %D%/packages/patches/glibc-CVE-2016-4429.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt1.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt2.patch \ %D%/packages/patches/glibc-CVE-2017-1000366-pt3.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index f23db9a778..37e09eb8ce 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -953,6 +953,10 @@ GLIBC/HURD for a Hurd host" "glibc-versioned-locpath.patch" "glibc-o-largefile.patch" "glibc-vectorized-strcspn-guards.patch" + "glibc-CVE-2015-5180.patch" + "glibc-CVE-2016-3075.patch" + "glibc-CVE-2016-3706.patch" + "glibc-CVE-2016-4429.patch" "glibc-CVE-2017-1000366-pt1.patch" "glibc-CVE-2017-1000366-pt2.patch" "glibc-CVE-2017-1000366-pt3.patch")))))) diff --git a/gnu/packages/patches/glibc-CVE-2016-3075.patch b/gnu/packages/patches/glibc-CVE-2016-3075.patch new file mode 100644 index 0000000000..d16722806e --- /dev/null +++ b/gnu/packages/patches/glibc-CVE-2016-3075.patch @@ -0,0 +1,43 @@ +From 146b58d11fddbef15b888906e3be4f33900c416f Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Tue, 29 Mar 2016 12:57:56 +0200 +Subject: [PATCH] CVE-2016-3075: Stack overflow in _nss_dns_getnetbyname_r [BZ + #19879] + +The defensive copy is not needed because the name may not alias the +output buffer. + +(cherry picked from commit 317b199b4aff8cfa27f2302ab404d2bb5032b9a4) +(cherry picked from commit 883dceebc8f11921a9890211a4e202e5be17562f) +--- + ChangeLog | 7 +++++++ + NEWS | 10 ++++++++-- + resolv/nss_dns/dns-network.c | 5 +---- + 3 files changed, 16 insertions(+), 6 deletions(-) + +diff --git a/resolv/nss_dns/dns-network.c b/resolv/nss_dns/dns-network.c +index 2eb2f67..8f301a7 100644 +--- a/resolv/nss_dns/dns-network.c ++++ b/resolv/nss_dns/dns-network.c +@@ -118,17 +118,14 @@ _nss_dns_getnetbyname_r (const char *name, struct netent *result, + } net_buffer; + querybuf *orig_net_buffer; + int anslen; +- char *qbuf; + enum nss_status status; + + if (__res_maybe_init (&_res, 0) == -1) + return NSS_STATUS_UNAVAIL; + +- qbuf = strdupa (name); +- + net_buffer.buf = orig_net_buffer = (querybuf *) alloca (1024); + +- anslen = __libc_res_nsearch (&_res, qbuf, C_IN, T_PTR, net_buffer.buf->buf, ++ anslen = __libc_res_nsearch (&_res, name, C_IN, T_PTR, net_buffer.buf->buf, + 1024, &net_buffer.ptr, NULL, NULL, NULL, NULL); + if (anslen < 0) + { +-- +2.9.3 + diff --git a/gnu/packages/patches/glibc-CVE-2016-3706.patch b/gnu/packages/patches/glibc-CVE-2016-3706.patch new file mode 100644 index 0000000000..617242df24 --- /dev/null +++ b/gnu/packages/patches/glibc-CVE-2016-3706.patch @@ -0,0 +1,188 @@ +From 1a8a7c12950a0026a3c406a7cb1608f96aa1460e Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Fri, 29 Apr 2016 10:35:34 +0200 +Subject: [PATCH] CVE-2016-3706: getaddrinfo: stack overflow in hostent + conversion [BZ #20010] + +When converting a struct hostent response to struct gaih_addrtuple, the +gethosts macro (which is called from gaih_inet) used alloca, without +malloc fallback for large responses. This commit changes this code to +use calloc unconditionally. + +This commit also consolidated a second hostent-to-gaih_addrtuple +conversion loop (in gaih_inet) to use the new conversion function. + +(cherry picked from commit 4ab2ab03d4351914ee53248dc5aef4a8c88ff8b9) +--- + ChangeLog | 10 ++++ + sysdeps/posix/getaddrinfo.c | 130 +++++++++++++++++++++++--------------------- + 2 files changed, 79 insertions(+), 61 deletions(-) + +diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c +index 1ef3f20..fed2d3b 100644 +--- a/sysdeps/posix/getaddrinfo.c ++++ b/sysdeps/posix/getaddrinfo.c +@@ -168,9 +168,58 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, + return 0; + } + ++/* Convert struct hostent to a list of struct gaih_addrtuple objects. ++ h_name is not copied, and the struct hostent object must not be ++ deallocated prematurely. *RESULT must be NULL or a pointer to an ++ object allocated using malloc, which is freed. */ ++static bool ++convert_hostent_to_gaih_addrtuple (const struct addrinfo *req, ++ int family, ++ struct hostent *h, ++ struct gaih_addrtuple **result) ++{ ++ free (*result); ++ *result = NULL; ++ ++ /* Count the number of addresses in h->h_addr_list. */ ++ size_t count = 0; ++ for (char **p = h->h_addr_list; *p != NULL; ++p) ++ ++count; ++ ++ /* Report no data if no addresses are available, or if the incoming ++ address size is larger than what we can store. */ ++ if (count == 0 || h->h_length > sizeof (((struct gaih_addrtuple) {}).addr)) ++ return true; ++ ++ struct gaih_addrtuple *array = calloc (count, sizeof (*array)); ++ if (array == NULL) ++ return false; ++ ++ for (size_t i = 0; i < count; ++i) ++ { ++ if (family == AF_INET && req->ai_family == AF_INET6) ++ { ++ /* Perform address mapping. */ ++ array[i].family = AF_INET6; ++ memcpy(array[i].addr + 3, h->h_addr_list[i], sizeof (uint32_t)); ++ array[i].addr[2] = htonl (0xffff); ++ } ++ else ++ { ++ array[i].family = family; ++ memcpy (array[i].addr, h->h_addr_list[i], h->h_length); ++ } ++ array[i].next = array + i + 1; ++ } ++ array[0].name = h->h_name; ++ array[count - 1].next = NULL; ++ ++ *result = array; ++ return true; ++} ++ + #define gethosts(_family, _type) \ + { \ +- int i; \ + int herrno; \ + struct hostent th; \ + struct hostent *h; \ +@@ -219,36 +268,23 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp, + } \ + else if (h != NULL) \ + { \ +- for (i = 0; h->h_addr_list[i]; i++) \ ++ /* Make sure that addrmem can be freed. */ \ ++ if (!malloc_addrmem) \ ++ addrmem = NULL; \ ++ if (!convert_hostent_to_gaih_addrtuple (req, _family,h, &addrmem)) \ + { \ +- if (*pat == NULL) \ +- { \ +- *pat = __alloca (sizeof (struct gaih_addrtuple)); \ +- (*pat)->scopeid = 0; \ +- } \ +- uint32_t *addr = (*pat)->addr; \ +- (*pat)->next = NULL; \ +- (*pat)->name = i == 0 ? strdupa (h->h_name) : NULL; \ +- if (_family == AF_INET && req->ai_family == AF_INET6) \ +- { \ +- (*pat)->family = AF_INET6; \ +- addr[3] = *(uint32_t *) h->h_addr_list[i]; \ +- addr[2] = htonl (0xffff); \ +- addr[1] = 0; \ +- addr[0] = 0; \ +- } \ +- else \ +- { \ +- (*pat)->family = _family; \ +- memcpy (addr, h->h_addr_list[i], sizeof(_type)); \ +- } \ +- pat = &((*pat)->next); \ ++ _res.options |= old_res_options & RES_USE_INET6; \ ++ result = -EAI_SYSTEM; \ ++ goto free_and_return; \ + } \ ++ *pat = addrmem; \ ++ /* The conversion uses malloc unconditionally. */ \ ++ malloc_addrmem = true; \ + \ + if (localcanon != NULL && canon == NULL) \ + canon = strdupa (localcanon); \ + \ +- if (_family == AF_INET6 && i > 0) \ ++ if (_family == AF_INET6 && *pat != NULL) \ + got_ipv6 = true; \ + } \ + } +@@ -612,44 +648,16 @@ gaih_inet (const char *name, const struct gaih_service *service, + { + if (h != NULL) + { +- int i; +- /* We found data, count the number of addresses. */ +- for (i = 0; h->h_addr_list[i]; ++i) +- ; +- if (i > 0 && *pat != NULL) +- --i; +- +- if (__libc_use_alloca (alloca_used +- + i * sizeof (struct gaih_addrtuple))) +- addrmem = alloca_account (i * sizeof (struct gaih_addrtuple), +- alloca_used); +- else +- { +- addrmem = malloc (i +- * sizeof (struct gaih_addrtuple)); +- if (addrmem == NULL) +- { +- result = -EAI_MEMORY; +- goto free_and_return; +- } +- malloc_addrmem = true; +- } +- +- /* Now convert it into the list. */ +- struct gaih_addrtuple *addrfree = addrmem; +- for (i = 0; h->h_addr_list[i]; ++i) ++ /* We found data, convert it. */ ++ if (!convert_hostent_to_gaih_addrtuple ++ (req, AF_INET, h, &addrmem)) + { +- if (*pat == NULL) +- { +- *pat = addrfree++; +- (*pat)->scopeid = 0; +- } +- (*pat)->next = NULL; +- (*pat)->family = AF_INET; +- memcpy ((*pat)->addr, h->h_addr_list[i], +- h->h_length); +- pat = &((*pat)->next); ++ result = -EAI_MEMORY; ++ goto free_and_return; + } ++ *pat = addrmem; ++ /* The conversion uses malloc unconditionally. */ ++ malloc_addrmem = true; + } + } + else +-- +2.9.3 + diff --git a/gnu/packages/patches/glibc-CVE-2016-4429.patch b/gnu/packages/patches/glibc-CVE-2016-4429.patch new file mode 100644 index 0000000000..5eebd10543 --- /dev/null +++ b/gnu/packages/patches/glibc-CVE-2016-4429.patch @@ -0,0 +1,58 @@ +From bdce95930e1d9a7d013d1ba78740243491262879 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Mon, 23 May 2016 20:18:34 +0200 +Subject: [PATCH] CVE-2016-4429: sunrpc: Do not use alloca in clntudp_call [BZ + #20112] + +The call is technically in a loop, and under certain circumstances +(which are quite difficult to reproduce in a test case), alloca +can be invoked repeatedly during a single call to clntudp_call. +As a result, the available stack space can be exhausted (even +though individual alloca sizes are bounded implicitly by what +can fit into a UDP packet, as a side effect of the earlier +successful send operation). + +(cherry picked from commit bc779a1a5b3035133024b21e2f339fe4219fb11c) +--- + ChangeLog | 7 +++++++ + NEWS | 4 ++++ + sunrpc/clnt_udp.c | 10 +++++++++- + 3 files changed, 20 insertions(+), 1 deletion(-) + +diff --git a/sunrpc/clnt_udp.c b/sunrpc/clnt_udp.c +index a6cf5f1..4d9acb1 100644 +--- a/sunrpc/clnt_udp.c ++++ b/sunrpc/clnt_udp.c +@@ -388,9 +388,15 @@ send_again: + struct sock_extended_err *e; + struct sockaddr_in err_addr; + struct iovec iov; +- char *cbuf = (char *) alloca (outlen + 256); ++ char *cbuf = malloc (outlen + 256); + int ret; + ++ if (cbuf == NULL) ++ { ++ cu->cu_error.re_errno = errno; ++ return (cu->cu_error.re_status = RPC_CANTRECV); ++ } ++ + iov.iov_base = cbuf + 256; + iov.iov_len = outlen; + msg.msg_name = (void *) &err_addr; +@@ -415,10 +421,12 @@ send_again: + cmsg = CMSG_NXTHDR (&msg, cmsg)) + if (cmsg->cmsg_level == SOL_IP && cmsg->cmsg_type == IP_RECVERR) + { ++ free (cbuf); + e = (struct sock_extended_err *) CMSG_DATA(cmsg); + cu->cu_error.re_errno = e->ee_errno; + return (cu->cu_error.re_status = RPC_CANTRECV); + } ++ free (cbuf); + } + #endif + do +-- +2.9.3 + From edd08fb7ac86afe1886f348001bbf088e48a8741 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 2 Aug 2017 21:45:37 +0300 Subject: [PATCH 0641/1227] gnu: glibc@2.22: Fix security issues. Fixes CVE-2015-{5180,7547}, CVE-2016-{3075,3706,4429}. * gnu/packages/base.scm (glibc@2.22)[source]: Add patches. * gnu/packages/patches/glibc-CVE-2015-7547.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/base.scm | 5 + .../patches/glibc-CVE-2015-7547.patch | 590 ++++++++++++++++++ 3 files changed, 596 insertions(+) create mode 100644 gnu/packages/patches/glibc-CVE-2015-7547.patch diff --git a/gnu/local.mk b/gnu/local.mk index 67150aed67..f4fef78f31 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -645,6 +645,7 @@ dist_patch_DATA = \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glibc-CVE-2015-5180.patch \ + %D%/packages/patches/glibc-CVE-2015-7547.patch \ %D%/packages/patches/glibc-CVE-2016-3075.patch \ %D%/packages/patches/glibc-CVE-2016-3706.patch \ %D%/packages/patches/glibc-CVE-2016-4429.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 37e09eb8ce..da2c6dead6 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -974,6 +974,11 @@ GLIBC/HURD for a Hurd host" "0j49682pm2nh4qbdw35bas82p1pgfnz4d2l7iwfyzvrvj0318wzb")) (patches (search-patches "glibc-ldd-x86_64.patch" "glibc-vectorized-strcspn-guards.patch" + "glibc-CVE-2015-5180.patch" + "glibc-CVE-2015-7547.patch" + "glibc-CVE-2016-3075.patch" + "glibc-CVE-2016-3706.patch" + "glibc-CVE-2016-4429.patch" "glibc-CVE-2017-1000366-pt1.patch" "glibc-CVE-2017-1000366-pt2.patch" "glibc-CVE-2017-1000366-pt3.patch")))) diff --git a/gnu/packages/patches/glibc-CVE-2015-7547.patch b/gnu/packages/patches/glibc-CVE-2015-7547.patch new file mode 100644 index 0000000000..12abeb76d4 --- /dev/null +++ b/gnu/packages/patches/glibc-CVE-2015-7547.patch @@ -0,0 +1,590 @@ +From b995d95a5943785be3ab862b2d3276f3b4a22481 Mon Sep 17 00:00:00 2001 +From: Carlos O'Donell +Date: Tue, 16 Feb 2016 21:26:37 -0500 +Subject: [PATCH] CVE-2015-7547: getaddrinfo() stack-based buffer overflow (Bug + 18665). + +* A stack-based buffer overflow was found in libresolv when invoked from + libnss_dns, allowing specially crafted DNS responses to seize control + of execution flow in the DNS client. The buffer overflow occurs in + the functions send_dg (send datagram) and send_vc (send TCP) for the + NSS module libnss_dns.so.2 when calling getaddrinfo with AF_UNSPEC + family. The use of AF_UNSPEC triggers the low-level resolver code to + send out two parallel queries for A and AAAA. A mismanagement of the + buffers used for those queries could result in the response of a query + writing beyond the alloca allocated buffer created by + _nss_dns_gethostbyname4_r. Buffer management is simplified to remove + the overflow. Thanks to the Google Security Team and Red Hat for + reporting the security impact of this issue, and Robert Holiday of + Ciena for reporting the related bug 18665. (CVE-2015-7547) + +See also: +https://sourceware.org/ml/libc-alpha/2016-02/msg00416.html +https://sourceware.org/ml/libc-alpha/2016-02/msg00418.html + +(cherry picked from commit e9db92d3acfe1822d56d11abcea5bfc4c41cf6ca) +--- + ChangeLog | 15 +++ + NEWS | 14 +++ + resolv/nss_dns/dns-host.c | 111 ++++++++++++++++++- + resolv/res_query.c | 3 + + resolv/res_send.c | 264 ++++++++++++++++++++++++++++++++++------------ + 5 files changed, 338 insertions(+), 69 deletions(-) + +diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c +index 357ac04..a0fe9a8 100644 +--- a/resolv/nss_dns/dns-host.c ++++ b/resolv/nss_dns/dns-host.c +@@ -1031,7 +1031,10 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname, + int h_namelen = 0; + + if (ancount == 0) +- return NSS_STATUS_NOTFOUND; ++ { ++ *h_errnop = HOST_NOT_FOUND; ++ return NSS_STATUS_NOTFOUND; ++ } + + while (ancount-- > 0 && cp < end_of_message && had_error == 0) + { +@@ -1208,7 +1211,14 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname, + /* Special case here: if the resolver sent a result but it only + contains a CNAME while we are looking for a T_A or T_AAAA record, + we fail with NOTFOUND instead of TRYAGAIN. */ +- return canon == NULL ? NSS_STATUS_TRYAGAIN : NSS_STATUS_NOTFOUND; ++ if (canon != NULL) ++ { ++ *h_errnop = HOST_NOT_FOUND; ++ return NSS_STATUS_NOTFOUND; ++ } ++ ++ *h_errnop = NETDB_INTERNAL; ++ return NSS_STATUS_TRYAGAIN; + } + + +@@ -1222,11 +1232,101 @@ gaih_getanswer (const querybuf *answer1, int anslen1, const querybuf *answer2, + + enum nss_status status = NSS_STATUS_NOTFOUND; + ++ /* Combining the NSS status of two distinct queries requires some ++ compromise and attention to symmetry (A or AAAA queries can be ++ returned in any order). What follows is a breakdown of how this ++ code is expected to work and why. We discuss only SUCCESS, ++ TRYAGAIN, NOTFOUND and UNAVAIL, since they are the only returns ++ that apply (though RETURN and MERGE exist). We make a distinction ++ between TRYAGAIN (recoverable) and TRYAGAIN' (not-recoverable). ++ A recoverable TRYAGAIN is almost always due to buffer size issues ++ and returns ERANGE in errno and the caller is expected to retry ++ with a larger buffer. ++ ++ Lastly, you may be tempted to make significant changes to the ++ conditions in this code to bring about symmetry between responses. ++ Please don't change anything without due consideration for ++ expected application behaviour. Some of the synthesized responses ++ aren't very well thought out and sometimes appear to imply that ++ IPv4 responses are always answer 1, and IPv6 responses are always ++ answer 2, but that's not true (see the implementation of send_dg ++ and send_vc to see response can arrive in any order, particularly ++ for UDP). However, we expect it holds roughly enough of the time ++ that this code works, but certainly needs to be fixed to make this ++ a more robust implementation. ++ ++ ---------------------------------------------- ++ | Answer 1 Status / | Synthesized | Reason | ++ | Answer 2 Status | Status | | ++ |--------------------------------------------| ++ | SUCCESS/SUCCESS | SUCCESS | [1] | ++ | SUCCESS/TRYAGAIN | TRYAGAIN | [5] | ++ | SUCCESS/TRYAGAIN' | SUCCESS | [1] | ++ | SUCCESS/NOTFOUND | SUCCESS | [1] | ++ | SUCCESS/UNAVAIL | SUCCESS | [1] | ++ | TRYAGAIN/SUCCESS | TRYAGAIN | [2] | ++ | TRYAGAIN/TRYAGAIN | TRYAGAIN | [2] | ++ | TRYAGAIN/TRYAGAIN' | TRYAGAIN | [2] | ++ | TRYAGAIN/NOTFOUND | TRYAGAIN | [2] | ++ | TRYAGAIN/UNAVAIL | TRYAGAIN | [2] | ++ | TRYAGAIN'/SUCCESS | SUCCESS | [3] | ++ | TRYAGAIN'/TRYAGAIN | TRYAGAIN | [3] | ++ | TRYAGAIN'/TRYAGAIN' | TRYAGAIN' | [3] | ++ | TRYAGAIN'/NOTFOUND | TRYAGAIN' | [3] | ++ | TRYAGAIN'/UNAVAIL | UNAVAIL | [3] | ++ | NOTFOUND/SUCCESS | SUCCESS | [3] | ++ | NOTFOUND/TRYAGAIN | TRYAGAIN | [3] | ++ | NOTFOUND/TRYAGAIN' | TRYAGAIN' | [3] | ++ | NOTFOUND/NOTFOUND | NOTFOUND | [3] | ++ | NOTFOUND/UNAVAIL | UNAVAIL | [3] | ++ | UNAVAIL/SUCCESS | UNAVAIL | [4] | ++ | UNAVAIL/TRYAGAIN | UNAVAIL | [4] | ++ | UNAVAIL/TRYAGAIN' | UNAVAIL | [4] | ++ | UNAVAIL/NOTFOUND | UNAVAIL | [4] | ++ | UNAVAIL/UNAVAIL | UNAVAIL | [4] | ++ ---------------------------------------------- ++ ++ [1] If the first response is a success we return success. ++ This ignores the state of the second answer and in fact ++ incorrectly sets errno and h_errno to that of the second ++ answer. However because the response is a success we ignore ++ *errnop and *h_errnop (though that means you touched errno on ++ success). We are being conservative here and returning the ++ likely IPv4 response in the first answer as a success. ++ ++ [2] If the first response is a recoverable TRYAGAIN we return ++ that instead of looking at the second response. The ++ expectation here is that we have failed to get an IPv4 response ++ and should retry both queries. ++ ++ [3] If the first response was not a SUCCESS and the second ++ response is not NOTFOUND (had a SUCCESS, need to TRYAGAIN, ++ or failed entirely e.g. TRYAGAIN' and UNAVAIL) then use the ++ result from the second response, otherwise the first responses ++ status is used. Again we have some odd side-effects when the ++ second response is NOTFOUND because we overwrite *errnop and ++ *h_errnop that means that a first answer of NOTFOUND might see ++ its *errnop and *h_errnop values altered. Whether it matters ++ in practice that a first response NOTFOUND has the wrong ++ *errnop and *h_errnop is undecided. ++ ++ [4] If the first response is UNAVAIL we return that instead of ++ looking at the second response. The expectation here is that ++ it will have failed similarly e.g. configuration failure. ++ ++ [5] Testing this code is complicated by the fact that truncated ++ second response buffers might be returned as SUCCESS if the ++ first answer is a SUCCESS. To fix this we add symmetry to ++ TRYAGAIN with the second response. If the second response ++ is a recoverable error we now return TRYAGIN even if the first ++ response was SUCCESS. */ ++ + if (anslen1 > 0) + status = gaih_getanswer_slice(answer1, anslen1, qname, + &pat, &buffer, &buflen, + errnop, h_errnop, ttlp, + &first); ++ + if ((status == NSS_STATUS_SUCCESS || status == NSS_STATUS_NOTFOUND + || (status == NSS_STATUS_TRYAGAIN + /* We want to look at the second answer in case of an +@@ -1242,8 +1342,15 @@ gaih_getanswer (const querybuf *answer1, int anslen1, const querybuf *answer2, + &pat, &buffer, &buflen, + errnop, h_errnop, ttlp, + &first); ++ /* Use the second response status in some cases. */ + if (status != NSS_STATUS_SUCCESS && status2 != NSS_STATUS_NOTFOUND) + status = status2; ++ /* Do not return a truncated second response (unless it was ++ unavoidable e.g. unrecoverable TRYAGAIN). */ ++ if (status == NSS_STATUS_SUCCESS ++ && (status2 == NSS_STATUS_TRYAGAIN ++ && *errnop == ERANGE && *h_errnop != NO_RECOVERY)) ++ status = NSS_STATUS_TRYAGAIN; + } + + return status; +diff --git a/resolv/res_query.c b/resolv/res_query.c +index 4a9b3b3..95470a9 100644 +--- a/resolv/res_query.c ++++ b/resolv/res_query.c +@@ -396,6 +396,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + } +@@ -447,6 +448,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + +@@ -521,6 +523,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + if (saved_herrno != -1) +diff --git a/resolv/res_send.c b/resolv/res_send.c +index 5e53cc2..6511bb1 100644 +--- a/resolv/res_send.c ++++ b/resolv/res_send.c +@@ -1,3 +1,20 @@ ++/* Copyright (C) 2016 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ + /* + * Copyright (c) 1985, 1989, 1993 + * The Regents of the University of California. All rights reserved. +@@ -363,6 +380,8 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen, + #ifdef USE_HOOKS + if (__glibc_unlikely (statp->qhook || statp->rhook)) { + if (anssiz < MAXPACKET && ansp) { ++ /* Always allocate MAXPACKET, callers expect ++ this specific size. */ + u_char *buf = malloc (MAXPACKET); + if (buf == NULL) + return (-1); +@@ -638,6 +657,77 @@ get_nsaddr (res_state statp, int n) + return (struct sockaddr *) (void *) &statp->nsaddr_list[n]; + } + ++/* The send_vc function is responsible for sending a DNS query over TCP ++ to the nameserver numbered NS from the res_state STATP i.e. ++ EXT(statp).nssocks[ns]. The function supports sending both IPv4 and ++ IPv6 queries at the same serially on the same socket. ++ ++ Please note that for TCP there is no way to disable sending both ++ queries, unlike UDP, which honours RES_SNGLKUP and RES_SNGLKUPREOP ++ and sends the queries serially and waits for the result after each ++ sent query. This implemetnation should be corrected to honour these ++ options. ++ ++ Please also note that for TCP we send both queries over the same ++ socket one after another. This technically violates best practice ++ since the server is allowed to read the first query, respond, and ++ then close the socket (to service another client). If the server ++ does this, then the remaining second query in the socket data buffer ++ will cause the server to send the client an RST which will arrive ++ asynchronously and the client's OS will likely tear down the socket ++ receive buffer resulting in a potentially short read and lost ++ response data. This will force the client to retry the query again, ++ and this process may repeat until all servers and connection resets ++ are exhausted and then the query will fail. It's not known if this ++ happens with any frequency in real DNS server implementations. This ++ implementation should be corrected to use two sockets by default for ++ parallel queries. ++ ++ The query stored in BUF of BUFLEN length is sent first followed by ++ the query stored in BUF2 of BUFLEN2 length. Queries are sent ++ serially on the same socket. ++ ++ Answers to the query are stored firstly in *ANSP up to a max of ++ *ANSSIZP bytes. If more than *ANSSIZP bytes are needed and ANSCP ++ is non-NULL (to indicate that modifying the answer buffer is allowed) ++ then malloc is used to allocate a new response buffer and ANSCP and ++ ANSP will both point to the new buffer. If more than *ANSSIZP bytes ++ are needed but ANSCP is NULL, then as much of the response as ++ possible is read into the buffer, but the results will be truncated. ++ When truncation happens because of a small answer buffer the DNS ++ packets header field TC will bet set to 1, indicating a truncated ++ message and the rest of the socket data will be read and discarded. ++ ++ Answers to the query are stored secondly in *ANSP2 up to a max of ++ *ANSSIZP2 bytes, with the actual response length stored in ++ *RESPLEN2. If more than *ANSSIZP bytes are needed and ANSP2 ++ is non-NULL (required for a second query) then malloc is used to ++ allocate a new response buffer, *ANSSIZP2 is set to the new buffer ++ size and *ANSP2_MALLOCED is set to 1. ++ ++ The ANSP2_MALLOCED argument will eventually be removed as the ++ change in buffer pointer can be used to detect the buffer has ++ changed and that the caller should use free on the new buffer. ++ ++ Note that the answers may arrive in any order from the server and ++ therefore the first and second answer buffers may not correspond to ++ the first and second queries. ++ ++ It is not supported to call this function with a non-NULL ANSP2 ++ but a NULL ANSCP. Put another way, you can call send_vc with a ++ single unmodifiable buffer or two modifiable buffers, but no other ++ combination is supported. ++ ++ It is the caller's responsibility to free the malloc allocated ++ buffers by detecting that the pointers have changed from their ++ original values i.e. *ANSCP or *ANSP2 has changed. ++ ++ If errors are encountered then *TERRNO is set to an appropriate ++ errno value and a zero result is returned for a recoverable error, ++ and a less-than zero result is returned for a non-recoverable error. ++ ++ If no errors are encountered then *TERRNO is left unmodified and ++ a the length of the first response in bytes is returned. */ + static int + send_vc(res_state statp, + const u_char *buf, int buflen, const u_char *buf2, int buflen2, +@@ -647,11 +737,7 @@ send_vc(res_state statp, + { + const HEADER *hp = (HEADER *) buf; + const HEADER *hp2 = (HEADER *) buf2; +- u_char *ans = *ansp; +- int orig_anssizp = *anssizp; +- // XXX REMOVE +- // int anssiz = *anssizp; +- HEADER *anhp = (HEADER *) ans; ++ HEADER *anhp = (HEADER *) *ansp; + struct sockaddr *nsap = get_nsaddr (statp, ns); + int truncating, connreset, n; + /* On some architectures compiler might emit a warning indicating +@@ -743,6 +829,8 @@ send_vc(res_state statp, + * Receive length & response + */ + int recvresp1 = 0; ++ /* Skip the second response if there is no second query. ++ To do that we mark the second response as received. */ + int recvresp2 = buf2 == NULL; + uint16_t rlen16; + read_len: +@@ -779,40 +867,14 @@ send_vc(res_state statp, + u_char **thisansp; + int *thisresplenp; + if ((recvresp1 | recvresp2) == 0 || buf2 == NULL) { ++ /* We have not received any responses ++ yet or we only have one response to ++ receive. */ + thisanssizp = anssizp; + thisansp = anscp ?: ansp; + assert (anscp != NULL || ansp2 == NULL); + thisresplenp = &resplen; + } else { +- if (*anssizp != MAXPACKET) { +- /* No buffer allocated for the first +- reply. We can try to use the rest +- of the user-provided buffer. */ +-#if __GNUC_PREREQ (4, 7) +- DIAG_PUSH_NEEDS_COMMENT; +- DIAG_IGNORE_NEEDS_COMMENT (5, "-Wmaybe-uninitialized"); +-#endif +-#if _STRING_ARCH_unaligned +- *anssizp2 = orig_anssizp - resplen; +- *ansp2 = *ansp + resplen; +-#else +- int aligned_resplen +- = ((resplen + __alignof__ (HEADER) - 1) +- & ~(__alignof__ (HEADER) - 1)); +- *anssizp2 = orig_anssizp - aligned_resplen; +- *ansp2 = *ansp + aligned_resplen; +-#endif +-#if __GNUC_PREREQ (4, 7) +- DIAG_POP_NEEDS_COMMENT; +-#endif +- } else { +- /* The first reply did not fit into the +- user-provided buffer. Maybe the second +- answer will. */ +- *anssizp2 = orig_anssizp; +- *ansp2 = *ansp; +- } +- + thisanssizp = anssizp2; + thisansp = ansp2; + thisresplenp = resplen2; +@@ -820,10 +882,14 @@ send_vc(res_state statp, + anhp = (HEADER *) *thisansp; + + *thisresplenp = rlen; +- if (rlen > *thisanssizp) { +- /* Yes, we test ANSCP here. If we have two buffers +- both will be allocatable. */ +- if (__glibc_likely (anscp != NULL)) { ++ /* Is the answer buffer too small? */ ++ if (*thisanssizp < rlen) { ++ /* If the current buffer is not the the static ++ user-supplied buffer then we can reallocate ++ it. */ ++ if (thisansp != NULL && thisansp != ansp) { ++ /* Always allocate MAXPACKET, callers expect ++ this specific size. */ + u_char *newp = malloc (MAXPACKET); + if (newp == NULL) { + *terrno = ENOMEM; +@@ -835,6 +901,9 @@ send_vc(res_state statp, + if (thisansp == ansp2) + *ansp2_malloced = 1; + anhp = (HEADER *) newp; ++ /* A uint16_t can't be larger than MAXPACKET ++ thus it's safe to allocate MAXPACKET but ++ read RLEN bytes instead. */ + len = rlen; + } else { + Dprint(statp->options & RES_DEBUG, +@@ -997,6 +1066,66 @@ reopen (res_state statp, int *terrno, int ns) + return 1; + } + ++/* The send_dg function is responsible for sending a DNS query over UDP ++ to the nameserver numbered NS from the res_state STATP i.e. ++ EXT(statp).nssocks[ns]. The function supports IPv4 and IPv6 queries ++ along with the ability to send the query in parallel for both stacks ++ (default) or serially (RES_SINGLKUP). It also supports serial lookup ++ with a close and reopen of the socket used to talk to the server ++ (RES_SNGLKUPREOP) to work around broken name servers. ++ ++ The query stored in BUF of BUFLEN length is sent first followed by ++ the query stored in BUF2 of BUFLEN2 length. Queries are sent ++ in parallel (default) or serially (RES_SINGLKUP or RES_SNGLKUPREOP). ++ ++ Answers to the query are stored firstly in *ANSP up to a max of ++ *ANSSIZP bytes. If more than *ANSSIZP bytes are needed and ANSCP ++ is non-NULL (to indicate that modifying the answer buffer is allowed) ++ then malloc is used to allocate a new response buffer and ANSCP and ++ ANSP will both point to the new buffer. If more than *ANSSIZP bytes ++ are needed but ANSCP is NULL, then as much of the response as ++ possible is read into the buffer, but the results will be truncated. ++ When truncation happens because of a small answer buffer the DNS ++ packets header field TC will bet set to 1, indicating a truncated ++ message, while the rest of the UDP packet is discarded. ++ ++ Answers to the query are stored secondly in *ANSP2 up to a max of ++ *ANSSIZP2 bytes, with the actual response length stored in ++ *RESPLEN2. If more than *ANSSIZP bytes are needed and ANSP2 ++ is non-NULL (required for a second query) then malloc is used to ++ allocate a new response buffer, *ANSSIZP2 is set to the new buffer ++ size and *ANSP2_MALLOCED is set to 1. ++ ++ The ANSP2_MALLOCED argument will eventually be removed as the ++ change in buffer pointer can be used to detect the buffer has ++ changed and that the caller should use free on the new buffer. ++ ++ Note that the answers may arrive in any order from the server and ++ therefore the first and second answer buffers may not correspond to ++ the first and second queries. ++ ++ It is not supported to call this function with a non-NULL ANSP2 ++ but a NULL ANSCP. Put another way, you can call send_vc with a ++ single unmodifiable buffer or two modifiable buffers, but no other ++ combination is supported. ++ ++ It is the caller's responsibility to free the malloc allocated ++ buffers by detecting that the pointers have changed from their ++ original values i.e. *ANSCP or *ANSP2 has changed. ++ ++ If an answer is truncated because of UDP datagram DNS limits then ++ *V_CIRCUIT is set to 1 and the return value non-zero to indicate to ++ the caller to retry with TCP. The value *GOTSOMEWHERE is set to 1 ++ if any progress was made reading a response from the nameserver and ++ is used by the caller to distinguish between ECONNREFUSED and ++ ETIMEDOUT (the latter if *GOTSOMEWHERE is 1). ++ ++ If errors are encountered then *TERRNO is set to an appropriate ++ errno value and a zero result is returned for a recoverable error, ++ and a less-than zero result is returned for a non-recoverable error. ++ ++ If no errors are encountered then *TERRNO is left unmodified and ++ a the length of the first response in bytes is returned. */ + static int + send_dg(res_state statp, + const u_char *buf, int buflen, const u_char *buf2, int buflen2, +@@ -1006,8 +1135,6 @@ send_dg(res_state statp, + { + const HEADER *hp = (HEADER *) buf; + const HEADER *hp2 = (HEADER *) buf2; +- u_char *ans = *ansp; +- int orig_anssizp = *anssizp; + struct timespec now, timeout, finish; + struct pollfd pfd[1]; + int ptimeout; +@@ -1040,6 +1167,8 @@ send_dg(res_state statp, + int need_recompute = 0; + int nwritten = 0; + int recvresp1 = 0; ++ /* Skip the second response if there is no second query. ++ To do that we mark the second response as received. */ + int recvresp2 = buf2 == NULL; + pfd[0].fd = EXT(statp).nssocks[ns]; + pfd[0].events = POLLOUT; +@@ -1203,55 +1332,56 @@ send_dg(res_state statp, + int *thisresplenp; + + if ((recvresp1 | recvresp2) == 0 || buf2 == NULL) { ++ /* We have not received any responses ++ yet or we only have one response to ++ receive. */ + thisanssizp = anssizp; + thisansp = anscp ?: ansp; + assert (anscp != NULL || ansp2 == NULL); + thisresplenp = &resplen; + } else { +- if (*anssizp != MAXPACKET) { +- /* No buffer allocated for the first +- reply. We can try to use the rest +- of the user-provided buffer. */ +-#if _STRING_ARCH_unaligned +- *anssizp2 = orig_anssizp - resplen; +- *ansp2 = *ansp + resplen; +-#else +- int aligned_resplen +- = ((resplen + __alignof__ (HEADER) - 1) +- & ~(__alignof__ (HEADER) - 1)); +- *anssizp2 = orig_anssizp - aligned_resplen; +- *ansp2 = *ansp + aligned_resplen; +-#endif +- } else { +- /* The first reply did not fit into the +- user-provided buffer. Maybe the second +- answer will. */ +- *anssizp2 = orig_anssizp; +- *ansp2 = *ansp; +- } +- + thisanssizp = anssizp2; + thisansp = ansp2; + thisresplenp = resplen2; + } + + if (*thisanssizp < MAXPACKET +- /* Yes, we test ANSCP here. If we have two buffers +- both will be allocatable. */ +- && anscp ++ /* If the current buffer is not the the static ++ user-supplied buffer then we can reallocate ++ it. */ ++ && (thisansp != NULL && thisansp != ansp) + #ifdef FIONREAD ++ /* Is the size too small? */ + && (ioctl (pfd[0].fd, FIONREAD, thisresplenp) < 0 + || *thisanssizp < *thisresplenp) + #endif + ) { ++ /* Always allocate MAXPACKET, callers expect ++ this specific size. */ + u_char *newp = malloc (MAXPACKET); + if (newp != NULL) { +- *anssizp = MAXPACKET; +- *thisansp = ans = newp; ++ *thisanssizp = MAXPACKET; ++ *thisansp = newp; + if (thisansp == ansp2) + *ansp2_malloced = 1; + } + } ++ /* We could end up with truncation if anscp was NULL ++ (not allowed to change caller's buffer) and the ++ response buffer size is too small. This isn't a ++ reliable way to detect truncation because the ioctl ++ may be an inaccurate report of the UDP message size. ++ Therefore we use this only to issue debug output. ++ To do truncation accurately with UDP we need ++ MSG_TRUNC which is only available on Linux. We ++ can abstract out the Linux-specific feature in the ++ future to detect truncation. */ ++ if (__glibc_unlikely (*thisanssizp < *thisresplenp)) { ++ Dprint(statp->options & RES_DEBUG, ++ (stdout, ";; response may be truncated (UDP)\n") ++ ); ++ } ++ + HEADER *anhp = (HEADER *) *thisansp; + socklen_t fromlen = sizeof(struct sockaddr_in6); + assert (sizeof(from) <= fromlen); +-- +2.9.3 + From ec5495ba3f06655252959aebe9d9d273387c6125 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 3 Aug 2017 00:14:53 +0200 Subject: [PATCH 0642/1227] doc: 'patches' field of can list file-like objects. Fixes . Reported by sirgazil . * doc/guix.texi (origin Reference): 'patches' can contain file-like objects. --- doc/guix.texi | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 0ea677387b..2bb820b46c 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3290,7 +3290,8 @@ used. For version control checkouts, it is recommended to provide the file name explicitly because the default is not very descriptive. @item @code{patches} (default: @code{'()}) -A list of file names containing patches to be applied to the source. +A list of file names, origins, or file-like objects (@pxref{G-Expressions, +file-like objects}) pointing to patches to be applied to the source. This list of patches must be unconditional. In particular, it cannot depend on the value of @code{%current-system} or From 49962b15a1c4e72a55b6cf273806d203906de2ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 3 Aug 2017 00:20:05 +0200 Subject: [PATCH 0643/1227] activation: Make sure /etc exists. Fixes . Reported by ng0 . * gnu/build/activation.scm (activate-etc): Add call to 'mkdir-p'. --- gnu/build/activation.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 299c0728cb..9c58370ec3 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -313,6 +313,7 @@ they already exist." (false-if-exception (delete-file file))) (format #t "populating /etc from ~a...~%" etc) + (mkdir-p "/etc") ;; Create the /etc/ssl -> /run/current-system/profile/etc/ssl symlink. This ;; symlink, to a target outside of the store, probably doesn't belong in the From 6862c723738a846adeed34adbdb4b554f5fa04f3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 3 Aug 2017 01:56:22 +0200 Subject: [PATCH 0644/1227] gnu: tor: Update to 0.3.0.10. * gnu/packages/tor.scm (tor): Update to 0.3.0.10. --- gnu/packages/tor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index 1d5a1f1612..64acb44490 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -44,14 +44,14 @@ (define-public tor (package (name "tor") - (version "0.3.0.9") + (version "0.3.0.10") (source (origin (method url-fetch) (uri (string-append "https://dist.torproject.org/tor-" version ".tar.gz")) (sha256 (base32 - "0hhyb1wil8japynqnm07r1f67w3wdnafdg9amzlrrcfcyq5qim28")))) + "1cas30wk4bhcivi6l9dj7wwlz6pc2jj883x1vijax3b8l54nx3ls")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-gcc-hardening" From 5d8312f1c649afbf727eaa17ce1879989908508b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 3 Aug 2017 05:31:24 +0200 Subject: [PATCH 0645/1227] gnu: youtube-dl: Update to 2017.07.30.1. * gnu/packages/video.scm (youtube-dl): Update to 2017.07.30.1. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 0a551c74f4..1152cdf0a0 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.07.23") + (version "2017.07.30.1") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "0h8jim7qx7b97wg7s8izz3and1xp70b9clqwpxl33xls9linh04m")))) + "1m1n5d06xh8hnild6kssiv9yaq2sm7vy0c8h506v3nff7i9wf0a7")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From 68a29ab8d00be37f5e084d16a8971d7cf5fb2714 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 3 Aug 2017 00:32:30 -0500 Subject: [PATCH 0646/1227] gnu: Add LeoCAD. * gnu/packages/lego.scm (leocad): New variable. --- gnu/packages/lego.scm | 61 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 59 insertions(+), 2 deletions(-) diff --git a/gnu/packages/lego.scm b/gnu/packages/lego.scm index d47be5dfb4..d5e5de1c1f 100644 --- a/gnu/packages/lego.scm +++ b/gnu/packages/lego.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Eric Bavier +;;; Copyright © 2016, 2017 Eric Bavier ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,7 +23,10 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages bison) - #:use-module (gnu packages flex)) + #:use-module (gnu packages compression) + #:use-module (gnu packages flex) + #:use-module (gnu packages gl) + #:use-module (gnu packages qt)) (define-public nqc (package @@ -65,3 +68,57 @@ MINDSTORMS products. The preprocessor and control structures of NQC are very similar to C. NQC is not a general purpose language -- there are many restrictions that stem from limitations of the standard RCX firmware.") (license license:mpl1.0))) + +(define-public leocad + (package + (name "leocad") + (version "17.07") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/leozide/leocad/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "02gm4950zlmsw4sxmdwypgkybn51b02qnmmk6rzjdr8si4k6gikq")))) + (build-system gnu-build-system) + (native-inputs + `(("qttools" ,qttools))) ;for lrelease + (inputs + `(("mesa" ,mesa) + ("qtbase" ,qtbase) + ("zlib" ,zlib))) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs inputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (zero? (system* "qmake" + (string-append "INSTALL_PREFIX=" out) + ;; Otherwise looks for lrelease-qt4 + "QMAKE_LRELEASE=lrelease" + ;; Don't pester users about updates + "DISABLE_UPDATE_CHECK=1"))))) + (add-after 'configure 'reset-resource-timestamps + (lambda _ + ;; The contents of build/release/.qrc/qrc_leocad.cpp generated by + ;; qt's rcc tool depends on the timestamps in resources/*, in + ;; particular the leocad_*.qm files that are created by qmake + ;; above. So reset those timestamps for a reproducible build. + (with-directory-excursion "resources" + (for-each (lambda (file) + (let* ((base (basename file ".qm")) + (src (string-append base ".ts")) + (st (stat src))) + (set-file-time file st))) + (find-files "." "leocad_.*\\.qm")))))))) + (home-page "http://www.leocad.org") + (synopsis "Create virtual Lego models") + (description + "LeoCAD is a program for creating virtual LEGO models. It has an +intuitive interface, designed to allow new users to start creating new models +without having to spend too much time learning the application. LeoCAD is +fully compatible with the LDraw Standard and related tools.") + (license license:gpl2+))) From 5638d7150229bcc63bf26e484f81ff310dafd263 Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Wed, 2 Aug 2017 20:32:22 +0300 Subject: [PATCH 0647/1227] gnu: openscenegraph: Add 'Release' configure flag. * gnu/packages/graphics.scm (openscenegraph)[arguments]: Add "-DCMAKE_BUILD_TYPE=Release". --- gnu/packages/graphics.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 6c813e8a37..d0e50106fa 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -339,7 +339,11 @@ visual effects work for film.") #:configure-flags (list (string-append "-DCMAKE_INSTALL_RPATH=" (assoc-ref %outputs "out") "/lib:" - (assoc-ref %outputs "out") "/lib64")))) + (assoc-ref %outputs "out") "/lib64") + ;; We need to set this flag or otherwise 'rd' will be added + ;; to the name of the library binaries and break linking + ;; with other programs. + "-DCMAKE_BUILD_TYPE=Release"))) (native-inputs `(("unzip" ,unzip))) (inputs From a8ead6f91b74dbc5c776a5029a62e15bd84d7b0e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 3 Aug 2017 13:34:18 +0300 Subject: [PATCH 0648/1227] gnu: vc: Limit to x86_64 and i686. * gnu/packages/maths.scm (vc)[supported-systems]: New field. --- gnu/packages/maths.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 1761f0222d..6ed51b027e 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3067,6 +3067,8 @@ instruction sets. Thus, an application written with Vc can be compiled for: @item NVIDIA GPUs / CUDA (in development) @end enumerate\n") (home-page "https://github.com/VcDevel/Vc") + ;; "No support_???.cpp file exists for this architecture." + (supported-systems '("x86_64-linux" "i686-linux")) (license license:bsd-3))) (define-public reducelcs From 92971d68ac942cd4a38092b4ccb20a8192a56aaf Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 3 Aug 2017 20:37:25 +1000 Subject: [PATCH 0649/1227] gnu: htseq: Update to 0.9.1. * gnu/packages/bioinformatics.scm (htseq): Update to 0.9.1. [arguments]: Use python-3 by removing field. [native-inputs]: Add 'python-cython'. [propagated-inputs]: Use python3 numpy package. [inputs]: Use python3 pysam package. Add 'python-matplotlib'. (python2-htseq): New variable. (clipper)[inputs]: Use it. --- gnu/packages/bioinformatics.scm | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b47d13ea55..4de245abe6 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1636,7 +1636,7 @@ databases.") (build-system python-build-system) (arguments `(#:python ,python-2)) ; only Python 2 is supported (inputs - `(("htseq" ,htseq) + `(("htseq" ,python2-htseq) ("python-pybedtools" ,python2-pybedtools) ("python-cython" ,python2-cython) ("python-scikit-learn" ,python2-scikit-learn) @@ -2981,7 +2981,7 @@ HMMs).") (define-public htseq (package (name "htseq") - (version "0.6.1") + (version "0.9.1") (source (origin (method url-fetch) (uri (string-append @@ -2989,14 +2989,16 @@ HMMs).") version ".tar.gz")) (sha256 (base32 - "1i85ppf2j2lj12m0x690qq5nn17xxk23pbbx2c83r8ayb5wngzwv")))) + "11flgb1381xdhk43bzbfm3vhnszkpqg6jk76rpa5xd1zbrvvlnxg")))) (build-system python-build-system) - (arguments `(#:python ,python-2)) ; only Python 2 is supported + (native-inputs + `(("python-cython" ,python-cython))) ;; Numpy needs to be propagated when htseq is used as a Python library. (propagated-inputs - `(("python-numpy" ,python2-numpy))) + `(("python-numpy" ,python-numpy))) (inputs - `(("python-pysam" ,python2-pysam))) + `(("python-pysam" ,python-pysam) + ("python-matplotlib" ,python-matplotlib))) (home-page "http://www-huber.embl.de/users/anders/HTSeq/") (synopsis "Analysing high-throughput sequencing data with Python") (description @@ -3004,6 +3006,9 @@ HMMs).") from high-throughput sequencing assays.") (license license:gpl3+))) +(define-public python2-htseq + (package-with-python2 htseq)) + (define-public java-htsjdk (package (name "java-htsjdk") From 75e6639f364d77378edbc10022bca09040336a56 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 3 Aug 2017 21:08:13 +1000 Subject: [PATCH 0650/1227] gnu: htseq: Use PyPI URI. This is a follow-up to 92971d68ac942cd4a38092b4ccb20a8192a56aaf. * gnu/packages/bioinformatics.scm (htseq)[source]: Use 'pypi-uri'. --- gnu/packages/bioinformatics.scm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 4de245abe6..e3c3bbc52f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -2984,9 +2984,7 @@ HMMs).") (version "0.9.1") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/H/HTSeq/HTSeq-" - version ".tar.gz")) + (uri (pypi-uri "HTSeq" version)) (sha256 (base32 "11flgb1381xdhk43bzbfm3vhnszkpqg6jk76rpa5xd1zbrvvlnxg")))) From dd4b7476ec2c8c1d790f1366173a15bd6042eeee Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 21 Jul 2017 01:06:47 +0200 Subject: [PATCH 0651/1227] gnu: Add grub-hybrid. * gnu/packages/bootloaders.scm (grub-hybrid): New variable. --- gnu/packages/bootloaders.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 34b8953aa7..c0d16b6c88 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -183,6 +183,39 @@ menu to select one of the installed operating systems.") "/bin/mcopy\""))) #t)))))))))) +;; Because grub searches hardcoded paths it's easiest to just build grub +;; again to make it find both grub-pc and grub-efi. There is a command +;; line argument which allows you to specify ONE platform - but +;; grub-mkrescue will use multiple platforms if they are available +;; in the installation directory (without command line argument). +(define-public grub-hybrid + (package + (inherit grub-efi) + (name "grub-hybrid") + (synopsis "GRand Unified Boot loader (hybrid version)") + (inputs + `(("grub" ,grub) + ,@(package-inputs grub-efi))) + (arguments + (substitute-keyword-arguments (package-arguments grub-efi) + ((#:modules modules `((guix build utils) (guix build gnu-build-system))) + `((ice-9 ftw) ,@modules)) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'install 'install-non-efi + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((input-dir (string-append (assoc-ref inputs "grub") + "/lib/grub")) + (output-dir (string-append (assoc-ref outputs "out") + "/lib/grub"))) + (for-each + (lambda (basename) + (if (not (string-prefix? "." basename)) + (symlink (string-append input-dir "/" basename) + (string-append output-dir "/" basename)))) + (scandir input-dir)) + #t))))))))) + (define-public syslinux (let ((commit "bb41e935cc83c6242de24d2271e067d76af3585c")) (package From 5bee6bf409dd36b0671ff59bac09d7ad4aa9e09e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 15:47:56 +0200 Subject: [PATCH 0652/1227] gnu: Add r-glue. * gnu/packages/cran.scm (r-glue): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 9ebfbbed2d..61c6496022 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -42,3 +42,23 @@ including RGB, HSV, HLS, CIEXYZ, CIELUV, HCL (polar CIELUV), CIELAB and polar CIELAB. Qualitative, sequential, and diverging color palettes based on HCL colors are provided.") (license license:bsd-3))) + +(define-public r-glue + (package + (name "r-glue") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "glue" version)) + (sha256 + (base32 + "01awmqby7rwzhzr51m7d87wqibx7ggl6xair8fi3z3q1hkyyv7ih")))) + (build-system r-build-system) + (home-page "https://github.com/tidyverse/glue") + (synopsis "Interpreted string literals") + (description + "This package provides an implementation of interpreted string literals, +inspired by Python's Literal String Interpolation (PEP-0498) and +Docstrings (PEP-0257) and Julia's Triple-Quoted String Literals.") + (license license:expat))) From 847b4572535819379a92dcc45d123936ba0729ab Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 15:49:42 +0200 Subject: [PATCH 0653/1227] gnu: r-plogr: Move to (gnu packages cran). * gnu/packages/statistics.scm (r-plogr): Move from here... * gnu/packages/cran.scm (r-plogr): ...to here. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ gnu/packages/statistics.scm | 20 -------------------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 61c6496022..083eed1dbf 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -62,3 +62,23 @@ colors are provided.") inspired by Python's Literal String Interpolation (PEP-0498) and Docstrings (PEP-0257) and Julia's Triple-Quoted String Literals.") (license license:expat))) + +(define-public r-plogr + (package + (name "r-plogr") + (version "0.1-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "plogr" version)) + (sha256 + (base32 + "13zliqlbkl8b04k9ga0sx5jsh7k867gracgl84l2a9kcqy9mqx92")))) + (build-system r-build-system) + (home-page "https://github.com/krlmlr/plogr") + (synopsis "R bindings for the plog C++ logging library") + (description + "This package provides the header files for a stripped-down version of +the plog header-only C++ logging library, and a method to log to R's standard +error stream.") + (license license:expat))) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index fb7431c811..02811f3fdc 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2585,26 +2585,6 @@ variety of formats.") and draw tables.") (license license:gpl2+))) -(define-public r-plogr - (package - (name "r-plogr") - (version "0.1-1") - (source - (origin - (method url-fetch) - (uri (cran-uri "plogr" version)) - (sha256 - (base32 - "13zliqlbkl8b04k9ga0sx5jsh7k867gracgl84l2a9kcqy9mqx92")))) - (build-system r-build-system) - (home-page "https://github.com/krlmlr/plogr") - (synopsis "R bindings for the plog C++ logging library") - (description - "This package provides the header files for a stripped-down version of -the plog header-only C++ logging library, and a method to log to R's standard -error stream.") - (license license:expat))) - (define-public r-pkgconfig (package (name "r-pkgconfig") From 736332c79c17fa76282ae8468927eea0ccc90541 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 15:51:44 +0200 Subject: [PATCH 0654/1227] gnu: r-rcpp: Update to 0.12.12. * gnu/packages/statistics.scm (r-rcpp): Update to 0.12.12. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 02811f3fdc..428e2a073f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -796,13 +796,13 @@ Munsell colour system.") (define-public r-rcpp (package (name "r-rcpp") - (version "0.12.10") + (version "0.12.12") (source (origin (method url-fetch) (uri (cran-uri "Rcpp" version)) (sha256 - (base32 "108p485agxwgmnl9p54vsyy94w96lcimlk08v71ddm77gfl13y2f")))) + (base32 "1byyqvlgb2p46p1gv243k73rk69fa8pa4l5m5asmckag2pkb2glz")))) (build-system r-build-system) (home-page "http://www.rcpp.org") (synopsis "Seamless R and C++ Integration") From a8cba9dd112528d67a946eee057c838221eb5249 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 15:52:39 +0200 Subject: [PATCH 0655/1227] gnu: r-rcpp: Move to (gnu packages cran). * gnu/packages/statistics.scm (r-rcpp): Move from here... * gnu/packages/cran.scm (r-rcpp): ...to here. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ gnu/packages/statistics.scm | 24 ------------------------ gnu/packages/web.scm | 1 + 3 files changed, 25 insertions(+), 24 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 083eed1dbf..863c872d14 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -82,3 +82,27 @@ Docstrings (PEP-0257) and Julia's Triple-Quoted String Literals.") the plog header-only C++ logging library, and a method to log to R's standard error stream.") (license license:expat))) + +(define-public r-rcpp + (package + (name "r-rcpp") + (version "0.12.12") + (source + (origin + (method url-fetch) + (uri (cran-uri "Rcpp" version)) + (sha256 + (base32 "1byyqvlgb2p46p1gv243k73rk69fa8pa4l5m5asmckag2pkb2glz")))) + (build-system r-build-system) + (home-page "http://www.rcpp.org") + (synopsis "Seamless R and C++ integration") + (description + "The Rcpp package provides R functions as well as C++ classes which offer +a seamless integration of R and C++. Many R data types and objects can be +mapped back and forth to C++ equivalents which facilitates both writing of new +code as well as easier integration of third-party libraries. Documentation +about Rcpp is provided by several vignettes included in this package, via the +'Rcpp Gallery' site at , the paper by Eddelbuettel +and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see +'citation(\"Rcpp\")' for details on these last two.") + (license license:gpl2+))) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 428e2a073f..1b7c4d3b60 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -793,30 +793,6 @@ see package vignette. To quote Rene Magritte, \"Ceci n'est pas un pipe.\"") Munsell colour system.") (license license:expat))) -(define-public r-rcpp - (package - (name "r-rcpp") - (version "0.12.12") - (source - (origin - (method url-fetch) - (uri (cran-uri "Rcpp" version)) - (sha256 - (base32 "1byyqvlgb2p46p1gv243k73rk69fa8pa4l5m5asmckag2pkb2glz")))) - (build-system r-build-system) - (home-page "http://www.rcpp.org") - (synopsis "Seamless R and C++ Integration") - (description - "The Rcpp package provides R functions as well as C++ classes which offer -a seamless integration of R and C++. Many R data types and objects can be -mapped back and forth to C++ equivalents which facilitates both writing of new -code as well as easier integration of third-party libraries. Documentation -about Rcpp is provided by several vignettes included in this package, via the -'Rcpp Gallery' site at , the paper by Eddelbuettel -and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see -'citation(\"Rcpp\")' for details on these last two.") - (license license:gpl2+))) - (define-public r-permute (package (name "r-permute") diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index f03f67bf8c..1550454241 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -54,6 +54,7 @@ #:use-module (gnu packages) #:use-module (gnu packages apr) #:use-module (gnu packages check) + #:use-module (gnu packages cran) #:use-module (gnu packages documentation) #:use-module (gnu packages docbook) #:use-module (gnu packages autotools) From eed58a0886433195fd610fc2b7d19c11c11c4ca1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 15:53:33 +0200 Subject: [PATCH 0656/1227] gnu: Add r-bindr. * gnu/packages/cran.scm (r-bindr): New variable. --- gnu/packages/cran.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 863c872d14..c0f34f1375 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -106,3 +106,22 @@ about Rcpp is provided by several vignettes included in this package, via the and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see 'citation(\"Rcpp\")' for details on these last two.") (license license:gpl2+))) + +(define-public r-bindr + (package + (name "r-bindr") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "bindr" version)) + (sha256 + (base32 + "0d95ifm0x4mrfzi20xf39f5pzd7rfzqsld0vjqf6xzga5rhnd8fc")))) + (build-system r-build-system) + (home-page "https://github.com/krlmlr/bindr") + (synopsis "Parametrized active bindings") + (description + "This package provides a simple interface for creating active bindings +where the bound function accepts additional arguments.") + (license license:expat))) From 4bb0b4cc0aeffcc97d67c257e0c839aedb87f680 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 15:53:49 +0200 Subject: [PATCH 0657/1227] gnu: Add r-bindrcpp. * gnu/packages/cran.scm (r-bindrcpp): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c0f34f1375..feae801116 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -125,3 +125,26 @@ and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see "This package provides a simple interface for creating active bindings where the bound function accepts additional arguments.") (license license:expat))) + +(define-public r-bindrcpp + (package + (name "r-bindrcpp") + (version "0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "bindrcpp" version)) + (sha256 + (base32 + "0l1l22zl87wiyl79m3gj2vlxmkhxvrkl4alhyy08h55q7hqs3vyh")))) + (build-system r-build-system) + (propagated-inputs + `(("r-bindr" ,r-bindr) + ("r-plogr" ,r-plogr) + ("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/krlmlr/bindrcpp") + (synopsis "Rcpp interface to active bindings") + (description + "This package provides an easy way to fill an environment with active +bindings that call a C++ function.") + (license license:expat))) From a40b2c212944bfffd4d29869589bb64ca9d0fa0c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 16:15:13 +0200 Subject: [PATCH 0658/1227] gnu: r-dplyr: Update to 0.7.2. * gnu/packages/statistics.scm (r-dplyr): Update to 0.7.2. [propagated-inputs]: Remove r-lazyeval, r-dbi; add r-rlang, r-plogr, r-glue, r-pkgconfig, r-bindrcpp. --- gnu/packages/statistics.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 1b7c4d3b60..e78e0802c7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1523,20 +1523,23 @@ and printing capabilities than traditional data frames.") (define-public r-dplyr (package (name "r-dplyr") - (version "0.5.0") + (version "0.7.2") (source (origin (method url-fetch) (uri (cran-uri "dplyr" version)) (sha256 (base32 - "0ks5cklb03laqf5ygcw986g1lv7wk1ipvypjlha8xly2y4lvilwk")))) + "0jpb32ca1c0mr660igna4yw4fmzydzfhxshd0g8wgmggkynx2qi2")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) ("r-r6" ,r-r6) ("r-magrittr" ,r-magrittr) - ("r-lazyeval" ,r-lazyeval) - ("r-dbi" ,r-dbi) + ("r-rlang" ,r-rlang) + ("r-plogr" ,r-plogr) + ("r-glue" ,r-glue) + ("r-pkgconfig" ,r-pkgconfig) + ("r-bindrcpp" ,r-bindrcpp) ("r-tibble" ,r-tibble))) (native-inputs `(("r-rcpp" ,r-rcpp) From aad948a0eaea550cbc8e524717a6e74b68bb35b0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 16:16:09 +0200 Subject: [PATCH 0659/1227] gnu: r-tibble: Update to 1.3.3. * gnu/packages/statistics.scm (r-tibble): Update to 1.3.3. [propagated-inputs]: Remove r-lazyeval, add r-rlang. --- gnu/packages/statistics.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e78e0802c7..1159f2c42e 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1501,17 +1501,17 @@ like tidy evaluation.") (define-public r-tibble (package (name "r-tibble") - (version "1.3.0") + (version "1.3.3") (source (origin (method url-fetch) (uri (cran-uri "tibble" version)) (sha256 (base32 - "1q25i1cv3qms6d3lw7jd3z142w188znkcbyam460gn9si8l8g2bk")))) + "1bhq4pm56l7l6s1k44ajrcr7hz56h37m9ck4zji9f8xfdqschbl0")))) (build-system r-build-system) (propagated-inputs - `(("r-lazyeval" ,r-lazyeval) + `(("r-rlang" ,r-rlang) ("r-rcpp" ,r-rcpp))) (home-page "https://github.com/hadley/tibble") (synopsis "Simple data frames") From 5fc74f24bf96970d783147f60b2b36a87c089ea0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 16:17:04 +0200 Subject: [PATCH 0660/1227] gnu: r-devtools: Update to 1.13.3. * gnu/packages/statistics.scm (r-devtools): Update to 1.13.3. [propagated-inputs]: Remove r-curl, r-digest, r-evaluate, r-roxygen2, and r-rversions. --- gnu/packages/statistics.scm | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 1159f2c42e..012df8343d 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2251,25 +2251,21 @@ informative error messages when it's not available.") (define-public r-devtools (package (name "r-devtools") - (version "1.13.2") + (version "1.13.3") (source (origin (method url-fetch) (uri (cran-uri "devtools" version)) (sha256 (base32 - "08ajsr12wd31lsx3jv5l9mq4063dc5fpr9lcnzra6kl59vi5pa7v")))) + "146wb09cmfh10vhn1ps2nmzx104zldb3nj9qv2ic0gbcikbbryp6")))) (build-system r-build-system) (propagated-inputs - `(("r-curl" ,r-curl) - ("r-digest" ,r-digest) - ("r-evaluate" ,r-evaluate) + `(("r-digest" ,r-digest) ("r-git2r" ,r-git2r) ("r-httr" ,r-httr) ("r-jsonlite" ,r-jsonlite) ("r-memoise" ,r-memoise) - ("r-roxygen2" ,r-roxygen2) ("r-rstudioapi" ,r-rstudioapi) - ("r-rversions" ,r-rversions) ("r-whisker" ,r-whisker) ("r-withr" ,r-withr))) (home-page "https://github.com/hadley/devtools") From 7b3688150be542f1f3bc27cf350552c0de7026a9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 16:16:38 +0200 Subject: [PATCH 0661/1227] gnu: r-purrr: Update to 0.2.2.2. * gnu/packages/statistics.scm (r-purrr): Update to 0.2.2.2. [propagated-inputs]: Remove r-bh and r-dplyr; add r-tibble. --- gnu/packages/statistics.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 012df8343d..5002e09d22 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3590,18 +3590,17 @@ It uses and relies on grid graphics and formal (S4) classes and methods.") (define-public r-purrr (package (name "r-purrr") - (version "0.2.2") + (version "0.2.2.2") (source (origin (method url-fetch) (uri (cran-uri "purrr" version)) (sha256 (base32 - "0lss8q733nv7s154wargm6vnxq55qygnxakib8xdj4jv0y86sxc3")))) + "1i1n651xf15489pd6xjdvyp8wyayn8p33d27br39mddn1xdjrpc1")))) (build-system r-build-system) (propagated-inputs - `(("r-bh" ,r-bh) - ("r-dplyr" ,r-dplyr) + `(("r-tibble" ,r-tibble) ("r-lazyeval" ,r-lazyeval) ("r-magrittr" ,r-magrittr) ("r-rcpp" ,r-rcpp))) From d59050823e64a3c6c352487ad1e56d9c6b04216c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 16:17:32 +0200 Subject: [PATCH 0662/1227] gnu: r-igraph: Update to 1.1.2. * gnu/packages/statistics.scm (r-igraph): Update to 1.1.2. [propagated-inputs]: Remove r-nmf; add r-matrix and r-pkgconfig. --- gnu/packages/statistics.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 5002e09d22..a07c07ab60 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3283,14 +3283,14 @@ performing parallel computations on multicore machines.") (define-public r-igraph (package (name "r-igraph") - (version "1.0.1") + (version "1.1.2") (source (origin (method url-fetch) (uri (cran-uri "igraph" version)) (sha256 (base32 - "00jnm8v3kvxpxav5klld2z2nnkcpj4sdwv4ksipddy5mp04ysr6w")))) + "1v26wyk52snh8z6m5p7yqwcd9dbqifhm57j112i9x53ppi0npcc9")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -3300,7 +3300,8 @@ performing parallel computations on multicore machines.") (propagated-inputs `(("r-irlba" ,r-irlba) ("r-magrittr" ,r-magrittr) - ("r-nmf" ,r-nmf))) + ("r-matrix" ,r-matrix) + ("r-pkgconfig" ,r-pkgconfig))) (home-page "http://igraph.org") (synopsis "Network analysis and visualization") (description From f9b376063643ae4b7c4403d0debad590fba5942d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 16:34:13 +0200 Subject: [PATCH 0663/1227] gnu: r-plotly: Update to 4.7.1. * gnu/packages/statistics.scm (r-plotly): Update to 4.7.1. [propagated-inputs]: Add r-crosstalk, r-data-table, r-htmltools, and r-rcolorbrewer. --- gnu/packages/statistics.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index a07c07ab60..fd991d6434 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3615,26 +3615,30 @@ features present in other programming languages.") (define-public r-plotly (package (name "r-plotly") - (version "4.5.6") + (version "4.7.1") (source (origin (method url-fetch) (uri (cran-uri "plotly" version)) (sha256 (base32 - "09yw977yxlcxv57kni3q899zrxyxa6pznr06cylr9lqkyr7llfhx")))) + "0wj9lw7w28z8w9ip9vadv6sydjhqyg65kfiai9m3bndzz50b1m3w")))) (build-system r-build-system) (propagated-inputs `(("r-base64enc" ,r-base64enc) + ("r-crosstalk" ,r-crosstalk) ("r-digest" ,r-digest) + ("r-data-table" ,r-data-table) ("r-dplyr" ,r-dplyr) ("r-ggplot2" ,r-ggplot2) ("r-hexbin" ,r-hexbin) + ("r-htmltools" ,r-htmltools) ("r-htmlwidgets" ,r-htmlwidgets) ("r-httr" ,r-httr) ("r-jsonlite" ,r-jsonlite) ("r-lazyeval" ,r-lazyeval) ("r-magrittr" ,r-magrittr) ("r-purrr" ,r-purrr) + ("r-rcolorbrewer" ,r-rcolorbrewer) ("r-scales" ,r-scales) ("r-tibble" ,r-tibble) ("r-tidyr" ,r-tidyr) From cc9a778ecc39371602903850ac9f2f090c2d0381 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 16:49:12 +0200 Subject: [PATCH 0664/1227] gnu: r-hmisc: Update to 4.0-3. * gnu/packages/statistics.scm (r-hmisc): Update to 4.0-3. [propagated-inputs]: Remove r-base64. --- gnu/packages/statistics.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index fd991d6434..22e35f8aa8 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3814,21 +3814,20 @@ package instead.") (define-public r-hmisc (package (name "r-hmisc") - (version "4.0-2") + (version "4.0-3") (source (origin (method url-fetch) (uri (cran-uri "Hmisc" version)) (sha256 (base32 - "1lg9k0kj803wsm3h0a991q9l2lrgsqryzfv2z79b88kjbfapqpqr")))) + "1a7i7azag6pldgala85d8hh7wnx1shamyiriy4jfc65nxrr2lq8w")))) (properties `((upstream-name . "Hmisc"))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) (propagated-inputs `(("r-acepack" ,r-acepack) - ("r-base64" ,r-base64) ("r-base64enc" ,r-base64enc) ("r-cluster" ,r-cluster) ("r-data-table" ,r-data-table) From c628b8418a0e16ebab6af739732bacb9163f3246 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 16:51:23 +0200 Subject: [PATCH 0665/1227] gnu: r-ranger: Update to 0.8.0. * gnu/packages/statistics.scm (r-ranger): Update to 0.8.0. [propagated-inputs]: Add r-matrix and r-rcppeigen. --- gnu/packages/statistics.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 22e35f8aa8..2ee9879b42 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5126,17 +5126,19 @@ diagnostic tools (@code{ctlcurves} and @code{DiscrFact}).") (define-public r-ranger (package (name "r-ranger") - (version "0.7.0") + (version "0.8.0") (source (origin (method url-fetch) (uri (cran-uri "ranger" version)) (sha256 (base32 - "0g1rnpk4c06lmy0r5n0j7i2xna190kqalmxp42d9gnk3drnb1x43")))) + "1fdbm879wx3hlng8s4c4f8f2x5yxz57llakcqnpa0lymybidw3vz")))) (build-system r-build-system) (propagated-inputs - `(("r-rcpp" ,r-rcpp))) + `(("r-rcpp" ,r-rcpp) + ("r-matrix" ,r-matrix) + ("r-rcppeigen" ,r-rcppeigen))) (home-page "https://github.com/imbs-hl/ranger") (synopsis "Fast implementation of random forests") (description From 64c6712d03254ff40fe05f3eaccd2258d2eb8d78 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:06:40 +0200 Subject: [PATCH 0666/1227] gnu: r-knitrbootstrap: Update to 1.0.1. * gnu/packages/statistics.scm (r-knitrbootstrap): Update to 1.0.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 2ee9879b42..f189fd001f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1309,14 +1309,14 @@ generation in R using Literate Programming techniques.") (define-public r-knitrbootstrap (package (name "r-knitrbootstrap") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (cran-uri "knitrBootstrap" version)) (sha256 (base32 - "0pshn2slzqwpryklslsxwh1dmqcnwv6bwi7yfm6m342wjybpk0wl")))) + "089147g7nqp99rwdxxsfmklsrwc8aia09sr8ndmrc335r33v6r6p")))) (properties `((upstream-name . "knitrBootstrap"))) (build-system r-build-system) (propagated-inputs From 0f2eee0d969b27d12a4e5789ff1f27af0e87959d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:07:37 +0200 Subject: [PATCH 0667/1227] gnu: r-pracma: Update to 2.0.7. * gnu/packages/maths.scm (r-pracma): Update to 2.0.7. --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 6ed51b027e..00732a5756 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1626,12 +1626,12 @@ programming problems.") (define-public r-pracma (package (name "r-pracma") - (version "2.0.4") + (version "2.0.7") (source (origin (method url-fetch) (uri (cran-uri "pracma" version)) (sha256 - (base32 "1z3i90mkzwvp9di17caf4934z2xlb2imm3hwxllcrbwvmnmhrwyc")))) + (base32 "0hxa0rbbp54j0c05qj7vfwhqfdmiz5ax8vhqxd09g33x7c0hqbc5")))) (build-system r-build-system) (propagated-inputs `(("r-quadprog" ,r-quadprog))) From 2d81bc16a90944d6e7225ab562c3de117411f1cf Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:08:24 +0200 Subject: [PATCH 0668/1227] gnu: r-httpuv: Update to 1.3.5. * gnu/packages/web.scm (r-httpuv): Update to 1.3.5. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 1550454241..51533ee0a3 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3347,13 +3347,13 @@ CDF, Atom 0.3, and Atom 1.0 feeds.") (define-public r-httpuv (package (name "r-httpuv") - (version "1.3.3") + (version "1.3.5") (source (origin (method url-fetch) (uri (cran-uri "httpuv" version)) (sha256 (base32 - "0aibs0hf38n8f6xxx4g2i2lzd6l5h92m5pscx2z834sdvhnladxv")))) + "1sg4f223zfyd265b28rlhsn3b6mqflcpnmya98cjmjncmy9vjdj3")))) (build-system r-build-system) (native-inputs `(("r-rcpp" ,r-rcpp))) (home-page "https://github.com/rstudio/httpuv") From 9fe794f0f73eca2563c122d6d5ea25cad6eb4682 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:09:11 +0200 Subject: [PATCH 0669/1227] gnu: r-jsonlite: Update to 1.5. * gnu/packages/web.scm (r-jsonlite): Update to 1.5. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 51533ee0a3..9a923a7f88 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3371,13 +3371,13 @@ particularly easy to create complete web applications using httpuv alone.") (define-public r-jsonlite (package (name "r-jsonlite") - (version "1.4") + (version "1.5") (source (origin (method url-fetch) (uri (cran-uri "jsonlite" version)) (sha256 (base32 - "11rgkjp5qir79niad0aizjxvjzyvkl6l9nsrv3ikv446vllmrasn")))) + "00lfg464jhf7k01bal9pcjvbdf5cxk6xi2h46hccp1x3h883g434")))) (build-system r-build-system) (home-page "http://arxiv.org/abs/1403.2805") (synopsis "Robust, high performance JSON parser and generator for R") From a1e54db2ace516db7d7f52672f10cafa0ed3131c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:10:05 +0200 Subject: [PATCH 0670/1227] gnu: r-servr: Update to 0.6. * gnu/packages/web.scm (r-servr): Update to 0.6. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 9a923a7f88..4e096f19d3 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3395,13 +3395,13 @@ in systems and applications.") (define-public r-servr (package (name "r-servr") - (version "0.5") + (version "0.6") (source (origin (method url-fetch) (uri (cran-uri "servr" version)) (sha256 (base32 - "1ixcl9xjc1k9zvl6v6bsw4kpramr1h53b4s46qg8kahkqy6kqd8a")))) + "0sqz3wssxa19g9mpmf9s4gx2a5rvzl8nrd11qkgpz5v3iqsc6ysr")))) (build-system r-build-system) (propagated-inputs `(("r-httpuv" ,r-httpuv) From 850151058dcb99dedced7ceb00d1203e649f9898 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:10:46 +0200 Subject: [PATCH 0671/1227] gnu: r-htmltools: Update to 0.3.6. * gnu/packages/web.scm (r-htmltools): Update to 0.3.6. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 4e096f19d3..e6dc13500a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3420,13 +3420,13 @@ directory.") (define-public r-htmltools (package (name "r-htmltools") - (version "0.3.5") + (version "0.3.6") (source (origin (method url-fetch) (uri (cran-uri "htmltools" version)) (sha256 (base32 - "0j9bf80grd6gwh7116m575pycv87c0wcwkxsz3gzzfs4aw3pxyr9")))) + "18k8r1s8sz1jy7dkz35n69wj20xhmllr53xmwb4pdzf2z61gpbs4")))) (build-system r-build-system) (arguments `(#:phases From 53deffe5e9e4fd24d57c0f34059f6be04a7d8cf9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:11:14 +0200 Subject: [PATCH 0672/1227] gnu: r-htmlwidgets: Update to 0.9. * gnu/packages/web.scm (r-htmlwidgets): Update to 0.9. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index e6dc13500a..45526f2cc0 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3454,13 +3454,13 @@ directory.") (define-public r-htmlwidgets (package (name "r-htmlwidgets") - (version "0.8") + (version "0.9") (source (origin (method url-fetch) (uri (cran-uri "htmlwidgets" version)) (sha256 (base32 - "1df3pwl34rvdbr9sgr5h27q9bmqpckvpwq4frl3d1v614y3vfclj")))) + "0plqkfqys1ca3ki7sb7yc6gwjpi7yy4g3mzh7hfy8s6qri0vam0i")))) (build-system r-build-system) (propagated-inputs `(("r-htmltools" ,r-htmltools) From e584b9fc1b201a79212910251cf2fbae0f9e1526 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:11:59 +0200 Subject: [PATCH 0673/1227] gnu: r-curl: Update to 2.8.1. * gnu/packages/web.scm (r-curl): Update to 2.8.1. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 45526f2cc0..972f1bdbce 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3508,13 +3508,13 @@ LaTeX.") (define-public r-curl (package (name "r-curl") - (version "2.5") + (version "2.8.1") (source (origin (method url-fetch) (uri (cran-uri "curl" version)) (sha256 (base32 - "09p86i5f88gx1i7cidm1ka56g0jjkghqfam96p1jhwlh2fv6nrks")))) + "0dgfl7wn4r8inv55xnk4ybf1y2x4qmi4cbr6phr3lfi1dnjm4hsm")))) (build-system r-build-system) (arguments `(#:phases From af1eeabe899342d19ebaabbc6e34733758b8c350 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:12:26 +0200 Subject: [PATCH 0674/1227] gnu: r-boot: Update to 1.3-20. * gnu/packages/statistics.scm (r-boot): Update to 1.3-20. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index f189fd001f..810a2ad688 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -264,14 +264,14 @@ available, greatly increasing its breadth and scope.") (define-public r-boot (package (name "r-boot") - (version "1.3-19") + (version "1.3-20") (source (origin (method url-fetch) (uri (cran-uri "boot" version)) (sha256 (base32 - "16hsw4bw9pkfc2lqxfwycm1sbvbrm4linvm0ci71n8sxc7srvkis")))) + "0ai1qpm0p4z07xr0dvag8sdn9jrxcwanrsk9khzmww094jvr1jxd")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/boot") (synopsis "Bootstrap functions for R") From 74b037df64914254f5539ccaca697310459b6b79 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:12:51 +0200 Subject: [PATCH 0675/1227] gnu: r-foreign: Update to 0.8-69. * gnu/packages/statistics.scm (r-foreign): Update to 0.8-69. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 810a2ad688..ae03f9ca8d 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -366,14 +366,14 @@ Hubert, based on Kaufman and Rousseeuw (1990) \"Finding Groups in Data\".") (define-public r-foreign (package (name "r-foreign") - (version "0.8-67") + (version "0.8-69") (source (origin (method url-fetch) (uri (cran-uri "foreign" version)) (sha256 (base32 - "0j0z815zyp8n97rk6hlk68d1r8b26vls39s03viq0pnx3cbpwyga")))) + "0s1lxmd85dd0kxx8hwk02w9l7pmpk4bpy7787fbyh2dbq5g9ys0k")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/foreign") (synopsis "Read data stored by other statistics software") From dbeda1b4a0fd1d6b59ba95ef036441c83f50642e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:13:15 +0200 Subject: [PATCH 0676/1227] gnu: r-matrix: Update to 1.2-10. * gnu/packages/statistics.scm (r-matrix): Update to 1.2-10. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ae03f9ca8d..63166bea32 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -428,14 +428,14 @@ also flexible enough to handle most nonstandard requirements.") (define-public r-matrix (package (name "r-matrix") - (version "1.2-8") + (version "1.2-10") (source (origin (method url-fetch) (uri (cran-uri "Matrix" version)) (sha256 (base32 - "1dyv42d7ranb85y8hvi57hbg5xnvhdzqn56wcq3qmhazqj3s3liw")))) + "0r3qjcz92xwgdzrfz444mqzwnja5sv9abaf252fh6k48qbyahahh")))) (properties `((upstream-name . "Matrix"))) (build-system r-build-system) (propagated-inputs From 6fb21ed2a346e426571c088098b642fd20fe0aa7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:13:46 +0200 Subject: [PATCH 0677/1227] gnu: r-mgcv: Update to 1.8-18. * gnu/packages/statistics.scm (r-mgcv): Update to 1.8-18. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 63166bea32..95d106035e 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -473,14 +473,14 @@ nonlinear mixed-effects models.") (define-public r-mgcv (package (name "r-mgcv") - (version "1.8-17") + (version "1.8-18") (source (origin (method url-fetch) (uri (cran-uri "mgcv" version)) (sha256 (base32 - "1zj223l4a3j15d3c01wv7dkzn9w6084gxrq5600ck9rvr0lfpwwg")))) + "011mgcypr56xvm9nizsfsb2285kzql93x0d3lzg849g39vbpp4s2")))) (build-system r-build-system) (propagated-inputs `(("r-matrix" ,r-matrix) From 831858a7d3215f4b17700260845675deeb9f6d75 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:14:14 +0200 Subject: [PATCH 0678/1227] gnu: r-bit64: Update to 0.9-7. * gnu/packages/statistics.scm (r-bit64): Update to 0.9-7. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 95d106035e..30f83d098c 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -622,14 +622,14 @@ binary booleans, @code{TRUE} and @code{FALSE} can be stored with 1 bit only.") (define-public r-bit64 (package (name "r-bit64") - (version "0.9-5") + (version "0.9-7") (source (origin (method url-fetch) (uri (cran-uri "bit64" version)) (sha256 (base32 - "0fz5m3fhvxgwjl76maag7yn0zdw24rx34gy6v77378fajag9yllg")))) + "07znvz9vp1nz1y5ljng4qyskvm943cdbmy996s67560ijxzsm6kv")))) (build-system r-build-system) (propagated-inputs `(("r-bit" ,r-bit))) From d5ce3807114123abd8d3e84f054edd6f26f45309 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:14:42 +0200 Subject: [PATCH 0679/1227] gnu: r-dbi: Update to 0.7. * gnu/packages/statistics.scm (r-dbi): Update to 0.7. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 30f83d098c..5d0f675a71 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1120,13 +1120,13 @@ evaluation (NSE) in R.") (define-public r-dbi (package (name "r-dbi") - (version "0.6-1") + (version "0.7") (source (origin (method url-fetch) (uri (cran-uri "DBI" version)) (sha256 (base32 - "1fg158k4n6l3rzx9nrwhp4nwkwpbmv1q7z2xz5rw138zws68fkgr")))) + "04fyrxdpqcygg5wviy637y6lgk64xqjjq31lvv4hwqj5kbaxamr5")))) (build-system r-build-system) (home-page "https://github.com/rstats-db/DBI") (synopsis "R database interface") From 12cd7975410669c687c9285bcc97d1e720129aad Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:15:09 +0200 Subject: [PATCH 0680/1227] gnu: r-evaluate: Update to 0.10.1. * gnu/packages/statistics.scm (r-evaluate): Update to 0.10.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 5d0f675a71..3e1b64cf9e 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1158,13 +1158,13 @@ for template use among CRAN packages.") (define-public r-evaluate (package (name "r-evaluate") - (version "0.10") + (version "0.10.1") (source (origin (method url-fetch) (uri (cran-uri "evaluate" version)) (sha256 (base32 - "0mwna7rjyrmc76651a1fm7c76ippdsc2wsp3sj3iwb1c73mvlqv1")))) + "070vvmnbdlp7sz2zhza7fhd2a6mlwiln8fn4hyzhsiizbn4n79y9")))) (build-system r-build-system) (propagated-inputs `(("r-stringr" ,r-stringr))) From 6dc86e8dfc4fa22b1a320283c8bb2188efd8e39a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:15:34 +0200 Subject: [PATCH 0681/1227] gnu: r-formatr: Update to 1.5. * gnu/packages/statistics.scm (r-formatr): Update to 1.5. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 3e1b64cf9e..cd01c733ec 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1180,13 +1180,13 @@ adapted for other output formats, such as HTML or LaTeX.") (define-public r-formatr (package (name "r-formatr") - (version "1.4") + (version "1.5") (source (origin (method url-fetch) (uri (cran-uri "formatR" version)) (sha256 (base32 - "1fvynq0fj1r9grg9vvfdh5fl2riv6qki9f2rfpyvbvqq3xxpmi3f")))) + "19sd23vgs4ac0fwlw40j3676k6mramb0ajlq8hdw23kjwdx1jk47")))) (build-system r-build-system) (home-page "http://yihui.name/formatR") (synopsis "Format R code automatically") From b07c8c01565b23cc4c5ae5313c8302e0227fa6db Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:15:57 +0200 Subject: [PATCH 0682/1227] gnu: r-knitr: Update to 1.16. * gnu/packages/statistics.scm (r-knitr): Update to 1.16. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index cd01c733ec..9ef4d166ce 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1281,13 +1281,13 @@ emitter (http://pyyaml.org/wiki/LibYAML) for R.") (define-public r-knitr (package (name "r-knitr") - (version "1.15.1") + (version "1.16") (source (origin (method url-fetch) (uri (cran-uri "knitr" version)) (sha256 (base32 - "1pbxd3k7kv5sa1a5gxm0zc2bhjxdgx2nfch9xap5k85djmgsfqc1")))) + "02balmhvc955rkqv4v0wkxbw4vjphydajgcpy4ml0s3b4sziyj0h")))) (build-system r-build-system) (propagated-inputs `(("r-evaluate" ,r-evaluate) From f05c6275b762b7d2abf0280330d8018065d6da8c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:16:17 +0200 Subject: [PATCH 0683/1227] gnu: r-r6: Update to 2.2.2. * gnu/packages/statistics.scm (r-r6): Update to 2.2.2. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 9ef4d166ce..d1f8f08c44 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1461,13 +1461,13 @@ flexible and easy to set up.") (define-public r-r6 (package (name "r-r6") - (version "2.2.0") + (version "2.2.2") (source (origin (method url-fetch) (uri (cran-uri "R6" version)) (sha256 (base32 - "1ir51pb0y6yj05qaxsflk4a6hv8n73cwlb0qajcskbrz632dsyvx")))) + "13xfdr19ca7ymisidsanm6w7hsk3qmy5l8c0mlz3nk48f7s5cxq8")))) (build-system r-build-system) (home-page "https://github.com/wch/R6/") (synopsis "Classes with reference semantics in R") From c832d326a1671d0f6741a48cea8a7bd45600d2a8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:16:39 +0200 Subject: [PATCH 0684/1227] gnu: r-formula: Update to 1.2-2. * gnu/packages/statistics.scm (r-formula): Update to 1.2-2. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d1f8f08c44..1529d1135a 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1602,14 +1602,14 @@ Groups in Data\".") (define-public r-formula (package (name "r-formula") - (version "1.2-1") + (version "1.2-2") (source (origin (method url-fetch) (uri (cran-uri "Formula" version)) (sha256 (base32 - "02in5325zzrqbhlygx6s0dinj6ymw845q70y56frqacv25ayzcax")))) + "0ad49bzip1zqmpj1d8jajwl4bd81fm3k6dq8p26x6mvlzc04dvwd")))) (properties `((upstream-name . "Formula"))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/Formula") From 63f934e67243bc4cfb887655de92369cf819ab71 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:16:59 +0200 Subject: [PATCH 0685/1227] gnu: r-backports: Update to 1.1.0. * gnu/packages/statistics.scm (r-backports): Update to 1.1.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 1529d1135a..3489068273 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1934,14 +1934,14 @@ limited to R.") (define-public r-backports (package (name "r-backports") - (version "1.0.5") + (version "1.1.0") (source (origin (method url-fetch) (uri (cran-uri "backports" version)) (sha256 (base32 - "1pn1ii8vbkgxcqvx52kzsbwf9gkn9fp33388087zky2hmdzdirn0")))) + "1kcz6j82by28cjk5wi2j6dfqdin1kib4y7d2r4h3zabcxmk6jly5")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/backports") (synopsis "Reimplementations of functions introduced since R 3.0.0") From 58e1ce86abf2ee636b2ec5eca27738357cd8db03 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:17:49 +0200 Subject: [PATCH 0686/1227] gnu: r-checkmate: Update to 1.8.3. * gnu/packages/statistics.scm (r-checkmate): Update to 1.8.3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 3489068273..d568e6e6c7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1957,14 +1957,14 @@ R version.") (define-public r-checkmate (package (name "r-checkmate") - (version "1.8.2") + (version "1.8.3") (source (origin (method url-fetch) (uri (cran-uri "checkmate" version)) (sha256 (base32 - "1zqcggl9m7slvc0q6zyhssdypb7jzf3l9byl5vxh1qdwjiw2y64g")))) + "04rxabzamhv6ybynx627sxk02qvq8znkv0y10vmq67xx6pxhqvla")))) (build-system r-build-system) (propagated-inputs `(("r-backports" ,r-backports))) From f212bf84abfc00cc536778a64b8400082ff78826 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:18:22 +0200 Subject: [PATCH 0687/1227] gnu: r-git2r: Update to 0.19.0. * gnu/packages/statistics.scm (r-git2r): Update to 0.19.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d568e6e6c7..3c89612437 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2207,13 +2207,13 @@ functions make it easy to control additional request components.") (define-public r-git2r (package (name "r-git2r") - (version "0.18.0") + (version "0.19.0") (source (origin (method url-fetch) (uri (cran-uri "git2r" version)) (sha256 (base32 - "0bgzdsdi9n6l8pchivs6a2g4ksa56qs8hygpyv2c0ndqmx4jxcwi")))) + "0ws6fbndmaafk2am4dwnz24qizxhld0yh54hgx0z6lzv3p1j209q")))) (build-system r-build-system) ;; This R package contains modified sources of libgit2. This modified ;; version of libgit2 is built as the package is built. Hence libgit2 is From d8048a1212e880ce360aaf1b32f4bf3c84e51028 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:18:45 +0200 Subject: [PATCH 0688/1227] gnu: r-withr: Update to 2.0.0. * gnu/packages/statistics.scm (r-withr): Update to 2.0.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 3c89612437..f8c637f163 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2277,13 +2277,13 @@ tools to simplify the devolpment of R packages.") (define-public r-withr (package (name "r-withr") - (version "1.0.2") + (version "2.0.0") (source (origin (method url-fetch) (uri (cran-uri "withr" version)) (sha256 (base32 - "042z8nmqqilgrvhmbqrjc05qys3gzwq1rqy2wxp2bi5d41859493")))) + "0ncq9ygx33rx7aazn53p0a0vbr5xv0r6wbkzcwbhbwyd8k55bgin")))) (build-system r-build-system) (home-page "https://github.com/jimhester/withr") (synopsis "Run code with temporarily modified global state") From 76040b85613a2dd99d27c485a12e57d9cb221fb5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:19:03 +0200 Subject: [PATCH 0689/1227] gnu: r-readr: Update to 1.1.1. * gnu/packages/statistics.scm (r-readr): Update to 1.1.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index f8c637f163..d47d03126e 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2315,13 +2315,13 @@ time-of-day values, based on the @code{difftime} class.") (define-public r-readr (package (name "r-readr") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) (uri (cran-uri "readr" version)) (sha256 (base32 - "1g7g3gdmvq7nj8asw6fi13k38c420sy9696nqgkrhlvv5h13yqs7")))) + "1cvw5wdcqk88cp5fyv678mnmp66l3whcd2yh33p2qvx0168bja8s")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp) From 1c41d51743864245620eff0f2ba2cb1b9ad0ec44 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:19:22 +0200 Subject: [PATCH 0690/1227] gnu: r-plotrix: Update to 3.6-5. * gnu/packages/statistics.scm (r-plotrix): Update to 3.6-5. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d47d03126e..a7a3ca8cab 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2339,13 +2339,13 @@ disk (or a connection).") (define-public r-plotrix (package (name "r-plotrix") - (version "3.6-4") + (version "3.6-5") (source (origin (method url-fetch) (uri (cran-uri "plotrix" version)) (sha256 (base32 - "1wxzjnzvkl3aga51ad2xhv4s7v46kvnp4z0nz4cb9cn10057sfw8")))) + "01655y3qzy0283ppc85bi0g42g20zrqzcl0qb30cl6rcbflhymlb")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/plotrix") (synopsis "Various plotting functions") From 7c172eacfa082fe1a2f8ae284fe4ef604fb0ce44 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:20:00 +0200 Subject: [PATCH 0691/1227] gnu: r-rcpparmadillo: Update to 0.7.900.2.0. * gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.7.900.2.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index a7a3ca8cab..10ad5fc708 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2398,13 +2398,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.7.800.2.0") + (version "0.7.900.2.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "025lh504nw7ir1f2xsqnvfkq9rg0rb2xzfn3a2s0b2a9snqdzzwr")))) + "01qsff2p1fp5i9lq7rsykrskgr6smz24ddspbl5ad9a8rkmczwyv")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) (propagated-inputs From cc8ba9b69c1b546b182156f7b2b4aec5612533e8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:20:31 +0200 Subject: [PATCH 0692/1227] gnu: r-rmarkdown: Update to 1.6. * gnu/packages/statistics.scm (r-rmarkdown): Update to 1.6. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 10ad5fc708..db78a8bc31 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2490,14 +2490,14 @@ certain criterion, e.g., it contains a certain regular file.") (define-public r-rmarkdown (package (name "r-rmarkdown") - (version "1.4") + (version "1.6") (source (origin (method url-fetch) (uri (cran-uri "rmarkdown" version)) (sha256 (base32 - "1dvs9cq88g61wfimifagq6y98yxavxzjan39jvpdsg98mafckq9g")))) + "0p8ph5z5pifk1nxc1bppkfs1ir5gjc6ap9n64b4255m2fdaqfrc7")))) (properties `((upstream-name . "rmarkdown"))) (build-system r-build-system) (propagated-inputs From fe9917284f7df172392db16993f1eb41a44b59ac Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:20:51 +0200 Subject: [PATCH 0693/1227] gnu: r-xml: Update to 3.98-1.9. * gnu/packages/statistics.scm (r-xml): Update to 3.98-1.9. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index db78a8bc31..c0da1a80d8 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2662,13 +2662,13 @@ ldap, and also supports cookies, redirects, authentication, etc.") (define-public r-xml (package (name "r-xml") - (version "3.98-1.6") + (version "3.98-1.9") (source (origin (method url-fetch) (uri (cran-uri "XML" version)) (sha256 (base32 - "1amxx7fpik162nimrr7m5lvv6rhx9cwdyg44fxp1i5wm3y4skwnz")))) + "1hzkdkgs0nzmfg9wm7kyh1j9i0i2g7925whzlihqvg9grdlh3dx3")))) (properties `((upstream-name . "XML"))) (build-system r-build-system) From 127b926bc1dcf71c9bbb2dc3ccd93bfc02ea125c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:21:18 +0200 Subject: [PATCH 0694/1227] gnu: r-segmented: Update to 0.5-2.1. * gnu/packages/statistics.scm (r-segmented): Update to 0.5-2.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index c0da1a80d8..5423e132fa 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2780,14 +2780,14 @@ statements.") (define-public r-segmented (package (name "r-segmented") - (version "0.5-1.4") + (version "0.5-2.1") (source (origin (method url-fetch) (uri (cran-uri "segmented" version)) (sha256 (base32 - "1740cvx2q4v23g4q0zkvg50s5bv8jcrlzzhm7fac4xn0riwmzp5i")))) + "1i576xksc761nyv2dmq86nwbgqvp0plz6bjcn69nkdwq2wbizmw8")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/segmented") (synopsis "Regression models with breakpoints estimation") From 81c057ced9d81728e3218508ca85e9ce038404eb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:21:46 +0200 Subject: [PATCH 0695/1227] gnu: r-sparsem: Update to 1.77. * gnu/packages/statistics.scm (r-sparsem): Update to 1.77. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 5423e132fa..a6be7df3b5 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2821,13 +2821,13 @@ worker processes and collect and return the results on the master.") (define-public r-sparsem (package (name "r-sparsem") - (version "1.76") + (version "1.77") (source (origin (method url-fetch) (uri (cran-uri "SparseM" version)) (sha256 (base32 - "16xnl9cacim35aawq6bmd2y6rrhnh1kg6dwsy3k5yslkfr1y9j62")))) + "0p6ljma2h12cq1xmy0cxb48ih8dhxxbnwkqzvx3cckxf2kprycm9")))) (properties `((upstream-name . "SparseM"))) (inputs From 1c576cbadb88258b03d78091c1037ad906aea6bf Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:22:07 +0200 Subject: [PATCH 0696/1227] gnu: r-irlba: Update to 2.2.1. * gnu/packages/statistics.scm (r-irlba): Update to 2.2.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index a6be7df3b5..fe00155675 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3008,14 +3008,14 @@ flexible than the orphaned \"base64\" package.") (define-public r-irlba (package (name "r-irlba") - (version "2.1.2") + (version "2.2.1") (source (origin (method url-fetch) (uri (cran-uri "irlba" version)) (sha256 (base32 - "1qbcn0ix85pmk296jhpi419kvh06vxm5cq24yk013ps3g7fyi0si")))) + "0zfb7x1701n6gask0f8y2yq0vmb82xkxf6limp43ivx551hx600s")))) (build-system r-build-system) (propagated-inputs `(("r-matrix" ,r-matrix))) From e1cd25bc7871d8f9d2bc81c96c1ac3b015d7b868 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:22:36 +0200 Subject: [PATCH 0697/1227] gnu: r-glmnet: Update to 2.0-10. * gnu/packages/statistics.scm (r-glmnet): Update to 2.0-10. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index fe00155675..7deb27e015 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3030,14 +3030,14 @@ analysis of large sparse or dense matrices.") (define-public r-glmnet (package (name "r-glmnet") - (version "2.0-5") + (version "2.0-10") (source (origin (method url-fetch) (uri (cran-uri "glmnet" version)) (sha256 (base32 - "1cbpzmbv837fvq88rgn6mgzgr9f1wqp9fg8gh2kkmngvr1957a9c")))) + "07n2hz4fvjyv0siai8z8wqwfj8d58i8n1vzf1ckdfzp4kxa3z08d")))) (build-system r-build-system) (inputs `(("gfortran" ,gfortran))) From 9b9fef0eafe4c3dc448c0d779cbbb8bbc6cb6e2d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:22:55 +0200 Subject: [PATCH 0698/1227] gnu: r-tidyr: Update to 0.6.3. * gnu/packages/statistics.scm (r-tidyr): Update to 0.6.3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 7deb27e015..7ca656664b 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3535,14 +3535,14 @@ the 'lite' version of the more complete @code{viridis} package.") (define-public r-tidyr (package (name "r-tidyr") - (version "0.6.1") + (version "0.6.3") (source (origin (method url-fetch) (uri (cran-uri "tidyr" version)) (sha256 (base32 - "11hs3gqpbaw3w281as4m7j9n594ix5axfpwbyjsd0l62pwnzj217")))) + "14s57zrjm2phiy600z9ivq4az71z0ggmp6nj0js7yrybxf0dlah6")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) From 1d256438c84862906d95e860502170c9a968aca0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:23:31 +0200 Subject: [PATCH 0699/1227] gnu: r-googlesheets: Update to 0.2.2. * gnu/packages/statistics.scm (r-googlesheets): Update to 0.2.2. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 7ca656664b..7f1d6593cc 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3720,14 +3720,14 @@ character vector.") (define-public r-googlesheets (package (name "r-googlesheets") - (version "0.2.1") + (version "0.2.2") (source (origin (method url-fetch) (uri (cran-uri "googlesheets" version)) (sha256 (base32 - "0ps13h1cv7fj5dh8s4nvwi64wnnyqdsadcaa4iizq1c5s615cwk3")))) + "18q0xmxn09b52rmky7gr5flp0awndcnsgb7zcvkzvkrkvmwad52b")))) (build-system r-build-system) (propagated-inputs `(("r-cellranger" ,r-cellranger) From 2c75199c56b6558a6c717febba018ddd77f850b2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:23:53 +0200 Subject: [PATCH 0700/1227] gnu: r-sfsmisc: Update to 1.1-1. * gnu/packages/statistics.scm (r-sfsmisc): Update to 1.1-1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 7f1d6593cc..5d53852028 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3944,14 +3944,14 @@ existing packages provide.") (define-public r-sfsmisc (package (name "r-sfsmisc") - (version "1.1-0") + (version "1.1-1") (source (origin (method url-fetch) (uri (cran-uri "sfsmisc" version)) (sha256 (base32 - "0580piv4n1nispl3pa8nfjjfnb8iwaqky2dzdy0aqnxrxgrhqhvz")))) + "0jzmbywlyzfxs7hlmyd0iynghfc9qp5sa5lnhr73y8r360yv1ahf")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/sfsmisc") (synopsis "Utilities from \"Seminar fuer Statistik\" ETH Zurich") From 80d1185076be3366a7eb9e006f4871af85093a17 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:24:19 +0200 Subject: [PATCH 0701/1227] gnu: r-gdata: Update to 2.18.0. * gnu/packages/statistics.scm (r-gdata): Update to 2.18.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 5d53852028..2e42ff7af9 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3985,14 +3985,14 @@ tests for whether a value is missing, empty or contains only @code{NA} and (define-public r-gdata (package (name "r-gdata") - (version "2.17.0") + (version "2.18.0") (source (origin (method url-fetch) (uri (cran-uri "gdata" version)) (sha256 (base32 - "0kiy3jbcszlpmarg311spdsfi5pn89wgy742dxsbzxk8907fr5w0")))) + "0zwdj7lscgxr8r62ii8hbdh4mb7sa9w4f5nv32zzrxdvymcpya2b")))) (build-system r-build-system) (inputs `(("perl" ,perl))) From a8c2706de21f2cbeb709e3e72618756d5507d595 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:24:46 +0200 Subject: [PATCH 0702/1227] gnu: r-statmod: Update to 1.4.30. * gnu/packages/statistics.scm (r-statmod): Update to 1.4.30. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 2e42ff7af9..6ab5379ee5 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4266,13 +4266,13 @@ Wall Street Journal, among others. This package also provides (define-public r-statmod (package (name "r-statmod") - (version "1.4.29") + (version "1.4.30") (source (origin (method url-fetch) (uri (cran-uri "statmod" version)) (sha256 (base32 - "1fgzkwriba39d7946lq892f0si2fjdy37pvxki6ix8xyj8qgnci4")))) + "07v4x8af60alcw6vbiwf5fp25bhra61kvxz9kqx64lszm0i1fb4x")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/statmod") (native-inputs From d58faa7f447bbccc1b8714dc43a7940177ab3e62 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:25:18 +0200 Subject: [PATCH 0703/1227] gnu: r-rann: Update to 2.5.1. * gnu/packages/statistics.scm (r-rann): Update to 2.5.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 6ab5379ee5..dd47cee905 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4292,13 +4292,13 @@ dispersion modeling and Tweedie power-law families.") (define-public r-rann (package (name "r-rann") - (version "2.5") + (version "2.5.1") (source (origin (method url-fetch) (uri (cran-uri "RANN" version)) (sha256 (base32 - "007cgqg9bybg2zlljbv5m6cmlm3r6i251018rpgjcn0xnm9sjsj7")))) + "0il5i99vbcagnxvb15af5n37g04a4q1x96bz73zh3jhki9fpw9vm")))) (properties `((upstream-name . "RANN"))) (build-system r-build-system) From df03b6f90c0613472b9306679ff95a7bcc3aaa22 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:25:45 +0200 Subject: [PATCH 0704/1227] gnu: r-cowplot: Update to 0.8.0. * gnu/packages/statistics.scm (r-cowplot): Update to 0.8.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index dd47cee905..13f6639e40 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4361,14 +4361,14 @@ Farebrother's algorithm or Liu et al.'s algorithm.") (define-public r-cowplot (package (name "r-cowplot") - (version "0.7.0") + (version "0.8.0") (source (origin (method url-fetch) (uri (cran-uri "cowplot" version)) (sha256 (base32 - "03iimcsh1pk7iqzjdlfcj43b8khijdk4hg00j4jdllv19xsfb0hx")))) + "03bh0r6ynr95gk4lc8asfi3kpmskm59vfzwn417pdziha3igs5x6")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) From 62d3afc3d6c38b3d60fb754ff2b9916e86cc839a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:26:06 +0200 Subject: [PATCH 0705/1227] gnu: r-fastica: Update to 1.2-1. * gnu/packages/statistics.scm (r-fastica): Update to 1.2-1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 13f6639e40..8fd757a003 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4434,14 +4434,14 @@ regression.") (define-public r-fastica (package (name "r-fastica") - (version "1.2-0") + (version "1.2-1") (source (origin (method url-fetch) (uri (cran-uri "fastICA" version)) (sha256 (base32 - "0ykk78fsk5da2g16i4wji85bvji7nayjvkfp07hyaxq9d15jmf0r")))) + "108z2ymby5y4h8l4l2krqwm28rya93gq09yylgilnm3afvfrfabg")))) (properties `((upstream-name . "fastICA"))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/fastICA") From 60869fb2f857de565499e859e67a226d9cc769eb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:26:37 +0200 Subject: [PATCH 0706/1227] gnu: r-flexmix: Update to 2.3-14. * gnu/packages/statistics.scm (r-flexmix): Update to 2.3-14. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 8fd757a003..81e92359b0 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4517,14 +4517,14 @@ to change in the future.") (define-public r-flexmix (package (name "r-flexmix") - (version "2.3-13") + (version "2.3-14") (source (origin (method url-fetch) (uri (cran-uri "flexmix" version)) (sha256 (base32 - "1i205yw3kkxs27gqcs6zx0c2mh16p332a2p06wq6fdzb20bazg3z")))) + "0sl4zxh1sb2sr5q7svjw9ihrm219jzn82yrc9d43q6r1b8bpyz43")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice) From 41692b29636c1e492b35fa5b02c229bb003a6438 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:27:10 +0200 Subject: [PATCH 0707/1227] gnu: r-mclust: Update to 5.3. * gnu/packages/statistics.scm (r-mclust): Update to 5.3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 81e92359b0..10305d73e5 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4543,14 +4543,14 @@ models, generalized linear models and model-based clustering.") (define-public r-mclust (package (name "r-mclust") - (version "5.2.3") + (version "5.3") (source (origin (method url-fetch) (uri (cran-uri "mclust" version)) (sha256 (base32 - "0045msdw1xndfmlylbnm1ss716iiqzqwj454a97gmcq5kph86qzz")))) + "0h5syvpg3azrz5d10z2afilaa27jb4azi38idzlv05mfcs16s6rb")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) From 4431dd3a4eb9f8c9ee074e70475d5215f48e40d3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:27:40 +0200 Subject: [PATCH 0708/1227] gnu: r-vgam: Update to 1.0-4. * gnu/packages/statistics.scm (r-vgam): Update to 1.0-4. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 10305d73e5..82972c8646 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4690,14 +4690,14 @@ groupings.") (define-public r-vgam (package (name "r-vgam") - (version "1.0-3") + (version "1.0-4") (source (origin (method url-fetch) (uri (cran-uri "VGAM" version)) (sha256 (base32 - "0wr6szcpj8r4a1rlzgd6iym7khin69fmvxcf37iyvs8mms86dfr3")))) + "0r59hyp3afmvms890b3v2yyckf8v0qkjf2w11rnqd2zgg1gri0g5")))) (properties `((upstream-name . "VGAM"))) (build-system r-build-system) (inputs From 12c3bbb6629c3e9412929b5d5d1f6dae80eba032 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:28:01 +0200 Subject: [PATCH 0709/1227] gnu: r-pbapply: Update to 1.3-3. * gnu/packages/statistics.scm (r-pbapply): Update to 1.3-3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 82972c8646..04e2a749c6 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4715,14 +4715,14 @@ VGLMs can be loosely thought of as multivariate generalised linear models.") (define-public r-pbapply (package (name "r-pbapply") - (version "1.3-2") + (version "1.3-3") (source (origin (method url-fetch) (uri (cran-uri "pbapply" version)) (sha256 (base32 - "1sdmjlnwxb99f95g5v8k8mirrkzw99yig377v0qi9lzwjgd6fqqr")))) + "0iqhymf65jffh00qf056h1p76xf92bfmij6aymlmgnvn24fv4ybk")))) (build-system r-build-system) (home-page "https://github.com/psolymos/pbapply") (synopsis "Adding progress bar to apply functions") From 0f008abe7a52691c8f9849d4db90029a77a1d10c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:28:29 +0200 Subject: [PATCH 0710/1227] gnu: r-rcppeigen: Update to 0.3.3.3.0. * gnu/packages/statistics.scm (r-rcppeigen): Update to 0.3.3.3.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 04e2a749c6..13249c70e4 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4779,14 +4779,14 @@ based on an interface to Fortran implementations by M. J. D. Powell.") (define-public r-rcppeigen (package (name "r-rcppeigen") - (version "0.3.2.9.1") + (version "0.3.3.3.0") (source (origin (method url-fetch) (uri (cran-uri "RcppEigen" version)) (sha256 (base32 - "1ih940yjbc530cmpl6kx1jic7pz2ps1w5vrvy32qizh6m5s3lk7x")))) + "0zz9v0f8nnlvhhqv91lkyfblvjnmav84l89mr6vmbqjc2hzqd3n8")))) (properties `((upstream-name . "RcppEigen"))) (build-system r-build-system) (propagated-inputs From 6bb4bfa4bc282e93de77f68bd4461e25c05b0775 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:28:49 +0200 Subject: [PATCH 0711/1227] gnu: r-car: Update to 2.1-5. * gnu/packages/statistics.scm (r-car): Update to 2.1-5. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 13249c70e4..6467e9e131 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4957,14 +4957,14 @@ bootstrap test for generalized linear mixed models.") (define-public r-car (package (name "r-car") - (version "2.1-4") + (version "2.1-5") (source (origin (method url-fetch) (uri (cran-uri "car" version)) (sha256 (base32 - "0a6v7rsd1xsdyapnfqy37m7c4kx9wslkzsizc9k0lmnba0bwyfgx")))) + "1bm0ks9ga60z3izgq0d4kvirr9v4yf1820d1wznkihnbb55bc3m6")))) (build-system r-build-system) (propagated-inputs `(("r-mass" ,r-mass) From 85cd755417bc398e1de126039dc16e654f7d5716 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:29:20 +0200 Subject: [PATCH 0712/1227] gnu: r-tclust: Update to 1.2-7. * gnu/packages/statistics.scm (r-tclust): Update to 1.2-7. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 6467e9e131..5e14391dce 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5101,14 +5101,14 @@ multivariate case.") (define-public r-tclust (package (name "r-tclust") - (version "1.2-3") + (version "1.2-7") (source (origin (method url-fetch) (uri (cran-uri "tclust" version)) (sha256 (base32 - "0a1b7yp4l9wf6ic5czizyl2cnxrc1virj0icr8i6m1vv23jd8jfp")))) + "1mvqr280c6kwpg98byd0r1y0qf238xn2x15y8npqch6lpcszlb3x")))) (build-system r-build-system) (propagated-inputs `(("r-cluster" ,r-cluster) From 3f6ec083ecfd698f85841d04efe5f15794b2f75e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:29:47 +0200 Subject: [PATCH 0713/1227] gnu: r-bookdown: Update to 0.4. * gnu/packages/bioinformatics.scm (r-bookdown): Update to 0.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 e3c3bbc52f..8e1da7c4a9 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6382,13 +6382,13 @@ also known as views, in a controlled vocabulary.") (define-public r-bookdown (package (name "r-bookdown") - (version "0.3") + (version "0.4") (source (origin (method url-fetch) (uri (cran-uri "bookdown" version)) (sha256 (base32 - "0r9bchzg7im6psc3jphvshzbidc5bv5xaih1qg7b5518jy4iyvb9")))) + "1fp1k7hivrb7s2dwgrsqy9s7xg6pk9hczhrc149y1dwh901j6qvv")))) (build-system r-build-system) (propagated-inputs `(("r-htmltools" ,r-htmltools) From 7150f1c30c6f3da0114b56332d9860473c48760e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:30:08 +0200 Subject: [PATCH 0714/1227] gnu: r-optparse: Update to 1.4.4. * gnu/packages/bioinformatics.scm (r-optparse): Update to 1.4.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 8e1da7c4a9..19826a333e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6498,14 +6498,14 @@ support for default values, positional argument support, etc.") (define-public r-optparse (package (name "r-optparse") - (version "1.3.2") + (version "1.4.4") (source (origin (method url-fetch) (uri (cran-uri "optparse" version)) (sha256 (base32 - "1g8as89r91xxi5j5azsd6vrfrhg84mnfx2683j7pacdp8s33radw")))) + "1ff4wmsszrb3spwfp7ynfs8w11qpy1sdzfxm1wk8dqqvdwris7qb")))) (build-system r-build-system) (propagated-inputs `(("r-getopt" ,r-getopt))) From 023aa8ff5839a295b4b42287ba50713775866131 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:30:31 +0200 Subject: [PATCH 0715/1227] gnu: r-seqinr: Update to 3.4-5. * gnu/packages/bioinformatics.scm (r-seqinr): Update to 3.4-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 19826a333e..ccb31d0960 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6570,14 +6570,14 @@ S4Vectors package itself.") (define-public r-seqinr (package (name "r-seqinr") - (version "3.3-6") + (version "3.4-5") (source (origin (method url-fetch) (uri (cran-uri "seqinr" version)) (sha256 (base32 - "13d0qxm2244wgdl2dy2s8vnrnf5fx4n47if9gkb49dqx6c0sx8s2")))) + "17zv0n5cji17izwmwg0jcbxbjl3w5rls91w15svcnlpxjms38ahn")))) (build-system r-build-system) (propagated-inputs `(("r-ade4" ,r-ade4) From c8a9b2bcbff2d78609f8d34ad4d9ca41f17f4602 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:30:59 +0200 Subject: [PATCH 0716/1227] gnu: r-qtl: Update to 1.41-6. * gnu/packages/bioinformatics.scm (r-qtl): Update to 1.41-6. --- 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 ccb31d0960..907309d591 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7815,7 +7815,7 @@ throughput genetic sequencing data sets using regression methods.") (define-public r-qtl (package (name "r-qtl") - (version "1.40-8") + (version "1.41-6") (source (origin (method url-fetch) @@ -7823,7 +7823,7 @@ throughput genetic sequencing data sets using regression methods.") version ".tar.gz")) (sha256 (base32 - "05bj1x2ry0i7yqiydlswb3d2h4pxg70z8w1072az1mrv1m54k8sp")))) + "067az4v432zxp6lxck8d7vlh9w4r13r0mvw5zsglyaqwsh3d9sad")))) (build-system r-build-system) (home-page "http://rqtl.org/") (synopsis "R package for analyzing QTL experiments in genetics") From 4e0c847d5965d86d334d04458387cedbd5b4e9d4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:31:27 +0200 Subject: [PATCH 0717/1227] gnu: r-wgcna: Update to 1.60. * gnu/packages/bioinformatics.scm (r-wgcna): Update to 1.60. --- 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 907309d591..76dfc88cbb 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8065,14 +8065,14 @@ in SNV base substitution data.") (define-public r-wgcna (package (name "r-wgcna") - (version "1.51") + (version "1.60") (source (origin (method url-fetch) (uri (cran-uri "WGCNA" version)) (sha256 (base32 - "0hzvnhw76vwg8bl8x368f0c5szpwb8323bmrb3bir93i5bmfjsxx")))) + "16mxhwzhh5q48wmz1iba2r21cp0n0v8g11am4pi52iv6g0663ixl")))) (properties `((upstream-name . "WGCNA"))) (build-system r-build-system) (propagated-inputs From 5e0de298926e3a4d6e444f91427e240cd1c3c4cc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:31:50 +0200 Subject: [PATCH 0718/1227] gnu: r-seqminer: Update to 6.0. * gnu/packages/bioinformatics.scm (r-seqminer): Update to 6.0. --- 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 76dfc88cbb..768f0897a4 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8652,14 +8652,14 @@ unmodeled, or latent sources of noise.") (define-public r-seqminer (package (name "r-seqminer") - (version "5.9") + (version "6.0") (source (origin (method url-fetch) (uri (cran-uri "seqminer" version)) (sha256 (base32 - "0sfkxrc9gy5a8fadzyzfzh7l5grasm8cj6cd2nnpv85ws6mqr6qd")))) + "057j1l6dip35l1aivilapl2zv9db677b3di2pb3sfgq2sxg0ps3l")))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) From ceb802a31cd0bf1a39282e0032689a5d9d2c8332 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:45:10 +0200 Subject: [PATCH 0719/1227] gnu: r-desc: Update to 1.1.1. * gnu/packages/statistics.scm (r-desc): Update to 1.1.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 5e14391dce..e4feed377c 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2073,14 +2073,14 @@ module, Java Server Pages, and Python's psp module.") (define-public r-desc (package (name "r-desc") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) (uri (cran-uri "desc" version)) (sha256 (base32 - "0mc1jmiwqyj7s6gzxz6fyamzjpmdn3rpfpllby2fq11ml30c6jpr")))) + "0k07qighac1xzmm8k988zi7i88a0yfvia3gk5hbz0fyvb2v9kzrj")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) From 2267e4d3f64c9224997f8d48d69c505fa91c9aa6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 17:45:27 +0200 Subject: [PATCH 0720/1227] gnu: r-purrr: Update to 0.2.3. * gnu/packages/statistics.scm (r-purrr): Update to 0.2.3. [propagated-inputs]: Remove r-rcpp and r-lazyeval; add r-rlang. --- gnu/packages/statistics.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e4feed377c..55a8a2a483 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3591,20 +3591,19 @@ It uses and relies on grid graphics and formal (S4) classes and methods.") (define-public r-purrr (package (name "r-purrr") - (version "0.2.2.2") + (version "0.2.3") (source (origin (method url-fetch) (uri (cran-uri "purrr" version)) (sha256 (base32 - "1i1n651xf15489pd6xjdvyp8wyayn8p33d27br39mddn1xdjrpc1")))) + "0j1y0nbvljcis9hgic4wbbzslcsidhpw0wzs7d2hx7a2ygi6mkma")))) (build-system r-build-system) (propagated-inputs `(("r-tibble" ,r-tibble) - ("r-lazyeval" ,r-lazyeval) ("r-magrittr" ,r-magrittr) - ("r-rcpp" ,r-rcpp))) + ("r-rlang" ,r-rlang))) (home-page "https://github.com/hadley/purrr") (synopsis "Functional programming tools") (description From cf189709bcbc96e0e24c132f2a55a5347531ab44 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 21 Jul 2017 01:06:48 +0200 Subject: [PATCH 0721/1227] vm: Use grub-hybrid's grub-mkrescue. * gnu/system/vm.scm (system-disk-image): Use grub-hybrid's grub-mkrescue. * gnu/bootlader/grub.scm (grub-mkrescue-bootloader): New variable. --- gnu/bootloader/grub.scm | 6 ++++++ gnu/system/vm.scm | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index 3a3456ca46..ef62fe059b 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -55,6 +55,7 @@ grub-bootloader grub-efi-bootloader + grub-mkrescue-bootloader grub-configuration)) @@ -410,6 +411,11 @@ submenu \"GNU system, old configurations...\" {~%") (name 'grub-efi) (package grub-efi))) +(define* grub-mkrescue-bootloader + (bootloader + (inherit grub-efi-bootloader) + (package grub-hybrid))) + ;;; ;;; Compatibility macros. diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 90d29b0783..4494af0031 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -49,6 +49,7 @@ #:use-module (gnu packages admin) #:use-module (gnu bootloader) + #:use-module ((gnu bootloader grub) #:select (grub-mkrescue-bootloader)) #:use-module (gnu system shadow) #:use-module (gnu system pam) #:use-module (gnu system linux-initrd) @@ -369,6 +370,12 @@ to USB sticks meant to be read-only." #:volatile-root? #t rest))) + (bootloader (if (string=? "iso9660" file-system-type) + (bootloader-configuration + (inherit (operating-system-bootloader os)) + (bootloader grub-mkrescue-bootloader)) + (operating-system-bootloader os))) + ;; Force our own root file system. (file-systems (cons (file-system (mount-point "/") From 7cb6155088ee10300d0247077b3bf48089912e86 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 3 Aug 2017 21:39:12 +0300 Subject: [PATCH 0722/1227] gnu: bioinformatics.scm: Use (gnu packages cran) module. This is a follow up to a8cba9dd112528d67a946eee057c838221eb5249. * gnu/packages/bioinformatics.scm: Add (gnu packages cran) to #:use-modules. --- gnu/packages/bioinformatics.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 768f0897a4..3ec8b5ec71 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -48,6 +48,7 @@ #:use-module (gnu packages boost) #:use-module (gnu packages compression) #:use-module (gnu packages cpio) + #:use-module (gnu packages cran) #:use-module (gnu packages curl) #:use-module (gnu packages documentation) #:use-module (gnu packages databases) From 9e37e537a2d76d6f28a1790cae2e14b8ba1a55e3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 22:14:48 +0200 Subject: [PATCH 0723/1227] gnu: Add missing references to (gnu packages cran). This is a follow-up to commit a8cba9dd112528d67a946eee057c838221eb5249. Reported-by: Efraim Flashner --- gnu/packages/machine-learning.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index d39e77d978..c5132faf58 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -32,6 +32,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages boost) #:use-module (gnu packages compression) + #:use-module (gnu packages cran) #:use-module (gnu packages dejagnu) #:use-module (gnu packages gcc) #:use-module (gnu packages image) From c8737b1e41f7ef5c730fb0b47c5b478ab58b2341 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 3 Aug 2017 22:46:14 +0200 Subject: [PATCH 0724/1227] gnu: icedtea@3.5.0: Properly handle decoding error while substituting. * gnu/packages/java.scm (icedtea-8)[arguments] : Change 'encoding-error to 'decoding-error, which is what Guile 2.2 raises when failing to decode an input file. --- gnu/packages/java.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 5744db6ebc..47dd4f256b 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1602,7 +1602,7 @@ IcedTea build harness.") (string-append "lib" name ".so"))))) (for-each (lambda (file) - (catch 'encoding-error + (catch 'decoding-error (lambda () (substitute* file (("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)" From 81ca29a6d6ac3be4f35f0e1148eec9e8bb39bbb9 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 3 Aug 2017 18:00:45 -0400 Subject: [PATCH 0725/1227] gnu: gnupg@1.4: Update to 1.4.22 [fixes CVE-2017-7526]. * gnu/packages/gnupg.scm (gnupg-1): Update to 1.4.22. --- gnu/packages/gnupg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 5b46257948..a9d8679a29 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -355,14 +355,14 @@ libskba (working with X.509 certificates and CMS data).") (define-public gnupg-1 (package (inherit gnupg) - (version "1.4.21") + (version "1.4.22") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "0xi2mshq8f6zbarb5f61c9w2qzwrdbjm4q8fqsrwlzc51h8a6ivb")))) + "1d1hz4szh1kvwhsw7w2zxa6q5ndrk3qy6hj289l1b8k3xi5s554m")))) (native-inputs '()) (inputs `(("zlib" ,zlib) From c9f4f56b24801718d89c2520bec08867516e1371 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 3 Aug 2017 23:02:02 +0200 Subject: [PATCH 0726/1227] gnu: git: Enable tests. * gnu/packages/version-control.scm (git)[arguments]: Remove #:tests?. Add 'patch-tests' phase. --- gnu/packages/version-control.scm | 33 +++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 9274a93f6a..08a6f3aae8 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2017 Vasile Dumitrascu ;;; Copyright © 2017 Clément Lassieur ;;; Copyright © 2017 André +;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -176,7 +177,6 @@ as well as the classic centralized workflow.") ;; nars; see . "NO_INSTALL_HARDLINKS=indeed") #:test-target "test" - #:tests? #f ; FIXME: Many tests are failing ;; The explicit --with-tcltk forces the build system to hardcode the ;; absolute file name to 'wish'. @@ -203,6 +203,37 @@ as well as the classic centralized workflow.") ;; Add the "PM.stamp" to avoid "no rule to make target". (call-with-output-file "perl/PM.stamp" (const #t)) #t)) + (add-before 'check 'patch-tests + (lambda _ + ;; These files contain some funny bytes that Guile is unable + ;; to decode for shebang patching. Just delete them. + (for-each delete-file '("t/t4201-shortlog.sh" + "t/t7813-grep-icase-iso.sh")) + ;; Many tests contain inline shell scripts (hooks etc). + (substitute* (find-files "t" "\\.sh$") + (("#!/bin/sh") (string-append "#!" (which "sh")))) + ;; Un-do shebang patching here to prevent checksum mismatch. + (substitute* '("t/t4034/perl/pre" "t/t4034/perl/post") + (("^#!.*/bin/perl") "#!/usr/bin/perl")) + (substitute* "t/t5003-archive-zip.sh" + (("cp /bin/sh") (string-append "cp " (which "sh")))) + (substitute* "t/t6030-bisect-porcelain.sh" + (("\"/bin/sh\"") (string-append "\"" (which "sh") "\""))) + ;; FIXME: This test runs `git commit` with a bogus EDITOR + ;; and empty commit message, but does not fail the way it's + ;; expected to. The test passes when invoked interactively. + (substitute* "t/t7508-status.sh" + (("\tcommit_template_commented") "\ttrue")) + ;; More checksum mismatches due to odd shebangs. + (substitute* "t/t9100-git-svn-basic.sh" + (("\"#!/gnu.*/bin/sh") "\"#!/bin/sh")) + (substitute* "t/t9300-fast-import.sh" + (("\t#!/gnu.*/bin/sh") "\t#!/bin/sh") + (("'#!/gnu.*/bin/sh") "'#!/bin/sh")) + ;; FIXME: Some hooks fail with "basename: command not found". + ;; See 't/trash directory.t9164.../svn-hook.log'. + (delete-file "t/t9164-git-svn-dcommit-concurrent.sh") + #t)) (add-after 'install 'install-shell-completion (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) From c89091459f24dee4ba4959d65e38589efc1d8d9e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 4 Aug 2017 00:47:07 +0200 Subject: [PATCH 0727/1227] gnu: freerdp: Update to 2.0.0-rc0 [security fixes]. Fixes CVE-2017-{2834,2835,2836,2837,2838,2839}. Reported by Leo Famulari in . * gnu/packages/rdesktop.scm (freerdp): Update to 2.0.0-rc0. [source]: Use tarball release. Adjust file-name. [arguments]: Remove #:phases. --- gnu/packages/rdesktop.scm | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm index 3eb82f22f3..7946cde790 100644 --- a/gnu/packages/rdesktop.scm +++ b/gnu/packages/rdesktop.scm @@ -72,15 +72,14 @@ to remotely control a user's Windows desktop.") (define-public freerdp (package (name "freerdp") - (version "1.2.0-beta1+android9") + (version "2.0.0-rc0") (source (origin - (method git-fetch) - (uri (git-reference - (url "git://github.com/FreeRDP/FreeRDP.git") - (commit version))) - (file-name (git-file-name name version)) + (method url-fetch) + (uri (string-append "https://github.com/FreeRDP/FreeRDP/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "1m0lzrr7hkxfvc5f9p8snimv0rmin2463zhg25mv36wig8g5k7l3")))) + (base32 "0r36zwhl7fhmdng5pvl2a106gqbcqq184g2i2klz6ilna8pxjcml")))) (build-system cmake-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -111,15 +110,6 @@ to remotely control a user's Windows desktop.") '("-DCMAKE_INSTALL_LIBDIR=lib" "-DWITH_PULSE=ON" "-DWITH_CUPS=ON") - #:phases - (modify-phases %standard-phases - (add-before 'configure 'patch-cmakelists - (lambda _ - ;; CMake would return an error on REMOVE_DUPLICATES because this - ;; list is empty. - (substitute* "channels/client/CMakeLists.txt" - (("list\\(REMOVE_DUPLICATES CHANNEL_STATIC_CLIENT_ENTRIES\\)") - ""))))) #:tests? #f)) ; no 'test' target (home-page "https://www.freerdp.com") (synopsis "Remote Desktop Protocol implementation") From 20f8d1dd78c67872a670bb98cf8e76cef74baa64 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 3 Aug 2017 21:55:20 +0200 Subject: [PATCH 0728/1227] gnu: sshfs-fuse: Update to 2.10. * gnu/packages/linux.scm (sshfs-fuse): Update to 2.10. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a189458ada..a7d24da7a1 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1745,7 +1745,7 @@ UnionFS-FUSE additionally supports copy-on-write.") (define-public sshfs-fuse (package (name "sshfs-fuse") - (version "2.9") + (version "2.10") (source (origin (method url-fetch) (uri (string-append "https://github.com/libfuse/sshfs/releases/" @@ -1753,7 +1753,7 @@ UnionFS-FUSE additionally supports copy-on-write.") ".tar.gz")) (sha256 (base32 - "1pp5wsl1jx11apkv2fpp559miifqhi8ka400npy5awp9ghlf3la6")))) + "00fir2iykdx11g8nv5gijg0zjrp2g3ldypnv0yi6lq3h5pg5v13h")))) (build-system gnu-build-system) (inputs `(("fuse" ,fuse) From 0f08917df3f35ba5b54361c4b27255304102ced4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 3 Aug 2017 22:14:54 +0200 Subject: [PATCH 0729/1227] =?UTF-8?q?gnu:=20zerofree:=20Use=20=E2=80=98mod?= =?UTF-8?q?ify-phases=E2=80=99=20syntax.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/linux.scm (zerofree)[arguments]: Use ‘modify-phases’. --- gnu/packages/linux.scm | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a7d24da7a1..76f97f7e8a 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -833,19 +833,21 @@ ext3 or ext4 partition.") "1xncw3dn2cp922ly42m96p6fh7jv8ysg6bwqbk5xvw701f3dmkrs")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) - (mkdir-p bin) - (copy-file "zerofree" - (string-append bin "/zerofree")) - (chmod (string-append bin "/zerofree") - #o555) - #t)) - (alist-delete 'configure %standard-phases)) - #:tests? #f)) ;no tests + '(#:phases + (modify-phases %standard-phases + (delete 'configure) ; no configure script + (replace 'install + ;; The Makefile lacks an ‘install’ target. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (mkdir-p bin) + (copy-file "zerofree" + (string-append bin "/zerofree")) + (chmod (string-append bin "/zerofree") + #o555) + #t)))) + #:tests? #f)) ; no tests (inputs `(("libext2fs" ,e2fsprogs))) (synopsis "Zero non-allocated regions in ext2/ext3/ext4 file systems") (description From 7a068459ba9f1dd6f3dee12e39124a0c8b603ced Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 3 Aug 2017 22:22:43 +0200 Subject: [PATCH 0730/1227] =?UTF-8?q?gnu:=20zerofree:=20Use=20=E2=80=98ins?= =?UTF-8?q?tall-file=E2=80=99.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/linux.scm (zerofree)[arguments]: Simplify install phase, using ‘install-file’. --- gnu/packages/linux.scm | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 76f97f7e8a..481037066b 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -841,11 +841,8 @@ ext3 or ext4 partition.") (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) - (mkdir-p bin) - (copy-file "zerofree" - (string-append bin "/zerofree")) - (chmod (string-append bin "/zerofree") - #o555) + (chmod "zerofree" #o555) + (install-file "zerofree" bin) #t)))) #:tests? #f)) ; no tests (inputs `(("libext2fs" ,e2fsprogs))) From 4de4a1cfccb981757765202a0fd2db4bf7479822 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 3 Aug 2017 22:26:36 +0200 Subject: [PATCH 0731/1227] gnu: zerofree: Expand description. * gnu/packages/linux.scm (zerofree)[description]: Expand. --- gnu/packages/linux.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 481037066b..843ee6dc45 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -848,9 +848,10 @@ ext3 or ext4 partition.") (inputs `(("libext2fs" ,e2fsprogs))) (synopsis "Zero non-allocated regions in ext2/ext3/ext4 file systems") (description - "The zerofree command scans the free blocks in an ext2 file system and -fills any non-zero blocks with zeroes. This is a useful way to make disk -images more compressible.") + "Zerofree finds the unallocated blocks with non-zero value content in an +ext2, ext3, or ext4 file system and fills them with zeroes (or another value). +This is a simple way to make disk images more compressible. +Zerofree requires the file system to be unmounted or mounted read-only.") (license license:gpl2))) (define-public strace From 30ac4cc7e6a1819d4d56c02e695020498d7653d3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 3 Aug 2017 22:27:21 +0200 Subject: [PATCH 0732/1227] gnu: zerofree: Update to 1.1.0. * gnu/packages/linux.scm (zerofree): Update to 1.1.0. [home-page, source]: Update from old, inaccessible location. --- gnu/packages/linux.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 843ee6dc45..a103fd891a 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -822,15 +822,15 @@ ext3 or ext4 partition.") (define-public zerofree (package (name "zerofree") - (version "1.0.3") - (home-page "http://intgat.tigress.co.uk/rmy/uml/") + (version "1.1.0") + (home-page "https://frippery.org/uml/") (source (origin (method url-fetch) (uri (string-append home-page name "-" version ".tgz")) (sha256 (base32 - "1xncw3dn2cp922ly42m96p6fh7jv8ysg6bwqbk5xvw701f3dmkrs")))) + "059g29x5r1xj6wcj4xj85l8w6qrxyl86yqbybjqqz6nxz4falxzf")))) (build-system gnu-build-system) (arguments '(#:phases From 0a3ecfd29ccbac7f30e322d94854a526cc094883 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 01:15:42 +0200 Subject: [PATCH 0733/1227] gnu: thefuck: Update to 3.19. * gnu/packages/admin.scm (thefuck): Update to 3.19. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 9729a30fc7..45f743199a 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1718,7 +1718,7 @@ throughput (in the same interval).") (define-public thefuck (package (name "thefuck") - (version "3.18") + (version "3.19") (source (origin (method url-fetch) (uri (string-append "https://github.com/nvbn/thefuck/archive/" @@ -1726,7 +1726,7 @@ throughput (in the same interval).") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1xsvkqh89rgxq5w03mnlcfkn9y39nfwhb2pjabjspcc2mi2mq5y6")) + "191zbvkyc02h0wwd46xwj4zzg7jhlr8xv0ji6knqkgjnk0nvqq01")) (patches (search-patches "thefuck-test-environ.patch")))) (build-system python-build-system) (arguments From b55d15e795f55c521e3a3c22cc98138b47030e4c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 01:27:14 +0200 Subject: [PATCH 0734/1227] gnu: cmark: Update to 0.28.0. * gnu/packages/markup.scm (cmark): Update to 0.28.0. --- gnu/packages/markup.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm index 4afe8c3c0e..121e6cdbf4 100644 --- a/gnu/packages/markup.scm +++ b/gnu/packages/markup.scm @@ -105,7 +105,7 @@ convert it to structurally valid XHTML (or HTML).") (define-public cmark (package (name "cmark") - (version "0.27.1") + (version "0.28.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/jgm/cmark/archive/" @@ -113,7 +113,7 @@ convert it to structurally valid XHTML (or HTML).") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1da62ispca9aal2a36gaj87175rv5013pl7x740vk32y6lclr6v6")))) + "03pypf2mcacfa7lrwz66lh5hydsycc33arp1nx1lljbq98gikkv8")))) (build-system cmake-build-system) (arguments '(#:test-target "test")) From 9a7fd375a2caa6b0c7297ee1b9bc5c8c3fd0e31b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 02:06:39 +0200 Subject: [PATCH 0735/1227] gnu: xonsh: Update to 0.5.12. * gnu/packages/shells.scm (xonsh): Update to 0.5.12. --- gnu/packages/shells.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 8d2a957eae..4603fd49b3 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -366,14 +366,14 @@ ksh, and tcsh.") (define-public xonsh (package (name "xonsh") - (version "0.5.9") + (version "0.5.12") (source (origin (method url-fetch) (uri (pypi-uri "xonsh" version)) (sha256 (base32 - "09s5k7fh4p0vkq0fha4ikwqlqsyv84vmlbqn8ggn0ymd47ajv38z")) + "1yz595hx5bni524m73cx8a08vcr6vfksfci14nx2ylz53igzva2c")) (modules '((guix build utils))) (snippet `(begin From 19dd5097d936aadf2a4da266c377ed8a4fb381c8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 02:11:37 +0200 Subject: [PATCH 0736/1227] gnu: certbot, python-acme: Update to 0.17.0. * gnu/packages/tls.scm (certbot, python-acme, python2-acme): Update to 0.17.0. --- gnu/packages/tls.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index b39e06c8d9..6d71a9b809 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -502,13 +502,13 @@ netcat implementation that supports TLS.") (package (name "python-acme") ;; Remember to update the hash of certbot when updating python-acme. - (version "0.16.0") + (version "0.17.0") (source (origin (method url-fetch) (uri (pypi-uri "acme" version)) (sha256 (base32 - "1kg9bnwywsr18hgvqyhxqqi90l2qa7449f41q3fdq2y59h9nk2sk")))) + "0vmnv7qhdhl9qhq03v6zrcj1lsmpmpjb94s0xsc7piwqxfmf9jrw")))) (build-system python-build-system) (arguments `(#:phases @@ -559,7 +559,7 @@ netcat implementation that supports TLS.") (uri (pypi-uri name version)) (sha256 (base32 - "11p1vsps5rbpha3k5jnmf9i6rcp6299h9b34wdh21cq6dgyh2n3r")))) + "173619jkq4bg88f6i837z3pcjkrfabrvv8vrpyx18k9i7xnb5xa3")))) (build-system python-build-system) (arguments `(,@(substitute-keyword-arguments (package-arguments python-acme) From f58be417610e65f27b90452b78255f8d88ab1b4f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 03:46:49 +0200 Subject: [PATCH 0737/1227] gnu: fabric: Update to 1.13.2. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/admin.scm (fabric): Update to 1.13.2. Remove outdated comments. [source]: Remove ‘patches’. * gnu/packages/patches/fabric-tests.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/admin.scm | 18 ++++++------------ gnu/packages/patches/fabric-tests.patch | 15 --------------- 3 files changed, 6 insertions(+), 28 deletions(-) delete mode 100644 gnu/packages/patches/fabric-tests.patch diff --git a/gnu/local.mk b/gnu/local.mk index f4fef78f31..0491de6584 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -586,7 +586,6 @@ dist_patch_DATA = \ %D%/packages/patches/evilwm-lost-focus-bug.patch \ %D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch \ %D%/packages/patches/exim-CVE-2017-1000369.patch \ - %D%/packages/patches/fabric-tests.patch \ %D%/packages/patches/fastcap-mulGlobal.patch \ %D%/packages/patches/fastcap-mulSetup.patch \ %D%/packages/patches/fasthenry-spAllocate.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 45f743199a..c4aa108f89 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2105,28 +2105,22 @@ Intel DRM Driver.") (define-public fabric (package (name "fabric") - (version "1.13.1") + (version "1.13.2") (source (origin (method url-fetch) (uri (pypi-uri "Fabric" version)) (sha256 (base32 - "1z17hw0yiqp1blq217zxkg2jzkv8qd79saqhscgsw14mwlcqpwd0")) - (patches (search-patches "fabric-tests.patch")))) + "0k944dxr41whw7ib6380q9x15wyskx7fqni656icdn8rzshn9bwq")))) (build-system python-build-system) (arguments - `(#:python ,python-2)) ;Python 2 only + `(#:python ,python-2)) ; Python 2 only (native-inputs - `(("python2-fudge" ,python2-fudge) ; Requires < 1.0 - ("python2-jinja2" ,python2-jinja2) ; Requires < 3.0 - ("python2-nose" ,python2-nose))) ; Requires < 2.0 + `(("python2-fudge" ,python2-fudge) + ("python2-jinja2" ,python2-jinja2) + ("python2-nose" ,python2-nose))) (propagated-inputs - ;; Required upgrading python-paramiko 1.17.4 to fix an incompatibility - ;; between python-paramiko and newer python-pycrypto. Without this, the - ;; `fab` command fails with "ValueError: CTR mode needs counter - ;; parameter, not IV". See: - ;; https://github.com/paramiko/paramiko/pull/714#issuecomment-281191548. `(("python2-paramiko" ,python2-paramiko))) (home-page "http://fabfile.org") (synopsis "Simple Pythonic remote execution and deployment tool") diff --git a/gnu/packages/patches/fabric-tests.patch b/gnu/packages/patches/fabric-tests.patch deleted file mode 100644 index 4a0ca9f8f1..0000000000 --- a/gnu/packages/patches/fabric-tests.patch +++ /dev/null @@ -1,15 +0,0 @@ -The `fab` excecutable doesn't exist during the test phase as it is created -dynamically during installation. Refer to the equivalent Python module -directly. - ---- a/tests/test_utils.py -+++ b/tests/test_utils.py -@@ -93,7 +93,7 @@ - # perform when they are allowed to bubble all the way to the top. So, we - # invoke a subprocess and look at its stderr instead. - with quiet(): -- result = local("fab -f tests/support/aborts.py kaboom", capture=True) -+ result = local("python -m fabric -f tests/support/aborts.py kaboom", capture=True) - # When error in #1318 is present, this has an extra "It burns!" at end of - # stderr string. - eq_(result.stderr, "Fatal error: It burns!\n\nAborting.") \ No newline at end of file From 3b4018d6f212b19ab06a759118a025dfc8461f3a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 04:20:04 +0200 Subject: [PATCH 0738/1227] gnu: sshoot: Update to 1.2.6. * gnu/packages/vpn.scm (sshoot): Update to 1.2.6. [home-page]: Update to new project home. --- gnu/packages/vpn.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index aec8c1807d..61ebf0d5fa 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -239,14 +239,14 @@ DNS domain name queries.") (define-public sshoot (package (name "sshoot") - (version "1.2.5") + (version "1.2.6") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "0a92lk8790dpp9j64vb6p4sazax0x3nby01lnfll7mxs1hx6n27q")))) + "1ccgh0hjyxrwkgy3hnxz3hgbjbs0lmfs25d5l5jam0xbpcpj63h0")))) (build-system python-build-system) (arguments '(#:phases @@ -265,7 +265,7 @@ DNS domain name queries.") `(("python-fixtures" ,python-fixtures) ("python-pbr" ,python-pbr) ("python-testtools" ,python-testtools))) - (home-page "https://bitbucket.org/ack/sshoot") + (home-page "https://github.com/albertodonato/sshoot") (synopsis "sshuttle VPN session manager") (description "sshoot provides a command-line interface to manage multiple @command{sshuttle} virtual private networks. It supports flexible profiles From 54360c917ee09a15c90d617ea164c40d9f6cb5a9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 04:30:11 +0200 Subject: [PATCH 0739/1227] gnu: diffoscope: Use HTTPS. * gnu/packages/package-management.scm (diffoscope)[home-page]: Use HTTPS. --- gnu/packages/package-management.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index d9ba5f6ce1..1f65e21323 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -523,7 +523,7 @@ transactions from C or Python.") ;; Below are modules used for tests. ("python-pytest" ,python-pytest) ("python-chardet" ,python-chardet))) - (home-page "http://diffoscope.org/") + (home-page "https://diffoscope.org/") (synopsis "Compare files, archives, and directories in depth") (description "Diffoscope tries to get to the bottom of what makes files or directories From e9f6a935fbff9cfc1e5d8045aebe7230dbb5dbdf Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 04:33:28 +0200 Subject: [PATCH 0740/1227] gnu: python-lz4: Update to 0.10.1. * gnu/packages/compression.scm (python-lz4): Update to 0.10.1. [native-inputs]: Add python-setuptools-scm. --- gnu/packages/compression.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 92636de7fe..d2de0d3b8b 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -742,17 +742,18 @@ time for compression ratio.") (define-public python-lz4 (package (name "python-lz4") - (version "0.8.2") + (version "0.10.1") (source (origin (method url-fetch) (uri (pypi-uri "lz4" version)) (sha256 (base32 - "1irad4sq4hdr30fr53smvv3zzk4rddcf9b4jx19w8s9xsxhr1x3b")))) + "0ghv1xbaq693kgww1x9c22bplz479ls9szjsaa4ig778ls834hm0")))) (build-system python-build-system) (native-inputs - `(("python-nose" ,python-nose))) + `(("python-nose" ,python-nose) + ("python-setuptools-scm" ,python-setuptools-scm))) (home-page "https://github.com/python-lz4/python-lz4") (synopsis "LZ4 Bindings for Python") (description From b316caaa9cda8bf2a8b20d5ba87b5d306f3b39bd Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 4 Aug 2017 04:58:19 +0200 Subject: [PATCH 0741/1227] gnu: python-lz4: Fix typo in synopsis. * gnu/packages/compression.scm (python-lz4)[synopsis]: Fix typo. --- gnu/packages/compression.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index d2de0d3b8b..a732ca26de 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -755,7 +755,7 @@ time for compression ratio.") `(("python-nose" ,python-nose) ("python-setuptools-scm" ,python-setuptools-scm))) (home-page "https://github.com/python-lz4/python-lz4") - (synopsis "LZ4 Bindings for Python") + (synopsis "LZ4 bindings for Python") (description "This package provides python bindings for the lz4 compression library by Yann Collet. The project contains bindings for the LZ4 block format and From 88c8f247e594239807aafe80d5e8b084d07e32f6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 2 Aug 2017 22:49:30 +0200 Subject: [PATCH 0742/1227] build: Add minify build system. * guix/build-system/minify.scm: New file. * guix/build/minify-build-system: New file. * Makefile.am (MODULES): Add new files. * doc/guix.texi (Build Systems): Document minify-build-system. --- Makefile.am | 2 + doc/guix.texi | 15 ++++ guix/build-system/minify.scm | 127 +++++++++++++++++++++++++++++ guix/build/minify-build-system.scm | 73 +++++++++++++++++ 4 files changed, 217 insertions(+) create mode 100644 guix/build-system/minify.scm create mode 100644 guix/build/minify-build-system.scm diff --git a/Makefile.am b/Makefile.am index 0a7e375c29..91a9113d22 100644 --- a/Makefile.am +++ b/Makefile.am @@ -79,6 +79,7 @@ MODULES = \ guix/build-system/dub.scm \ guix/build-system/emacs.scm \ guix/build-system/font.scm \ + guix/build-system/minify.scm \ guix/build-system/asdf.scm \ guix/build-system/glib-or-gtk.scm \ guix/build-system/gnu.scm \ @@ -105,6 +106,7 @@ MODULES = \ guix/build/cmake-build-system.scm \ guix/build/dub-build-system.scm \ guix/build/emacs-build-system.scm \ + guix/build/minify-build-system.scm \ guix/build/font-build-system.scm \ guix/build/asdf-build-system.scm \ guix/build/git.scm \ diff --git a/doc/guix.texi b/doc/guix.texi index 2bb820b46c..88bf0bb621 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3576,6 +3576,21 @@ specified with the @code{#:glib} parameter. Both phases are executed after the @code{install} phase. @end defvr +@defvr {Scheme Variable} minify-build-system +This variable is exported by @code{(guix build-system minify)}. It +implements a minification procedure for simple JavaScript packages. + +It adds @code{uglify-js} to the set of inputs and uses it to compress +all JavaScript files in the @file{src} directory. A different minifier +package can be specified with the @code{#:uglify-js} parameter, but it +is expected that the package writes the minified code to the standard +output. + +When the input JavaScript files are not all located in the @file{src} +directory, the parameter @code{#:javascript-files} can be used to +specify a list of file names to feed to the minifier. +@end defvr + @defvr {Scheme Variable} ocaml-build-system This variable is exported by @code{(guix build-system ocaml)}. It implements a build procedure for @uref{https://ocaml.org, OCaml} packages, which consists diff --git a/guix/build-system/minify.scm b/guix/build-system/minify.scm new file mode 100644 index 0000000000..af90a32f59 --- /dev/null +++ b/guix/build-system/minify.scm @@ -0,0 +1,127 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Ricardo Wurmus +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (guix build-system minify) + #:use-module (guix store) + #:use-module (guix utils) + #:use-module (guix packages) + #:use-module (guix derivations) + #:use-module (guix search-paths) + #:use-module (guix build-system) + #:use-module (guix build-system gnu) + #:use-module (ice-9 match) + #:use-module (srfi srfi-26) + #:export (%minify-build-system-modules + minify-build + minify-build-system)) + +;; Commentary: +;; +;; Standard minification procedure for JavaScript files. +;; +;; Code: + +(define %minify-build-system-modules + ;; Build-side modules imported by default. + `((guix build minify-build-system) + (ice-9 popen) + ,@%gnu-build-system-modules)) + +(define (default-uglify-js) + "Return the default package to minify JavaScript source files." + ;; Lazily resolve the binding to avoid a circular dependency. + (let ((lisp-mod (resolve-interface '(gnu packages lisp)))) + (module-ref lisp-mod 'uglify-js))) + +(define* (lower name + #:key source inputs native-inputs outputs system + (uglify-js (default-uglify-js)) + #:allow-other-keys + #:rest arguments) + "Return a bag for NAME." + (define private-keywords + '(#:source #:target #:inputs #:native-inputs)) + + (bag + (name name) + (system system) + (host-inputs `(,@(if source + `(("source" ,source)) + '()) + ,@inputs + ,@(standard-packages))) + (build-inputs `(("uglify-js" ,uglify-js) + ,@native-inputs)) + (outputs outputs) + (build minify-build) + (arguments (strip-keyword-arguments private-keywords arguments)))) + +(define* (minify-build store name inputs + #:key + (javascript-files #f) + (phases '(@ (guix build minify-build-system) + %standard-phases)) + (outputs '("out")) + (system (%current-system)) + search-paths + (guile #f) + (imported-modules %minify-build-system-modules) + (modules '((guix build minify-build-system) + (guix build utils)))) + "Build SOURCE with INPUTS." + (define builder + `(begin + (use-modules ,@modules) + (minify-build #:name ,name + #:source ,(match (assoc-ref inputs "source") + (((? derivation? source)) + (derivation->output-path source)) + ((source) + source) + (source + source)) + #:javascript-files ,javascript-files + #:phases ,phases + #:outputs %outputs + #:search-paths ',(map search-path-specification->sexp + search-paths) + #:inputs %build-inputs))) + + (define guile-for-build + (match guile + ((? package?) + (package-derivation store guile system #:graft? #f)) + (#f ; the default + (let* ((distro (resolve-interface '(gnu packages commencement))) + (guile (module-ref distro 'guile-final))) + (package-derivation store guile system #:graft? #f))))) + + (build-expression->derivation store name builder + #:inputs inputs + #:system system + #:modules imported-modules + #:outputs outputs + #:guile-for-build guile-for-build)) + +(define minify-build-system + (build-system + (name 'minify) + (description "The trivial JavaScript minification build system") + (lower lower))) + +;;; minify.scm ends here diff --git a/guix/build/minify-build-system.scm b/guix/build/minify-build-system.scm new file mode 100644 index 0000000000..3580deda07 --- /dev/null +++ b/guix/build/minify-build-system.scm @@ -0,0 +1,73 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Ricardo Wurmus +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (guix build minify-build-system) + #:use-module ((guix build gnu-build-system) #:prefix gnu:) + #:use-module ((guix build minify-build-system) #:prefix minify:) + #:use-module (guix build utils) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-26) + #:use-module (ice-9 popen) + #:export (%standard-phases + minify-build + minify)) + +;; Commentary: +;; +;; Builder-side code of the standard minification procedure for JavaScript +;; files. +;; +;; Code: + +(define* (minify file #:key target (directory "")) + (format #t "minifying ~a\n" file) + (let* ((base (basename file ".js")) + (installed (or target (string-append directory base ".min.js"))) + (minified (open-pipe* OPEN_READ "uglify-js" file))) + (call-with-output-file installed + (cut dump-port minified <>)) + #t)) + +(define* (build #:key javascript-files + #:allow-other-keys) + (let ((files (or javascript-files + (find-files "src" "\\.js$")))) + (mkdir-p "guix/build") + (every (cut minify <> #:directory "guix/build/") files))) + +(define* (install #:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (js (string-append out "/share/javascript/"))) + (mkdir-p js) + (for-each (cut install-file <> js) + (find-files "guix/build" "\\.min\\.js$"))) + #t) + +(define %standard-phases + (modify-phases gnu:%standard-phases + (delete 'configure) + (replace 'build build) + (delete 'check) + (replace 'install install))) + +(define* (minify-build #:key inputs (phases %standard-phases) + #:allow-other-keys #:rest args) + "Build the given JavaScript package, applying all of PHASES in order." + (apply gnu:gnu-build #:inputs inputs #:phases phases args)) + +;;; minify-build-system.scm ends here From ed69963b03d71928f8c926ed62e5d6f5e78d9b2a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 15:53:54 +0200 Subject: [PATCH 0743/1227] gnu: Add js-html5shiv. * gnu/packages/javascript.scm (js-html5shiv): New variable. --- gnu/packages/javascript.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 43bc0bbf6d..8364651918 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -134,3 +134,28 @@ be able to view it naturally and easily."))) script to enable responsive web designs in browsers that don't support CSS3 Media Queries.") (license license:expat))) + +(define-public js-html5shiv + (package + (name "js-html5shiv") + (version "3.7.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/aFarkas/html5shiv/" + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0inlbpxpqzdyi24lqagzf7l24zxg0y02xcpqs2h4npjscazzw7hg")))) + (build-system minify-build-system) + (home-page "https://github.com/aFarkas/html5shiv") + (synopsis "Enable HTML5 sectioning elements in legacy browsers") + (description "The HTML5 Shiv enables use of HTML5 sectioning elements in +legacy Internet Explorer and provides basic HTML5 styling for Internet +Explorer 6-9, Safari 4.x (and iPhone 3.x), and Firefox 3.x.") + ;; From the file "MIT and GPL2 licenses.md": + ;; + ;; This software is licensed under a dual license system (MIT or GPL + ;; version 2). This means you are free to choose with which of both + ;; licenses (MIT or GPL version 2) you want to use this library. + (license (list license:expat license:gpl2)))) From 68ffb6c586de4dfd4dd5c972d3481a4243ba8bde Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 15:54:16 +0200 Subject: [PATCH 0744/1227] gnu: Add js-json2. * gnu/packages/javascript.scm (js-json2): New variable. --- gnu/packages/javascript.scm | 49 ++++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 8364651918..a806cb0745 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -26,7 +26,9 @@ #:use-module (gnu packages lisp) #:use-module (guix packages) #:use-module (guix download) - #:use-module (guix build-system trivial)) + #:use-module (guix git-download) + #:use-module (guix build-system trivial) + #:use-module (guix build-system minify)) (define-public js-mathjax (package @@ -159,3 +161,48 @@ Explorer 6-9, Safari 4.x (and iPhone 3.x), and Firefox 3.x.") ;; version 2). This means you are free to choose with which of both ;; licenses (MIT or GPL version 2) you want to use this library. (license (list license:expat license:gpl2)))) + +(define-public js-json2 + (let ((commit "031b1d9e6971bd4c433ca85e216cc853f5a867bd") + (revision "1")) + (package + (name "js-json2") + (version (string-append "2016-10-28." revision "-" (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/douglascrockford/JSON-js.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1fvb6b2y5sd3sqdgcj683sdxcbxdii34q0ysc9wg0dq1sy81l11v")))) + (build-system minify-build-system) + (arguments + `(#:javascript-files '("json2.js" + "json_parse.js" + "json_parse_state.js" + "cycle.js"))) + (home-page "https://github.com/douglascrockford/JSON-js") + (synopsis "JSON encoders and decoders") + (description "The files in this collection implement JSON +encoders/decoders in JavaScript. + +@code{json2.js}: This file creates a JSON property in the global object, if +there isn't already one, setting its value to an object containing a stringify +method and a parse method. The @code{parse} method uses the @code{eval} +method to do the parsing, guarding it with several regular expressions to +defend against accidental code execution hazards. On current browsers, this +file does nothing, preferring the built-in JSON object. + +@code{json_parse.js}: This file contains an alternative JSON @code{parse} +function that uses recursive descent instead of @code{eval}. + +@code{json_parse_state.js}: This files contains an alternative JSON +@code{parse} function that uses a state machine instead of @code{eval}. + +@code{cycle.js}: This file contains two functions, @code{JSON.decycle} and +@code{JSON.retrocycle}, which make it possible to encode cyclical structures +and DAGs in JSON, and to then recover them. This is a capability that is not +provided by ES5. @code{JSONPath} is used to represent the links.") + (license license:public-domain)))) From 3f48403aafc3cd6e50c178fb15b6251a40969c07 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 15:54:33 +0200 Subject: [PATCH 0745/1227] gnu: Add js-strftime. * gnu/packages/javascript.scm (js-strftime): New variable. --- gnu/packages/javascript.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index a806cb0745..fdf5224746 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -206,3 +206,26 @@ function that uses recursive descent instead of @code{eval}. and DAGs in JSON, and to then recover them. This is a capability that is not provided by ES5. @code{JSONPath} is used to represent the links.") (license license:public-domain)))) + +(define-public js-strftime + (package + (name "js-strftime") + (version "0.10.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/samsonjs/strftime/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1iya43w7y26y2dp9l4d40bhjc4scb5a9mng5ng5c8hsqr82f1375")))) + (build-system minify-build-system) + (arguments + `(#:javascript-files '("strftime.js"))) + (home-page "https://github.com/samsonjs/strftime") + (synopsis "Implementation of strftime to JavaScript") + (description "This is an implementation of the @code{strftime} procedure +for JavaScript. It works in (at least) node.js and browsers. It supports +localization and timezones. Most standard specifiers from C are supported as +well as some other extensions from Ruby.") + (license license:expat))) From a6bbb2a0d864c68356baa7dc94b801cbb769a117 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 15:54:51 +0200 Subject: [PATCH 0746/1227] gnu: Add js-highlight. * gnu/packages/javascript.scm (js-highlight): New variable. --- gnu/packages/javascript.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index fdf5224746..533e7365ac 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -229,3 +229,26 @@ for JavaScript. It works in (at least) node.js and browsers. It supports localization and timezones. Most standard specifiers from C are supported as well as some other extensions from Ruby.") (license license:expat))) + +(define-public js-highlight + (package + (name "js-highlight") + (version "9.12.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/isagalaev/highlight.js/" + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jjn9mj7fwq4zpr6is438bscf03b3q8jkj0k5c3fc6pkmjnhw939")))) + (build-system minify-build-system) + (arguments + `(#:javascript-files '("src/highlight.js"))) + (home-page "https://github.com/isagalaev/highlight.js") + (synopsis "Syntax highlighting for JavaScript") + (description "Highlight.js is a syntax highlighter written in JavaScript. +It works in the browser as well as on the server. It works with pretty much +any markup, doesn’t depend on any framework and has automatic language +detection.") + (license license:bsd-3))) From c4abc94d2b3106e336573ec4644fb09e2b6c6368 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 15:55:05 +0200 Subject: [PATCH 0747/1227] gnu: Add js-datatables. * gnu/packages/javascript.scm (js-datatables): New variable. --- gnu/packages/javascript.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 533e7365ac..ff964aee94 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -252,3 +252,27 @@ It works in the browser as well as on the server. It works with pretty much any markup, doesn’t depend on any framework and has automatic language detection.") (license license:bsd-3))) + +(define-public js-datatables + (package + (name "js-datatables") + (version "1.10.15") + (source (origin + (method url-fetch) + (uri (string-append "https://datatables.net/releases/DataTables-" + version ".zip")) + (sha256 + (base32 + "1y9xqyqyz7x1ls3ska71pshl2hpiy3qnw1f7wygyslbhy4ssgf57")))) + (build-system minify-build-system) + (arguments + `(#:javascript-files '("media/js/dataTables.bootstrap.js" + "media/js/jquery.dataTables.js"))) + (native-inputs + `(("unzip" ,unzip))) + (home-page "https://datatables.net") + (synopsis "DataTables plug-in for jQuery") + (description "DataTables is a table enhancing plug-in for the jQuery +Javascript library, adding sorting, paging and filtering abilities to plain +HTML tables with minimal effort.") + (license license:expat))) From 4f65067bde7e886c42a9549eb0e16706b43f8af7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 15:55:22 +0200 Subject: [PATCH 0748/1227] gnu: Add js-selectize. * gnu/packages/javascript.scm (js-selectize): New variable. --- gnu/packages/javascript.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index ff964aee94..19021ac5a4 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -276,3 +276,24 @@ detection.") Javascript library, adding sorting, paging and filtering abilities to plain HTML tables with minimal effort.") (license license:expat))) + +(define-public js-selectize + (package + (name "js-selectize") + (version "0.12.4") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/selectize/selectize.js/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0756p49aaz34mw2dx8k1gxf210mngfrri25vkba0j7wihd2af8gn")))) + (build-system minify-build-system) + (arguments `(#:javascript-files '("src/selectize.js"))) + (home-page "http://selectize.github.io/selectize.js/") + (synopsis "Hybrid widget between a textbox and } +box. It's jQuery based and it has autocomplete and native-feeling keyboard +navigation; it is useful for tagging, contact lists, etc.") + (license license:asl2.0))) From 0b0aa76fa84b421e6c7c127984a24211439f6146 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 15:55:39 +0200 Subject: [PATCH 0749/1227] gnu: Add js-es5-shim. * gnu/packages/javascript.scm (js-es5-shim): New variable. --- gnu/packages/javascript.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 19021ac5a4..12f12bf8f1 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -297,3 +297,29 @@ HTML tables with minimal effort.") box. It's jQuery based and it has autocomplete and native-feeling keyboard navigation; it is useful for tagging, contact lists, etc.") (license license:asl2.0))) + +(define-public js-es5-shim + (package + (name "js-es5-shim") + (version "4.5.9") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/es-shims/es5-shim/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0yfndyijz0ykddzprpvfjb2453gzpn528klmwycwbqc1bqd3m1hl")))) + (build-system minify-build-system) + (arguments `(#:javascript-files + '("es5-sham.js" + "es5-shim.js"))) + (home-page "https://github.com/es-shims/es5-shim") + (synopsis "ECMAScript 5 compatibility shims for legacy JavaScript engines") + (description "@code{es5-shim.js} patches a JavaScript context to contain +all ECMAScript 5 methods that can be faithfully emulated with a legacy +JavaScript engine. @code{es5-sham.js} patches other ES5 methods as closely as +possible. Many of these shams are intended only to allow code to be written +to ES5 without causing run-time errors in older engines. In many cases, this +means that these shams cause many ES5 methods to silently fail.") + (license license:expat))) From a3cd23b6393e34a6b106ad273d1705adb7685bed Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 3 Aug 2017 16:04:24 +0200 Subject: [PATCH 0750/1227] gnu: Add r-shiny. * gnu/packages/web.scm (r-shiny): New variable. --- gnu/packages/web.scm | 104 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 972f1bdbce..86a7dc1868 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -73,6 +73,7 @@ #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gperf) #:use-module (gnu packages gtk) + #:use-module (gnu packages javascript) #:use-module (gnu packages image) #:use-module (gnu packages libidn) #:use-module (gnu packages libunistring) @@ -4748,3 +4749,106 @@ internetarchive python module for programatic access to archive.org.") (define-public python2-internetarchive (package-with-python2 (strip-python2-variant python-internetarchive))) + +(define-public r-shiny + (package + (name "r-shiny") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/rstudio/shiny/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0z2v2s4hd44mvzjn7r70549kdzkrrch9nxhp27r6x2cy6micizm3")))) + (build-system r-build-system) + (arguments + `(#:modules ((guix build r-build-system) + (guix build minify-build-system) + (guix build utils) + (ice-9 match)) + #:imported-modules (,@%r-build-system-modules + (guix build minify-build-system)) + #:phases + (modify-phases (@ (guix build r-build-system) %standard-phases) + (add-after 'unpack 'replace-bundled-minified-JavaScript + (lambda* (#:key inputs #:allow-other-keys) + (let ((replace-file (lambda (old new) + (format #t "replacing ~a with ~a\n" old new) + (delete-file old) + (symlink new old)))) + ;; NOTE: Files in ./inst/www/shared/datepicker/js/locales/ + ;; contain just data. They are not minified code, so we don't + ;; replace them. + (with-directory-excursion "inst/www/shared" + (replace-file "bootstrap/shim/respond.min.js" + (string-append (assoc-ref inputs "js-respond") + "/share/javascript/respond.min.js")) + (replace-file "bootstrap/shim/html5shiv.min.js" + (string-append (assoc-ref inputs "js-html5shiv") + "/share/javascript/html5shiv.min.js")) + (replace-file "json2-min.js" + (string-append (assoc-ref inputs "js-json2") + "/share/javascript/json2.min.js")) + (replace-file "strftime/strftime-min.js" + (string-append (assoc-ref inputs "js-strftime") + "/share/javascript/strftime.min.js")) + (replace-file "highlight/highlight.pack.js" + (string-append (assoc-ref inputs "js-highlight") + "/share/javascript/highlight.min.js")) + (replace-file "datatables/js/jquery.dataTables.min.js" + (string-append (assoc-ref inputs "js-datatables") + "/share/javascript/jquery.dataTables.min.js")) + (replace-file "selectize/js/selectize.min.js" + (string-append (assoc-ref inputs "js-selectize") + "/share/javascript/selectize.min.js")) + (replace-file "selectize/js/es5-shim.min.js" + (string-append (assoc-ref inputs "js-es5-shim") + "/share/javascript/es5-shim.min.js")) + (for-each (match-lambda + ((source . target) + (delete-file target) + (minify source #:target target))) + '(("jqueryui/jquery-ui.js" . + "jqueryui/jquery-ui.min.js") + ("showdown/src/showdown.js" . + "showdown/compressed/showdown.js") + ("datepicker/js/bootstrap-datepicker.js" . + "datepicker/js/bootstrap-datepicker.min.js") + ("ionrangeslider/js/ion.rangeSlider.js" . + "ionrangeslider/js/ion.rangeSlider.min.js") + ("bootstrap/js/bootstrap.js" . + "bootstrap/js/bootstrap.min.js") + ("shiny.js" . + "shiny.min.js") + ("jquery.js" . + "jquery.min.js"))))) + #t))))) + (propagated-inputs + `(("r-httpuv" ,r-httpuv) + ("r-mime" ,r-mime) + ("r-jsonlite" ,r-jsonlite) + ("r-xtable" ,r-xtable) + ("r-digest" ,r-digest) + ("r-htmltools" ,r-htmltools) + ("r-r6" ,r-r6) + ("r-sourcetools" ,r-sourcetools))) + (inputs + `(("js-datatables" ,js-datatables) + ("js-html5shiv" ,js-html5shiv) + ("js-json2" ,js-json2) + ("js-respond" ,js-respond) + ("js-selectize" ,js-selectize) + ("js-strftime" ,js-strftime) + ("js-highlight" ,js-highlight) + ("js-es5-shim" ,js-es5-shim))) + (home-page "http://shiny.rstudio.com") + (synopsis "Easy interactive web applications with R") + (description + "Makes it incredibly easy to build interactive web applications +with R. Automatic \"reactive\" binding between inputs and outputs and +extensive prebuilt widgets make it possible to build beautiful, +responsive, and powerful applications with minimal effort.") + (license l:artistic2.0))) From 8d6c845d68211005a873811f0aa2dbc369bddbb5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 4 Aug 2017 11:22:19 +0200 Subject: [PATCH 0751/1227] gnu: Add r-crosstalk. * gnu/packages/web.scm (r-crosstalk): New variable. --- gnu/packages/web.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 86a7dc1868..5459a3051d 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -4852,3 +4852,30 @@ with R. Automatic \"reactive\" binding between inputs and outputs and extensive prebuilt widgets make it possible to build beautiful, responsive, and powerful applications with minimal effort.") (license l:artistic2.0))) + +(define-public r-crosstalk + (package + (name "r-crosstalk") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "crosstalk" version)) + (sha256 + (base32 + "0lfa89vhrzi7a1rghmygcjr8gzddw35sinb3jx6g49mc9jias7mk")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-htmltools" ,r-htmltools) + ("r-jsonlite" ,r-jsonlite) + ("r-lazyeval" ,r-lazyeval) + ("r-r6" ,r-r6) + ("r-shiny" ,r-shiny))) + (home-page "https://rstudio.github.io/crosstalk/") + (synopsis "Inter-widget interactivity for HTML widgets") + (description + "This package provides building blocks for allowing HTML widgets to +communicate with each other, with Shiny or without (i.e. static @code{.html} +files). It currently supports linked brushing and filtering.") + (license l:expat))) From 1cec3462323717e063c98b6404e9c5c5ef037bdd Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Thu, 3 Aug 2017 20:14:56 +0200 Subject: [PATCH 0752/1227] gnu: php: Update to 7.1.8. * gnu/packages/patches/gd-CVE-2017-7890.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it * gnu/packages/php.scm (php): Update to 7.1.8. --- gnu/local.mk | 1 + gnu/packages/patches/gd-CVE-2017-7890.patch | 30 +++++++++++++++++++++ gnu/packages/php.scm | 17 +++++++++--- 3 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 gnu/packages/patches/gd-CVE-2017-7890.patch diff --git a/gnu/local.mk b/gnu/local.mk index 0491de6584..1bece24418 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -625,6 +625,7 @@ dist_patch_DATA = \ %D%/packages/patches/gcr-disable-failing-tests.patch \ %D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \ %D%/packages/patches/gdk-pixbuf-list-dir.patch \ + %D%/packages/patches/gd-CVE-2017-7890.patch \ %D%/packages/patches/gd-fix-gd2-read-test.patch \ %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-freetype-test-failure.patch \ diff --git a/gnu/packages/patches/gd-CVE-2017-7890.patch b/gnu/packages/patches/gd-CVE-2017-7890.patch new file mode 100644 index 0000000000..66034c5703 --- /dev/null +++ b/gnu/packages/patches/gd-CVE-2017-7890.patch @@ -0,0 +1,30 @@ +From 99ba5c353373ed198f54af66fe4e355ebb96e363 Mon Sep 17 00:00:00 2001 +From: LEPILLER Julien +Date: Thu, 3 Aug 2017 17:04:17 +0200 +Subject: [PATCH] Fix #399: Buffer over-read into uninitialized memory. + +The stack allocated color map buffers were not zeroed before usage, and +so undefined palette indexes could cause information leakage. + +This is CVE-2017-7890. +--- + src/gd_gif_in.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/gd_gif_in.c b/src/gd_gif_in.c +index 008d1ec..c195448 100644 +--- a/src/gd_gif_in.c ++++ b/src/gd_gif_in.c +@@ -216,6 +216,9 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGifCtx(gdIOCtxPtr fd) + + gdImagePtr im = 0; + ++ memset(ColorMap, 0, 3 * MAXCOLORMAPSIZE); ++ memset(localColorMap, 0, 3 * MAXCOLORMAPSIZE); ++ + if(!ReadOK(fd, buf, 6)) { + return 0; + } +-- +2.13.3 + diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index 7d569eef3e..d0afab0931 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -49,10 +49,21 @@ #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:prefix license:)) +(define gd-for-php + (package + (inherit gd) + (source (origin + (inherit (package-source gd)) + (patches + (append + (origin-patches (package-source gd)) + (search-patches "gd-CVE-2017-7890.patch"))))))) + + (define-public php (package (name "php") - (version "7.1.6") + (version "7.1.8") (home-page "https://secure.php.net/") (source (origin (method url-fetch) @@ -60,7 +71,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "0nr49gqhk4pv8kcdc60cl1mgwlinawpraq9ba15whzmb472lsn01")) + "1aramb6dm57pr2iz61id9vzfy7h5qkb6bf7dxhrwnjk0723qahw9")) (modules '((guix build utils))) (snippet '(with-directory-excursion "ext" @@ -282,7 +293,7 @@ ("curl" ,curl) ("cyrus-sasl" ,cyrus-sasl) ("freetype" ,freetype) - ("gd" ,gd) + ("gd" ,gd-for-php) ("gdbm" ,gdbm) ("glibc" ,glibc) ("gmp" ,gmp) From 90ea83ee95ad467fc4a49f4c42d0df94d2952330 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 5 Aug 2017 00:02:55 +0200 Subject: [PATCH 0753/1227] gnu: bluez: Work around test failure on ARM. This aims to skip the segfaulting test at . * gnu/packages/linux.scm (bluez)[arguments]: Add #:make-flags when (%current-system) is "armhf-linux". --- gnu/packages/linux.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 915b4a203b..0ee0a5acd0 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2975,7 +2975,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") "1sb4aflgyrl7apricjipa8wx95qm69yja0lmn2f19g560c3v1b2c")))) (build-system gnu-build-system) (arguments - '(#:configure-flags + `(#:configure-flags (let ((out (assoc-ref %outputs "out"))) (list "--sysconfdir=/etc" "--localstatedir=/var" @@ -3004,7 +3004,12 @@ Bluetooth audio output devices like headphones or loudspeakers.") (string-append out "/lib/udev/hid2hci --method")) (("/sbin/udevadm") (string-append (assoc-ref inputs "eudev") "/bin/udevadm"))) - #t)))))) + #t)))) + + ;; FIXME: Skip one test that segfaults on ARM. + ,@(if (string=? (%current-system) "armhf-linux") + '(#:make-flags '("XFAIL_TESTS=unit/test-gatt")) + '()))) (native-inputs `(("pkg-config" ,pkg-config) ("gettext" ,gettext-minimal))) From 240d3ceff78464a160d099adfb6463f4f17d6616 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 5 Aug 2017 00:12:17 +0200 Subject: [PATCH 0754/1227] gnu: python-argcomplete: Add dependency on the full Bash. Fixes a regression introduced in 704243e0c6ec5ac86e2f45aaa469717e60b89124. * gnu/packages/python.scm (python-argcomplete)[native-inputs]: Add BASH. --- gnu/packages/python.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index ee2743b028..f8300a1752 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -13500,7 +13500,8 @@ specs from your Flask-Restful projects.") (build-system python-build-system) (native-inputs `(("python-pexpect" ,python-pexpect) - ("tcsh" ,tcsh))) + ("tcsh" ,tcsh) + ("bash-full" ,bash))) ;full Bash for 'test_file_completion' (home-page "https://github.com/kislyuk/argcomplete") (synopsis "Shell tab completion for Python argparse") (description "argcomplete provides extensible command line tab completion From a56bf101c603aac3c7e2fc47bd8bd025f2ed44a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 5 Aug 2017 00:11:41 +0200 Subject: [PATCH 0755/1227] gnu: perl: Work around more "dotless @INC" build issues. * gnu/packages/web.scm (perl-www-curl)[arguments]: Add 'set-search-path' phase. * gnu/packages/bioinformatics.scm (ngs-sdk)[arguments]: Augment 'configure' phase to set PERL5LIB. * gnu/packages/image.scm (steghide)[arguments]: Add #:phases argument. --- gnu/packages/bioinformatics.scm | 4 ++++ gnu/packages/image.scm | 11 ++++++++++- gnu/packages/web.scm | 11 ++++++++++- 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 6bbbe33784..2b4b400c19 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4680,6 +4680,10 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") 'configure (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) + ;; Allow 'konfigure.perl' to find 'package.prl'. + (setenv "PERL5LIB" + (string-append ".:" (getenv "PERL5LIB"))) + ;; The 'configure' script doesn't recognize things like ;; '--enable-fast-install'. (zero? (system* "./configure" diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 1b230b5700..5bc9a77174 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -986,7 +986,16 @@ differences in file encoding, image quality, and other small variations.") ("libjpeg" ,libjpeg) ("zlib" ,zlib))) (arguments - `(#:make-flags '("CXXFLAGS=-fpermissive"))) ;required for MHashPP.cc + `(#:make-flags '("CXXFLAGS=-fpermissive") ;required for MHashPP.cc + + #:phases (modify-phases %standard-phases + (add-before 'configure 'set-perl-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) "/tests:" + (getenv "PERL5LIB"))) + #t))))) (home-page "http://steghide.sourceforge.net") (synopsis "Image and audio steganography") (description diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 695b7a3b54..096d05c167 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3249,7 +3249,16 @@ RFC 6570.") "1fmp9aib1kaps9vhs4dwxn7b15kgnlz9f714bxvqsd1j1q8spzsj")))) (build-system perl-build-system) (arguments - '(#:tests? #f)) ;XXX: tests require network access + '(#:tests? #f ;XXX: tests require network access + + #:phases (modify-phases %standard-phases + (add-before 'configure 'set-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) ":" + (getenv "PERL5LIB"))) + #t))))) (native-inputs `(("perl-module-install" ,perl-module-install))) (inputs `(("curl" ,curl))) From 7656739771b0e07e467af709c730fee85bf65821 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 5 Aug 2017 01:57:25 -0400 Subject: [PATCH 0756/1227] Revert "daemon: Ensure proper alignment on the stack." This reverts commit ab4ccc8fcfaf2215d4b33b1376147e4c2c70426a. --- nix/libstore/build.cc | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index a93095dd1e..c6615865be 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -26,7 +26,6 @@ #include #include #include -#include #include #include @@ -2009,11 +2008,7 @@ void DerivationGoal::startBuilder() char stack[32 * 1024]; int flags = CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWIPC | CLONE_NEWUTS | SIGCHLD; if (!fixedOutput) flags |= CLONE_NEWNET; - - /* Ensure proper alignment on the stack. On aarch64, it has to be 16 - bytes. */ - pid = clone(childEntry, (char *)(((uintptr_t)stack + 16) & ~0xf), - flags, this); + pid = clone(childEntry, stack + sizeof(stack) - 8, flags, this); if (pid == -1) throw SysError("cloning builder process"); } else From 3d5d87a3ae4a3320bb909265ac4d2739e206dfdd Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 30 Jul 2017 10:23:08 +0200 Subject: [PATCH 0757/1227] gnu: Add cubicle. * gnu/packages/maths.scm (cubicle): New variable. --- gnu/packages/maths.scm | 43 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 00732a5756..e19c8edc82 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3197,3 +3197,46 @@ as equations, scalars, vectors, and matrices.") theories} (SMT) solver. It provides a C/C++ API.") (home-page "https://github.com/Z3Prover/z3") (license license:expat))) + +(define-public cubicle + (package + (name "cubicle") + (version "1.1.1") + (source (origin + (method url-fetch) + (uri (string-append "http://cubicle.lri.fr/cubicle-" + version ".tar.gz")) + (sha256 + (base32 + "1sny9c4fm14k014pk62ibpwbrjjirkx8xmhs9jg7q1hk7y7x3q2h")))) + (build-system gnu-build-system) + (native-inputs + `(("ocaml" ,ocaml) + ("which" ,which))) + (propagated-inputs + `(("z3" ,z3))) + (arguments + `(#:configure-flags (list "--with-z3") + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'configure 'configure-for-release + (lambda _ + (substitute* "Makefile.in" + (("SVNREV=") "#SVNREV=")))) + (add-before 'configure 'fix-/bin/sh + (lambda _ + (substitute* "configure" + (("/bin/sh") (which "sh"))))) + (add-before 'configure 'fix-smt-z3wrapper.ml + (lambda _ + (substitute* "Makefile.in" + (("\\\\n") ""))))))) + (home-page "http://cubicle.lri.fr/") + (synopsis "Model checker for array-based systems") + (description "Cubicle is an open source model checker for verifying safety +properties of array-based systems. This is a syntactically restricted class of +parametrized transition systems with states represented as arrays indexed by an +arbitrary number of processes. Cache coherence protocols and mutual exclusion +algorithms are typical examples of such systems.") + (license license:asl2.0))) From eedcfa704e650e203ecd8b4c448a5e69340cbfdf Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 5 Aug 2017 13:44:03 +0200 Subject: [PATCH 0758/1227] gnu: lftp: Update to 4.7.8. * gnu/packages/ftp.scm (lftp): Update to 4.7.8. --- gnu/packages/ftp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index 49e7214991..eb108491a4 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -46,7 +46,7 @@ (define-public lftp (package (name "lftp") - (version "4.7.5") + (version "4.7.8") (source (origin (method url-fetch) ;; See https://lftp.tech/get.html for mirrors. @@ -58,7 +58,7 @@ "ftp/lftp/lftp-" version ".tar.xz"))) (sha256 (base32 - "1n6h3y5jz1rxlx7ap46vykgm0q2rvzr7c5s5ry5l32z3lbmwbdak")))) + "19ijsmbb5589vg5ga355ys3075z6s2x2h0bdbga343hfqmnid2pi")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From 7f171fdaadb15bb1b313b25e9be3d1988b0f650f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 5 Aug 2017 14:07:12 +0200 Subject: [PATCH 0759/1227] gnu: git: Update to 2.14.0. * gnu/packages/version-control.scm (git): Update to 2.14.0. --- gnu/packages/version-control.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 08a6f3aae8..729746aed3 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -121,14 +121,14 @@ as well as the classic centralized workflow.") (define-public git (package (name "git") - (version "2.13.4") + (version "2.14.0") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "1nmg0n9l5ix876iqhcyhdnmiy7ihv0ybdijf1lssch6ja8m5j6ip")))) + "0xarcp0m7jbncic0g3ahz8l2d6b27h0g9ndgrhy9abkx61m6wgpr")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -141,7 +141,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "0ljxkfi7ski9bgpdb8xpikl1xgjjk7bdzmzzkbj93jybk6iajkv7")))))) + "0kc2n6b1lrbr0wc8lk3xnrljn4fgzgab82icv658gdvyl9l3qrbx")))))) (inputs `(("curl" ,curl) ("expat" ,expat) From e78e38a4bb341b33f91afa7a8efa421be2d74905 Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Thu, 3 Aug 2017 21:03:41 +0800 Subject: [PATCH 0760/1227] gnu: emacs-exwm: Update to 0.15. * gnu/packages/emacs.scm (emacs-exwm): Update to 0.15. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 917c511f32..9beb7ae62e 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -4631,7 +4631,7 @@ It should enable you to implement low-level X11 applications.") (define-public emacs-exwm (package (name "emacs-exwm") - (version "0.14") + (version "0.15") (synopsis "Emacs X window manager") (source (origin (method url-fetch) @@ -4639,7 +4639,7 @@ It should enable you to implement low-level X11 applications.") version ".tar")) (sha256 (base32 - "14hjjpbasm84p54fxy73fg7g1fdwqkvisdw8dwwgzkflmd647mkx")))) + "1y7nqry9y0a99bsdqkk9f554vczfw4sz6raadw3138835qy697jg")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-xelb" ,emacs-xelb))) @@ -4673,12 +4673,9 @@ It should enable you to implement low-level X11 applications.") TryExec=~@*~a~@ Type=Application~%" ,name ,synopsis exwm-executable))) ;; Add a shell wrapper to bin - ;; Set DISPLAY variable to work around - ;; https://github.com/ch11ng/exwm/issues/213 (with-output-to-file exwm-executable (lambda _ (format #t "#!~a ~@ - export DISPLAY=:0 ~@ ~a +SI:localuser:$USER ~@ exec ~a --exit-with-session ~a \"$@\" --eval '~s' ~%" (string-append (assoc-ref inputs "bash") "/bin/sh") From 91d94e28ec30d72e1e6a7d0ff8af49656c3f1d7e Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Fri, 4 Aug 2017 20:52:16 +0800 Subject: [PATCH 0761/1227] gnu: emacs-exwm-x: Do not set DISPLAY. * gnu/packages/emacs.scm (emacs-exwm-x): Do not set DISPLAY. The issue has been fixed upstream in exwm-0.15. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 3 --- 1 file changed, 3 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 9beb7ae62e..4aa713346f 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -4767,12 +4767,9 @@ other operations.") TryExec=~@*~a~@ Type=Application~%" ,name ,synopsis exwm-executable))) ;; Add a shell wrapper to bin - ;; Set DISPLAY variable to work around - ;; https://github.com/ch11ng/exwm/issues/213 (with-output-to-file exwm-executable (lambda _ (format #t "#!~a ~@ - export DISPLAY=:0 ~@ ~a +SI:localuser:$USER ~@ exec ~a --exit-with-session ~a \"$@\" --eval '~s' ~%" (string-append (assoc-ref inputs "bash") "/bin/sh") From 9833bcfc08ef009b9e8b4398baa481ef65c80ad7 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 21 Jul 2017 01:06:46 +0200 Subject: [PATCH 0762/1227] build: Allow mounting of entire disks. * gnu/build/file-systems.scm (disk-partitions): Also return entire drives. --- gnu/build/file-systems.scm | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index b6930497d6..203fbdfffb 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -373,15 +373,16 @@ not valid header was found." (define (disk-partitions) "Return the list of device names corresponding to valid disk partitions." - (define (last-character str) - (string-ref str (- (string-length str) 1))) - (define (partition? name major minor) - ;; Select device names that end in a digit, like libblkid's 'probe_all' - ;; function does. Checking for "/sys/dev/block/MAJOR:MINOR/partition" - ;; doesn't work for partitions coming from mapped devices. - (and (char-set-contains? char-set:digit (last-character name)) - (> major 2))) ;ignore RAM disks and floppy disks + ;; grub-mkrescue does some funny things for EFI support which + ;; makes it a lot more difficult than one would expect to support + ;; booting an ISO-9660 image from an USB flash drive. + ;; For example there's a buggy (too small) hidden partition in it + ;; which Linux mounts and then proceeds to fail while trying to + ;; fall off the edge. + ;; In any case, partition tables are supposed to be optional so + ;; here we allow checking entire disks for file systems, too. + (> major 2)) ;ignore RAM disks and floppy disks (call-with-input-file "/proc/partitions" (lambda (port) From 31ed845b7057b6f07450f15eaa877d5a1ae12ce1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 5 Aug 2017 22:36:10 +0300 Subject: [PATCH 0763/1227] daemon: On aarch64, use increments of 16 on the stack. * nix/libstore/build.cc (DerivationGoal::startBuilder): When on aarch64, when calling clone(), increment the stack by 16. --- nix/libstore/build.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index c6615865be..693fa70c8d 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -2008,7 +2008,11 @@ void DerivationGoal::startBuilder() char stack[32 * 1024]; int flags = CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWIPC | CLONE_NEWUTS | SIGCHLD; if (!fixedOutput) flags |= CLONE_NEWNET; - pid = clone(childEntry, stack + sizeof(stack) - 8, flags, this); +#ifdef __aarch64__ + pid = clone(childEntry, stack + sizeof(stack) - 16, flags, this); +#else + pid = clone(childEntry, stack + sizeof(stack) - 8, flags, this); +#endif if (pid == -1) throw SysError("cloning builder process"); } else From 6a4364335c967f841b53ed35c22f90445437e4b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 5 Aug 2017 23:08:44 +0200 Subject: [PATCH 0764/1227] doc: Suggest running guix-daemon with 'sudo -E'. Suggested by Martin H. . * doc/contributing.texi (Running Guix Before It Is Installed): Suggest 'sudo -E'. --- doc/contributing.texi | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 00edd47710..98971a9bbc 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -110,10 +110,13 @@ actually installing them. So that you can distinguish between your To that end, all the command-line tools can be used even if you have not run @code{make install}. To do that, prefix each command with @command{./pre-inst-env} (the @file{pre-inst-env} script lives in the -top build tree of Guix), as in: +top build tree of Guix), as in@footnote{The @option{-E} flag to +@command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set +such that @command{guix-daemon} and the tools it uses can find the Guile +modules they need.}: @example -$ sudo ./pre-inst-env guix-daemon --build-users-group=guixbuild +$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild $ ./pre-inst-env guix build hello @end example From 01a61d7040b1794f36547b107abce6e967d59f21 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 25 Jul 2017 15:04:57 -0400 Subject: [PATCH 0765/1227] gnu: libtasn1: Fix CVE-2017-10790. * gnu/packages/patches/libtasn1-CVE-2017-10790.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/tls.scm (libtasn1/fixed)[source]: Use it. --- gnu/local.mk | 1 + .../patches/libtasn1-CVE-2017-10790.patch | 63 +++++++++++++++++++ gnu/packages/tls.scm | 3 +- 3 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/libtasn1-CVE-2017-10790.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1bece24418..9482d4bb53 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -775,6 +775,7 @@ dist_patch_DATA = \ %D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \ %D%/packages/patches/libtasn1-CVE-2017-6891.patch \ + %D%/packages/patches/libtasn1-CVE-2017-10790.patch \ %D%/packages/patches/libtheora-config-guess.patch \ %D%/packages/patches/libtiff-CVE-2016-10092.patch \ %D%/packages/patches/libtiff-CVE-2016-10093.patch \ diff --git a/gnu/packages/patches/libtasn1-CVE-2017-10790.patch b/gnu/packages/patches/libtasn1-CVE-2017-10790.patch new file mode 100644 index 0000000000..6cec0c8030 --- /dev/null +++ b/gnu/packages/patches/libtasn1-CVE-2017-10790.patch @@ -0,0 +1,63 @@ +Fix CVE-2017-10790: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-10790 + +Patch copied from upstream source repository: + +https://git.savannah.nongnu.org/cgit/libtasn1.git/commit/?id=d8d805e1f2e6799bb2dff4871a8598dc83088a39 + +From d8d805e1f2e6799bb2dff4871a8598dc83088a39 Mon Sep 17 00:00:00 2001 +From: Nikos Mavrogiannopoulos +Date: Thu, 22 Jun 2017 16:31:37 +0200 +Subject: [PATCH] _asn1_check_identifier: safer access to values read + +Signed-off-by: Nikos Mavrogiannopoulos +--- + lib/parser_aux.c | 17 ++++++++++++----- + 1 file changed, 12 insertions(+), 5 deletions(-) + +diff --git a/lib/parser_aux.c b/lib/parser_aux.c +index 976ab38..786ea64 100644 +--- a/lib/parser_aux.c ++++ b/lib/parser_aux.c +@@ -955,7 +955,7 @@ _asn1_check_identifier (asn1_node node) + if (p2 == NULL) + { + if (p->value) +- _asn1_strcpy (_asn1_identifierMissing, p->value); ++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p->value); + else + _asn1_strcpy (_asn1_identifierMissing, "(null)"); + return ASN1_IDENTIFIER_NOT_FOUND; +@@ -968,9 +968,15 @@ _asn1_check_identifier (asn1_node node) + if (p2 && (type_field (p2->type) == ASN1_ETYPE_DEFAULT)) + { + _asn1_str_cpy (name2, sizeof (name2), node->name); +- _asn1_str_cat (name2, sizeof (name2), "."); +- _asn1_str_cat (name2, sizeof (name2), (char *) p2->value); +- _asn1_strcpy (_asn1_identifierMissing, p2->value); ++ if (p2->value) ++ { ++ _asn1_str_cat (name2, sizeof (name2), "."); ++ _asn1_str_cat (name2, sizeof (name2), (char *) p2->value); ++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p2->value); ++ } ++ else ++ _asn1_strcpy (_asn1_identifierMissing, "(null)"); ++ + p2 = asn1_find_node (node, name2); + if (!p2 || (type_field (p2->type) != ASN1_ETYPE_OBJECT_ID) || + !(p2->type & CONST_ASSIGN)) +@@ -990,7 +996,8 @@ _asn1_check_identifier (asn1_node node) + _asn1_str_cpy (name2, sizeof (name2), node->name); + _asn1_str_cat (name2, sizeof (name2), "."); + _asn1_str_cat (name2, sizeof (name2), (char *) p2->value); +- _asn1_strcpy (_asn1_identifierMissing, p2->value); ++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p2->value); ++ + p2 = asn1_find_node (node, name2); + if (!p2 || (type_field (p2->type) != ASN1_ETYPE_OBJECT_ID) + || !(p2->type & CONST_ASSIGN)) +-- +2.13.3 + diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 6d71a9b809..58ec9ff5ec 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -81,7 +81,8 @@ specifications.") (origin (inherit (package-source libtasn1)) (patches - (search-patches "libtasn1-CVE-2017-6891.patch")))))) + (search-patches "libtasn1-CVE-2017-6891.patch" + "libtasn1-CVE-2017-10790.patch")))))) (define-public asn1c (package From e3df6938acc2ba2d2f7333d911b8bdc3697f0f75 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 6 Aug 2017 00:01:10 -0400 Subject: [PATCH 0766/1227] gnu: libtasn1: Add replacement to fix CVE-2017-10790. Based on commit 01a61d7040b1794f36547b107abce6e967d59f21 by Leo Famulari . * gnu/packages/patches/libtasn1-CVE-2017-10790.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/tls.scm (libtasn1)[replacement]: New field. (libtasn1/fixed): New variable. --- gnu/local.mk | 3 +- .../patches/libtasn1-CVE-2017-10790.patch | 63 +++++++++++++++++++ gnu/packages/tls.scm | 10 ++- 3 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/libtasn1-CVE-2017-10790.patch diff --git a/gnu/local.mk b/gnu/local.mk index 37ee7f7307..3f27a5f973 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2,7 +2,7 @@ # Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès # Copyright © 2013, 2014, 2015, 2016, 2017 Andreas Enge # Copyright © 2016 Mathieu Lirzin -# Copyright © 2013, 2014, 2015, 2016 Mark H Weaver +# Copyright © 2013, 2014, 2015, 2016, 2017 Mark H Weaver # Copyright © 2016 Chris Marusich # Copyright © 2016, 2017 Kei Kebreau # Copyright © 2016, 2017 Rene Saavedra @@ -767,6 +767,7 @@ dist_patch_DATA = \ %D%/packages/patches/libssh-hostname-parser-bug.patch \ %D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \ + %D%/packages/patches/libtasn1-CVE-2017-10790.patch \ %D%/packages/patches/libtheora-config-guess.patch \ %D%/packages/patches/libtiff-CVE-2016-10688.patch \ %D%/packages/patches/libtiff-CVE-2017-9936.patch \ diff --git a/gnu/packages/patches/libtasn1-CVE-2017-10790.patch b/gnu/packages/patches/libtasn1-CVE-2017-10790.patch new file mode 100644 index 0000000000..6cec0c8030 --- /dev/null +++ b/gnu/packages/patches/libtasn1-CVE-2017-10790.patch @@ -0,0 +1,63 @@ +Fix CVE-2017-10790: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-10790 + +Patch copied from upstream source repository: + +https://git.savannah.nongnu.org/cgit/libtasn1.git/commit/?id=d8d805e1f2e6799bb2dff4871a8598dc83088a39 + +From d8d805e1f2e6799bb2dff4871a8598dc83088a39 Mon Sep 17 00:00:00 2001 +From: Nikos Mavrogiannopoulos +Date: Thu, 22 Jun 2017 16:31:37 +0200 +Subject: [PATCH] _asn1_check_identifier: safer access to values read + +Signed-off-by: Nikos Mavrogiannopoulos +--- + lib/parser_aux.c | 17 ++++++++++++----- + 1 file changed, 12 insertions(+), 5 deletions(-) + +diff --git a/lib/parser_aux.c b/lib/parser_aux.c +index 976ab38..786ea64 100644 +--- a/lib/parser_aux.c ++++ b/lib/parser_aux.c +@@ -955,7 +955,7 @@ _asn1_check_identifier (asn1_node node) + if (p2 == NULL) + { + if (p->value) +- _asn1_strcpy (_asn1_identifierMissing, p->value); ++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p->value); + else + _asn1_strcpy (_asn1_identifierMissing, "(null)"); + return ASN1_IDENTIFIER_NOT_FOUND; +@@ -968,9 +968,15 @@ _asn1_check_identifier (asn1_node node) + if (p2 && (type_field (p2->type) == ASN1_ETYPE_DEFAULT)) + { + _asn1_str_cpy (name2, sizeof (name2), node->name); +- _asn1_str_cat (name2, sizeof (name2), "."); +- _asn1_str_cat (name2, sizeof (name2), (char *) p2->value); +- _asn1_strcpy (_asn1_identifierMissing, p2->value); ++ if (p2->value) ++ { ++ _asn1_str_cat (name2, sizeof (name2), "."); ++ _asn1_str_cat (name2, sizeof (name2), (char *) p2->value); ++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p2->value); ++ } ++ else ++ _asn1_strcpy (_asn1_identifierMissing, "(null)"); ++ + p2 = asn1_find_node (node, name2); + if (!p2 || (type_field (p2->type) != ASN1_ETYPE_OBJECT_ID) || + !(p2->type & CONST_ASSIGN)) +@@ -990,7 +996,8 @@ _asn1_check_identifier (asn1_node node) + _asn1_str_cpy (name2, sizeof (name2), node->name); + _asn1_str_cat (name2, sizeof (name2), "."); + _asn1_str_cat (name2, sizeof (name2), (char *) p2->value); +- _asn1_strcpy (_asn1_identifierMissing, p2->value); ++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p2->value); ++ + p2 = asn1_find_node (node, name2); + if (!p2 || (type_field (p2->type) != ASN1_ETYPE_OBJECT_ID) + || !(p2->type & CONST_ASSIGN)) +-- +2.13.3 + diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 5a94ac6198..7ee341e99b 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès -;;; Copyright © 2014, 2015, 2016 Mark H Weaver +;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver ;;; Copyright © 2014 Ian Denhardt ;;; Copyright © 2013, 2015 Andreas Enge ;;; Copyright © 2015 David Thompson @@ -55,6 +55,7 @@ (package (name "libtasn1") (version "4.12") + (replacement libtasn1/fixed) (source (origin (method url-fetch) @@ -74,6 +75,13 @@ networking, allowing for formal validation of data according to some specifications.") (license license:lgpl2.0+))) +(define libtasn1/fixed + (package + (inherit libtasn1) + (source (origin + (inherit (package-source libtasn1)) + (patches (search-patches "libtasn1-CVE-2017-10790.patch")))))) + (define-public asn1c (package (name "asn1c") From 799097e445e67227313cbb4809a67cfc76081cf7 Mon Sep 17 00:00:00 2001 From: Vasile Dumitrascu Date: Fri, 4 Aug 2017 12:37:49 +0200 Subject: [PATCH 0767/1227] gnu: gnucash: Update to 2.6.17. * gnu/packages/gnucash.scm (gnucash): Update to 2.6.17. Signed-off-by: Arun Isaac --- gnu/packages/gnucash.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index b33cd26a81..ac2dce5768 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -42,7 +42,7 @@ (define-public gnucash (package (name "gnucash") - (version "2.6.16") + (version "2.6.17") (source (origin (method url-fetch) @@ -50,7 +50,7 @@ version "/gnucash-" version ".tar.bz2")) (sha256 (base32 - "1088rssg9xgwi3wdfrhdcga46gby6lrd9a1fvn9zq456lscn4m9c")) + "0g2risryfgplxh6cxpsl7fn255vipgsx38b4l081h665nqwmz5nv")) (patches (search-patches "gnucash-price-quotes-perl.patch")))) (build-system gnu-build-system) (inputs From abd8825f90472f7dcd2355c265de58a9c166beba Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 1 Aug 2017 10:27:46 +0000 Subject: [PATCH 0768/1227] gnu: Add font-open-dyslexic. * gnu/packages/fonts.scm (font-open-dyslexic): New variable. Signed-off-by: Arun Isaac --- gnu/packages/fonts.scm | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 51073eff9f..e421b2c6ab 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2015, 2017 Ricardo Wurmus ;;; Copyright © 2015, 2016 Leo Famulari -;;; Copyright © 2016, 2017 ng0 +;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 Jookia <166291@gmail.com> ;;; Copyright © 2016 Eric Bavier ;;; Copyright © 2016 Dmitry Nikolaev @@ -1073,3 +1073,33 @@ resolutions.") (synopsis "Fonts for MathJax") (description "This package contains the fonts required for MathJax.") (license license:asl2.0))) + +(define-public font-open-dyslexic + (package + (name "font-open-dyslexic") + (version "20160623") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/antijingoist/open-dyslexic/" + "archive/" version "-Stable.tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0al0j9kb32kfavcpq1kigsd36yzvf5yhzqhds0jkh7ngbxyxwkx4")))) + (build-system font-build-system) + (home-page "https://opendyslexic.org") + (synopsis "Font for dyslexics and high readability") + (description "OpenDyslexic is a font designed to help readability for some +of the symptoms of dyslexia. Letters have heavy weighted bottoms to provide +an indication of orientation to make it more difficult to confuse with other +similar letters. Consistently weighted bottoms can also help reinforce the +line of text. The unique shapes of each letter can help prevent flipping and +swapping. The italic style for OpenDyslexic has been crafted to be used for +emphasis while still being readable.") + (license + (license:fsdg-compatible + "https://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts" + "The Font Software may be sold as part of a larger software package but +no copy of one or more of the Font Software typefaces may be sold by +itself.")))) From 18c6a7b4c84a8d6c4e4527f72e3ab677b9c5fc65 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 6 Aug 2017 13:33:51 +0200 Subject: [PATCH 0769/1227] gnu: Add python-flask-httpauth. * gnu/packages/python.scm (python-flask-httpauth, python2-flask-httpauth): New variables. --- gnu/packages/python.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index cf77abdba5..d9f345ea6d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -15869,3 +15869,26 @@ thread-local variable.") (define-public python2-flask-principal (package-with-python2 python-flask-principal)) + +(define-public python-flask-httpauth + (package + (name "python-flask-httpauth") + (version "3.2.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Flask-HTTPAuth" version)) + (sha256 + (base32 + "13gff5w1mqpzm5nccyg02v3ifb9ifqh5k866cssjhghhg6msfjsz")))) + (build-system python-build-system) + (native-inputs + `(("python-flask" ,python-flask))) + (home-page "http://github.com/miguelgrinberg/flask-httpauth/") + (synopsis "Basic and Digest HTTP authentication for Flask routes") + (description "@code{flask_httpauth} provides Basic and Digest HTTP +authentication for Flask routes.") + (license license:expat))) + +(define-public python2-flask-httpauth + (package-with-python2 python-flask-httpauth)) From 3bfee8ff0255f43018aedbde0b8710cd8905745f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 6 Aug 2017 00:13:06 +0300 Subject: [PATCH 0770/1227] gnu: make-u-boot-package: Don't unnecessarily cross-compile. * gnu/packages/bootloaders.scm (make-u-boot-package)[native-inputs]: Only use cross-gcc and cross-binutils if compiling for a different architecture. [arguments]: Only use cross compiling make-flags if cross compiling. --- gnu/packages/bootloaders.scm | 92 ++++++++++++++++++++---------------- 1 file changed, 50 insertions(+), 42 deletions(-) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index c0d16b6c88..ac18884385 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -333,48 +333,56 @@ also initializes the boards (RAM etc).") (define (make-u-boot-package board triplet) "Returns a u-boot package for BOARD cross-compiled for TRIPLET." - (package - (inherit u-boot) - (name (string-append "u-boot-" (string-downcase board))) - (native-inputs - `(("cross-gcc" ,(cross-gcc triplet)) - ("cross-binutils" ,(cross-binutils triplet)) - ,@(package-native-inputs u-boot))) - (arguments - `(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-system)) - #:test-target "test" - #:make-flags - (list "HOSTCC=gcc" (string-append "CROSS_COMPILE=" ,triplet "-")) - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key outputs make-flags #:allow-other-keys) - (let ((config-name (string-append ,board "_defconfig"))) - (if (file-exists? (string-append "configs/" config-name)) - (zero? (apply system* "make" `(,@make-flags ,config-name))) - (begin - (display "Invalid board name. Valid board names are:") - (let ((suffix-len (string-length "_defconfig"))) - (scandir "configs" - (lambda (file-name) - (when (string-suffix? "_defconfig" file-name) - (format #t - "- ~A\n" - (string-drop-right file-name - suffix-len)))))) - #f))))) - (replace 'install - (lambda* (#:key outputs make-flags #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (libexec (string-append out "/libexec")) - (uboot-files (find-files "." ".*\\.(bin|efi|spl)$"))) - (mkdir-p libexec) - (for-each - (lambda (file) - (let ((target-file (string-append libexec "/" file))) - (mkdir-p (dirname target-file)) - (copy-file file target-file))) - uboot-files))))))))) + (let ((same-arch? (if (string-prefix? (%current-system) triplet) + `#t + `#f))) + (package + (inherit u-boot) + (name (string-append "u-boot-" (string-downcase board))) + (native-inputs + `(,@(if (not same-arch?) + `(("cross-gcc" ,(cross-gcc triplet)) + ("cross-binutils" ,(cross-binutils triplet))) + '()) + ,@(package-native-inputs u-boot))) + (arguments + `(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-system)) + #:test-target "test" + #:make-flags + (list "HOSTCC=gcc" + ,@(if (not same-arch?) + `((string-append "CROSS_COMPILE=" ,triplet "-")) + '())) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs make-flags #:allow-other-keys) + (let ((config-name (string-append ,board "_defconfig"))) + (if (file-exists? (string-append "configs/" config-name)) + (zero? (apply system* "make" `(,@make-flags ,config-name))) + (begin + (display "Invalid board name. Valid board names are:") + (let ((suffix-len (string-length "_defconfig"))) + (scandir "configs" + (lambda (file-name) + (when (string-suffix? "_defconfig" file-name) + (format #t + "- ~A\n" + (string-drop-right file-name + suffix-len)))))) + #f))))) + (replace 'install + (lambda* (#:key outputs make-flags #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (libexec (string-append out "/libexec")) + (uboot-files (find-files "." ".*\\.(bin|efi|spl)$"))) + (mkdir-p libexec) + (for-each + (lambda (file) + (let ((target-file (string-append libexec "/" file))) + (mkdir-p (dirname target-file)) + (copy-file file target-file))) + uboot-files)))))))))) (define-public u-boot-vexpress (make-u-boot-package "vexpress_ca9x4" "arm-linux-gnueabihf")) From 87cd1f5c2aabbd9eacd9926a2dc085fe6e5e1aa0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 6 Aug 2017 14:35:48 +0300 Subject: [PATCH 0771/1227] gnu: efl: Update to 1.20.1. * gnu/packages/enlightenment.scm (efl): Update to 1.20.1. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 512dd9b099..c76dd6eeb6 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -59,7 +59,7 @@ (define-public efl (package (name "efl") - (version "1.19.1") + (version "1.20.1") (source (origin (method url-fetch) (uri (string-append @@ -67,7 +67,7 @@ version ".tar.xz")) (sha256 (base32 - "0fndwraca9rg0bz3al4isdprvyw56szr88qiyvglb4j8ygsylscc")))) + "1d1wmmwgc8pf6lk9g6lflpdxvg85wxxq650d6m30zgr85cb6d27q")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From 3ea2eaa8f35059ae64004d224992ee53a135cc80 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 6 Aug 2017 14:36:33 +0300 Subject: [PATCH 0772/1227] gnu: python-efl: Update to 1.20.0. * gnu/packages/enlightenment.scm (python-efl): Update to 1.20.0. [source]: Add alternate source uri. [arguments]: Enable tests. --- gnu/packages/enlightenment.scm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index c76dd6eeb6..b42e631b98 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -286,14 +286,17 @@ embedded systems.") (define-public python-efl (package (name "python-efl") - (version "1.19.0") + (version "1.20.0") (source (origin (method url-fetch) - (uri (pypi-uri "python-efl" version)) + (uri (list + (pypi-uri "python-efl" version) + (string-append "http://download.enlightenment.org/rel/bindings/" + "python/python-efl-" version ".tar.gz"))) (sha256 (base32 - "0l0f9bv1134qh5376p5asycncidrhp8hdb6qwd8ybr1a61q9zq67")))) + "1680pgpf501nhbc9arm0nfj6rpcw17aryh0pgmmmszxlgpifpdzy")))) (build-system python-build-system) (arguments '(#:phases @@ -312,11 +315,7 @@ embedded systems.") (lambda _ ;; Some tests require write access to HOME. (setenv "HOME" "/tmp") - #t))) - ;; FIXME: Some tests require a running D-Bus server or a network - ;; connection and should be disabled. Other test failures looks - ;; legitimate. Disabled for now, needs work! - #:tests? #f)) + #t))))) (native-inputs `(("pkg-config" ,pkg-config) ("python-cython" ,python-cython))) From 99672f7b1d255b5cdac73870dfc272ca6799485b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 1 Aug 2017 18:02:40 +0300 Subject: [PATCH 0773/1227] gnu: Add keepassxc. * gnu/packages/password-utils.scm (keepassxc): New variable. --- gnu/packages/password-utils.scm | 35 ++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 08591d1086..cdd705956d 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Steve Sprang -;;; Copyright © 2015, 2016 Efraim Flashner +;;; Copyright © 2015, 2016, 2017 Efraim Flashner ;;; Copyright © 2015 Aljosha Papsch ;;; Copyright © 2016 Christopher Allan Webber ;;; Copyright © 2016 Jessica Tallon @@ -75,6 +75,39 @@ human.") (license license:gpl2))) +(define-public keepassxc + (package + (name "keepassxc") + (version "2.2.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/keepassxreboot/" name + "/releases/download/" version "/keepassxc-" + version "-src.tar.xz")) + (sha256 + (base32 + "0nby6aq6w8g7c9slzahf7i34sbj8majf8rhmqqww87v6kaypxi3i")))) + (build-system cmake-build-system) + (inputs + `(("libgcrypt" ,libgcrypt) + ("libxi" ,libxi) + ("libxtst" ,libxtst) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("zlib" ,zlib))) + (native-inputs + `(("qttools" ,qttools))) + (home-page "https://www.keepassxc.org") + (synopsis "Password manager") + (description "KeePassXC is a password manager or safe which helps you to +manage your passwords in a secure way. You can put all your passwords in one +database, which is locked with one master key or a key-file which can be stored +on an external storage device. The databases are encrypted using the +algorithms AES or Twofish.") + ;; Non functional parts use various licences. + (license license:gpl3))) + (define-public keepassx (package (name "keepassx") From b7ac10e6da6e2199aa379fdfa19bd43ca8fddc4d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 1 Aug 2017 18:04:43 +0300 Subject: [PATCH 0774/1227] gnu: keepassx: Superseded by keepassxc. * gnu/packages/password-utils.scm (keepassx)[properties]: New field. --- gnu/packages/password-utils.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index cdd705956d..bde1ea8544 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -136,7 +136,8 @@ database, which is locked with one master key or a key-file which can be stored on an external storage device. The databases are encrypted using the algorithms AES or Twofish.") ;; Non functional parts use various licences. - (license license:gpl3))) + (license license:gpl3) + (properties `((superseded . ,keepassxc))))) (define-public shroud (package From 403097d26dba882fef43947435ecb97ff04586ed Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 31 Jul 2017 15:26:06 +0300 Subject: [PATCH 0775/1227] gnu: Add motti. * gnu/packages/motti.scm (motti): New variable. --- gnu/local.mk | 1 + gnu/packages/motti.scm | 45 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 gnu/packages/motti.scm diff --git a/gnu/local.mk b/gnu/local.mk index 9482d4bb53..323866a582 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -272,6 +272,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/mingw.scm \ %D%/packages/microcom.scm \ %D%/packages/moe.scm \ + %D%/packages/motti.scm \ %D%/packages/monitoring.scm \ %D%/packages/mono.scm \ %D%/packages/moreutils.scm \ diff --git a/gnu/packages/motti.scm b/gnu/packages/motti.scm new file mode 100644 index 0000000000..59b195802b --- /dev/null +++ b/gnu/packages/motti.scm @@ -0,0 +1,45 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Efraim Flashner +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages motti) + #:use-module (gnu packages) + #:use-module (guix build-system gnu) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download)) + +(define-public motti + (package + (name "motti") + (version "3.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://gnu/motti/motti-" version ".tar.gz")) + (sha256 + (base32 + "0ag4gpxy42l30660b4f2lrp52xi5sik9s6frr7jfxqxjsf29lbb3")))) + (build-system gnu-build-system) + (synopsis "Multiplayer strategy game") + (description + "GNU Motti is a simple multiplayer strategy game played in a terminal. +The objective of the game is to conquer enemy capitals by occupying and +encircling territory.") + (home-page "https://www.gnu.org/software/motti") + (license gpl3+))) From f7b60fdc361d672ce861afcb27db8e5e247d2777 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sun, 6 Aug 2017 13:44:12 -0400 Subject: [PATCH 0776/1227] gnu: deutex: Update to 5.0.0. * gnu/packages/game-development.scm (deutex): Update to 5.0.0. [source]: Change upstream URI. [arguments]: Enable tests and restore normal "configure" and "install" phases. [native-inputs]: Add asciidoc. --- gnu/packages/game-development.scm | 32 +++++-------------------------- 1 file changed, 5 insertions(+), 27 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 7ab9a1aefc..efd8f6d034 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -101,39 +101,17 @@ is used in some video games and movies.") (define-public deutex (package (name "deutex") - (version "4.4.902") + (version "5.0.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/Doom-Utils/" name - "/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + "/releases/download/v" version "/" + name "-" version ".tar.xz")) (sha256 (base32 - "0rwz1yzgd539x4h25kzhar4q02xyxjwfrcpz4m8ixi312a82p7cn")))) + "1jvffcpq64hk3jysz4q6zi9hqkksy151ci9553h8q7wrrkbw0i9z")))) (build-system gnu-build-system) - (arguments - '(#:tests? #f ; no check target - #:phases - (modify-phases %standard-phases - ;; The provided configure script takes a restricted number of arguments. - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "./configure" "--prefix" - (assoc-ref %outputs "out"))))) - ;; "make install" is broken for this package. - ;; Notably, the binaries overrwrite one another upon installation as - ;; they are all installed to the "bin" file in the output directory, - ;; and the manual page fails to install because the directory for the - ;; manual page is not created. - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref %outputs "out")) - (bin (string-append out "/bin")) - (share (string-append out "/share"))) - (install-file "deusf" bin) - (install-file "deutex" bin) - (install-file "deutex.6" (string-append share "/man/man6"))) - #t))))) + (native-inputs `(("asciidoc" ,asciidoc))) (home-page "https://github.com/Doom-Utils/deutex") (synopsis "WAD file composer for Doom and related games") (description From b0c95908c02d5ed6fb7d591ebdba7287d778ea03 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sun, 6 Aug 2017 14:08:02 -0400 Subject: [PATCH 0777/1227] gnu: freedoom: Update to 0.11.3. * gnu/packages/games.scm (freedoom): Update to 0.11.3. [arguments]: Remove unnecessary "no" phase. --- gnu/packages/games.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 3093b77aea..408b3b46d0 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -283,7 +283,7 @@ cows can think too. All you have to do is run @code{cowthink}.") (define-public freedoom (package (name "freedoom") - (version "0.11.2") + (version "0.11.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/" name "/" name @@ -291,7 +291,7 @@ cows can think too. All you have to do is run @code{cowthink}.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0b9k61f97spivi75f76zwwg8a3bgc6iil2hidqfj8s50lhqggwbb")))) + "1bjijdfqhpazyifx1qda7scj7dry1azhjrnl8h8zn2vqfgdmlh0q")))) (build-system gnu-build-system) (arguments '(#:make-flags `(,(string-append "prefix=" (assoc-ref %outputs "out"))) @@ -299,7 +299,6 @@ cows can think too. All you have to do is run @code{cowthink}.") #:tests? #f ; no check target #:phases (modify-phases %standard-phases - (add-before 'unpack 'no (lambda _ #t)) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((dejavu (assoc-ref inputs "font-dejavu")) From 03776ebd36615277cfec6b85b84fc4cc8fcaa0bb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 6 Aug 2017 16:45:19 -0400 Subject: [PATCH 0778/1227] gnu: mpg123: Update to 1.25.4. * gnu/packages/mp3.scm (mpg123): Update to 1.25.4. --- gnu/packages/mp3.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index 37885c9e34..73e767faec 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -290,7 +290,7 @@ This package contains the binary.") (define-public mpg123 (package (name "mpg123") - (version "1.25.2") + (version "1.25.4") (source (origin (method url-fetch) (uri (list (string-append "mirror://sourceforge/mpg123/mpg123/" @@ -300,7 +300,7 @@ This package contains the binary.") version ".tar.bz2"))) (sha256 (base32 - "0f7fib7qyd9lah3fqcsjlqcni4bip4hw7iglkz3vz4fjibxv052k")))) + "1rxknrnl3ji5hi5rbckpzhbl1k5r8i53kcys4xdgg0xbi8765dfd")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-default-audio=pulse"))) (native-inputs `(("pkg-config" ,pkg-config))) From fd8f9463792259eced3046c6331fd36df0d7015f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 6 Aug 2017 16:46:45 -0400 Subject: [PATCH 0779/1227] gnu: python-icalendar: Update to 3.11.6. * gnu/packages/python.scm (python-icalendar): Update to 3.11.6. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index d9f345ea6d..79c6eca00f 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -9258,13 +9258,13 @@ processes across test runs.") (define-public python-icalendar (package (name "python-icalendar") - (version "3.11.5") + (version "3.11.6") (source (origin (method url-fetch) (uri (pypi-uri "icalendar" version)) (sha256 (base32 - "0y6f2js983ag0d138xx4pzyc71gf44hyqmjsdvw6pq2xrkpj8jzk")))) + "1ny9mbm9zgghl612b8wc4ap52bz3kgl486d7f307gxjmlqgz3i64")))) (build-system python-build-system) (propagated-inputs `(("python-dateutil" ,python-dateutil) From 46f3c8f28923133ae6c3874db2e5c456e074c953 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 6 Aug 2017 16:57:07 -0400 Subject: [PATCH 0780/1227] gnu: khal: Don't propagate vdirsyncer. * gnu/packages/calendar.scm (khal)[propagated-inputs]: Move vdirsyncer ... [native-inputs]: ... here. --- gnu/packages/calendar.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index b022c0efa7..74601871cc 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -118,8 +118,9 @@ data units.") ("python-pytest-cov" ,python-pytest-cov) ("python-setuptools-scm" ,python-setuptools-scm) ;; Required for tests - ("tzdata" ,tzdata) ("python-freezegun" ,python-freezegun) + ("tzdata" ,tzdata) + ("vdirsyncer" ,vdirsyncer) ;; Required to build manpage ("python-sphinxcontrib-newsfeed" ,python-sphinxcontrib-newsfeed) ("python-sphinx" ,python-sphinx))) @@ -131,8 +132,7 @@ data units.") ("python-icalendar" ,python-icalendar) ("python-tzlocal" ,python-tzlocal) ("python-urwid" ,python-urwid) - ("python-pyxdg" ,python-pyxdg) - ("vdirsyncer" ,vdirsyncer))) + ("python-pyxdg" ,python-pyxdg))) (synopsis "Console calendar program") (description "Khal is a standards based console calendar program, able to synchronize with CalDAV servers through vdirsyncer.") From 9d217d277e56f5cf158ab07033bd2206671b92ee Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 01:39:21 +0200 Subject: [PATCH 0781/1227] gnu: r-bsgenome-hsapiens-ucsc-hg19: Restore original hash. * gnu/packages/bioinformatics.scm (r-bsgenome-hsapiens-ucsc-hg19)[source]: Restore hash from before the tarball changed in place. It changed back. This reverts commit fd4085793818ab2aea28dfeeb2728f6f02416c4c. --- gnu/packages/bioinformatics.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3ec8b5ec71..c08297d7b6 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7575,7 +7575,7 @@ Stephens (1990).") version ".tar.gz")) (sha256 (base32 - "0479qx4bapgcp5chj10a63chk0s28x9cx1gamz3f5m3yd7jzwcf2")))) + "1y0nqpk8cw5a34sd9hmin3z4v7iqm6hf6l22cl81vlbxqbjibxc8")))) (properties `((upstream-name . "BSgenome.Hsapiens.UCSC.hg19"))) (build-system r-build-system) From ea94aff7daa72f8ac1c3ed48c2dc0a3abfaf9583 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 00:34:01 +0200 Subject: [PATCH 0782/1227] gnu: wimlib: Update to 1.12.0. * gnu/packages/backup.scm (wimlib): Update to 1.12.0. --- gnu/packages/backup.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index f9a537d712..227660a099 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -606,14 +606,14 @@ changes are stored.") (define-public wimlib (package (name "wimlib") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (string-append "https://wimlib.net/downloads/" name "-" version ".tar.gz")) (sha256 (base32 - "0mbz03smlc054i2m9q2sbqymml9m897kfs84q7g81i26y811p6wq")))) + "0ks6hq7vwq13ljkzxp3a490bf8dnracgl2azf57rg49ad2fzab45")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From 8bad0c0bbb73176ff72a88b47f71d7b07720a483 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 00:01:43 +0200 Subject: [PATCH 0783/1227] gnu: ntfs-3g: Use HTTPS for the home page as well. * gnu/packages/linux.scm (ntfs-3g)[home-page]: Use HTTPS. --- gnu/packages/linux.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a103fd891a..12a6887925 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3287,7 +3287,7 @@ from userspace.") "--enable-mount-helper" "--enable-posix-acls" "--enable-xattr-mappings"))) - (home-page "http://www.tuxera.com/community/open-source-ntfs-3g/") + (home-page "https://www.tuxera.com/community/open-source-ntfs-3g/") (synopsis "Read-write access to NTFS file systems") (description "NTFS-3G provides read-write access to NTFS file systems, which are From d8af4f6ddedb4db527c8c5137fe03684c468a82e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 00:21:11 +0200 Subject: [PATCH 0784/1227] gnu: ntfs-3g: Update to 2017.3.23. * gnu/packages/linux.scm (ntfs-3g): Update to 2017.3.23. [source]: Remove patch. * gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/linux.scm | 5 +-- .../patches/ntfs-3g-CVE-2017-0358.patch | 43 ------------------- 3 files changed, 2 insertions(+), 47 deletions(-) delete mode 100644 gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch diff --git a/gnu/local.mk b/gnu/local.mk index 323866a582..8c00b00208 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -875,7 +875,6 @@ dist_patch_DATA = \ %D%/packages/patches/node-9077.patch \ %D%/packages/patches/nss-increase-test-timeout.patch \ %D%/packages/patches/nss-pkgconfig.patch \ - %D%/packages/patches/ntfs-3g-CVE-2017-0358.patch \ %D%/packages/patches/nvi-assume-preserve-path.patch \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \ %D%/packages/patches/nvi-db4.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 12a6887925..ed53b79ee9 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3262,16 +3262,15 @@ from userspace.") (define-public ntfs-3g (package (name "ntfs-3g") - (version "2016.2.22") + (version "2017.3.23") (source (origin (method url-fetch) (uri (string-append "https://tuxera.com/opensource/" "ntfs-3g_ntfsprogs-" version ".tgz")) (sha256 (base32 - "180y5y09h30ryf2vim8j30a2npwz1iv9ly5yjmh3wjdkwh2jrdyp")) + "1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy")) (modules '((guix build utils))) - (patches (search-patches "ntfs-3g-CVE-2017-0358.patch")) (snippet ;; Install under $prefix. '(substitute* '("src/Makefile.in" "ntfsprogs/Makefile.in") diff --git a/gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch b/gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch deleted file mode 100644 index 83c9dbb3d4..0000000000 --- a/gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch +++ /dev/null @@ -1,43 +0,0 @@ -Fix CVE-2017-0358: -http://seclists.org/oss-sec/2017/q1/259 -This patch was copied from the above URL. - -diff --git a/src/lowntfs-3g.c b/src/lowntfs-3g.c -index 0bb38f9..c6d1dad 100644 ---- a/src/lowntfs-3g.c -+++ b/src/lowntfs-3g.c -@@ -3827,13 +3827,14 @@ static fuse_fstype load_fuse_module(void) - struct stat st; - pid_t pid; - const char *cmd = "/sbin/modprobe"; -+ char *env = (char*)NULL; - struct timespec req = { 0, 100000000 }; /* 100 msec */ - fuse_fstype fstype; - - if (!stat(cmd, &st) && !geteuid()) { - pid = fork(); - if (!pid) { -- execl(cmd, cmd, "fuse", NULL); -+ execle(cmd, cmd, "fuse", NULL, &env); - _exit(1); - } else if (pid != -1) - waitpid(pid, NULL, 0); -diff -ur ntfs-3g.old/src/ntfs-3g.c ntfs-3g/src/ntfs-3g.c ---- ntfs-3g.old/src/ntfs-3g.c 2017-02-09 15:01:04.074331542 -0500 -+++ ntfs-3g/src/ntfs-3g.c 2017-02-09 15:06:26.077252571 -0500 -@@ -3612,13 +3612,14 @@ - struct stat st; - pid_t pid; - const char *cmd = "/sbin/modprobe"; -+ char *env = (char*)NULL; - struct timespec req = { 0, 100000000 }; /* 100 msec */ - fuse_fstype fstype; - - if (!stat(cmd, &st) && !geteuid()) { - pid = fork(); - if (!pid) { -- execl(cmd, cmd, "fuse", NULL); -+ execle(cmd, cmd, "fuse", NULL, &env); - _exit(1); - } else if (pid != -1) - waitpid(pid, NULL, 0); From 74033bbcc313e99b895efe1af6089c529df32101 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 05:27:39 +0200 Subject: [PATCH 0785/1227] gnu: youtube-dl: Update to 2017.08.06. * gnu/packages/video.scm (youtube-dl): Update to 2017.08.06. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 1152cdf0a0..99bf2d9b16 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.07.30.1") + (version "2017.08.06") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1m1n5d06xh8hnild6kssiv9yaq2sm7vy0c8h506v3nff7i9wf0a7")))) + "1vdfda2w1ckhqna8xcpphr5l0rp9zhs368lic4f7144rxvbydiwm")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From cda20ee816c05adf5a55d4e70baeed8f441af3de Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 7 Aug 2017 07:24:17 +0300 Subject: [PATCH 0786/1227] gnu: vapoursynth: Don't build on aarch64-linux. * gnu/packages/video.scm (vapoursynth)[supported-systems]: Remove aarch64-linux from the supported-systems. --- gnu/packages/video.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 99bf2d9b16..fdb7d48aec 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1615,7 +1615,8 @@ manipulation. It aims to be a modern rewrite of Avisynth, supporting multithreading, generalized colorspaces, per frame properties, and videos with format changes.") ;; src/core/cpufeatures only allows x86, ARM or PPC - (supported-systems (delete "mips64el-linux" %supported-systems)) + (supported-systems (fold delete %supported-systems + '("mips64el-linux" "aarch64-linux"))) ;; As seen from the source files. (license license:lgpl2.1+))) From 83fef82b7c0f9b8c57e072281ef9d4518d854350 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 7 Aug 2017 01:52:31 +0200 Subject: [PATCH 0787/1227] gnu: cubicle: Fix evaluation. * gnu/packages/maths.scm (cubicle)[native-inputs]: Retrieve WHICH from (gnu packages base). --- gnu/packages/maths.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index e19c8edc82..e204588dd5 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3212,7 +3212,7 @@ theories} (SMT) solver. It provides a C/C++ API.") (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) - ("which" ,which))) + ("which" ,(@@ (gnu packages base) which)))) (propagated-inputs `(("z3" ,z3))) (arguments From 149f66882125fbf656f194690f6178dfcc8104a1 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 5 Aug 2017 17:56:49 -0400 Subject: [PATCH 0788/1227] gnu: texlive: Update to 2017. * gnu/packages/tex.scm (texlive, texlive-texmf): Update to 2017. (texlive-texmf-src): Update to 20170524. Remove 'texlive-texmf-CVE-2016-10243.patch'. (texlive-bin, texlive-extra-src): Update to 20170524. * gnu/packages/patches/texlive-texmf-CVE-2016-10243.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../texlive-texmf-CVE-2016-10243.patch | 18 --------------- gnu/packages/tex.scm | 22 +++++++++---------- 3 files changed, 11 insertions(+), 30 deletions(-) delete mode 100644 gnu/packages/patches/texlive-texmf-CVE-2016-10243.patch diff --git a/gnu/local.mk b/gnu/local.mk index acdadd6294..e7a870549e 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1022,7 +1022,6 @@ dist_patch_DATA = \ %D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \ %D%/packages/patches/teensy-loader-cli-help.patch \ %D%/packages/patches/teeworlds-use-latest-wavpack.patch \ - %D%/packages/patches/texlive-texmf-CVE-2016-10243.patch \ %D%/packages/patches/texi2html-document-encoding.patch \ %D%/packages/patches/texi2html-i18n.patch \ %D%/packages/patches/thefuck-test-environ.patch \ diff --git a/gnu/packages/patches/texlive-texmf-CVE-2016-10243.patch b/gnu/packages/patches/texlive-texmf-CVE-2016-10243.patch deleted file mode 100644 index 3a9ae993f6..0000000000 --- a/gnu/packages/patches/texlive-texmf-CVE-2016-10243.patch +++ /dev/null @@ -1,18 +0,0 @@ -Fix CVE-2016-10243: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10243 - -Patch adapted from upstream commit: - -https://www.tug.org/svn/texlive?view=revision&revision=42605 - ---- trunk/Master/texmf-dist/web2c/texmf.cnf 2016/11/29 23:10:33 42604 -+++ trunk/Master/texmf-dist/web2c/texmf.cnf 2016/11/29 23:27:53 42605 -@@ -568,7 +568,6 @@ extractbb,\ - gregorio,\ - kpsewhich,\ - makeindex,\ --mpost,\ - repstopdf,\ - - % we'd like to allow: diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 729f9c01bf..60b4a837b3 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2016 Federico Beffa ;;; Copyright © 2016 Thomas Danckaert ;;; Copyright © 2016, 2017 Ricardo Wurmus +;;; Copyright © 2017 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; @@ -66,29 +67,28 @@ (define texlive-extra-src (origin (method url-fetch) - (uri "ftp://tug.org/historic/systems/texlive/2016/texlive-20160523-extra.tar.xz") + (uri "ftp://tug.org/historic/systems/texlive/2017/texlive-20170524-extra.tar.xz") (sha256 (base32 - "0q4a92zmwhn4ry6xgrp4k8wq11ax2sg9rg9yrsrdkr719y0x887a")))) + "0zvd2zskk78ig114mfj24g15qys41hzqv59fmqpirdbgq9c9gr5g")))) (define texlive-texmf-src (origin (method url-fetch) - (uri "ftp://tug.org/historic/systems/texlive/2016/texlive-20160523b-texmf.tar.xz") - (patches (search-patches "texlive-texmf-CVE-2016-10243.patch")) - (patch-flags '("-p2")) + (uri "ftp://tug.org/historic/systems/texlive/2017/texlive-20170524-texmf.tar.xz") (sha256 (base32 - "1dv8vgfzpczqw82hv9g7a8djhhyzywljmrarlcyy6g2qi5q51glr")))) + "1v69y3kgkbk24f7s4dfkknwd317mqmck5jgpyb35wqgqfy5p0qrz")))) (define-public texlive-bin (package (name "texlive-bin") - (version "2016") + (version "20170524") (source (origin (method url-fetch) - (uri "ftp://tug.org/historic/systems/texlive/2016/texlive-20160523b-source.tar.xz") + (uri (string-append "ftp://tug.org/historic/systems/texlive/2017/" + "texlive-" version "-source.tar.xz")) (sha256 (base32 - "1v91vahxlxkdra0qz3f132vvx5d9cx2jy84yl1hkch0agyj2rcx8")))) + "1amjrxyasplv4alfwcxwnw4nrx7dz2ydmddkq16k6hg90i9njq81")))) (build-system gnu-build-system) (inputs `(("texlive-extra-src" ,texlive-extra-src) @@ -3808,7 +3808,7 @@ directly generate PDF documents instead of DVI.") (define texlive-texmf (package (name "texlive-texmf") - (version "2016") + (version "2017") (source texlive-texmf-src) (build-system gnu-build-system) (inputs @@ -3880,7 +3880,7 @@ This package contains the complete tree of texmf-dist data.") (define-public texlive (package (name "texlive") - (version "2016") + (version "2017") (source #f) (build-system trivial-build-system) (inputs `(("bash" ,bash) ; for wrap-program From 1335167a3bbb87ffc200d5f106b9a40e9bd4b90b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 5 Aug 2017 18:34:51 -0400 Subject: [PATCH 0789/1227] gnu: biber: Update to 2.7. * gnu/packages/tex.scm (biber)[name]: Rename to 'biber'. (biber-2.5): Remove variable. --- gnu/packages/tex.scm | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 60b4a837b3..db08ed8643 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -4058,7 +4058,7 @@ values (strings, macros, or numbers) pasted together.") (define-public biber (package - (name "biber-next") + (name "biber") (version "2.7") (source (origin (method url-fetch) @@ -4136,33 +4136,6 @@ values (strings, macros, or numbers) pasted together.") other things it comes with full Unicode support.") (license license:artistic2.0))) -;; Our version of texlive comes with biblatex 3.4, which is only compatible -;; with biber 2.5 according to the compatibility matrix in the biber -;; documentation. -(define-public biber-2.5 - (package (inherit biber) - (name "biber") - (version "2.5") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/plk/biber/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "163sd343wkrzwnvj2003m2j0kz517jmjr4savw6f8bjxhj8fdrqv")))) - (arguments - (substitute-keyword-arguments (package-arguments biber) - ((#:phases phases) - `(modify-phases ,phases - (add-before 'check 'delete-failing-test - (lambda _ - (delete-file "t/sort-order.t") - #t)))))) - (inputs - `(("perl-date-simple" ,perl-date-simple) - ,@(package-inputs biber))))) - (define-public rubber (package (name "rubber") From c97fbf55e7fe6c6dcf5620032f602e2c55592d73 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 6 Aug 2017 16:26:49 -0400 Subject: [PATCH 0790/1227] gnu: texlive: Remove texlive-minimal. This package is superseded by the modular TeX Live distribution. * gnu/packages/tex.scm (texlive-minimal, texlive-texmf-minimal): Remove variables. --- gnu/packages/tex.scm | 75 -------------------------------------------- 1 file changed, 75 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index db08ed8643..f12746c83f 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3939,81 +3939,6 @@ This package contains the complete TeX Live distribution.") (license (license:fsf-free "https://www.tug.org/texlive/copying.html")) (home-page "https://www.tug.org/texlive/"))) - -;; texlive-texmf-minimal is a pruned, small version of the texlive tree, -;; in particular dropping documentation and fonts. It weighs in at 470 MiB -;; instead of 4 GiB. -(define texlive-texmf-minimal - (package (inherit texlive-texmf) - (name "texlive-texmf-minimal") - (arguments - (substitute-keyword-arguments - (package-arguments texlive-texmf) - ((#:modules modules) - `((ice-9 ftw) - (srfi srfi-1) - ,@modules)) - ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'prune - (lambda _ - (define (delete subdir exclude) - "Delete all files and directories in SUBDIR except for those -given in the list EXCLUDE." - (with-directory-excursion subdir - (for-each delete-file-recursively - (lset-difference equal? - (scandir ".") - (append '("." "..") - exclude))))) - (with-directory-excursion "texmf-dist" - (for-each delete-file-recursively - '("doc" "source" "tex4ht")) - ;; Delete all subdirectories of "fonts", except for "tfm" and - ;; any directories named "cm". - (delete "fonts" '("afm" "map" "pk" "source" "tfm" "type1")) - (delete "fonts/afm" '("public")) - (delete "fonts/afm/public" '("amsfonts")) - (delete "fonts/afm/public/amsfonts" '("cm")) - (delete "fonts/map" '("dvips")) - (delete "fonts/map/dvips" '("cm")) - (delete "fonts/source" '("public")) - (delete "fonts/source/public" '("cm")) - (delete "fonts/tfm" '("public")) - (delete "fonts/type1" '("public")) - (delete "fonts/type1/public" '("amsfonts")) - (delete "fonts/type1/public/amsfonts" '("cm"))) - #t)))))) - (description - "TeX Live provides a comprehensive TeX document production system. -It includes all the major TeX-related programs, macro packages, and fonts -that are free software, including support for many languages around the -world. - -This package contains a small subset of the texmf-dist data."))) - - -;; texlive-minimal is the same as texlive, but using texlive-texmf-minimal -;; instead of the full texlive-texmf. It can be used, for instance, as a -;; native input to packages that need texlive to build their documentation. -(define-public texlive-minimal - (package (inherit texlive) - (name "texlive-minimal") - (inputs - `(("texlive-texmf" ,texlive-texmf-minimal) - ,@(alist-delete "texlive-texmf" (package-inputs texlive)))) - (native-search-paths - (list (search-path-specification - (variable "TEXMFLOCAL") - (files '("share/texmf-local"))))) - (description - "TeX Live provides a comprehensive TeX document production system. -It includes all the major TeX-related programs, macro packages, and fonts -that are free software, including support for many languages around the -world. - -This package contains a small working part of the TeX Live distribution."))) - (define-public perl-text-bibtex (package (name "perl-text-bibtex") From 6eed26443f04b872a2738caca4c762718da6dfd7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 7 Aug 2017 13:36:11 +0300 Subject: [PATCH 0791/1227] gnu: nim: Update to 0.17.0. * gnu/packages/nim.scm (nim): Update to 0.17.0. [source, home-page]: Use https. [arguments]: Patch more shebangs, use custom build phase. --- gnu/packages/nim.scm | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/gnu/packages/nim.scm b/gnu/packages/nim.scm index c249e2be93..560f10e4ad 100644 --- a/gnu/packages/nim.scm +++ b/gnu/packages/nim.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 José Miguel Sánchez García +;;; Copyright © 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,15 +26,15 @@ (define-public nim (package (name "nim") - (version "0.16.0") + (version "0.17.0") (source (origin (method url-fetch) - (uri (string-append "http://nim-lang.org/download/" + (uri (string-append "https://nim-lang.org/download/" name "-" version ".tar.xz")) (sha256 (base32 - "0rsibhkc5n548bn9yyb9ycrdgaph5kq84sfxc9gabjs7pqirh6cy")))) + "16vsmk4rqnkg9lc9h9jk62ps0x778cdqg6qrs3k6fv2g73cqvq9n")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; No tests. @@ -46,11 +47,21 @@ (substitute* "install.sh" (("1/nim") "1")) #t))) + (add-after 'patch-source-shebangs 'patch-more-shebangs + (lambda _ + (substitute* (append '("tests/stdlib/tosprocterminate.nim" + "lib/pure/osproc.nim") + (find-files "c_code" "stdlib_osproc.c")) + (("/bin/sh") (which "sh"))) + #t)) + (replace 'build + (lambda _ + (zero? (system* "sh" "build.sh")))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (zero? (system* "./install.sh" out)))))))) - (home-page "http://nim-lang.org") + (home-page "https://nim-lang.org") (synopsis "Statically-typed, imperative programming language") (description "Nim (formerly known as Nimrod) is a statically-typed, imperative programming language that tries to give the programmer ultimate power From 57e96e48b199705d0fda8f0060b4349e003d29d6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 7 Aug 2017 17:02:04 +0300 Subject: [PATCH 0792/1227] gnu: propeller-gcc-4: Don't build on aarch64-linux. * gnu/packages/embedded.scm (propeller-gcc-4)[supported-system]: New field. --- gnu/packages/embedded.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index e509647eae..cf4ac5351a 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -509,7 +509,8 @@ with a layered architecture of JTAG interface and TAP support.") (origin-patches (package-source gcc-4.7)) (search-patches "gcc-4.6-gnu-inline.patch" "gcc-cross-environment-variables.patch"))))) - (home-page "https://github.com/dbetz/propgcc-gcc")))) + (home-page "https://github.com/dbetz/propgcc-gcc") + (supported-systems (delete "aarch64-linux" %supported-systems))))) ;; Version 6 is experimental and may not work correctly. This is why we ;; default to version 4, which is also used in the binary toolchain bundle From 73a203450d21241eca50375aeb26fb418b287414 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 7 Aug 2017 14:09:04 -0400 Subject: [PATCH 0793/1227] Revert "doc: Suggest running guix-daemon with 'sudo -E'." This change might not correct, so we revert it for now: https://lists.gnu.org/archive/html/guix-devel/2017-08/msg00057.html This reverts commit 6a4364335c967f841b53ed35c22f90445437e4b0. --- doc/contributing.texi | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 98971a9bbc..00edd47710 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -110,13 +110,10 @@ actually installing them. So that you can distinguish between your To that end, all the command-line tools can be used even if you have not run @code{make install}. To do that, prefix each command with @command{./pre-inst-env} (the @file{pre-inst-env} script lives in the -top build tree of Guix), as in@footnote{The @option{-E} flag to -@command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set -such that @command{guix-daemon} and the tools it uses can find the Guile -modules they need.}: +top build tree of Guix), as in: @example -$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild +$ sudo ./pre-inst-env guix-daemon --build-users-group=guixbuild $ ./pre-inst-env guix build hello @end example From a1aa5dabaa5d570710da7190a3c3dca5442b9daa Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 7 Aug 2017 16:41:03 -0400 Subject: [PATCH 0794/1227] daemon: Ensure the child stack is aligned on a 16-byte boundary. * nix/libstore/build.cc (DerivationGoal::startBuilder): When calling 'clone', ensure that the stack is aligned on a 16-byte boundary. --- nix/libstore/build.cc | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 693fa70c8d..63540ddfc1 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -2008,11 +2009,11 @@ void DerivationGoal::startBuilder() char stack[32 * 1024]; int flags = CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWIPC | CLONE_NEWUTS | SIGCHLD; if (!fixedOutput) flags |= CLONE_NEWNET; -#ifdef __aarch64__ - pid = clone(childEntry, stack + sizeof(stack) - 16, flags, this); -#else - pid = clone(childEntry, stack + sizeof(stack) - 8, flags, this); -#endif + /* Ensure proper alignment on the stack. On aarch64, it has to be 16 + bytes. */ + pid = clone(childEntry, + (char *)(((uintptr_t)stack + sizeof(stack) - 8) & ~(uintptr_t)0xf), + flags, this); if (pid == -1) throw SysError("cloning builder process"); } else From e7ea30d59a22857e7a2992ef7bd099b8f88127f7 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 8 Aug 2017 09:19:22 +1000 Subject: [PATCH 0795/1227] ruby: Replace with ruby-2.4.1. * gnu/packages/ruby.scm (ruby-2.4.1): New variable. (ruby)[replacement]: New field. --- gnu/packages/ruby.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 414b38c4fe..78ec9cdf36 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -49,6 +49,7 @@ (define-public ruby (package (name "ruby") + (replacement ruby-2.4.1) (version "2.4.0") (source (origin @@ -102,6 +103,26 @@ a focus on simplicity and productivity.") (home-page "https://ruby-lang.org") (license license:ruby))) +(define-public ruby-2.4.1 + (package + (inherit ruby) + (name "ruby") + (version "2.4.1") + (source + (origin + (method url-fetch) + (uri (string-append "http://cache.ruby-lang.org/pub/ruby/" + (version-major+minor version) + "/ruby-" version ".tar.xz")) + (sha256 + (base32 + "0m763zf2v0jhrha3cx21g4dif6vc9gm714invs8h3sg35ncskj2g")) + (modules '((guix build utils))) + (snippet `(begin + ;; Remove bundled libffi + (delete-file-recursively "ext/fiddle/libffi-3.2.1") + #t)))))) + (define-public ruby-2.3 (package (inherit ruby) From 5071f17b29ab40c44c329668550b85bc606cee02 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sun, 6 Aug 2017 16:41:05 +1000 Subject: [PATCH 0796/1227] gnu: ruby-tdiff: Update to 0.3.3-1.b662a604. * gnu/packages/ruby.scm: Update to 0.3.3-1.b662a604 --- gnu/packages/ruby.scm | 43 ++++++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 78ec9cdf36..4c8a6f2e5c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2878,26 +2878,31 @@ including comments and whitespace.") (license license:expat))) (define-public ruby-tdiff - (package - (name "ruby-tdiff") - (version "0.3.3") - (source (origin - (method url-fetch) - (uri (rubygems-uri "tdiff" version)) - (sha256 - (base32 - "0k41jbvn8qq4mgrixnhlk742b971d136i8wpbcv2cczvi22xpc86")))) - (build-system ruby-build-system) - (native-inputs - `(("ruby-rspec-2" ,ruby-rspec-2) - ("ruby-yard" ,ruby-yard) - ("ruby-rubygems-tasks" ,ruby-rubygems-tasks))) - (synopsis "Calculate the differences between two tree-like structures") - (description - "This library provides functions to calculate the differences between two + ;; Use a newer than released snapshot so that rspec-2 is not required. + (let ((commit "b662a6048f08abc45c1a834e5f34dd1c662935e2")) + (package + (name "ruby-tdiff") + (version (string-append "0.3.3-1." (string-take commit 8))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/postmodern/tdiff.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0n3gq8rx49f7ln6zqlshqfg2mgqyy30rsdjlnki5mv307ykc7ad4")))) + (build-system ruby-build-system) + (native-inputs + `(("ruby-rspec" ,ruby-rspec) + ("ruby-yard" ,ruby-yard) + ("ruby-rubygems-tasks" ,ruby-rubygems-tasks))) + (synopsis "Calculate the differences between two tree-like structures") + (description + "This library provides functions to calculate the differences between two tree-like structures. It is similar to Ruby's built-in @code{TSort} module.") - (home-page "https://github.com/postmodern/tdiff") - (license license:expat))) + (home-page "https://github.com/postmodern/tdiff") + (license license:expat)))) (define-public ruby-nokogiri-diff (package From 5b0c223ae3470d8f9433d6301eeb9eeaf9193b90 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sun, 6 Aug 2017 16:52:40 +1000 Subject: [PATCH 0797/1227] gnu: ruby-nokogiri-diff: Update to 0.2.0-1.a38491e4. * gnu/packages/ruby.scm (ruby-nokogiri-diff): Update to 0.2.0-1.a38491e4. --- gnu/packages/ruby.scm | 49 ++++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 22 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 4c8a6f2e5c..29677dc025 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2905,29 +2905,34 @@ tree-like structures. It is similar to Ruby's built-in @code{TSort} module.") (license license:expat)))) (define-public ruby-nokogiri-diff - (package - (name "ruby-nokogiri-diff") - (version "0.2.0") - (source (origin - (method url-fetch) - (uri (rubygems-uri "nokogiri-diff" version)) - (sha256 - (base32 - "0njr1s42war0bj1axb2psjvk49l74a8wzr799wckqqdcb6n51lc1")))) - (build-system ruby-build-system) - (propagated-inputs - `(("ruby-tdiff" ,ruby-tdiff) - ("ruby-nokogiri" ,ruby-nokogiri))) - (native-inputs - `(("ruby-rspec-2" ,ruby-rspec-2) - ("ruby-yard" ,ruby-yard) - ("ruby-rubygems-tasks" ,ruby-rubygems-tasks))) - (synopsis "Calculate the differences between two XML/HTML documents") - (description - "@code{Nokogiri::Diff} adds the ability to calculate the + ;; Use a newer than released snapshot so that rspec-2 is not required. + (let ((commit "a38491e4d8709b7406f2cae11a50226d927d06f5")) + (package + (name "ruby-nokogiri-diff") + (version (string-append "0.2.0-1." (string-take commit 8))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/postmodern/nokogiri-diff.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1ah2sfjh9n1p0ln2wkqzfl448ml7j4zfy6dhp1qgzq2m41php6rf")))) + (build-system ruby-build-system) + (propagated-inputs + `(("ruby-tdiff" ,ruby-tdiff) + ("ruby-nokogiri" ,ruby-nokogiri))) + (native-inputs + `(("ruby-rspec" ,ruby-rspec) + ("ruby-yard" ,ruby-yard) + ("ruby-rubygems-tasks" ,ruby-rubygems-tasks))) + (synopsis "Calculate the differences between two XML/HTML documents") + (description + "@code{Nokogiri::Diff} adds the ability to calculate the differences (added or removed nodes) between two XML/HTML documents.") - (home-page "https://github.com/postmodern/nokogiri-diff") - (license license:expat))) + (home-page "https://github.com/postmodern/nokogiri-diff") + (license license:expat)))) (define-public ruby-rack (package From 63755fcd65bc76240cf447aa4f6b282cff76ff57 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 7 Aug 2017 18:39:44 +1000 Subject: [PATCH 0798/1227] gnu: ruby-puma: Update to 3.9.1. * gnu/packages/ruby.scm (ruby-puma): Update to 3.9.1. [source]: Remove patch. [arguments]: Disable tests. [native-inputs]: Remove field. * gnu/packages/patches/ruby-puma-ignore-broken-test.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../ruby-puma-ignore-broken-test.patch | 13 ----------- gnu/packages/ruby.scm | 23 ++++--------------- 3 files changed, 4 insertions(+), 33 deletions(-) delete mode 100644 gnu/packages/patches/ruby-puma-ignore-broken-test.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8c00b00208..090ce77c76 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1006,7 +1006,6 @@ dist_patch_DATA = \ %D%/packages/patches/rsem-makefile.patch \ %D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \ %D%/packages/patches/ruby-concurrent-test-arm.patch \ - %D%/packages/patches/ruby-puma-ignore-broken-test.patch \ %D%/packages/patches/ruby-rack-ignore-failing-test.patch \ %D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\ %D%/packages/patches/rxvt-unicode-escape-sequences.patch \ diff --git a/gnu/packages/patches/ruby-puma-ignore-broken-test.patch b/gnu/packages/patches/ruby-puma-ignore-broken-test.patch deleted file mode 100644 index 8961ffa4ca..0000000000 --- a/gnu/packages/patches/ruby-puma-ignore-broken-test.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/test/test_cli.rb b/test/test_cli.rb -index 9c515c6..6bd439f 100644 ---- a/test/test_cli.rb -+++ b/test/test_cli.rb -@@ -88,7 +88,7 @@ class TestCLI < Test::Unit::TestCase - s << "GET /stats HTTP/1.0\r\n\r\n" - body = s.read - -- assert_match(/\{ "workers": 2, "phase": 0, "booted_workers": 0, "old_workers": 0, "worker_status": \[\{ "pid": \d+, "index": 0, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \},\{ "pid": \d+, "index": 1, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \}\] \}/, body.split("\r\n").last) -+ #assert_match(/\{ "workers": 2, "phase": 0, "booted_workers": 0, "old_workers": 0, "worker_status": \[\{ "pid": \d+, "index": 0, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \},\{ "pid": \d+, "index": 1, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \}\] \}/, body.split("\r\n").last) - - # wait until the first status ping has come through - sleep 6 diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 29677dc025..7d9d51f490 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -4029,7 +4029,7 @@ part of the Prawn PDF generator.") (define-public ruby-puma (package (name "ruby-puma") - (version "3.6.0") + (version "3.9.1") (source (origin (method url-fetch) @@ -4039,32 +4039,17 @@ part of the Prawn PDF generator.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "08aws79n9slcr50d9lwm011cp1pxvr1409c2jmyjxywvrc0a30v1")) - ;; Ignore broken tests reported upstream. - ;; https://github.com/puma/puma/issues/995 - ;; https://github.com/puma/puma/issues/1044 - (patches (search-patches "ruby-puma-ignore-broken-test.patch")))) + "03pifga841h17brh4vgia8i2ybh3cmsyg0dbybzdf6dq51wzcxdx")))) (build-system ruby-build-system) (arguments - `(#:phases + `(#:tests? #f ; Tests require an out-dated version of minitest. + #:phases (modify-phases %standard-phases - (add-after 'unpack 'delete-integration-tests - (lambda _ - ;; One broken test in this file cannot be easily removed in - ;; isolation, it probably causes race conditions. So we delete - ;; the entire file. - (delete-file "test/test_integration.rb") - #t)) (add-before 'build 'fix-gemspec (lambda _ (substitute* "puma.gemspec" (("git ls-files") "find * |sort")) #t))))) - (native-inputs - `(("ruby-hoe" ,ruby-hoe) - ("ruby-rake-compiler" ,ruby-rake-compiler) - ("ruby-hoe-git" ,ruby-hoe-git) - ("ruby-rack" ,ruby-rack))) (synopsis "Simple, concurrent HTTP server for Ruby/Rack") (description "Puma is a simple, fast, threaded, and highly concurrent HTTP 1.1 server From c36e27d504fa9c1529dd2768364b7747ff45f6de Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 7 Aug 2017 21:30:47 -0400 Subject: [PATCH 0799/1227] gnu: linux-libre@4.1: Update to 4.1.43. * gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.43. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index ed53b79ee9..dca3421ddf 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -386,8 +386,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.1 - (make-linux-libre "4.1.42" - "1g5jhn7cm6ixn7w8ciqm6qgxv7k1jg50v6k05hsvzvrqfpaxqlbz" + (make-linux-libre "4.1.43" + "0ycqmvczj7lm7czilnwpyp14n2lzilyx7m43rsq1qdm2m5rp4q2w" %intel-compatible-systems #:configuration-file kernel-config)) From c56b08b1e5c3a07fd6de43bd75cd21a81742af7c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 7 Aug 2017 21:31:36 -0400 Subject: [PATCH 0800/1227] gnu: linux-libre@4.4: Update to 4.4.80. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.80. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index dca3421ddf..a4f4c0559b 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -380,8 +380,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.79" - "03x1nc2fxmh29sf2fbsqzmw8qrdzv5gakr9xrg1shxh31c6xr3xr" + (make-linux-libre "4.4.80" + "1s0d7lsapghgk6jh6igx2fhzj1f6nwmvhqrl2hdwf3dx14z93mp2" %intel-compatible-systems #:configuration-file kernel-config)) From 99ccc74725e023ffcb1d7b8fcf233725c7139566 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 7 Aug 2017 21:32:13 -0400 Subject: [PATCH 0801/1227] gnu: linux-libre@4.9: Update to 4.9.41. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.41. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a4f4c0559b..5a925284ed 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -374,8 +374,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.40" - "1qaqi2dcydyxw79yj9pa7yxf13ss4rng7bgg0i1dl63c3g7qjgcz" + (make-linux-libre "4.9.41" + "1mkx7rvcny8b0yjkzd8zc53d15h1w8y75m0x6jx0dz3r9y3k0nql" %intel-compatible-systems #:configuration-file kernel-config)) From 4f4134c26d69349a24aa4bbd525bb9367a951a9a Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 7 Aug 2017 21:33:03 -0400 Subject: [PATCH 0802/1227] gnu: linux-libre: Update to 4.12.5. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.5. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 5a925284ed..7edb5793fc 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -364,8 +364,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.4") -(define %linux-libre-hash "13c6ka4fhzi41bjlssbkz84hkag7knqpvfyp2jjhm3wm25r4lhw8") +(define %linux-libre-version "4.12.5") +(define %linux-libre-hash "0kybil1h07fwl9rb0rvmp0w356hi2v1azw603r18vh9x93i8b8xi") (define-public linux-libre (make-linux-libre %linux-libre-version From 7fae2063f8e118d50050dc3dde57941414bc2976 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 16:26:31 +0200 Subject: [PATCH 0803/1227] =?UTF-8?q?gnu:=20sudo:=20Use=20=E2=80=98modify-?= =?UTF-8?q?phases=E2=80=99=20syntax.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/admin.scm (sudo)[arguments]: Use ‘modify-phases’. --- gnu/packages/admin.scm | 48 +++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c4aa108f89..c0e5269f69 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -13,7 +13,7 @@ ;;; Copyright © 2016 Peter Feigl ;;; Copyright © 2016 John J. Foerch ;;; Copyright © 2016, 2017 ng0 -;;; Copyright © 2016 Tobias Geerinckx-Rice +;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice ;;; Copyright © 2016 John Darrington ;;; Copyright © 2017 Ben Sturmfels ;;; Copyright © 2017 Ethan R. Jones @@ -849,29 +849,29 @@ system administrator.") ;; Avoid non-determinism; see . #:parallel-build? #f - #:phases (alist-cons-before - 'configure 'pre-configure - (lambda _ - (substitute* "src/sudo_usage.h.in" - ;; Do not capture 'configure' arguments since we would - ;; unduly retain references, and also because the - ;; CPPFLAGS above would close the string literal - ;; prematurely. - (("@CONFIGURE_ARGS@") "\"\"")) - (substitute* (find-files "." "Makefile\\.in") - (("-o [[:graph:]]+ -g [[:graph:]]+") - ;; Allow installation as non-root. - "") - (("^install: (.*)install-sudoers(.*)" _ before after) - ;; Don't try to create /etc/sudoers. - (string-append "install: " before after "\n")) - (("\\$\\(DESTDIR\\)\\$\\(rundir\\)") - ;; Don't try to create /run/sudo. - "$(TMPDIR)/dummy") - (("\\$\\(DESTDIR\\)\\$\\(vardir\\)") - ;; Don't try to create /var/db/sudo. - "$(TMPDIR)/dummy"))) - %standard-phases) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda _ + (substitute* "src/sudo_usage.h.in" + ;; Do not capture 'configure' arguments since we would + ;; unduly retain references, and also because the + ;; CPPFLAGS above would close the string literal + ;; prematurely. + (("@CONFIGURE_ARGS@") "\"\"")) + (substitute* (find-files "." "Makefile\\.in") + (("-o [[:graph:]]+ -g [[:graph:]]+") + ;; Allow installation as non-root. + "") + (("^install: (.*)install-sudoers(.*)" _ before after) + ;; Don't try to create /etc/sudoers. + (string-append "install: " before after "\n")) + (("\\$\\(DESTDIR\\)\\$\\(rundir\\)") + ;; Don't try to create /run/sudo. + "$(TMPDIR)/dummy") + (("\\$\\(DESTDIR\\)\\$\\(vardir\\)") + ;; Don't try to create /var/db/sudo. + "$(TMPDIR)/dummy"))))) ;; XXX: The 'testsudoers' test series expects user 'root' to exist, but ;; the chroot's /etc/passwd doesn't have it. Turn off the tests. From d459524713623041a662443afbee3a8c73d9bf0a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 8 Aug 2017 04:53:58 +0200 Subject: [PATCH 0804/1227] gnu: moreutils: Update to 0.61. * gnu/packages/moreutils.scm (moreutils): Update to 0.61. --- gnu/packages/moreutils.scm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gnu/packages/moreutils.scm b/gnu/packages/moreutils.scm index b343a8db6d..03ffa8f992 100644 --- a/gnu/packages/moreutils.scm +++ b/gnu/packages/moreutils.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2016, 2017 Efraim Flashner -;;; Copyright © 2016 Tobias Geerinckx-Rice +;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,21 +30,20 @@ (define-public moreutils (package (name "moreutils") - (version "0.60") + (version "0.61") (source (origin (method url-fetch) (uri (list (string-append - "mirror://debian/pool/main/m/moreutils/moreutils_" - version ".orig.tar.xz") - ;; The main Debian mirrors only hold the current packages. + "https://git.joeyh.name/index.cgi/moreutils.git/snapshot/" + name "-" version ".tar.gz") (string-append - "http://snapshot.debian.org/archive/debian-debug/20170109T210531Z" - "/pool/main/m/moreutils/moreutils_0.60.orig.tar.xz"))) + "http://drabczyk.org/" + name "-" version ".tar.gz"))) (sha256 (base32 - "1i8pphg5i5y4x1s1hz73gqhispgspr13bysmk9vh7l6jrfx1hbg4")))) + "12rhzy8hw8vljlf10b7ys9zky0p94fdvd6ihq8w8cnkia4rd6izb")))) (build-system gnu-build-system) ;; For building the manual pages. (native-inputs From 625761a5025131606bf40b22d056aa5a3912533c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 03:36:52 +0200 Subject: [PATCH 0805/1227] gnu: aspell-dict-en: Update to 2017.01.22-0. Add missing copyright line for 2016. * gnu/packages/aspell.scm (aspell-dict-en): Update to 2017.01.22-0. --- gnu/packages/aspell.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/aspell.scm b/gnu/packages/aspell.scm index 509d428f64..3469c7a3ec 100644 --- a/gnu/packages/aspell.scm +++ b/gnu/packages/aspell.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Christopher Andersson ;;; Copyright © 2016 Theodoros Foradis +;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -123,10 +124,10 @@ dictionaries, including personal ones.") (define-public aspell-dict-en (aspell-dictionary "en" "English" - #:version "2016.11.20-0" + #:version "2017.01.22-0" #:sha256 (base32 - "1496jnhh2jvhkzcj0p4vy89bcs4g5wz6a76m33vw4dhchn5xm9jw"))) + "1qamzpw1fsnn5n9jpsnnnzqj1a0m0xvsikmkdp5a6pmb7sp3ziwk"))) (define-public aspell-dict-eo (aspell-dictionary "eo" "Esperanto" From fc3560fff11571d33c6d979bda4270ba2df2896f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 8 Aug 2017 05:13:44 +0200 Subject: [PATCH 0806/1227] gnu: hunspell: Update home page. * gnu/packages/libreoffice.scm (hunspell)[home-page]: Update it. --- gnu/packages/libreoffice.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index f7775ff4a0..a6f2667cba 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -707,7 +707,7 @@ Zoner Draw version 4 and 5.") (build-system gnu-build-system) (inputs `(("perl" ,perl))) - (home-page "http://hunspell.sourceforge.net/") + (home-page "https://hunspell.github.io/") (synopsis "Spell checker") (description "Hunspell is a spell checker and morphological analyzer library and program designed for languages with rich morphology and complex From a40af5d0ad707906815ffdd48bd2aec89b4cc4e9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 8 Aug 2017 05:12:53 +0200 Subject: [PATCH 0807/1227] gnu: hunspell: Update to 1.6.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/libreoffice.scm (hunspell): Update to 1.6.1. [native-inputs]: Add autoconf, automake, and libtool. [arguments]: Add ‘bootstrap’ phase. --- gnu/packages/libreoffice.scm | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index a6f2667cba..5faa8db7e5 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2017 Alex Griffin ;;; Copyright © 2017 Thomas Danckaert +;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -695,18 +696,28 @@ Zoner Draw version 4 and 5.") (define-public hunspell (package (name "hunspell") - (version "1.5.4") + (version "1.6.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/hunspell/hunspell/archive/v" version ".tar.gz")) (sha256 (base32 - "0ngwk18dwd8p5a5f20h2jlgrz9wbc1k189mmmprb2zmqwfi02b45")) + "0j9c20sj7bgd6f77193g1ihy8w905byk2gdhdc0r9dsh7irr7x9h")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) (inputs `(("perl" ,perl))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + (zero? (system* "autoreconf" "-vfi"))))))) (home-page "https://hunspell.github.io/") (synopsis "Spell checker") (description "Hunspell is a spell checker and morphological analyzer From b998781d241234fe5a5a41721afe4db5001bdc1f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 7 Aug 2017 06:23:47 +0200 Subject: [PATCH 0808/1227] gnu: pciutils: Update to 3.5.5. * gnu/packages/pciutils.scm (pciutils): Update to 3.5.5. --- gnu/packages/pciutils.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index 7c9856468d..a3d85e8386 100644 --- a/gnu/packages/pciutils.scm +++ b/gnu/packages/pciutils.scm @@ -30,7 +30,7 @@ (define-public pciutils (package (name "pciutils") - (version "3.5.4") + (version "3.5.5") (source (origin (method url-fetch) (uri (string-append @@ -38,7 +38,7 @@ version ".tar.xz")) (sha256 (base32 - "0rpy7kkb2y89wmbcbfjjjxsk2x89v5xxhxib4vpl131ip5m3qab4")))) + "1x9rb5y82rzg8b67lh42yy9ag9xr7kzibz566lffd41g37xghqhx")))) (build-system gnu-build-system) (arguments '(#:phases From cc36165efa073842bab006c77d06dabcf90bc21e Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 8 Aug 2017 21:52:31 +1000 Subject: [PATCH 0809/1227] gnu: ruby-activesupport: Update to 5.1.3. * gnu/packages/ruby.scm (ruby-activesupport): Update to 5.1.3. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 7d9d51f490..02cc6e6fde 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2565,14 +2565,14 @@ you about the changes.") (define-public ruby-activesupport (package (name "ruby-activesupport") - (version "5.0.0") + (version "5.1.3") (source (origin (method url-fetch) (uri (rubygems-uri "activesupport" version)) (sha256 (base32 - "0k7zhnz0aw1ym8phs10r85f91ja45vsd058fm9v0h2k0igw12cpf")))) + "16r18n6b1nlky0xx2lw8c1f15gr2vm34xz5g4byjcxf88m1s07xh")))) (build-system ruby-build-system) (arguments `(#:phases From b0a21b56db6c0e0db3cf5183509f860bae697712 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 8 Aug 2017 17:41:14 +0300 Subject: [PATCH 0810/1227] gnu: gegl: Fix building on aarch64. * gnu/packages/gimp.scm (gegl)[arguments]: Add '-lm' configure-flag. --- gnu/packages/gimp.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index 362e2047fa..40f39b29aa 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015 Ludovic Courtès ;;; Copyright © 2016 Ricardo Wurmus -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -86,6 +86,7 @@ provided as well as the framework to add new color models and data types.") `(;; More than just the one test disabled below now fails; disable them ;; all according to the rationale given below. #:tests? #f + #:configure-flags '("LDFLAGS=-lm") #:phases (alist-cons-before 'build 'pre-build From 3616ff51b33b94c388413f9a2790cab7bbbe8e72 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 8 Aug 2017 17:43:05 +0300 Subject: [PATCH 0811/1227] gnu: gegl: Use 'modify-phases' syntax. * gnu/packages/gimp.scm (gegl)[arguments]: Use the 'modify-phases' syntax. --- gnu/packages/gimp.scm | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index 40f39b29aa..cf9038c0a6 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -83,27 +83,27 @@ provided as well as the framework to add new color models and data types.") (patches (search-patches "gegl-CVE-2012-4433.patch")))) (build-system gnu-build-system) (arguments - `(;; More than just the one test disabled below now fails; disable them + '(;; More than just the one test disabled below now fails; disable them ;; all according to the rationale given below. #:tests? #f #:configure-flags '("LDFLAGS=-lm") #:phases - (alist-cons-before - 'build 'pre-build - (lambda _ - ;; This test program seems to crash on exit. Specifically, whilst - ;; g_object_unreffing bufferA and bufferB - This seems to be a bug - ;; in the destructor. This is just a test program so will not have - ;; any wider effect, although might be hiding another problem. - ;; According to advice received on irc.gimp.org#gegl although 0.2.0 - ;; is the latest released version, any bug reports against it will - ;; be ignored. So we are on our own. - (substitute* "tools/img_cmp.c" - (("g_object_unref \\(buffer.\\);") "")) + (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda _ + ;; This test program seems to crash on exit. Specifically, whilst + ;; g_object_unreffing bufferA and bufferB - This seems to be a bug + ;; in the destructor. This is just a test program so will not have + ;; any wider effect, although might be hiding another problem. + ;; According to advice received on irc.gimp.org#gegl although 0.2.0 + ;; is the latest released version, any bug reports against it will + ;; be ignored. So we are on our own. + (substitute* "tools/img_cmp.c" + (("g_object_unref \\(buffer.\\);") "")) - (substitute* "tests/compositions/Makefile" - (("/bin/sh") (which "sh")))) - %standard-phases))) + (substitute* "tests/compositions/Makefile" + (("/bin/sh") (which "sh"))) + #t))))) (inputs `(("babl" ,babl) ("glib" ,glib) From 65831c6425bf9e82c665f2fe4d0803a483f888a1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 8 Aug 2017 18:37:55 +0300 Subject: [PATCH 0812/1227] gnu: babl: Update to 0.1.28. * gnu/packages/gimp.scm (babl): Update to 0.1.28. --- gnu/packages/gimp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index cf9038c0a6..13d2a68dba 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -43,7 +43,7 @@ (define-public babl (package (name "babl") - (version "0.1.18") + (version "0.1.28") (source (origin (method url-fetch) (uri (list (string-append "https://download.gimp.org/pub/babl/" @@ -54,7 +54,7 @@ version ".tar.bz2"))) (sha256 (base32 - "1ygvnq22pf0zvf3bj7h67vvbpz7b8hhjvrr79ribws7sr5dljfj8")))) + "00w6xfcv960c98qvxv81gcbj8l1jiab9sggmdl77m19awwiyvwv3")))) (build-system gnu-build-system) (home-page "http://gegl.org/babl/") (synopsis "Image pixel format conversion library") From dc7b3e56337ee9d8dcd8fe7d5cab71ef536d024f Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 5 Aug 2017 22:16:47 +0100 Subject: [PATCH 0813/1227] services: herd: Fix matching ok responses from shepherd service. Previously the match expression case for a successful response (where error is #f) required that the result component contained a list with a single element. As far as I see when looking at the responses from the shepherd, this is not normally the case. Therefore, to avoid treating successful responses as errors, make the match requirement more permissive, accepting any value. * gnu/services/herd.scm (invoke-action): Change match condition for ok responses. --- gnu/services/herd.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/herd.scm b/gnu/services/herd.scm index f8d60a4802..49400aba47 100644 --- a/gnu/services/herd.scm +++ b/gnu/services/herd.scm @@ -146,7 +146,7 @@ result. Otherwise return #f." (force-output sock) (match (read sock) - (('reply ('version 0 _ ...) ('result (result)) ('error #f) + (('reply ('version 0 _ ...) ('result result) ('error #f) ('messages messages)) (for-each display-message messages) (cont result)) From 0642838b2e9ab2bd988dccb64b9e1130006347bf Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 5 Aug 2017 22:24:18 +0100 Subject: [PATCH 0814/1227] services: herd: Add a stop-service procedure. * gnu/services/herd.scm (stop-service): New procedure. --- gnu/services/herd.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/services/herd.scm b/gnu/services/herd.scm index 49400aba47..e16d51b9d0 100644 --- a/gnu/services/herd.scm +++ b/gnu/services/herd.scm @@ -49,7 +49,8 @@ unload-services unload-service load-services - start-service)) + start-service + stop-service)) ;;; Commentary: ;;; @@ -222,6 +223,10 @@ returns a shepherd object." (with-shepherd-action name ('start) result result)) +(define (stop-service name) + (with-shepherd-action name ('stop) result + result)) + ;; Local Variables: ;; eval: (put 'alist-let* 'scheme-indent-function 2) ;; eval: (put 'with-shepherd 'scheme-indent-function 1) From 9bb47d7df855e81c70923f26934c4a75d8140df5 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Fri, 28 Jul 2017 14:52:45 +0100 Subject: [PATCH 0815/1227] gnu: 0ad: Update to 0.0.22-alpha. * gnu/packages/games.scm (0ad-data, 0ad): Update to 0.0.22-alpha. --- gnu/packages/games.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 408b3b46d0..9f32e9f8e5 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -4384,7 +4384,7 @@ fight against their plot and save his fellow rabbits from slavery.") (define-public 0ad-data (package (name "0ad-data") - (version "0.0.21-alpha") + (version "0.0.22-alpha") (source (origin (method url-fetch) @@ -4393,7 +4393,7 @@ fight against their plot and save his fellow rabbits from slavery.") (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "15xadyrpvq27lm9p1ny7bcmmv56m16h3xadbkdx69gfkzxc3razk")) + "0vknk9ay9h2p34r7mym2g066f3s3c5d5vmap0ckcs5b86h5cscjc")) (modules '((guix build utils))) (snippet #~(begin @@ -4438,7 +4438,7 @@ fight against their plot and save his fellow rabbits from slavery.") (define-public 0ad (package (name "0ad") - (version "0.0.21-alpha") + (version "0.0.22-alpha") (source (origin (method url-fetch) @@ -4447,7 +4447,7 @@ fight against their plot and save his fellow rabbits from slavery.") (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "1kw3hqnr737ipx4f03khz3hvsh3ha7r8iy9njppk2faa53j27gln")) + "1cgmr4g5g9wv36v7ylbrvqhsjwgcsdgbqwc8zlqmnayk9zgkdpgx")) ;; A snippet here would cause a build failure because of timestamps ;; reset. See https://bugs.gnu.org/26734. )) From f032d0be9c3e87116efdcfe2226030b13e794e7a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 00:49:35 +0200 Subject: [PATCH 0816/1227] gnu: Use HTTPS for gnome.org and subdomains. * gnu/packages/fonts.scm (font-bitstream-vera)[home-page]: Use HTTPS. * gnu/packages/glib.scm (glib)[home-page]: Likewise. * gnu/packages/gnome.scm (gcr, libgnome-keyring, gnome-keyring, evince) (gnome-icon-theme, libgsf, gnome-mime-data, vala, vte, python2-rsvg) (glib-networking, gnome-settings-daemon, libchamplain, grilo, grilo-plugins) (gjs, zenity, mutter, network-manager, network-manager-applet, gdm) [home-page]: Likewise. * gnu/packages/gtk.scm (gtk-engines, murrine)[home-page]: Likewise. --- gnu/packages/fonts.scm | 2 +- gnu/packages/glib.scm | 2 +- gnu/packages/gnome.scm | 42 +++++++++++++++++++++--------------------- gnu/packages/gtk.scm | 4 ++-- 4 files changed, 25 insertions(+), 25 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index e421b2c6ab..b01d39c7e2 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -140,7 +140,7 @@ provide serif, sans and monospaced variants.") (base32 "1p3qs51x5327gnk71yq8cvmxc6wgx79sqxfvxcv80cdvgggjfnyv")))) (build-system font-build-system) - (home-page "http://www.gnome.org/fonts/") + (home-page "https://www.gnome.org/fonts/") (synopsis "Bitstream Vera sans-serif typeface") (description "Vera is a sans-serif typeface from Bitstream, Inc. This package provides the TrueType (TTF) files.") diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index fcd1daf5e8..8425b10e02 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -283,7 +283,7 @@ shared NFS home directories.") "GLib provides data structure handling for C, portability wrappers, and interfaces for such runtime functionality as an event loop, threads, dynamic loading, and an object system.") - (home-page "http://developer.gnome.org/glib/") + (home-page "https://developer.gnome.org/glib/") (license license:lgpl2.0+))) ; some files are under lgpl2.1+ (define gobject-introspection diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index d9d3fe7939..5e852d1a61 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -578,7 +578,7 @@ and keep up to date translations of documentation.") `(("p11-kit" ,p11-kit) ("glib" ,glib) ("gtk+" ,gtk+))) - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (synopsis "Libraries for displaying certificates and accessing key stores") (description "The GCR package contains libraries used for displaying certificates and @@ -609,7 +609,7 @@ GNOME Desktop.") (propagated-inputs ;; Referred to in .h files and .pc. `(("glib" ,glib))) - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (synopsis "Accessing passwords from the GNOME keyring") (description "Client library to access passwords from the GNOME keyring.") @@ -673,7 +673,7 @@ GNOME Desktop.") ("libxslt" ,libxslt) ;for documentation ("docbook-xml" ,docbook-xml-4.2) ("docbook-xsl" ,docbook-xsl))) - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (synopsis "Daemon to store passwords and encryption keys") (description "gnome-keyring is a program that keeps passwords and other secrets for @@ -744,7 +744,7 @@ forgotten when the session ends.") ("pkg-config" ,pkg-config) ("xmllint" ,libxml2))) (home-page - "http://www.gnome.org/projects/evince/") + "https://www.gnome.org/projects/evince/") (synopsis "GNOME's document viewer") (description "Evince is a document viewer for multiple document formats. It @@ -843,7 +843,7 @@ GNOME and KDE desktops to the icon names proposed in the specification.") `(("icon-naming-utils" ,icon-naming-utils) ("intltool" ,intltool) ("pkg-config" ,pkg-config))) - (home-page "http://art.gnome.org/") + (home-page "https://art.gnome.org/") (synopsis "GNOME icon theme") (description @@ -1142,7 +1142,7 @@ XML/CSS rendering engine.") `(("gdk-pixbuf" ,gdk-pixbuf) ("glib" ,glib) ("libxml2" ,libxml2))) - (home-page "http://www.gnome.org/projects/libgsf") + (home-page "https://www.gnome.org/projects/libgsf") (synopsis "GNOME's Structured File Library") (description "Libgsf aims to provide an efficient extensible I/O abstraction for @@ -1366,7 +1366,7 @@ is intended for user preferences; not arbitrary data storage.") (native-inputs `(("perl" ,perl) ("intltool" ,intltool))) - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (synopsis "Base MIME and Application database for GNOME") (description "GNOME Mime Data is a module which contains the base MIME and Application database for GNOME. The data stored by this module is @@ -1984,7 +1984,7 @@ passwords in the GNOME keyring.") ("gobject-introspection" ,gobject-introspection))) ; for gir tests (propagated-inputs `(("glib" ,glib))) ; required by libvala-0.26.pc - (home-page "http://live.gnome.org/Vala/") + (home-page "https://live.gnome.org/Vala/") (synopsis "Compiler for the GObject type system") (description "Vala is a programming language that aims to bring modern programming @@ -2018,7 +2018,7 @@ libraries written in C.") `(("gtk+" ,gtk+) ;required by vte-2.91.pc ("gnutls" ,gnutls) ;ditto ("pcre2" ,pcre2))) ;ditto - (home-page "http://www.gnome.org/") + (home-page "https://www.gnome.org/") (synopsis "Virtual Terminal Emulator") (description "VTE is a library (libvte) implementing a terminal emulator widget for @@ -2288,7 +2288,7 @@ indicators etc).") `(("python" ,python-2) ("python2-pygtk" ,python2-pygtk) ("librsvg" ,librsvg))) - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (synopsis "Python bindings to librsvg") (description "This packages provides Python bindings to librsvg, the SVG rendering @@ -2339,7 +2339,7 @@ library.") ("gnutls" ,gnutls) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("p11-kit" ,p11-kit))) - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (synopsis "Network-related GIO modules") (description "This package contains various network related extensions for the GIO @@ -2961,7 +2961,7 @@ services for numerous locations.") ("librsvg" ,librsvg) ("xf86-input-wacom" ,xf86-input-wacom) ("network-manager" ,network-manager))) - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (synopsis "GNOME settings daemon") (description "This package contains the daemon responsible for setting the various @@ -3284,7 +3284,7 @@ GL based interactive canvas library.") ("cairo" ,cairo) ("gtk+3" ,gtk+) ("glib" ,glib))) - (home-page "http://projects.gnome.org/libchamplain/") + (home-page "https://projects.gnome.org/libchamplain/") (synopsis "C library providing a ClutterActor to display maps") (description "libchamplain is a C library providing a ClutterActor to display maps. @@ -3453,7 +3453,7 @@ as possible!") (variable "GRL_PLUGIN_PATH") (files (list (string-append "lib/grilo-" (version-major+minor version))))))) - (home-page "http://live.gnome.org/Grilo") + (home-page "https://live.gnome.org/Grilo") (synopsis "Framework for discovering and browsing media") (description "Grilo is a framework focused on making media discovery and browsing easy @@ -3506,7 +3506,7 @@ for application developers.") ;; with: "assertion failed: (source)". Outside of the build container, ;; most tests succeed. #:tests? #f)) - (home-page "http://live.gnome.org/Grilo") + (home-page "https://live.gnome.org/Grilo") (synopsis "Plugins for the Grilo media discovery library") (description "Grilo is a framework focused on making media discovery and browsing easy @@ -4505,7 +4505,7 @@ configuration program to choose applications starting on login.") `(("gtk+" ,gtk+) ("readline" ,readline))) (synopsis "Javascript bindings for GNOME") - (home-page "http://live.gnome.org/Gjs") + (home-page "https://live.gnome.org/Gjs") (description "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey javascript engine and the GObject introspection framework.") @@ -4592,7 +4592,7 @@ powerful general purpose text editor.") `(("libnotify" ,libnotify) ("webkitgtk" ,webkitgtk))) (synopsis "Display graphical dialog boxes from shell scripts") - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (description "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you to display dialog boxes from the commandline and shell scripts.") @@ -4690,7 +4690,7 @@ to display dialog boxes from the commandline and shell scripts.") ("xkeyboard-config" ,xkeyboard-config) ("zenity" ,zenity))) (synopsis "Window and compositing manager") - (home-page "http://www.gnome.org") + (home-page "https://www.gnome.org") (description "Mutter is a window and compositing manager that displays and manages your desktop via OpenGL. Mutter combines a sophisticated display engine using the @@ -4975,7 +4975,7 @@ users.") ("util-linux" ,util-linux) ("elogind" ,elogind))) (synopsis "Network connection manager") - (home-page "http://www.gnome.org/projects/NetworkManager/") + (home-page "https://www.gnome.org/projects/NetworkManager/") (description "NetworkManager is a system network service that manages your network devices and connections, attempting to keep active network connectivity when @@ -5038,7 +5038,7 @@ services.") ("jansson" ,jansson) ; for team support ("modem-manager" ,modem-manager))) (synopsis "Applet for managing network connections") - (home-page "http://www.gnome.org/projects/NetworkManager/") + (home-page "https://www.gnome.org/projects/NetworkManager/") (description "This package contains a systray applet for NetworkManager. It displays the available networks and allows users to easily switch between them.") @@ -5139,7 +5139,7 @@ libxml2.") ("libcanberra" ,libcanberra) ("linux-pam" ,linux-pam))) (synopsis "Display manager for GNOME") - (home-page "http://wiki.gnome.org/Projects/GDM/") + (home-page "https://wiki.gnome.org/Projects/GDM/") (description "GNOME Display Manager is a system service that is responsible for providing graphical log-ins and managing local and remote displays.") diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index b2aa6ecff5..e942f51719 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1355,7 +1355,7 @@ can also be used to document application code.") (inputs ;; Don't propagate GTK+ to reduce "profile pollution". `(("gtk+" ,gtk+-2))) ; required by gtk-engines-2.pc - (home-page "http://live.gnome.org/GnomeArt") + (home-page "https://live.gnome.org/GnomeArt") (synopsis "Theming engines for GTK+ 2.x") (description "This package contains the standard GTK+ 2.x theming engines including @@ -1385,7 +1385,7 @@ Redmond95 and ThinIce.") ("intltool" ,intltool))) (propagated-inputs `(("gtk+" ,gtk+-2))) - (home-page "http://live.gnome.org/GnomeArt") + (home-page "https://live.gnome.org/GnomeArt") (synopsis "Cairo-based theming engine for GTK+ 2.x") (description "Murrine is a cairo-based GTK+ theming engine. It is named after the From e2bf423ab4b2a8f9c1d7fee1f66d8107e23a210d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 8 Aug 2017 23:12:35 +0200 Subject: [PATCH 0817/1227] gnu: brasero: Update to 3.12.2. * gnu/packages/gnome.scm (brasero): Update to 3.12.2. --- gnu/packages/gnome.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 5e852d1a61..9d3f35229f 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -141,7 +141,7 @@ (define-public brasero (package (name "brasero") - (version "3.12.1") + (version "3.12.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -149,7 +149,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "09vi2hyhl0bz7imv3ky6h7x5m3d546n968wcghydwrkvwm9ylpls")))) + "0h90y674j26rvjahb8cc0w79zx477rb6zaqcj26wzvq8kmpic8k8")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags (list @@ -165,7 +165,7 @@ (lambda* (#:key inputs #:allow-other-keys) (substitute* "plugins/growisofs/burn-growisofs.c" (("\"growisofs") (string-append "\"" (which "growisofs")))) - #t ))))) + #t))))) (propagated-inputs `(("hicolor-icon-theme" ,hicolor-icon-theme))) (native-inputs From 9099bedfeae4ecfdbba967fece4f0850973e02f5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 8 Aug 2017 23:50:34 +0200 Subject: [PATCH 0818/1227] gnu: gnumeric: Update to 1.12.35. * gnu/packages/gnome.scm (gnumeric): Update to 1.12.35. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9d3f35229f..c3963d556b 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1821,7 +1821,7 @@ Hints specification (EWMH).") (define-public gnumeric (package (name "gnumeric") - (version "1.12.34") + (version "1.12.35") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -1829,7 +1829,7 @@ Hints specification (EWMH).") name "-" version ".tar.xz")) (sha256 (base32 - "09f7h4lvwzyl0amd3axapwbsrnrvvpwxyhs540jlrv425n0j0j8b")))) + "02kcq2af16m9mlzgkbdzswhw0nl6zf01dmvsfq3shy1mab7f7cbp")))) (build-system glib-or-gtk-build-system) (arguments `(;; The gnumeric developers don't worry much about failing tests. From a801ae4cae3f2260e4a8cb3c3f342efdead31cb5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 8 Aug 2017 23:43:13 +0200 Subject: [PATCH 0819/1227] gnu: gspell: Order inputs alphabetically. * gnu/packages/gnome.scm (gspell)[inputs, native-inputs]: Re-order. --- gnu/packages/gnome.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index c3963d556b..95c9246d41 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6454,17 +6454,17 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).") #t))))) (inputs `(("enchant" ,enchant) - ("iso-codes" ,iso-codes) ("gtk+" ,gtk+) - ("glib" ,glib))) + ("glib" ,glib) + ("iso-codes" ,iso-codes))) (native-inputs `(("glib" ,glib "bin") ("pkg-config" ,pkg-config) ("xmllint" ,libxml2) ;; For tests. - ("xorg-server" ,xorg-server) - ("aspell-dict-en" ,aspell-dict-en))) + ("aspell-dict-en" ,aspell-dict-en) + ("xorg-server" ,xorg-server))) (home-page "https://wiki.gnome.org/Projects/gspell") (synopsis "GNOME's alternative spell checker") (description From eccd35be3d2afe276a7fb5be6ac8646c84fe5db5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 00:05:17 +0200 Subject: [PATCH 0820/1227] gnu: gspell: Propagate enchant dependency. * gnu/packages/gnome.scm (gspell)[inputs]: Move enchant from here... [propagated-inputs]: ...to here. --- gnu/packages/gnome.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 95c9246d41..6e8bb90f78 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6453,8 +6453,7 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).") "/lib/aspell")) #t))))) (inputs - `(("enchant" ,enchant) - ("gtk+" ,gtk+) + `(("gtk+" ,gtk+) ("glib" ,glib) ("iso-codes" ,iso-codes))) (native-inputs @@ -6465,6 +6464,8 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).") ;; For tests. ("aspell-dict-en" ,aspell-dict-en) ("xorg-server" ,xorg-server))) + (propagated-inputs + `(("enchant" ,enchant))) ; enchant.pc is required by gspell-1.pc (home-page "https://wiki.gnome.org/Projects/gspell") (synopsis "GNOME's alternative spell checker") (description From e3705bb6ea64dec48eff76a81cfa04cbf134962f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 00:09:13 +0200 Subject: [PATCH 0821/1227] gnu: gedit: Update to 3.22.1. * gnu/packages/gnome.scm (gedit): Update to 3.22.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 6e8bb90f78..deac8b4ddb 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4514,7 +4514,7 @@ javascript engine and the GObject introspection framework.") (define-public gedit (package (name "gedit") - (version "3.22.0") + (version "3.22.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4522,7 +4522,7 @@ javascript engine and the GObject introspection framework.") name "-" version ".tar.xz")) (sha256 (base32 - "0i9z5d31vibb3dd329gwvyga38zq5k1a2glcdq7m93ycbl5mlfq6")))) + "0as9r5zvnyrxh699q6jnd0p9ddqy5qamfbxggpdjzagzixhw6yxa")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags '("--disable-spell") ; XXX: gspell not packaged yet From 0d2df50caf3076f99884f0d773f2208202962bd7 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 00:11:35 +0200 Subject: [PATCH 0822/1227] gnu: gedit: Support gspell. * gnu/packages/gnome.scm (gedit)[arguments]: Remove #:configure-flags. [inputs]: Add gspell. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index deac8b4ddb..60017df5c8 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4525,8 +4525,7 @@ javascript engine and the GObject introspection framework.") "0as9r5zvnyrxh699q6jnd0p9ddqy5qamfbxggpdjzagzixhw6yxa")))) (build-system glib-or-gtk-build-system) (arguments - `(#:configure-flags '("--disable-spell") ; XXX: gspell not packaged yet - #:phases + `(#:phases (modify-phases %standard-phases (add-after 'install 'wrap-gedit @@ -4552,6 +4551,7 @@ javascript engine and the GObject introspection framework.") ("pkg-config" ,pkg-config))) (inputs `(("glib" ,glib) + ("gspell" ,gspell) ("gtk+" ,gtk+) ("gtksourceview" ,gtksourceview) ("libpeas" ,libpeas) From a51fc34c2881a2610e308cd972b283eddf07fe73 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 00:13:42 +0200 Subject: [PATCH 0823/1227] gnu: mutter: Update to 3.24.4. * gnu/packages/gnome.scm (mutter): Update to 3.24.4. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 60017df5c8..b19d14ff80 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4601,7 +4601,7 @@ to display dialog boxes from the commandline and shell scripts.") (define-public mutter (package (name "mutter") - (version "3.24.2") + (version "3.24.4") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4609,7 +4609,7 @@ to display dialog boxes from the commandline and shell scripts.") name "-" version ".tar.xz")) (sha256 (base32 - "043q3384vwrkjdfhbwn9pwdml6z0g0ad0cj2fjnjzg6402i67071")))) + "1slspy5krbqfvnma72lvdnxjf8ag2cvxssa8bvi7y3xxy7xv603k")))) ;; NOTE: Since version 3.21.x, mutter now bundles and exports forked ;; versions of cogl and clutter. As a result, many of the inputs, ;; propagated-inputs, and configure flags used in cogl and clutter are From 666901b29807a255d3eaa6226ee5be60ef7e9f2f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 01:11:07 +0200 Subject: [PATCH 0824/1227] gnu: gnome-online-accounts: Update to 3.24.2. * gnu/packages/gnome.scm (gnome-online-accounts): Update to 3.24.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b19d14ff80..11d787a830 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4701,7 +4701,7 @@ window manager.") (define-public gnome-online-accounts (package (name "gnome-online-accounts") - (version "3.24.1") + (version "3.24.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4709,7 +4709,7 @@ window manager.") name "-" version ".tar.xz")) (sha256 (base32 - "0lgniqmkr6ffdw3kcqd34lvp969j2q2qzcy30zkzl5c09r7anc0a")))) + "1fmgywfcvlb5sa0slxxlg80gafiaal8vnq6h5lcybqa12lnxa2mp")))) (build-system glib-or-gtk-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. From c762011e4033378f47c226135df9aa52adfa20c4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 01:20:11 +0200 Subject: [PATCH 0825/1227] gnu: tracker: Update to 1.12.2. * gnu/packages/gnome.scm (tracker): Update to 1.12.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 11d787a830..d5b65b4bec 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5432,7 +5432,7 @@ easy, safe, and automatic.") (define-public tracker (package (name "tracker") - (version "1.12.0") + (version "1.12.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -5440,7 +5440,7 @@ easy, safe, and automatic.") name "-" version ".tar.xz")) (sha256 (base32 - "0vsrzzkcfvmylhpk1ww6xdx8z9sgjs0gn74gz82qngjyq3c3s6c3")))) + "1zdzh8l5ahi906i40i4pqw2cs1hwrl6l9a7fp344a3idk3pl5szb")))) (build-system glib-or-gtk-build-system) (native-inputs `(("gnome-common" ,gnome-common) From 026051953d5357a6619b17a8672569dfe180ba1b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 00:32:45 +0200 Subject: [PATCH 0826/1227] gnu: epiphany: Update to 3.24.3. * gnu/packages/gnome.scm (epiphany): Update to 3.24.3. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index d5b65b4bec..ed4def65b5 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4028,7 +4028,7 @@ a secret password store, an adblocker, and a modern UI.") (define-public epiphany (package (name "epiphany") - (version "3.24.2") + (version "3.24.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4036,7 +4036,7 @@ a secret password store, an adblocker, and a modern UI.") name "-" version ".tar.xz")) (sha256 (base32 - "13f5h7mbxdyjf93jp46hiaxsrngpr6frgf69d8iza7arc060vg2s")))) + "0m51cclpnb7lxk8w526rriyb2bi3aj17fbcvikhkg7qd65v1dxgy")))) (build-system glib-or-gtk-build-system) (arguments ;; FIXME: tests run under Xvfb, but fail with: From 41a46a5035b52401fc2fa36d07614d060becaddb Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 8 Aug 2017 00:19:05 -0500 Subject: [PATCH 0827/1227] gnu: petsc: Update to 3.7.6. * gnu/packages/maths.scm (petsc): Update to 3.7.6. --- gnu/packages/maths.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index e204588dd5..55b559e442 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2014, 2016, 2017 John Darrington -;;; Copyright © 2014, 2015, 2016 Eric Bavier +;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier ;;; Copyright © 2014 Federico Beffa ;;; Copyright © 2014 Mathieu Lirzin ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus @@ -1216,7 +1216,7 @@ September 2004}") (define-public petsc (package (name "petsc") - (version "3.7.2") + (version "3.7.6") (source (origin (method url-fetch) @@ -1224,7 +1224,7 @@ September 2004}") (uri (string-append "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/" "petsc-lite-" version ".tar.gz")) (sha256 - (base32 "0jfrq6rd4zagw1iimz05m2w91k0jvz3qbik1lk8pqcxw3rvdqk5d")))) + (base32 "1y3f5jjq0v5b62i3sabp4kp5mgfyp3vnk0dxhwkrhpypax77nzxh")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2) From baeaf8821d24cce25b1ecf4a58496ec59545a2d5 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 8 Aug 2017 00:19:51 -0500 Subject: [PATCH 0828/1227] gnu: slepc: Update to 3.7.4. * gnu/packages/maths.scm (slepc): Update to 3.7.4. [source]: Use direct source link. Remove 'file-name' field. --- gnu/packages/maths.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 55b559e442..54db44b3df 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1342,16 +1342,15 @@ scientific applications modeled by partial differential equations.") (define-public slepc (package (name "slepc") - (version "3.7.1") + (version "3.7.4") (source (origin (method url-fetch) - (uri (string-append "http://slepc.upv.es/download/download.php?" - "filename=slepc-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "http://slepc.upv.es/download/distrib/slepc-" + version ".tar.gz")) (sha256 (base32 - "1hijlmrvxvfqslnx8yydzw5xqbsn1yy02g32w0hln1z3cgr1c0k7")))) + "12pbl8yd6r8k9xjlr1qw25rs0k1acgic7hw1s6l6bhiv9s285drg")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) From 9731c412e9ef2fad66181460e768b01cb3c600da Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 8 Aug 2017 00:21:20 -0500 Subject: [PATCH 0829/1227] gnu: petsc, slepc: Use 'parallel-job-count'. * gnu/packages/maths.scm (petsc, slepc)[arguments]: Set #:make-flags to override default unlimited '-j'. (petsc)[arguments]: Scrub build machine cores from installed files in 'clean-local-references' phase. --- gnu/packages/maths.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 54db44b3df..cc9a9a40a8 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1247,6 +1247,10 @@ September 2004}") (assoc-ref %build-inputs "superlu") "/include") ,(string-append "--with-superlu-lib=" (assoc-ref %build-inputs "superlu") "/lib/libsuperlu.a")) + #:make-flags + ;; Honor (parallel-job-count) for build. Do not use --with-make-np, + ;; whose value is dumped to $out/lib/petsc/conf/petscvariables. + (list (format #f "MAKE_NP=~a" (parallel-job-count))) #:phases (modify-phases %standard-phases (replace 'configure @@ -1261,13 +1265,17 @@ September 2004}") (format #t "configure flags: ~s~%" flags) (zero? (apply system* "./configure" flags))))) (add-after 'configure 'clean-local-references - (lambda* (#:key inputs outputs #:allow-other-keys) + (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* (find-files "." "^petsc(conf|machineinfo).h$") ;; Prevent build directory from leaking into compiled code (((getcwd)) out) ;; Scrub timestamp for reproducibility ((".*Libraries compiled on.*") "")) + (substitute* (find-files "." "petscvariables") + ;; Do not expose build machine characteristics, set to defaults. + (("MAKE_NP = [:digit:]+") "MAKE_NP = 2") + (("NPMAX = [:digit:]+") "NPMAX = 2")) #t))) (add-after 'install 'clean-install ;; Try to keep installed files from leaking build directory names. @@ -1364,6 +1372,8 @@ scientific applications modeled by partial differential equations.") #:configure-flags `(,(string-append "--with-arpack-dir=" (assoc-ref %build-inputs "arpack") "/lib")) + #:make-flags ;honor (parallel-job-count) + `(,(format #f "MAKE_NP=~a" (parallel-job-count))) #:phases (modify-phases %standard-phases (replace 'configure From 2509522c4f4be4491418e65b764862a05444f460 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 8 Aug 2017 20:00:09 -0500 Subject: [PATCH 0830/1227] gnu: suitesparse: Use modify-phases. * gnu/packages/maths.scm (suitesparse)[arguments]: Use modify-phases. --- gnu/packages/maths.scm | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index cc9a9a40a8..5f2697e13c 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2448,15 +2448,14 @@ Fresnel integrals, and similar related functions as well.") (string-append "INSTALL_INCLUDE=" (assoc-ref %outputs "out") "/include")) #:phases - (alist-cons-before - 'install 'prepare-out - ;; README.txt states that the target directories must exist prior to - ;; running "make install". - (lambda _ - (mkdir-p (string-append (assoc-ref %outputs "out") "/lib")) - (mkdir-p (string-append (assoc-ref %outputs "out") "/include"))) - ;; no configure script - (alist-delete 'configure %standard-phases)))) + (modify-phases %standard-phases + (delete 'configure) ;no configure script + (add-before 'install 'prepare-out + ;; README.txt states that the target directories must exist prior to + ;; running "make install". + (lambda _ + (mkdir-p (string-append (assoc-ref %outputs "out") "/lib")) + (mkdir-p (string-append (assoc-ref %outputs "out") "/include"))))))) (inputs `(("tbb" ,tbb) ("lapack" ,lapack))) From bd5b5ac0c5721d85c8031f85df8a02b245170018 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 8 Aug 2017 21:43:15 -0500 Subject: [PATCH 0831/1227] gnu: suitesparse: Update to 4.5.5. * gnu/packages/maths.scm (suitesparse): Update to 4.5.5. [source]: Add 'modules' and 'snippet' field to remove bundled source. [arguments]: Remove 'prepare-out' phase. Adjust #:make-flags for metis. Make build parallel, since it now appears to be safe. [inputs]: Add metis. --- gnu/packages/maths.scm | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 5f2697e13c..78c77b6813 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2424,7 +2424,7 @@ Fresnel integrals, and similar related functions as well.") (define-public suitesparse (package (name "suitesparse") - (version "4.4.3") + (version "4.5.5") (source (origin (method url-fetch) @@ -2433,32 +2433,31 @@ Fresnel integrals, and similar related functions as well.") version ".tar.gz")) (sha256 (base32 - "100hdzr0mf4mzlwnqpmwpfw4pymgsf9n3g0ywb1yps2nk1zbkdy5")))) + "1dnr6pmjzc2qmbkmb4shigx1l74ilf6abn7svyd6brxgvph8vadr")) + (modules '((guix build utils))) + (snippet + ;; Remove bundled metis source + '(delete-file-recursively "metis-5.1.0")))) (build-system gnu-build-system) (arguments - '(#:parallel-build? #f ;cholmod build fails otherwise - #:tests? #f ;no "check" target + '(#:tests? #f ;no "check" target #:make-flags (list "CC=gcc" "BLAS=-lblas" "TBB=-ltbb" - "CHOLMOD_CONFIG=-DNPARTITION" ;required when METIS is not used + "MY_METIS_LIB=-lmetis" (string-append "INSTALL_LIB=" (assoc-ref %outputs "out") "/lib") (string-append "INSTALL_INCLUDE=" - (assoc-ref %outputs "out") "/include")) + (assoc-ref %outputs "out") "/include") + "library") #:phases (modify-phases %standard-phases - (delete 'configure) ;no configure script - (add-before 'install 'prepare-out - ;; README.txt states that the target directories must exist prior to - ;; running "make install". - (lambda _ - (mkdir-p (string-append (assoc-ref %outputs "out") "/lib")) - (mkdir-p (string-append (assoc-ref %outputs "out") "/include"))))))) + (delete 'configure)))) ;no configure script (inputs `(("tbb" ,tbb) - ("lapack" ,lapack))) + ("lapack" ,lapack) + ("metis" ,metis))) (home-page "http://faculty.cse.tamu.edu/davis/suitesparse.html") (synopsis "Suite of sparse matrix software") (description From 05cca6ce90407f19619a097815c53e5bd90d7780 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 8 Aug 2017 21:46:19 -0500 Subject: [PATCH 0832/1227] gnu: stress-make: Patch default shell. * gnu/packages/debug.scm (stress-make)[arguments]: Add 'set-default-shell phase. --- gnu/packages/debug.scm | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index 34c1061418..bde06f35b9 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2016 Eric Bavier +;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier ;;; ;;; This file is part of GNU Guix. ;;; @@ -287,20 +287,26 @@ down the road.") ;; not accept a directory name instead. To let the gnu-build-system's ;; patch-* phases work properly, we unpack the source first, then ;; repack before the configure phase. - `(#:configure-flags '("--with-make-tar=./make.tar.xz") - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'unpack-make - (lambda* (#:key inputs #:allow-other-keys) - (zero? (system* "tar" "xf" (assoc-ref inputs "make-source"))))) - (add-before 'configure 'repack-make - (lambda _ - (zero? (system* "tar" "cJf" "./make.tar.xz" - (string-append "make-" - ,(package-version gnu-make)))))) - (add-before 'configure 'bootstrap - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) + (let ((make-dir (string-append "make-" (package-version gnu-make)))) + `(#:configure-flags '("--with-make-tar=./make.tar.xz") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-make + (lambda* (#:key inputs #:allow-other-keys) + (zero? (system* "tar" "xf" (assoc-ref inputs "make-source"))))) + (add-after 'unpack-make 'set-default-shell + (lambda _ + ;; Taken mostly directly from (@ (gnu packages base) gnu-make) + (substitute* (string-append ,make-dir "/job.c") + (("default_shell = .*$") + (format #f "default_shell = \"~a\";\n" + (which "sh")))))) + (add-before 'configure 'repack-make + (lambda _ + (zero? (system* "tar" "cJf" "./make.tar.xz" ,make-dir)))) + (add-before 'configure 'bootstrap + (lambda _ + (zero? (system* "autoreconf" "-vfi")))))))) (home-page "https://github.com/losalamos/stress-make") (synopsis "Expose race conditions in Makefiles") (description From d84b09e937e7c5529d124744c84574a0637c3410 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Wed, 9 Aug 2017 01:08:10 -0500 Subject: [PATCH 0833/1227] gnu: dealii: Update to 8.5.0. * gnu/packages/maths.scm (dealii): Update to 8.5.0. [arguments]: Delete 'hint-example-prefix phase, which would need adjusting for this version. Users can use e.g. 'export DEAL_II_DIR=$GUIX_ENVIRONMENT'. Adjust configuration flags. --- gnu/packages/maths.scm | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 78c77b6813..6597191805 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2693,7 +2693,7 @@ revised simplex and the branch-and-bound methods.") (define-public dealii (package (name "dealii") - (version "8.4.1") + (version "8.5.0") (source (origin (method url-fetch) @@ -2701,7 +2701,7 @@ revised simplex and the branch-and-bound methods.") "download/v" version "/dealii-" version ".tar.gz")) (sha256 (base32 - "1bdksvvyp1rj37df1ndh8j3x9nzpc3sazw8nd0hzvnlw0qnyk800")) + "0yfpy4zh8j7hmqakw17zdlmvfdcmhwgs66wcb716plc4y7v3z4g6")) (modules '((guix build utils))) (snippet ;; Remove bundled sources: UMFPACK, TBB, muParser, and boost @@ -2720,21 +2720,10 @@ revised simplex and the branch-and-bound methods.") ("suitesparse" ,suitesparse))) ;for UMFPACK (arguments `(#:build-type "DebugRelease" ;only supports Release, Debug, or DebugRelease - #:configure-flags '("-DCOMPAT_FILES=OFF") ;Follow new directory structure - #:phases (modify-phases %standard-phases - (add-after - 'install 'hint-example-prefix - ;; Set Cmake hints in examples so that they can find this - ;; deal.II when configuring. - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref %outputs "out")) - (exmpl (string-append out "/share/doc" - "/dealii/examples"))) - (substitute* (find-files exmpl "CMakeLists.txt") - (("([[:space:]]*HINTS.*)\n" _ line) - (string-append line " $ENV{HOME}/.guix-profile " - out "\n"))) - #t)))))) + #:configure-flags + ;; Work around a bug in libsuitesparseconfig linking + ;; see https://github.com/dealii/dealii/issues/4745 + '("-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON"))) (home-page "https://www.dealii.org") (synopsis "Finite element library") (description From c608fe8cf3988fff0e352f0cf563a060f79b4fb4 Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Sat, 5 Aug 2017 18:56:29 +0300 Subject: [PATCH 0834/1227] gnu: Add ois. * gnu/packages/game-development.scm (ois): New variable. --- gnu/packages/game-development.scm | 41 +++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index efd8f6d034..c98c15e462 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -35,6 +35,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages boost) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -45,6 +46,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnunet) #:use-module (gnu packages guile) + #:use-module (gnu packages m4) #:use-module (gnu packages multiprecision) #:use-module (gnu packages music) #:use-module (gnu packages ncurses) @@ -893,3 +895,42 @@ suitable for pixel art, game graphics, and generally any detailed graphics painted with a mouse.") (home-page "http://pulkomandy.tk/projects/GrafX2") (license license:gpl2))) ; GPLv2 only + +(define-public ois + (package + (name "ois") + (version "1.3") + (source + (origin + ;; Development has moved to github and there are no recent tarball + ;; releases. + (method git-fetch) + (uri (git-reference + (url "https://github.com/wgois/OIS.git") + (commit "bb75ccc1aabc1c547195579963601ff6080ca2f2"))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "0w0pamjc3vj0jr718hysrw8x076fq6n9rd6wcb36sn2jd0lqvi98")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ (zero? (system* "sh" "bootstrap"))))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("m4" ,m4) + ("pkg-config" ,pkg-config))) + (inputs + `(("libxaw" ,libxaw))) + (synopsis "Object Oriented Input System") + (description + "Cross Platform Object Oriented Input Lib System is a cross platform, +simple solution for using all kinds of Input Devices (Keyboards, Mice, +Joysticks, etc) and feedback devices (e.g. force feedback). Meant to be very +robust and compatible with many systems and operating systems.") + (home-page "https://github.com/wgois/OIS") + (license license:zlib))) From 2d5bf32b8aaf3fd60d9412898f269d990d5e3bde Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Sun, 6 Aug 2017 17:07:17 +0300 Subject: [PATCH 0835/1227] gnu: googletest: Build shared libraries. * gnu/packages/check.scm (googletest)[arguments]: Pass "-DBUILD_SHARED_LIBS=ON" in #:configure-flags. --- gnu/packages/check.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 2ab5c01359..ddfcf1750f 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -213,6 +213,8 @@ normally do not detect. The goal is to detect only real errors in the code (base32 "1n5p1m2m3fjrjdj752lf92f9wq3pl5cbsfrb49jqbg52ghkz99jq")))) (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) (native-inputs `(("python-2" ,python-2))) (home-page "https://github.com/google/googletest/") From ea77385c4c672aabc866c466ac8132b645510a6b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 9 Aug 2017 14:08:23 +0300 Subject: [PATCH 0836/1227] gnu: viewnior: Don't build icon-theme.cache. * gnu/packages/image-viewers.scm (viewnior)[arguments]: Add phase to disable building the icon-theme.cache. --- gnu/packages/image-viewers.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 644780b5e9..b8a8af9280 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2017 Ludovic Courtès ;;; Copyright © 2014 Ian Denhardt ;;; Copyright © 2015, 2016 Alex Kost -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2017 Alex Griffin ;;; Copyright © 2017 ng0 ;;; Copyright © 2017 Mathieu Othacehe @@ -214,7 +214,13 @@ it and customize it for your needs.") (modify-phases %standard-phases (add-after 'unpack 'autogen (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (zero? (system* "sh" "autogen.sh")))) + (add-before 'install 'skip-gtk-update-icon-cache + (lambda _ + ;; Don't create 'icon-theme.cache' + (substitute* (find-files "data" "^Makefile$") + (("gtk-update-icon-cache") (which "true"))) + #t))))) (native-inputs `(("automake" ,automake) ("autoconf" ,autoconf) From 32b7506c987d8b7281382da4831958a64c048fc1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 8 Aug 2017 16:05:58 +0200 Subject: [PATCH 0837/1227] profiles: Only check file contents if the file exists. * guix/profiles.scm (fonts-dir-file): Check that files exist before using "empty-file?". --- guix/profiles.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/guix/profiles.scm b/guix/profiles.scm index b3732f61ed..0eb99f40de 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -1095,9 +1095,11 @@ files for the fonts of the @var{manifest} entries." (unless (and (zero? (system* mkfontscale)) (zero? (system* mkfontdir))) (exit #f)) - (when (empty-file? fonts-scale-file) + (when (and (file-exists? fonts-scale-file) + (empty-file? fonts-scale-file)) (delete-file fonts-scale-file)) - (when (empty-file? fonts-dir-file) + (when (and (file-exists? fonts-dir-file) + (empty-file? fonts-dir-file)) (delete-file fonts-dir-file)))) directories))))))) From e57fffad90a87d8ac38e4ac44ac5b5eb2d7bd191 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 4 Aug 2017 15:32:53 +0200 Subject: [PATCH 0838/1227] gnu: Add igraph. * gnu/packages/graph.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/graph.scm | 62 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 gnu/packages/graph.scm diff --git a/gnu/local.mk b/gnu/local.mk index 090ce77c76..3d79d5d22d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -184,6 +184,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/gperf.scm \ %D%/packages/gprolog.scm \ %D%/packages/gps.scm \ + %D%/packages/graph.scm \ %D%/packages/graphics.scm \ %D%/packages/graphviz.scm \ %D%/packages/groff.scm \ diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm new file mode 100644 index 0000000000..54b0962b68 --- /dev/null +++ b/gnu/packages/graph.scm @@ -0,0 +1,62 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Ricardo Wurmus +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages graph) + #:use-module (guix download) + #:use-module (guix packages) + #:use-module (guix build-system gnu) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages maths) + #:use-module (gnu packages multiprecision) + #:use-module (gnu packages xml)) + +(define-public igraph + (package + (name "igraph") + (version "0.7.1") + (source + (origin + (method url-fetch) + (uri (string-append "http://igraph.org/nightly/get/c/igraph-" + version ".tar.gz")) + (sha256 + (base32 + "1pxh8sdlirgvbvsw8v65h6prn7hlm45bfsl1yfcgd6rn4w706y6r")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list "--with-external-glpk" + "--with-external-blas" + "--with-external-lapack"))) + (inputs + `(("gmp" ,gmp) + ("glpk" ,glpk) + ("libxml2" ,libxml2) + ("lapack" ,lapack) + ("openblas" ,openblas) + ("zlib" ,zlib))) + (home-page "http://igraph.org") + (synopsis "Network analysis and visualization") + (description + "This package provides a library for the analysis of networks and graphs. +It can handle large graphs very well and provides functions for generating +random and regular graphs, graph visualization, centrality methods and much +more.") + (license license:gpl2+))) From 31476df32e1d5194f4f7085bba487681cc250e38 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 4 Aug 2017 15:33:28 +0200 Subject: [PATCH 0839/1227] gnu: Add python-igraph. * gnu/packages/graph.scm (python-igraph): New variable. --- gnu/packages/graph.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index 54b0962b68..b379bfdd03 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -20,11 +20,13 @@ #:use-module (guix download) #:use-module (guix packages) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages maths) #:use-module (gnu packages multiprecision) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages xml)) (define-public igraph @@ -60,3 +62,23 @@ It can handle large graphs very well and provides functions for generating random and regular graphs, graph visualization, centrality methods and much more.") (license license:gpl2+))) + +(define-public python-igraph + (package (inherit igraph) + (name "python-igraph") + (version "0.7.1.post6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-igraph" version)) + (sha256 + (base32 + "0xp61zz710qlzhmzbfr65d5flvsi8zf2xy78s6rsszh719wl5sm5")))) + (build-system python-build-system) + (arguments '()) + (inputs + `(("igraph" ,igraph))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://pypi.python.org/pypi/python-igraph") + (synopsis "Python bindings for the igraph network analysis library"))) From 1738138cb3a48ed2f55c59c8d7c6ce12a4c4dcb3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 4 Aug 2017 15:44:33 +0200 Subject: [PATCH 0840/1227] gnu: r-igraph: Move to (gnu packages graph). * gnu/packages/statistics.scm (r-igraph): Move from here... * gnu/packages/graph.scm (r-igraph): ...to here. --- gnu/packages/graph.scm | 34 ++++++++++++++++++++++++++++++++++ gnu/packages/statistics.scm | 31 ------------------------------- 2 files changed, 34 insertions(+), 31 deletions(-) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index b379bfdd03..683bfeec66 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -21,12 +21,15 @@ #:use-module (guix packages) #:use-module (guix build-system gnu) #:use-module (guix build-system python) + #:use-module (guix build-system r) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) + #:use-module (gnu packages gcc) #:use-module (gnu packages compression) #:use-module (gnu packages maths) #:use-module (gnu packages multiprecision) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages statistics) #:use-module (gnu packages xml)) (define-public igraph @@ -82,3 +85,34 @@ more.") `(("pkg-config" ,pkg-config))) (home-page "http://pypi.python.org/pypi/python-igraph") (synopsis "Python bindings for the igraph network analysis library"))) + +(define-public r-igraph + (package + (name "r-igraph") + (version "1.1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "igraph" version)) + (sha256 + (base32 + "1v26wyk52snh8z6m5p7yqwcd9dbqifhm57j112i9x53ppi0npcc9")))) + (build-system r-build-system) + (native-inputs + `(("gfortran" ,gfortran))) + (inputs + `(("gmp" ,gmp) + ("libxml2" ,libxml2))) + (propagated-inputs + `(("r-irlba" ,r-irlba) + ("r-magrittr" ,r-magrittr) + ("r-matrix" ,r-matrix) + ("r-pkgconfig" ,r-pkgconfig))) + (home-page "http://igraph.org") + (synopsis "Network analysis and visualization") + (description + "This package provides routines for simple graphs and network analysis. +It can handle large graphs very well and provides functions for generating +random and regular graphs, graph visualization, centrality methods and much +more.") + (license license:gpl2+))) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 55a8a2a483..6d5cbb43a3 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3280,37 +3280,6 @@ optimized in C++, and the main interface function provides an easy way of performing parallel computations on multicore machines.") (license license:gpl2+))) -(define-public r-igraph - (package - (name "r-igraph") - (version "1.1.2") - (source - (origin - (method url-fetch) - (uri (cran-uri "igraph" version)) - (sha256 - (base32 - "1v26wyk52snh8z6m5p7yqwcd9dbqifhm57j112i9x53ppi0npcc9")))) - (build-system r-build-system) - (native-inputs - `(("gfortran" ,gfortran))) - (inputs - `(("gmp" ,gmp) - ("libxml2" ,libxml2))) - (propagated-inputs - `(("r-irlba" ,r-irlba) - ("r-magrittr" ,r-magrittr) - ("r-matrix" ,r-matrix) - ("r-pkgconfig" ,r-pkgconfig))) - (home-page "http://igraph.org") - (synopsis "Network analysis and visualization") - (description - "This package provides routines for simple graphs and network analysis. -It can handle large graphs very well and provides functions for generating -random and regular graphs, graph visualization, centrality methods and much -more.") - (license license:gpl2+))) - (define-public r-r-methodss3 (package (name "r-r-methodss3") From 18f5d2a70a8fb99e7435c47efcbe12602b6b415e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 15:43:35 +0200 Subject: [PATCH 0841/1227] gnu: Add reference to (gnu packages graph). This is a follow-up to 1738138cb3a48ed2f55c59c8d7c6ce12a4c4dcb3. --- gnu/packages/bioinformatics.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c08297d7b6..02b338be6e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -60,6 +60,7 @@ #:use-module (gnu packages gd) #:use-module (gnu packages gtk) #:use-module (gnu packages glib) + #:use-module (gnu packages graph) #:use-module (gnu packages groff) #:use-module (gnu packages guile) #:use-module (gnu packages haskell) From 448052b713ba7016490de02cea7b6acf2211006f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 16:15:50 +0200 Subject: [PATCH 0842/1227] gnu: libgdata: Disable failing tests. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnome.scm (libgdata)[arguments]: Add ‘disable-failing-tests’ phase. --- gnu/packages/gnome.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ed4def65b5..d7c29dc990 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -345,6 +345,13 @@ formats like PNG, SVG, PDF and EPS.") ;; The ca-certificates.crt is not available in the build ;; environment. (setenv "SSL_CERT_FILE" "/dev/null") + #t)) + (add-before 'check 'disable-failing-tests + (lambda _ + ;; The PicasaWeb API tests fail with gnome-online-accounts@3.24.2. + ;; They have been removed in libgdata 0.17.6, so just do the same. + (substitute* "gdata/tests/Makefile" + (("picasaweb\\$\\(EXEEXT\\) ") "")) #t))))) (native-inputs `(("glib:bin" ,glib "bin") From a4afc536f9853d74e78e3f895ad600900af86280 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 9 Aug 2017 16:45:32 +0200 Subject: [PATCH 0843/1227] gnu: virt-manager: Update to 1.4.2. * gnu/packages/virtualization.scm (virt-manager): Update to 1.4.2. --- gnu/packages/virtualization.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 628396e52c..49998120d2 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -478,7 +478,7 @@ virtualization library.") (define-public virt-manager (package (name "virt-manager") - (version "1.4.1") + (version "1.4.2") (source (origin (method url-fetch) (uri (string-append "https://virt-manager.org/download/sources" @@ -486,7 +486,7 @@ virtualization library.") version ".tar.gz")) (sha256 (base32 - "0i1rkxz730vw1nqghrp189jhhp53pw81k0h71hhxmyqlkyclkig6")))) + "0x6mnqw8bng3r69pvmnq9q6yyhicxg22yz62b6dzbb4z16xl1r23")))) (build-system python-build-system) (arguments `(#:python ,python-2 From 28e12d6c81cef2aca7f792f3c99037a649faa9b0 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 9 Aug 2017 15:58:43 +0000 Subject: [PATCH 0844/1227] gnu: gnurl: Update to 7.55.0. * gnu/packages/gnunet.scm (gnurl): Update to 7.55.0. Signed-off-by: Tobias Geerinckx-Rice --- gnu/packages/gnunet.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 9ca2d9502b..497afaf668 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2016 Mark H Weaver -;;; Copyright © 2016, 2017 ng0 +;;; Copyright © 2016, 2017 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -186,14 +186,14 @@ and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.54.1") + (version "7.55.0") (source (origin (method url-fetch) (uri (string-append "https://gnunet.org/sites/default/files/" name "-" version ".tar.bz2")) (sha256 (base32 - "0szbj352h95sgc9kbx9wzkgjksmg3g5k6cvlc7hz3wrbdh5gb0a4")))) + "0i9bik76rbyag3mbxbk8j383iaxs5v7lmjkn4v36ascl6bdks6vn")))) (build-system gnu-build-system) (outputs '("out" "doc")) ; 1.5 MiB of man3 pages From 12025fb9b0a55c11aca9d6f36b24f71e17dca128 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 24 Jul 2017 22:50:47 -0400 Subject: [PATCH 0845/1227] gnu: icecat: Rename patches to reflect CVE assignments. Document that our existing patches include fixes for CVE-2017-7753, CVE-2017-7784, CVE-2017-7786, CVE-2017-7787, CVE-2017-7791, CVE-2017-7792, CVE-2017-7798, CVE-2017-7798, CVE-2017-7800, CVE-2017-7801, and 17 out of 23 changesets for CVE-2017-7779. * gnu/packages/gnuzilla.scm (icecat)[source]: Rename patches to reflect CVE assignments. --- gnu/packages/gnuzilla.scm | 56 +++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 0fb25d8432..036e106cbc 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -509,52 +509,52 @@ standards.") (mozilla-patch "icecat-CVE-2017-5470-pt20.patch" "38273203b827" "12p9r4spdp09d6ic9sqspvdr50lmc1p86ydz2fxdifb1f95njhx0") (mozilla-patch "icecat-bug-1357022.patch" "5bd51bc3f587" "0z5drxpfjvb7s43qgcr404h8ckchgakwwwi4nxpx2i653w22a743") (mozilla-patch "icecat-bug-1318845.patch" "512efd480dac" "13cmqap795ayh6gh3b5bc6002pz0wp92qngs7fh5qqklc7a0gkzv") - (mozilla-patch "icecat-bug-1371586.patch" "d0c92199b9ed" "0qmsm7d4h6ysx3an247kpx9qpksfms7hrjgpdrghdbxla1hc4nc9") + (mozilla-patch "icecat-CVE-2017-7798-pt1.patch" "d0c92199b9ed" "0qmsm7d4h6ysx3an247kpx9qpksfms7hrjgpdrghdbxla1hc4nc9") (mozilla-patch "icecat-bug-1364513.patch" "88e9c2137640" "1mh4l745q1wlabn9sz47n0vy3h7c66fcay2b9dwa16iqwvh3lpiw") (mozilla-patch "icecat-bug-1366203.patch" "08dd87b6bb8f" "15bfwfwwd978mlcpk1d6m7506k8c2y402md7wzf6piabxl5kk6cf") - (mozilla-patch "icecat-bug-1368576.patch" "5a51a9ef8149" "0j0f9j0pryv3ik4bizhv8s6rr4dl1mjm01c23msayr0vbnpcagcs") - (mozilla-patch "icecat-bug-1369913.patch" "f47eaebc0c5c" "1b52xm3awpigasaz0hk5b13l7v4ry9vrawf571lzy2wwhphs4nxx") - (mozilla-patch "icecat-bug-1371424.patch" "40ce248a8c15" "1b722fiifr999ga0991cg5mlhidcnvf3zx2aiq5zjaabqn0f4dzk") - (mozilla-patch "icecat-bug-1372112.patch" "0c8359ac6718" "1w0v2p5jnhzvcsx8h1bglwjhp5y5bg1g8pzpvjw7pg1wlq2frccr") - (mozilla-patch "icecat-bug-1354443-pt1.patch" "8c27a68ee87e" "0kn05q8nvp26w5rnj8r0byw89h2awmwn04l9l3xv2i5w2a7zmjzf") - (mozilla-patch "icecat-bug-1354443-pt2.patch" "b2ee0c5466da" "0jgwsppq0606lwg5jk9q69lqa14q3j7h3c7q6mxbz7zqrcg7d0zg") - (mozilla-patch "icecat-bug-1354443-pt3.patch" "25f6ec16e501" "1yqd5ndwgd8x2pj9k2bnaq3rb1g7wikq0ii7l4dm6bqwabi2rdsg") - (mozilla-patch "icecat-bug-1354443-pt4.patch" "30443b4f758e" "0riszl3xnpfq5ffywygrc12nsvx0ffd36d5rf4vp87r8lj3fr55r") - (mozilla-patch "icecat-bug-1354443-pt5.patch" "1b934ab92c59" "114cvfzfxgkwwd4zpnrmm2kx6m94k0b3xcraba9aawwwhdxj6a1d") - (mozilla-patch "icecat-bug-1354443-pt6.patch" "830a345dc0e7" "01riivv033w3mr8b2myaw38rz2za1bdlhybny737ly68hhc67xdz") - (mozilla-patch "icecat-bug-1365189.patch" "5c26df489768" "1fdw4zbn0ilfghanxky4y7qcmkpkks2q1aqkzv26dnhhrr8350a1") - (mozilla-patch "icecat-bug-1365875.patch" "f21e4d78a0a8" "0szsc3zm3wgrw8pxm0rz54whkrc14yy4d8vwmxgqsdns43qjgkpk") - (mozilla-patch "icecat-bug-1346590.patch" "f19b6c6a0c6c" "0wkr010qnh4127z1j7fp45sqdk2da9x7j2k405r0x5bgqdd09qzp") - (mozilla-patch "icecat-bug-1376087.patch" "8353a3fa4106" "0kzs8pl6spjwgdsmiw702zvbvz73ng9zf184clsfr82l8kmggbgw") - (mozilla-patch "icecat-bug-1371889.patch" "b38fed9a9772" "14vzsldlv4hjpxgnl6fjjbzhgcwsmd52v06cgmv0a7y3lnggj3hp") - (mozilla-patch "icecat-bug-1322896.patch" "c254d3cc826c" "0pixwr18qik87c8qf4irg6hdffd8rbwpng73jxg05h7s827nfw3g") - (mozilla-patch "icecat-bug-1368652.patch" "6356dbf20658" "0a0hsxkik7ysfa48w8k21lidaabwpmxi1d3214r5zqkqqfhn9qjm") + (mozilla-patch "icecat-CVE-2017-7779-pt01.patch" "5a51a9ef8149" "0j0f9j0pryv3ik4bizhv8s6rr4dl1mjm01c23msayr0vbnpcagcs") + (mozilla-patch "icecat-CVE-2017-7779-pt02.patch" "f47eaebc0c5c" "1b52xm3awpigasaz0hk5b13l7v4ry9vrawf571lzy2wwhphs4nxx") + (mozilla-patch "icecat-CVE-2017-7779-pt03.patch" "40ce248a8c15" "1b722fiifr999ga0991cg5mlhidcnvf3zx2aiq5zjaabqn0f4dzk") + (mozilla-patch "icecat-CVE-2017-7798-pt2.patch" "0c8359ac6718" "1w0v2p5jnhzvcsx8h1bglwjhp5y5bg1g8pzpvjw7pg1wlq2frccr") + (mozilla-patch "icecat-CVE-2017-7779-pt04.patch" "8c27a68ee87e" "0kn05q8nvp26w5rnj8r0byw89h2awmwn04l9l3xv2i5w2a7zmjzf") + (mozilla-patch "icecat-CVE-2017-7779-pt05.patch" "b2ee0c5466da" "0jgwsppq0606lwg5jk9q69lqa14q3j7h3c7q6mxbz7zqrcg7d0zg") + (mozilla-patch "icecat-CVE-2017-7779-pt06.patch" "25f6ec16e501" "1yqd5ndwgd8x2pj9k2bnaq3rb1g7wikq0ii7l4dm6bqwabi2rdsg") + (mozilla-patch "icecat-CVE-2017-7779-pt07.patch" "30443b4f758e" "0riszl3xnpfq5ffywygrc12nsvx0ffd36d5rf4vp87r8lj3fr55r") + (mozilla-patch "icecat-CVE-2017-7779-pt08.patch" "1b934ab92c59" "114cvfzfxgkwwd4zpnrmm2kx6m94k0b3xcraba9aawwwhdxj6a1d") + (mozilla-patch "icecat-CVE-2017-7779-pt09.patch" "830a345dc0e7" "01riivv033w3mr8b2myaw38rz2za1bdlhybny737ly68hhc67xdz") + (mozilla-patch "icecat-CVE-2017-7786.patch" "5c26df489768" "1fdw4zbn0ilfghanxky4y7qcmkpkks2q1aqkzv26dnhhrr8350a1") + (mozilla-patch "icecat-CVE-2017-7791.patch" "f21e4d78a0a8" "0szsc3zm3wgrw8pxm0rz54whkrc14yy4d8vwmxgqsdns43qjgkpk") + (mozilla-patch "icecat-CVE-2017-7779-pt10.patch" "f19b6c6a0c6c" "0wkr010qnh4127z1j7fp45sqdk2da9x7j2k405r0x5bgqdd09qzp") + (mozilla-patch "icecat-CVE-2017-7784.patch" "8353a3fa4106" "0kzs8pl6spjwgdsmiw702zvbvz73ng9zf184clsfr82l8kmggbgw") + (mozilla-patch "icecat-bug-1371889.patch" "b38fed9a9772" "14vzsldlv4hjpxgnl6fjjbzhgcwsmd52v06cgmv0a7y3lnggj3hp"); XXX backed out upstream + (mozilla-patch "icecat-CVE-2017-7787.patch" "c254d3cc826c" "0pixwr18qik87c8qf4irg6hdffd8rbwpng73jxg05h7s827nfw3g") + (mozilla-patch "icecat-CVE-2017-7792.patch" "6356dbf20658" "0a0hsxkik7ysfa48w8k21lidaabwpmxi1d3214r5zqkqqfhn9qjm") (mozilla-patch "icecat-bug-1358073.patch" "8d6e685d061b" "0430gwg7zzbg0q9w2m04s5ljh47bc8x1gxvmkzbn23bh1wy4d4sq") (mozilla-patch "icecat-bug-1370869.patch" "3b8fde840188" "0vkymvzkfpzpg86npa5vpvvf564k18hkfdz8857rl0z4dp4rybzx") - (mozilla-patch "icecat-bug-1369994.patch" "267b649087ff" "04wzazdm0kvbfcgmlhx8qs1ibqn8sbvqdsd237rja5wpr761xxf1") + (mozilla-patch "icecat-CVE-2017-7779-pt11.patch" "267b649087ff" "04wzazdm0kvbfcgmlhx8qs1ibqn8sbvqdsd237rja5wpr761xxf1") (mozilla-patch "icecat-bug-1354796.patch" "69d1a9de76b9" "1q0p4kf8pvnkwwff3lz526pjj15a25pf724awblkcnzamwbib5ns") (mozilla-patch "icecat-bug-1363027.patch" "c5eaa2d51b9f" "1xyj5n1vqhscc369q6wxibs2igbilaiwyc0q9cq64j2qx8q0yqah") (mozilla-patch "icecat-bug-1364189.patch" "852a7781259e" "12y344p54avz5mrqirq14zp4csx8ydilnjv9nsw48kpa9y0l5xsg") (mozilla-patch "icecat-bug-1342417.patch" "37ccdc5fff2b" "1acywg8girplbs7wjrjbvkximhiyizddmnkkq1ldd0l3qbx9nihc") - (mozilla-patch "icecat-bug-1362924-pt1.patch" "057ed884ecb0" "1m49bqkq5lzc2j59wgwy0gbzvqj50p9lfn7cbc2n01v6d7m8rc2j") - (mozilla-patch "icecat-bug-1362924-pt2.patch" "dd7ed649b82f" "1fama1l2vx4p6ahhrsrpysfbk9nh5gwbi4pdnclpyxd42idsdqxs") - (mozilla-patch "icecat-bug-1353312.patch" "731958f7ff4d" "0l3i3mkb6rslnjag3caf4xyhjzxn91wfs0g6dbika4sxnhfs5d4i") + (mozilla-patch "icecat-CVE-2017-7779-pt12.patch" "057ed884ecb0" "1m49bqkq5lzc2j59wgwy0gbzvqj50p9lfn7cbc2n01v6d7m8rc2j") + (mozilla-patch "icecat-CVE-2017-7779-pt13.patch" "dd7ed649b82f" "1fama1l2vx4p6ahhrsrpysfbk9nh5gwbi4pdnclpyxd42idsdqxs") + (mozilla-patch "icecat-CVE-2017-7753.patch" "731958f7ff4d" "0l3i3mkb6rslnjag3caf4xyhjzxn91wfs0g6dbika4sxnhfs5d4i") (mozilla-patch "icecat-bug-1364870.patch" "de8deecbcb02" "048ic1vk7fd7wxqjgjqlnb7kv03ynaa4wkrk0ka8m39pkjh3yyxj") (mozilla-patch "icecat-bug-1365333.patch" "e3d13b270f45" "0jr8hpxpmfgrbh09xd9nj597cdnc6kl6gs5nir4zlzbbn8kp3429") (mozilla-patch "icecat-bug-1372063.patch" "58a144bf9677" "12y8vikbzcfcfiidjdq67dvdhhvylx68wdgnypsafrd1q8dx9jza") (mozilla-patch "icecat-bug-1373970.patch" "8321ef71adb5" "1wk8kq9n2vhqlinvvw01avv3c7qj0k3qnn7dj0whnl08a5yrqhpl") (mozilla-patch "icecat-bug-1338646.patch" "322c18d011af" "1yqb7zmjz211ryb98pjj7axbj6bwkj63rmfyifsybdy3zpb4nf48") - (mozilla-patch "icecat-bug-1371283.patch" "f9bc084fbb8a" "1ssml15yzx9s0wraq4n0xvq5bw7j8xq0p2y39h8j3f1c448n0j50") + (mozilla-patch "icecat-CVE-2017-7779-pt14.patch" "f9bc084fbb8a" "1ssml15yzx9s0wraq4n0xvq5bw7j8xq0p2y39h8j3f1c448n0j50") (mozilla-patch "icecat-bug-1359477.patch" "9b70b5b852e4" "0z2bi7w46g7mm8msav8vz28mgvnv21z3a5876n9gpw317gns4d6a") - (mozilla-patch "icecat-bug-1366903.patch" "6785c2a852da" "0p9jr171qi59scr5lrj6g0mv8mgm1i1wglr3jd16xywb0ymynnn5") - (mozilla-patch "icecat-bug-1368105.patch" "11c8e23f0fd7" "0zcikv6dn7biii4gspv2kfvma5hc76hk86jahm3zl2zlkk8ikfm9") + (mozilla-patch "icecat-CVE-2017-7779-pt15.patch" "6785c2a852da" "0p9jr171qi59scr5lrj6g0mv8mgm1i1wglr3jd16xywb0ymynnn5") + (mozilla-patch "icecat-CVE-2017-7779-pt16.patch" "11c8e23f0fd7" "0zcikv6dn7biii4gspv2kfvma5hc76hk86jahm3zl2zlkk8ikfm9") (mozilla-patch "icecat-bug-1355168.patch" "f45ba43512ad" "0p28q5acns5zjj7ks2x5lrmwzzps741507sq31xvrpzan5yav37x") (mozilla-patch "icecat-bug-1308820.patch" "e9a10fac6aae" "1s2zaka6ik1rmylamyh38vsqnqlblbqdhjpp0cv08fjb9flh5sbw") (mozilla-patch "icecat-bug-1305036.patch" "c42a348f2ed0" "1pz7qbdv9xvyd1dy7g9h047c0gmrgp5qdy2360qjk6879n74h1zb") (mozilla-patch "icecat-bug-1342913.patch" "f02db36497d2" "0g1kg418l1cibh5k1sjqj2vs2jcblpbn7b06qazk2kzcg70vf5gv") - (mozilla-patch "icecat-bug-1374047.patch" "0a44ed156da5" "1y8z1czm7f91p9bpd32b9k43nl0b9g4fzwv4w0khby9y38xgvcbs") - (mozilla-patch "icecat-bug-1371259.patch" "0a86729d653e" "0wyh7qskjwq9274d25p2ajylaab5mj5h8by58rz9lxsz06zrnz9f") - (mozilla-patch "icecat-bug-1378826.patch" "98ff43fb228a" "0ih0nsmk8rzdrajzlnryqiqb71jg7v4p71hfla2hrlvn41r3709m"))) + (mozilla-patch "icecat-CVE-2017-7800.patch" "0a44ed156da5" "1y8z1czm7f91p9bpd32b9k43nl0b9g4fzwv4w0khby9y38xgvcbs") + (mozilla-patch "icecat-CVE-2017-7801.patch" "0a86729d653e" "0wyh7qskjwq9274d25p2ajylaab5mj5h8by58rz9lxsz06zrnz9f") + (mozilla-patch "icecat-CVE-2017-7779-pt17.patch" "98ff43fb228a" "0ih0nsmk8rzdrajzlnryqiqb71jg7v4p71hfla2hrlvn41r3709m"))) (modules '((guix build utils))) (snippet '(begin From ea0277abcddc89ecdaea4cd928421604663b4ebd Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 9 Aug 2017 03:39:10 -0400 Subject: [PATCH 0846/1227] gnu: icecat: Add more fixes from upstream mozilla-esr52. * gnu/packages/gnuzilla.scm (icecat)[source]: Add fixes for CVE-2017-7802, CVE-2017-7803, CVE-2017-7807, and the remaining 6 out of 23 changesets for CVE-2017-7779. --- gnu/packages/gnuzilla.scm | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 036e106cbc..1daaa79c73 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -554,7 +554,41 @@ standards.") (mozilla-patch "icecat-bug-1342913.patch" "f02db36497d2" "0g1kg418l1cibh5k1sjqj2vs2jcblpbn7b06qazk2kzcg70vf5gv") (mozilla-patch "icecat-CVE-2017-7800.patch" "0a44ed156da5" "1y8z1czm7f91p9bpd32b9k43nl0b9g4fzwv4w0khby9y38xgvcbs") (mozilla-patch "icecat-CVE-2017-7801.patch" "0a86729d653e" "0wyh7qskjwq9274d25p2ajylaab5mj5h8by58rz9lxsz06zrnz9f") - (mozilla-patch "icecat-CVE-2017-7779-pt17.patch" "98ff43fb228a" "0ih0nsmk8rzdrajzlnryqiqb71jg7v4p71hfla2hrlvn41r3709m"))) + (mozilla-patch "icecat-CVE-2017-7779-pt17.patch" "98ff43fb228a" "0ih0nsmk8rzdrajzlnryqiqb71jg7v4p71hfla2hrlvn41r3709m") + (mozilla-patch "icecat-CVE-2017-7802.patch" "09f62bfc5800" "07q18qzxja1cywihr5vhhws328zghrwc6ldx8kcsawia1r1i5gp7") + (mozilla-patch "icecat-bug-1321803-pt1.patch" "cfb75012cfbd" "1bwwfm1vhr7ddsvmi1cinwdq6f4nd71fkd9lbnlhmh4ix63gz2yl") + (mozilla-patch "icecat-bug-1321803-pt2.patch" "0f3f951461d7" "1rp1cj4c0dkhd4pda88kx499h7ycw3037yh2khff78y61ckg2a85") + (mozilla-patch "icecat-bug-1321803-pt3.patch" "b654a39db998" "1v79mh8lrnn7q40c8zj24byrqyw3x8fwcw25w90wqajnbf0ixskx") + (mozilla-patch "icecat-bug-1334338.patch" "1be1fe3c9622" "1mhd9nyp8map76hgwrhm1k955fz8y5iszdvvgrv3z1r1h77k0nz0") + (mozilla-patch "icecat-bug-1379538.patch" "8fa66bc91b07" "1l44rwkdrv9y41nfb9h3fkykk3ci7xclp6rfwbbzm4293l00adrd") + (mozilla-patch "icecat-CVE-2017-7779-pt18.patch" "7c095249ef8a" "05dbvxlmh7jljjmis540nfgk2nn968prmxrm96674avn33989sqy") + (mozilla-patch "icecat-bug-1073952.patch" "06db7fb30689" "19qf9lrwy48fjzz3wpjfxsgqab68dnlci8jrwsljhpy6787xwxg2") + (mozilla-patch "icecat-CVE-2017-7803.patch" "c52d8ce8d5df" "03l9hk278b9mw75rxpn2ay1slyz21axa2l7dfxwkvj5vdn7ykdbj") + (mozilla-patch "icecat-CVE-2017-7779-pt19.patch" "d68c9edf056f" "0zfz0l9m675n4vvm87n8g3bdhhysla4qnywli5kwjy4krj9kq6qa") + (mozilla-patch "icecat-CVE-2017-7779-pt20.patch" "5dd82ab194b9" "10mdzwxibnmqs7y5arf8sjnva31i5vhbprlc63n74h8gh8k5kdlp") + (mozilla-patch "icecat-CVE-2017-7779-pt21.patch" "8fc70b2b57a8" "0yszfmb47x3rrzn5wncv112c1b7xw11j62adx4f7950fdj7zqr32") + (mozilla-patch "icecat-bug-1379444.patch" "47dd26630291" "0r2rc634sr4a5mfc53p1wx8d0zm6dsxiw2vzc7l89mac0d0cmi5n") + (mozilla-patch "icecat-bug-1372467.patch" "0f906e04a41d" "0f2zdpnb23yg3v5f1ha24cmagcwa01kf2xz1l2lcws4ss1w5b4a9") + (mozilla-patch "icecat-bug-1372383.patch" "56349462ff47" "17gc7kf0i367c1yh2w1701k8snvdm04nznc3q3yxdl3wxkh3c3sb") + (mozilla-patch "icecat-CVE-2017-7779-pt22.patch" "7b79969a18ee" "0ixycxbjh0wmihrhzpyjbkcnvwwrzs3ffb0lymzvqnr90yxvxhyy") + (mozilla-patch "icecat-CVE-2017-7779-pt23.patch" "f0ab032fd674" "04wc4i94cfj2vcawrv7hgbb70fkxggi7s6srk3i184686rczzpyw") + (mozilla-patch "icecat-bug-1308908.patch" "48a89721d076" "01gvdzy6whp2dqmjvx49f4mvl75dhjgr8dvx71pg4sx3xmdbkzyq") + (mozilla-patch "icecat-bug-1347667.patch" "ef1d17821945" "0s6gaarnvnibgf9x0xqcymaqc63lnbh9fm2g33i8cpp1xjhmywcv") + (mozilla-patch "icecat-bug-1367128-pt1.patch" "5a0f69630b03" "1vqbwmy58qxwfaisq0dxvvbsd5w5i4yb691i78gw1dv7kgf523qy") + (mozilla-patch "icecat-bug-1367128-pt2.patch" "7db52eca97b2" "081p8izjxscylfs090c9mzlmfvpdfvg1qsf5rik30hvifcpxp6lq") + (mozilla-patch "icecat-bug-1367128-pt3.patch" "c448439eb5dc" "18gp7mg3zh9dxi1300mcm0zk67nlmvp5q50gnyc1v2sv0gs6fdfb") + (mozilla-patch "icecat-bug-1377016.patch" "319a986ae1f4" "1dlmrklkpx42c72pblpw1fi91dhqarqyl3ldnd4943x2hsy3am8k") + (mozilla-patch "icecat-bug-1342433.patch" "09f5bd33efb8" "0dky981ggyc0237mbbyy1chndk0aznkhw00d3lrafiyxsyk6vg3z") + (mozilla-patch "icecat-bug-1359058-pt1.patch" "7ccb26caa02f" "1q97f4qbwjnz6f3g5dcy2v0av9jgbaplaz9pnm5yqdc250f5bhjz") + (mozilla-patch "icecat-bug-1359058-pt2.patch" "a93c1a40f0d8" "0gafbwv2npdjqh41fpvzmzdw3kcw1b41gm3jg9biwqxxwnvqqmfj") + (mozilla-patch "icecat-bug-1382303-pt1.patch" "688c9284fb12" "1rqimwkh8krihabsx7x2awvxls8n9dm2bmbl133fnkp2sjya979w") + (mozilla-patch "icecat-bug-1382303-pt2.patch" "7f969ba7b6e8" "036n1yrmmb6gydxcgyps89g63kj1w2rihk1zsmk7yw3crln226ai") + (mozilla-patch "icecat-bug-1382303-pt3.patch" "7e7b4f104462" "0wkw72qqyql528hvssrqyq72f5csfxa5fgv5s903csh97vawfl7i") + (mozilla-patch "icecat-bug-1383000.patch" "ce65d0641c07" "08bxn3b8rgjhkvdndc7mrd0k1715wbpa5qaxhslxlgj6lpkgk0b1") + (mozilla-patch "icecat-CVE-2017-7807.patch" "a86c77d533ee" "0mzfxpyk4484dk3j1sgplakx39ya0jnp3plxvcmvlc47ry60yq93") + (mozilla-patch "icecat-bug-1346620.patch" "d71000abc9bf" "10d632nq5zbhndrsx2vpkl7jprlnas361n1yh9s9szn8k4mj01rf") + (mozilla-patch "icecat-bug-1381016.patch" "c74486f87dc3" "1l938a2lhrlqfhmgrpypx13v6jw08528m4gnllr2h5sk2x65czip") + (mozilla-patch "icecat-bug-1371657.patch" "20a1a6ad46d5" "17yn5dpymrymgdywah403fzw0p2y9bjkccg0h4d221i3pwns4bcz"))) (modules '((guix build utils))) (snippet '(begin From c3317cd9fbbe58e4763ce1794314d9d4410468fe Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 18:09:33 +0200 Subject: [PATCH 0847/1227] gnu: r-ggbeeswarm: Update to 0.6.0. * gnu/packages/statistics.scm (r-ggbeeswarm): Update to 0.6.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 6d5cbb43a3..3769a195cd 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4186,13 +4186,13 @@ representation of R code.") (define-public r-ggbeeswarm (package (name "r-ggbeeswarm") - (version "0.5.3") + (version "0.6.0") (source (origin (method url-fetch) (uri (cran-uri "ggbeeswarm" version)) (sha256 (base32 - "1jgp55rvmzc4agcrlsjn8m5lk85di9c4wj94xzikqkql4lvq3qpd")))) + "0crk29p5vi1r3a988kms4y7r0iqwgwzsikgvh18r9wbzyr98bb5v")))) (build-system r-build-system) (propagated-inputs `(("r-beeswarm" ,r-beeswarm) From 0ecd0658394ea0df7ee51f0633f5a8d011617c14 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 18:09:55 +0200 Subject: [PATCH 0848/1227] gnu: r-gdtools: Update to 0.1.5. * gnu/packages/statistics.scm (r-gdtools): Update to 0.1.5. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 3769a195cd..3daaa6a8b2 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1031,14 +1031,14 @@ aesthetic attributes.") (define-public r-gdtools (package (name "r-gdtools") - (version "0.1.4") + (version "0.1.5") (source (origin (method url-fetch) (uri (cran-uri "gdtools" version)) (sha256 (base32 - "0l8c4bh6765x9s6rw3mfm1bgicdzdngir1kxh9pxx4sidrdndcip")))) + "09y9x09gri33ghhrvjjnj5k5rk0kdpsk3wq02cln8gmywd6728vk")))) (build-system r-build-system) (native-inputs `(("r-rcpp" ,r-rcpp) From 23841b257343398bba23f6f5ae0df8a90c7cf604 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 18:12:03 +0200 Subject: [PATCH 0849/1227] gnu: Add r-pcapp. * gnu/packages/statistics.scm (r-pcapp): New variable. --- gnu/packages/statistics.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 3daaa6a8b2..88cb462a74 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4601,6 +4601,28 @@ can be efficiently implemented directly in the R language.") regression methodology including model selections and multivariate statistics.") (license license:gpl2+))) +(define-public r-pcapp + (package + (name "r-pcapp") + (version "1.9-72") + (source + (origin + (method url-fetch) + (uri (cran-uri "pcaPP" version)) + (sha256 + (base32 + "0i2822bv86dpqmk3q17x61nsp3gjjnn4nr8191rwvbiib7xhpgaq")))) + (properties `((upstream-name . "pcaPP"))) + (build-system r-build-system) + (propagated-inputs + `(("r-mvtnorm" ,r-mvtnorm))) + (home-page "http://cran.r-project.org/web/packages/pcaPP") + (synopsis "Robust PCA by projection pursuit") + (description + "This package provides functions for robust @dfn{principal component +analysis} (PCA) by projection pursuit.") + (license license:gpl3+))) + (define-public r-trimcluster (package (name "r-trimcluster") From 0bae5fd6a703ff82aad3d749da0209aac6a9c1fb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 18:12:20 +0200 Subject: [PATCH 0850/1227] gnu: Add r-rrcov. * gnu/packages/statistics.scm (r-rrcov): New variable. --- gnu/packages/statistics.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 88cb462a74..4c04832fff 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4623,6 +4623,33 @@ regression methodology including model selections and multivariate statistics.") analysis} (PCA) by projection pursuit.") (license license:gpl3+))) +(define-public r-rrcov + (package + (name "r-rrcov") + (version "1.4-3") + (source + (origin + (method url-fetch) + (uri (cran-uri "rrcov" version)) + (sha256 + (base32 + "0kagqggi634mvrhd67ia7mpjrj5v6w2wq0z3kyppg5xkvzh335nq")))) + (build-system r-build-system) + (propagated-inputs + `(("r-cluster" ,r-cluster) + ("r-lattice" ,r-lattice) + ("r-mvtnorm" ,r-mvtnorm) + ("r-pcapp" ,r-pcapp) + ("r-robustbase" ,r-robustbase))) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "http://cran.r-project.org/web/packages/rrcov") + (synopsis "Scalable robust estimators with high breakdown Point") + (description + "This package provides an implementation of robust location and scatter +estimation and robust multivariate analysis with high breakdown point.") + (license license:gpl2+))) + (define-public r-trimcluster (package (name "r-trimcluster") From 5d0afe88497d81ac378c59890c1f517e6fc22bb2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 18:12:39 +0200 Subject: [PATCH 0851/1227] gnu: Add r-fit-models. * gnu/packages/statistics.scm (r-fit-models): New variable. --- gnu/packages/statistics.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 4c04832fff..fae5d8d8d1 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4650,6 +4650,34 @@ analysis} (PCA) by projection pursuit.") estimation and robust multivariate analysis with high breakdown point.") (license license:gpl2+))) +(define-public r-fit-models + (package + (name "r-fit-models") + (version "0.5-14") + (source + (origin + (method url-fetch) + (uri (cran-uri "fit.models" version)) + (sha256 + (base32 + "0vjbzmx0ambm6yzidb4vbgmhclwzwv2iz2cwl54ccdkvx4cx3fck")))) + (properties `((upstream-name . "fit.models"))) + (build-system r-build-system) + (propagated-inputs + `(("r-lattice" ,r-lattice))) + (home-page "http://cran.r-project.org/web/packages/fit.models") + (synopsis "Compare fitted models") + (description + "The @code{fit.models} function and its associated methods (coefficients, print, +summary, plot, etc.) were originally provided in the @code{robust} package to +compare robustly and classically fitted model objects. The aim of the +@code{fit.models} package is to separate this fitted model object comparison +functionality from the robust package and to extend it to support fitting +methods (e.g., classical, robust, Bayesian, regularized, etc.) more +generally.") + ;; Any version of the GPL + (license (list license:gpl2+ license:gpl3+)))) + (define-public r-trimcluster (package (name "r-trimcluster") From c5f744a68d3f357d63a87fcc349e0d9b343d4f0a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 18:12:55 +0200 Subject: [PATCH 0852/1227] gnu: Add r-robust. * gnu/packages/statistics.scm (r-robust): New variable. --- gnu/packages/statistics.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index fae5d8d8d1..bdee8e59c7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4678,6 +4678,34 @@ generally.") ;; Any version of the GPL (license (list license:gpl2+ license:gpl3+)))) +(define-public r-robust + (package + (name "r-robust") + (version "0.4-18") + (source + (origin + (method url-fetch) + (uri (cran-uri "robust" version)) + (sha256 + (base32 + "1b7qh1aff500nd6dh4y2ipmjgdiq8991shflb63pc39vpc0ny6g4")))) + (build-system r-build-system) + (propagated-inputs + `(("r-fit-models" ,r-fit-models) + ("r-lattice" ,r-lattice) + ("r-mass" ,r-mass) + ("r-robustbase" ,r-robustbase) + ("r-rrcov" ,r-rrcov))) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "http://cran.r-project.org/web/packages/robust") + (synopsis "Port of the S+ \"Robust Library\"") + (description + "This package is a port of the S+ \"Robust Library\". It provides +methods for robust statistics, notably for robust regression and robust +multivariate analysis.") + (license license:gpl2))) + (define-public r-trimcluster (package (name "r-trimcluster") From 1b22ecdac453504b2fcd84994f6909267fdc66e2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 18:13:10 +0200 Subject: [PATCH 0853/1227] gnu: r-wgcna: Update to 1.61. * gnu/packages/bioinformatics.scm (r-wgcna): Update to 1.61. [propagated-inputs]: Add r-rcpp, r-robust, r-survival. --- gnu/packages/bioinformatics.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 02b338be6e..92c64cffa0 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8067,14 +8067,14 @@ in SNV base substitution data.") (define-public r-wgcna (package (name "r-wgcna") - (version "1.60") + (version "1.61") (source (origin (method url-fetch) (uri (cran-uri "WGCNA" version)) (sha256 (base32 - "16mxhwzhh5q48wmz1iba2r21cp0n0v8g11am4pi52iv6g0663ixl")))) + "1vrc2k33a196hrrl7k0z534fp96vv0shmigcr65ny1q0v6lq0h6i")))) (properties `((upstream-name . "WGCNA"))) (build-system r-build-system) (propagated-inputs @@ -8086,6 +8086,9 @@ in SNV base substitution data.") ("r-go-db" ,r-go-db) ("r-hmisc" ,r-hmisc) ("r-impute" ,r-impute) + ("r-rcpp" ,r-rcpp) + ("r-robust" ,r-robust) + ("r-survival" ,r-survival) ("r-matrixstats" ,r-matrixstats) ("r-preprocesscore" ,r-preprocesscore))) (home-page From 10756b9ed17a3646be2306e332741fba479e797e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 9 Aug 2017 14:41:13 -0400 Subject: [PATCH 0854/1227] gnu: gnupg: Update to 2.1.23. * gnu/packages/gnupg.scm (gnupg): Update to 2.1.23. [arguments]: Remove 'enable-gpg2-is-gpg' from #:configure-flags, since it is now the default. --- gnu/packages/gnupg.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index a9d8679a29..5a9d6ac637 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -228,14 +228,14 @@ compatible to GNU Pth.") (define-public gnupg (package (name "gnupg") - (version "2.1.22") + (version "2.1.23") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "1msazgy1q1pp7y2xr46z0il4pfzmzgzkp7v0hv5cz4hvkspnywa6")))) + "0xqd5nm4j3w9lwk35vg57gl2i8bfkmx7d24i44gkbscm2lwpci59")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -254,8 +254,7 @@ compatible to GNU Pth.") ("sqlite" ,sqlite) ("zlib" ,zlib))) (arguments - `(#:configure-flags '("--enable-gpg2-is-gpg" - ;; Otherwise, the test suite looks for the `gpg` + `(#:configure-flags '(;; Otherwise, the test suite looks for the `gpg` ;; executable in its installation directory in ;; /gnu/store before it has been installed. "--enable-gnupg-builddir-envvar") From df851f5a91bb2ea272d0b997ac862c7a58c40721 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 9 Aug 2017 15:53:24 -0400 Subject: [PATCH 0855/1227] download: Add the canonical GnuPG download site. * guix/download.scm (%mirrors): Add https://gnupg.org. --- guix/download.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/guix/download.scm b/guix/download.scm index d7590d4110..bf818e3cdf 100644 --- a/guix/download.scm +++ b/guix/download.scm @@ -67,12 +67,13 @@ ,@(map (cut string-append <> "/gcc") gnu-mirrors)) (gnupg "http://gd.tuwien.ac.at/privacy/gnupg/" + "http://artfiles.org/gnupg.org" + "http://www.crysys.hu/" + "https://gnupg.org/ftp/gcrypt/" "ftp://mirrors.dotsrc.org/gcrypt/" "ftp://mirror.cict.fr/gnupg/" - "http://artfiles.org/gnupg.org" "ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/" "ftp://ftp.freenet.de/pub/ftp.gnupg.org/gcrypt/" - "http://www.crysys.hu/" "ftp://ftp.hi.is/pub/mirrors/gnupg/" "ftp://ftp.heanet.ie/mirrors/ftp.gnupg.org/gcrypt/" "ftp://ftp.bit.nl/mirror/gnupg/" From ae7f246cf1c7e20ebf4025024bb10361938abaa2 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 9 Aug 2017 16:52:22 -0400 Subject: [PATCH 0856/1227] gnu: python-nbformat: Update to 4.3.0. * gnu/packages/python.scm (python-nbformat, python2-nbformat): Update to 4.3.0. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 79c6eca00f..af320dfc0d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7981,14 +7981,14 @@ Debian-related files, such as: (define-public python-nbformat (package (name "python-nbformat") - (version "4.1.0") + (version "4.3.0") (source (origin (method url-fetch) (uri (pypi-uri "nbformat" version)) (sha256 (base32 - "0mq8iki3d4mnx7wy05phss7x98mds4fqydin8lcagidp1knw1xnv")))) + "12s7j4qja8b5bs1kyw5dzmrqbjxxj8wk52cyasbiqbv7fblcrssz")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; no test target (propagated-inputs From 2e8c61fcf015ca4ef1c12d9fe56b8b9c0986932b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 9 Aug 2017 22:53:48 +0200 Subject: [PATCH 0857/1227] gnu: samba: Update to 4.6.7. * gnu/packages/samba.scm (samba): Update to 4.6.7. --- gnu/packages/samba.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 4a7880cfe5..116d7f60ec 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -149,14 +149,14 @@ anywhere.") (define-public samba (package (name "samba") - (version "4.6.6") + (version "4.6.7") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 (base32 - "13hs7xplygbl5dgwnn3l0hkbc0a282wdrkbx5c7y6nnqyw4whcgw")))) + "1ynxndfk45zkkylz3jsrx42a7kmm42jddk5bdhihyf88vs9l7wly")))) (build-system gnu-build-system) (arguments '(#:phases From 79d9525071634cae21bd7606abe8486fdb7f9ce7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 9 Aug 2017 21:04:04 +0200 Subject: [PATCH 0858/1227] gnu: curl: Update replacement to 7.55.0. [security fixes] Fixes CVE-2017-1000099, CVE-2017-1000100, and CVE-2017-100101. See for details. * gnu/packages/curl.scm (curl)[replacement]: Update to 7.55.0. (curl-7.54.1): Rename to ... (curl-7.55.0): ... this. [source]: Update source URI to match upstream compression method change. [arguments]: Add 'fix-Makefile' phase. --- gnu/packages/curl.scm | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index a9f219b621..d6e32e4389 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Tomáš Čech ;;; Copyright © 2015 Ludovic Courtès ;;; Copyright © 2016, 2017 Leo Famulari +;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages compression) @@ -40,7 +42,7 @@ (define-public curl (package (name "curl") - (replacement curl-7.54.1) + (replacement curl-7.55.0) (version "7.53.0") (source (origin (method url-fetch) @@ -121,15 +123,27 @@ tunneling, and so on.") "See COPYING in the distribution.")) (home-page "https://curl.haxx.se/"))) -(define curl-7.54.1 +(define-public curl-7.55.0 (package (inherit curl) - (version "7.54.1") + (version "7.55.0") (source (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" - version ".tar.lzma")) + version ".tar.xz")) (sha256 (base32 - "0vnv3cz0s1l5cjby86hm0x6pgzqijmdm97qa9q5px200956z6yib")))))) + "1785vxi0jamiv9d1wr1l45g0fm9ircxdfyfzf7ld8zv0z0i8bmfd")))) + (arguments + `(,@(substitute-keyword-arguments (package-arguments curl) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'install 'fix-Makefile + ;; Fix a regression in 7.55.0 where docs are not installed. + ;; https://github.com/curl/curl/commit/a7bbbb7c368c6096802007f61f19a02e9d75285b + (lambda _ + (substitute* "Makefile" + (("install-data-hook:\n") + "install-data-hook:\n\tcd docs/libcurl && $(MAKE) install\n")) + #t))))))))) From 4c6c683862579b9f1fa6782b9482054eb1059225 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 10 Aug 2017 00:05:22 +0200 Subject: [PATCH 0859/1227] gnu: nmap: Update to 7.60. * gnu/packages/admin.scm (nmap): Update to 7.60. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c0e5269f69..00e05c814e 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1599,14 +1599,14 @@ done with the @code{auditctl} utility.") (define-public nmap (package (name "nmap") - (version "7.50") + (version "7.60") (source (origin (method url-fetch) (uri (string-append "https://nmap.org/dist/nmap-" version ".tar.bz2")) (sha256 (base32 - "1ckl2qxqxkrfa2qxdrqyaa4k1hhj273aqckrc46fijdz0a76mag9")) + "08bga42ipymmbxd7wy4x5sl26c0ir1fm3n9rc6nqmhx69z66wyd8")) (modules '((guix build utils))) (snippet '(map delete-file-recursively From c795bc79d93ea885921e51a68cd13dfa762a3254 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 26 Jul 2017 11:37:30 +0100 Subject: [PATCH 0860/1227] gnu: Add python-tornado-http-auth. * gnu/packages/python.scm (python-tornado-http-auth): New variable. --- gnu/packages/python.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index af320dfc0d..731fee6333 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -6560,6 +6560,29 @@ connection to each user.") ("python2-singledispatch" ,python2-singledispatch) ,@(package-propagated-inputs tornado)))))) +(define-public python-tornado-http-auth + (package + (name "python-tornado-http-auth") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "tornado-http-auth" version)) + (sha256 + (base32 + "0znrgqd7k2s4ia474xizi6h3061zj4sn5n6cq76bkwl3wwshifn5")))) + (build-system python-build-system) + (propagated-inputs + `(("python-tornado" ,python-tornado))) + (home-page + "https://github.com/gvalkov/tornado-http-auth") + (synopsis + "Digest and basic authentication module for Tornado") + (description + "Provides support for adding authentication to services using the Tornado +web framework, either via the basic or digest authentication schemes.") + (license license:asl2.0))) + ;; the python- version can be removed with python-3.5 (define-public python-backports-abc (package From 761f5865c8fe1a6cda5d1481782ecf3f8fff4602 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 26 Jul 2017 11:37:42 +0100 Subject: [PATCH 0861/1227] gnu: Update tailon to version 1.3.0. From version 1.1.1. * gnu/packages/logging.scm (tailon)[version]: Change to 1.3.0. [inputs]: Add python-tornado-http-auth. --- gnu/packages/logging.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm index eecfe45581..b4f7caf56a 100644 --- a/gnu/packages/logging.scm +++ b/gnu/packages/logging.scm @@ -96,18 +96,19 @@ command line.") (define-public tailon (package (name "tailon") - (version "1.1.1") + (version "1.3.0") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "08clrwpfdxcv2z2b5ardpmim4alahbw4l7631dhw62xhbcf6wjzz")))) + "0wl2wm6p3pc0vkk33s7rzgcfvs9cwxfmlz997pdfhlw72r00l7s5")))) (build-system python-build-system) (inputs `(("python-pyyaml" ,python-pyyaml) ("python-sockjs-tornado" ,python-sockjs-tornado) + ("python-tornado-http-auth" ,python-tornado-http-auth) ("python-tornado" ,python-tornado))) (arguments `(#:phases From f2d8e7f720c92dfb0f49d61f7b66d45e3e63e4cd Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 26 Jul 2017 12:22:38 +0100 Subject: [PATCH 0862/1227] services: Add missing wrap-lines option to tailon. * gnu/services/admin.scm (): Add wrap-lines. (tailon-configuration-wrap-lines): New procedure. (tailon-configuration-file-compiler): Add support for wrap-lines. * doc/guix.texi (Monitoring Services): Document the wrap-lines Tailon configuration option. --- doc/guix.texi | 5 +++++ gnu/services/admin.scm | 12 +++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 88bf0bb621..e4903be831 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13769,6 +13769,11 @@ Commands to allow running. By default, @code{sed} is disabled. @item @code{debug?} (default: @code{#f}) Set @code{debug?} to @code{#t} to show debug messages. +@item @code{wrap-lines} (default: @code{#t}) +Initial line wrapping state in the web interface. Set to @code{#t} to +initially wrap lines (the default), or to @code{#f} to initially not +wrap lines. + @end table @end deftp diff --git a/gnu/services/admin.scm b/gnu/services/admin.scm index 1044833fef..19169427c0 100644 --- a/gnu/services/admin.scm +++ b/gnu/services/admin.scm @@ -59,6 +59,8 @@ tailon-configuration-file-tail-lines tailon-configuration-file-allowed-commands tailon-configuration-file-debug? + tailon-configuration-file-wrap-lines + tailon-configuration @@ -220,7 +222,9 @@ for ROTATION." (allowed-commands tailon-configuration-file-allowed-commands (default '("tail" "grep" "awk"))) (debug? tailon-configuration-file-debug? - (default #f))) + (default #f)) + (wrap-lines tailon-configuration-file-wrap-lines + (default #t))) (define (tailon-configuration-files-string files) (string-append @@ -249,7 +253,8 @@ for ROTATION." (match file (($ files bind relative-root allow-transfers? follow-names? - tail-lines allowed-commands debug?) + tail-lines allowed-commands debug? + wrap-lines) (text-file "tailon-config.yaml" (string-concatenate @@ -267,7 +272,8 @@ for ROTATION." ("commands" . ,(string-append "[" (string-join allowed-commands ", ") "]")) - ,@(if debug? '(("debug" . "true")) '())))))))) + ,@(if debug? '(("debug" . "true")) '()) + ("wrap-lines" . ,(if wrap-lines "true" "false"))))))))) (define-record-type* tailon-configuration make-tailon-configuration From 91fdc8a574cccecd55d042bc1f76ab7f7d3adced Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 26 Jul 2017 12:18:06 +0100 Subject: [PATCH 0863/1227] services: Update the Tailon service for Tailon 1.3.0. Tailon 1.3.0 (upgraded from 1.1.1) adds support for HTTP authentication. * gnu/services/admin.scm (): Add http-auth and users configuration values. (tailon-configuration-file-http-auth, tailon-configuration-file-users): New procedures. (tailon-configuration-file-compiler): Add support for the http-auth and users configuration options. * doc/guix.texi (Monitoring Services): Document authentication for Tailon. --- doc/guix.texi | 18 ++++++++++++++++++ gnu/services/admin.scm | 24 +++++++++++++++++++----- 2 files changed, 37 insertions(+), 5 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index e4903be831..c7787e4a8e 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -13774,6 +13774,24 @@ Initial line wrapping state in the web interface. Set to @code{#t} to initially wrap lines (the default), or to @code{#f} to initially not wrap lines. +@item @code{http-auth} (default: @code{#f}) +HTTP authentication type to use. Set to @code{#f} to disable +authentication (the default). Supported values are @code{"digest"} or +@code{"basic"}. + +@item @code{users} (default: @code{#f}) +If HTTP authentication is enabled (see @code{http-auth}), access will be +restricted to the credentials provided here. To configure users, use a +list of pairs, where the first element of the pair is the username, and +the 2nd element of the pair is the password. + +@example +(tailon-configuration-file + (http-auth "basic") + (users '(("user1" . "password1") + ("user2" . "password2")))) +@end example + @end table @end deftp diff --git a/gnu/services/admin.scm b/gnu/services/admin.scm index 19169427c0..e24aebae2c 100644 --- a/gnu/services/admin.scm +++ b/gnu/services/admin.scm @@ -59,8 +59,8 @@ tailon-configuration-file-tail-lines tailon-configuration-file-allowed-commands tailon-configuration-file-debug? - tailon-configuration-file-wrap-lines - + tailon-configuration-file-http-auth + tailon-configuration-file-users tailon-configuration @@ -224,7 +224,11 @@ for ROTATION." (debug? tailon-configuration-file-debug? (default #f)) (wrap-lines tailon-configuration-file-wrap-lines - (default #t))) + (default #t)) + (http-auth tailon-configuration-file-http-auth + (default #f)) + (users tailon-configuration-file-users + (default #f))) (define (tailon-configuration-files-string files) (string-append @@ -254,7 +258,7 @@ for ROTATION." (($ files bind relative-root allow-transfers? follow-names? tail-lines allowed-commands debug? - wrap-lines) + wrap-lines http-auth users) (text-file "tailon-config.yaml" (string-concatenate @@ -273,7 +277,17 @@ for ROTATION." (string-join allowed-commands ", ") "]")) ,@(if debug? '(("debug" . "true")) '()) - ("wrap-lines" . ,(if wrap-lines "true" "false"))))))))) + ("wrap-lines" . ,(if wrap-lines "true" "false")) + ("http-auth" . ,http-auth) + ("users" . ,(if users + (string-concatenate + (cons "\n" + (map (match-lambda + ((user . pass) + (string-append + " " user ":" pass))) + users))) + #f))))))))) (define-record-type* tailon-configuration make-tailon-configuration From 101205662588f033c944034f91e7d3cda06d6e56 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 26 Jul 2017 12:24:51 +0100 Subject: [PATCH 0864/1227] services: admin: Simplify the handling of the Tailon debug? option. * gnu/services/admin.scm (tailon-configuration-file-compiler): Simplify the handling of debug?. --- gnu/services/admin.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/admin.scm b/gnu/services/admin.scm index e24aebae2c..14452a86c7 100644 --- a/gnu/services/admin.scm +++ b/gnu/services/admin.scm @@ -276,7 +276,7 @@ for ROTATION." ("commands" . ,(string-append "[" (string-join allowed-commands ", ") "]")) - ,@(if debug? '(("debug" . "true")) '()) + ("debug" . ,(if debug? "true" #f)) ("wrap-lines" . ,(if wrap-lines "true" "false")) ("http-auth" . ,http-auth) ("users" . ,(if users From a88adeb34356e2b4b11595f868f2b09ee8b9f58c Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Mon, 31 Jul 2017 18:07:13 +0300 Subject: [PATCH 0865/1227] gnu: Add emacs-git-messenger. gnu/packages/emacs.scm (emacs-git-messenger): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 4aa713346f..16aacaadb3 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5225,3 +5225,40 @@ multiplexer.") (description "@code{emacs-rpm-spec-mode} provides an Emacs major mode for editing RPM spec files.") (license license:gpl2+))) + +(define-public emacs-git-messenger + (package + (name "emacs-git-messenger") + (version "0.18") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/syohex/emacs-git-messenger/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "17mqki6g0wx46fn7dcbcc2pjxik7vvrcb1j9jzxim8b9psbsbnp9")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-popup" ,emacs-popup))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'install 'check + (lambda* (#:key inputs #:allow-other-keys) + (zero? (system* "emacs" "--batch" "-L" "." + "-L" (string-append + (assoc-ref inputs "emacs-popup") + "/share/emacs/site-lisp/guix.d/popup-" + ,(package-version emacs-popup)) + "-l" "test/test.el" + "-f" "ert-run-tests-batch-and-exit"))))))) + (home-page "https://github.com/syohex/emacs-git-messenger") + (synopsis "Popup commit message at current line") + (description "@code{emacs-git-messenger} provides +@code{git-messenger:popup-message}, a function that when called, will popup +the last git commit message for the current line. This uses git-blame +internally.") + (license license:gpl3+))) From 1ee879e96705e6381c056358b7f426f2cf99c1df Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 Aug 2017 21:02:32 +0300 Subject: [PATCH 0866/1227] gnu: Add emacs-gitpatch. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit By the way, “gitpatch.el” says different version than release tarball. Do I need to ask a developer? --8<---------------cut here---------------start------------->8--- ;; Author: Feng Shu ;; Homepage: https://github.com/tumashu/gitpatch ;; Keywords: convenience ;; Package-Requires: ((emacs "24.3")) ;; Version: 0.10 --8<---------------cut here---------------end--------------->8--- >From 9eddf07fa401468738c2f48a25e51ddef2a3ceed Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 29 Jul 2017 14:22:48 +0300 Subject: [PATCH] gnu: Add emacs-gitpatch. * gnu/packages/emacs.scm (emacs-gitpatch): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 16aacaadb3..2cb37635d8 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5262,3 +5262,24 @@ editing RPM spec files.") the last git commit message for the current line. This uses git-blame internally.") (license license:gpl3+))) + +(define-public emacs-gitpatch + (package + (name "emacs-gitpatch") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/tumashu/gitpatch/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1yj6pmic541lcnscjin300k380qp9xdfprs55xg1q57jrkq6f6k7")))) + (build-system emacs-build-system) + (home-page "https://github.com/tumashu/gitpatch") + (synopsis "Mail git patch from Emacs") + (description "@code{emacs-gitpatch} lets users easily send git patches, +created by @code{git format-patch}, from @code{magit}, @code{dired} and +@code{ibuffer} buffers.") + (license license:gpl3+))) From 27feda65e769c72adc8f20f59bfdb299e38b99bd Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 Aug 2017 20:55:21 +0300 Subject: [PATCH 0867/1227] gnu: Add emacs-erc-hl-nicks. * gnu/packages/emacs.scm (emacs-erc-hl-nicks): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 2cb37635d8..5f334364a3 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5283,3 +5283,30 @@ internally.") created by @code{git format-patch}, from @code{magit}, @code{dired} and @code{ibuffer} buffers.") (license license:gpl3+))) + +(define-public emacs-erc-hl-nicks + (package + (name "emacs-erc-hl-nicks") + (version "1.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/leathekd/erc-hl-nicks" + "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "01svpl9bps5kx4y1wnymakxya2cznqmlynvqv2r500wpnbxczrbs")))) + (build-system emacs-build-system) + (synopsis "Nickname highlighting for Emacs ERC") + (description "@code{erc-hl-nicks} highlights nicknames in ERC, an IRC +client for Emacs. The main features are: +@itemize +@item Auto-colorizes nicknames without having to specify colors +@item Ignores certain characters that IRC clients add to nicknames to avoid +duplicates (nickname, nickname’, nickname\", etc.) +@item Attempts to produce colors with a sufficient amount of contrast between +the nick color and the background color +@end itemize\n") + (home-page "https://github.com/leathekd/erc-hl-nicks") + (license license:gpl3+))) From 37b08547e4c2f6f4be390baa3608abe8b01aed9c Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 10 Aug 2017 22:20:38 +1000 Subject: [PATCH 0868/1227] gnu: ruby-bio-commandeer: Update to 0.4.0. * gnu/packages/ruby.scm (ruby-bio-commandeer): Update to 0.4.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 02cc6e6fde..86e6cfd5f5 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3658,14 +3658,14 @@ subprocess.") (define-public ruby-bio-commandeer (package (name "ruby-bio-commandeer") - (version "0.2.0") + (version "0.4.0") (source (origin (method url-fetch) (uri (rubygems-uri "bio-commandeer" version)) (sha256 (base32 - "1xlcnh13r33zybpmqniw0j8q5n0kq9al67ygqpf0xbbwxnnkqqvj")))) + "0khpfw1yl5l3d2m8nxpkk32ybc4c3pa5hic3agd160jdfjjjnlni")))) (build-system ruby-build-system) (arguments `(#:phases From c63b83a40febdeab19e965da579de7b22a1ec424 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 14:29:03 +0200 Subject: [PATCH 0869/1227] gnu: vdirsyncer: Update to 0.16.1. * gnu/packages/dav.scm (vdirsyncer): Update to 0.16.1. --- gnu/packages/dav.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm index 60a628c119..86cfaa64b1 100644 --- a/gnu/packages/dav.scm +++ b/gnu/packages/dav.scm @@ -55,13 +55,13 @@ clients.") (define-public vdirsyncer (package (name "vdirsyncer") - (version "0.16.0") + (version "0.16.1") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "0n59mhcrm24bncnphigqqnifivxgsg87pidz6gshijkkjdwzmnyg")))) + "0pnsb9h4r0hhmqhzx9nbrd7jawir9ysrh3wrrkhzi0ssarmxyp67")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases From 226685faa520ae0230192882d5f978313c5c2256 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 17:06:59 +0200 Subject: [PATCH 0870/1227] gnu: cppcheck: Update to 1.80. * gnu/packages/check.scm (cppcheck): Update to 1.80. --- gnu/packages/check.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index ddfcf1750f..db11d93bef 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -181,13 +181,13 @@ format.") (define-public cppcheck (package (name "cppcheck") - (version "1.79") + (version "1.80") (source (origin (method url-fetch) (uri (string-append "https://github.com/danmar/cppcheck/archive/" version ".tar.gz")) (sha256 - (base32 "1qf7l0hx2k2qsc1rm3gh00bc0hwf9wqkrvrk08141yjj2js2y8lw")) + (base32 "007hs15i2pn49l6kycy49h3bj66qh6fxrp6yidj3776n32q3v1i0")) (file-name (string-append name "-" version ".tar.gz")))) (build-system cmake-build-system) (home-page "http://cppcheck.sourceforge.net") From ddde3f6be193e5a2703f3db60aec3fa8bbefc834 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 17:07:34 +0200 Subject: [PATCH 0871/1227] gnu: catimg: Update to 2.4.0. * gnu/packages/image-viewers.scm (catimg): Update to 2.4.0. --- gnu/packages/image-viewers.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index b8a8af9280..07a62715de 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -256,7 +256,7 @@ your images. Among its features are: (define-public catimg (package (name "catimg") - (version "2.3.2") + (version "2.4.0") (source (origin (method url-fetch) @@ -265,7 +265,7 @@ your images. Among its features are: (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0n78sl8mxyky9zcih2znzcnb9dbfmvmrdwzj73jcxfh531cgcpi9")))) + "1rwgbq2imd5l4nql5hrz7rr5f4gz8aad1amlf0j3cxir8slpbd1y")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no tests From 783daa4982d8174c049310d2fbd71542d5635566 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 10 Aug 2017 12:24:37 -0400 Subject: [PATCH 0872/1227] gnu: libsoup: Update to 2.58.2 (fixes CVE-2017-2885). * gnu/packages/gnome.scm (libsoup): Update to 2.58.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index d7c29dc990..b362ba5e2d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2390,7 +2390,7 @@ libxml to ease remote use of the RESTful API.") (define-public libsoup (package (name "libsoup") - (version "2.58.1") + (version "2.58.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libsoup/" @@ -2398,7 +2398,7 @@ libxml to ease remote use of the RESTful API.") name "-" version ".tar.xz")) (sha256 (base32 - "1fggmshk2mfsyfvml6paki65xj9rv1s5p7ds41xmnx6yazsnkik2")))) + "0wkvs4kql1iam4cqy17wsi12b1pzhwr2127pyaxs7y0v3g5008s4")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments From f262f44683490dc0673f491e7d8bf67455238d13 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 Aug 2017 13:00:18 +0300 Subject: [PATCH 0873/1227] gnu: Add emacs-engine-mode. * gnu/packages/emacs.scm (emacs-engine-mode): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 5f334364a3..bb5d2349fd 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5310,3 +5310,24 @@ the nick color and the background color @end itemize\n") (home-page "https://github.com/leathekd/erc-hl-nicks") (license license:gpl3+))) + +(define-public emacs-engine-mode + (package + (name "emacs-engine-mode") + (version "2.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/hrs/engine-mode/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1vm4p7pcp1vnwwxvps1bhm7i7hkabqqxl898knxf2hqvxys76684")))) + (build-system emacs-build-system) + (synopsis "Minor mode for defining and querying search engines") + (description "@code{engine-mode} is a global minor mode for Emacs. It +enables you to easily define search engines, bind them to keybindings, and +query them from the comfort of your editor.") + (home-page "https://github.com/hrs/engine-mode") + (license license:gpl3+))) From 5993f7c455112e72eb1becf9f787045971ea4ece Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 10 Aug 2017 14:34:04 -0400 Subject: [PATCH 0874/1227] gnu: subversion: Update to 1.8.19 [fixes CVE-2017-9800]. * gnu/packages/version-control.scm (subversion): Update to 1.8.19. [source]: Add alternate URL. --- gnu/packages/version-control.scm | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 729746aed3..df315aec6c 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -817,14 +817,18 @@ following features: (define-public subversion (package (name "subversion") - (version "1.8.18") + (version "1.8.19") (source (origin (method url-fetch) - (uri (string-append "https://archive.apache.org/dist/subversion/" - "subversion-" version ".tar.bz2")) + (uri + (list + (string-append "https://archive.apache.org/dist/subversion/" + "subversion-" version ".tar.bz2") + (string-append "https://www-eu.apache.org/dist/subversion/" + "subversion-" version ".tar.bz2"))) (sha256 (base32 - "19lpqdrl86mjfdpayhn3f9rkmpb6zs2iny38cnxq6wcj7snh0sz5")))) + "1gp6426gkdza6ni2whgifjcmjb4nq34ljy07yxkrhlarvfq6ks2n")))) (build-system gnu-build-system) (arguments '(#:phases From 38f8a882abeb0091edaf52fc905451c3d392b00e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 10 Aug 2017 14:33:29 -0400 Subject: [PATCH 0875/1227] gnu: git: Update to 2.14.1 [fixes CVE-2017-1000117]. * gnu/packages/version-control.scm (git): Update to 2.14.1. --- gnu/packages/version-control.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index df315aec6c..55401c9287 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -121,14 +121,14 @@ as well as the classic centralized workflow.") (define-public git (package (name "git") - (version "2.14.0") + (version "2.14.1") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "0xarcp0m7jbncic0g3ahz8l2d6b27h0g9ndgrhy9abkx61m6wgpr")))) + "1iic3wiihxp3l3k6d4z886v3869c3dzgddjxnd5124wy1rnlqwkg")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -140,8 +140,9 @@ as well as the classic centralized workflow.") "mirror://kernel.org/software/scm/git/git-manpages-" version ".tar.xz")) (sha256 + (base32 - "0kc2n6b1lrbr0wc8lk3xnrljn4fgzgab82icv658gdvyl9l3qrbx")))))) + "1whlsiicayalym4hkf01zdiqpw37gdf7c52gw9ki7bv2x3hf3g3y")))))) (inputs `(("curl" ,curl) ("expat" ,expat) From 1e07daa27ae6e5c8976772533134d0b6be196f26 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 10 Aug 2017 14:36:37 -0400 Subject: [PATCH 0876/1227] gnu: mercurial: Update to 4.2.3 [fixes CVE-2017-1000116]. * gnu/packages/version-control.scm (mercurial): Update to 4.2.3. --- gnu/packages/version-control.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 55401c9287..bff6471559 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -740,14 +740,14 @@ control to Git repositories.") (define-public mercurial (package (name "mercurial") - (version "4.2.1") + (version "4.2.3") (source (origin (method url-fetch) (uri (string-append "https://www.mercurial-scm.org/" "release/mercurial-" version ".tar.gz")) (sha256 (base32 - "182qh6d0srps2n5sydzy8n3gi78la6m0wi3846zpyyd0b8pmgmfp")))) + "1b7p3z8lin6hyyzkskskp065qnyfxid2yxnjygni0n4yv33qz404")))) (build-system python-build-system) (arguments `(;; Restrict to Python 2, as Python 3 would require From 7b14c48bd25a93c18bfcb66b6afad75b5b150525 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 10 Aug 2017 16:08:40 -0400 Subject: [PATCH 0877/1227] doc: Fix typo. * doc/guix.texi (Invoking guix pack): Fix typo. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index c7787e4a8e..8f14ddd507 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -2599,7 +2599,7 @@ The available formats are: @table @code @item tarball This is the default format. It produces a tarball containing all the -specifies binaries and symlinks. +specified binaries and symlinks. @item docker This produces a tarball that follows the From 1a1558e88f1f119be9dca28dac0bf554bc6aa171 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 10 Aug 2017 21:22:30 +0200 Subject: [PATCH 0878/1227] gnu: postgresql: Update to 9.6.4 [fixes CVE-2017-{7546,7547,7548}]. See for more information. * gnu/packages/databases.scm (postgresql): Update to 9.6.4. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 13efc5edca..5944a9dddd 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -473,14 +473,14 @@ as a drop-in replacement of MySQL.") (define-public postgresql (package (name "postgresql") - (version "9.6.3") + (version "9.6.4") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "1imrjp4vfslxj5rrvphcrrk21zv8kqw3gacmwradixh1d5rv6i8n")))) + "04yffrrmn85k25n3nq389aa9c1j8mkimrf889kayl772h9nv2fib")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-uuid=e2fs") From c2f93e9c07c75e47078ab313ce9e0c90ff130eb1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 10 Aug 2017 21:35:32 +0200 Subject: [PATCH 0879/1227] gnu: openjpeg: Update to 2.2.0 [security fixes]. In addition to the patches we already had (which are not mentioned in the ChangeLog, but verified by following their respective GitHub issues) this release also fixes CVE-2016-9112, CVE-2016-5139, CVE-2016-5152, CVE-2016-5158, CVE-2016-5159, CVE-2016-1626 and CVE-2016-1628. See for details. * gnu/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch, gnu/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Remove them. * gnu/packages/image.scm (openjpeg): Update to 2.2.0. [source](patches): Remove. * gnu/packages/gstreamer.scm (gst-plugins-bad)[arguments]: Add phase to patch hard-coded openjpeg-2.1 path. --- gnu/local.mk | 2 - gnu/packages/gstreamer.scm | 11 +- gnu/packages/image.scm | 6 +- ...openjpeg-CVE-2016-9572-CVE-2016-9573.patch | 233 ----------------- ...openjpeg-CVE-2016-9850-CVE-2016-9851.patch | 245 ------------------ 5 files changed, 12 insertions(+), 485 deletions(-) delete mode 100644 gnu/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch delete mode 100644 gnu/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3d79d5d22d..b1ff72d6a6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -888,8 +888,6 @@ dist_patch_DATA = \ %D%/packages/patches/ola-readdir-r.patch \ %D%/packages/patches/openscenegraph-ffmpeg3.patch \ %D%/packages/patches/openexr-missing-samples.patch \ - %D%/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch \ - %D%/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch \ %D%/packages/patches/openldap-CVE-2017-9287.patch \ %D%/packages/patches/openocd-nrf52.patch \ %D%/packages/patches/openssl-runpath.patch \ diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 69b8ffabee..97fd52e160 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -275,7 +275,16 @@ developers consider to have good quality code and correct functionality.") #:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") - "/share/gtk-doc/html")))) + "/share/gtk-doc/html")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-openjpeg-reference + (lambda _ + ;; Remove hard-coded openjpeg-2.1 path. 2.2 is API- and + ;; ABI-compatible. + (substitute* "ext/openjpeg/gstopenjpeg.h" + ((" -Date: Mon, 28 Nov 2016 21:57:20 +0100 -Subject: [PATCH] Changes for issues #863 and #862 - ---- - src/bin/jp2/convert.c | 59 +++++++++++++++++++++++++++++++++++++++----- - src/bin/jp2/convertbmp.c | 29 +++++++++++++++++++++- - src/bin/jp2/opj_decompress.c | 2 +- - src/lib/openjp2/j2k.c | 11 ++++++--- - 4 files changed, 90 insertions(+), 11 deletions(-) - -diff --git a/src/bin/jp2/convert.c b/src/bin/jp2/convert.c -index deee4f6..6a3f65b 100644 ---- a/src/bin/jp2/convert.c -+++ b/src/bin/jp2/convert.c -@@ -906,7 +906,8 @@ int imagetotga(opj_image_t * image, const char *outfile) { - for (i = 0; i < image->numcomps-1; i++) { - if ((image->comps[0].dx != image->comps[i+1].dx) - ||(image->comps[0].dy != image->comps[i+1].dy) -- ||(image->comps[0].prec != image->comps[i+1].prec)) { -+ ||(image->comps[0].prec != image->comps[i+1].prec) -+ ||(image->comps[0].sgnd != image->comps[i+1].sgnd)) { - fclose(fdest); - fprintf(stderr, "Unable to create a tga file with such J2K image charateristics."); - return 1; -@@ -1743,7 +1744,7 @@ int imagetopnm(opj_image_t * image, const char *outfile, int force_split) - int *red, *green, *blue, *alpha; - int wr, hr, max; - int i; -- unsigned int compno, ncomp; -+ unsigned int compno, ncomp, ui; - int adjustR, adjustG, adjustB, adjustA; - int fails, two, want_gray, has_alpha, triple; - int prec, v; -@@ -1768,6 +1769,27 @@ int imagetopnm(opj_image_t * image, const char *outfile, int force_split) - - if(want_gray) ncomp = 1; - -+ for (ui = 1; ui < ncomp; ++ui) { -+ if (image->comps[0].dx != image->comps[ui].dx) { -+ break; -+ } -+ if (image->comps[0].dy != image->comps[ui].dy) { -+ break; -+ } -+ if (image->comps[0].prec != image->comps[ui].prec) { -+ break; -+ } -+ if (image->comps[0].sgnd != image->comps[ui].sgnd) { -+ break; -+ } -+ } -+ if (ui != ncomp) { -+ fprintf(stderr,"imagetopnm: All components\n shall have " -+ "the same subsampling, same bit depth, same sign.\n" -+ " Aborting\n"); -+ return 1; -+ } -+ - if ((force_split == 0) && - (ncomp == 2 /* GRAYA */ - || (ncomp > 2 /* RGB, RGBA */ -@@ -2126,7 +2148,7 @@ static int imagetoraw_common(opj_image_t * image, const char *outfile, OPJ_BOOL - { - FILE *rawFile = NULL; - size_t res; -- unsigned int compno; -+ unsigned int compno, numcomps; - int w, h, fails; - int line, row, curr, mask; - int *ptr; -@@ -2139,6 +2161,31 @@ static int imagetoraw_common(opj_image_t * image, const char *outfile, OPJ_BOOL - return 1; - } - -+ numcomps = image->numcomps; -+ -+ if (numcomps > 4) { -+ numcomps = 4; -+ } -+ for (compno = 1; compno < numcomps; ++compno) { -+ if (image->comps[0].dx != image->comps[compno].dx) { -+ break; -+ } -+ if (image->comps[0].dy != image->comps[compno].dy) { -+ break; -+ } -+ if (image->comps[0].prec != image->comps[compno].prec) { -+ break; -+ } -+ if (image->comps[0].sgnd != image->comps[compno].sgnd) { -+ break; -+ } -+ } -+ if (compno != numcomps) { -+ fprintf(stderr,"imagetoraw_common: All components shall have the same subsampling, same bit depth, same sign.\n"); -+ fprintf(stderr,"\tAborting\n"); -+ return 1; -+ } -+ - rawFile = fopen(outfile, "wb"); - if (!rawFile) { - fprintf(stderr, "Failed to open %s for writing !!\n", outfile); -@@ -2146,9 +2193,9 @@ static int imagetoraw_common(opj_image_t * image, const char *outfile, OPJ_BOOL - } - - fails = 1; -- fprintf(stdout,"Raw image characteristics: %d components\n", image->numcomps); -+ fprintf(stdout,"Raw image characteristics: %d components\n", numcomps); - -- for(compno = 0; compno < image->numcomps; compno++) -+ for(compno = 0; compno < numcomps; compno++) - { - fprintf(stdout,"Component %u characteristics: %dx%dx%d %s\n", compno, image->comps[compno].w, - image->comps[compno].h, image->comps[compno].prec, image->comps[compno].sgnd==1 ? "signed": "unsigned"); -@@ -2238,7 +2285,7 @@ static int imagetoraw_common(opj_image_t * image, const char *outfile, OPJ_BOOL - } - else if (image->comps[compno].prec <= 32) - { -- fprintf(stderr,"More than 16 bits per component no handled yet\n"); -+ fprintf(stderr,"More than 16 bits per component not handled yet\n"); - goto fin; - } - else -diff --git a/src/bin/jp2/convertbmp.c b/src/bin/jp2/convertbmp.c -index ae83077..8017ba8 100644 ---- a/src/bin/jp2/convertbmp.c -+++ b/src/bin/jp2/convertbmp.c -@@ -806,8 +806,35 @@ int imagetobmp(opj_image_t * image, const char *outfile) { - FILE *fdest = NULL; - int adjustR, adjustG, adjustB; - -+ { -+ unsigned int ui, ncomp = image->numcomps; -+ -+ if (ncomp > 4) { /* RGBA in bmpmask32toimage */ -+ ncomp = 4; -+ } -+ for (ui = 1; ui < ncomp; ++ui) { -+ if (image->comps[0].dx != image->comps[ui].dx) { -+ break; -+ } -+ if (image->comps[0].dy != image->comps[ui].dy) { -+ break; -+ } -+ if (image->comps[0].prec != image->comps[ui].prec) { -+ break; -+ } -+ if (image->comps[0].sgnd != image->comps[ui].sgnd) { -+ break; -+ } -+ } -+ if (ui != ncomp) { -+ fprintf(stderr,"imagetobmp: All components shall have the same subsampling, same bit depth, same sign.\n"); -+ fprintf(stderr,"\tAborting\n"); -+ return 1; -+ } -+ -+ } - if (image->comps[0].prec < 8) { -- fprintf(stderr, "Unsupported number of components: %d\n", image->comps[0].prec); -+ fprintf(stderr, "imagetobmp: Unsupported precision: %d\n", image->comps[0].prec); - return 1; - } - if (image->numcomps >= 3 && image->comps[0].dx == image->comps[1].dx -diff --git a/src/bin/jp2/opj_decompress.c b/src/bin/jp2/opj_decompress.c -index 83160c3..c30079b 100644 ---- a/src/bin/jp2/opj_decompress.c -+++ b/src/bin/jp2/opj_decompress.c -@@ -1607,7 +1607,7 @@ int main(int argc, char **argv) - if(dirptr->filename_buf) free(dirptr->filename_buf); - free(dirptr); - } -- if (numDecompressedImages) { -+ if (numDecompressedImages && !failed) { - fprintf(stdout, "decode time: %d ms\n", (int)( (tCumulative * 1000.0) / (OPJ_FLOAT64)numDecompressedImages)); - } - return failed ? EXIT_FAILURE : EXIT_SUCCESS; -diff --git a/src/lib/openjp2/j2k.c b/src/lib/openjp2/j2k.c -index 66802bb..b6daa32 100644 ---- a/src/lib/openjp2/j2k.c -+++ b/src/lib/openjp2/j2k.c -@@ -2158,7 +2158,7 @@ static OPJ_BOOL opj_j2k_read_siz(opj_j2k_t *p_j2k, - i, l_img_comp->dx, l_img_comp->dy); - return OPJ_FALSE; - } -- if( l_img_comp->prec > 38) { /* TODO openjpeg won't handle more than ? */ -+ if( l_img_comp->prec < 1 || l_img_comp->prec > 38) { /* TODO openjpeg won't handle more than ? */ - opj_event_msg(p_manager, EVT_ERROR, - "Invalid values for comp = %d : prec=%u (should be between 1 and 38 according to the JPEG2000 norm)\n", - i, l_img_comp->prec); -@@ -10029,7 +10029,11 @@ OPJ_BOOL opj_j2k_decode(opj_j2k_t * p_j2k, - /* Move data and copy one information from codec to output image*/ - for (compno = 0; compno < p_image->numcomps; compno++) { - p_image->comps[compno].resno_decoded = p_j2k->m_output_image->comps[compno].resno_decoded; -- p_image->comps[compno].data = p_j2k->m_output_image->comps[compno].data; -+ p_image->comps[compno].data = p_j2k->m_output_image->comps[compno].data; -+ -+ if(p_image->comps[compno].data == NULL) return OPJ_FALSE; -+ -+ p_j2k->m_output_image->comps[compno].data = NULL; - #if 0 - char fn[256]; - sprintf( fn, "/tmp/%d.raw", compno ); -@@ -10037,7 +10041,6 @@ OPJ_BOOL opj_j2k_decode(opj_j2k_t * p_j2k, - fwrite( p_image->comps[compno].data, sizeof(OPJ_INT32), p_image->comps[compno].w * p_image->comps[compno].h, debug ); - fclose( debug ); - #endif -- p_j2k->m_output_image->comps[compno].data = NULL; - } - - return OPJ_TRUE; -@@ -10131,6 +10134,8 @@ OPJ_BOOL opj_j2k_get_tile( opj_j2k_t *p_j2k, - - p_image->comps[compno].data = p_j2k->m_output_image->comps[compno].data; - -+ if (p_image->comps[compno].data == NULL) return OPJ_FALSE; -+ - p_j2k->m_output_image->comps[compno].data = NULL; - } - diff --git a/gnu/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch b/gnu/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch deleted file mode 100644 index 3f637fa88b..0000000000 --- a/gnu/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch +++ /dev/null @@ -1,245 +0,0 @@ -From cadff5fb6e73398de26a92e96d3d7cac893af255 Mon Sep 17 00:00:00 2001 -From: szukw000 -Date: Fri, 9 Dec 2016 08:29:55 +0100 -Subject: [PATCH] These changes repair bugs of #871 and #872 - -email from http://openwall.com/lists/oss-security/2016/12/09/4 -patch is against openjpeg-2.1.2, applies cleanly to 2.1.1. - ---- - src/bin/jp2/converttif.c | 107 +++++++++++++++++++++++++++++++---------------- - 1 file changed, 70 insertions(+), 37 deletions(-) - -diff --git a/src/bin/jp2/converttif.c b/src/bin/jp2/converttif.c -index 143d3be..c690f8b 100644 ---- a/src/bin/jp2/converttif.c -+++ b/src/bin/jp2/converttif.c -@@ -553,20 +553,18 @@ static void tif_32sto16u(const OPJ_INT32* pSrc, OPJ_UINT16* pDst, OPJ_SIZE_T len - - int imagetotif(opj_image_t * image, const char *outfile) - { -- int width, height; -- int bps,adjust, sgnd; -- int tiPhoto; -+ uint32 width, height, bps, tiPhoto; -+ int adjust, sgnd; - TIFF *tif; - tdata_t buf; -- tsize_t strip_size; -+ tmsize_t strip_size, rowStride; - OPJ_UINT32 i, numcomps; -- OPJ_SIZE_T rowStride; - OPJ_INT32* buffer32s = NULL; - OPJ_INT32 const* planes[4]; - convert_32s_PXCX cvtPxToCx = NULL; - convert_32sXXx_C1R cvt32sToTif = NULL; - -- bps = (int)image->comps[0].prec; -+ bps = (uint32)image->comps[0].prec; - planes[0] = image->comps[0].data; - - numcomps = image->numcomps; -@@ -674,13 +672,13 @@ int imagetotif(opj_image_t * image, const char *outfile) - break; - } - sgnd = (int)image->comps[0].sgnd; -- adjust = sgnd ? 1 << (image->comps[0].prec - 1) : 0; -- width = (int)image->comps[0].w; -- height = (int)image->comps[0].h; -+ adjust = sgnd ? (int)(1 << (image->comps[0].prec - 1)) : 0; -+ width = (uint32)image->comps[0].w; -+ height = (uint32)image->comps[0].h; - - TIFFSetField(tif, TIFFTAG_IMAGEWIDTH, width); - TIFFSetField(tif, TIFFTAG_IMAGELENGTH, height); -- TIFFSetField(tif, TIFFTAG_SAMPLESPERPIXEL, numcomps); -+ TIFFSetField(tif, TIFFTAG_SAMPLESPERPIXEL, (uint32)numcomps); - TIFFSetField(tif, TIFFTAG_BITSPERSAMPLE, bps); - TIFFSetField(tif, TIFFTAG_ORIENTATION, ORIENTATION_TOPLEFT); - TIFFSetField(tif, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG); -@@ -688,8 +686,8 @@ int imagetotif(opj_image_t * image, const char *outfile) - TIFFSetField(tif, TIFFTAG_ROWSPERSTRIP, 1); - - strip_size = TIFFStripSize(tif); -- rowStride = ((OPJ_SIZE_T)width * numcomps * (OPJ_SIZE_T)bps + 7U) / 8U; -- if (rowStride != (OPJ_SIZE_T)strip_size) { -+ rowStride = (width * numcomps * bps + 7U) / 8U; -+ if (rowStride != strip_size) { - fprintf(stderr, "Invalid TIFF strip size\n"); - TIFFClose(tif); - return 1; -@@ -699,7 +697,7 @@ int imagetotif(opj_image_t * image, const char *outfile) - TIFFClose(tif); - return 1; - } -- buffer32s = (OPJ_INT32 *)malloc((OPJ_SIZE_T)width * numcomps * sizeof(OPJ_INT32)); -+ buffer32s = (OPJ_INT32 *)malloc((OPJ_SIZE_T)(width * numcomps * sizeof(OPJ_INT32))); - if (buffer32s == NULL) { - _TIFFfree(buf); - TIFFClose(tif); -@@ -1211,20 +1209,19 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - TIFF *tif; - tdata_t buf; - tstrip_t strip; -- tsize_t strip_size; -+ tmsize_t strip_size; - int j, currentPlane, numcomps = 0, w, h; - OPJ_COLOR_SPACE color_space = OPJ_CLRSPC_UNKNOWN; - opj_image_cmptparm_t cmptparm[4]; /* RGBA */ - opj_image_t *image = NULL; - int has_alpha = 0; -- unsigned short tiBps, tiPhoto, tiSf, tiSpp, tiPC; -- unsigned int tiWidth, tiHeight; -+ uint32 tiBps, tiPhoto, tiSf, tiSpp, tiPC, tiWidth, tiHeight; - OPJ_BOOL is_cinema = OPJ_IS_CINEMA(parameters->rsiz); - convert_XXx32s_C1R cvtTifTo32s = NULL; - convert_32s_CXPX cvtCxToPx = NULL; - OPJ_INT32* buffer32s = NULL; - OPJ_INT32* planes[4]; -- OPJ_SIZE_T rowStride; -+ tmsize_t rowStride; - - tif = TIFFOpen(filename, "r"); - -@@ -1243,22 +1240,35 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - TIFFGetField(tif, TIFFTAG_SAMPLESPERPIXEL, &tiSpp); - TIFFGetField(tif, TIFFTAG_PHOTOMETRIC, &tiPhoto); - TIFFGetField(tif, TIFFTAG_PLANARCONFIG, &tiPC); -- w= (int)tiWidth; -- h= (int)tiHeight; -- -- if(tiBps > 16U) { -- fprintf(stderr,"tiftoimage: Bits=%d, Only 1 to 16 bits implemented\n",tiBps); -- fprintf(stderr,"\tAborting\n"); -+ -+ if(tiSpp == 0 || tiSpp > 4) { /* should be 1 ... 4 */ -+ fprintf(stderr,"tiftoimage: Bad value for samples per pixel == %hu.\n" -+ "\tAborting.\n", tiSpp); -+ TIFFClose(tif); -+ return NULL; -+ } -+ if(tiBps > 16U || tiBps == 0) { -+ fprintf(stderr,"tiftoimage: Bad values for Bits == %d.\n" -+ "\tMax. 16 Bits are allowed here.\n\tAborting.\n",tiBps); - TIFFClose(tif); - return NULL; - } - if(tiPhoto != PHOTOMETRIC_MINISBLACK && tiPhoto != PHOTOMETRIC_RGB) { -- fprintf(stderr,"tiftoimage: Bad color format %d.\n\tOnly RGB(A) and GRAY(A) has been implemented\n",(int) tiPhoto); -+ fprintf(stderr,"tiftoimage: Bad color format %d.\n" -+ "\tOnly RGB(A) and GRAY(A) has been implemented\n",(int) tiPhoto); - fprintf(stderr,"\tAborting\n"); - TIFFClose(tif); - return NULL; - } -- -+ if(tiWidth == 0 || tiHeight == 0) { -+ fprintf(stderr,"tiftoimage: Bad values for width(%u) " -+ "and/or height(%u)\n\tAborting.\n",tiWidth,tiHeight); -+ TIFFClose(tif); -+ return NULL; -+ } -+ w= (int)tiWidth; -+ h= (int)tiHeight; -+ - switch (tiBps) { - case 1: - case 2: -@@ -1312,7 +1322,7 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - - TIFFGetFieldDefaulted(tif, TIFFTAG_EXTRASAMPLES, - &extrasamples, &sampleinfo); -- -+ - if(extrasamples >= 1) - { - switch(sampleinfo[0]) -@@ -1333,7 +1343,7 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - else /* extrasamples == 0 */ - if(tiSpp == 4 || tiSpp == 2) has_alpha = 1; - } -- -+ - /* initialize image components */ - memset(&cmptparm[0], 0, 4 * sizeof(opj_image_cmptparm_t)); - -@@ -1346,7 +1356,7 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - } else { - is_cinema = 0U; - } -- -+ - if(tiPhoto == PHOTOMETRIC_RGB) /* RGB(A) */ - { - numcomps = 3 + has_alpha; -@@ -1384,10 +1394,24 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - image->x0 = (OPJ_UINT32)parameters->image_offset_x0; - image->y0 = (OPJ_UINT32)parameters->image_offset_y0; - image->x1 = !image->x0 ? (OPJ_UINT32)(w - 1) * (OPJ_UINT32)subsampling_dx + 1 : -- image->x0 + (OPJ_UINT32)(w - 1) * (OPJ_UINT32)subsampling_dx + 1; -+ image->x0 + (OPJ_UINT32)(w - 1) * (OPJ_UINT32)subsampling_dx + 1; -+ if(image->x1 <= image->x0) { -+ fprintf(stderr,"tiftoimage: Bad value for image->x1(%d) vs. " -+ "image->x0(%d)\n\tAborting.\n",image->x1,image->x0); -+ TIFFClose(tif); -+ opj_image_destroy(image); -+ return NULL; -+ } - image->y1 = !image->y0 ? (OPJ_UINT32)(h - 1) * (OPJ_UINT32)subsampling_dy + 1 : -- image->y0 + (OPJ_UINT32)(h - 1) * (OPJ_UINT32)subsampling_dy + 1; -- -+ image->y0 + (OPJ_UINT32)(h - 1) * (OPJ_UINT32)subsampling_dy + 1; -+ if(image->y1 <= image->y0) { -+ fprintf(stderr,"tiftoimage: Bad value for image->y1(%d) vs. " -+ "image->y0(%d)\n\tAborting.\n",image->y1,image->y0); -+ TIFFClose(tif); -+ opj_image_destroy(image); -+ return NULL; -+ } -+ - for(j = 0; j < numcomps; j++) - { - planes[j] = image->comps[j].data; -@@ -1395,15 +1419,15 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - image->comps[numcomps - 1].alpha = (OPJ_UINT16)(1 - (numcomps & 1)); - - strip_size = TIFFStripSize(tif); -- -+ - buf = _TIFFmalloc(strip_size); - if (buf == NULL) { - TIFFClose(tif); - opj_image_destroy(image); - return NULL; - } -- rowStride = ((OPJ_SIZE_T)w * tiSpp * tiBps + 7U) / 8U; -- buffer32s = (OPJ_INT32 *)malloc((OPJ_SIZE_T)w * tiSpp * sizeof(OPJ_INT32)); -+ rowStride = (w * tiSpp * tiBps + 7U) / 8U; -+ buffer32s = (OPJ_INT32 *)malloc((OPJ_SIZE_T)(w * tiSpp * sizeof(OPJ_INT32))); - if (buffer32s == NULL) { - _TIFFfree(buf); - TIFFClose(tif); -@@ -1421,11 +1445,20 @@ opj_image_t* tiftoimage(const char *filename, opj_cparameters_t *parameters) - for(; (h > 0) && (strip < TIFFNumberOfStrips(tif)); strip++) - { - const OPJ_UINT8 *dat8; -- OPJ_SIZE_T ssize; -+ tmsize_t ssize; - -- ssize = (OPJ_SIZE_T)TIFFReadEncodedStrip(tif, strip, buf, strip_size); -+ ssize = TIFFReadEncodedStrip(tif, strip, buf, strip_size); -+ if(ssize < 1 || ssize > strip_size) { -+ fprintf(stderr,"tiftoimage: Bad value for ssize(%ld) " -+ "vs. strip_size(%ld).\n\tAborting.\n",ssize,strip_size); -+ _TIFFfree(buf); -+ _TIFFfree(buffer32s); -+ TIFFClose(tif); -+ opj_image_destroy(image); -+ return NULL; -+ } - dat8 = (const OPJ_UINT8*)buf; -- -+ - while (ssize >= rowStride) { - cvtTifTo32s(dat8, buffer32s, (OPJ_SIZE_T)w * tiSpp); - cvtCxToPx(buffer32s, planes, (OPJ_SIZE_T)w); From d14e5eaa1905ce55120e64e967163c84f23b5016 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 17:13:52 +0200 Subject: [PATCH 0880/1227] gnu: ruby-slop: Update to 4.5.0. * gnu/packages/ruby.scm (ruby-slop): Update to 4.5.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 86e6cfd5f5..163b7dc6b7 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1820,13 +1820,13 @@ and manipulate Git repositories by wrapping system calls to the git binary.") (define-public ruby-slop (package (name "ruby-slop") - (version "4.1.0") + (version "4.5.0") (source (origin (method url-fetch) (uri (rubygems-uri "slop" version)) (sha256 (base32 - "0dj0ps6v1mqd02k84mgwd7hp578n2bzl7c51h3grdhxfl3jkfsj5")))) + "0bfm8535g0rkn9cbjndkckf0f7a3wj0rg4rqhrpsgxnbfdf2lm0p")))) (build-system ruby-build-system) (native-inputs `(("ruby-minitest" ,ruby-minitest))) From ce5f523001cb6a565080d108975a228ad6526cfb Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:12:48 +0200 Subject: [PATCH 0881/1227] gnu: ruby-pg: Update to 0.21.0. * gnu/packages/ruby.scm (ruby-pg): Update to 0.21.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 163b7dc6b7..7675502fed 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2775,14 +2775,14 @@ alternative to Marshal for Object serialization. ") (define-public ruby-pg (package (name "ruby-pg") - (version "0.20.0") + (version "0.21.0") (source (origin (method url-fetch) (uri (rubygems-uri "pg" version)) (sha256 (base32 - "03xcgwjs6faxis81jxf2plnlalg55dhhafqv3kvjxfr8ic7plpw5")))) + "00vhasqwc4f98qb4wxqn2h07fjwzhp5lwyi41j2gndi2g02wrdqh")))) (build-system ruby-build-system) (arguments '(#:test-target "spec")) From dc97df2ef43ba005c3b4eea057ae37fe7828d366 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:13:10 +0200 Subject: [PATCH 0882/1227] gnu: ruby-cucumber-core: Update to 2.0.0. * gnu/packages/ruby.scm (ruby-cucumber-core): Update to 2.0.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 7675502fed..15bdf1db6c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3037,14 +3037,14 @@ files.") (define-public ruby-cucumber-core (package (name "ruby-cucumber-core") - (version "1.5.0") + (version "2.0.0") (source (origin (method url-fetch) (uri (rubygems-uri "cucumber-core" version)) (sha256 (base32 - "0qj2fsqvp94nggnikbnrfvnmzr1pl6ifmdsxj69kdw1kkab30jjr")))) + "136hnvqv444qyxzcgy1k60y4i6cn3sn9lbqr4wan9dzz1yzllqbm")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-gherkin" ,ruby-gherkin))) From 5ca48923f5d852df4a22fc989f13432f44621798 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:13:33 +0200 Subject: [PATCH 0883/1227] gnu: ruby-redcarpet: Update to 3.4.0. * gnu/packages/ruby.scm (ruby-redcarpet): Update to 3.4.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 15bdf1db6c..de8c4fb0c2 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1386,13 +1386,13 @@ definitions on a Ruby object.") (define-public ruby-redcarpet (package (name "ruby-redcarpet") - (version "3.3.3") + (version "3.4.0") (source (origin (method url-fetch) (uri (rubygems-uri "redcarpet" version)) (sha256 (base32 - "14i3wypp97bpk20679d1csy88q4hsgfqbnqw6mryl77m2g0d09pk")))) + "0h9qz2hik4s9knpmbwrzb3jcp3vc5vygp9ya8lcpl7f1l9khmcd7")))) (build-system ruby-build-system) (arguments `(#:phases From 483846ac6fba55e76e14ef094893166d915c28b7 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:13:56 +0200 Subject: [PATCH 0884/1227] gnu: ruby-minitest: Update to 5.10.3. * gnu/packages/ruby.scm (ruby-minitest): Update to 5.10.3. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index de8c4fb0c2..6357250557 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1499,13 +1499,13 @@ with processes on remote servers, via SSH2.") (define-public ruby-minitest (package (name "ruby-minitest") - (version "5.10.2") + (version "5.10.3") (source (origin (method url-fetch) (uri (rubygems-uri "minitest" version)) (sha256 (base32 - "11my86fnihvpndyknn3c14hc82nhsgggnhlxh8h3bdjpmfsvl0my")))) + "05521clw19lrksqgvg2kmm025pvdhdaniix52vmbychrn2jm7kz2")))) (build-system ruby-build-system) (native-inputs `(("ruby-hoe" ,ruby-hoe))) From 3d4a5eb5551893d5629063df6e27db66a50c150f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:14:19 +0200 Subject: [PATCH 0885/1227] gnu: ruby-timecop: Update to 0.9.1. * gnu/packages/ruby.scm (ruby-timecop): Update to 0.9.1. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 6357250557..a677528734 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -4108,14 +4108,14 @@ associated records.") (define-public ruby-timecop (package (name "ruby-timecop") - (version "0.8.1") + (version "0.9.1") (source (origin (method url-fetch) (uri (rubygems-uri "timecop" version)) (sha256 (base32 - "0vwbkwqyxhavzvr1820hqwz43ylnfcf6w4x6sag0nghi44sr9kmx")))) + "0d7mm786180v4kzvn1f77rhfppsg5n0sq2bdx63x9nv114zm8jrp")))) (build-system ruby-build-system) (arguments `(#:phases From 8929f0a481dd9522de4b54aef3880ac1a0b8b909 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:14:41 +0200 Subject: [PATCH 0886/1227] gnu: ruby-gherkin: Update to 4.1.3. * gnu/packages/ruby.scm (ruby-gherkin): Update to 4.1.3. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index a677528734..6f79b1672c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3014,14 +3014,14 @@ Ruby classes.") (define-public ruby-gherkin (package (name "ruby-gherkin") - (version "4.0.0") + (version "4.1.3") (source (origin (method url-fetch) (uri (rubygems-uri "gherkin" version)) (sha256 (base32 - "1ripjv97hg746xszx9isal8z8vrlb98asc2rdxl291b3hr6pj0pr")))) + "1d18r8mf2qyd9jbq9xxvca8adyysdzvwdy8v9c2s5hrd6p02kg79")))) (build-system ruby-build-system) (native-inputs `(("bundler" ,bundler))) From 32bbfea811ff1ac2e91c874edd30fd5523f7a431 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:15:02 +0200 Subject: [PATCH 0887/1227] gnu: ruby-rb-inotify: Update to 0.9.10. * gnu/packages/ruby.scm (ruby-rb-inotify): Update to 0.9.10. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 6f79b1672c..c0edddf52e 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2183,14 +2183,14 @@ IANA Time Zone database packaged as Ruby modules for use with @code{TZInfo}.") (define-public ruby-rb-inotify (package (name "ruby-rb-inotify") - (version "0.9.5") + (version "0.9.10") (source (origin (method url-fetch) (uri (rubygems-uri "rb-inotify" version)) (sha256 (base32 - "0kddx2ia0qylw3r52nhg83irkaclvrncgy2m1ywpbhlhsz1rymb9")))) + "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71")))) (build-system ruby-build-system) (arguments '(#:tests? #f ; there are no tests From e322222ab4ac165ed9ce974f0f1ccd1cce57cc78 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:15:23 +0200 Subject: [PATCH 0888/1227] gnu: ruby-tzinfo: Update to 1.2.3. * gnu/packages/ruby.scm (ruby-tzinfo): Update to 1.2.3. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index c0edddf52e..dd4a367d15 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2131,14 +2131,14 @@ utilities for Ruby.") (define-public ruby-tzinfo (package (name "ruby-tzinfo") - (version "1.2.2") + (version "1.2.3") (source (origin (method url-fetch) (uri (rubygems-uri "tzinfo" version)) (sha256 (base32 - "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx")))) + "05r81lk7q7275rdq7xipfm0yxgqyd2ggh73xpc98ypngcclqcscl")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-thread-safe" ,ruby-thread-safe))) From cd698b6e203cb024caaf6df12d5c4886e8eaee64 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:15:44 +0200 Subject: [PATCH 0889/1227] gnu: ruby-utils: Update to 0.9.0. * gnu/packages/ruby.scm (ruby-utils): Update to 0.9.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index dd4a367d15..604c31a11b 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2438,13 +2438,13 @@ process tree data structure for the current host.") (define-public ruby-utils (package (name "ruby-utils") - (version "0.2.4") + (version "0.9.0") (source (origin (method url-fetch) (uri (rubygems-uri "utils" version)) (sha256 (base32 - "0vycgscxf3s1xn4yyfsq54zlh082581ga8azybmqgc4pij6iz2cd")))) + "196zhgcygrnx09bb9mh22qas03rl9avzx8qs0wnxznpin4pffwcl")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-tins" ,ruby-tins) From 56ccada3c14e63d241d467dc4c17bb573cb8f112 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:16:05 +0200 Subject: [PATCH 0890/1227] gnu: ruby-rb-fsevent: Update to 0.10.2. * gnu/packages/ruby.scm (ruby-rb-fsevent): Update to 0.10.2. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 604c31a11b..ba288c19b1 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2523,13 +2523,13 @@ a native C extension.") (define-public ruby-rb-fsevent (package (name "ruby-rb-fsevent") - (version "0.9.6") + (version "0.10.2") (source (origin (method url-fetch) (uri (rubygems-uri "rb-fsevent" version)) (sha256 (base32 - "1hq57by28iv0ijz8pk9ynih0xdg7vnl1010xjcijfklrcv89a1j2")))) + "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf")))) (build-system ruby-build-system) ;; Tests need "guard-rspec", which needs "guard". However, "guard" needs ;; "listen", which needs "rb-fsevent" at runtime. From 8e5ff25042d48882342d686e82b6df1efd60e13e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:16:27 +0200 Subject: [PATCH 0891/1227] gnu: ruby-arel: Update to 8.0.0. * gnu/packages/ruby.scm (ruby-arel): Update to 8.0.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ba288c19b1..3a63f21148 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1868,13 +1868,13 @@ net/http library.") (define-public ruby-arel (package (name "ruby-arel") - (version "7.1.4") + (version "8.0.0") (source (origin (method url-fetch) (uri (rubygems-uri "arel" version)) (sha256 (base32 - "0l757dkkaxk5fq3368l79jpyzq9a9driricjamhiwhwvh0h7xcyx")))) + "0nw0qbc6ph625p6n3maqq9f527vz3nbl0hk72fbyka8jzsmplxzl")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; no tests (home-page "https://github.com/rails/arel") From d1c1f3680397fbf13332db5e07d8c6b28967ea87 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:16:48 +0200 Subject: [PATCH 0892/1227] gnu: ruby-shoulda-matchers: Update to 3.1.2. * gnu/packages/ruby.scm (ruby-shoulda-matchers): Update to 3.1.2. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 3a63f21148..da77524bb5 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3396,14 +3396,14 @@ names.") (define-public ruby-shoulda-matchers (package (name "ruby-shoulda-matchers") - (version "3.1.1") + (version "3.1.2") (source (origin (method url-fetch) (uri (rubygems-uri "shoulda-matchers" version)) (sha256 (base32 - "1cf6d2d9br82vylr9p362yk9cfrd14jz8v77n0yb0lbcxdbk7xzq")))) + "1zvv94pqk5b5my3w1shdz7h34xf2ldhg5k4qfdpbwi2iy0j9zw2a")))) (build-system ruby-build-system) (arguments `(#:phases From 65a7f09ce0207f9d7c424cb9f07182a4b794607b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:17:13 +0200 Subject: [PATCH 0893/1227] gnu: ruby-sequel: Update to 4.49.0. * gnu/packages/ruby.scm (ruby-sequel): Update to 4.49.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index da77524bb5..51098919ca 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -4086,14 +4086,14 @@ generation.") (define-public ruby-sequel (package (name "ruby-sequel") - (version "4.40.0") + (version "4.49.0") (source (origin (method url-fetch) (uri (rubygems-uri "sequel" version)) (sha256 (base32 - "0r39dv3yprai0cy7hslfxswjr4fg783xwxskmbih8ry24f18lbk0")))) + "010p4a60npppvgbyw7pq5xia8aydpgxdlhh3qjm2615kwjsw3fl8")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; Avoid dependency loop with ruby-minitest-hooks. From d5489a618d3bf41465189cf2ed944bdcbefc8b60 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:17:35 +0200 Subject: [PATCH 0894/1227] gnu: ruby-byebug: Update to 9.0.6. * gnu/packages/ruby.scm (ruby-byebug): Update to 9.0.6. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 51098919ca..0d7eb71f34 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2801,14 +2801,14 @@ with PostgreSQL 8.4 and later.") (define-public ruby-byebug (package (name "ruby-byebug") - (version "6.0.2") + (version "9.0.6") (source (origin (method url-fetch) (uri (rubygems-uri "byebug" version)) (sha256 (base32 - "0537h9qbhr6csahmzyn4lk1g5b2lcligbzd21gfy93nx9lbfdnzc")))) + "1kbfcn65rgdhi72n8x9l393b89rvi5z542459k7d1ggchpb0idb0")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; no tests From a7ca218cd51ecaeeeb82f3c27e55359364fc11f3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:17:56 +0200 Subject: [PATCH 0895/1227] gnu: ruby-notiffany: Update to 0.1.1. * gnu/packages/ruby.scm (ruby-notiffany): Update to 0.1.1. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 0d7eb71f34..a893ca7f03 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -855,13 +855,13 @@ the output produced by running shell commands.") (define-public ruby-notiffany (package (name "ruby-notiffany") - (version "0.0.7") + (version "0.1.1") (source (origin (method url-fetch) (uri (rubygems-uri "notiffany" version)) (sha256 (base32 - "1v5x1w59qq85r6dpv3y9ga34dfd7hka1qxyiykaw7gm0i6kggbhi")))) + "0x838fa5il0dd9zbm3lxkpbfxcf5fxv9556mayc2mxsdl5ghv8nx")))) (build-system ruby-build-system) ;; Tests are not included in the gem. (arguments `(#:tests? #f)) From 5620bd456f532491d31434f7eedb32bf92664ac1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:18:20 +0200 Subject: [PATCH 0896/1227] gnu: ruby-domain-name: Update to 0.5.20170404. * gnu/packages/ruby.scm (ruby-domain-name): Update to 0.5.20170404. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index a893ca7f03..cdd92affcc 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3503,14 +3503,14 @@ support to both Ruby and JRuby. It uses @code{unf_ext} on CRuby and (define-public ruby-domain-name (package (name "ruby-domain-name") - (version "0.5.20161021") + (version "0.5.20170404") (source (origin (method url-fetch) (uri (rubygems-uri "domain_name" version)) (sha256 (base32 - "1y5c96gzyh6z4nrnkisljqngfvljdba36dww657ka0x7khzvx7jl")))) + "12hs8yijhak7p2hf1xkh98g0mnp5phq3mrrhywzaxpwz1gw5r3kf")))) (build-system ruby-build-system) (arguments `(#:phases From 3b0e45c86db3c3bd14bd8c993abff7f6ff99b2ac Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:18:40 +0200 Subject: [PATCH 0897/1227] gnu: ruby-useragent: Update to 0.16.8. * gnu/packages/ruby.scm (ruby-useragent): Update to 0.16.8. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index cdd92affcc..da87af8aeb 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1025,13 +1025,13 @@ suites.") (define-public ruby-useragent (package (name "ruby-useragent") - (version "0.13.3") + (version "0.16.8") (source (origin (method url-fetch) (uri (rubygems-uri "useragent" version)) (sha256 (base32 - "0kz7yyz7528bv4a2kfymvkcm8whqcddhmgaw1ksw1d90n30hhkpc")))) + "1139cjqyv1hk1qcw89k81ajjkqyakqgbcyvmfrsmjqi8yn9kgqhq")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; no test suite From 0cd7b8164df821a9f0cd9c96b5bb12e8f46b1df0 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:19:01 +0200 Subject: [PATCH 0898/1227] gnu: ruby-rake-compiler: Update to 1.0.4. * gnu/packages/ruby.scm (ruby-rake-compiler): Update to 1.0.4. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index da87af8aeb..556c63e5b5 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -240,13 +240,13 @@ announcement.") (define-public ruby-rake-compiler (package (name "ruby-rake-compiler") - (version "1.0.1") + (version "1.0.4") (source (origin (method url-fetch) (uri (rubygems-uri "rake-compiler" version)) (sha256 (base32 - "1lf91nf1fcnmsh54mxz06wyfmjkwh58vljr35zns5cwbg8fwmi20")))) + "1xpdi4w8zaklk1i9ps8g3k0icw3v5fcks092l84w28rgrpx82qip")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; needs cucumber From f3a6311af4749d251fe05503cae8c1e190a5ef4f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:19:24 +0200 Subject: [PATCH 0899/1227] gnu: ruby-term-ansicolor: Update to 1.6.0. * gnu/packages/ruby.scm (ruby-term-ansicolor): Update to 1.6.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 556c63e5b5..f2dae0405f 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2384,13 +2384,13 @@ Ruby's large and slower test/unit.") (define-public ruby-term-ansicolor (package (name "ruby-term-ansicolor") - (version "1.3.2") + (version "1.6.0") (source (origin (method url-fetch) (uri (rubygems-uri "term-ansicolor" version)) (sha256 (base32 - "0ydbbyjmk5p7fsi55ffnkq79jnfqx65c3nj8d9rpgl6sw85ahyys")))) + "1b1wq9ljh7v3qyxkk8vik2fqx2qzwh5lval5f92llmldkw7r7k7b")))) (build-system ruby-build-system) ;; Rebuilding the gemspec seems to require git, even though this is not a ;; git repository, so we just build the gem from the existing gemspec. From 30caad5080a64a959594b95072e46bb4504a96c3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:19:47 +0200 Subject: [PATCH 0900/1227] gnu: ruby-eventmachine: Update to 1.2.5. * gnu/packages/ruby.scm (ruby-eventmachine): Update to 1.2.5. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index f2dae0405f..bea71b3fd9 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3201,14 +3201,14 @@ application.") (define-public ruby-eventmachine (package (name "ruby-eventmachine") - (version "1.0.8") + (version "1.2.5") (source (origin (method url-fetch) (uri (rubygems-uri "eventmachine" version)) (sha256 (base32 - "1frvpk3p73xc64qkn0ymll3flvn4xcycq5yx8a43zd3gyzc1ifjp")))) + "075hdw0fgzldgss3xaqm2dk545736khcvv1fmzbf1sgdlkyh1v8z")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; test suite tries to connect to google.com From 884a80dd0afaaa6bc0bf11e88f29b70534c07184 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:20:12 +0200 Subject: [PATCH 0901/1227] gnu: ruby-pkg-config: Update to 1.2.5. * gnu/packages/ruby.scm (ruby-pkg-config): Update to 1.2.5. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index bea71b3fd9..631636664e 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -4203,14 +4203,14 @@ patterns.") (define-public ruby-pkg-config (package (name "ruby-pkg-config") - (version "1.1.7") + (version "1.2.5") (source (origin (method url-fetch) (uri (rubygems-uri "pkg-config" version)) (sha256 (base32 - "0lljiqnm0b4z6iy87lzapwrdfa6ps63x2z5zbs038iig8dqx2g0z")))) + "056mzqdh4yjznsg36fi0xiq76f24vxlhzh2n4az919l3x5k318ar")))) (build-system ruby-build-system) (arguments ;; Tests require extra files not included in the gem. From 313dd5ddc0eccd083d6bad8789404920533e91a5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:20:33 +0200 Subject: [PATCH 0902/1227] gnu: ruby-thread-safe: Update to 0.3.6. * gnu/packages/ruby.scm (ruby-thread-safe): Update to 0.3.6. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 631636664e..36fb86a460 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2111,14 +2111,14 @@ file or directories are modified.") (define-public ruby-thread-safe (package (name "ruby-thread-safe") - (version "0.3.5") + (version "0.3.6") (source (origin (method url-fetch) (uri (rubygems-uri "thread_safe" version)) (sha256 (base32 - "1hq46wqsyylx5afkp6jmcihdpv4ynzzq9ygb6z2pb1cbz5js0gcr")))) + "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; needs simplecov, among others From e2fcef3913951f96ea81bb7415e762068fb762ca Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:20:54 +0200 Subject: [PATCH 0903/1227] gnu: ruby-diff-lcs: Update to 1.3. * gnu/packages/ruby.scm (ruby-diff-lcs): Update to 1.3. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 36fb86a460..2769c1ad05 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -335,13 +335,13 @@ groups.") (define-public ruby-diff-lcs (package (name "ruby-diff-lcs") - (version "1.2.5") + (version "1.3") (source (origin (method url-fetch) (uri (rubygems-uri "diff-lcs" version)) (sha256 (base32 - "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1")))) + "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; avoid dependency cycles From 8d10918a43045fb58a896652fa2ac4e30b110abc Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:21:15 +0200 Subject: [PATCH 0904/1227] gnu: ruby-daemons: Update to 1.2.4. * gnu/packages/ruby.scm (ruby-daemons): Update to 1.2.4. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 2769c1ad05..ff96468999 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1766,13 +1766,13 @@ for specs that share expensive database setup code.") (define-public ruby-daemons (package (name "ruby-daemons") - (version "1.2.2") + (version "1.2.4") (source (origin (method url-fetch) (uri (rubygems-uri "daemons" version)) (sha256 (base32 - "121c7vkimg3baxga69xvdkwxiq8wkmxqvdbyqi5i82vhih5d3cn3")))) + "1bmb4qrd95b5gl3ym5j3q6mf090209f4vkczggn49n56w6s6zldz")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; no test suite From 56822223c17afc3e5b556d4136adcc4b7995bf87 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:21:39 +0200 Subject: [PATCH 0905/1227] gnu: ruby-fivemat: Update to 1.3.5. * gnu/packages/ruby.scm (ruby-fivemat): Update to 1.3.5. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ff96468999..ee7a4931e1 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3313,14 +3313,14 @@ definitions.") (define-public ruby-fivemat (package (name "ruby-fivemat") - (version "1.3.2") + (version "1.3.5") (source (origin (method url-fetch) (uri (rubygems-uri "fivemat" version)) (sha256 (base32 - "1gvw6g4yc96l2pcyvigahyfsjxpdjx21iiwzvf965zippchdh6gk")))) + "0ij7n250gk5c1g34rsbwjnpcv64gk4vsas8lkz8fac4wbygvk6z1")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; no tests From a3179a7338af8d8a84dd87310d8fb21326e196ab Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:22:00 +0200 Subject: [PATCH 0906/1227] gnu: ruby-connection-pool: Update to 2.2.1. * gnu/packages/ruby.scm (ruby-connection-pool): Update to 2.2.1. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ee7a4931e1..7b6ed57099 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1061,13 +1061,13 @@ features.") (define-public ruby-connection-pool (package (name "ruby-connection-pool") - (version "2.2.0") + (version "2.2.1") (source (origin (method url-fetch) (uri (rubygems-uri "connection_pool" version)) (sha256 (base32 - "1b2bb3k39ni5mzcnqlv9y4yjkbin20s7dkwzp0jw2jf1rmzcgrmy")))) + "17vpaj6kyf2i8bimaxz7rg1kyadf4d10642ja67qiqlhwgczl2w7")))) (build-system ruby-build-system) (native-inputs `(("bundler" ,bundler))) From 2a91494ed11e85fded287c29448427dc252a49ed Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:22:22 +0200 Subject: [PATCH 0907/1227] gnu: ruby-redcloth: Update to 4.3.2. * gnu/packages/ruby.scm (ruby-redcloth): Update to 4.3.2. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 7b6ed57099..439e80925c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2736,13 +2736,13 @@ alternative to Marshal for Object serialization. ") (define-public ruby-redcloth (package (name "ruby-redcloth") - (version "4.2.9") + (version "4.3.2") (source (origin (method url-fetch) (uri (rubygems-uri "RedCloth" version)) (sha256 (base32 - "06pahxyrckhgb7alsxwhhlx1ib2xsx33793finj01jk8i054bkxl")))) + "0m9dv7ya9q93r8x1pg2gi15rxlbck8m178j1fz7r5v6wr1avrrqy")))) (build-system ruby-build-system) (arguments `(#:tests? #f ; no tests From 263c0dbf001918b9d23dc5fdbe7624f45d4bed2a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:22:45 +0200 Subject: [PATCH 0908/1227] gnu: ruby-ox: Update to 2.6.0. * gnu/packages/ruby.scm (ruby-ox): Update to 2.6.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 439e80925c..b6a63077b0 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2713,14 +2713,14 @@ unacceptable HTML and/or CSS from a string.") (define-public ruby-ox (package (name "ruby-ox") - (version "2.5.0") + (version "2.6.0") (source (origin (method url-fetch) (uri (rubygems-uri "ox" version)) (sha256 (base32 - "0rar0xr5qn3zac1r2z18kmpapx121c2l3z8jsgh60vsddwzpdh7h")))) + "0fmk62b1h2i79dfzjj8wmf8qid1rv5nhwfc17l489ywnga91xl83")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; no tests From 04de0cb5a0aa36908badf0d700e3017023ae5c9f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:23:08 +0200 Subject: [PATCH 0909/1227] gnu: ruby-mail: Update to 2.6.6. * gnu/packages/ruby.scm (ruby-mail): Update to 2.6.6. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index b6a63077b0..442f145eff 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -4247,14 +4247,14 @@ of the more insecure basic authentication scheme.") (define-public ruby-mail (package (name "ruby-mail") - (version "2.6.4") + (version "2.6.6") (source (origin (method url-fetch) (uri (rubygems-uri "mail" version)) (sha256 (base32 - "0c9vqfy0na9b5096i5i4qvrvhwamjnmajhgqi3kdsdfl8l6agmkp")))) + "0d7lhj2dw52ycls6xigkfz6zvfhc6qggply9iycjmcyj9760yvz9")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-mime-types" ,ruby-mime-types))) From 185ea4465d26b86f8fb6a15ae913d710e89496b1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:23:30 +0200 Subject: [PATCH 0910/1227] gnu: ruby-net-http-persistent: Update to 3.0.0. * gnu/packages/ruby.scm (ruby-net-http-persistent): Update to 3.0.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 442f145eff..2d55552c5f 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1080,13 +1080,13 @@ interface for Ruby programs.") (define-public ruby-net-http-persistent (package (name "ruby-net-http-persistent") - (version "2.9.4") + (version "3.0.0") (source (origin (method url-fetch) (uri (rubygems-uri "net-http-persistent" version)) (sha256 (base32 - "1y9fhaax0d9kkslyiqi1zys6cvpaqx9a0y0cywp24rpygwh4s9r4")))) + "156rv95bgxfz6qw5y1r7c7bswr77918hygl8dyl14qzbqc5vyp18")))) (build-system ruby-build-system) (native-inputs `(("ruby-connection-pool" ,ruby-connection-pool) From e32dfb7405e30499e09968adb85020f1dcd3daa4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:23:52 +0200 Subject: [PATCH 0911/1227] gnu: ruby-lumberjack: Update to 1.0.12. * gnu/packages/ruby.scm (ruby-lumberjack): Update to 1.0.12. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 2d55552c5f..0d66e5f153 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -751,13 +751,13 @@ interfaces.") (define-public ruby-lumberjack (package (name "ruby-lumberjack") - (version "1.0.10") + (version "1.0.12") (source (origin (method url-fetch) (uri (rubygems-uri "lumberjack" version)) (sha256 (base32 - "0ily8j83q959w19zb7qm6m7y53sdj9afxj4x6mn2adl4i7vpdsv4")))) + "0yz26k9mi0djx1qvlmvdw1xw2yf7a2rkfmnb2j0d28kms33xpibp")))) (build-system ruby-build-system) (native-inputs `(("ruby-rspec" ,ruby-rspec) From 1d60c436aa2afa1c6cecff6cb55725a568549451 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:24:14 +0200 Subject: [PATCH 0912/1227] gnu: ruby-packnga: Update to 1.0.4. * gnu/packages/ruby.scm (ruby-packnga): Update to 1.0.4. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 0d66e5f153..1487fc9fb7 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1191,13 +1191,13 @@ use GNU gettext tools for maintenance.") (define-public ruby-packnga (package (name "ruby-packnga") - (version "1.0.1") + (version "1.0.4") (source (origin (method url-fetch) (uri (rubygems-uri "packnga" version)) (sha256 (base32 - "1i71yhvlkvi5fp3m8jl9317cnddkbnrcy0syrmiw4y1lrq0cbncj")))) + "1vv2j0i43s4xid2km5hgrrxqlqpwgq8nlm8kaxfg2531c1vwfsd4")))) (build-system ruby-build-system) ;; ruby-test-unit is required to run tests, but that needs ruby-packnga. ;; To break the dependency cycle we disable tests. From 2e8cd8624d22151bc7b4a579ce54f0e1e6850fe2 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:24:37 +0200 Subject: [PATCH 0913/1227] gnu: ruby-thor: Update to 0.19.4. * gnu/packages/ruby.scm (ruby-thor): Update to 0.19.4. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 1487fc9fb7..53a0568e91 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -730,13 +730,13 @@ Ruby.") (define-public ruby-thor (package (name "ruby-thor") - (version "0.19.1") + (version "0.19.4") (source (origin (method url-fetch) (uri (rubygems-uri "thor" version)) (sha256 (base32 - "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z")))) + "01n5dv9kql60m6a00zc0r66jvaxx98qhdny3klyj0p3w34pad2ns")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; no test suite From d74d96e466be99559425a1dad4d5376e075f4af3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:24:59 +0200 Subject: [PATCH 0914/1227] gnu: ruby-test-unit: Update to 3.2.5. * gnu/packages/ruby.scm (ruby-test-unit): Update to 3.2.5. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 53a0568e91..f7ceee107e 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1216,13 +1216,13 @@ use GNU gettext tools for maintenance.") (define-public ruby-test-unit (package (name "ruby-test-unit") - (version "3.2.4") + (version "3.2.5") (source (origin (method url-fetch) (uri (rubygems-uri "test-unit" version)) (sha256 (base32 - "09mb34lnffracsqxl4dav4c21p5nr4pj9hm5qy2s83k5hbjya3s7")))) + "05bx36fw01iqz0xqhvjfrwjgnj1zx3b2vn6w1fzp19rchd7zqc52")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-power-assert" ,ruby-power-assert))) From d21c6686d0d7631ed89c6c9c13b0ef8ad862b594 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:25:21 +0200 Subject: [PATCH 0915/1227] gnu: ruby-minitest-hooks: Update to 1.4.1. * gnu/packages/ruby.scm (ruby-minitest-hooks): Update to 1.4.1. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index f7ceee107e..dbb9555aff 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1739,14 +1739,14 @@ instance, it provides @code{assert_true}, @code{assert_false} and (define-public ruby-minitest-hooks (package (name "ruby-minitest-hooks") - (version "1.4.0") + (version "1.4.1") (source (origin (method url-fetch) (uri (rubygems-uri "minitest-hooks" version)) (sha256 (base32 - "092fymh0c09v3a585qw3hc15b0zf159s74rxx1ga87drk5jr958z")))) + "05bngfyxwq1cflk568nhddgfrmws5ff6kiqax4skklsjnh71ykbi")))) (build-system ruby-build-system) (arguments '(#:test-target "spec")) From c9e261b7eb736db0746448897689e059e5685945 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:25:44 +0200 Subject: [PATCH 0916/1227] gnu: ruby-minitest-bonus-assertions: Update to 3.0. * gnu/packages/ruby.scm (ruby-minitest-bonus-assertions): Update to 3.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index dbb9555aff..5aa965760b 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1679,14 +1679,14 @@ MiniTest @code{Object#stub} with a global @code{stub} method.") (define-public ruby-minitest-bonus-assertions (package (name "ruby-minitest-bonus-assertions") - (version "2.0") + (version "3.0") (source (origin (method url-fetch) (uri (rubygems-uri "minitest-bonus-assertions" version)) (sha256 (base32 - "11nrd32kwy61ndg9csk7l1ifya79ghrrv3vsrxj57k50m7na6jkm")))) + "1hbq9jk904xkz868yha1bqcm6azm7kmjsll2k4pn2nrcib508h2a")))) (build-system ruby-build-system) (arguments `(#:phases From ceaff59ec7b4fdbbb5f0ef232f0479d2ed9ea8a0 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:26:05 +0200 Subject: [PATCH 0917/1227] gnu: ruby-git: Update to 1.3.0. * gnu/packages/ruby.scm (ruby-git): Update to 1.3.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 5aa965760b..27c2583f6d 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1785,13 +1785,13 @@ run as a daemon and to be controlled by simple start/stop/restart commands.") (define-public ruby-git (package (name "ruby-git") - (version "1.2.9.1") + (version "1.3.0") (source (origin (method url-fetch) (uri (rubygems-uri "git" version)) (sha256 (base32 - "1sqfj8lmhl7c5zamcckkpik4izfph2zkv6krw0i8mzj5pdws5acs")))) + "1waikaggw7a1d24nw0sh8fd419gbf7awh000qhsf411valycj6q3")))) (build-system ruby-build-system) (arguments `(#:tests? #f ; no tests From fbefd6ffbf56bea5de82a016ab0dde62b386118a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:26:28 +0200 Subject: [PATCH 0918/1227] gnu: ruby-tins: Update to 1.15.0. * gnu/packages/ruby.scm (ruby-tins): Update to 1.15.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 27c2583f6d..bc85d618d3 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2274,13 +2274,13 @@ documentation for Ruby code.") (define-public ruby-tins (package (name "ruby-tins") - (version "1.7.0") + (version "1.15.0") (source (origin (method url-fetch) (uri (rubygems-uri "tins" version)) (sha256 (base32 - "1060h8dgnjl9az0sv1b74yrni8d4mh3x858wq6yfbfdf5dxrfl0a")))) + "09whix5a7ics6787zrkwjmp16kqyh6560p9f317syks785805f7s")))) (build-system ruby-build-system) ;; This gem needs gem-hadar at development time, but gem-hadar needs tins ;; at runtime. To avoid the dependency on gem-hadar we disable rebuilding From 6f9652b0a18303a5800545fa8a183e3979076cd1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:26:49 +0200 Subject: [PATCH 0919/1227] gnu: ruby-minitest-bacon: Update to 1.0.3. * gnu/packages/ruby.scm (ruby-minitest-bacon): Update to 1.0.3. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index bc85d618d3..f3dd5396b5 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1563,13 +1563,13 @@ easier to re-run individual failing tests.") (define-public ruby-minitest-bacon (package (name "ruby-minitest-bacon") - (version "1.0.2") + (version "1.0.3") (source (origin (method url-fetch) (uri (rubygems-uri "minitest-bacon" version)) (sha256 (base32 - "0cm7r68422743i3b6fm4rrm0r6cnnjmglq5gcmmgl1f0rk5hnf6r")))) + "0zhdwcl6bgha61qiyfvr7zs7ywaxc33wmj9xhxl8jdmpdvifvfaj")))) (build-system ruby-build-system) (native-inputs `(("ruby-hoe" ,ruby-hoe))) From acbc506218cfaea2da56f3e7027d70f3587a91a1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:27:12 +0200 Subject: [PATCH 0920/1227] gnu: ruby-libxml: Update to 3.0.0. * gnu/packages/ruby.scm (ruby-libxml): Update to 3.0.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index f3dd5396b5..8d03cc3d33 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -683,14 +683,14 @@ extensions.") (define-public ruby-libxml (package (name "ruby-libxml") - (version "2.8.0") + (version "3.0.0") (source (origin (method url-fetch) (uri (rubygems-uri "libxml-ruby" version)) (sha256 (base32 - "1dhjqp4r9vkdp00l6h1cj8qfndzxlhlxk6b9g0w4v55gz857ilhb")))) + "0xy8wmjwjcnv36zi042678ncjzpxvy351ccbv7mzkns2n3kxfp54")))) (build-system ruby-build-system) (inputs `(("zlib" ,zlib) From aeb4e61e750428e1cc99700881a427cd2df3827b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:27:54 +0200 Subject: [PATCH 0921/1227] gnu: ruby-rjb: Update to 1.5.5. * gnu/packages/ruby.scm (ruby-rjb): Update to 1.5.5. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 8d03cc3d33..af9edf56a4 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -509,13 +509,13 @@ supported: XML Markup and XML Events.") (define-public ruby-rjb (package (name "ruby-rjb") - (version "1.5.3") + (version "1.5.5") (source (origin (method url-fetch) (uri (rubygems-uri "rjb" version)) (sha256 (base32 - "0gzs92dagk981s4vrymnqg0vll783b9k564j0cdgp167nc5a2zg4")))) + "1ppj8rbicj3w0nhh7f73mflq19yd7pzdzkh2a91hcvphriy5b0ca")))) (build-system ruby-build-system) (arguments `(#:tests? #f ; no rakefile From 12313cd071f9260c971198c35b1a93e757a31d40 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:28:15 +0200 Subject: [PATCH 0922/1227] gnu: ruby-nenv: Update to 0.3.0. * gnu/packages/ruby.scm (ruby-nenv): Update to 0.3.0. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index af9edf56a4..df0015ea60 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -773,13 +773,13 @@ same log file.") (define-public ruby-nenv (package (name "ruby-nenv") - (version "0.2.0") + (version "0.3.0") (source (origin (method url-fetch) (uri (rubygems-uri "nenv" version)) (sha256 (base32 - "152wxwri0afwgnxdf93gi6wjl9rr5z7vwp8ln0gpa3rddbfc27s6")))) + "0r97jzknll9bhd8yyg2bngnnkj8rjhal667n7d32h8h7ny7nvpnr")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; no tests included From ba074a85d0e677bcefc14e24a4566fea32919249 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:28:36 +0200 Subject: [PATCH 0923/1227] gnu: ruby-net-http-digest-auth: Update to 1.4.1. * gnu/packages/ruby.scm (ruby-net-http-digest-auth): Update to 1.4.1. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index df0015ea60..af7e5a733c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -4225,14 +4225,14 @@ libraries for compiling Ruby native extensions.") (define-public ruby-net-http-digest-auth (package (name "ruby-net-http-digest-auth") - (version "1.4") + (version "1.4.1") (source (origin (method url-fetch) (uri (rubygems-uri "net-http-digest_auth" version)) (sha256 (base32 - "14801gr34g0rmqz9pv4rkfa3crfdbyfk6r48vpg5a5407v0sixqi")))) + "1nq859b0gh2vjhvl1qh1zrk09pc7p54r9i6nnn6sb06iv07db2jb")))) (build-system ruby-build-system) (native-inputs `(("ruby-hoe" ,ruby-hoe))) From a88f24d860c7c9672765eddcde0f2034e80cb433 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:28:58 +0200 Subject: [PATCH 0924/1227] gnu: ruby-simplecov-html: Update to 0.10.1. * gnu/packages/ruby.scm (ruby-simplecov-html): Update to 0.10.1. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index af7e5a733c..e6f74911b1 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -978,13 +978,13 @@ and JRuby.") (define-public ruby-simplecov-html (package (name "ruby-simplecov-html") - (version "0.10.0") + (version "0.10.1") (source (origin (method url-fetch) (uri (rubygems-uri "simplecov-html" version)) (sha256 (base32 - "1qni8g0xxglkx25w54qcfbi4wjkpvmb28cb7rj5zk3iqynjcdrqf")))) + "0f3psphismgp6jp1fxxz09zbswh7m2xxxr6gqlzdh7sgv415clvm")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; there are no tests (native-inputs From 98ff58a53d63023d4664c7820ad6926fd66c9db4 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:29:18 +0200 Subject: [PATCH 0925/1227] gnu: ruby-introspection: Update to 0.0.4. * gnu/packages/ruby.scm (ruby-introspection): Update to 0.0.4. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index e6f74911b1..0ddde4ae7d 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1345,13 +1345,13 @@ knowing anything about the constructor.") (define-public ruby-introspection (package (name "ruby-introspection") - (version "0.0.3") + (version "0.0.4") (source (origin (method url-fetch) (uri (rubygems-uri "introspection" version)) (sha256 (base32 - "0g1j71sqfxbqk32wj7d0bkd3dlayfqzprfq3dbr0rq107xbxjcrr")))) + "1y2nbijkc0zlfmn9ss6588ilarq2kbn2i7w7pwwsli66dj84zgca")))) (build-system ruby-build-system) (arguments `(#:phases From c3b36fa1615300939237dc6f3dad0840f996d18a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:29:41 +0200 Subject: [PATCH 0926/1227] gnu: ruby-listen: Update to 3.1.5. * gnu/packages/ruby.scm (ruby-listen): Update to 3.1.5. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 0ddde4ae7d..25b2dd33f7 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2543,14 +2543,14 @@ a native C extension.") (define-public ruby-listen (package (name "ruby-listen") - (version "3.0.3") + (version "3.1.5") (source (origin (method url-fetch) (uri (rubygems-uri "listen" version)) (sha256 (base32 - "10lhshjklxlrkw7999j0xl6sdxd4x32kiy8rp88jwr68kis5vq2b")))) + "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; no tests (propagated-inputs From eec0c587af5fbc2854104c4f540cf8982dab806b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 23:30:02 +0200 Subject: [PATCH 0927/1227] gnu: ruby-debug-inspector: Update to 0.0.3. * gnu/packages/ruby.scm (ruby-debug-inspector): Update to 0.0.3. --- gnu/packages/rails.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm index cee6b2ca5c..7f171eaa6e 100644 --- a/gnu/packages/rails.scm +++ b/gnu/packages/rails.scm @@ -66,14 +66,14 @@ migration.") (define-public ruby-debug-inspector (package (name "ruby-debug-inspector") - (version "0.0.2") + (version "0.0.3") (source (origin (method url-fetch) (uri (rubygems-uri "debug_inspector" version)) (sha256 (base32 - "109761g00dbrw5q0dfnbqg8blfm699z4jj70l4zrgf9mzn7ii50m")))) + "0vxr0xa1mfbkfcrn71n7c4f2dj7la5hvphn904vh20j3x4j5lrx0")))) (build-system ruby-build-system) (arguments `(#:phases From 1c865bfce50107489b65219cdbcab4233bac0ef3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 11 Aug 2017 01:02:12 +0200 Subject: [PATCH 0928/1227] gnu: mksh: Update to 56. * gnu/packages/shells.scm (mksh): Update to 56. --- gnu/packages/shells.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 4603fd49b3..89db28ff06 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -615,7 +615,7 @@ interactive POSIX shell targeted at resource-constrained systems.") (define-public mksh (package (name "mksh") - (version "55") + (version "56") (source (origin (method url-fetch) @@ -623,7 +623,7 @@ interactive POSIX shell targeted at resource-constrained systems.") version ".tgz")) (sha256 (base32 - "0mssqd2wp3cs9x01v6g66iy3ymdxagbyw2c0v597vnc1l6s2rm6f")))) + "1x4zjj9259ijpf8jw0nyh1fnr1pbm5fwvylclpvcrlb45xrglf5d")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; tests require access to /dev/tty From d373c16f33fe0735a7a7d24899530c1af255b5f6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 10 Aug 2017 20:01:31 -0400 Subject: [PATCH 0929/1227] gnu: imagemagick: Update to 6.9.9-5. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.9-5. --- gnu/packages/imagemagick.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index dfda2126ab..6e44175d97 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -45,14 +45,14 @@ ;; The 7 release series has an incompatible API, while the 6 series is still ;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; users are ready for the 7-series API. - (version "6.9.9-0") + (version "6.9.9-5") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "02xnvgjnmz2d4yv4iy1kh7an5w631p1s319jw23c8zpmqhfhk2ha")))) + "0mnhwzgap2q2qs899skc41s8gd2g1g6rgs959zxqg6yjx3n48r5a")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") From f7fc9667b2b07f904f0683e06b0bd4c33ed9082a Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Fri, 11 Aug 2017 10:22:07 +0200 Subject: [PATCH 0930/1227] gnu: Add cloc. * gnu/packages/code.scm (cloc): New public variable. --- gnu/packages/code.scm | 55 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 6f25b7cd82..fa9e19db7d 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017 Andy Wingo ;;; ;;; This file is part of GNU Guix. ;;; @@ -189,6 +190,60 @@ effort, time, and money it would take to develop the software, using the COCOMO model or user-provided parameters.") (license license:gpl2+))) +(define-public cloc + (package + (name "cloc") + (version "1.72") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/AlDanial/cloc/releases/download/v" version + "/cloc-" version ".tar.gz")) + (sha256 + (base32 + "1gl7bxb4bi6pms0zzl133pzpfypvz57hk2cw7yf6rvs8b48kilnz")))) + (build-system gnu-build-system) + (inputs + `(("coreutils" ,coreutils) + ("perl" ,perl) + ("perl-algorithm-diff" ,perl-algorithm-diff) + ("perl-regexp-common" ,perl-regexp-common) + ("perl-digest-md5" ,perl-digest-md5))) + (arguments + `(#:phases (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (zero? + (system* "make" "-C" "Unix" + (string-append "prefix=" out) + (string-append "INSTALL=" + (assoc-ref inputs "coreutils") + "/bin/install") + "install"))))) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/cloc") + `("PERL5LIB" ":" = + ,(string-split (getenv "PERL5LIB") #\:))) + #t)))) + #:out-of-source? #t + ;; Tests require some other packages. + #:tests? #f)) + (home-page "https://github.com/AlDanial/cloc") + (synopsis "Count source lines of code (SLOC) and other source code metrics") + (description "cloc counts blank lines, comment lines, and physical lines +of source code in many programming languages. Given two versions of a code +base, cloc can compute differences in blank, comment, and source lines. + +cloc contains code from David Wheeler's SLOCCount. Compared to SLOCCount, +cloc can handle a greater variety of programming langauges.") + (license license:gpl2+))) + (define-public the-silver-searcher (package (name "the-silver-searcher") From 3f09b46d93388eb8193e89bdd8d8ba36ed7906b5 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 11 Aug 2017 16:22:11 +0200 Subject: [PATCH 0931/1227] gnu: dub: Update to 1.4.1. * gnu/packages/ldc.scm (dub): Update to 1.4.1. --- gnu/packages/ldc.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ldc.scm b/gnu/packages/ldc.scm index 03cd033376..25fcb514d0 100644 --- a/gnu/packages/ldc.scm +++ b/gnu/packages/ldc.scm @@ -279,7 +279,7 @@ latest DMD frontend and uses LLVM as backend.") (define-public dub (package (name "dub") - (version "1.4.0") + (version "1.4.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/dlang/dub/archive/" @@ -287,7 +287,7 @@ latest DMD frontend and uses LLVM as backend.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1w3pznyjnmsmasrvv93f82l0sr31fpwg2zcj8hh1b2gvc5761qhi")))) + "0hpl5srbrzwzv8abc96j4cgbmvm1zhr109ljbl7hrphzzc39zyan")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; it would have tested itself by installing some packages (vibe etc) From f1f2da6bce6f31757027bc0b8fe934f5973b0bfb Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Aug 2017 13:59:14 +0200 Subject: [PATCH 0932/1227] gnu: feh: Update to 2.19.2. * gnu/packages/image-viewers.scm (feh): Update to 2.19.2. --- gnu/packages/image-viewers.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 07a62715de..c2f0a24344 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -54,7 +54,7 @@ (define-public feh (package (name "feh") - (version "2.19.1") + (version "2.19.2") (home-page "https://feh.finalrewind.org/") (source (origin (method url-fetch) @@ -62,7 +62,7 @@ name "-" version ".tar.bz2")) (sha256 (base32 - "1d4ycmai3dpajl0bdr9i56646g4h5j1lb95jjn0nckwcddcj927c")))) + "0v2nwc6sk4vs855a1ncz9vxpzxvs1d5wcjz87rfbypxx7nap2al2")))) (build-system gnu-build-system) (arguments '(#:phases (alist-delete 'configure %standard-phases) From 3ddaa7922bdd71ff4467b95a7ed264bbc4d49975 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Aug 2017 14:07:41 +0200 Subject: [PATCH 0933/1227] gnu: e2fsprogs: Update to 1.43.5. * gnu/packages/linux.scm (e2fsprogs): Update to 1.43.5. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 7edb5793fc..ae5af15e11 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -680,7 +680,7 @@ slabtop, and skill.") (define-public e2fsprogs (package (name "e2fsprogs") - (version "1.43.4") + (version "1.43.5") (source (origin (method url-fetch) (uri (string-append @@ -689,7 +689,7 @@ slabtop, and skill.") name "-" version ".tar.xz")) (sha256 (base32 - "092absr4vrlqrkdf9nwh4ykj40ab6hhwrkdr6sjsccd54c8z5csl")))) + "05ssjpmy0fpv2ik6ibm1f47wr6794nf0q50r581vygrqvsd3s7r6")))) (build-system gnu-build-system) (inputs `(("util-linux" ,util-linux))) (native-inputs `(("pkg-config" ,pkg-config) From bfcdf88760e6732d43c0cd1eeb0a95c5d8681950 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Thu, 10 Aug 2017 21:02:14 +0800 Subject: [PATCH 0934/1227] gnu: catdoc: Fix CVE-2017-11110. * gnu/packages/patches/catdoc-CVE-2017-11110.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/textutils.scm (catdoc)[source]: Use it. Signed-off-by: Marius Bakke --- gnu/local.mk | 1 + .../patches/catdoc-CVE-2017-11110.patch | 45 +++++++++++++++++++ gnu/packages/textutils.scm | 2 + 3 files changed, 48 insertions(+) create mode 100644 gnu/packages/patches/catdoc-CVE-2017-11110.patch diff --git a/gnu/local.mk b/gnu/local.mk index b1ff72d6a6..cffb18d3a6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -534,6 +534,7 @@ dist_patch_DATA = \ %D%/packages/patches/calibre-drop-unrar.patch \ %D%/packages/patches/calibre-no-updates-dialog.patch \ %D%/packages/patches/calibre-use-packaged-feedparser.patch \ + %D%/packages/patches/catdoc-CVE-2017-11110.patch \ %D%/packages/patches/cdparanoia-fpic.patch \ %D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \ %D%/packages/patches/ceph-disable-cpu-optimizations.patch \ diff --git a/gnu/packages/patches/catdoc-CVE-2017-11110.patch b/gnu/packages/patches/catdoc-CVE-2017-11110.patch new file mode 100644 index 0000000000..71c44f60fb --- /dev/null +++ b/gnu/packages/patches/catdoc-CVE-2017-11110.patch @@ -0,0 +1,45 @@ +Fix CVE-2017-11110: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11110 +https://bugzilla.redhat.com/show_bug.cgi?id=1468471 +https://security-tracker.debian.org/tracker/CVE-2017-11110 + +Patch copied from openSUSE: + +https://build.opensuse.org/package/view_file/openSUSE:Maintenance:6985/catdoc.openSUSE_Leap_42.2_Update/CVE-2017-11110.patch?expand=1 + +From: Andreas Stieger +Date: Mon, 10 Jul 2017 15:37:58 +0000 +References: CVE-2017-11110 http://bugzilla.suse.com/show_bug.cgi?id=1047877 + +All .doc I found had sectorSize 0x09 at offset 0x1e. Guarding it against <4. + +--- + src/ole.c | 5 +++++ + 1 file changed, 5 insertions(+) + +Index: catdoc-0.95/src/ole.c +=================================================================== +--- catdoc-0.95.orig/src/ole.c 2016-05-25 06:37:12.000000000 +0200 ++++ catdoc-0.95/src/ole.c 2017-07-10 17:42:33.578308107 +0200 +@@ -106,6 +106,11 @@ FILE* ole_init(FILE *f, void *buffer, si + return NULL; + } + sectorSize = 1<= 4 for CVE-2017-11110 */ + 1, sectorSize, newfile) != sectorSize) { + fprintf(stderr, "Error read MSAT!\n"); + ole_finish(); diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index e8ae30cd6d..537d013345 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2017 Rene Saavedra ;;; Copyright © 2017 Hartmut Goebel ;;; Copyright © 2017 Kei Kebreau +;;; Copyright © 2017 Alex Vong ;;; ;;; This file is part of GNU Guix. ;;; @@ -409,6 +410,7 @@ runs Word\".") (method url-fetch) (uri (string-append "http://ftp.wagner.pp.ru/pub/catdoc/" "catdoc-" version ".tar.gz")) + (patches (search-patches "catdoc-CVE-2017-11110.patch")) (sha256 (base32 "15h7v3bmwfk4z8r78xs5ih6vd0pskn0rj90xghvbzdjj0cc88jji")))) From 462ae6f612a251128445c1fa465ededf9b8f6281 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 11 Aug 2017 20:45:54 +0200 Subject: [PATCH 0935/1227] gnu: python-pylint: Use Python2 variant system. * gnu/packages/python.scm (python-pylint): Use Python2 variant system. (python2-pylint): Strip Python2 variant system. --- gnu/packages/python.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 731fee6333..13e1ce5bcb 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -14322,10 +14322,12 @@ Pylint has many rules enabled by default, way too much to silence them all on a minimally sized program. It's highly configurable and handle pragmas to control it from within your code. Additionally, it is possible to write plugins to add your own checks.") + (properties `((python2-variant . ,(delay python2-pylint)))) (license license:gpl2+))) (define-public python2-pylint - (let ((pylint (package-with-python2 python-pylint))) + (let ((pylint (package-with-python2 + (strip-python2-variant python-pylint)))) (package (inherit pylint) (propagated-inputs `(("python2-backports-functools-lru-cache" From 7d7c84a7bffc3f83636d4871a7798e2d060f28f0 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 12 Aug 2017 15:51:00 -0400 Subject: [PATCH 0936/1227] gnu: linux-libre@4.4: Update to 4.4.81. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.81. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index ae5af15e11..6d64f58651 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -380,8 +380,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.80" - "1s0d7lsapghgk6jh6igx2fhzj1f6nwmvhqrl2hdwf3dx14z93mp2" + (make-linux-libre "4.4.81" + "10bvb6ghwa6ak7kx8gm8qappkavbk1f2f4pzaq26bqnalpn1y454" %intel-compatible-systems #:configuration-file kernel-config)) From 5a8fc7de66d300ba5ebc0dcffbfa8daee039c07c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 12 Aug 2017 15:51:47 -0400 Subject: [PATCH 0937/1227] gnu: linux-libre@4.9: Update to 4.9.42. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.42. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 6d64f58651..2a13257a1d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -374,8 +374,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.41" - "1mkx7rvcny8b0yjkzd8zc53d15h1w8y75m0x6jx0dz3r9y3k0nql" + (make-linux-libre "4.9.42" + "0i08jhglvh015kv0ld0gqk6a7rmy65r47is83rmj4d0lzh2nin88" %intel-compatible-systems #:configuration-file kernel-config)) From f814379463dafa13ec893606f5b9cec3c18e74be Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 12 Aug 2017 15:52:29 -0400 Subject: [PATCH 0938/1227] gnu: linux-libre: Update to 4.12.6. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.6. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 2a13257a1d..97afe955e5 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -364,8 +364,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.5") -(define %linux-libre-hash "0kybil1h07fwl9rb0rvmp0w356hi2v1azw603r18vh9x93i8b8xi") +(define %linux-libre-version "4.12.6") +(define %linux-libre-hash "0xahgy49w2rjd4k58zj7r5vdj0jfrixzih8sxskpgwlqi1fc1r3j") (define-public linux-libre (make-linux-libre %linux-libre-version From 9be481f8b9715bb6f94eaa9970ab6efee9a5539d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 12 Aug 2017 22:09:32 +0300 Subject: [PATCH 0939/1227] gnu: efl: Update to 1.20.2. * gnu/packages/enlightenment.scm (efl): Update to 1.20.2. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index b42e631b98..3fefdb36da 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -59,7 +59,7 @@ (define-public efl (package (name "efl") - (version "1.20.1") + (version "1.20.2") (source (origin (method url-fetch) (uri (string-append @@ -67,7 +67,7 @@ version ".tar.xz")) (sha256 (base32 - "1d1wmmwgc8pf6lk9g6lflpdxvg85wxxq650d6m30zgr85cb6d27q")))) + "0zll6k4xbbdsxqg53g8jddgv889g5m1xh20i03iz5a52y2bcnh55")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From 861fd04baf8087156d927c58f502132466e5ead5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 12 Aug 2017 23:09:53 +0300 Subject: [PATCH 0940/1227] gnu: efl: Don't include gtk+@3 in enclosure. * gnu/packages/enlightenment.scm (efl)[propagated-inputs]: Replace libinput with libinput-minimal. --- gnu/packages/enlightenment.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 3fefdb36da..da1a1cf43d 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -123,7 +123,7 @@ ("glib" ,glib) ; ecore.pc, ecore-cxx.pc ("harfbuzz" ,harfbuzz) ; evas.pc, evas-cxx.pc ("luajit" ,luajit) ; elua.pc, evas.pc, evas-cxx.pc - ("libinput" ,libinput) ; elput.pc + ("libinput" ,libinput-minimal) ; elput.pc ("libpng" ,libpng) ; evas.pc, evas-cxx.pc ("libsndfile" ,libsndfile) ; ecore-audio.pc, ecore-audio-cxx.pc ("libxkbcommon" ,libxkbcommon) ; ecore-wl2.pc, elementary.pc, elput.pc From 065225a42d5555c6727dc26461a6a62867011ac9 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Thu, 27 Jul 2017 18:38:32 +0100 Subject: [PATCH 0941/1227] doc: Change Database Services description. This is overly specific, as this section now includes the documentation for Redis, which is not an SQL database. * doc/guix.texi: Change database services description. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 8f14ddd507..02933c82ca 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9024,7 +9024,7 @@ declaration. * X Window:: Graphical display. * Printing Services:: Local and remote printer support. * Desktop Services:: D-Bus and desktop services. -* Database Services:: SQL databases. +* Database Services:: SQL databases, key-value stores, etc. * Mail Services:: IMAP, POP3, SMTP, and all that. * Messaging Services:: Messaging services. * Monitoring Services:: Monitoring services. From c0761f2e7e6797ac12974cddac1d9c7ba7ee28f7 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 21 Jan 2017 12:42:54 +0000 Subject: [PATCH 0942/1227] gnu: moreutils: Add more inputs to moreutils. The included ts command requires the Time::Duration and Date::Parse perl modules for the -r option. * gnu/packages/moreutils.scm (moreutils)[inputs]: Add perl-timedate and perl-time-duration. [arguments]: Wrap ts with PERL5LIB. --- gnu/packages/moreutils.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gnu/packages/moreutils.scm b/gnu/packages/moreutils.scm index 03ffa8f992..bb6228af7f 100644 --- a/gnu/packages/moreutils.scm +++ b/gnu/packages/moreutils.scm @@ -52,10 +52,18 @@ ("libxml2" ,libxml2) ("libxslt" ,libxslt))) (inputs - `(("perl" ,perl))) + `(("perl" ,perl) + ("perl-timedate" ,perl-timedate) + ("perl-time-duration" ,perl-time-duration))) (arguments `(#:phases (modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (wrap-program + (string-append out "/bin/ts") + `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB"))))))) (delete 'configure)) ; no configure script #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) From 06465d2ba4291eb2046c90c3977a295a9b7c434b Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Sun, 13 Aug 2017 00:04:04 +0200 Subject: [PATCH 0943/1227] gnu: Add mpd service. * doc/guix.texi: Add documentation. * gnu/services/audio.scm (): New record type. (mpd-service-type): New service type. * gnu/tests/audio.scm: New file. * gnu/local.mk: Add new files. Signed-off-by: Christopher Baines --- doc/guix.texi | 54 ++++++++++++++++++++++++++ gnu/local.mk | 2 + gnu/services/audio.scm | 86 ++++++++++++++++++++++++++++++++++++++++++ gnu/tests/audio.scm | 78 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 220 insertions(+) create mode 100644 gnu/services/audio.scm create mode 100644 gnu/tests/audio.scm diff --git a/doc/guix.texi b/doc/guix.texi index 02933c82ca..94277ba396 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -227,6 +227,7 @@ Services * Network File System:: NFS related services. * Continuous Integration:: The Cuirass service. * Power management Services:: The TLP tool. +* Audio Services:: The MPD. * Miscellaneous Services:: Other services. Defining Services @@ -9035,6 +9036,7 @@ declaration. * Network File System:: NFS related services. * Continuous Integration:: The Cuirass service. * Power management Services:: The TLP tool. +* Audio Services:: The MPD. * Miscellaneous Services:: Other services. @end menu @@ -15635,6 +15637,58 @@ Package object of thermald. @end table @end deftp +@node Audio Services +@subsubsection Audio Services + +The @code{(gnu services audio)} module provides a service to start MPD +(the Music Player Daemon). + +@cindex mpd +@subsubheading Music Player Daemon + +The Music Player Daemon (MPD) is a service that can play music while +being controlled from the local machine or over the network by a variety +of clients. + +The following example shows how one might run @code{mpd} as user +@code{"bob"} on port @code{6666}. It uses pulseaudio for output. + +@example +(service mpd-service-type + (mpd-configuration + (user "bob") + (port "6666"))) +@end example + +@defvr {Scheme Variable} mpd-service-type +The service type for @command{mpd} +@end defvr + +@deftp {Data Type} mpd-configuration +Data type representing the configuration of @command{mpd}. + +@table @asis +@item @code{user} (default: @code{"mpd"}) +The user to run mpd as. + +@item @code{music-dir} (default: @code{"~/Music"}) +The directory to scan for music files. + +@item @code{playlist-dir} (default: @code{"~/.mpd/playlists"}) +The directory to store playlists. + +@item @code{pid-file} (default: @code{"/var/run/mpd.pid"}) +The file mpd wil store its PID. This must be an absolute path. + +@item @code{port} (default: @code{"6600"}) +The port to run mpd on. + +@item @code{address} (default: @code{"any"}) +The address that mpd will bind to. To use a Unix domain socket, +an absolute path can be specified here. + +@end table +@end deftp @node Miscellaneous Services @subsubsection Miscellaneous Services diff --git a/gnu/local.mk b/gnu/local.mk index cffb18d3a6..c12fd85594 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -426,6 +426,7 @@ GNU_SYSTEM_MODULES = \ \ %D%/services.scm \ %D%/services/admin.scm \ + %D%/services/audio.scm \ %D%/services/avahi.scm \ %D%/services/base.scm \ %D%/services/configuration.scm \ @@ -481,6 +482,7 @@ GNU_SYSTEM_MODULES = \ \ %D%/tests.scm \ %D%/tests/admin.scm \ + %D%/tests/audio.scm \ %D%/tests/base.scm \ %D%/tests/databases.scm \ %D%/tests/dict.scm \ diff --git a/gnu/services/audio.scm b/gnu/services/audio.scm new file mode 100644 index 0000000000..22814a6c09 --- /dev/null +++ b/gnu/services/audio.scm @@ -0,0 +1,86 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Peter Mikkelsen +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu services audio) + #:use-module (guix gexp) + #:use-module (gnu services) + #:use-module (gnu services shepherd) + #:use-module (gnu packages mpd) + #:use-module (guix records) + #:use-module (ice-9 match) + #:export (mpd-configuration + mpd-configuration? + mpd-service-type)) + +;;; Commentary: +;;; +;;; Audio related services +;;; +;;; Code: + +(define-record-type* + mpd-configuration make-mpd-configuration + mpd-configuration? + (user mpd-configuration-user + (default "mpd")) + (music-dir mpd-configuration-music-dir + (default "~/Music")) + (playlist-dir mpd-configuration-playlist-dir + (default "~/.mpd/playlists")) + (port mpd-configuration-port + (default "6600")) + (address mpd-configuration-address + (default "any")) + (pid-file mpd-configuration-pid-file + (default "/var/run/mpd.pid"))) + +(define (mpd-config->file config) + (apply + mixed-text-file "mpd.conf" + "audio_output {\n" + " type \"pulse\"\n" + " name \"MPD\"\n" + "}\n" + (map (match-lambda + ((config-name config-val) + (string-append config-name " \"" (config-val config) "\"\n"))) + `(("user" ,mpd-configuration-user) + ("music_directory" ,mpd-configuration-music-dir) + ("playlist_directory" ,mpd-configuration-playlist-dir) + ("port" ,mpd-configuration-port) + ("bind_to_address" ,mpd-configuration-address) + ("pid_file" ,mpd-configuration-pid-file))))) + +(define (mpd-service config) + (shepherd-service + (documentation "Run the MPD (Music Player Daemon)") + (provision '(mpd)) + (start #~(make-forkexec-constructor + (list #$(file-append mpd "/bin/mpd") + "--no-daemon" + #$(mpd-config->file config)) + #:pid-file #$(mpd-configuration-pid-file config))) + (stop #~(make-kill-destructor)))) + +(define mpd-service-type + (service-type + (name 'mpd) + (extensions + (list (service-extension shepherd-root-service-type + (compose list mpd-service)))) + (default-value (mpd-configuration)))) diff --git a/gnu/tests/audio.scm b/gnu/tests/audio.scm new file mode 100644 index 0000000000..8eadaf02e1 --- /dev/null +++ b/gnu/tests/audio.scm @@ -0,0 +1,78 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Peter Mikkelsen +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests audio) + #:use-module (gnu tests) + #:use-module (gnu system) + #:use-module (gnu system vm) + #:use-module (gnu services) + #:use-module (gnu services audio) + #:use-module (gnu packages mpd) + #:use-module (guix gexp) + #:export (%test-mpd)) + +(define %mpd-os + (simple-operating-system + (service mpd-service-type + (mpd-configuration + (user "root"))))) + +(define (run-mpd-test) + "Run tests in %mpd-os, which has mpd running." + (define os + (marionette-operating-system + %mpd-os + #:imported-modules '((gnu services herd)))) + + (define vm + (virtual-machine os)) + + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (srfi srfi-64) + (gnu build marionette)) + (define marionette + (make-marionette (list #$vm))) + + (mkdir #$output) + (chdir #$output) + + (test-begin "mpd") + + (test-assert "service is running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'mpd)) + marionette)) + + (test-assert "mpc connect" + (marionette-eval + '(zero? (system #$(file-append mpd-mpc "/bin/mpc"))) + marionette)) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (gexp->derivation "mpd-test" test)) + +(define %test-mpd + (system-test + (name "mpd") + (description "Test that the mpd can run and be connected to.") + (value (run-mpd-test)))) From f4c808df5b99bbe6d7a307c69ad27da5b17703d1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Aug 2017 10:16:00 +0300 Subject: [PATCH 0944/1227] gnu: pspp: Update to 0.11.0. This fixes CVE-2017-10791, CVE-2017-10792. * gnu/packages/statistics.scm (pspp): Update to 0.11.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index bdee8e59c7..8e7b815d6c 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -65,7 +65,7 @@ (define-public pspp (package (name "pspp") - (version "0.10.2") + (version "0.11.0") (source (origin (method url-fetch) @@ -73,7 +73,7 @@ version ".tar.gz")) (sha256 (base32 - "1afsq0a3iij64qacczvwhk81qg0q5rfqm055y5h9ls28d6paqz7p")))) + "1dmvg2dzfx57vxswdmk458qm2q12ihj2jnwm3qbmqywi473c2p5f")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) From f7e8302b4e04616d88b74efc3fb526a2690dadf2 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 12 Aug 2017 09:48:53 +0300 Subject: [PATCH 0945/1227] gnu: Add emacs-nix-mode. * gnu/packages/emacs.scm (emacs-nix-mode): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index bb5d2349fd..5a69990c67 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5226,6 +5226,23 @@ multiplexer.") editing RPM spec files.") (license license:gpl2+))) +(define-public emacs-nix-mode + (package + (inherit nix) + (name "emacs-nix-mode") + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir-elisp + ;; Elisp directory is not in root of the source. + (lambda _ + (chdir "misc/emacs")))))) + (synopsis "Emacs major mode for editing Nix expressions") + (description "@code{nixos-mode} provides an Emacs major mode for editing +Nix expressions. It supports syntax highlighting, indenting and refilling of +comments."))) + (define-public emacs-git-messenger (package (name "emacs-git-messenger") From 97660820450e5d2d8524952cce8a444eaf00c428 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 13 Aug 2017 15:14:03 +0200 Subject: [PATCH 0946/1227] gnu: imagemagick: Update to 6.9.9-7. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.9-7. --- gnu/packages/imagemagick.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 6e44175d97..8e17307543 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -45,14 +45,14 @@ ;; The 7 release series has an incompatible API, while the 6 series is still ;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; users are ready for the 7-series API. - (version "6.9.9-5") + (version "6.9.9-7") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "0mnhwzgap2q2qs899skc41s8gd2g1g6rgs959zxqg6yjx3n48r5a")))) + "1lwsz9b8clygdppgawv2hsry4aykgmawjlwhg3fj70rndv4a8rw4")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") From d5daf6fbe06ad7a5e0bfc8100584f1ac33a9f2a9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 13 Aug 2017 16:46:41 +0200 Subject: [PATCH 0947/1227] gnu: curl: Fix i686 test failure. * gnu/packages/patches/curl-bounds-check.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/curl.scm (curl-7.55.0)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/curl.scm | 1 + gnu/packages/patches/curl-bounds-check.patch | 19 +++++++++++++++++++ 3 files changed, 21 insertions(+) create mode 100644 gnu/packages/patches/curl-bounds-check.patch diff --git a/gnu/local.mk b/gnu/local.mk index c12fd85594..1e750ab44a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -567,6 +567,7 @@ dist_patch_DATA = \ %D%/packages/patches/crossmap-allow-system-pysam.patch \ %D%/packages/patches/csound-header-ordering.patch \ %D%/packages/patches/clucene-contribs-lib.patch \ + %D%/packages/patches/curl-bounds-check.patch \ %D%/packages/patches/cursynth-wave-rand.patch \ %D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \ %D%/packages/patches/dblatex-remove-multirow.patch \ diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index d6e32e4389..3f6335ae87 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -132,6 +132,7 @@ tunneling, and so on.") (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" version ".tar.xz")) + (patches (search-patches "curl-bounds-check.patch")) (sha256 (base32 "1785vxi0jamiv9d1wr1l45g0fm9ircxdfyfzf7ld8zv0z0i8bmfd")))) diff --git a/gnu/packages/patches/curl-bounds-check.patch b/gnu/packages/patches/curl-bounds-check.patch new file mode 100644 index 0000000000..4b8ff65304 --- /dev/null +++ b/gnu/packages/patches/curl-bounds-check.patch @@ -0,0 +1,19 @@ +Fix test failure on some 32-bit platforms. + +Patch copied from upstream source repository: + +https://github.com/curl/curl/commit/45a560390c4356bcb81d933bbbb229c8ea2acb63 + +diff --git a/src/tool_paramhlp.c b/src/tool_paramhlp.c +index b9dedc989e..85c5e79a7e 100644 +--- a/src/tool_paramhlp.c ++++ b/src/tool_paramhlp.c +@@ -218,7 +218,7 @@ static ParameterError str2double(double *val, const char *str, long max) + num = strtod(str, &endptr); + if(errno == ERANGE) + return PARAM_NUMBER_TOO_LARGE; +- if((long)num > max) { ++ if(num > max) { + /* too large */ + return PARAM_NUMBER_TOO_LARGE; + } From f152208b0da26ab9d3f85baaf74e1356699f8aea Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 13 Aug 2017 19:42:59 +0800 Subject: [PATCH 0948/1227] gnu: qemu: Fix CVE-2017-{10664,10806,10911,11434}. * gnu/packages/patches/qemu-CVE-2017-10664.patch, gnu/packages/patches/qemu-CVE-2017-10806.patch, gnu/packages/patches/qemu-CVE-2017-10911.patch, gnu/packages/patches/qemu-CVE-2017-11434.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/virtualization.scm (qemu)[source]: Use them. Signed-off-by: Marius Bakke --- gnu/local.mk | 4 + .../patches/qemu-CVE-2017-10664.patch | 27 +++++ .../patches/qemu-CVE-2017-10806.patch | 38 +++++++ .../patches/qemu-CVE-2017-10911.patch | 106 ++++++++++++++++++ .../patches/qemu-CVE-2017-11434.patch | 25 +++++ gnu/packages/virtualization.scm | 7 +- 6 files changed, 206 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/qemu-CVE-2017-10664.patch create mode 100644 gnu/packages/patches/qemu-CVE-2017-10806.patch create mode 100644 gnu/packages/patches/qemu-CVE-2017-10911.patch create mode 100644 gnu/packages/patches/qemu-CVE-2017-11434.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1e750ab44a..ec37f81b0f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -989,7 +989,11 @@ dist_patch_DATA = \ %D%/packages/patches/qemu-CVE-2017-8379.patch \ %D%/packages/patches/qemu-CVE-2017-8380.patch \ %D%/packages/patches/qemu-CVE-2017-9524.patch \ + %D%/packages/patches/qemu-CVE-2017-10664.patch \ + %D%/packages/patches/qemu-CVE-2017-10806.patch \ + %D%/packages/patches/qemu-CVE-2017-10911.patch \ %D%/packages/patches/qemu-CVE-2017-11334.patch \ + %D%/packages/patches/qemu-CVE-2017-11434.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/quagga-reproducible-build.patch \ diff --git a/gnu/packages/patches/qemu-CVE-2017-10664.patch b/gnu/packages/patches/qemu-CVE-2017-10664.patch new file mode 100644 index 0000000000..2b60de3dca --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2017-10664.patch @@ -0,0 +1,27 @@ +Fix CVE-2017-10664: + +https://lists.gnu.org/archive/html/qemu-devel/2017-06/msg02693.html +https://bugzilla.redhat.com/show_bug.cgi?id=1466190 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-10664 +https://security-tracker.debian.org/tracker/CVE-2017-10664 + +Patch copied from upstream source repository: + +https://git.qemu.org/gitweb.cgi?p=qemu.git;a=commitdiff;h=041e32b8d9d076980b4e35317c0339e57ab888f1 + +diff --git a/qemu-nbd.c b/qemu-nbd.c +index 9464a0461c..4dd3fd4732 100644 +--- a/qemu-nbd.c ++++ b/qemu-nbd.c +@@ -581,6 +581,10 @@ int main(int argc, char **argv) + sa_sigterm.sa_handler = termsig_handler; + sigaction(SIGTERM, &sa_sigterm, NULL); + ++#ifdef CONFIG_POSIX ++ signal(SIGPIPE, SIG_IGN); ++#endif ++ + module_call_init(MODULE_INIT_TRACE); + qcrypto_init(&error_fatal); + + diff --git a/gnu/packages/patches/qemu-CVE-2017-10806.patch b/gnu/packages/patches/qemu-CVE-2017-10806.patch new file mode 100644 index 0000000000..ebf782fe7b --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2017-10806.patch @@ -0,0 +1,38 @@ +Fix CVE-2017-10806: + +https://lists.nongnu.org/archive/html/qemu-devel/2017-05/msg03087.html +https://bugzilla.redhat.com/show_bug.cgi?id=1468496 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-10806 +https://security-tracker.debian.org/tracker/CVE-2017-10806 + +Patch copied from upstream source repository: + +https://git.qemu.org/gitweb.cgi?p=qemu.git;a=commit;h=bd4a683505b27adc1ac809f71e918e58573d851d + +diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c +index b001a27f05..ad5ef783a6 100644 +--- a/hw/usb/redirect.c ++++ b/hw/usb/redirect.c +@@ -229,21 +229,10 @@ static void usbredir_log(void *priv, int level, const char *msg) + static void usbredir_log_data(USBRedirDevice *dev, const char *desc, + const uint8_t *data, int len) + { +- int i, j, n; +- + if (dev->debug < usbredirparser_debug_data) { + return; + } +- +- for (i = 0; i < len; i += j) { +- char buf[128]; +- +- n = sprintf(buf, "%s", desc); +- for (j = 0; j < 8 && i + j < len; j++) { +- n += sprintf(buf + n, " %02X", data[i + j]); +- } +- error_report("%s", buf); +- } ++ qemu_hexdump((char *)data, stderr, desc, len); + } + + /* diff --git a/gnu/packages/patches/qemu-CVE-2017-10911.patch b/gnu/packages/patches/qemu-CVE-2017-10911.patch new file mode 100644 index 0000000000..1dcb860a2d --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2017-10911.patch @@ -0,0 +1,106 @@ +Fix CVE-2017-10911: + +https://xenbits.xen.org/xsa/advisory-216.html +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-10911 +https://security-tracker.debian.org/tracker/CVE-2017-10911 + +Patch copied from Xen Security Advisory: + +https://xenbits.xen.org/xsa/xsa216-qemuu.patch + +--- a/hw/block/xen_blkif.h ++++ b/hw/block/xen_blkif.h +@@ -14,9 +14,6 @@ + struct blkif_common_request { + char dummy; + }; +-struct blkif_common_response { +- char dummy; +-}; + + /* i386 protocol version */ + #pragma pack(push, 4) +@@ -36,13 +33,7 @@ struct blkif_x86_32_request_discard { + blkif_sector_t sector_number; /* start sector idx on disk (r/w only) */ + uint64_t nr_sectors; /* # of contiguous sectors to discard */ + }; +-struct blkif_x86_32_response { +- uint64_t id; /* copied from request */ +- uint8_t operation; /* copied from request */ +- int16_t status; /* BLKIF_RSP_??? */ +-}; + typedef struct blkif_x86_32_request blkif_x86_32_request_t; +-typedef struct blkif_x86_32_response blkif_x86_32_response_t; + #pragma pack(pop) + + /* x86_64 protocol version */ +@@ -62,20 +53,14 @@ struct blkif_x86_64_request_discard { + blkif_sector_t sector_number; /* start sector idx on disk (r/w only) */ + uint64_t nr_sectors; /* # of contiguous sectors to discard */ + }; +-struct blkif_x86_64_response { +- uint64_t __attribute__((__aligned__(8))) id; +- uint8_t operation; /* copied from request */ +- int16_t status; /* BLKIF_RSP_??? */ +-}; + typedef struct blkif_x86_64_request blkif_x86_64_request_t; +-typedef struct blkif_x86_64_response blkif_x86_64_response_t; + + DEFINE_RING_TYPES(blkif_common, struct blkif_common_request, +- struct blkif_common_response); ++ struct blkif_response); + DEFINE_RING_TYPES(blkif_x86_32, struct blkif_x86_32_request, +- struct blkif_x86_32_response); ++ struct blkif_response QEMU_PACKED); + DEFINE_RING_TYPES(blkif_x86_64, struct blkif_x86_64_request, +- struct blkif_x86_64_response); ++ struct blkif_response); + + union blkif_back_rings { + blkif_back_ring_t native; +--- a/hw/block/xen_disk.c ++++ b/hw/block/xen_disk.c +@@ -769,31 +769,30 @@ static int blk_send_response_one(struct + struct XenBlkDev *blkdev = ioreq->blkdev; + int send_notify = 0; + int have_requests = 0; +- blkif_response_t resp; +- void *dst; +- +- resp.id = ioreq->req.id; +- resp.operation = ioreq->req.operation; +- resp.status = ioreq->status; ++ blkif_response_t *resp; + + /* Place on the response ring for the relevant domain. */ + switch (blkdev->protocol) { + case BLKIF_PROTOCOL_NATIVE: +- dst = RING_GET_RESPONSE(&blkdev->rings.native, blkdev->rings.native.rsp_prod_pvt); ++ resp = RING_GET_RESPONSE(&blkdev->rings.native, ++ blkdev->rings.native.rsp_prod_pvt); + break; + case BLKIF_PROTOCOL_X86_32: +- dst = RING_GET_RESPONSE(&blkdev->rings.x86_32_part, +- blkdev->rings.x86_32_part.rsp_prod_pvt); ++ resp = RING_GET_RESPONSE(&blkdev->rings.x86_32_part, ++ blkdev->rings.x86_32_part.rsp_prod_pvt); + break; + case BLKIF_PROTOCOL_X86_64: +- dst = RING_GET_RESPONSE(&blkdev->rings.x86_64_part, +- blkdev->rings.x86_64_part.rsp_prod_pvt); ++ resp = RING_GET_RESPONSE(&blkdev->rings.x86_64_part, ++ blkdev->rings.x86_64_part.rsp_prod_pvt); + break; + default: +- dst = NULL; + return 0; + } +- memcpy(dst, &resp, sizeof(resp)); ++ ++ resp->id = ioreq->req.id; ++ resp->operation = ioreq->req.operation; ++ resp->status = ioreq->status; ++ + blkdev->rings.common.rsp_prod_pvt++; + + RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&blkdev->rings.common, send_notify); diff --git a/gnu/packages/patches/qemu-CVE-2017-11434.patch b/gnu/packages/patches/qemu-CVE-2017-11434.patch new file mode 100644 index 0000000000..4da701a73d --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2017-11434.patch @@ -0,0 +1,25 @@ +Fix CVE-2017-11434: + +https://lists.gnu.org/archive/html/qemu-devel/2017-07/msg05001.html +https://bugzilla.redhat.com/show_bug.cgi?id=1472611 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11434 +https://security-tracker.debian.org/tracker/CVE-2017-11434 + +Patch copied from upstream source repository: + +https://git.qemu.org/gitweb.cgi?p=qemu.git;a=commit;h=413d463f43fbc4dd3a601e80a5724aa384a265a0 + +diff --git a/slirp/bootp.c b/slirp/bootp.c +index 5a4646c182..5dd1a415b5 100644 +--- a/slirp/bootp.c ++++ b/slirp/bootp.c +@@ -123,6 +123,9 @@ static void dhcp_decode(const struct bootp_t *bp, int *pmsg_type, + if (p >= p_end) + break; + len = *p++; ++ if (p + len > p_end) { ++ break; ++ } + DPRINTF("dhcp: tag=%d len=%d\n", tag, len); + + switch(tag) { diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 49998120d2..ab364cd1fb 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015, 2016, 2017 Mark H Weaver ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2017 Alex Vong ;;; ;;; This file is part of GNU Guix. ;;; @@ -82,7 +83,11 @@ "qemu-CVE-2017-8379.patch" "qemu-CVE-2017-8380.patch" "qemu-CVE-2017-9524.patch" - "qemu-CVE-2017-11334.patch")) + "qemu-CVE-2017-10664.patch" + "qemu-CVE-2017-10806.patch" + "qemu-CVE-2017-10911.patch" + "qemu-CVE-2017-11334.patch" + "qemu-CVE-2017-11434.patch")) (sha256 (base32 "08mhfs0ndbkyqgw7fjaa9vjxf4dinrly656f6hjzvmaz7hzc677h")))) From 05af41a1812e0bbed8a8964516b8bb74ed46f60e Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 29 Jun 2017 15:52:15 +0000 Subject: [PATCH 0949/1227] gnu: linenoise: Update to commit 2105ce445821381cf1bca87b6d386d4ea88ee20d. * gnu/packages/shells.scm (linenoise): Update to commit 2105ce445821381cf1bca87b6d386d4ea88ee20d. Fix indentation. [source]: change to git. Signed-off-by: Kei Kebreau --- gnu/packages/shells.scm | 69 +++++++++++++++++++++-------------------- 1 file changed, 36 insertions(+), 33 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 89db28ff06..37307c807b 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -449,38 +449,41 @@ operating system.") (license bsd-3)))) (define-public linenoise - (package - (name "linenoise") - (version "1.0") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/antirez/linenoise/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "05006hd56xcvxjdpll4x720bpfan7vwqmxbw8a2kvm10w57ll1gm")))) - (build-system gnu-build-system) - (arguments - `(#:tests? #f ;No tests are included - #:make-flags (list "CC=gcc") - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - ;; At the moment there is no 'make install' in upstream. - (let* ((out (assoc-ref outputs "out"))) - (install-file "linenoise.h" - (string-append out "/include/linenoise")) - (install-file "linenoise.c" - (string-append out "/include/linenoise")) - #t)))))) - (home-page "https://github.com/antirez/linenoise") - (synopsis "Minimal zero-config readline replacement") - (description - "Linenoise is a minimal, zero-config, readline replacement. + (let ((commit "2105ce445821381cf1bca87b6d386d4ea88ee20d") + (revision "1")) + (package + (name "linenoise") + (version (string-append "1.0-" revision "." (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/antirez/linenoise") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1z16qwix8z6a40fskdgxsibkqgdrp4q6ncp4n6hnv4r9iihy2d8r")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ;No tests are included + #:make-flags (list "CC=gcc") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + ;; At the moment there is no 'make install' in upstream. + (let* ((out (assoc-ref outputs "out"))) + (install-file "linenoise.h" + (string-append out "/include/linenoise")) + (install-file "linenoise.c" + (string-append out "/include/linenoise")) + #t)))))) + (home-page "https://github.com/antirez/linenoise") + (synopsis "Minimal zero-config readline replacement") + (description + "Linenoise is a minimal, zero-config, readline replacement. Its features include: @enumerate @@ -490,7 +493,7 @@ Its features include: @item Hints (suggestions at the right of the prompt as you type) @item A subset of VT100 escapes, ANSI.SYS compatible @end enumerate\n") - (license bsd-2))) + (license bsd-2)))) (define-public s-shell (let ((commit "6604341edb3a775ff94415762af3ee9bd86bfb3c") From be6e2c3018a5f8d474a2b38311088547b2bd2203 Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 29 Jun 2017 15:32:27 +0000 Subject: [PATCH 0950/1227] gnu: Update open-adventure to d43854f0f6bb8e9eea7fbce80348150e7e7fc34d. * gnu/packages/games.scm (open-adventure): Update to d43854f0f6bb8e9eea7fbce80348150e7e7fc34d. Signed-off-by: Kei Kebreau --- gnu/packages/games.scm | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 9f32e9f8e5..436a885d6e 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -17,7 +17,7 @@ ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2016, 2017 Rodger Fox ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis -;;; Copyright © 2016, 2017 ng0 +;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 Albin Söderqvist ;;; Copyright © 2016, 2017 Kei Kebreau ;;; Copyright © 2016 Alex Griffin @@ -99,6 +99,7 @@ #:use-module (gnu packages xorg) #:use-module (gnu packages pkg-config) #:use-module (gnu packages databases) + #:use-module (gnu packages shells) #:use-module (gnu packages sdl) #:use-module (gnu packages swig) #:use-module (gnu packages texinfo) @@ -4564,8 +4565,8 @@ at their peak of economic growth and military prowess. ;; There have been no official releases. (define-public open-adventure - (let* ((commit "2483a23690d205f01ecb66165cf4522b541cd991") - (revision "1")) + (let* ((commit "d43854f0f6bb8e9eea7fbce80348150e7e7fc34d") + (revision "2")) (package (name "open-adventure") (version (string-append "2.5-" revision "." (string-take commit 7))) @@ -4577,14 +4578,23 @@ at their peak of economic growth and military prowess. (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1gkvkwbq5cl3llfc7nl41van8awn4myx782pg33bxpbx5l9scwb4")))) + "08bwrvf4axb1rsfd6ia1fddsky9pc1p350vjskhaakg2czc6dsk0")))) (build-system gnu-build-system) (arguments `(#:make-flags (list "CC=gcc") #:parallel-build? #f ; not supported #:phases (modify-phases %standard-phases - (delete 'configure) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; At this point linenoise is meant to be included, + ;; so we have to really copy it into the working directory + ;; of s. + (let* ((linenoise (assoc-ref inputs "linenoise")) + (noisepath (string-append linenoise "/include/linenoise")) + (out (assoc-ref outputs "out"))) + (copy-recursively noisepath "linenoise")) + #t)) (add-before 'build 'use-echo (lambda _ (substitute* "tests/Makefile" @@ -4594,9 +4604,9 @@ at their peak of economic growth and military prowess. (lambda _ ;; This target is missing a dependency (substitute* "Makefile" - ((".asc.6:" line) - (string-append line " advent.txt"))) - (zero? (system* "make" ".asc.6")))) + ((".adoc.6:" line) + (string-append line " advent.adoc"))) + (zero? (system* "make" ".adoc.6")))) ;; There is no install target (replace 'install (lambda* (#:key outputs #:allow-other-keys) @@ -4607,7 +4617,10 @@ at their peak of economic growth and military prowess. (install-file "advent.6" man)) #t))))) (native-inputs - `(("asciidoc" ,asciidoc))) + `(("asciidoc" ,asciidoc) + ("linenoise" ,linenoise) + ("python" ,python) + ("python-pyyaml" ,python-pyyaml))) (home-page "https://gitlab.com/esr/open-adventure") (synopsis "Colossal Cave Adventure") (description "The original Colossal Cave Adventure from 1976 was the From 79d5ad20e87066a0937a4b61a4857de2b34a7a30 Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 29 Jun 2017 16:03:03 +0000 Subject: [PATCH 0951/1227] mailmap: fix entries for ng0. Signed-off-by: Kei Kebreau --- .mailmap | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/.mailmap b/.mailmap index 618bc50114..9c10b84684 100644 --- a/.mailmap +++ b/.mailmap @@ -42,15 +42,16 @@ Mathieu Lirzin Mathieu Lirzin Mathieu Othacehe Nikita Karetnikov -ng0 -ng0 -ng0 -ng0 -ng0 -ng0 -ng0 -ng0 -ng0 +ng0 +ng0 +ng0 +ng0 +ng0 +ng0 +ng0 +ng0 +ng0 +ng0 Pjotr Prins Pjotr Prins Pjotr Prins From ac2ddcc66fd26d1cd3b5f0dab3fed855b29a4080 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sun, 13 Aug 2017 16:24:39 -0400 Subject: [PATCH 0952/1227] gnu: wxmaxima: Update to 17.05.1. * gnu/packages/maths.scm (wxmaxima): Update to 17.05.1. [arguments]: Put "autoconf" phase after the "unpack" phase. Fix indentation. --- gnu/packages/maths.scm | 53 +++++++++++++++++++++--------------------- 1 file changed, 26 insertions(+), 27 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 6597191805..1bb9f10ecd 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2159,7 +2159,7 @@ point numbers.") (define-public wxmaxima (package (name "wxmaxima") - (version "17.05.0") + (version "17.05.1") (source (origin (method url-fetch) @@ -2168,7 +2168,7 @@ point numbers.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1bsyd7r12xm2crpizb9iyyki3j0mbazzzwbsh871m06dv2wk97gq")))) + "0dv0cy0cf46v0cbw32izscpkdmpxg1qhwq1f4cz46kkqd8k4yfbj")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -2182,31 +2182,30 @@ point numbers.") ("gtk+" ,gtk+) ("shared-mime-info" ,shared-mime-info))) (arguments - `(#:phases (modify-phases %standard-phases - (add-before - 'configure 'autoconf - (lambda _ - (zero? (system* "./bootstrap")))) - (add-after - 'install 'wrap-program - (lambda* (#:key inputs outputs #:allow-other-keys) - (wrap-program (string-append (assoc-ref outputs "out") - "/bin/wxmaxima") - `("PATH" ":" prefix - (,(string-append (assoc-ref inputs "maxima") - "/bin"))) - ;; For GtkFileChooserDialog. - `("GSETTINGS_SCHEMA_DIR" = - (,(string-append (assoc-ref inputs "gtk+") - "/share/glib-2.0/schemas"))) - `("XDG_DATA_DIRS" ":" prefix - (;; Needed by gdk-pixbuf to know supported icon formats. - ,(string-append - (assoc-ref inputs "shared-mime-info") "/share") - ;; The default icon theme of GTK+. - ,(string-append - (assoc-ref inputs "adwaita-icon-theme") "/share")))) - #t))))) + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autoconf + (lambda _ + (zero? (system* "sh" "bootstrap")))) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/wxmaxima") + `("PATH" ":" prefix + (,(string-append (assoc-ref inputs "maxima") + "/bin"))) + ;; For GtkFileChooserDialog. + `("GSETTINGS_SCHEMA_DIR" = + (,(string-append (assoc-ref inputs "gtk+") + "/share/glib-2.0/schemas"))) + `("XDG_DATA_DIRS" ":" prefix + (;; Needed by gdk-pixbuf to know supported icon formats. + ,(string-append + (assoc-ref inputs "shared-mime-info") "/share") + ;; The default icon theme of GTK+. + ,(string-append + (assoc-ref inputs "adwaita-icon-theme") "/share")))) + #t))))) (home-page "https://andrejv.github.io/wxmaxima/") (synopsis "Graphical user interface for the Maxima computer algebra system") (description From 3bfa7af41754a19faa1b3b7232fd080436ccb386 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 13 Aug 2017 13:59:46 +0200 Subject: [PATCH 0953/1227] gnu: libreoffice: Install .desktop files. * gnu/packages/libreoffice.scm (libreoffice): Add phase to install .desktop files to $out/share so that LibreOffice will show up in Gnome/KDE/etc and so that it is associated with the various MIME types of interest. --- gnu/packages/libreoffice.scm | 51 ++++++++++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 8 deletions(-) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 5faa8db7e5..c27ddf042a 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Alex Griffin ;;; Copyright © 2017 Thomas Danckaert ;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; Copyright © 2017 Andy Wingo ;;; ;;; This file is part of GNU Guix. ;;; @@ -898,17 +899,51 @@ and to return information on pronunciations, meanings and synonyms.") (substitute* "external/libxmlsec/ExternalProject_xmlsec.mk" (("./configure") "$(CONFIG_SHELL) ./configure" )) #t))) - (add-after 'install 'bin-install + (add-after 'install 'bin-and-desktop-install ;; Create 'soffice' and 'libreoffice' symlinks to the executable ;; script. (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (soffice (string-append - out "/lib/libreoffice/program/soffice"))) - (mkdir bin) - (symlink soffice (string-append bin "/soffice")) - (symlink soffice (string-append bin "/libreoffice"))) + (let ((out (assoc-ref outputs "out"))) + (define (symlink-output src dst) + (mkdir-p (dirname (string-append out dst))) + (symlink (string-append out src) (string-append out dst))) + (define (install src dst) + (let ((dst (string-append out dst))) + (mkdir-p (dirname dst)) + (copy-file src dst))) + (define (install-desktop-file app) + (let ((src (string-append "/lib/libreoffice/share/xdg/" + app ".desktop")) + (dst (string-append "/share/applications/libreoffice-" + app ".desktop"))) + (substitute* (string-append out src) + (("Exec=libreoffice[0-9]+\\.[0-9]+ ") + (string-append "Exec=" out "/bin/libreoffice ")) + (("Icon=libreoffice[0-9]+\\.[0-9]+") + "Icon=libreoffice") + (("LibreOffice [0-9]+\\.[0-9]+") + "LibreOffice")) + (symlink-output src dst) + (install-file (string-append + "sysui/desktop/appstream-appdata/" + "libreoffice-" app ".appdata.xml") + (string-append out "/share/appdata")))) + (symlink-output "/lib/libreoffice/program/soffice" + "/bin/soffice") + (symlink-output "/lib/libreoffice/program/soffice" + "/bin/libreoffice") + (install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.keys" + "/share/mime-info/libreoffice.keys") + (install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.mime" + "/share/mime-info/libreoffice.mime") + (install + "workdir/CustomTarget/sysui/share/libreoffice/openoffice.org.xml" + "/share/mime/packages/libreoffice.xml") + (for-each install-desktop-file + '("base" "calc" "draw" "impress" "writer")) + (mkdir-p (string-append out "/share/icons")) + (copy-recursively "sysui/desktop/icons/hicolor" + (string-append out "/share/icons/"))) #t))) #:configure-flags (list From 7aee6a311b8846cdc7cdeb8c6c806960be3e1a2a Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 14 Aug 2017 03:31:29 -0400 Subject: [PATCH 0954/1227] gnu: linux-libre@4.4: Update to 4.4.82. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.82. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 97afe955e5..2e012c3bb3 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -380,8 +380,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.81" - "10bvb6ghwa6ak7kx8gm8qappkavbk1f2f4pzaq26bqnalpn1y454" + (make-linux-libre "4.4.82" + "01bn0vn6i22hhwiqfh29m1cir1jrvz643lz13war8k9l6h0dmmwy" %intel-compatible-systems #:configuration-file kernel-config)) From e96b4378a2915d0d6a67f1d62b6064fa1f02c0fb Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 14 Aug 2017 03:32:26 -0400 Subject: [PATCH 0955/1227] gnu: linux-libre@4.9: Update to 4.9.43. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.43. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 2e012c3bb3..1814945f0e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -374,8 +374,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.42" - "0i08jhglvh015kv0ld0gqk6a7rmy65r47is83rmj4d0lzh2nin88" + (make-linux-libre "4.9.43" + "0fxid4xmnrcq966vz2wsb6spw3i02pvqp2hv8xfrx7dr3hfs9nrr" %intel-compatible-systems #:configuration-file kernel-config)) From 9031d26aeb37c88d3ae2fd5401cb56fac477d044 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 14 Aug 2017 03:33:09 -0400 Subject: [PATCH 0956/1227] gnu: linux-libre: Update to 4.12.7. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.7. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1814945f0e..3ddecf6312 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -364,8 +364,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.6") -(define %linux-libre-hash "0xahgy49w2rjd4k58zj7r5vdj0jfrixzih8sxskpgwlqi1fc1r3j") +(define %linux-libre-version "4.12.7") +(define %linux-libre-hash "1sjkxkcikdgl2w5h7c5pfyqwi29g69dxp4s2z2yavw7aicc91xfq") (define-public linux-libre (make-linux-libre %linux-libre-version From 28fd275cafcd8508a786bacac4d56ef927facbfa Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sun, 13 Aug 2017 20:18:54 +0530 Subject: [PATCH 0957/1227] gnu: arandr: Use absolute path for xrandr. * gnu/packages/xdisorg.scm (arandr)[arguments]: Add configure phase. --- gnu/packages/xdisorg.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 31d39ea1ff..ffc2e790b5 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -93,6 +93,14 @@ (build-system python-build-system) (arguments `(#:python ,python-2 ;incompatible with python 3 + #:phases + (modify-phases %standard-phases + (add-before 'build 'configure + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "screenlayout/xrandr.py" + (("\"xrandr\"") (string-append "\"" (assoc-ref inputs "xrandr") + "/bin/xrandr\""))) + #t))) #:tests? #f)) ;no tests (inputs `(("pygtk" ,python2-pygtk) ("xrandr" ,xrandr))) From 2fa2179135189a6c0fa9c9f1744a5f0f7284dc0c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:29 +0200 Subject: [PATCH 0958/1227] gnu: Add perl-hash-fieldhash. * gnu/packages/perl.scm (perl-hash-fieldhash): New variable. --- gnu/packages/perl.scm | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 6a59e6bf86..dcd9640d92 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès ;;; Copyright © 2013 Andreas Enge -;;; Copyright © 2015, 2016 Ricardo Wurmus +;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus ;;; Copyright © 2015, 2016 Eric Bavier ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2016 Mark H Weaver @@ -3385,6 +3385,30 @@ objects, which execute a given code block when destroyed, and scoped guards, which are tied to the scope exit.") (license (package-license perl)))) +(define-public perl-hash-fieldhash + (package + (name "perl-hash-fieldhash") + (version "0.15") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/G/GF/GFUJI/" + "Hash-FieldHash-" version ".tar.gz")) + (sha256 + (base32 + "1wg8nzczfxif55j2nbymbhyd25pjy7dqs4bvd6jrcds3ll3mflaw")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build) + ("perl-test-leaktrace" ,perl-test-leaktrace))) + (home-page "http://search.cpan.org/dist/Hash-FieldHash") + (synopsis "Lightweight field hash for inside-out objects") + (description "@code{Hash::FieldHash} provides the field hash mechanism +which supports the inside-out technique. It is an alternative to +@code{Hash::Util::FieldHash} with a simpler interface, higher performance, and +relic support.") + (license (package-license perl)))) + (define-public perl-hash-merge (package (name "perl-hash-merge") From d96e162aa96df3af93655781b7d7259314394684 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:30 +0200 Subject: [PATCH 0959/1227] gnu: Add perl-math-random-isaac-xs. * gnu/packages/crypto.scm (perl-math-random-isaac-xs): New variable. --- gnu/packages/crypto.scm | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index d02bc20f20..fa07f9d34f 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 David Thompson -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2017 Ricardo Wurmus ;;; Copyright © 2016, 2017 Leo Famulari ;;; Copyright © 2016 Lukas Gradl ;;; Copyright © 2016 Tobias Geerinckx-Rice @@ -52,6 +52,7 @@ #:use-module (guix git-download) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) + #:use-module (guix build-system perl) #:use-module (guix build-system python)) (define-public libsodium @@ -437,3 +438,30 @@ PKCS#8, PKCS#12, PKCS#5, X.509 and TSP.") (define-public python2-asn1crypto (package-with-python2 python-asn1crypto)) + +(define-public perl-math-random-isaac-xs + (package + (name "perl-math-random-isaac-xs") + (version "1.004") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/J/JA/JAWNSY/" + "Math-Random-ISAAC-XS-" version ".tar.gz")) + (sha256 + (base32 + "0yxqqcqvj51fn7b7j5xqhz65v74arzgainn66c6k7inijbmr1xws")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build) + ("perl-test-nowarnings" ,perl-test-nowarnings))) + (home-page "http://search.cpan.org/dist/Math-Random-ISAAC-XS") + (synopsis "C implementation of the ISAAC PRNG algorithm") + (description "ISAAC (Indirection, Shift, Accumulate, Add, and Count) is a +fast pseudo-random number generator. It is suitable for applications where a +significant amount of random data needs to be produced quickly, such as +solving using the Monte Carlo method or for games. The results are uniformly +distributed, unbiased, and unpredictable unless you know the seed. + +This package implements the same interface as @code{Math::Random::ISAAC}.") + (license license:public-domain))) From 649238cbc75968e0c093deef88ab3ca31161d258 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 11:44:55 +0200 Subject: [PATCH 0960/1227] gnu: Add perl-math-random-isaac. * gnu/packages/crypto.scm (perl-math-random-isaac): New variable. --- gnu/packages/crypto.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index fa07f9d34f..8df3095518 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -465,3 +465,32 @@ distributed, unbiased, and unpredictable unless you know the seed. This package implements the same interface as @code{Math::Random::ISAAC}.") (license license:public-domain))) + +(define-public perl-math-random-isaac + (package + (name "perl-math-random-isaac") + (version "1.004") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/J/JA/JAWNSY/" + "Math-Random-ISAAC-" version ".tar.gz")) + (sha256 + (base32 + "0z1b3xbb3xz71h25fg6jgsccra7migq7s0vawx2rfzi0pwpz0wr7")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-nowarnings" ,perl-test-nowarnings))) + (propagated-inputs + `(("perl-math-random-isaac-xs" ,perl-math-random-isaac-xs))) + (home-page "http://search.cpan.org/dist/Math-Random-ISAAC") + (synopsis "Perl interface to the ISAAC PRNG algorithm") + (description "ISAAC (Indirection, Shift, Accumulate, Add, and Count) is a +fast pseudo-random number generator. It is suitable for applications where a +significant amount of random data needs to be produced quickly, such as +solving using the Monte Carlo method or for games. The results are uniformly +distributed, unbiased, and unpredictable unless you know the seed. + +This package provides a Perl interface to the ISAAC pseudo random number +generator.") + (license license:public-domain))) From 413dd21084ea96067a8f25d23fd0d01088f55e67 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:32 +0200 Subject: [PATCH 0961/1227] gnu: Add perl-type-tie. * gnu/packages/perl.scm (perl-type-tie): New variable. --- gnu/packages/perl.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index dcd9640d92..5c36cedc76 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7726,6 +7726,34 @@ that are designed to minimize common mistakes with eval blocks, and nothing else.") (license x11))) +(define-public perl-type-tie + (package + (name "perl-type-tie") + (version "0.009") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/T/TO/TOBYINK/" + "Type-Tie-" version ".tar.gz")) + (sha256 + (base32 + "1wv32kd7gx4kfyvzs13y029f49qbbji991wawvarac7rlz09wpan")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-fatal" ,perl-test-fatal) + ("perl-test-requires" ,perl-test-requires))) + (propagated-inputs + `(("perl-exporter-tiny" ,perl-exporter-tiny) + ("perl-hash-fieldhash" ,perl-hash-fieldhash))) + (home-page "http://search.cpan.org/dist/Type-Tie") + (synopsis "Tie a variable to a type constraint") + (description "This module exports a single function: @code{ttie}. It ties +a variable to a type constraint, ensuring that whatever values stored in the +variable will conform to the type constraint. If the type constraint has +coercions, these will be used if necessary to ensure values assigned to the +variable conform.") + (license (package-license perl)))) + (define-public perl-types-serialiser (package (name "perl-types-serialiser") From 44d37e43fefdac1a2e5dd8bb776b780540056946 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:33 +0200 Subject: [PATCH 0962/1227] gnu: Add perl-regexp-util. * gnu/packages/perl.scm (perl-regexp-util): New variable. --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 5c36cedc76..7ef9962ea1 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5701,6 +5701,27 @@ codes.") ;; Quad-licensed: Perl Artistic, Perl Artistic 2.0, X11, and BSD. (license (list (package-license perl) x11 bsd-3)))) +(define-public perl-regexp-util + (package + (name "perl-regexp-util") + (version "0.003") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/T/TO/TOBYINK/" + "Regexp-Util-" version ".tar.gz")) + (sha256 + (base32 + "01n1cggiflsnp9f6adkcxzkc0qpgssz60cwnyyd8mzavh2ximr5a")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Regexp-Util") + (synopsis "Selection of general-utility regexp subroutines") + (description "This package provides a selection of regular expression +subroutines including @code{is_regexp}, @code{regexp_seen_evals}, +@code{regexp_is_foreign}, @code{regexp_is_anchored}, @code{serialize_regexp}, +and @code{deserialize_regexp}.") + (license (package-license perl)))) + (define-public perl-role-tiny (package (name "perl-role-tiny") From a0eb3104a96777e0d3c718c91d7c9eb358c4e1f3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:34 +0200 Subject: [PATCH 0963/1227] gnu: Add perl-ref-util-xs. * gnu/packages/perl.scm (perl-ref-util-xs): New variable. --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 7ef9962ea1..35669bf002 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5676,6 +5676,27 @@ can also be useful as a development and debugging tool for catching updates to variables that should not be changed.") (license (package-license perl)))) +(define-public perl-ref-util-xs + (package + (name "perl-ref-util-xs") + (version "0.116") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/X/XS/XSAWYERX/" + "Ref-Util-XS-" version ".tar.gz")) + (sha256 + (base32 + "0l5dzbd71iclv8fdjk7685rq6pbfiiydh0n70br6g9l9iy2smr6f")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Ref-Util-XS") + (synopsis "XS implementation for Ref::Util") + (description "@code{Ref::Util::XS} is the XS implementation of +@code{Ref::Util}, which provides several functions to help identify references +in a more convenient way than the usual approach of examining the return value +of @code{ref}.") + (license x11))) + (define-public perl-regexp-common (package (name "perl-regexp-common") From 2bdc07c2a5a99d114f12892b6087855da0a315f1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:35 +0200 Subject: [PATCH 0964/1227] gnu: Add perl-type-tiny. * gnu/packages/perl.scm (perl-type-tiny): New variable. --- gnu/packages/perl.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 35669bf002..3265a55f03 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7796,6 +7796,40 @@ coercions, these will be used if necessary to ensure values assigned to the variable conform.") (license (package-license perl)))) +(define-public perl-type-tiny + (package + (name "perl-type-tiny") + (version "1.002001") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/T/TO/TOBYINK/" + "Type-Tiny-" version ".tar.gz")) + (sha256 + (base32 + "1p8krim8kvw123nady96fagi8sk2pj1z8jkr4r8n45ihyamfxjck")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-warnings" ,perl-test-warnings))) + (propagated-inputs + `(("perl-devel-lexalias" ,perl-devel-lexalias) + ("perl-devel-stacktrace" ,perl-devel-stacktrace) + ("perl-exporter-tiny" ,perl-exporter-tiny) + ("perl-moo" ,perl-moo) + ("perl-moose" ,perl-moose) + ("perl-mouse" ,perl-mouse) + ("perl-ref-util-xs" ,perl-ref-util-xs) + ("perl-regexp-util" ,perl-regexp-util) + ("perl-type-tie" ,perl-type-tie))) + (home-page "http://search.cpan.org/dist/Type-Tiny") + (synopsis "Tiny, yet Moo(se)-compatible type constraint") + (description "@code{Type::Tiny} is a small class for writing type +constraints, inspired by Moose's type constraint API. It has only one +non-core dependency (and even that is simply a module that was previously +distributed as part of @code{Type::Tiny} but has since been spun off), and can +be used with Moose, Mouse and Moo (or none of the above).") + (license (package-license perl)))) + (define-public perl-types-serialiser (package (name "perl-types-serialiser") From 2023b79f59b1f0624bf6825669b342dc8cff696e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:00:36 +0200 Subject: [PATCH 0965/1227] gnu: Add perl-crypt-random-source. * gnu/packages/crypto.scm (perl-crypt-random-source): New variable. --- gnu/packages/crypto.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 8df3095518..3ddeefed84 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -494,3 +494,33 @@ distributed, unbiased, and unpredictable unless you know the seed. This package provides a Perl interface to the ISAAC pseudo random number generator.") (license license:public-domain))) + +(define-public perl-crypt-random-source + (package + (name "perl-crypt-random-source") + (version "0.12") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" + "Crypt-Random-Source-" version ".tar.gz")) + (sha256 + (base32 + "00mw5m52sbz9nqp3f6axyrgcrihqxn7k8gv0vi1kvm1j1nc9g29h")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build-tiny" ,perl-module-build-tiny) + ("perl-test-exception" ,perl-test-exception))) + (propagated-inputs + `(("perl-capture-tiny" ,perl-capture-tiny) + ("perl-module-find" ,perl-module-find) + ("perl-module-runtime" ,perl-module-runtime) + ("perl-moo" ,perl-moo) + ("perl-namespace-clean" ,perl-namespace-clean) + ("perl-sub-exporter" ,perl-sub-exporter) + ("perl-type-tiny" ,perl-type-tiny))) + (home-page "http://search.cpan.org/dist/Crypt-Random-Source") + (synopsis "Get weak or strong random data from pluggable sources") + (description "This module provides implementations for a number of +byte-oriented sources of random data.") + (license (package-license perl)))) From 233f4f43bfe851d9b7a3dee7e881dcd017a2c1a3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 11:50:42 +0200 Subject: [PATCH 0966/1227] gnu: Add perl-math-random-secure. * gnu/packages/crypto.scm (perl-math-random-secure): New variable. --- gnu/packages/crypto.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 3ddeefed84..62fe5fe081 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -524,3 +524,42 @@ generator.") (description "This module provides implementations for a number of byte-oriented sources of random data.") (license (package-license perl)))) + +(define-public perl-math-random-secure + (package + (name "perl-math-random-secure") + (version "0.080001") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/F/FR/FREW/" + "Math-Random-Secure-" version ".tar.gz")) + (sha256 + (base32 + "0dgbf4ncll4kmgkyb9fsaxn0vf2smc9dmwqzgh3259zc2zla995z")))) + (build-system perl-build-system) + (native-inputs + `(("perl-list-moreutils" ,perl-list-moreutils) + ("perl-test-leaktrace" ,perl-test-leaktrace) + ("perl-test-sharedfork" ,perl-test-sharedfork) + ("perl-test-warn" ,perl-test-warn))) + (inputs + `(("perl-crypt-random-source" ,perl-crypt-random-source) + ("perl-math-random-isaac" ,perl-math-random-isaac) + ("perl-math-random-isaac-xs" ,perl-math-random-isaac-xs) + ("perl-moo" ,perl-moo))) + (home-page "http://search.cpan.org/dist/Math-Random-Secure") + (synopsis "Cryptographically secure replacement for rand()") + (description "This module is intended to provide a +cryptographically-secure replacement for Perl's built-in @code{rand} function. +\"Crytographically secure\", in this case, means: + +@enumerate +@item No matter how many numbers you see generated by the random number +generator, you cannot guess the future numbers, and you cannot guess the seed. +@item There are so many possible seeds that it would take decades, centuries, +or millenia for an attacker to try them all. +@item The seed comes from a source that generates relatively strong random +data on your platform, so the seed itself will be as random as possible. +@end enumerate\n") + (license license:artistic2.0))) From 86763fdd70b48df5e4be5f2df6ac4335d9f7abe5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:40:22 +0200 Subject: [PATCH 0967/1227] gnu: Add r-dexseq. * gnu/packages/bioinformatics.scm (r-dexseq): New variable. --- gnu/packages/bioinformatics.scm | 43 +++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 92c64cffa0..c5a4dcad93 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5791,6 +5791,49 @@ differential expression based on a model using the negative binomial distribution.") (license license:lgpl3+))) +(define-public r-dexseq + (package + (name "r-dexseq") + (version "1.22.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "DEXSeq" version)) + (sha256 + (base32 + "085aqk1wlzzqcqcqhvz74y099kr2ln5dwdxd3rl6zan806mgwahg")))) + (properties `((upstream-name . "DEXSeq"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) + ("r-biomart" ,r-biomart) + ("r-deseq2" ,r-deseq2) + ("r-genefilter" ,r-genefilter) + ("r-geneplotter" ,r-geneplotter) + ("r-genomicranges" ,r-genomicranges) + ("r-hwriter" ,r-hwriter) + ("r-iranges" ,r-iranges) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-rsamtools" ,r-rsamtools) + ("r-s4vectors" ,r-s4vectors) + ("r-statmod" ,r-statmod) + ("r-stringr" ,r-stringr) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (home-page "http://bioconductor.org/packages/DEXSeq") + (synopsis "Inference of differential exon usage in RNA-Seq") + (description + "This package is focused on finding differential exon usage using RNA-seq +exon counts between samples with different experimental designs. It provides +functions that allows the user to make the necessary statistical tests based +on a model that uses the negative binomial distribution to estimate the +variance between biological replicates and generalized linear models for +testing. The package also provides functions for the visualization and +exploration of the results.") + (license license:gpl3+))) + (define-public r-annotationforge (package (name "r-annotationforge") From 9634804890a811f65267f273835b001cc087c23f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 9 Aug 2017 19:40:23 +0200 Subject: [PATCH 0968/1227] gnu: Add bismark. * gnu/packages/bioinformatics.scm (bismark): New variable. --- gnu/packages/bioinformatics.scm | 63 +++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index c5a4dcad93..9d64294e48 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -9797,3 +9797,66 @@ such as transcription factor binding sites (ChIP-seq) or regions of open chromatin (DNase-seq). Output can be displayed directly in the UCSC Genome Browser.") (license license:gpl3+)))) + +(define-public bismark + (package + (name "bismark") + (version "0.16.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/FelixKrueger/Bismark/" + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1204i0pa02ll2jn5pnxypkclnskvv7a2nwh5nxhagmhxk9wfv9sq")))) + (build-system perl-build-system) + (arguments + `(#:tests? #f ; there are no tests + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") + "/bin")) + (docdir (string-append (assoc-ref outputs "out") + "/share/doc/bismark")) + (docs '("Bismark_User_Guide.pdf" + "RELEASE_NOTES.txt")) + (scripts '("bismark" + "bismark_genome_preparation" + "bismark_methylation_extractor" + "bismark2bedGraph" + "bismark2report" + "coverage2cytosine" + "deduplicate_bismark" + "bismark_sitrep.tpl" + "bam2nuc" + "bismark2summary"))) + (mkdir-p docdir) + (mkdir-p bin) + (for-each (lambda (file) (install-file file bin)) + scripts) + (for-each (lambda (file) (install-file file docdir)) + docs) + #t)))))) + (home-page "http://www.bioinformatics.babraham.ac.uk/projects/bismark/") + (synopsis "Map bisulfite treated sequence reads and analyze methylation") + (description "Bismark is a program to map bisulfite treated sequencing +reads to a genome of interest and perform methylation calls in a single step. +The output can be easily imported into a genome viewer, such as SeqMonk, and +enables a researcher to analyse the methylation levels of their samples +straight away. Its main features are: + +@itemize +@item Bisulfite mapping and methylation calling in one single step +@item Supports single-end and paired-end read alignments +@item Supports ungapped and gapped alignments +@item Alignment seed length, number of mismatches etc are adjustable +@item Output discriminates between cytosine methylation in CpG, CHG + and CHH context +@end itemize\n") + (license license:gpl3+))) From 1faf081b4710f5aebd2db5a52c335331b524b0ca Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Mon, 14 Aug 2017 14:26:15 -0400 Subject: [PATCH 0969/1227] gnu: milkytracker: Update to 1.01.00. * gnu/packages/music.scm (milkytracker): Update to 1.01.00. --- gnu/packages/music.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 40996b11be..dcb48fb200 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2264,15 +2264,16 @@ of tools for manipulating and accessing your music.") (define-public milkytracker (package (name "milkytracker") - (version "1.0.0") + (version "1.01.00") (source (origin (method url-fetch) (uri (string-append "https://github.com/milkytracker/" - "MilkyTracker/archive/v" version ".tar.gz")) + "MilkyTracker/archive/v" + version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1p1jd4h274jvcvl05l01v9bj19zhq4sjag92v1zawyi93ib85abz")) + "1dvnddsnn9c83lz4dlm0cfjpc0m524amfkbalxbswdy0qc8cj1wv")) (modules '((guix build utils))) ;; Remove non-FSDG compliant sample songs. (snippet From a547a6d5608ad86182a491f1508a580d8c723bc0 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 14 Aug 2017 21:19:20 +0200 Subject: [PATCH 0970/1227] Revert "gnu: e2fsprogs: Update to 1.43.5." Fails to build on i686: This reverts commit 3ddaa7922bdd71ff4467b95a7ed264bbc4d49975. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 3ddecf6312..63027d658f 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -680,7 +680,7 @@ slabtop, and skill.") (define-public e2fsprogs (package (name "e2fsprogs") - (version "1.43.5") + (version "1.43.4") (source (origin (method url-fetch) (uri (string-append @@ -689,7 +689,7 @@ slabtop, and skill.") name "-" version ".tar.xz")) (sha256 (base32 - "05ssjpmy0fpv2ik6ibm1f47wr6794nf0q50r581vygrqvsd3s7r6")))) + "092absr4vrlqrkdf9nwh4ykj40ab6hhwrkdr6sjsccd54c8z5csl")))) (build-system gnu-build-system) (inputs `(("util-linux" ,util-linux))) (native-inputs `(("pkg-config" ,pkg-config) From 2bccf1c0ecaf19c76776c7d35ec4b6161722a71d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Aug 2017 22:29:47 +0300 Subject: [PATCH 0971/1227] gnu: gcc@7: Update to 7.2.0. * gnu/packages/gcc.scm (gcc@7): Update to 7.2.0. [source]: Switch to xz compression. --- gnu/packages/gcc.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index bb8570bec5..2cecf81310 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -405,14 +405,14 @@ Go. It also includes runtime support libraries for these languages.") (define-public gcc-7 (package (inherit gcc-6) - (version "7.1.0") + (version "7.2.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gcc/gcc-" - version "/gcc-" version ".tar.bz2")) + version "/gcc-" version ".tar.xz")) (sha256 (base32 - "05xwps0ci7wgxh50askpa2r9p8518qxdgh6ad7pnyk7n6p13d0ca")) + "16j7i0888j2f1yp9l0nhji6cq65dy6y4nwy8868a8njbzzwavxqw")) (patches (search-patches "gcc-strmov-store-file-names.patch" "gcc-5.0-libvtv-runpath.patch")))))) From 36bfcf7e3a6d2a2dbaa05a4cfb4066adcf13da6d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 14 Aug 2017 21:35:41 +0200 Subject: [PATCH 0972/1227] gnu: git@2.10: Update to 2.10.4 [fixes CVE-2017-1000117]. ...also disable tests, since they broke after c9f4f56b24801718d89c2520b. * gnu/packages/version-control.scm (git@2.10): Update to 2.10.4. [arguments]: New field. --- gnu/packages/version-control.scm | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index bff6471559..151cf0cf10 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -350,18 +350,21 @@ everything from small to very large projects with speed and efficiency.") (home-page "https://git-scm.com/"))) ;; Some dependent packages directly access internal interfaces which -;; have changed in 2.12 +;; have changed in 2.12. TODO: Remove this for cgit > 1.1. (define-public git@2.10 (package (inherit git) - (version "2.10.3") - (source (origin - (method url-fetch) - (uri (string-append "mirror://kernel.org/software/scm/git/git-" - version ".tar.xz")) - (sha256 - (base32 - "02mb7yi49algsya3hnkcxdslwb6p1bi7c732z1g8kzq4hs838m7z")))))) + (version "2.10.4") + (source (origin + (method url-fetch) + (uri (string-append "mirror://kernel.org/software/scm/git/git-" + version ".tar.xz")) + (sha256 + (base32 + "1pni4mgih5w42813dxljl61s7xmcpdnar34d9m4548hzpljjyd4l")))) + (arguments + `(#:tests? #f + ,@(package-arguments git))))) (define-public libgit2 (package From 15428168eaf06ce54aa3f8ed8eec819d6bbdefec Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 14 Aug 2017 12:27:01 -0400 Subject: [PATCH 0973/1227] gnu: cvs: Fix CVE-2017-12836. * gnu/packages/patches/cvs-2017-12836.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/version-control.scm (cvs)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/patches/cvs-2017-12836.patch | 45 +++++++++++++++++++++++ gnu/packages/version-control.scm | 1 + 3 files changed, 47 insertions(+) create mode 100644 gnu/packages/patches/cvs-2017-12836.patch diff --git a/gnu/local.mk b/gnu/local.mk index ec37f81b0f..97e876a507 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -569,6 +569,7 @@ dist_patch_DATA = \ %D%/packages/patches/clucene-contribs-lib.patch \ %D%/packages/patches/curl-bounds-check.patch \ %D%/packages/patches/cursynth-wave-rand.patch \ + %D%/packages/patches/cvs-2017-12836.patch \ %D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \ %D%/packages/patches/dblatex-remove-multirow.patch \ %D%/packages/patches/dbus-helper-search-path.patch \ diff --git a/gnu/packages/patches/cvs-2017-12836.patch b/gnu/packages/patches/cvs-2017-12836.patch new file mode 100644 index 0000000000..507ab0f7d0 --- /dev/null +++ b/gnu/packages/patches/cvs-2017-12836.patch @@ -0,0 +1,45 @@ +Fix CVE-2017-12836: + +http://cve.mitre.org/cgi-bin/cvename.cgi?name=2017-12836 +https://security-tracker.debian.org/tracker/CVE-2017-12836 + +Patch adpated from Debian (comments and changelog annotations removed): + +https://anonscm.debian.org/cgit/collab-maint/cvs.git/commit/?h=stretch&id=41e077396e35efb6c879951f44c62dd8a1d0f094 + +From 41e077396e35efb6c879951f44c62dd8a1d0f094 Mon Sep 17 00:00:00 2001 +From: mirabilos +Date: Sat, 12 Aug 2017 03:17:18 +0200 +Subject: Fix CVE-2017-12836 (Closes: #871810) for stretch + +--- + debian/changelog | 6 ++++++ + src/rsh-client.c | 10 ++++++++-- + 2 files changed, 14 insertions(+), 2 deletions(-) + +diff --git a/src/rsh-client.c b/src/rsh-client.c +index fe0cfc4..1fc860d 100644 +--- a/src/rsh-client.c ++++ b/src/rsh-client.c +@@ -105,6 +106,9 @@ start_rsh_server (cvsroot_t *root, struct buffer **to_server_p, + rsh_argv[i++] = argvport; + } + ++ /* Only non-option arguments from here. (CVE-2017-12836) */ ++ rsh_argv[i++] = "--"; ++ + rsh_argv[i++] = root->hostname; + rsh_argv[i++] = cvs_server; + if (readonlyfs) +@@ -189,6 +193,8 @@ start_rsh_server (cvsroot_t *root, struct buffer **to_server_p, + *p++ = argvport; + } + ++ *p++ = "--"; ++ + *p++ = root->hostname; + *p++ = command; + *p++ = NULL; +-- +cgit v0.12 + diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 151cf0cf10..7c1f02d5ad 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -924,6 +924,7 @@ machine.") (uri (string-append "https://ftp.gnu.org/non-gnu/cvs/source/feature/" version "/cvs-" version ".tar.bz2")) + (patches (search-patches "cvs-2017-12836.patch")) (sha256 (base32 "0pjir8cwn0087mxszzbsi1gyfc6373vif96cw4q3m1x6p49kd1bq")))) From f28fea1ca729de793ad5e08deb7e6e2c7a663b0d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 15 Aug 2017 01:08:01 +0200 Subject: [PATCH 0974/1227] gnu: e2fsprogs: Update to 1.43.5. * gnu/packages/patches/e2fsprogs-32bit-quota-warnings.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/linux.scm (e2fsprogs): Update to 1.43.5. [source]: Use patch. --- gnu/local.mk | 1 + gnu/packages/linux.scm | 5 +- .../e2fsprogs-32bit-quota-warnings.patch | 46 +++++++++++++++++++ 3 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/e2fsprogs-32bit-quota-warnings.patch diff --git a/gnu/local.mk b/gnu/local.mk index 97e876a507..b15a16b6bc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -580,6 +580,7 @@ dist_patch_DATA = \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/doxygen-test.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ + %D%/packages/patches/e2fsprogs-32bit-quota-warnings.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \ %D%/packages/patches/elixir-disable-failing-tests.patch \ %D%/packages/patches/einstein-build.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 63027d658f..212eb12775 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -680,16 +680,17 @@ slabtop, and skill.") (define-public e2fsprogs (package (name "e2fsprogs") - (version "1.43.4") + (version "1.43.5") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/people/tytso/" name "/v" version "/" name "-" version ".tar.xz")) + (patches (search-patches "e2fsprogs-32bit-quota-warnings.patch")) (sha256 (base32 - "092absr4vrlqrkdf9nwh4ykj40ab6hhwrkdr6sjsccd54c8z5csl")))) + "05ssjpmy0fpv2ik6ibm1f47wr6794nf0q50r581vygrqvsd3s7r6")))) (build-system gnu-build-system) (inputs `(("util-linux" ,util-linux))) (native-inputs `(("pkg-config" ,pkg-config) diff --git a/gnu/packages/patches/e2fsprogs-32bit-quota-warnings.patch b/gnu/packages/patches/e2fsprogs-32bit-quota-warnings.patch new file mode 100644 index 0000000000..e7a96a2ac0 --- /dev/null +++ b/gnu/packages/patches/e2fsprogs-32bit-quota-warnings.patch @@ -0,0 +1,46 @@ +Fix a test failure on 32-bit platforms. + +Patch copied from upstream source repository: + +https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?id=9e31a5696c4b699bf000a07b86601c1fb91c0493 + +diff --git a/lib/support/mkquota.c b/lib/support/mkquota.c +index 00f3a40..931a839 100644 +--- a/lib/support/mkquota.c ++++ b/lib/support/mkquota.c +@@ -50,11 +50,13 @@ static void print_dquot(const char *desc, struct dquot *dq) + { + if (desc) + fprintf(stderr, "%s: ", desc); +- fprintf(stderr, "%u %ld:%ld:%ld %ld:%ld:%ld\n", +- dq->dq_id, dq->dq_dqb.dqb_curspace, +- dq->dq_dqb.dqb_bsoftlimit, dq->dq_dqb.dqb_bhardlimit, +- dq->dq_dqb.dqb_curinodes, +- dq->dq_dqb.dqb_isoftlimit, dq->dq_dqb.dqb_ihardlimit); ++ fprintf(stderr, "%u %lld:%lld:%lld %lld:%lld:%lld\n", ++ dq->dq_id, (long long) dq->dq_dqb.dqb_curspace, ++ (long long) dq->dq_dqb.dqb_bsoftlimit, ++ (long long) dq->dq_dqb.dqb_bhardlimit, ++ (long long) dq->dq_dqb.dqb_curinodes, ++ (long long) dq->dq_dqb.dqb_isoftlimit, ++ (long long) dq->dq_dqb.dqb_ihardlimit); + } + #else + static void print_dquot(const char *desc EXT2FS_ATTR((unused)), +@@ -524,11 +526,11 @@ static int scan_dquots_callback(struct dquot *dquot, void *cb_data) + dq->dq_dqb.dqb_curinodes != dquot->dq_dqb.dqb_curinodes) { + scan_data->usage_is_inconsistent = 1; + fprintf(stderr, "[QUOTA WARNING] Usage inconsistent for ID %u:" +- "actual (%ld, %ld) != expected (%ld, %ld)\n", +- dq->dq_id, dq->dq_dqb.dqb_curspace, +- dq->dq_dqb.dqb_curinodes, +- dquot->dq_dqb.dqb_curspace, +- dquot->dq_dqb.dqb_curinodes); ++ "actual (%lld, %lld) != expected (%lld, %lld)\n", ++ dq->dq_id, (long long) dq->dq_dqb.dqb_curspace, ++ (long long) dq->dq_dqb.dqb_curinodes, ++ (long long) dquot->dq_dqb.dqb_curspace, ++ (long long) dquot->dq_dqb.dqb_curinodes); + } + + if (scan_data->update_limits) { From 14f366e58d1c28ca54070d0d388428c4c759283e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 15 Aug 2017 01:27:02 +0200 Subject: [PATCH 0975/1227] gnu: youtube-dl: Update to 2017.08.13. * gnu/packages/video.scm (youtube-dl): Update to 2017.08.13. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index fdb7d48aec..610b258dfc 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.08.06") + (version "2017.08.13") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1vdfda2w1ckhqna8xcpphr5l0rp9zhs368lic4f7144rxvbydiwm")))) + "1parn0xda7mp1phcj19axldifgh6mcwia6wdi3m20kidc9m4wb11")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From 2d430f29231d0d817459d86e0fe15089372e9547 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Aug 2017 10:03:40 +0300 Subject: [PATCH 0976/1227] Revert "gnu: pspp: Update to 0.11.0." This FTBFS on x86_64 and i686. This reverts commit f4c808df5b99bbe6d7a307c69ad27da5b17703d1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 8e7b815d6c..bdee8e59c7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -65,7 +65,7 @@ (define-public pspp (package (name "pspp") - (version "0.11.0") + (version "0.10.2") (source (origin (method url-fetch) @@ -73,7 +73,7 @@ version ".tar.gz")) (sha256 (base32 - "1dmvg2dzfx57vxswdmk458qm2q12ihj2jnwm3qbmqywi473c2p5f")))) + "1afsq0a3iij64qacczvwhk81qg0q5rfqm055y5h9ls28d6paqz7p")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) From 3837108e403d385cd0b616fb601b9942c8bb213f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Aug 2017 10:30:33 +0300 Subject: [PATCH 0977/1227] gnu: bcftools: Fix building on aarch64. * gnu/packages/patches/bcftools-regidx-unsigned-char.patch: New file. * gnu/packages/bioinformatics.scm (bcftools)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/bioinformatics.scm | 1 + .../patches/bcftools-regidx-unsigned-char.patch | 16 ++++++++++++++++ 3 files changed, 18 insertions(+) create mode 100644 gnu/packages/patches/bcftools-regidx-unsigned-char.patch diff --git a/gnu/local.mk b/gnu/local.mk index b15a16b6bc..2ab6901d8a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -527,6 +527,7 @@ dist_patch_DATA = \ %D%/packages/patches/awesome-reproducible-png.patch \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-completion-directories.patch \ + %D%/packages/patches/bcftools-regidx-unsigned-char.patch \ %D%/packages/patches/binutils-ld-new-dtags.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/binutils-mips-bash-bug.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 9d64294e48..17cd214a33 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -311,6 +311,7 @@ BAM files.") (sha256 (base32 "0093hkkvxmbwfaa7905s6185jymynvg42kq6sxv7fili11l5mxwz")) + (patches (search-patches "bcftools-regidx-unsigned-char.patch")) (modules '((guix build utils))) (snippet ;; Delete bundled htslib. diff --git a/gnu/packages/patches/bcftools-regidx-unsigned-char.patch b/gnu/packages/patches/bcftools-regidx-unsigned-char.patch new file mode 100644 index 0000000000..af5bc160f5 --- /dev/null +++ b/gnu/packages/patches/bcftools-regidx-unsigned-char.patch @@ -0,0 +1,16 @@ +Description: Fix test-regidx argument parsing on archs with unsigned char + On architectures where char is unsigned "c >= 0" was always true. +Author: Adrian Bunk +Bug-Debian: https://bugs.debian.org/865060 + +--- a/test/test-regidx.c ++++ b/test/test-regidx.c +@@ -336,7 +336,7 @@ + {"seed",1,0,'s'}, + {0,0,0,0} + }; +- char c; ++ int c; + int seed = (int)time(NULL); + while ((c = getopt_long(argc, argv, "hvs:",loptions,NULL)) >= 0) + { From 06f31e50b11fd5f7809518a240e56f6ba6327227 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 15 Aug 2017 18:49:33 +1000 Subject: [PATCH 0978/1227] gnu: diamond: Update to 0.9.10. * gnu/packages/bioinformatics.scm (diamond): Update to 0.9.10. --- 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 17cd214a33..23bee96ebd 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -2115,7 +2115,7 @@ identify enrichments with functional annotations of the genome.") (define-public diamond (package (name "diamond") - (version "0.9.9") + (version "0.9.10") (source (origin (method url-fetch) (uri (string-append @@ -2124,7 +2124,7 @@ identify enrichments with functional annotations of the genome.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "04i03046g3l2vk9722z47r1p7j415g97vvz6d76ywmbawyiihcb1")))) + "13qqzwg54n5dqh8pm5n3v8x6gqbczzakphwwjix63qv60hcd5bqd")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no "check" target From 6550e5ad645797218f01e216f65a5a4ba13aa7a9 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 15 Aug 2017 13:27:11 -0400 Subject: [PATCH 0979/1227] gnu: signify: Update to 22. * gnu/packages/crypto.scm (signify): Update to 22. --- gnu/packages/crypto.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 62fe5fe081..0a05a10698 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -81,7 +81,7 @@ communication, encryption, decryption, signatures, etc.") (define-public signify (package (name "signify") - (version "21") + (version "22") (source (origin (method url-fetch) (uri (string-append "https://github.com/aperezdc/signify/" @@ -89,7 +89,7 @@ communication, encryption, decryption, signatures, etc.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0jd26kxwmmar3bylpx9x5dpqxzs17ky5dvwx8pdgcg95n4lyk223")))) + "0iv5bjaas70ymqchxasapin4c32c41kqzkfhc3kcjzd7rxy78msy")))) (build-system gnu-build-system) ;; TODO Build with libwaive (described in README.md), to implement something ;; like OpenBSD's pledge(). From dca82aefbcd3a64b40a5fd025e4ff092635afed2 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 15 Aug 2017 20:38:02 +0200 Subject: [PATCH 0980/1227] gnu: p11-kit: Update to 0.23.8. * gnu/packages/tls.scm (p11-kit): Update to 0.23.8. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 58ec9ff5ec..bf16c1794f 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -114,7 +114,7 @@ in intelligent transportation networks.") (define-public p11-kit (package (name "p11-kit") - (version "0.23.7") + (version "0.23.8") (source (origin (method url-fetch) @@ -122,7 +122,7 @@ in intelligent transportation networks.") "download/" version "/p11-kit-" version ".tar.gz")) (sha256 (base32 - "0hdy4h8byvcvd4av504xqfqyd1h6xy914j034mq3c6v4ya37r3lq")))) + "0gqk1d09yyin75lvlywpbf3kxlnrcwbq8ridgapvqqjbzvjk98ab")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From be69176bbde77bce1e902b64a3f3043362292306 Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 10 Aug 2017 23:59:02 +0000 Subject: [PATCH 0981/1227] gnu: fish-guix: Use new download URL. * gnu/packages/shells.scm (fish-guix)[source]: Adjust the download URL. Signed-off-by: Marius Bakke --- gnu/packages/shells.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 37307c807b..f1b408982c 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -148,7 +148,7 @@ highlighting.") (source (origin (method url-fetch) - (uri (string-append "https://dist.pragmatique.xyz/fish-guix/" + (uri (string-append "https://dist.infotropique.org/fish-guix/" name "-" version ".tar.xz")) (sha256 (base32 From 425d66f7a76f17e58b885395df81686abd80f1b9 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sun, 13 Aug 2017 13:17:02 +0300 Subject: [PATCH 0982/1227] gnu: Add emacs-highlight-symbol. * gnu/packages/emacs.scm (emacs-highlight-symbol): New variable. Signed-off-by: Marius Bakke --- gnu/packages/emacs.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 5a69990c67..1728b5b92d 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -2632,6 +2632,38 @@ features found in other packages it also brings many improvements as well as completely new features.") (license license:gpl3+))) +(define-public emacs-highlight-symbol + (package + (name "emacs-highlight-symbol") + (version "1.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/nschum/highlight-symbol.el/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1n7k1qns0fn0jsyc0hrjac5nzk21xw48yc30vyrhwvc51h0b9g90")))) + (build-system emacs-build-system) + (home-page "https://nschum.de/src/emacs/highlight-symbol") + (synopsis "Automatic and manual symbol highlighting for Emacs") + (description + "Use @code{highlight-symbol} to toggle highlighting of the symbol at +point throughout the current buffer. Use @code{highlight-symbol-mode} to keep +the symbol at point highlighted. + +The functions @code{highlight-symbol-next}, @code{highlight-symbol-prev}, +@code{highlight-symbol-next-in-defun} and +@code{highlight-symbol-prev-in-defun} allow for cycling through the locations +of any symbol at point. Use @code{highlight-symbol-nav-mode} to enable key +bindings @code{M-p} and @code{M-p} for navigation. When +@code{highlight-symbol-on-navigation-p} is set, highlighting is triggered +regardless of @code{highlight-symbol-idle-delay}. + +@code{highlight-symbol-query-replace} can be used to replace the symbol. ") + (license license:gpl2+))) + (define-public emacs-hl-todo (package (name "emacs-hl-todo") From 2434f5cedff505be1e79fdb35c42b229de26ae92 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 15 Aug 2017 20:50:00 +0200 Subject: [PATCH 0983/1227] gnu: Add dssi. * gnu/packages/music.scm (dssi): New variable. --- gnu/packages/music.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index dcb48fb200..6d0b3aeffd 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -3171,3 +3171,37 @@ MuseScore can also play back scores through the built-in sequencer and SoundFont sample library.") (home-page "https://musescore.org") (license license:gpl2))) + +(define-public dssi + (package + (name "dssi") + (version "1.1.1") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/dssi/dssi/" version + "/dssi-" version ".tar.gz")) + (sha256 + (base32 + "0kl1hzhb7cykzkrqcqgq1dk4xcgrcxv0jja251aq4z4l783jpj7j")))) + (build-system gnu-build-system) + (inputs + `(("alsa-lib" ,alsa-lib) + ("jack-2" ,jack-2) + ("ladspa" ,ladspa) + ("libsamplerate" ,libsamplerate) + ("libsndfile" ,libsndfile) + ("liblo" ,liblo))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Audio plugin API for soft synths and effects") + (description "DSSI is a plugin API for software instruments with user +interfaces, permitting them to be hosted in-process by audio applications. +It is intended to be simple, GUI-toolkit-agnostic, and slightly biased +towards familiarity with MIDI. The DSSI distribution package contains +a JACK/ALSA-sequencer reference host and some plugins as well as the +specification and header.") + (home-page "http://dssi.sourceforge.net/") + ;; The DSSI interface is LGPL2.1+, some tests and examples are GPL2+. + ;; The vast majority of examples are in the public domain. + (license (list license:lgpl2.1+ license:gpl2+)))) From 6230e155afd8c43c12ee3f03032aac34433db11a Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 5 Aug 2017 22:32:24 +0100 Subject: [PATCH 0984/1227] gnu: Fix memcached service startup. Memcached changes to the memcached user from root before writing the PID file. This means that it must be able to write the PID file as the memcached user. To make this work, create the /var/run/memcached directory when the service starts, make it owned by memcached, and change memcached to write the PID file to /var/run/memcached/pid. This wasn't picked up by the system test as the "service running" part was too permissive, and only failed on an error. Instead, test the response from calling start-service and check that the PID is a number. * gnu/services/databases.scm (memcached-activation): New variable. (memcached-shepherd-service): Change PID file location. (memcached-service-type): Extend the activation-service-type. * gnu/tests/databases.scm (run-memcached-test)[test]: Change the "service running" test to check the response from the shepherd. --- gnu/services/databases.scm | 17 +++++++++++++++-- gnu/tests/databases.scm | 10 ++++++---- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm index 3b64d0e075..de1f6b8411 100644 --- a/gnu/services/databases.scm +++ b/gnu/services/databases.scm @@ -216,6 +216,14 @@ and stores the database cluster in @var{data-directory}." (home-directory "/var/empty") (shell (file-append shadow "/sbin/nologin"))))) +(define memcached-activation + #~(begin + (use-modules (guix build utils)) + (let ((user (getpwnam "memcached"))) + (mkdir-p "/var/run/memcached") + (chown "/var/run/memcached" + (passwd:uid user) (passwd:gid user))))) + (define memcached-shepherd-service (match-lambda (($ memcached interfaces tcp-port udp-port @@ -233,11 +241,14 @@ and stores the database cluster in @var{data-directory}." "-p" #$(number->string tcp-port) "-U" #$(number->string udp-port) "--daemon" - "-P" "/var/run/memcached.pid" + ;; Memcached changes to the memcached user prior to + ;; writing the pid file, so write it to a directory + ;; that memcached owns. + "-P" "/var/run/memcached/pid" "-u" "memcached" ,#$@additional-options) #:log-file "/var/log/memcached" - #:pid-file "/var/run/memcached.pid")) + #:pid-file "/var/run/memcached/pid")) (stop #~(make-kill-destructor)))))))) (define memcached-service-type @@ -245,6 +256,8 @@ and stores the database cluster in @var{data-directory}." (extensions (list (service-extension shepherd-root-service-type memcached-shepherd-service) + (service-extension activation-service-type + (const memcached-activation)) (service-extension account-service-type (const %memcached-accounts)))) (default-value (memcached-configuration)))) diff --git a/gnu/tests/databases.scm b/gnu/tests/databases.scm index 310210c368..9d9a753747 100644 --- a/gnu/tests/databases.scm +++ b/gnu/tests/databases.scm @@ -63,13 +63,15 @@ (test-begin "memcached") ;; Wait for memcached to be up and running. - (test-eq "service running" - 'running! + (test-assert "service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'memcached) - 'running!) + (match (start-service 'memcached) + (#f #f) + (('service response-parts ...) + (match (assq-ref response-parts 'running) + ((pid) (number? pid)))))) marionette)) (let* ((ai (car (getaddrinfo "localhost" From 8343d373d5038d230652a51190f6a7c986674df6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 14 Aug 2017 23:31:37 -0400 Subject: [PATCH 0985/1227] gnu: cgit: Don't build cgit's special 'git:src' input. This special version of Git is only used within the build process of cgit. We don't need to build it otherwise, so the package is removed with this commit. * gnu/packages/version-control.scm (cgit)[inputs]: Replace the git@2.10 package with an origin reference of the source code. (git@2.10): Remove variable. --- gnu/packages/version-control.scm | 34 ++++++++++++++------------------ 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 7c1f02d5ad..869672ca45 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2015, 2016, 2017 Efraim Flashner ;;; Copyright © 2015 Kyle Meyer ;;; Copyright © 2015, 2017 Ricardo Wurmus -;;; Copyright © 2016 Leo Famulari +;;; Copyright © 2016, 2017 Leo Famulari ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; Copyright © 2017 Vasile Dumitrascu @@ -121,6 +121,8 @@ as well as the classic centralized workflow.") (define-public git (package (name "git") + ;; XXX When updating Git, check if the special 'git:src' input to cgit needs + ;; to be updated as well. (version "2.14.1") (source (origin (method url-fetch) @@ -349,23 +351,6 @@ everything from small to very large projects with speed and efficiency.") (license license:gpl2) (home-page "https://git-scm.com/"))) -;; Some dependent packages directly access internal interfaces which -;; have changed in 2.12. TODO: Remove this for cgit > 1.1. -(define-public git@2.10 - (package - (inherit git) - (version "2.10.4") - (source (origin - (method url-fetch) - (uri (string-append "mirror://kernel.org/software/scm/git/git-" - version ".tar.xz")) - (sha256 - (base32 - "1pni4mgih5w42813dxljl61s7xmcpdnar34d9m4548hzpljjyd4l")))) - (arguments - `(#:tests? #f - ,@(package-arguments git))))) - (define-public libgit2 (package (name "libgit2") @@ -502,6 +487,8 @@ collaboration using typical untrusted file hosts or services.") (define-public cgit (package (name "cgit") + ;; XXX When updating cgit, try removing the special 'git:src' input and + ;; using the source of the git package. (version "1.1") (source (origin (method url-fetch) @@ -546,7 +533,16 @@ collaboration using typical untrusted file hosts or services.") ;; For building manpage. `(("asciidoc" ,asciidoc))) (inputs - `(("git:src" ,(package-source git@2.10)) + `(;; Cgit directly accesses some internal Git interfaces that changed in + ;; Git 2.12. Try removing this special input and using the source of the + ;; Git package for cgit > 1.1. + ("git:src" + ,(origin + (method url-fetch) + (uri "mirror://kernel.org/software/scm/git/git-2.10.4.tar.xz") + (sha256 + (base32 + "1pni4mgih5w42813dxljl61s7xmcpdnar34d9m4548hzpljjyd4l")))) ("openssl" ,openssl) ("zlib" ,zlib))) (home-page "https://git.zx2c4.com/cgit/") From 953a12fa9b024e5745ad1ec530217a0ba55b9d78 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 16 Aug 2017 08:52:35 +0300 Subject: [PATCH 0986/1227] gnu: hdf4: Fix building on aarch64. * gnu/packages/maths.scm (hdf4)[arguments]: Add a phase to improve detection and support for aarch64-linux. --- gnu/packages/maths.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 1bb9f10ecd..3f1dc845fe 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -585,6 +585,14 @@ computations.") #:configure-flags '("--enable-shared") #:phases (modify-phases %standard-phases + ;; This is inspired by two of Debian's patches. + (add-before 'configure 'add-more-aarch64-support + (lambda _ + (substitute* '("mfhdf/ncgen/ncgen.l" + "mfhdf/ncgen/ncgenyy.c" + "mfhdf/libsrc/netcdf.h.in") + (("AIX5L64") "__aarch64__")) + #t)) (add-before 'configure 'patchbuild (lambda _ (substitute* @@ -596,7 +604,8 @@ computations.") -R\\$\\(abs_top_builddir\\)/mfhdf/xdr/\\.libs") "") (("@HDF_BUILD_SHARED_TRUE@AM_LDFLAGS = \ -R\\$\\(abs_top_builddir\\)/mfhdf/libsrc/\\.libs \ --R\\$\\(abs_top_builddir\\)/hdf/src/\\.libs \\$\\(XDR_ADD\\)") ""))))))) +-R\\$\\(abs_top_builddir\\)/hdf/src/\\.libs \\$\\(XDR_ADD\\)") "")) + #t))))) (home-page "https://www.hdfgroup.org/products/hdf4/") (synopsis "Library and multi-object file format for storing and managing data") From d534f3a4d3e444ad38e3f7e4f26e69abbdbea337 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 16 Aug 2017 10:46:48 +0300 Subject: [PATCH 0987/1227] gnu: r-mzr: Fix building on aarch64 and armhf. * gnu/packages/bioinformatics.scm (r-mzr)[inputs]: Add boost. --- gnu/packages/bioinformatics.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 23bee96ebd..a41d367f0f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8812,7 +8812,8 @@ proteomics packages.") (properties `((upstream-name . "mzR"))) (build-system r-build-system) (inputs - `(("netcdf" ,netcdf))) + `(("boost" ,boost) + ("netcdf" ,netcdf))) (propagated-inputs `(("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) From 2f7966c8e28c352c0fffc5ec3fda394a67d7d2d1 Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 8 Aug 2017 12:37:27 +0000 Subject: [PATCH 0988/1227] gnu: font-google-noto: Use font-build-system. * gnu/packages/fonts.scm (font-google-noto)[build-system]: Use font-build-system. [source]: Use url-fetch/zipbomb. [arguments]: Remove it. [native-inputs]: Remove it. Signed-off-by: Ricardo Wurmus --- gnu/packages/fonts.scm | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index b01d39c7e2..a83be8522c 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -622,35 +622,14 @@ utilities to ease adding new glyphs to the font.") (name "font-google-noto") (version "20170403") (source (origin - (method url-fetch) + (method url-fetch/zipbomb) (uri (string-append "https://noto-website.storage.googleapis.com/" "pkgs/Noto-hinted.zip")) + (file-name (string-append name "-" version ".zip")) (sha256 (base32 "1p92a6dvs7wqwjfpp1ahr9z1wz35am0l8r78521383spd77bmrfm")))) - (build-system trivial-build-system) - (arguments - `(#:modules ((guix build utils)) - #:builder (begin - (use-modules (guix build utils) - (srfi srfi-26)) - - (let ((PATH (string-append (assoc-ref %build-inputs - "unzip") - "/bin")) - (font-dir (string-append %output - "/share/fonts/truetype"))) - (setenv "PATH" PATH) - (system* "unzip" (assoc-ref %build-inputs "source")) - - (mkdir-p font-dir) - (for-each (lambda (ttf) - (install-file ttf font-dir)) - (find-files "." "\\.ttf$")) - (for-each (lambda (otf) - (install-file otf font-dir)) - (find-files "." "\\.otf$")))))) - (native-inputs `(("unzip" ,unzip))) + (build-system font-build-system) (home-page "https://www.google.com/get/noto/") (synopsis "Fonts to cover all languages") (description "Google Noto Fonts is a family of fonts designed to support From c12562e1e853656efde136014b8727adc7cdc263 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 6 Aug 2017 23:35:06 +0800 Subject: [PATCH 0989/1227] gnu: cpphs: Update to 1.20.8. * gnu/packages/haskell.scm (cpphs): Update to 1.20.8. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a672092342..a42d17d46c 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2016, 2017 David Craven ;;; Copyright © 2017 Danny Milosavljevic ;;; Copyright © 2017 Peter Mikkelsen +;;; Copyright © 2017 Alex Vong ;;; ;;; This file is part of GNU Guix. ;;; @@ -1324,7 +1325,7 @@ various Haskell streaming data libraries, such as @code{conduit} and (define-public cpphs (package (name "cpphs") - (version "1.19.3") + (version "1.20.8") (source (origin (method url-fetch) @@ -1333,7 +1334,7 @@ various Haskell streaming data libraries, such as @code{conduit} and name "-" version ".tar.gz")) (sha256 (base32 - "1njpmxgpah5pcqppcl1cxb5xicf6xlqrd162qm12khp9hainlm72")))) + "1bh524asqhk9v1s0wvipl0hgn7l63iy3js867yv0z3h5v2kn8vg5")))) (build-system haskell-build-system) (inputs `(("ghc-polyparse" ,ghc-polyparse) From f99a57dc28a97098a41978c1e85cd157c1d944a9 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 6 Aug 2017 23:37:15 +0800 Subject: [PATCH 0990/1227] gnu: Add ghc-strict. * gnu/packages/haskell.scm (ghc-strict): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a42d17d46c..e978845567 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -1808,6 +1808,26 @@ capabilities that are optimized for performance critical use, both in terms of large data quantities and high speed.") (license license:bsd-3))) +(define-public ghc-strict + (package + (name "ghc-strict") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/strict/strict-" + version ".tar.gz")) + (sha256 + (base32 "08cjajqz9h47fkq98mlf3rc8n5ghbmnmgn8pfsl3bdldjdkmmlrc")))) + (build-system haskell-build-system) + (home-page "https://hackage.haskell.org/package/strict") + (synopsis "Strict data types and String IO") + (description + "This package provides strict versions of some standard Haskell data +types, such as pairs, @code{Maybe} and @code{Either}. It also contains strict +IO operations.") + (license license:bsd-3))) + (define-public ghc-hashable (package (name "ghc-hashable") From 867ed9776c160d4d1f1d05b005c0222584a92068 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 6 Aug 2017 23:39:55 +0800 Subject: [PATCH 0991/1227] gnu: Add ghc-stmonadtrans. * gnu/packages/haskell.scm (ghc-stmonadtrans): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index e978845567..59d19dd149 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7077,6 +7077,27 @@ other transformers.") (base32 "0a364zfcm17mhpy0c4ms2j88sys4yvgd6071qsgk93la2wjm8mkr")))))) +(define-public ghc-stmonadtrans + (package + (name "ghc-stmonadtrans") + (version "0.4.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/STMonadTrans" + "/STMonadTrans-" version ".tar.gz")) + (sha256 + (base32 "1nr26fnmi5fdjc6d00w13kjhmfyvb5b837d0006w4dj0yxndaksp")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl))) + (home-page "https://hackage.haskell.org/package/STMonadTrans") + (synopsis "Monad transformer version of the ST monad") + (description + "This package provides a monad transformer version of the @code{ST} monad +for strict state threads.") + (license license:bsd-3))) + (define-public ghc-findbin (package (name "ghc-findbin") From be04f8020a4208a82c7780ac2013f64b88dc8aee Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 6 Aug 2017 23:41:38 +0800 Subject: [PATCH 0992/1227] gnu: Add ghc-edit-distance. * gnu/packages/haskell.scm (ghc-edit-distance): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 59d19dd149..cdd47b37f1 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6099,6 +6099,31 @@ supports for high level forms of ASN1 (BER, and DER).") when ASN1 pattern matching is not convenient.") (license license:bsd-3))) +(define-public ghc-edit-distance + (package + (name "ghc-edit-distance") + (version "0.2.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/edit-distance" + "/edit-distance-" version ".tar.gz")) + (sha256 + (base32 "0jkca97zyv23yyilp3jydcrzxqhyk27swhzh82llvban5zp8b21y")))) + (build-system haskell-build-system) + (inputs + `(("ghc-random" ,ghc-random) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://github.com/phadej/edit-distance") + (synopsis "Levenshtein and restricted Damerau-Levenshtein edit distances") + (description + "This package provides optimized functions to determine the edit +distances for fuzzy matching, including Levenshtein and restricted +Damerau-Levenshtein algorithms.") + (license license:bsd-3))) + (define-public ghc-tasty-kat (package (name "ghc-tasty-kat") From 3f8b8e731c9c16190fa02ef15726795896923bf8 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 6 Aug 2017 23:42:32 +0800 Subject: [PATCH 0993/1227] gnu: Add ghc-boxes. * gnu/packages/haskell.scm (ghc-boxes): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index cdd47b37f1..a1a37ce2e4 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5102,6 +5102,28 @@ prettified JSON to stdout. It also offers a complementary \"compact\"-mode, essentially the opposite of pretty-printing.") (license license:bsd-3))) +(define-public ghc-boxes + (package + (name "ghc-boxes") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/boxes/boxes-" + version ".tar.gz")) + (sha256 + (base32 "1n7xiplzd3s1a39nizwjcgsh3wi2348mp21c3fk19v98ialfjgjf")))) + (build-system haskell-build-system) + (inputs + `(("ghc-split" ,ghc-split) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://hackage.haskell.org/package/boxes") + (synopsis "2D text pretty-printing library") + (description + "Boxes is a pretty-printing library for laying out text in two dimensions, +using a simple box model.") + (license license:bsd-3))) + (define-public ghc-wai (package (name "ghc-wai") From 96f23b62e019919df73d3545806b1b85ee7540b5 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sun, 6 Aug 2017 23:43:53 +0800 Subject: [PATCH 0994/1227] gnu: Add ghc-equivalence. * gnu/packages/haskell.scm (ghc-equivalence): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a1a37ce2e4..94445cb80a 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -4715,6 +4715,35 @@ definition of @code{Monad}.") for Haskell.") (license license:bsd-3))) +(define-public ghc-equivalence + (package + (name "ghc-equivalence") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/equivalence" + "/equivalence-" version ".tar.gz")) + (sha256 + (base32 "0a85bdyyvjqs5z4kfhhf758210k9gi9dv42ik66a3jl0z7aix8kx")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-stmonadtrans" ,ghc-stmonadtrans) + ("ghc-transformers-compat" ,ghc-transformers-compat) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://github.com/pa-ba/equivalence") + (synopsis "Maintaining an equivalence relation implemented as union-find") + (description + "This is an implementation of Tarjan's Union-Find algorithm (Robert E.@: +Tarjan. \"Efficiency of a Good But Not Linear Set Union Algorithm\",JACM +22(2), 1975) in order to maintain an equivalence relation. This +implementation is a port of the @code{union-find} package using the @code{ST} +monad transformer (instead of the IO monad).") + (license license:bsd-3))) + (define-public ghc-fast-logger (package (name "ghc-fast-logger") From adcb30642cc8a7c6f845c22a3c066ae68fe2c64a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Aug 2017 10:16:00 +0300 Subject: [PATCH 0995/1227] gnu: pspp: Update to 0.11.0. This fixes CVE-2017-10791, CVE-2017-10792. * gnu/packages/statistics.scm (pspp): Update to 0.11.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index bdee8e59c7..8e7b815d6c 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -65,7 +65,7 @@ (define-public pspp (package (name "pspp") - (version "0.10.2") + (version "0.11.0") (source (origin (method url-fetch) @@ -73,7 +73,7 @@ version ".tar.gz")) (sha256 (base32 - "1afsq0a3iij64qacczvwhk81qg0q5rfqm055y5h9ls28d6paqz7p")))) + "1dmvg2dzfx57vxswdmk458qm2q12ihj2jnwm3qbmqywi473c2p5f")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) From ca48a3459413edd3a337b554ac0499c9f12364e6 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:02:41 +0800 Subject: [PATCH 0996/1227] gnu: Add ghc-data-hash. * gnu/packages/haskell.scm (ghc-data-hash): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 94445cb80a..00c5994016 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -1858,6 +1858,29 @@ data structures. The package provides instances for basic types and a way to combine hash values.") (license license:bsd-3))) +(define-public ghc-data-hash + (package + (name "ghc-data-hash") + (version "0.2.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/data-hash" + "/data-hash-" version ".tar.gz")) + (sha256 + (base32 "1ghbqvc48gf9p8wiy71hdpaj7by3b9cw6wgwi3qqz8iw054xs5wi")))) + (build-system haskell-build-system) + (inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://hackage.haskell.org/package/data-hash") + (synopsis "Combinators for building fast hashing functions") + (description + "This package provides combinators for building fast hashing functions. +It includes hashing functions for all basic Haskell98 types.") + (license license:bsd-3))) + (define-public ghc-hunit (package (name "ghc-hunit") From a623fd7fedcc4ea4e3b86f7fdf04872b9c5042de Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:05:36 +0800 Subject: [PATCH 0997/1227] gnu: Add ghc-murmur-hash. * gnu/packages/haskell.scm (ghc-murmur-hash): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 00c5994016..971981daae 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -1881,6 +1881,28 @@ combine hash values.") It includes hashing functions for all basic Haskell98 types.") (license license:bsd-3))) +(define-public ghc-murmur-hash + (package + (name "ghc-murmur-hash") + (version "0.1.0.9") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/murmur-hash" + "/murmur-hash-" version ".tar.gz")) + (sha256 + (base32 "1bb58kfnzvx3mpc0rc0dhqc1fk36nm8prd6gvf20gk6lxaadpfc9")))) + (build-system haskell-build-system) + (home-page "https://github.com/nominolo/murmur-hash") + (synopsis "MurmurHash2 implementation for Haskell") + (description + "This package provides an implementation of MurmurHash2, a good, fast, +general-purpose, non-cryptographic hashing function. See +@url{https://sites.google.com/site/murmurhash/} for details. This +implementation is pure Haskell, so it might be a bit slower than a C FFI +binding.") + (license license:bsd-3))) + (define-public ghc-hunit (package (name "ghc-hunit") From 212ae095414d6db2c44593a8da080b32259f30bc Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:09:03 +0800 Subject: [PATCH 0998/1227] gnu: Add ghc-edisonapi. * gnu/packages/haskell.scm (ghc-edisonapi): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 971981daae..fd8f78932b 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -3872,6 +3872,31 @@ different keys; hence the name. Also provided is a @code{locker} type, representing a store for a single element.") (license license:bsd-3))) +(define-public ghc-edisonapi + (package + (name "ghc-edisonapi") + (version "1.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/EdisonAPI" + "/EdisonAPI-" version ".tar.gz")) + (sha256 + (base32 "0vmmlsj8ggbpwx6fkf5fvb6jp0zpx6iba6b28m80lllr2p8bi8wm")))) + (build-system haskell-build-system) + (inputs `(("ghc-mtl" ,ghc-mtl))) + (home-page "http://rwd.rdockins.name/edison/home/") + (synopsis "Library of efficient, purely-functional data structures (API)") + (description + "Edison is a library of purely functional data structures written by +Chris Okasaki. It is named after Thomas Alva Edison and for the mnemonic +value EDiSon (Efficient Data Structures). Edison provides several families of +abstractions, each with multiple implementations. The main abstractions +provided by Edison are: Sequences such as stacks, queues, and dequeues; +Collections such as sets, bags and heaps; and Associative Collections such as +finite maps and priority queues where the priority and element are distinct.") + (license license:expat))) + (define-public ghc-mmorph (package (name "ghc-mmorph") From 1eced2a7a8a242b1aa0c8343ff6fcd43d2f457cb Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:10:39 +0800 Subject: [PATCH 0999/1227] gnu: Add ghc-edisoncore. * gnu/packages/haskell.scm (ghc-edisoncore): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index fd8f78932b..552c57ddc5 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -3897,6 +3897,30 @@ Collections such as sets, bags and heaps; and Associative Collections such as finite maps and priority queues where the priority and element are distinct.") (license license:expat))) +(define-public ghc-edisoncore + (package + (name "ghc-edisoncore") + (version "1.3.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/EdisonCore" + "/EdisonCore-" version ".tar.gz")) + (sha256 + (base32 "06shxmcqxcahcn6zgl64vlqix4fnq53d97drcgsh94qp7gp201ry")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-edisonapi" ,ghc-edisonapi))) + (home-page "http://rwd.rdockins.name/edison/home/") + (synopsis "Library of efficent, purely-functional data structures") + (description + "This package provides the core Edison data structure implementations, +including multiple sequence, set, bag, and finite map concrete implementations +with various performance characteristics.") + (license license:expat))) + (define-public ghc-mmorph (package (name "ghc-mmorph") From 005a08e3dc41d28ecf5a11a8ca479044b82c4a6a Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:13:42 +0800 Subject: [PATCH 1000/1227] gnu: Add ghc-fail. * gnu/packages/haskell.scm (ghc-fail): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 552c57ddc5..70853851c8 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -3970,6 +3970,30 @@ a subset of @code{MonadBase} into which generic control operations such as @code{catch} can be lifted from @code{IO} or any other base monad.") (license license:bsd-3))) +(define-public ghc-fail + (package + (name "ghc-fail") + (version "4.9.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/fail/fail-" + version ".tar.gz")) + (sha256 + (base32 "18nlj6xvnggy61gwbyrpmvbdkq928wv0wx2zcsljb52kbhddnp3d")))) + (build-system haskell-build-system) + (home-page "https://prime.haskell.org/wiki/Libraries/Proposals/MonadFail") + (synopsis "Forward-compatible MonadFail class") + (description + "This package contains the @code{Control.Monad.Fail} module providing the +@uref{https://prime.haskell.org/wiki/Libraries/Proposals/MonadFail, MonadFail} +class that became available in +@uref{https://hackage.haskell.org/package/base-4.9.0.0, base-4.9.0.0} for +older @code{base} package versions. This package turns into an empty package +when used with GHC versions which already provide the +@code{Control.Monad.Fail} module.") + (license license:bsd-3))) + (define-public ghc-byteorder (package (name "ghc-byteorder") From 298af2a8da1b12ee206d8e81f68db6f3351a41d3 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:15:12 +0800 Subject: [PATCH 1001/1227] gnu: Add ghc-monadplus. * gnu/packages/haskell.scm (ghc-monadplus): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 70853851c8..7ed503ab92 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -3994,6 +3994,26 @@ when used with GHC versions which already provide the @code{Control.Monad.Fail} module.") (license license:bsd-3))) +(define-public ghc-monadplus + (package + (name "ghc-monadplus") + (version "1.4.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/monadplus" + "/monadplus-" version ".tar.gz")) + (sha256 + (base32 "15b5320wdpmdp5slpphnc1x4rhjch3igw245dp2jxbqyvchdavin")))) + (build-system haskell-build-system) + (home-page "https://hackage.haskell.org/package/monadplus") + (synopsis "Filtering and folding over arbitrary MonadPlus instances") + (description + "This package generalizes many common stream operations such as +@code{filter}, @code{catMaybes} etc, enabling filtering and folding over +arbitrary @code{MonadPlus} instances.") + (license license:bsd-3))) + (define-public ghc-byteorder (package (name "ghc-byteorder") From e0ca14c7a8557e3b96ad70fa43b8777ce4835ac5 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:20:37 +0800 Subject: [PATCH 1002/1227] gnu: Add ghc-geniplate-mirror. * gnu/packages/haskell.scm (ghc-geniplate-mirror): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 7ed503ab92..14cc228d5f 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5775,6 +5775,28 @@ and @code{Eq} instances. These instances used to live in the haskell-src-meta package, and that's where the version number started.") (license license:bsd-3))) +(define-public ghc-geniplate-mirror + (package + (name "ghc-geniplate-mirror") + (version "0.7.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package" + "/geniplate-mirror" + "/geniplate-mirror-" version ".tar.gz")) + (sha256 + (base32 "17vjps2118s5z3k39ij00lkmkxv3mqf8h59wv6qdamlgmhyr36si")))) + (build-system haskell-build-system) + (inputs `(("ghc-mtl" ,ghc-mtl))) + (home-page "https://github.com/danr/geniplate") + (synopsis "Use Template Haskell to generate Uniplate-like functions") + (description + "Use Template Haskell to generate Uniplate-like functions. This is a +maintained mirror of the @uref{https://hackage.haskell.org/package/geniplate, +geniplate} package, written by Lennart Augustsson.") + (license license:bsd-3))) + (define-public ghc-haskell-src-meta (package (name "ghc-haskell-src-meta") From af4db693dbb2413b910212ff6104f6086d8389fe Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 7 Aug 2017 15:22:00 +0800 Subject: [PATCH 1003/1227] gnu: Add ghc-gitrev. * gnu/packages/haskell.scm (ghc-gitrev): New variable. Signed-off-by: Ricardo Wurmus --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 14cc228d5f..4f9e90e552 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5797,6 +5797,28 @@ maintained mirror of the @uref{https://hackage.haskell.org/package/geniplate, geniplate} package, written by Lennart Augustsson.") (license license:bsd-3))) +(define-public ghc-gitrev + (package + (name "ghc-gitrev") + (version "1.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/gitrev/gitrev-" + version ".tar.gz")) + (sha256 + (base32 "0cl3lfm6k1h8fxp2vxa6ihfp4v8igkz9h35iwyq2frzm4kdn96d8")))) + (build-system haskell-build-system) + (inputs `(("ghc-base-compat" ,ghc-base-compat))) + (home-page "https://github.com/acfoltzer/gitrev") + (synopsis "Compile git revision info into Haskell projects") + (description + "This package provides some handy Template Haskell splices for including +the current git hash and branch in the code of your project. This is useful +for including in panic messages, @command{--version} output, or diagnostic +info for more informative bug reports.") + (license license:bsd-3))) + (define-public ghc-haskell-src-meta (package (name "ghc-haskell-src-meta") From e664200c0c1bed8ae8412bcb227466902b8075b0 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sun, 6 Aug 2017 19:58:55 -0400 Subject: [PATCH 1004/1227] gnu: Add ltris. * gnu/packages/games.scm (ltris): New variable. --- gnu/packages/games.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 436a885d6e..e0a212e15f 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -433,6 +433,47 @@ scriptable with Guile.") Chess). It is similar to standard chess but this variant is far more complicated.") (license license:gpl3+))) +(define-public ltris + (package + (name "ltris") + (version "1.0.19") + (source + (origin + (method url-fetch) + (uri (string-append "http://prdownloads.sourceforge.net/lgames/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1895wv1fqklrj4apkz47rnkcfhfav7zjknskw6p0886j35vrwslg")))) + (build-system gnu-build-system) + (arguments + '(;; The code in LTris uses traditional GNU semantics for inline functions + #:configure-flags '("CFLAGS=-fgnu89-inline") + #:phases + (modify-phases %standard-phases + (add-after 'set-paths 'set-sdl-paths + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CPATH" + (string-append (assoc-ref inputs "sdl-union") + "/include/SDL")) + #t))))) + (inputs + `(("sdl-union" ,(sdl-union (list sdl sdl-mixer))))) + (home-page "http://lgames.sourceforge.net/LTris/") + (synopsis "Tetris clone based on the SDL library") + (description + "LTris is a tetris clone: differently shaped blocks are falling down the +rectangular playing field and can be moved sideways or rotated by 90 degree +units with the aim of building lines without gaps which then disappear (causing +any block above the deleted line to fall down). LTris has three game modes: In +Classic you play until the stack of blocks reaches the top of the playing field +and no new blocks can enter. In Figures the playing field is reset to a new +figure each level and later on tiles and lines suddenly appear. In Multiplayer +up to three players (either human or CPU) compete with each other sending +removed lines to all opponents. There is also a Demo mode in which you can +watch your CPU playing while enjoying a cup of tea!") + (license license:gpl2+))) + (define-public prboom-plus (package (name "prboom-plus") From ab1bd285db9c106076e1c37b63460e001a3cf579 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 16 Aug 2017 20:47:39 +0300 Subject: [PATCH 1005/1227] gnu: connman: Update to 1.35. * gnu/packages/connman.scm (connman): Update to 1.35. --- gnu/packages/connman.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/connman.scm b/gnu/packages/connman.scm index 8f567fa61b..a2a5556fb8 100644 --- a/gnu/packages/connman.scm +++ b/gnu/packages/connman.scm @@ -42,7 +42,7 @@ (define-public connman (package (name "connman") - (version "1.34") + (version "1.35") (source (origin (method url-fetch) @@ -50,7 +50,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "07n71wcy1c4cc01ca4dl9k1jpdqr5nsyr33dqf7k87wwfa681859")))) + "1apj5j25kj7v1bsfv3nh54aiq873nfrsjfbj85p5qm3ihfwxxmv6")))) (build-system gnu-build-system) (arguments `(#:configure-flags From d0b13d7b9b34e79a6ab7c5b5d06455488c822203 Mon Sep 17 00:00:00 2001 From: ng0 Date: Fri, 3 Mar 2017 13:25:53 +0000 Subject: [PATCH 1006/1227] gnu: fossil: Update to 2.2. * gnu/packages/version-control.scm (fossil): Update to 2.2. [source]: Add uri for older versions. [arguments]: Enable previously disabled test. --- gnu/packages/version-control.scm | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 869672ca45..36a6b7cd18 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -1337,16 +1337,21 @@ repository\" with git-annex.") (define-public fossil (package (name "fossil") - (version "1.35") + (version "2.2") (source (origin (method url-fetch) - (uri (string-append - "https://www.fossil-scm.org/index.html/uv/download/" - "fossil-src-" version ".tar.gz")) + ;; Older downloads are moved to another URL. + (uri (list + (string-append + "https://www.fossil-scm.org/index.html/uv/download/" + "fossil-src-" version ".tar.gz") + (string-append + "https://www.fossil-scm.org/index.html/uv/" + "fossil-src-" version ".tar.gz"))) (sha256 (base32 - "07ds6rhq69bhydpm9a01mgdhxf88p9b6y5hdnhn8gjc7ba92zyf1")))) + "0wfgacfg29dkl0c3l1rp5ji0kraa64gcbg5lh8p4m7mqdqcq53wv")))) (build-system gnu-build-system) (native-inputs `(("tcl" ,tcl) ;for configuration only @@ -1375,9 +1380,6 @@ repository\" with git-annex.") (lambda _ (setenv "USER" "guix") (setenv "TZ" "UTC") - ;; Fixing the th1 test would require many backports, so - ;; just disable for now. - (delete-file "test/th1.test") #t))))) (home-page "https://fossil-scm.org") (synopsis "Software configuration management system") From f2079849855fa67ff087f6f48245c35c131b92cf Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Sun, 30 Jul 2017 10:56:38 +0200 Subject: [PATCH 1007/1227] gnu: Add gpick. * gnu/packages/image.scm (gpick): New variable. --- gnu/packages/image.scm | 47 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 95a4c91b10..f1225b33dc 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2016, 2017 Kei Kebreau ;;; Copyright © 2017 ng0 ;;; Copyright © 2017 Hartmut Goebel +;;; Copyright © 2017 Julien Lepiller ;;; ;;; This file is part of GNU Guix. ;;; @@ -48,6 +49,8 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages graphics) + #:use-module (gnu packages gtk) + #:use-module (gnu packages lua) #:use-module (gnu packages maths) #:use-module (gnu packages mcrypt) #:use-module (gnu packages perl) @@ -61,6 +64,7 @@ #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system python) #:use-module (srfi srfi-1)) (define-public libpng @@ -1178,3 +1182,46 @@ medical image data, e.g. magnetic resonance image (MRI) and functional MRI (fMRI) brain images.") (home-page "http://niftilib.sourceforge.net") (license license:public-domain))) + +(define-public gpick + (package + (name "gpick") + (version "0.2.5") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/thezbyg/gpick/archive/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0mxvxk15xhk2i5vfavjhnkk4j3bnii0gpf8di14rlbpq070hd5rs")))) + (build-system python-build-system) + (native-inputs + `(("boost" ,boost) + ("gettext" ,gnu-gettext) + ("pkg-config" ,pkg-config) + ("scons" ,scons))) + (inputs + `(("expat" ,expat) + ("gtk2" ,gtk+-2) + ("lua" ,lua-5.2))) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-lua-reference + (lambda _ + (substitute* "SConscript" + (("lua5.2") "lua-5.2")) + #t)) + (replace 'build + (lambda _ + (zero? (system* "scons")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((dest (assoc-ref outputs "out"))) + (zero? (system* "scons" "install" + (string-append "DESTDIR=" dest))))))))) + (home-page "http://www.gpick.org/") + (synopsis "Color picker") + (description "Gpick is an advanced color picker and palette editing tool.") + (license license:bsd-3))) From e2a4c130230c57405160db9323f06d26a3541fb3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Aug 2017 00:39:29 +0200 Subject: [PATCH 1008/1227] gnu: cbatticon: Update to 1.6.6. * gnu/packages/admin.scm (cbatticon): Update to 1.6.6. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 00e05c814e..8607220fda 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1793,14 +1793,14 @@ highly portable. Great for heterogeneous networks.") (define-public cbatticon (package (name "cbatticon") - (version "1.6.5") + (version "1.6.6") (source (origin (method url-fetch) (uri (string-append "https://github.com/valr/" name "/archive/" version ".tar.gz")) (sha256 (base32 - "0xzz1faqgm57bwlkw6sjdfbckf5hck81879zbfk18p7xn9vhvixv")) + "1rxlrwd817f2zl4fsc5ha43wjzfidq3yyagq4lgyi150qg36svv3")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (arguments From f886e7cab1c460376f94c785eaacd9d6855d7ea8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Aug 2017 01:05:04 +0200 Subject: [PATCH 1009/1227] gnu: limnoria: Update to 2017.08.03. * gnu/packages/irc.scm (limnoria): Update to 2017.08.03. --- gnu/packages/irc.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 1d6ac82e5f..bff8efe54b 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -301,14 +301,14 @@ using a mouse. It is customizable and extensible with plugins and scripts.") (define-public limnoria (package (name "limnoria") - (version "2017.03.30") + (version "2017.08.03") (source (origin (method url-fetch) (uri (pypi-uri "limnoria" version)) (sha256 (base32 - "1q0y6iglg1cbhimgjz3afws51as3shy6rd61dck7jfm25y8pi6g8")))) + "1513a01ckzdn5qjjs2jrp3lyryx92h3j5mzc3si0vd7ayqmxhrjz")))) (build-system python-build-system) (inputs `(("python-pytz" ,python-pytz) From f37995fa206d81bba6cd1344ae0d03fe4115870c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Aug 2017 01:25:01 +0200 Subject: [PATCH 1010/1227] gnu: python-cryptography: Update to 2.0.3. * gnu/packages/python.scm (python-cryptography): Update to 2.0.3. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 13e1ce5bcb..d5d4b18ed3 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7708,14 +7708,14 @@ responses, rather than doing any computation.") (define-public python-cryptography (package (name "python-cryptography") - (version "2.0.2") + (version "2.0.3") (source (origin (method url-fetch) (uri (pypi-uri "cryptography" version)) (sha256 (base32 - "1aq6ilnf2zdqshwqai4w8gmb5y6p7ip34qrjp1yb7sz77rkb501p")))) + "0fnck37zyvbzmccbp7w3jy27jgmij1992j5wyy3gxhw6a11b4jyh")))) (build-system python-build-system) (inputs `(("openssl" ,openssl))) From f73f1f0769c56b15fb76d1deb52f6de1d599250d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 16 Aug 2017 01:32:42 +0200 Subject: [PATCH 1011/1227] gnu: python-cryptography-vectors: Update to 2.0.3. * gnu/packages/python.scm (python-cryptography-vectors): Update to 2.0.3. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index d5d4b18ed3..3f5b5b980d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7686,14 +7686,14 @@ responses, rather than doing any computation.") (define-public python-cryptography-vectors (package (name "python-cryptography-vectors") - (version "2.0.2") + (version "2.0.3") (source (origin (method url-fetch) (uri (pypi-uri "cryptography_vectors" version)) (sha256 (base32 - "0yvi2cp23rg20bq3hd47ixbvjh0zgxnxrriqx5v17d7vkmliwbsi")))) + "1qa117fs1yd50zn2cfxh7d9l999ds0z4h83m9m7j4fk6ffm33f5y")))) (build-system python-build-system) (home-page "https://github.com/pyca/cryptography") (synopsis "Test vectors for the cryptography package") From 84a52639c950a5e20cf999af788e1f7928dce83a Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 15 Aug 2017 20:47:08 +0200 Subject: [PATCH 1012/1227] gnu: Add liblinebreak. * gnu/packages/ebook.scm (liblinebreak): New variable. --- gnu/packages/ebook.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index 32f4f3b2d1..0880560222 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -195,3 +195,24 @@ ebooks for convenient reading.") license:public-domain license:silofl1.1 license:cc-by-sa3.0)))) + +(define-public liblinebreak + (package + (name "liblinebreak") + (version "2.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/vimgadgets" + "/liblinebreak/" version + "/liblinebreak-" version ".tar.gz")) + (sha256 + (base32 + "1f36dbq7nc77lln1by2n1yl050g9dc63viawhs3gc3169mavm36x")))) + (build-system gnu-build-system) + (home-page "http://vimgadgets.sourceforge.net/liblinebreak/") + (synopsis "Library for detecting where linebreaks are allowed in text") + (description "@code{liblinebreak} is an implementation of the line +breaking algorithm as described in Unicode 6.0.0 Standard Annex 14, +Revision 26. It breaks lines that contain Unicode characters. It is +designed to be used in a generic text renderer.") + (license license:zlib))) From d6ef422fe72a188361cf1779d27934a7787ad3d2 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 17 Aug 2017 02:00:51 +0200 Subject: [PATCH 1013/1227] gnu: Add fbreader. * gnu/packages/ebook.scm (fbreader): New variable. --- gnu/packages/ebook.scm | 61 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index 0880560222..38abf47c87 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -28,10 +28,14 @@ #:use-module (gnu packages) #:use-module (guix build-system python) #:use-module (gnu packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages fribidi) + #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages glib) #:use-module (gnu packages icu4c) @@ -44,6 +48,7 @@ #:use-module (gnu packages serialization) #:use-module (gnu packages tls) #:use-module (gnu packages web) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) (define-public chmlib @@ -216,3 +221,59 @@ breaking algorithm as described in Unicode 6.0.0 Standard Annex 14, Revision 26. It breaks lines that contain Unicode characters. It is designed to be used in a generic text renderer.") (license license:zlib))) + +(define-public fbreader + (package + (name "fbreader") + (version "0.99.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/geometer/FBReader/" + "archive/" version "-freebsdport.tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0gf1nl562fqkwlzcn6rgkp1j8jcixzmfsnwxbc0sm49zh8n3zqib")))) + (build-system gnu-build-system) + (inputs + `(("curl" ,curl) + ("expat" ,expat) + ("fribidi" ,fribidi) + ("glib" ,glib) + ("gtk+-2" ,gtk+-2) + ("libjpeg" ,libjpeg) + ("liblinebreak" ,liblinebreak) + ("libxft" ,libxft) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:tests? #f ; No tests exist. + #:make-flags `("CC=gcc" "TARGET_ARCH=desktop" "UI_TYPE=gtk" + "TARGET_STATUS=release" + ,(string-append "INSTALLDIR=" + (assoc-ref %outputs "out")) + ,(string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib")) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (home-page "https://fbreader.org/") + (synopsis "E-Book reader") + (description "@code{fbreader} is an E-Book reader. It supports the +following formats: + +@enumerate +@item CHM +@item Docbook +@item FB2 +@item HTML +@item OEB +@item PDB +@item RTF +@item TCR +@item TXT +@item XHTML +@end enumerate") + (license license:gpl2+))) From e3b861ce3845d63e6751f3b35f289ddb9624f8e8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 17 Aug 2017 06:45:05 +0300 Subject: [PATCH 1014/1227] gnu: python-cython: Update to 0.26. * gnu/packages/python.scm (python-cython, python2-cython): Update to 0.26. [source]: Remove patch. * gnu/packages/patches/python-cython-fix-tests-32bit.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../python-cython-fix-tests-32bit.patch | 27 ------------------- gnu/packages/python.scm | 7 +++-- 3 files changed, 3 insertions(+), 32 deletions(-) delete mode 100644 gnu/packages/patches/python-cython-fix-tests-32bit.patch diff --git a/gnu/local.mk b/gnu/local.mk index 2ab6901d8a..63300e35bd 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -975,7 +975,6 @@ dist_patch_DATA = \ %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ %D%/packages/patches/python-statsmodels-fix-tests.patch \ %D%/packages/patches/python-configobj-setuptools.patch \ - %D%/packages/patches/python-cython-fix-tests-32bit.patch \ %D%/packages/patches/python-faker-fix-build-32bit.patch \ %D%/packages/patches/python-pandas-skip-failing-tests.patch \ %D%/packages/patches/python-paste-remove-website-test.patch \ diff --git a/gnu/packages/patches/python-cython-fix-tests-32bit.patch b/gnu/packages/patches/python-cython-fix-tests-32bit.patch deleted file mode 100644 index 7ccc11dd4c..0000000000 --- a/gnu/packages/patches/python-cython-fix-tests-32bit.patch +++ /dev/null @@ -1,27 +0,0 @@ -This fixes a test failure on 32-bit platforms. - -Upstream bug URL: https://github.com/cython/cython/issues/1548 - -Patch copied from upstream source repository: - -https://github.com/cython/cython/commit/d92a718a26c9354fbf35f31a17de5c069865a447 - -From d92a718a26c9354fbf35f31a17de5c069865a447 Mon Sep 17 00:00:00 2001 -From: Robert Bradshaw -Date: Tue, 24 Jan 2017 16:57:00 -0800 -Subject: [PATCH] Normalize possible L suffix. - ---- - tests/run/cpdef_enums.pyx | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/run/cpdef_enums.pyx b/tests/run/cpdef_enums.pyx -index 167c762..c264ec5 100644 ---- a/tests/run/cpdef_enums.pyx -+++ b/tests/run/cpdef_enums.pyx -@@ -93,4 +93,4 @@ def verify_resolution_GH1533(): - 3 - """ - THREE = 100 -- return PyxEnum.THREE -+ return int(PyxEnum.THREE) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 3f5b5b980d..29bb4936bc 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3607,15 +3607,14 @@ is designed to have a low barrier to entry.") (define-public python-cython (package (name "python-cython") - (version "0.25.2") + (version "0.26") (source (origin (method url-fetch) (uri (pypi-uri "Cython" version)) - (patches (search-patches "python-cython-fix-tests-32bit.patch")) (sha256 (base32 - "01h3lrf6d98j07iakifi81qjszh6faa37ibx7ylva1vsqbwx2hgi")))) + "0riciynnr0r68cvg6r3gbhi9x7h44pdwb7926m6n5vfs5p1f492c")))) (build-system python-build-system) ;; we need the full python package and not just the python-wrapper ;; because we need libpython3.3m.so @@ -3626,7 +3625,7 @@ is designed to have a low barrier to entry.") (modify-phases %standard-phases (add-before 'check 'set-HOME ;; some tests require access to "$HOME/.cython" - (lambda _ (setenv "HOME" "/tmp"))) + (lambda _ (setenv "HOME" "/tmp") #t)) (replace 'check (lambda _ (zero? (system* "python" "runtests.py" "-vv"))))))) (home-page "http://cython.org/") From a6d05444abbac29906fb3ae782ca7abda176bfb9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Aug 2017 09:11:14 +0200 Subject: [PATCH 1015/1227] gnu: cuirass: Update to 0.0.1-7.6f85bc0. * gnu/packages/ci.scm (cuirass): Update to 0.0.1-7.6f85bc0. [arguments]: Add guile-git and guile-bytestructures to the load path. [inputs]: Remove git, add guile-git and guile-bytestructures. --- gnu/packages/ci.scm | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index e2cb712bf1..d936c8fa10 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016, 2017 Mathieu Lirzin ;;; Copyright © 2017 Mathieu Othacehe +;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -186,8 +187,8 @@ their dependencies.") (license l:gpl3+)))) (define-public cuirass - (let ((commit "870e8d6ad3415ac61c52e57095fcc6164023a0fc") - (revision "6")) + (let ((commit "6f85bc04f31ae5853ceaa0bb3e1dedfe8412a189") + (revision "7")) (package (name "cuirass") (version (string-append "0.0.1-" revision "." (string-take commit 7))) @@ -199,7 +200,7 @@ their dependencies.") (file-name (string-append name "-" version)) (sha256 (base32 - "0lp5a5p42k7lml15lbmmd7az9i0gw5kips3sh3awd2z79h0w2knw")))) + "1dglsa23z21m1s70420ar73qmg39fvdvwlz9xjz6lfp5s9mgzx15")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) @@ -223,7 +224,8 @@ their dependencies.") (let* ((out (assoc-ref outputs "out")) (json (assoc-ref inputs "guile-json")) (sqlite (assoc-ref inputs "guile-sqlite3")) - (git (assoc-ref inputs "git")) + (git (assoc-ref inputs "guile-git")) + (bytes (assoc-ref inputs "guile-bytestructures")) (guix (assoc-ref inputs "guix")) (guile (assoc-ref %build-inputs "guile")) (effective (read-line @@ -231,16 +233,19 @@ their dependencies.") (string-append guile "/bin/guile") "-c" "(display (effective-version))"))) (mods (string-append json "/share/guile/site/" + effective ":" + git "/share/guile/site/" + effective ":" + bytes "/share/guile/site/" effective ":" sqlite "/share/guile/site/" effective ":" guix "/share/guile/site/" effective))) - ;; Make sure 'cuirass' can find the 'git' and 'evaluate' - ;; commands, as well as the relevant Guile modules. + ;; Make sure 'cuirass' can find the 'evaluate' command, as + ;; well as the relevant Guile modules. (wrap-program (string-append out "/bin/cuirass") - `("PATH" ":" prefix (,(string-append out "/bin") - ,(string-append git "/bin"))) + `("PATH" ":" prefix (,(string-append out "/bin"))) `("GUILE_LOAD_PATH" ":" prefix (,mods)) `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,mods))) #t)))))) @@ -248,8 +253,11 @@ their dependencies.") `(("guile" ,guile-2.2) ("guile-json" ,guile-json) ("guile-sqlite3" ,guile-sqlite3) - ("guix" ,guix) - ("git" ,git))) + ("guile-git" ,guile-git) + ;; FIXME: this is propagated by "guile-git", but it needs to be among + ;; the inputs to add it to GUILE_LOAD_PATH. + ("guile-bytestructures" ,guile-bytestructures) + ("guix" ,guix))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) From 721e1987d059a0041f547300969c323a03635e74 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Thu, 17 Aug 2017 10:56:04 +0200 Subject: [PATCH 1016/1227] gnu: Add mgba. * gnu/packages/games.scm (mgba): New public variable. --- gnu/packages/games.scm | 59 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index e0a212e15f..7932e841c4 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -83,6 +83,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages imagemagick) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages libedit) #:use-module (gnu packages libunwind) #:use-module (gnu packages haskell) #:use-module (gnu packages mp3) @@ -2961,6 +2962,64 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.") ;; - higan/emulator/emulator.hpp (license license:gpl3))) +(define-public mgba + (package + (name "mgba") + (version "0.6.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/mgba-emu/mgba/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "01zy2w5pihlkrmbm51icgyff6iqyqa5ha6qrm4aj8ibzznz03kyq")) + (modules '((guix build utils))) + (snippet + ;; Make sure we don't use the bundled software. + '(for-each + (lambda (subdir) + (let ((lib-subdir (string-append "src/third-party/" subdir))) + (delete-file-recursively lib-subdir))) + '("libpng" "lzma" "sqlite3" "zlib"))))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;no "test" target + #:configure-flags + (list "-DUSE_LZMA=OFF" ;do not use bundled LZMA + "-DUSE_LIBZIP=OFF" ;use "zlib" instead + ;; Validate RUNPATH phase fails ("error: depends on + ;; 'libmgba.so.0.6', which cannot be found in RUNPATH") without + ;; the following S-exp. + (string-append "-DCMAKE_INSTALL_LIBDIR=" + (assoc-ref %outputs "out") + "/lib")))) + (native-inputs `(("pkg-config" ,pkg-config))) + (inputs `(("ffmpeg" ,ffmpeg) + ("imagemagick" ,imagemagick) + ("libedit" ,libedit) + ("libepoxy" ,libepoxy) + ("libpng" ,libpng) + ("mesa" ,mesa) + ("minizip" ,minizip) + ("ncurses" ,ncurses) + ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) + ("qttools" ,qttools) + ("sdl2" ,sdl2) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (home-page "https://mgba.io") + (synopsis "Game Boy Advance emulator") + (description + "mGBA is an emulator for running Game Boy Advance games. It aims to be +faster and more accurate than many existing Game Boy Advance emulators, as +well as adding features that other emulators lack. It also supports Game Boy +and Game Boy Color games.") + ;; Code is mainly MPL 2.0. "blip_buf.c" is LGPL 2.1+ and "inih.c" is + ;; BSD-3. + (license (list license:mpl2.0 license:lgpl2.1+ license:bsd-3)))) + (define-public grue-hunter (package (name "grue-hunter") From aacefef22247f4fce1710ffe79e4765a4195a6a1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 17 Aug 2017 14:10:56 +0300 Subject: [PATCH 1017/1227] gnu: american-fuzzy-lop: Add support for non-Intel architectures. * gnu/packages/debug.scm (americal-fuzzy-lop): Add qemu target for non-Intel targets. [arguments]: On non-Intel systems, add phase to disable non-Intel architecture warning and remove incompatible binaries. --- gnu/packages/debug.scm | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index bde06f35b9..91fdcde048 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier +;;; Copyright © 2016, 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -166,6 +167,9 @@ tools that process C/C++ code.") (%current-system)) ("x86_64-linux" "x86_64") ("i686-linux" "i386") + ("aarch64-linux" "aarch64") + ("armhf-linux" "arm") + ("mips64el-linux" "mips64el") ;; Prevent errors when querying this package on unsupported ;; platforms, e.g. when running "guix package --search=" (_ "UNSUPPORTED")))) @@ -234,6 +238,20 @@ tools that process C/C++ code.") "CC=gcc") #:phases (modify-phases %standard-phases (delete 'configure) + ,@(if (string=? (%current-system) (or "x86_64-linux" + "i686-linux")) + '() + '((add-before 'build 'set-afl-flag + (lambda _ (setenv "AFL_NO_X86" "1") #t)) + (add-after 'install 'remove-x86-programs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/"))) + (delete-file (string-append bin "afl-gcc")) + (delete-file (string-append bin "afl-g++")) + (delete-file (string-append bin "afl-clang")) + (delete-file (string-append bin "afl-clang++"))) + #t)))) (add-after ;; TODO: Build and install the afl-llvm tool. 'install 'install-qemu @@ -243,10 +261,7 @@ tools that process C/C++ code.") (symlink (string-append qemu "/bin/qemu-" ,machine) (string-append out "/bin/afl-qemu-trace")) #t))) - (delete 'check)))) - (supported-systems (fold delete - %supported-systems - '("armhf-linux" "mips64el-linux"))) + (delete 'check)))) ; Tests are run during 'install phase. (home-page "http://lcamtuf.coredump.cx/afl") (synopsis "Security-oriented fuzzer") (description From a71fd671753c964b458c2842df27594c4896fd53 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 17 Aug 2017 14:42:08 +0300 Subject: [PATCH 1018/1227] gnu: american-fuzzy-lop: Update to 2.49b. * gnu/packages/debug.scm (american-fuzzy-lop): Update to 2.49b. --- gnu/packages/debug.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index 91fdcde048..0fc1f513ba 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -175,7 +175,7 @@ tools that process C/C++ code.") (_ "UNSUPPORTED")))) (package (name "american-fuzzy-lop") - (version "2.15b") ;It seems all releases have the 'b' suffix + (version "2.49b") ;It seems all releases have the 'b' suffix (source (origin (method url-fetch) @@ -183,7 +183,7 @@ tools that process C/C++ code.") "afl-" version ".tgz")) (sha256 (base32 - "04n2jfkchpz6a07w694b0im1vcmc3220ryqcaasa7vix7784wzs2")))) + "1lc8mpwlbyb1iil9961yfysp8l2l4nw0s07781m1haiz4jq2rigp")))) (build-system gnu-build-system) (inputs `(("custom-qemu" From 5f96f30f5dc33d421f5a5eae85c9ad221a3cbd6f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 17:46:42 +0200 Subject: [PATCH 1019/1227] gnu: Add r-interactivedisplaybase. * gnu/packages/bioinformatics.scm (r-interactivedisplaybase): New variable. --- gnu/packages/bioinformatics.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a41d367f0f..2def6a2fe6 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -9231,6 +9231,30 @@ distributional differences between lanes (e.g., sequencing depth): global-scaling and full-quantile normalization.") (license license:artistic2.0))) +(define-public r-interactivedisplaybase + (package + (name "r-interactivedisplaybase") + (version "1.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "interactiveDisplayBase" version)) + (sha256 + (base32 + "12f6ap4bl3h2iwwhg8i3r9a7yyd28d8i5lb3fj1vnfvjs762r7r7")))) + (properties + `((upstream-name . "interactiveDisplayBase"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-shiny" ,r-shiny))) + (home-page "http://bioconductor.org/packages/interactiveDisplayBase") + (synopsis "Base package for web displays of Bioconductor objects") + (description + "This package contains the basic methods needed to generate interactive +Shiny-based display methods for Bioconductor objects.") + (license license:artistic2.0))) + (define htslib-for-sambamba (let ((commit "2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5")) (package From 4a007ffafe8b348425a6c89159b4364b08ed5765 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 17:48:58 +0200 Subject: [PATCH 1020/1227] gnu: Add r-annotationhub. * gnu/packages/bioinformatics.scm (r-annotationhub): New variable. --- gnu/packages/bioinformatics.scm | 34 +++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 2def6a2fe6..56f2d5d6c5 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -9255,6 +9255,40 @@ global-scaling and full-quantile normalization.") Shiny-based display methods for Bioconductor objects.") (license license:artistic2.0))) +(define-public r-annotationhub + (package + (name "r-annotationhub") + (version "2.8.2") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "AnnotationHub" version)) + (sha256 + (base32 + "1nh5si3j1nv37jcg4260582ayjg18851np47cskrm54prnvhwd9r")))) + (properties `((upstream-name . "AnnotationHub"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocinstaller" ,r-biocinstaller) + ("r-httr" ,r-httr) + ("r-interactivedisplaybase" ,r-interactivedisplaybase) + ("r-rsqlite" ,r-rsqlite) + ("r-s4vectors" ,r-s4vectors) + ("r-yaml" ,r-yaml))) + (home-page "http://bioconductor.org/packages/AnnotationHub") + (synopsis "Client to access AnnotationHub resources") + (description + "This package provides a client for the Bioconductor AnnotationHub web +resource. The AnnotationHub web resource provides a central location where +genomic files (e.g. VCF, bed, wig) and other resources from standard +locations (e.g. UCSC, Ensembl) can be discovered. The resource includes +metadata about each resource, e.g., a textual description, tags, and date of +modification. The client creates and manages a local cache of files retrieved +by the user, helping with quick and reproducible access.") + (license license:artistic2.0))) + (define htslib-for-sambamba (let ((commit "2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5")) (package From 33ce12e2936bb7dadc1bc03677f06bfda5ef06a7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 17:56:07 +0200 Subject: [PATCH 1021/1227] gnu: Add r-auc. * gnu/packages/cran.scm (r-auc): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index feae801116..c874ff880f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -148,3 +148,27 @@ where the bound function accepts additional arguments.") "This package provides an easy way to fill an environment with active bindings that call a C++ function.") (license license:expat))) + +(define-public r-auc + (package + (name "r-auc") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "AUC" version)) + (sha256 + (base32 + "0ripcib2qz0m7rgr1kiz68nx8f6p408l1ww7j78ljqik7p3g41g7")))) + (properties `((upstream-name . "AUC"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/AUC") + (synopsis "Compute the area under the curve of selected measures") + (description + "This package includes functions to compute the area under the curve of +selected measures: the area under the sensitivity curve (AUSEC), the area +under the specificity curve (AUSPC), the area under the accuracy +curve (AUACC), and the area under the receiver operating characteristic +curve (AUROC). The curves can also be visualized. Support for partial areas +is provided.") + (license license:gpl2+))) From c69d27db5715f61607188b8d774a5291050a8fc3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 17:56:26 +0200 Subject: [PATCH 1022/1227] gnu: Add r-calibrate. * gnu/packages/cran.scm (r-calibrate): New variable. --- gnu/packages/cran.scm | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c874ff880f..5ec8d4921e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -21,7 +21,8 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) - #:use-module (guix build-system r)) + #:use-module (guix build-system r) + #:use-module (gnu packages statistics)) (define-public r-colorspace (package @@ -172,3 +173,24 @@ curve (AUACC), and the area under the receiver operating characteristic curve (AUROC). The curves can also be visualized. Support for partial areas is provided.") (license license:gpl2+))) + +(define-public r-calibrate + (package + (name "r-calibrate") + (version "1.7.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "calibrate" version)) + (sha256 + (base32 + "010nb1nb9y7zhw2k6d2i2drwy5brp7b83mjj2w7i3wjp9xb6l1kq")))) + (build-system r-build-system) + (propagated-inputs + `(("r-mass" ,r-mass))) + (home-page "http://cran.r-project.org/web/packages/calibrate") + (synopsis "Calibration of scatterplot and biplot axes") + (description + "This is a package for drawing calibrated scales with tick marks +on (non-orthogonal) variable vectors in scatterplots and biplots.") + (license license:gpl2))) From 2bdb5c3f78c2cf63ba36922823c6d67657fa3056 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 17:56:48 +0200 Subject: [PATCH 1023/1227] gnu: Add r-shape. * gnu/packages/cran.scm (r-shape): New variable. --- gnu/packages/cran.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5ec8d4921e..de7c56f6df 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -194,3 +194,22 @@ is provided.") "This is a package for drawing calibrated scales with tick marks on (non-orthogonal) variable vectors in scatterplots and biplots.") (license license:gpl2))) + +(define-public r-shape + (package + (name "r-shape") + (version "1.4.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "shape" version)) + (sha256 + (base32 + "0yk3cmsa57svcvbnm21pyr0s0qbhnllka8nmsg4yb41frjlqph66")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/shape") + (synopsis "Functions for plotting graphical shapes") + (description + "This package provides functions for plotting graphical shapes such as +ellipses, circles, cylinders, arrows, ...") + (license license:gpl3+))) From 4847a62ea9414dad19d4d44ee70099fbb8a691ca Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 17:57:03 +0200 Subject: [PATCH 1024/1227] gnu: Add r-globaloptions. * gnu/packages/cran.scm (r-globaloptions): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index de7c56f6df..7179ceb5c6 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -213,3 +213,23 @@ on (non-orthogonal) variable vectors in scatterplots and biplots.") "This package provides functions for plotting graphical shapes such as ellipses, circles, cylinders, arrows, ...") (license license:gpl3+))) + +(define-public r-globaloptions + (package + (name "r-globaloptions") + (version "0.0.12") + (source + (origin + (method url-fetch) + (uri (cran-uri "GlobalOptions" version)) + (sha256 + (base32 + "1abpc03cfvazbwj2sx6qgngs5pgpzysvxkana20hyvb4n7ws77f0")))) + (properties `((upstream-name . "GlobalOptions"))) + (build-system r-build-system) + (home-page "https://github.com/jokergoo/GlobalOptions") + (synopsis "Generate functions to get or set global options") + (description + "This package provides more controls on the option values such as +validation and filtering on the values, making options invisible or private.") + (license license:gpl2+))) From 2856369fad5d841aa1d46c359e67dc16aeba5657 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 17:57:19 +0200 Subject: [PATCH 1025/1227] gnu: Add r-circlize. * gnu/packages/cran.scm (r-circlize): New variable. --- gnu/packages/cran.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 7179ceb5c6..0fc158768d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -233,3 +233,33 @@ ellipses, circles, cylinders, arrows, ...") "This package provides more controls on the option values such as validation and filtering on the values, making options invisible or private.") (license license:gpl2+))) + +(define-public r-circlize + (package + (name "r-circlize") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "circlize" version)) + (sha256 + (base32 + "0p1zx1aawkblz48kzzfn5w1k3lbwv9wrk1k5gcfjrr2b4sz1pp5b")))) + (build-system r-build-system) + (propagated-inputs + `(("r-colorspace" ,r-colorspace) + ("r-globaloptions" ,r-globaloptions) + ("r-shape" ,r-shape))) + (home-page "https://github.com/jokergoo/circlize") + (synopsis "Circular visualization") + (description + "Circular layout is an efficient way for the visualization of huge +amounts of information. This package provides an implementation of circular +layout generation in R as well as an enhancement of available software. The +flexibility of the package is based on the usage of low-level graphics +functions such that self-defined high-level graphics can be easily implemented +by users for specific purposes. Together with the seamless connection between +the powerful computational and visual environment in R, it gives users more +convenience and freedom to design figures for better understanding complex +patterns behind multiple dimensional data.") + (license license:gpl2+))) From 5cc79c9c5049540c701fe532a2953b4da2c470bb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 19:42:32 +0200 Subject: [PATCH 1026/1227] gnu: Add r-powerlaw. * gnu/packages/cran.scm (r-powerlaw): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 0fc158768d..83f246d4d0 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -263,3 +263,28 @@ the powerful computational and visual environment in R, it gives users more convenience and freedom to design figures for better understanding complex patterns behind multiple dimensional data.") (license license:gpl2+))) + +(define-public r-powerlaw + (package + (name "r-powerlaw") + (version "0.70.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "poweRlaw" version)) + (sha256 + (base32 + "1p2la3hslxq2xa8jkwvci6zcpn47cvyr9xqd5agp1riwwp2xw5gh")))) + (properties `((upstream-name . "poweRlaw"))) + (build-system r-build-system) + (propagated-inputs + `(("r-vgam" ,r-vgam))) + (home-page "https://github.com/csgillespie/poweRlaw") + (synopsis "Tools for the analysis of heavy tailed distributions") + (description + "This package provides an implementation of maximum likelihood estimators +for a variety of heavy tailed distributions, including both the discrete and +continuous power law distributions. Additionally, a goodness-of-fit based +approach is used to estimate the lower cut-off for the scaling region.") + ;; Any of these GPL versions. + (license (list license:gpl2 license:gpl3)))) From eb60149eeecac6276b8c98ee0855d61a2c7a527b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 19:44:11 +0200 Subject: [PATCH 1027/1227] gnu: Add r-png. * gnu/packages/image.scm (r-png): New variable. --- gnu/packages/image.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index f1225b33dc..43dc7e6d4c 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -65,6 +65,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system python) + #:use-module (guix build-system r) #:use-module (srfi srfi-1)) (define-public libpng @@ -180,6 +181,29 @@ APNG patch provides APNG support to libpng.") (sha256 (base32 "1n2lrzjkm5jhfg2bs10q398lkwbbx742fi27zgdgx0x23zhj0ihg")))))) +(define-public r-png + (package + (name "r-png") + (version "0.1-7") + (source (origin + (method url-fetch) + (uri (cran-uri "png" version)) + (sha256 + (base32 + "0g2mcp55lvvpx4kd3mn225mpbxqcq73wy5qx8b4lyf04iybgysg2")))) + (build-system r-build-system) + (inputs + `(("libpng" ,libpng) + ("zlib" ,zlib))) + (home-page "http://www.rforge.net/png/") + (synopsis "Read and write PNG images") + (description + "This package provides an easy and simple way to read, write and display +bitmap images stored in the PNG format. It can read and write both files and +in-memory raw vectors.") + ;; Any of these GPL versions. + (license (list license:gpl2 license:gpl3)))) + (define-public pngcrunch (package (name "pngcrunch") From 05486604205567c47cf835277009b9897671b5ab Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 19:56:07 +0200 Subject: [PATCH 1028/1227] gnu: Add r-compare. * gnu/packages/cran.scm (r-compare): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 83f246d4d0..25f52a1433 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -288,3 +288,24 @@ continuous power law distributions. Additionally, a goodness-of-fit based approach is used to estimate the lower cut-off for the scaling region.") ;; Any of these GPL versions. (license (list license:gpl2 license:gpl3)))) + +(define-public r-compare + (package + (name "r-compare") + (version "0.2-6") + (source + (origin + (method url-fetch) + (uri (cran-uri "compare" version)) + (sha256 + (base32 + "0k9zms930b5dz9gy8414li21wy0zg9x9vp7301v5cvyfi0g7xzgw")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/compare") + (synopsis "Comparing objects for differences") + (description + "This package provides functions to compare a model object to a +comparison object. If the objects are not identical, the functions can be +instructed to explore various modifications of the objects (e.g., sorting +rows, dropping names) to see if the modified versions are identical.") + (license license:gpl2+))) From d3c67e1b45865b96122ba249280a7b61ce1850d4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:26:50 +0200 Subject: [PATCH 1029/1227] gnu: Add r-dendextend. * gnu/packages/cran.scm (r-dendextend): New variable. --- gnu/packages/cran.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 25f52a1433..b2502e1826 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -309,3 +309,32 @@ comparison object. If the objects are not identical, the functions can be instructed to explore various modifications of the objects (e.g., sorting rows, dropping names) to see if the modified versions are identical.") (license license:gpl2+))) + +(define-public r-dendextend + (package + (name "r-dendextend") + (version "1.5.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "dendextend" version)) + (sha256 + (base32 + "04jz58apibfrkjcrdmw2hmsav6qpb5cs6qdai81k1v1iznfcya42")))) + (build-system r-build-system) + (propagated-inputs + `(("r-fpc" ,r-fpc) + ("r-ggplot2" ,r-ggplot2) + ("r-magrittr" ,r-magrittr) + ("r-viridis" ,r-viridis) + ("r-whisker" ,r-whisker))) + (home-page "https://cran.r-project.org/web/packages/dendextend") + (synopsis "Extending 'dendrogram' functionality in R") + (description + "This package offers a set of functions for extending @code{dendrogram} +objects in R, letting you visualize and compare trees of hierarchical +clusterings. You can adjust a tree's graphical parameters (the color, size, +type, etc of its branches, nodes and labels) and visually and statistically +compare different dendrograms to one another.") + ;; Any of these versions + (license (list license:gpl2 license:gpl3)))) From e0268ff2e404ca963f25d89fb52178768da0b856 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:41:29 +0200 Subject: [PATCH 1030/1227] gnu: Add r-getoptlong. * gnu/packages/cran.scm (r-getoptlong): New variable. --- gnu/packages/cran.scm | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b2502e1826..abdff54db9 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -22,7 +22,9 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system r) - #:use-module (gnu packages statistics)) + #:use-module (gnu packages perl) + #:use-module (gnu packages statistics) + #:use-module (gnu packages web)) (define-public r-colorspace (package @@ -338,3 +340,29 @@ type, etc of its branches, nodes and labels) and visually and statistically compare different dendrograms to one another.") ;; Any of these versions (license (list license:gpl2 license:gpl3)))) + +(define-public r-getoptlong + (package + (name "r-getoptlong") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "GetoptLong" version)) + (sha256 + (base32 + "1d98gcvlvp9nz5lbnzr0kkpc2hbkx74hlhrnybqhg1gdwc3g09pm")))) + (properties `((upstream-name . "GetoptLong"))) + (build-system r-build-system) + (inputs + `(("perl" ,perl))) + (propagated-inputs + `(("r-globaloptions" ,r-globaloptions) + ("r-rjson" ,r-rjson))) + (home-page "https://github.com/jokergoo/GetoptLong") + (synopsis "Parsing command-line arguments and variable interpolation") + (description + "This is yet another command-line argument parser which wraps the +powerful Perl module @code{Getopt::Long} and with some adaptation for easier +use in R. It also provides a simple way for variable interpolation in R.") + (license license:gpl2+))) From f2e974e1a2c1ef1341484d852123fc88919621af Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:43:07 +0200 Subject: [PATCH 1031/1227] gnu: Add r-fastmatch. * gnu/packages/cran.scm (r-fastmatch): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index abdff54db9..c959beee0e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -366,3 +366,24 @@ compare different dendrograms to one another.") powerful Perl module @code{Getopt::Long} and with some adaptation for easier use in R. It also provides a simple way for variable interpolation in R.") (license license:gpl2+))) + +(define-public r-fastmatch + (package + (name "r-fastmatch") + (version "1.1-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "fastmatch" version)) + (sha256 + (base32 + "0z80jxkygmzn11sq0c2iz357s9bpki548lg926g85gldhfj1md90")))) + (build-system r-build-system) + (home-page "http://www.rforge.net/fastmatch") + (synopsis "Fast match function") + (description + "This package provides a fast @code{match} replacement for cases that +require repeated look-ups. It is slightly faster that R's built-in +@code{match} function on first match against a table, but extremely fast on +any subsequent lookup as it keeps the hash table in memory.") + (license license:gpl2))) From a7f0faa2042991525355b36e39663fd8714d6cf6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:46:26 +0200 Subject: [PATCH 1032/1227] gnu: Add r-ff. * gnu/packages/cran.scm (r-ff): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c959beee0e..b1cb0c4092 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -387,3 +387,24 @@ require repeated look-ups. It is slightly faster that R's built-in @code{match} function on first match against a table, but extremely fast on any subsequent lookup as it keeps the hash table in memory.") (license license:gpl2))) + +(define-public r-ff + (package + (name "r-ff") + (version "2.2-13") + (source + (origin + (method url-fetch) + (uri (cran-uri "ff" version)) + (sha256 + (base32 + "1nvd6kx46xzyc99a44mgynd94pvd2h495m5a7b1g67k5w2phiywb")))) + (build-system r-build-system) + (propagated-inputs `(("r-bit" ,r-bit))) + (home-page "http://ff.r-forge.r-project.org/") + (synopsis "Memory-efficient storage of large data on disk and access functions") + (description + "This package provides data structures that are stored on disk but +behave (almost) as if they were in RAM by transparently mapping only a section +in main memory.") + (license license:gpl2))) From 49c9c2979071c153bf3d6a25737ad1873b649d88 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:51:26 +0200 Subject: [PATCH 1033/1227] gnu: Add r-ffbase. * gnu/packages/cran.scm (r-ffbase): New variable. --- gnu/packages/cran.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b1cb0c4092..80ed0bc26e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -408,3 +408,26 @@ any subsequent lookup as it keeps the hash table in memory.") behave (almost) as if they were in RAM by transparently mapping only a section in main memory.") (license license:gpl2))) + +(define-public r-ffbase + (package + (name "r-ffbase") + (version "0.12.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "ffbase" version)) + (sha256 + (base32 + "1nz97bndxxkzp8rq6va8ff5ky9vkaib1jybm6j852awwb3n9had5")))) + (build-system r-build-system) + (propagated-inputs + `(("r-bit" ,r-bit) + ("r-fastmatch" ,r-fastmatch) + ("r-ff" ,r-ff))) + (home-page "http://github.com/edwindj/ffbase") + (synopsis "Basic statistical functions for package 'ff'") + (description + "This package extends the out of memory vectors of @code{ff} with +statistical functions and other utilities to ease their usage.") + (license license:gpl3))) From 18a16ceb7c993fa043215fbf51f520cde87ca20d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:51:45 +0200 Subject: [PATCH 1034/1227] gnu: Add r-prettyunits. * gnu/packages/cran.scm (r-prettyunits): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 80ed0bc26e..637ddfe4f0 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -431,3 +431,25 @@ in main memory.") "This package extends the out of memory vectors of @code{ff} with statistical functions and other utilities to ease their usage.") (license license:gpl3))) + +(define-public r-prettyunits + (package + (name "r-prettyunits") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "prettyunits" version)) + (sha256 + (base32 + "0p3z42hnk53x7ky4d1dr2brf7p8gv3agxr71i99m01n2hq2ri91m")))) + (build-system r-build-system) + (propagated-inputs + `(("r-assertthat" ,r-assertthat) + ("r-magrittr" ,r-magrittr))) + (home-page "https://github.com/gaborcsardi/prettyunits") + (synopsis "Pretty, human readable formatting of quantities") + (description + "This package provides tools for pretty, human readable formatting of +quantities.") + (license license:expat))) From 71be51d5310ec47ebfe49dabefd52fab23123ad4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:55:06 +0200 Subject: [PATCH 1035/1227] gnu: Add r-reshape. * gnu/packages/cran.scm (r-reshape): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 637ddfe4f0..fa75317e94 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -453,3 +453,25 @@ statistical functions and other utilities to ease their usage.") "This package provides tools for pretty, human readable formatting of quantities.") (license license:expat))) + +(define-public r-reshape + (package + (name "r-reshape") + (version "0.8.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "reshape" version)) + (sha256 + (base32 + "1f1ngalc22knhdm9djv1m6abnjqpv1frdzxfkpakhph2l67bk7fq")))) + (build-system r-build-system) + (propagated-inputs + `(("r-plyr" ,r-plyr) + ("r-rcpp" ,r-rcpp))) + (home-page "http://had.co.nz/reshape") + (synopsis "Flexibly reshape data") + (description + "Flexibly restructure and aggregate data using just two functions: +@code{melt} and @code{cast}. This package provides them.") + (license license:expat))) From c9c6f4b543a0aaf2da6512768cf54c898fd784df Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:55:26 +0200 Subject: [PATCH 1036/1227] gnu: Add r-progress. * gnu/packages/cran.scm (r-progress): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index fa75317e94..d88202ca5a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -475,3 +475,27 @@ quantities.") "Flexibly restructure and aggregate data using just two functions: @code{melt} and @code{cast}. This package provides them.") (license license:expat))) + +(define-public r-progress + (package + (name "r-progress") + (version "1.1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "progress" version)) + (sha256 + (base32 + "1fxakchfjr5vj59s9sxynd7crpz97xj42438rmkhkf3rjpyspx59")))) + (build-system r-build-system) + (propagated-inputs + `(("r-prettyunits" ,r-prettyunits) + ("r-r6" ,r-r6))) + (home-page "https://github.com/gaborcsardi/progress") + (synopsis "Terminal progress bars") + (description + "This package provides configurable progress bars. They may include +percentage, elapsed time, and/or the estimated completion time. They work in +terminals, in Emacs ESS, RStudio, Windows Rgui, and the macOS R.app. The +package also provides a C++ API, that works with or without Rcpp.") + (license license:expat))) From ac8402072b550c6a661f4aca7171bd070e0bc6b9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:55:44 +0200 Subject: [PATCH 1037/1227] gnu: Add r-ggally. * gnu/packages/cran.scm (r-ggally): New variable. --- gnu/packages/cran.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d88202ca5a..35d0965143 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -499,3 +499,34 @@ percentage, elapsed time, and/or the estimated completion time. They work in terminals, in Emacs ESS, RStudio, Windows Rgui, and the macOS R.app. The package also provides a C++ API, that works with or without Rcpp.") (license license:expat))) + +(define-public r-ggally + (package + (name "r-ggally") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "GGally" version)) + (sha256 + (base32 + "12ddab0nd0f9c7bb6cx3c22mliyvc8xsxv26aqz3cvfbla8crp3b")))) + (properties `((upstream-name . "GGally"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gtable" ,r-gtable) + ("r-plyr" ,r-plyr) + ("r-progress" ,r-progress) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-reshape" ,r-reshape))) + (home-page "https://ggobi.github.io/ggally") + (synopsis "Extension to ggplot2") + (description + "The R package ggplot2 is a plotting system based on the grammar of +graphics. GGally extends ggplot2 by adding several functions to reduce the +complexity of combining geometric objects with transformed data. Some of +these functions include a pairwise plot matrix, a two group pairwise plot +matrix, a parallel coordinates plot, a survival plot, and several functions to +plot networks.") + (license license:gpl2+))) From 3349faecf532dd88450a4e85db6d571c657d07d1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 21:55:57 +0200 Subject: [PATCH 1038/1227] gnu: Add r-proxy. * gnu/packages/cran.scm (r-proxy): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 35d0965143..7526493376 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -530,3 +530,23 @@ these functions include a pairwise plot matrix, a two group pairwise plot matrix, a parallel coordinates plot, a survival plot, and several functions to plot networks.") (license license:gpl2+))) + +(define-public r-proxy + (package + (name "r-proxy") + (version "0.4-17") + (source + (origin + (method url-fetch) + (uri (cran-uri "proxy" version)) + (sha256 + (base32 + "0bg1fn96qrj8whmnl7c3gv244ksm2ykxxsd0zrmw4lb6465pizl2")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/proxy") + (synopsis "Distance and similarity measures") + (description + "This package provides an extensible framework for the efficient +calculation of auto- and cross-proximities, along with implementations of the +most popular ones.") + (license license:gpl2))) From bc0081e76f23c03f0cd71c9f4fd6b1423a0c6dc1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:05:53 +0200 Subject: [PATCH 1039/1227] gnu: Add r-sp. * gnu/packages/cran.scm (r-sp): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 7526493376..811dd9ba79 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -550,3 +550,27 @@ plot networks.") calculation of auto- and cross-proximities, along with implementations of the most popular ones.") (license license:gpl2))) + +(define-public r-sp + (package + (name "r-sp") + (version "1.2-4") + (source + (origin + (method url-fetch) + (uri (cran-uri "sp" version)) + (sha256 + (base32 + "0crba3j00mb2xv2yk60rpa57gn97xq4ql3a6p9cjzqjxzv2cknk2")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lattice" ,r-lattice))) + (home-page "http://cran.r-project.org/web/packages/sp") + (synopsis "Classes and methods for spatial data") + (description + "This package provides classes and methods for spatial data; the classes +document where the spatial location information resides, for 2D or 3D data. +Utility functions are provided, e.g. for plotting data as maps, spatial +selection, as well as methods for retrieving coordinates, for subsetting, +print, summary, etc.") + (license license:gpl2+))) From b723dedf817e02eda27a222c770d0df3a43b39c0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:09:31 +0200 Subject: [PATCH 1040/1227] gnu: Add r-rook. * gnu/packages/web.scm (r-rook): New variable. --- gnu/packages/web.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 5459a3051d..2649d68a21 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -4879,3 +4879,27 @@ responsive, and powerful applications with minimal effort.") communicate with each other, with Shiny or without (i.e. static @code{.html} files). It currently supports linked brushing and filtering.") (license l:expat))) + +(define-public r-rook + (package + (name "r-rook") + (version "1.1-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "Rook" version)) + (sha256 + (base32 + "00s9a0kr9rwxvlq433daxjk4ji8m0w60hjdprf502msw9kxfrx00")))) + (properties `((upstream-name . "Rook"))) + (build-system r-build-system) + (propagated-inputs `(("r-brew" ,r-brew))) + (home-page "http://cran.r-project.org/web/packages/Rook") + (synopsis "Web server interface for R") + (description + "This package contains the Rook specification and convenience software +for building and running Rook applications. A Rook application is an R +reference class object that implements a @code{call} method or an R closure +that takes exactly one argument, an environment, and returns a list with three +named elements: the @code{status}, the @code{headers}, and the @code{body}.") + (license l:gpl2))) From e389d10f559911224b960c88f80fcbbabe0bb632 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:13:22 +0200 Subject: [PATCH 1041/1227] gnu: Add r-rmtstat. * gnu/packages/cran.scm (r-rmtstat): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 811dd9ba79..88e275c738 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -574,3 +574,24 @@ Utility functions are provided, e.g. for plotting data as maps, spatial selection, as well as methods for retrieving coordinates, for subsetting, print, summary, etc.") (license license:gpl2+))) + +(define-public r-rmtstat + (package + (name "r-rmtstat") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "RMTstat" version)) + (sha256 + (base32 + "1nn25q4kmh9kj975sxkrpa97vh5irqrlqhwsfinbck6h6ia4rsw1")))) + (properties `((upstream-name . "RMTstat"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/RMTstat") + (synopsis "Distributions, statistics and tests derived from random matrix theory") + (description + "This package provides functions for working with the Tracy-Widom laws +and other distributions related to the eigenvalues of large Wishart +matrices.") + (license license:bsd-3))) From 6427e62005fe5176ff61a5eb0b120b6aa127082f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:14:42 +0200 Subject: [PATCH 1042/1227] gnu: Add r-lmoments. * gnu/packages/cran.scm (r-lmoments): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 88e275c738..7bf8e1e134 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -595,3 +595,25 @@ print, summary, etc.") and other distributions related to the eigenvalues of large Wishart matrices.") (license license:bsd-3))) + +(define-public r-lmoments + (package + (name "r-lmoments") + (version "1.2-3") + (source + (origin + (method url-fetch) + (uri (cran-uri "Lmoments" version)) + (sha256 + (base32 + "13p0r4w16jvjnyjmkhkp3dwdfr1gap2l0k4k5jy41m8nc5fvcx79")))) + (properties `((upstream-name . "Lmoments"))) + (build-system r-build-system) + (home-page "http://www.tilastotiede.fi/juha_karvanen.html") + (synopsis "L-moments and quantile mixtures") + (description + "This package contains functions to estimate L-moments and trimmed +L-moments from the data. It also contains functions to estimate the +parameters of the normal polynomial quantile mixture and the Cauchy polynomial +quantile mixture from L-moments and trimmed L-moments.") + (license license:gpl2))) From 28476b4bc04cf72051a6332734f00c7bd579f740 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:16:26 +0200 Subject: [PATCH 1043/1227] gnu: Add r-distillery. * gnu/packages/cran.scm (r-distillery): New variable. --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 7bf8e1e134..0247963134 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -617,3 +617,24 @@ L-moments from the data. It also contains functions to estimate the parameters of the normal polynomial quantile mixture and the Cauchy polynomial quantile mixture from L-moments and trimmed L-moments.") (license license:gpl2))) + +(define-public r-distillery + (package + (name "r-distillery") + (version "1.0-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "distillery" version)) + (sha256 + (base32 + "12m4cacvc18fd3aayc8iih5q6bwsmvf29b55fwp7vs8wp1h8nd8c")))) + (build-system r-build-system) + (home-page "http://www.ral.ucar.edu/staff/ericg") + (synopsis "Functions for confidence intervals and object information") + (description + "This package provides some very simple method functions for confidence +interval calculation and to distill pertinent information from a potentially +complex object; primarily used in common with the packages extRemes and +SpatialVx.") + (license license:gpl2+))) From 58db98c9f213b4010942ea9254d0e877ff95a132 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:19:44 +0200 Subject: [PATCH 1044/1227] gnu: Add r-extremes. * gnu/packages/cran.scm (r-extremes): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 0247963134..b1eb913458 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -638,3 +638,28 @@ interval calculation and to distill pertinent information from a potentially complex object; primarily used in common with the packages extRemes and SpatialVx.") (license license:gpl2+))) + +(define-public r-extremes + (package + (name "r-extremes") + (version "2.0-8") + (source + (origin + (method url-fetch) + (uri (cran-uri "extRemes" version)) + (sha256 + (base32 + "0pnpib3g2r9x8hfqhvq23j8m3jh62lp28ipnqir5yadnzv850gfm")))) + (properties `((upstream-name . "extRemes"))) + (build-system r-build-system) + (propagated-inputs + `(("r-car" ,r-car) + ("r-distillery" ,r-distillery) + ("r-lmoments" ,r-lmoments))) + (home-page "http://www.assessment.ucar.edu/toolkit/") + (synopsis "Extreme value analysis") + (description + "ExtRemes is a suite of functions for carrying out analyses on the +extreme values of a process of interest; be they block maxima over long blocks +or excesses over a high threshold.") + (license license:gpl2+))) From 062b6dbd258661a4271a6115faf9d6d35b4d86ea Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:25:31 +0200 Subject: [PATCH 1045/1227] gnu: Add r-lmtest. * gnu/packages/cran.scm (r-lmtest): New variable. --- gnu/packages/cran.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b1eb913458..8200ccfafa 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -22,6 +22,7 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system r) + #:use-module (gnu packages gcc) #:use-module (gnu packages perl) #:use-module (gnu packages statistics) #:use-module (gnu packages web)) @@ -663,3 +664,28 @@ SpatialVx.") extreme values of a process of interest; be they block maxima over long blocks or excesses over a high threshold.") (license license:gpl2+))) + +(define-public r-lmtest + (package + (name "r-lmtest") + (version "0.9-35") + (source + (origin + (method url-fetch) + (uri (cran-uri "lmtest" version)) + (sha256 + (base32 + "107br1l7p52wxvazs031f4h5ryply97qywg9dzrkw4ydnvqq4j9g")))) + (build-system r-build-system) + (propagated-inputs + `(("r-zoo" ,r-zoo))) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "http://cran.r-project.org/web/packages/lmtest") + (synopsis "Testing linear regression models") + (description + "This package provides a collection of tests, data sets, and examples for +diagnostic checking in linear regression models. Furthermore, some generic +tools for inference in parametric models are provided.") + ;; Either version is okay + (license (list license:gpl2 license:gpl3)))) From d6b156dc049a8d808792249df36cd84ce70dca3f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:50:00 +0200 Subject: [PATCH 1046/1227] gnu: Add r-inline. * gnu/packages/cran.scm (r-inline): New variable. --- gnu/packages/cran.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8200ccfafa..9e50eed3cd 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -689,3 +689,23 @@ diagnostic checking in linear regression models. Furthermore, some generic tools for inference in parametric models are provided.") ;; Either version is okay (license (list license:gpl2 license:gpl3)))) + +(define-public r-inline + (package + (name "r-inline") + (version "0.3.14") + (source (origin + (method url-fetch) + (uri (cran-uri "inline" version)) + (sha256 + (base32 + "0cf9vya9h4znwgp6s1nayqqmh6mwyw7jl0isk1nx4j2ijszxcd7x")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/inline") + (synopsis "Functions to inline C, C++, Fortran function calls from R") + (description + "This package provides functionality to dynamically define R functions +and S4 methods with inlined C, C++ or Fortran code supporting @code{.C} and +@code{.Call} calling conventions.") + ;; Any version of the LGPL. + (license license:lgpl3+))) From 8c72b830968a50a6f446bcfe18581f1d04ddb169 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Aug 2017 22:52:34 +0200 Subject: [PATCH 1047/1227] gnu: Add r-bbmle. * gnu/packages/cran.scm (r-bbmle): New variable. --- gnu/packages/cran.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 9e50eed3cd..e604799c4e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -709,3 +709,28 @@ and S4 methods with inlined C, C++ or Fortran code supporting @code{.C} and @code{.Call} calling conventions.") ;; Any version of the LGPL. (license license:lgpl3+))) + +(define-public r-bbmle + (package + (name "r-bbmle") + (version "1.0.19") + (source + (origin + (method url-fetch) + (uri (cran-uri "bbmle" version)) + (sha256 + (base32 + "014h6mw16gv4acs2p78dy7lla7s428n633aybsb1mbi6250dg0p8")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lattice" ,r-lattice) + ("r-mass" ,r-mass) + ("r-numderiv" ,r-numderiv))) + (home-page "http://cran.r-project.org/web/packages/bbmle") + (synopsis "Tools for General Maximum Likelihood Estimation") + (description + "Methods and functions for fitting maximum likelihood models in R. This +package modifies and extends the @code{mle} classes in the @code{stats4} +package.") + ;; Any version of the GPL + (license (list license:gpl2 license:gpl3)))) From 97cb349dc10073771b438069e33ebf068dc2d3b3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 15:07:41 +0200 Subject: [PATCH 1048/1227] gnu: r-trimcluster: Update license. * gnu/packages/statistics.scm (r-trimcluster)[license]: Also specify GPLv3+. --- gnu/packages/statistics.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 8e7b815d6c..80465ea102 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4724,7 +4724,8 @@ multivariate analysis.") "The trimmed k-means clustering method by Cuesta-Albertos, Gordaliza and Matran (1997). This optimizes the k-means criterion under trimming a portion of the points.") - (license license:gpl2+))) + ;; Any GPL version + (license (list license:gpl2+ license:gpl3+)))) (define-public r-fpc (package From b31e4a96932a4c88f3eed19691d059a9fdc94b01 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 14:59:48 +0200 Subject: [PATCH 1049/1227] gnu: Add r-emdbook. * gnu/packages/cran.scm (r-emdbook): New variable. --- gnu/packages/cran.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index e604799c4e..ae4d807dcb 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -734,3 +734,31 @@ package modifies and extends the @code{mle} classes in the @code{stats4} package.") ;; Any version of the GPL (license (list license:gpl2 license:gpl3)))) + +(define-public r-emdbook + (package + (name "r-emdbook") + (version "1.3.9") + (source + (origin + (method url-fetch) + (uri (cran-uri "emdbook" version)) + (sha256 + (base32 + "09xbdyw8a4pvrsg3ryr8drby0njy4avc5wsjj4ffibdaicpchy69")))) + (build-system r-build-system) + (propagated-inputs + `(("r-bbmle" ,r-bbmle) + ("r-coda" ,r-coda) + ("r-lattice" ,r-lattice) + ("r-mass" ,r-mass) + ("r-plyr" ,r-plyr) + ("r-rcpp" ,r-rcpp))) + (home-page "http://www.math.mcmaster.ca/bolker/emdbook") + (synopsis "Support functions and data for \"Ecological Models and Data\"") + (description + "This package provides auxiliary functions and data sets for \"Ecological +Models and Data\", a book presenting maximum likelihood estimation and related +topics for ecologists (ISBN 978-0-691-12522-0).") + ;; Any GPL version + (license (list license:gpl2 license:gpl3)))) From d4a1e918cbbc583bf626bda44bbb862bca8e9265 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 15:11:45 +0200 Subject: [PATCH 1050/1227] gnu: Add r-fastseg. * gnu/packages/bioinformatics.scm (r-fastseg): New variable. --- gnu/packages/bioinformatics.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 56f2d5d6c5..5dbf2ce734 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -9289,6 +9289,36 @@ modification. The client creates and manages a local cache of files retrieved by the user, helping with quick and reproducible access.") (license license:artistic2.0))) +(define-public r-fastseg + (package + (name "r-fastseg") + (version "1.22.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "fastseg" version)) + (sha256 + (base32 + "083wiz03q9mynwchs9frlpp6c84dncri5ncibx6h82p228cpja6h")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-s4vectors" ,r-s4vectors))) + (home-page "http://www.bioinf.jku.at/software/fastseg/index.html") + (synopsis "Fast segmentation algorithm for genetic sequencing data") + (description + "Fastseg implements a very fast and efficient segmentation algorithm. +It can segment data from DNA microarrays and data from next generation +sequencing for example to detect copy number segments. Further it can segment +data from RNA microarrays like tiling arrays to identify transcripts. Most +generally, it can segment data given as a matrix or as a vector. Various data +formats can be used as input to fastseg like expression set objects for +microarrays or GRanges for sequencing data.") + (license license:lgpl2.0+))) + (define htslib-for-sambamba (let ((commit "2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5")) (package From 212f61204030ce2a36e4770607bc4e17df08ebbe Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 15:13:53 +0200 Subject: [PATCH 1051/1227] gnu: Add r-qvalue. * gnu/packages/bioinformatics.scm (r-qvalue): New variable. --- gnu/packages/bioinformatics.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 5dbf2ce734..2728d7a26e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -9319,6 +9319,35 @@ formats can be used as input to fastseg like expression set objects for microarrays or GRanges for sequencing data.") (license license:lgpl2.0+))) +(define-public r-qvalue + (package + (name "r-qvalue") + (version "2.8.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "qvalue" version)) + (sha256 + (base32 + "1dxdwa767a9r8n61r272ypi09qblcdfpzzwkmri74y5mbp1r3y4i")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-reshape2" ,r-reshape2))) + (home-page "http://github.com/jdstorey/qvalue") + (synopsis "Q-value estimation for false discovery rate control") + (description + "This package takes a list of p-values resulting from the simultaneous +testing of many hypotheses and estimates their q-values and local @dfn{false +discovery rate} (FDR) values. The q-value of a test measures the proportion +of false positives incurred when that particular test is called significant. +The local FDR measures the posterior probability the null hypothesis is true +given the test's p-value. Various plots are automatically generated, allowing +one to make sensible significance cut-offs. The software can be applied to +problems in genomics, brain imaging, astrophysics, and data mining.") + ;; Any version of the LGPL. + (license license:lgpl3+))) + (define htslib-for-sambamba (let ((commit "2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5")) (package From a3e36d377284eddcbf3126e5e2a7e53bd9a85822 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 15:35:47 +0200 Subject: [PATCH 1052/1227] gnu: Add r-lpsolve. * gnu/packages/cran.scm (r-lpsolve): New variable. --- gnu/packages/cran.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ae4d807dcb..a912394daa 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -762,3 +762,25 @@ Models and Data\", a book presenting maximum likelihood estimation and related topics for ecologists (ISBN 978-0-691-12522-0).") ;; Any GPL version (license (list license:gpl2 license:gpl3)))) + +(define-public r-lpsolve + (package + (name "r-lpsolve") + (version "5.6.13") + (source + (origin + (method url-fetch) + (uri (cran-uri "lpSolve" version)) + (sha256 + (base32 + "13a9ry8xf5j1f2j6imqrxdgxqz3nqp9sj9b4ivyx9sid459irm6m")))) + (properties `((upstream-name . "lpSolve"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/lpSolve") + (synopsis "R interface to Lp_solve to solve linear/integer programs") + (description + "Lp_solve is software for solving linear, integer and mixed integer +programs. This implementation supplies a \"wrapper\" function in C and some R +functions that solve general linear/integer problems, assignment problems, and +transportation problems.") + (license license:lgpl2.0))) From 521e0703d8bc925c8b4845339a9a2e17307c87ca Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 15:42:21 +0200 Subject: [PATCH 1053/1227] gnu: Add r-limsolve. * gnu/packages/cran.scm (r-limsolve): New variable. --- gnu/packages/cran.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a912394daa..746c778b2c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -23,6 +23,7 @@ #:use-module (guix utils) #:use-module (guix build-system r) #:use-module (gnu packages gcc) + #:use-module (gnu packages maths) #:use-module (gnu packages perl) #:use-module (gnu packages statistics) #:use-module (gnu packages web)) @@ -784,3 +785,37 @@ programs. This implementation supplies a \"wrapper\" function in C and some R functions that solve general linear/integer problems, assignment problems, and transportation problems.") (license license:lgpl2.0))) + +(define-public r-limsolve + (package + (name "r-limsolve") + (version "1.5.5.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "limSolve" version)) + (sha256 + (base32 + "1ll6ir42h3g2fzf0wqai213bm82gpwjj2hfma2np3mz024sc09rg")))) + (properties `((upstream-name . "limSolve"))) + (build-system r-build-system) + (propagated-inputs + `(("r-lpsolve" ,r-lpsolve) + ("r-mass" ,r-mass) + ("r-quadprog" ,r-quadprog))) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "http://cran.r-project.org/web/packages/limSolve") + (synopsis "Solving linear inverse models") + (description + "This package provides functions that: + +@enumerate +@item find the minimum/maximum of a linear or quadratic function, +@item sample an underdetermined or overdetermined system, +@item solve a linear system Ax=B for the unknown x. +@end enumerate + +It includes banded and tridiagonal linear systems. The package calls Fortran +functions from LINPACK.") + ;; Any GPL version. + (license (list license:gpl2+ license:gpl3+)))) From 6b4a9aec239e347de0e1cc323b1be1980102efd2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 15:52:11 +0200 Subject: [PATCH 1054/1227] gnu: Add r-fitdistrplus. * gnu/packages/cran.scm (r-fitdistrplus): New variable. --- gnu/packages/cran.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 746c778b2c..134139017f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -819,3 +819,31 @@ It includes banded and tridiagonal linear systems. The package calls Fortran functions from LINPACK.") ;; Any GPL version. (license (list license:gpl2+ license:gpl3+)))) + +(define-public r-fitdistrplus + (package + (name "r-fitdistrplus") + (version "1.0-9") + (source + (origin + (method url-fetch) + (uri (cran-uri "fitdistrplus" version)) + (sha256 + (base32 + "18x9454g598d54763k3hvi33iszifk7sxvhd1zg5r8z1vpixx3z6")))) + (build-system r-build-system) + (propagated-inputs + `(("r-mass" ,r-mass) + ("r-survival" ,r-survival))) + (home-page "http://riskassessment.r-forge.r-project.org") + (synopsis "Fitting a parametric distribution from data") + (description + "This package extends the @code{fitdistr} function of the MASS package +with several functions to help the fit of a parametric distribution to +non-censored or censored data. Censored data may contain left-censored, +right-censored and interval-censored values, with several lower and upper +bounds. In addition to @dfn{maximum likelihood estimation} (MLE), the package +provides moment matching (MME), quantile matching (QME) and maximum +goodness-of-fit estimation (MGE) methods (available only for non-censored +data). Weighted versions of MLE, MME and QME are available.") + (license license:gpl2+))) From 8d22007380df9ff2e5de44f20fde3d265ee781d1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 15:53:13 +0200 Subject: [PATCH 1055/1227] gnu: Add r-energy. * gnu/packages/cran.scm (r-energy): New variable. --- gnu/packages/cran.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 134139017f..ce2c2b5312 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -847,3 +847,32 @@ provides moment matching (MME), quantile matching (QME) and maximum goodness-of-fit estimation (MGE) methods (available only for non-censored data). Weighted versions of MLE, MME and QME are available.") (license license:gpl2+))) + +(define-public r-energy + (package + (name "r-energy") + (version "1.7-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "energy" version)) + (sha256 + (base32 + "1g4hqi6mgsnd1w4q7dd2m40ljh2jdmvad91ksbq9fscnrqpvji1x")))) + (build-system r-build-system) + (propagated-inputs + `(("r-boot" ,r-boot) + ("r-rcpp" ,r-rcpp))) + (home-page "http://cran.r-project.org/web/packages/energy") + (synopsis "Multivariate inference via the energy of data") + (description + "This package provides e-statistics (energy) tests and statistics for +multivariate and univariate inference, including distance correlation, +one-sample, two-sample, and multi-sample tests for comparing multivariate +distributions, are implemented. Measuring and testing multivariate +independence based on distance correlation, partial distance correlation, +multivariate goodness-of-fit tests, clustering based on energy distance, +testing for multivariate normality, distance components (disco) for +non-parametric analysis of structured data, and other energy +statistics/methods are implemented.") + (license license:gpl2+))) From abcb849405ba75af41f8e090af587bc999667b0f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 16:03:56 +0200 Subject: [PATCH 1056/1227] gnu: Add r-suppdists. * gnu/packages/cran.scm (r-suppdists): New variable. --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ce2c2b5312..d1f684e374 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -876,3 +876,27 @@ testing for multivariate normality, distance components (disco) for non-parametric analysis of structured data, and other energy statistics/methods are implemented.") (license license:gpl2+))) + +(define-public r-suppdists + (package + (name "r-suppdists") + (version "1.1-9.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "SuppDists" version)) + (sha256 + (base32 + "1ffx8wigqqvz2pnh06jjc0fnf4vq9z2rhwk2y3f9aszn18ap3dgw")))) + (properties `((upstream-name . "SuppDists"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/SuppDists") + (synopsis "Supplementary distributions") + (description + "This package provides ten distributions supplementing those built into +R. Inverse Gauss, Kruskal-Wallis, Kendall's Tau, Friedman's chi squared, +Spearman's rho, maximum F ratio, the Pearson product moment correlation +coefficient, Johnson distributions, normal scores and generalized +hypergeometric distributions. In addition two random number generators of +George Marsaglia are included.") + (license license:gpl2+))) From 05e8a3ef0f68810cffd467e07be9abc0ece59552 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Aug 2017 16:05:38 +0200 Subject: [PATCH 1057/1227] gnu: Add r-ksamples. * gnu/packages/cran.scm (r-ksamples): New variable. --- gnu/packages/cran.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d1f684e374..bb7576352f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -900,3 +900,31 @@ coefficient, Johnson distributions, normal scores and generalized hypergeometric distributions. In addition two random number generators of George Marsaglia are included.") (license license:gpl2+))) + +(define-public r-ksamples + (package + (name "r-ksamples") + (version "1.2-6") + (source + (origin + (method url-fetch) + (uri (cran-uri "kSamples" version)) + (sha256 + (base32 + "1pbam0zqq44slpxdgl2s2fsfdgl7i0pgm8bzlvnm0fy0na24bgdj")))) + (properties `((upstream-name . "kSamples"))) + (build-system r-build-system) + (propagated-inputs + `(("r-suppdists" ,r-suppdists))) + (home-page "http://cran.r-project.org/web/packages/kSamples") + (synopsis "K-Sample rank tests and their combinations") + (description + "This package provides tools to compares k samples using the +Anderson-Darling test, Kruskal-Wallis type tests with different rank score +criteria, Steel's multiple comparison test, and the Jonckheere-Terpstra (JT) +test. It computes asymptotic, simulated or (limited) exact P-values, all +valid under randomization, with or without ties, or conditionally under random +sampling from populations, given the observed tie pattern. Except for Steel's +test and the JT test it also combines these tests across several blocks of +samples.") + (license license:gpl2+))) From f30ff28b96c0e629dc4a6dd3b63ffcf9620f1500 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Thu, 17 Aug 2017 19:20:38 +0800 Subject: [PATCH 1058/1227] gnu: mariadb: Update to 10.1.26 [fixes CVE-2017-{3636,3641,3653}]. * gnu/packages/databases.scm (mariadb): Update to 10.1.26. Signed-off-by: Leo Famulari --- gnu/packages/databases.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 5944a9dddd..77abed691a 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2017 Thomas Danckaert ;;; Copyright © 2017 Arun Isaac ;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; Copyright © 2017 Alex Vong ;;; ;;; This file is part of GNU Guix. ;;; @@ -396,7 +397,7 @@ Language.") (define-public mariadb (package (name "mariadb") - (version "10.1.25") + (version "10.1.26") (source (origin (method url-fetch) (uri (string-append "https://downloads.mariadb.org/f/" @@ -404,7 +405,7 @@ Language.") name "-" version ".tar.gz")) (sha256 (base32 - "1mm0n8sl6grajk5rbrx55333laz5dg2abyl8mlsn7h8vdymfq1bj")))) + "0ggpdcal0if9y6h9hp1yv2q65cbkjfl4p8rqk68a5pk7k75v325s")))) (build-system cmake-build-system) (arguments '(#:configure-flags From 8a39e4a553ba1fff6673e73ff84d2c12d874d026 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Aug 2017 17:56:40 +0200 Subject: [PATCH 1059/1227] gnu: sassc: Update to 3.4.5. * gnu/packages/web.scm (sassc): Update to 3.4.5. [arguments]: Add PREFIX to make-flags, disable tests, remove custom install phase. --- gnu/packages/web.scm | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 2649d68a21..6eb9833f21 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -933,7 +933,7 @@ minimum to provide high performance operation.") (define-public sassc ;; libsass must be statically linked and it isn't included in the sassc ;; release tarballs, hence this odd package recipe. - (let* ((version "3.2.5") + (let* ((version "3.4.5") (libsass (origin (method url-fetch) @@ -943,7 +943,7 @@ minimum to provide high performance operation.") (file-name (string-append "libsass-" version ".tar.gz")) (sha256 (base32 - "1x25k6p1s1yzsdpzb7bzh8japilmi1mk3z96q66pycbinj9z9is4"))))) + "1j22138l5ymqjfj5zan9d2hipa3ahjmifgpjahqy1smlg5sb837x"))))) (package (name "sassc") (version version) @@ -954,11 +954,16 @@ minimum to provide high performance operation.") (file-name (string-append "sassc-" version ".tar.gz")) (sha256 (base32 - "1xf3w75w840rj0nx375rxi7mcv1ngqqq8p3zrzjlyx8jfpnldmv5")))) + "1xk4kmmvziz9sal3swpqa10q0s289xjpcz8aggmly8mvxvmngsi9")))) (build-system gnu-build-system) (arguments - `(#:make-flags '("CC=gcc") + `(#:make-flags + (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:test-target "test" + ;; FIXME: "make test" rebuilds the application and gets lost in a + ;; non-existing directory. + #:tests? #f #:phases (modify-phases %standard-phases (delete 'configure) @@ -968,13 +973,7 @@ minimum to provide high performance operation.") (begin (setenv "SASS_LIBSASS_PATH" (string-append (getcwd) "/libsass-" ,version)) - #t)))) - (replace 'install ; no install target - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) - (mkdir-p bin) - (copy-file "bin/sassc" (string-append bin "/sassc")) - #t)))))) + #t))))))) (inputs `(("libsass" ,libsass))) (synopsis "CSS pre-processor") From bf3fa996543686cea4373d66b040a5991e4bb605 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Aug 2017 17:59:20 +0200 Subject: [PATCH 1060/1227] gnu: Add r-methylkit. * gnu/packages/bioinformatics.scm (r-methylkit): New variable. --- gnu/packages/bioinformatics.scm | 46 +++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 2728d7a26e..018a262129 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8668,6 +8668,52 @@ CopywriteR constitutes a widely applicable alternative to available copy number detection tools.") (license license:gpl2))) +(define-public r-methylkit + (package + (name "r-methylkit") + (version "1.2.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "methylKit" version)) + (sha256 + (base32 + "02acdjf6jl0c1glymin84pdna4farn4vv0gb6107d9iqz3y3gkmm")))) + (properties `((upstream-name . "methylKit"))) + (build-system r-build-system) + (propagated-inputs + `(("r-data-table" ,r-data-table) + ("r-emdbook" ,r-emdbook) + ("r-fastseg" ,r-fastseg) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-gtools" ,r-gtools) + ("r-iranges" ,r-iranges) + ("r-kernsmooth" ,r-kernsmooth) + ("r-limma" ,r-limma) + ("r-mclust" ,r-mclust) + ("r-qvalue" ,r-qvalue) + ("r-r-utils" ,r-r-utils) + ("r-rcpp" ,r-rcpp) + ("r-rhtslib" ,r-rhtslib) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-zlibbioc" ,r-zlibbioc))) + (inputs + `(("zlib" ,zlib))) + (home-page "http://code.google.com/p/methylkit/") + (synopsis + "DNA methylation analysis from high-throughput bisulfite sequencing results") + (description + "MethylKit is an R package for DNA methylation analysis and annotation +from high-throughput bisulfite sequencing. The package is designed to deal +with sequencing data from @dfn{Reduced representation bisulfite +sequencing} (RRBS) and its variants, but also target-capture methods and whole +genome bisulfite sequencing. It also has functions to analyze base-pair +resolution 5hmC data from experimental protocols such as oxBS-Seq and +TAB-Seq.") + (license license:artistic2.0))) + (define-public r-sva (package (name "r-sva") From dd75a9a22c7983af281f605b9b08cf7152796a24 Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Sun, 6 Aug 2017 22:33:18 +0300 Subject: [PATCH 1061/1227] gnu: Add ogre. * gnu/packages/graphics.scm (ogre): New variable. --- gnu/packages/graphics.scm | 71 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index d0e50106fa..f84cc27836 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -36,11 +36,13 @@ #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) + #:use-module (gnu packages check) #:use-module (gnu packages documentation) #:use-module (gnu packages haskell) #:use-module (gnu packages image) #:use-module (gnu packages python) #:use-module (gnu packages flex) + #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) ;libsndfile, libsamplerate @@ -60,6 +62,7 @@ #:use-module (gnu packages qt) #:use-module (gnu packages readline) #:use-module (gnu packages sdl) + #:use-module (gnu packages swig) #:use-module (gnu packages video) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) @@ -228,6 +231,74 @@ quaternions and other useful 2D and 3D math functions. Iex is an exception-handling library.") (license license:bsd-3))) +(define-public ogre + (package + (name "ogre") + (version "1.10.7") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/OGRECave/" name + "/archive/v" version ".tar.gz")) + (sha256 + (base32 + "1ab354bmwwryxr4zgxchfkm6h4z38mjgif8yn89x640rsrgw5ipj")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system cmake-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda _ + ;; It expects googletest source to be downloaded and + ;; be in a specific place. + (substitute* "Tests/CMakeLists.txt" + (("URL(.*)$" _ suffix) + (string-append "URL " suffix + "\t\tURL_HASH " + "MD5=16877098823401d1bf2ed7891d7dce36\n"))) + #t)) + (add-before 'build 'pre-build + (lambda* (#:key inputs #:allow-other-keys) + (copy-file (assoc-ref inputs "googletest-source") + (string-append (getcwd) + "/Tests/googletest-prefix/src/" + "release-1.8.0.tar.gz")) + #t))) + #:configure-flags + (list "-DOGRE_BUILD_TESTS=TRUE" + (string-append "-DCMAKE_INSTALL_RPATH=" + (assoc-ref %outputs "out") "/lib:" + (assoc-ref %outputs "out") "/lib/OGRE:" + (assoc-ref %build-inputs "googletest") "/lib") + "-DOGRE_INSTALL_DOCS=TRUE" + "-DOGRE_INSTALL_SAMPLES=TRUE" + "-DOGRE_INSTALL_SAMPLES_SOURCE=TRUE"))) + (native-inputs + `(("boost" ,boost) + ("doxygen" ,doxygen) + ("googletest-source" ,(package-source googletest)) + ("pkg-config" ,pkg-config))) + (inputs + `(("font-dejavu" ,font-dejavu) + ("freeimage" ,freeimage) + ("freetype" ,freetype) + ("glu" ,glu) + ("googletest" ,googletest) + ("sdl2" ,sdl2) + ("libxaw" ,libxaw) + ("libxrandr" ,libxrandr) + ("tinyxml" ,tinyxml) + ("zziplib" ,zziplib))) + (synopsis "Scene-oriented, flexible 3D engine written in C++") + (description + "OGRE (Object-Oriented Graphics Rendering Engine) is a scene-oriented, +flexible 3D engine written in C++ designed to make it easier and more intuitive +for developers to produce applications utilising hardware-accelerated 3D +graphics.") + (home-page "http://www.ogre3d.org/") + (license license:expat))) + (define-public openexr (package (name "openexr") From 42d0d13de841b424fc3a8ec6d0c2f2835757a615 Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Fri, 11 Aug 2017 19:56:28 +0300 Subject: [PATCH 1062/1227] gnu: Add mygui. * gnu/packages/game-development.scm (mygui): New variable. --- gnu/packages/game-development.scm | 44 +++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index c98c15e462..13e26c04ff 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2016, 2017 Julian Graham ;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; Copyright © 2017 Manolis Fragkiskos Ragkousis ;;; ;;; This file is part of GNU Guix. ;;; @@ -40,11 +41,14 @@ #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages documentation) + #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages fribidi) #:use-module (gnu packages glib) #:use-module (gnu packages gnunet) + #:use-module (gnu packages graphics) + #:use-module (gnu packages graphviz) #:use-module (gnu packages guile) #:use-module (gnu packages m4) #:use-module (gnu packages multiprecision) @@ -934,3 +938,43 @@ Joysticks, etc) and feedback devices (e.g. force feedback). Meant to be very robust and compatible with many systems and operating systems.") (home-page "https://github.com/wgois/OIS") (license license:zlib))) + +(define-public mygui + (package + (name "mygui") + (version "3.2.2") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/MyGUI/" name + "/archive/MyGUI" version ".tar.gz")) + (sha256 + (base32 + "13x7cydmj7gjmsg702sqjbfi53z265iv6j7binv3r6a7ibndfa0a")))) + (build-system cmake-build-system) + (arguments + '(#:tests? #f ; No test target + #:configure-flags + (list "-DMYGUI_INSTALL_DOCS=TRUE" + (string-append "-DOGRE_INCLUDE_DIR=" + (assoc-ref %build-inputs "ogre") + "/include/OGRE")))) + (native-inputs + `(("boost" ,boost) + ("doxygen" ,doxygen) + ("pkg-config" ,pkg-config))) + (inputs + `(("font-dejavu" ,font-dejavu) + ("freetype" ,freetype) + ("graphviz" ,graphviz) + ("libx11" ,libx11) + ("ogre" ,ogre) + ("ois" ,ois))) + (synopsis "Fast, flexible and simple GUI") + (description + "MyGUI is a library for creating Graphical User Interfaces (GUIs) for games +and 3D applications. The main goals of mygui are: speed, flexibility and ease +of use.") + (home-page "http://mygui.info/") + (license license:expat))) From e9a599cdce9998973e30e3e1d28d1dad072ec8d5 Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Sat, 12 Aug 2017 17:19:41 +0300 Subject: [PATCH 1063/1227] gnu: Add OpenMW. * gnu/packages/game-development.scm (openmw): New variable. --- gnu/packages/game-development.scm | 41 +++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 13e26c04ff..95f8697b42 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -978,3 +978,44 @@ and 3D applications. The main goals of mygui are: speed, flexibility and ease of use.") (home-page "http://mygui.info/") (license license:expat))) + +(define-public openmw + (package + (name "openmw") + (version "0.42.0") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/OpenMW/openmw/archive/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1pla8016lpbg8cgm9kia318a860f26dmiayc72p3zl35mqrc7g7w")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; No test target + #:configure-flags + (list "-DDESIRED_QT_VERSION=5"))) + (native-inputs + `(("boost" ,boost) + ("doxygen" ,doxygen) + ("pkg-config" ,pkg-config))) + (inputs + `(("bullet" ,bullet) + ("ffmpeg" ,ffmpeg) + ("libxt" ,libxt) + ("mygui" ,mygui) + ("openal" ,openal) + ("openscenegraph" ,openscenegraph) + ("qtbase" ,qtbase) + ("sdl" ,sdl2) + ("unshield" ,unshield))) + (synopsis "Free software re-implementation of the RPG Morrowind engine") + (description + "OpenMW is a free, open source and modern engine which reimplements and +extends the one that runs the 2002 open-world RPG Morrowind. The engine comes +with its own editor, called OpenMW-CS which allows the user to edit or create +their own original games.") + (home-page "https://openmw.org") + (license license:gpl3))) From c9aa261be48a2463022faf5bea1854503a5ba7d7 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Thu, 27 Apr 2017 19:49:02 +0200 Subject: [PATCH 1064/1227] gnu: services: Nginx configs can reference store * gnu/services/web.scm (config-domain-strings, config-index-strings): Emit lists instead of strings. (emit-nginx-location-config, emit-nginx-server-config) (emit-nginx-upstream-config): Rename from nginx-location-config, default-nginx-server-config, and nginx-upstream-config. Emit lists instead of strings. (flatten): New helper. (default-nginx-config): Use flatten helper to write nginx conf. This allows location configs to reference store values. Signed-off-by: Christopher Baines --- gnu/services/web.scm | 156 +++++++++++++++++++++---------------------- 1 file changed, 75 insertions(+), 81 deletions(-) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index c605d76866..97318ecb12 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -114,105 +114,99 @@ (define (config-domain-strings names) "Return a string denoting the nginx config representation of NAMES, a list of domain names." - (string-join - (map (match-lambda + (map (match-lambda ('default "_ ") - ((? string? str) (string-append str " "))) - names))) + ((? string? str) (list str " "))) + names)) (define (config-index-strings names) "Return a string denoting the nginx config representation of NAMES, a list of index files." - (string-join - (map (match-lambda - ((? string? str) (string-append str " "))) - names))) + (map (match-lambda + ((? string? str) (list str " "))) + names)) -(define nginx-location-config +(define emit-nginx-location-config (match-lambda (($ uri body) - (string-append + (list " location " uri " {\n" - " " (string-join body "\n ") "\n" + (map (lambda (x) (list " " x "\n")) body) " }\n")) (($ name body) - (string-append + (list " location @" name " {\n" - " " (string-join body "\n ") "\n" + (map (lambda (x) (list " " x "\n")) body) " }\n")))) -(define (default-nginx-server-config server) - (string-append - " server {\n" - (if (nginx-server-configuration-http-port server) - (string-append " listen " - (number->string (nginx-server-configuration-http-port server)) - ";\n") - "") - (if (nginx-server-configuration-https-port server) - (string-append " listen " - (number->string (nginx-server-configuration-https-port server)) - " ssl;\n") - "") - " server_name " (config-domain-strings - (nginx-server-configuration-server-name server)) - ";\n" - (if (nginx-server-configuration-ssl-certificate server) - (let ((certificate (nginx-server-configuration-ssl-certificate server))) - ;; lstat fails when the certificate file does not exist: it aborts - ;; and lets the user fix their configuration. - (lstat certificate) - (string-append " ssl_certificate " certificate ";\n")) - "") - (if (nginx-server-configuration-ssl-certificate-key server) - (let ((key (nginx-server-configuration-ssl-certificate-key server))) - (lstat key) - (string-append " ssl_certificate_key " key ";\n")) - "") - " root " (nginx-server-configuration-root server) ";\n" - " index " (config-index-strings (nginx-server-configuration-index server)) ";\n" - " server_tokens " (if (nginx-server-configuration-server-tokens? server) - "on" "off") ";\n" - "\n" - (string-join - (map nginx-location-config (nginx-server-configuration-locations server)) - "\n") +(define (emit-nginx-server-config server) + (let ((http-port (nginx-server-configuration-http-port server)) + (https-port (nginx-server-configuration-https-port server)) + (server-name (nginx-server-configuration-server-name server)) + (ssl-certificate (nginx-server-configuration-ssl-certificate server)) + (ssl-certificate-key + (nginx-server-configuration-ssl-certificate-key server)) + (root (nginx-server-configuration-root server)) + (index (nginx-server-configuration-index server)) + (server-tokens? (nginx-server-configuration-server-tokens? server)) + (locations (nginx-server-configuration-locations server))) + (define-syntax-parameter <> (syntax-rules ())) + (define-syntax-rule (and/l x tail ...) + (let ((x* x)) + (if x* + (syntax-parameterize ((<> (identifier-syntax x*))) + (list tail ...)) + '()))) + (list + " server {\n" + (and/l http-port " listen " (number->string <>) ";\n") + (and/l https-port " listen " (number->string <>) " ssl;\n") + " server_name " (config-domain-strings server-name) ";\n" + (and/l ssl-certificate " ssl_certificate " <> ";\n") + (and/l ssl-certificate-key " ssl_certificate_key " <> ";\n") + " root " root ";\n" + " index " (config-index-strings index) ";\n" + " server_tokens " (if server-tokens? "on" "off") ";\n" + "\n" + (map emit-nginx-location-config locations) + "\n" + " }\n"))) + +(define (emit-nginx-upstream-config upstream) + (list + " upstream " (nginx-upstream-configuration-name upstream) " {\n" + (map (lambda (server) + (simple-format #f " server ~A;\n" server)) + (nginx-upstream-configuration-servers upstream)) " }\n")) -(define (nginx-upstream-config upstream) - (string-append - " upstream " (nginx-upstream-configuration-name upstream) " {\n" - (string-concatenate - (map (lambda (server) - (simple-format #f " server ~A;\n" server)) - (nginx-upstream-configuration-servers upstream))) - " }\n")) +(define (flatten . lst) + "Return a list that recursively concatenates all sub-lists of LST." + (define (flatten1 head out) + (if (list? head) + (fold-right flatten1 out head) + (cons head out))) + (fold-right flatten1 '() lst)) (define (default-nginx-config nginx log-directory run-directory server-list upstream-list) - (mixed-text-file "nginx.conf" - "user nginx nginx;\n" - "pid " run-directory "/pid;\n" - "error_log " log-directory "/error.log info;\n" - "http {\n" - " client_body_temp_path " run-directory "/client_body_temp;\n" - " proxy_temp_path " run-directory "/proxy_temp;\n" - " fastcgi_temp_path " run-directory "/fastcgi_temp;\n" - " uwsgi_temp_path " run-directory "/uwsgi_temp;\n" - " scgi_temp_path " run-directory "/scgi_temp;\n" - " access_log " log-directory "/access.log;\n" - " include " nginx "/share/nginx/conf/mime.types;\n" - "\n" - (string-join - (filter (lambda (section) (not (null? section))) - (map nginx-upstream-config upstream-list)) - "\n") - "\n" - (let ((http (map default-nginx-server-config server-list))) - (do ((http http (cdr http)) - (block "" (string-append (car http) "\n" block ))) - ((null? http) block))) - "}\n" - "events {}\n")) + (apply mixed-text-file "nginx.conf" + (flatten + "user nginx nginx;\n" + "pid " run-directory "/pid;\n" + "error_log " log-directory "/error.log info;\n" + "http {\n" + " client_body_temp_path " run-directory "/client_body_temp;\n" + " proxy_temp_path " run-directory "/proxy_temp;\n" + " fastcgi_temp_path " run-directory "/fastcgi_temp;\n" + " uwsgi_temp_path " run-directory "/uwsgi_temp;\n" + " scgi_temp_path " run-directory "/scgi_temp;\n" + " access_log " log-directory "/access.log;\n" + " include " nginx "/share/nginx/conf/mime.types;\n" + "\n" + (map emit-nginx-upstream-config upstream-list) + (map emit-nginx-server-config server-list) + "}\n" + "events {}\n"))) (define %nginx-accounts (list (user-group (name "nginx") (system? #t)) From f2d7a492df759ab7416ff4b244e37896835f04fa Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 2 Aug 2017 15:52:36 +0100 Subject: [PATCH 1065/1227] web: Check for the existance of SSL related files. This adds back the previous behaviour of the nginx-service-type, where the service would check at the time when the configuration is generated if the SSL certificate and certificate key file exists. * gnu/services/web.scm (emit-nginx-server-config): Add back check for SSL related files. --- gnu/services/web.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index 97318ecb12..cc7adeb5e4 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -157,6 +157,16 @@ of index files." (syntax-parameterize ((<> (identifier-syntax x*))) (list tail ...)) '()))) + (for-each + (match-lambda + ((record-key . file) + (if (and file (not (file-exists? file))) + (error + (simple-format + #f + "~A in the nginx configuration for the server with name \"~A\" does not exist" record-key server-name))))) + `(("ssl-certificate" . ,ssl-certificate) + ("ssl-certificate-key" . ,ssl-certificate-key))) (list " server {\n" (and/l http-port " listen " (number->string <>) ";\n") From 821f18719d2c10b0c2a2e564940c1f51da96714c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 17 Aug 2017 14:39:31 -0400 Subject: [PATCH 1066/1227] gnu: linux-libre@4.4: Update to 4.4.83. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.83. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 212eb12775..2a838b9470 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -380,8 +380,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.82" - "01bn0vn6i22hhwiqfh29m1cir1jrvz643lz13war8k9l6h0dmmwy" + (make-linux-libre "4.4.83" + "1fv3j0w0v82aa9s9n4a4qyrxc5bpq2ag9riawlabx57a380x1n62" %intel-compatible-systems #:configuration-file kernel-config)) From 1e070766c0ad2cead233bb87a000e2e7903a0848 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 17 Aug 2017 14:40:29 -0400 Subject: [PATCH 1067/1227] gnu: linux-libre@4.9: Update to 4.9.44. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.44. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 2a838b9470..5188bd3e35 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -374,8 +374,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.43" - "0fxid4xmnrcq966vz2wsb6spw3i02pvqp2hv8xfrx7dr3hfs9nrr" + (make-linux-libre "4.9.44" + "0a92bsb5d0pyhyn5ypc8ashwxixhivdadvikcpv31376j842fmj2" %intel-compatible-systems #:configuration-file kernel-config)) From 2d72ddf529e028cdf71e183933c25790bb1165ef Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 17 Aug 2017 14:41:18 -0400 Subject: [PATCH 1068/1227] gnu: linux-libre: Update to 4.12.8. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.8. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 5188bd3e35..ce95de6278 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -364,8 +364,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.7") -(define %linux-libre-hash "1sjkxkcikdgl2w5h7c5pfyqwi29g69dxp4s2z2yavw7aicc91xfq") +(define %linux-libre-version "4.12.8") +(define %linux-libre-hash "1p4ah15qs94id2yj6lhp6abdycvgp7lvn3ccsfs7f6n34hdij0cm") (define-public linux-libre (make-linux-libre %linux-libre-version From 9fa0c0e6fa672ee48033b1567e506ffb64a58e1b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 17 Aug 2017 22:25:30 +0200 Subject: [PATCH 1069/1227] gnu: libmspack: Update to 0.6 [fixes CVE-2017-{6419,11423}]. * gnu/packages/compression.scm (libmspack): Update to 0.6. --- gnu/packages/compression.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index a732ca26de..523bedb477 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -612,14 +612,14 @@ sfArk file format to the uncompressed sf2 format.") (define-public libmspack (package (name "libmspack") - (version "0.5") + (version "0.6") (source (origin (method url-fetch) (uri (string-append "http://www.cabextract.org.uk/libmspack/libmspack-" version "alpha.tar.gz")) (sha256 - (base32 "04413hynb7zizxnkgy9riik3612dwirkpr6fcjrnfl2za9sz4rw9")))) + (base32 "08gr2pcinas6bdqz3k0286g5cnksmcx813skmdwyca6bmj1fxnqy")))) (build-system gnu-build-system) (home-page "http://www.cabextract.org.uk/libmspack/") (synopsis "Compression tools for some formats used by Microsoft") From d016b60fa350834e96dd075b6121de2c27ee2205 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 18 Aug 2017 00:17:24 +0200 Subject: [PATCH 1070/1227] gnu: wireshark: Update to 2.4.0. * gnu/packages/networking.scm (wireshark): Update to 2.4.0. Add "libssh", "libxml2", "qtbase" and "qttools" as inputs. Remove unused "bison", "flex" and "gtk+" inputs. --- gnu/packages/networking.scm | 37 +++++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 6dd6046461..3900e3b62b 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2016 Raimon Grau ;;; Copyright © 2016 Tobias Geerinckx-Rice ;;; Copyright © 2016 John Darrington -;;; Copyright © 2016 Nicolas Goaziou +;;; Copyright © 2016, 2017 Nicolas Goaziou ;;; Copyright © 2016 Eric Bavier ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016, 2017 Arun Isaac @@ -66,7 +66,9 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages qt) #:use-module (gnu packages readline) + #:use-module (gnu packages ssh) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) #:use-module (gnu packages valgrind) @@ -480,30 +482,31 @@ which can be used to encrypt a password with @code{crypt(3)}.") (define-public wireshark (package (name "wireshark") - (version "2.2.7") - (synopsis "Network traffic analyzer") + (version "2.4.0") (source (origin (method url-fetch) (uri (string-append "https://www.wireshark.org/download/src/wireshark-" - version ".tar.bz2")) + version ".tar.xz")) (sha256 (base32 - "1dfvhra5v6xhzbp097qsxi0zvirw0srbasl4v1wjf58v49idz7b8")))) - (build-system glib-or-gtk-build-system) - (inputs `(("bison" ,bison) - ("c-ares" ,c-ares) - ("flex" ,flex) + "011vvrj76z1azkpvyy2j40b1x1z56ymld508zfc4xw3gh8dv82w9")))) + (build-system gnu-build-system) + (inputs `(("c-ares" ,c-ares) + ("glib" ,glib) ("gnutls" ,gnutls) - ("gtk+" ,gtk+) ("libcap" ,libcap) ("libgcrypt" ,libgcrypt) ("libnl" ,libnl) ("libpcap" ,libpcap) - ("lua" ,lua-5.2) + ("libssh" ,libssh) + ("libxml2" ,libxml2) + ("lua" ,lua-5.2) ;Lua 5.3 unsupported ("krb5" ,mit-krb5) ("openssl" ,openssl) ("portaudio" ,portaudio) + ("qtbase" ,qtbase) + ("qttools" ,qttools) ("sbc" ,sbc) ("zlib" ,zlib))) (native-inputs `(("perl" ,perl) @@ -514,19 +517,21 @@ which can be used to encrypt a password with @code{crypt(3)}.") (list (string-append "--with-c-ares=" (assoc-ref %build-inputs "c-ares")) (string-append "--with-krb5=" (assoc-ref %build-inputs "krb5")) (string-append "--with-libcap=" (assoc-ref %build-inputs "libcap")) + (string-append "--with-libssh=" (assoc-ref %build-inputs "libssh")) (string-append "--with-lua=" (assoc-ref %build-inputs "lua")) (string-append "--with-pcap=" (assoc-ref %build-inputs "libpcap")) (string-append "--with-portaudio=" - (assoc-ref %build-inputs "portaudio")) + (assoc-ref %build-inputs "portaudio")) (string-append "--with-sbc=" (assoc-ref %build-inputs "sbc")) (string-append "--with-ssl=" (assoc-ref %build-inputs "openssl")) - (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib")) - "--without-qt"))) + (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib"))))) + (home-page "https://www.wireshark.org/") + (synopsis "Network traffic analyzer") (description "Wireshark is a network protocol analyzer, or @dfn{packet sniffer}, that lets you capture and interactively browse the contents of network frames.") - (license license:gpl2+) - (home-page "https://www.wireshark.org/"))) + (home-page "https://www.wireshark.org/") + (license license:gpl2+))) (define-public fping (package From d80a47f2f53a686a0aef9ecf50d5d7f35e153a09 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Wed, 2 Aug 2017 12:09:02 +0100 Subject: [PATCH 1071/1227] gnu: libnl: Add "doc" output. * gnu/packages/linux.scm (libnl)[native-inputs]: Add doc origin. [outputs]: New field. [arguments]: Add 'install-doc' phase. New field. Co-authored-by: Marius Bakke --- gnu/packages/linux.scm | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index ce95de6278..2df4c86cea 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1464,7 +1464,29 @@ transparently through a bridge.") (base32 "1r3lw3hjvqxi5zqyq2w1qadm3gisd9nlf71dkl4yplacmssnhm3h")))) (build-system gnu-build-system) - (native-inputs `(("flex" ,flex) ("bison" ,bison))) + (native-inputs + `(("bison" ,bison) + ("flex" ,flex) + ("libnl3-doc" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/thom311/libnl/releases/download/libnl" + (string-join (string-split version #\.) "_") + "/libnl-doc-" version ".tar.gz")) + (sha256 + (base32 "0srab805yj8wb13l64qjyp3mdbqapxg5vk46v3zlhhzpmxqw8j7r")))))) + (outputs '("out" "doc")) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-doc + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((dest (string-append (assoc-ref outputs "doc") + "/share/doc/libnl"))) + (mkdir-p dest) + (zero? (system* "tar" "xf" (assoc-ref inputs "libnl3-doc") + "--strip-components=1" "-C" dest)))))))) (home-page "http://www.infradead.org/~tgr/libnl/") (synopsis "NetLink protocol library suite") (description From 3eb7c000385b929583ced9c4adb9ce796512705e Mon Sep 17 00:00:00 2001 From: Dave Love Date: Wed, 2 Aug 2017 13:39:28 +0100 Subject: [PATCH 1072/1227] gnu: libnl: Add "python2" and "python3" outputs. * gnu/packages/linux.scm (libnl)[native-inputs]: Add SWIG and PKG-CONFIG. [inputs]: Add PYTHON-2 and PYTHON-3. [outputs]: Add python2, python3. [arguments]: Add 'install-python' phase. Co-authored-by: Marius Bakke --- gnu/packages/linux.scm | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 2df4c86cea..7aa04bc3e4 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -101,6 +101,7 @@ #:use-module (gnu packages xorg) #:use-module (gnu packages groff) #:use-module (gnu packages selinux) + #:use-module (gnu packages swig) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) @@ -1467,6 +1468,8 @@ transparently through a bridge.") (native-inputs `(("bison" ,bison) ("flex" ,flex) + ("pkg-config" ,pkg-config) + ("swig" ,swig) ("libnl3-doc" ,(origin (method url-fetch) @@ -1476,10 +1479,31 @@ transparently through a bridge.") "/libnl-doc-" version ".tar.gz")) (sha256 (base32 "0srab805yj8wb13l64qjyp3mdbqapxg5vk46v3zlhhzpmxqw8j7r")))))) - (outputs '("out" "doc")) + (inputs + `(("python-2" ,python-2) + ("python-3" ,python-3))) + (outputs '("out" "doc" "python2" "python3")) (arguments - `(#:phases + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) + #:phases (modify-phases %standard-phases + (add-after 'install 'install-python + (lambda* (#:key outputs #:allow-other-keys) + (define (python-inst python) + (let ((ldflags (format #f "LDFLAGS=-Wl,-rpath=~a/lib" + (assoc-ref %outputs "out"))) + (pyout (assoc-ref %outputs python))) + (and + (zero? (system (format #f "~a ~a setup.py build" + ldflags python pyout))) + (zero? + (system (format #f "~a ~a setup.py install --prefix=~a" + ldflags python pyout))) + (zero? (system* python "setup.py" "clean"))))) + (with-directory-excursion "./python" + (every python-inst '("python2" "python3"))))) (add-after 'install 'install-doc (lambda* (#:key inputs outputs #:allow-other-keys) (let ((dest (string-append (assoc-ref outputs "doc") From ae5947b0ef20eaba7066dfd6ceeb9eed982e72c3 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Wed, 2 Aug 2017 14:22:49 +0100 Subject: [PATCH 1073/1227] gnu: Add libfabric. * gnu/packages/linux.scm (libfabric): New variable. Signed-off-by: Marius Bakke --- gnu/packages/linux.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 7aa04bc3e4..52637f1332 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -4306,3 +4306,34 @@ tool, to understand the type of environment a process runs in, and for comparing system environments.") (home-page "http://github.com/jamesodhunt/procenv/") (license license:gpl3+))) + +(define-public libfabric + (package + (name "libfabric") + (version "1.4.1") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/ofiwg/libfabric/releases/download/v" + version "/libfabric-" version ".tar.bz2")) + (sha256 + (base32 "19l2m1frna1l765z4j7wl8hp4rb9wrh0hy5496685hd183hmy5pv")))) + (build-system gnu-build-system) + (inputs `(("rdma-core" ,rdma-core) + ;; TODO: add psm, psm(2). + ("libnl" ,libnl))) + (home-page "https://ofiwg.github.io/libfabric/") + (synopsis "Open Fabric Interfaces") + (description + "OpenFabrics Interfaces (OFI) is a framework focused on exporting fabric +communication services to applications. OFI is best described as a collection +of libraries and applications used to export fabric services. The key +components of OFI are: application interfaces, provider libraries, kernel +services, daemons, and test applications. + +Libfabric is a core component of OFI. It is the library that defines and +exports the user-space API of OFI, and is typically the only software that +applications deal with directly. It works in conjunction with provider +libraries, which are often integrated directly into libfabric.") + (license (list license:bsd-2 license:gpl2)))) ;dual From a099570249444af8369c1d06580a5cf687625984 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Wed, 2 Aug 2017 14:11:54 +0100 Subject: [PATCH 1074/1227] gnu: openmpi: Add RDMA and libfabric support. * gnu/packages/mpi.scm (openmpi)[inputs]: Add rdma-core, libfabric. Signed-off-by: Marius Bakke --- gnu/packages/mpi.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 54fdd35ad5..d6423aa6fc 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -126,6 +126,8 @@ bind processes, and much more.") (inputs `(("hwloc" ,hwloc "lib") ("gfortran" ,gfortran) + ("libfabric" ,libfabric) + ("rdma-core" ,rdma-core) ("valgrind" ,valgrind))) (native-inputs `(("pkg-config" ,pkg-config) From 961012a0a06f2b090bd84524ce5b44c8684200f4 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 18 Aug 2017 00:48:25 +0200 Subject: [PATCH 1075/1227] gnu: Add missing import. This is a followup to d016b60fa350834e96dd075b6121de2c27ee2205. * gnu/packages/networking.scm (gnu): Use (gnu packages glib). --- gnu/packages/networking.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 3900e3b62b..c329c463f3 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -55,6 +55,7 @@ #:use-module (gnu packages dejagnu) #:use-module (gnu packages flex) #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) #:use-module (gnu packages gtk) #:use-module (gnu packages libidn) From 52d445f130a302f75f5f60f7652f0fd2f78687e9 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sat, 5 Aug 2017 22:28:24 +0530 Subject: [PATCH 1076/1227] gnu: Add rss-bridge. * gnu/packages/web.scm (rss-bridge): New variable. --- gnu/packages/web.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 6eb9833f21..1629c293d4 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -4902,3 +4902,43 @@ reference class object that implements a @code{call} method or an R closure that takes exactly one argument, an environment, and returns a list with three named elements: the @code{status}, the @code{headers}, and the @code{body}.") (license l:gpl2))) + +(define-public rss-bridge + (package + (name "rss-bridge") + (version "2017-08-03") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/RSS-Bridge/rss-bridge/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "05s16y552hbyj91s7bnlkx1bi64s6aw0fjy29az8via3i3b21yhl")))) + (build-system trivial-build-system) + (native-inputs + `(("gzip" ,gzip) + ("tar" ,tar))) + (arguments + '(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match)) + (let* ((out (assoc-ref %outputs "out")) + (share-rss-bridge (string-append out "/share/rss-bridge"))) + (set-path-environment-variable + "PATH" '("bin") (map (match-lambda ((_ . input) input)) + %build-inputs)) + (mkdir-p share-rss-bridge) + (system* "tar" "xvf" (assoc-ref %build-inputs "source") + "--strip-components" "1" "-C" share-rss-bridge) + #t)))) + (home-page "https://github.com/RSS-Bridge/rss-bridge") + (synopsis "Generate Atom feeds for social networking websites") + (description "rss-bridge generates Atom feeds for social networking +websites lacking feeds. Supported websites include Facebook, Twitter, +Instagram and YouTube.") + (license (list l:public-domain + l:expat)))) ;; vendor/simplehtmldom/simple_html_dom.php From 623cc34cd203c2299a33fb788551f9136f5e8325 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 17 Aug 2017 21:34:37 -0500 Subject: [PATCH 1077/1227] gnu: rpm: Update to 4.13.0.1. * gnu/packages/package-management.scm (rpm): Update to 4.13.0.1 [source]: Remove patch. Use 'version-major+minor' for url. * gnu/packages/patches/rpm-CVE-2014-8118.patch: Delete patch. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/package-management.scm | 8 +++---- gnu/packages/patches/rpm-CVE-2014-8118.patch | 25 -------------------- 3 files changed, 4 insertions(+), 30 deletions(-) delete mode 100644 gnu/packages/patches/rpm-CVE-2014-8118.patch diff --git a/gnu/local.mk b/gnu/local.mk index 63300e35bd..b4acd0ca36 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1011,7 +1011,6 @@ dist_patch_DATA = \ %D%/packages/patches/reptyr-fix-gcc-7.patch \ %D%/packages/patches/ripperx-missing-file.patch \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \ - %D%/packages/patches/rpm-CVE-2014-8118.patch \ %D%/packages/patches/rsem-makefile.patch \ %D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \ %D%/packages/patches/ruby-concurrent-test-arm.patch \ diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 1f65e21323..4fd13783d5 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -411,15 +411,15 @@ symlinks to the files in a common directory such as /usr/local.") (define-public rpm (package (name "rpm") - (version "4.12.0.1") + (version "4.13.0.1") (source (origin (method url-fetch) - (uri (string-append "http://rpm.org/releases/rpm-4.12.x/rpm-" + (uri (string-append "http://ftp.rpm.org/releases/rpm-" + (version-major+minor version) ".x/rpm-" version ".tar.bz2")) (sha256 (base32 - "0a82ym8phx7g0f3k6smvxnvzh7yv857l42xafk49689kzhld5pbp")) - (patches (search-patches "rpm-CVE-2014-8118.patch")))) + "03cvbwbfrhm0fa02j7828k1qp05hf2m0fradwcf2nqhrsjkppz17")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-external-db" ;use the system's bdb diff --git a/gnu/packages/patches/rpm-CVE-2014-8118.patch b/gnu/packages/patches/rpm-CVE-2014-8118.patch deleted file mode 100644 index 5fdb0f0eb2..0000000000 --- a/gnu/packages/patches/rpm-CVE-2014-8118.patch +++ /dev/null @@ -1,25 +0,0 @@ -Fix CVE-2014-8118 (integer overflow allowing arbitrary remote code -execution via crafted CPIO header). - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-8118 - -Source: -https://bugzilla.redhat.com/attachment.cgi?id=962159&action=diff - -Adopted by Debian: -http://anonscm.debian.org/cgit/collab-maint/rpm.git/plain/debian/patches/CVE-2014-8118.patch - -diff --git a/lib/cpio.c b/lib/cpio.c -index 253ff0f..600633a 100644 ---- a/lib/cpio.c -+++ b/lib/cpio.c -@@ -399,6 +399,9 @@ int rpmcpioHeaderRead(rpmcpio_t cpio, char ** path, int * fx) - - GET_NUM_FIELD(hdr.filesize, fsize); - GET_NUM_FIELD(hdr.namesize, nameSize); -+ if (nameSize <= 0 || nameSize > 4096) { -+ return RPMERR_BAD_HEADER; -+ } - - char name[nameSize + 1]; - read = Fread(name, nameSize, 1, cpio->fd); From 2c7321eaa745aff39a69ce02e1ee0dcae7ceb8ff Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 08:10:28 +0200 Subject: [PATCH 1078/1227] gnu: libconfuse: Update to 3.2.1. * gnu/packages/wm.scm (libconfuse): Update to 3.2.1. --- gnu/packages/wm.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 6e458bfdef..71a91510b2 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -73,7 +73,7 @@ (define-public libconfuse (package (name "libconfuse") - (version "3.2") + (version "3.2.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/martinh/libconfuse/" @@ -81,7 +81,7 @@ "/confuse-" version ".tar.xz")) (sha256 (base32 - "0j2fg93w22apjfqnkak8k8m395n2l7hhm9xnjx0k2v82js3bnsm4")))) + "0pnjmlj9i0alp407qd7c0vq83sz7gpsjrbdgpcn4xvzjp9r35ii3")))) (build-system gnu-build-system) (home-page "https://github.com/martinh/libconfuse") (synopsis "Configuration file parser library") From 2559401037a712f2d3c6e5be8b1aeca3679c3f74 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 08:10:56 +0200 Subject: [PATCH 1079/1227] gnu: youtube-dl: Update to 2017.08.18. * gnu/packages/video.scm (youtube-dl): Update to 2017.08.18. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 610b258dfc..2057307a30 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.08.13") + (version "2017.08.18") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1parn0xda7mp1phcj19axldifgh6mcwia6wdi3m20kidc9m4wb11")))) + "1mn3wi31k62c6drpplzp2irygjhiwprj5k7w4m0g8m4bgfdjgx57")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From 842e0e439a22081be1b4fed7ddc21d6d228afd10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Fri, 25 Nov 2016 00:08:34 +0100 Subject: [PATCH 1080/1227] Simplify remouting with MS_PRIVATE in sandbox build also fix race condition if mounts are added after mountinfo is read. --- nix/libstore/build.cc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 63540ddfc1..d68e8b2bc0 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -2086,12 +2086,8 @@ void DerivationGoal::runChild() outside of the namespace. Making a subtree private is local to the namespace, though, so setting MS_PRIVATE does not affect the outside world. */ - Strings mounts = tokenizeString(readFile("/proc/self/mountinfo", true), "\n"); - foreach (Strings::iterator, i, mounts) { - vector fields = tokenizeString >(*i, " "); - string fs = decodeOctalEscaped(fields.at(4)); - if (mount(0, fs.c_str(), 0, MS_PRIVATE, 0) == -1) - throw SysError(format("unable to make filesystem `%1%' private") % fs); + if (mount(0, "/", 0, MS_REC|MS_PRIVATE, 0) == -1) { + throw SysError("unable to make ‘/’ private mount"); } /* Bind-mount chroot directory to itself, to treat it as a From ed464f48efd80e6439441d7a9f6d0e7988fb1272 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Fri, 18 Aug 2017 11:28:02 +0200 Subject: [PATCH 1081/1227] nix: Remove unused function. * nix/libutil/util.hh: * nix/libutil/util.cc (decodeOctalEscaped): Remove unused and buggy function. --- nix/libutil/util.cc | 15 --------------- nix/libutil/util.hh | 6 ------ 2 files changed, 21 deletions(-) diff --git a/nix/libutil/util.cc b/nix/libutil/util.cc index c07754487e..768e12b5e4 100644 --- a/nix/libutil/util.cc +++ b/nix/libutil/util.cc @@ -1106,21 +1106,6 @@ bool endOfList(std::istream & str) } -string decodeOctalEscaped(const string & s) -{ - string r; - for (string::const_iterator i = s.begin(); i != s.end(); ) { - if (*i != '\\') { r += *i++; continue; } - unsigned char c = 0; - ++i; - while (i != s.end() && *i >= '0' && *i < '8') - c = c * 8 + (*i++ - '0'); - r += c; - } - return r; -} - - void ignoreException() { try { diff --git a/nix/libutil/util.hh b/nix/libutil/util.hh index e84d64d10a..6a6e07c478 100644 --- a/nix/libutil/util.hh +++ b/nix/libutil/util.hh @@ -356,12 +356,6 @@ string parseString(std::istream & str); bool endOfList(std::istream & str); -/* Escape a string that contains octal-encoded escape codes such as - used in /etc/fstab and /proc/mounts (e.g. "foo\040bar" decodes to - "foo bar"). */ -string decodeOctalEscaped(const string & s); - - /* Exception handling in destructors: print an error message, then ignore the exception. */ void ignoreException(); From c5361b7c3da564624e650d62140cb508afcb082e Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Jul 2017 23:03:32 +0530 Subject: [PATCH 1082/1227] gnu: Add rtl-sdr. * gnu/packages/ham-radio.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/packages/ham-radio.scm (rtl-sdr): New variable. --- gnu/local.mk | 1 + gnu/packages/ham-radio.scm | 52 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 gnu/packages/ham-radio.scm diff --git a/gnu/local.mk b/gnu/local.mk index b4acd0ca36..1abdeca830 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -196,6 +196,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/gv.scm \ %D%/packages/gxmessage.scm \ %D%/packages/haskell.scm \ + %D%/packages/ham-radio.scm \ %D%/packages/hexedit.scm \ %D%/packages/hugs.scm \ %D%/packages/hurd.scm \ diff --git a/gnu/packages/ham-radio.scm b/gnu/packages/ham-radio.scm new file mode 100644 index 0000000000..0f96553c65 --- /dev/null +++ b/gnu/packages/ham-radio.scm @@ -0,0 +1,52 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Arun Isaac +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages ham-radio) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (gnu packages libusb) + #:use-module (gnu packages pkg-config) + #:use-module (guix build-system cmake)) + +(define-public rtl-sdr + (package + (name "rtl-sdr") + (version "0.5.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://cgit.osmocom.org/rtl-sdr/snapshot/rtl-sdr-" + version ".tar.xz")) + (sha256 + (base32 + "08awca3v28sa4lxym4r81pzf0la0j86wbmpyhv3xd53an9gkpjy9")))) + (build-system cmake-build-system) + (inputs + `(("libusb" ,libusb))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:configure-flags '("-DDETACH_KERNEL_DRIVER=ON") + #:tests? #f)) ; No tests + (home-page "https://osmocom.org/projects/sdr/wiki/rtl-sdr") + (synopsis "Software defined radio driver for Realtek RTL2832U") + (description "DVB-T dongles based on the Realtek RTL2832U can be used as a +cheap software defined radio, since the chip allows transferring the raw I/Q +samples to the host. @code{rtl-sdr} provides drivers for this purpose.") + (license license:gpl2+))) From 1286ff6161209d6731fdad666533adb52cd85daf Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 18 Aug 2017 14:31:06 +0200 Subject: [PATCH 1083/1227] gnu: giac-xcas: Update to 1.2.3-57. * gnu/packages/algebra.scm (giac-xcas): Update to 1.2.3-57. --- gnu/packages/algebra.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index d4405a5bf9..765381cd56 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -206,7 +206,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") (define-public giac-xcas (package (name "giac-xcas") - (version "1.2.3-51") + (version "1.2.3-57") (source (origin (method url-fetch) ;; "~parisse/giac" is not used because the maintainer regularly @@ -218,7 +218,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") "source/giac_" version ".tar.gz")) (sha256 (base32 - "1w7d4sdjbvqiibnfkhrqy9np3smsysilfba9pry3q1qn5g5y6nrp")))) + "0a7c1r2rgsin671qy98yvwgkg6a81d0pp0p4p7sydhrfi1k9xpr1")))) (build-system gnu-build-system) (arguments `(#:phases From 26ca43bb60e2f9b413b73b2c92623263468e9e04 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 17 Aug 2017 21:54:09 +0300 Subject: [PATCH 1084/1227] gnu: freeipmi: Update to 1.5.7. * gnu/packages/freeipmi.scm (freeipmi): Update to 1.5.7. --- gnu/packages/freeipmi.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freeipmi.scm b/gnu/packages/freeipmi.scm index 1ad7d6393a..6708092693 100644 --- a/gnu/packages/freeipmi.scm +++ b/gnu/packages/freeipmi.scm @@ -27,14 +27,14 @@ (define-public freeipmi (package (name "freeipmi") - (version "1.5.6") + (version "1.5.7") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/freeipmi/freeipmi-" version ".tar.gz")) (sha256 (base32 - "0p3cl32wwxhyc5vkd9spmmckb78797snkmplgh0ybc7zap2bs6ib")))) + "1rdxs33klk6956rg8mn2dxwkk43y5yilvgvbcka8g6v4x0r98v5l")))) (build-system gnu-build-system) (inputs `(("libgcrypt" ,libgcrypt))) From de5a235c79d6d251b5b8f4f034926cac3325bdc7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 18 Aug 2017 15:25:38 +0300 Subject: [PATCH 1085/1227] gnu: kde-framework: Update to 5.37.0. * gnu/packages/kde-frameworks.scm (extra-cmake-modules, attica, bluez-qt, breeze-icons, kapidox, karchive, kcodecs, kconfig, kcoreaddons, kdbusaddons, kdnssd, kguiaddons, kil8n, kidletime, kitemmodules, kplotting, ksyntaxhighlighting, kwayland, kwidgetsaddons, kwindowsystem, modemmanager-qt, networkmanager-qt, oxygen-icons, solid, sonnet, threadweaver, kauth, kcompletion, kcrash, kimageformats, kjobwidgets, knotifications, kpackage, kpty, kunitconversion, baloo, kactivities, kactivities-stats, kbookmarks, kcmutils, kconfigwidgets, kdeclarative, kded, kdesignerplugin, kdesu, kemoticons, kglobalaccel, kiconthemes, kinit, kio, knewstuff, knotifyconfig, kparts, kpeople, krunner, kservice, ktexteditor, ktextwidgets, kwallet, kxmlgui, kxmlrpcclient, plasma-framework, kde-framworkintegration, kdelibs4support, khtml, kjs, kjsembed, kmediaplayer, kross): Update to 5.37.0. (bluez-qt)[arguments]: Disable tests. (kcodecs, khtml)[native-inputs]: Add gperf. (ksyntaxhighlighting)[properties]: New field, add upstream-name. (kimageformats, baloo)[arguments]: Add phase to disable failing test. (krunner)[inputs]: Add kwindowsystem. --- gnu/packages/kde-frameworks.scm | 311 +++++++++++++++++--------------- 1 file changed, 161 insertions(+), 150 deletions(-) diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index a25de39ed8..292b537a12 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -44,6 +44,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages gperf) #:use-module (gnu packages graphics) #:use-module (gnu packages gstreamer) #:use-module (gnu packages image) @@ -70,7 +71,7 @@ (define-public extra-cmake-modules (package (name "extra-cmake-modules") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -79,7 +80,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "1r3dyvrv77xrpjlzpa6yazwkknirvx1ccvdyj9x0mlk4vfi05nh5")))) + "1jr7nmhh4kyz1g454qkldfhimfjvvylqa19zna5iak08bkq8q696")))) (build-system cmake-build-system) (native-inputs `(("qtbase" ,qtbase))) ; For tests (needs qmake) @@ -254,7 +255,7 @@ Phonon-GStreamer is a backend based on the GStreamer multimedia library.") (define-public attica (package (name "attica") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -263,7 +264,7 @@ Phonon-GStreamer is a backend based on the GStreamer multimedia library.") name "-" version ".tar.xz")) (sha256 (base32 - "0l8gmsmpwzg6nzwwlnsdl6r6qkhnhirpmrkag9xpd2sbmy734x53")))) + "13jqk4w9crh8pca6n9334l1gb8bmwf86pa36k0mfh5j19dq72g2p")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -286,7 +287,7 @@ http://freedesktop.org/wiki/Specifications/open-collaboration-services/") (define-public bluez-qt (package (name "bluez-qt") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -295,7 +296,7 @@ http://freedesktop.org/wiki/Specifications/open-collaboration-services/") name "-" version ".tar.xz")) (sha256 (base32 - "040gs2a1fx996gqdx2pwxh00szb1vb85055z946nqvqfn01921df")))) + "1x6nj7vsn0sp9rckzkcbl6fwm7qzj5w98w2qys1fndb1spl7av8s")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -306,12 +307,7 @@ http://freedesktop.org/wiki/Specifications/open-collaboration-services/") (arguments `(#:configure-flags '("-DINSTALL_UDEV_RULE:BOOL=OFF") - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "DBUS_FATAL_WARNINGS" "0") - (zero? (system* "dbus-launch" "ctest" "."))))))) + #:tests? #f)) ; DBUS_FATAL_WARNINGS=0 still yields 7/8 tests failing (home-page "https://community.kde.org/Frameworks") (synopsis "QML wrapper for BlueZ") (description "bluez-qt is a Qt-style library for accessing the bluez @@ -321,7 +317,7 @@ Bluetooth stack. It is used by the KDE Bluetooth stack, BlueDevil.") (define-public breeze-icons (package (name "breeze-icons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -330,7 +326,7 @@ Bluetooth stack. It is used by the KDE Bluetooth stack, BlueDevil.") name "-" version ".tar.xz")) (sha256 (base32 - "1znzlggb6yrkw5rr2n75g7cfv9x5p9d55hss09c4i79lxrh1bk4a")))) + "17nr2phd0nxyx49igvl170ksikapgc4365z26pw0dmmw41llcbxw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -350,7 +346,7 @@ It is the default icon theme for the KDE Plasma 5 desktop.") (define-public kapidox (package (name "kapidox") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -359,7 +355,7 @@ It is the default icon theme for the KDE Plasma 5 desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "190d5z6i71jrvfna6vnlim2p9rgc33s1fxl0zarn276683i1rwvg")))) + "1xwkaamifxjghv158rwslndfd9z70rm9ixnp1mmkgw8radwsqg5v")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; has no test target @@ -392,7 +388,7 @@ documentation.") (define-public karchive (package (name "karchive") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -401,7 +397,7 @@ documentation.") name "-" version ".tar.xz")) (sha256 (base32 - "0g8jskdar2znviwh9bs3kia093wgfnhl04x4jcg2rvh78ylkpvxw")))) + "1599lql0kcx705313bfvbazr7rayr6vsiwrpiq6iwljzc7lli1im")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -426,7 +422,7 @@ GZip format, via a subclass of QIODevice.") (define-public kcodecs (package (name "kcodecs") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -435,10 +431,11 @@ GZip format, via a subclass of QIODevice.") name "-" version ".tar.xz")) (sha256 (base32 - "0k51s4qlf0kq6i8f3wrsz5lrkzjqb1j26hrmlmg57vn91r58iash")))) + "0kmk97b5vbnyb3xjxwmg3l47aka8mkf50g4p7wvr096qwplffbva")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) + ("gperf" ,gperf) ("qttools" ,qttools))) (inputs `(("qtbase" ,qtbase))) @@ -461,7 +458,7 @@ Internet).") (define-public kconfig (package (name "kconfig") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -470,7 +467,7 @@ Internet).") name "-" version ".tar.xz")) (sha256 (base32 - "0blbx6b3fk6p8cv2iywk2avn9w1411bb0g5wwv456a9ggi01988x")))) + "1f0y2gmwy05b17clr7vg1zp18l1z0fd757v02ha7cwd64yznyr5d")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -528,7 +525,7 @@ propagate their changes to their respective configuration files.") (define-public kcoreaddons (package (name "kcoreaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -537,7 +534,7 @@ propagate their changes to their respective configuration files.") name "-" version ".tar.xz")) (sha256 (base32 - "1ybr4bv8rhp4cxpf8mfsc4dk0klzrfh1z8g2cw6zasmksxmmwi90")))) + "0a45sz11d7b2d8sbr9z57mv337nbhd94fiqk3issw470n0y46g3y")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -566,7 +563,7 @@ many more.") (define-public kdbusaddons (package (name "kdbusaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -575,7 +572,7 @@ many more.") name "-" version ".tar.xz")) (sha256 (base32 - "1skblxfnjhbyiwavsfhksc2ybc2sikw3xr0js6mlfbpmvqzghn6h")) + "0745arkp4wnpwyhjq02h7lfac049cmlg5qwhf96i7ss0w54vch4i")) (patches (search-patches "kdbusaddons-kinit-file-name.patch")))) (build-system cmake-build-system) (native-inputs @@ -611,7 +608,7 @@ as well as an API to create KDED modules.") (define-public kdnssd (package (name "kdnssd") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -620,7 +617,7 @@ as well as an API to create KDED modules.") name "-" version ".tar.xz")) (sha256 (base32 - "082mdim9wykdap4fmjfayk443rbarsk1p8cn3mspx2nw047yja80")))) + "03rd6znn2qwndn4m3bb03slwyic06ry535rawgyh06lfps0fcc5z")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -638,7 +635,7 @@ infrastructure.") (define-public kguiaddons (package (name "kguiaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -647,7 +644,7 @@ infrastructure.") name "-" version ".tar.xz")) (sha256 (base32 - "1nmlwvy2jdmh0m6bmahvk68vl2rs9s28c10dkncpi6gvhsdkigqx")))) + "13g6nlw8fk135i6z3f8ichy8whxd6v4rycg80dlvm25h66rg6vn5")))) (build-system cmake-build-system) ;; TODO: Build packages for the Python bindings. Ideally this will be ;; done for all versions of python guix supports. Requires python, @@ -676,7 +673,7 @@ interfaces in the areas of colors, fonts, text, images, keyboard input.") (define-public ki18n (package (name "ki18n") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -685,7 +682,7 @@ interfaces in the areas of colors, fonts, text, images, keyboard input.") name "-" version ".tar.xz")) (sha256 (base32 - "0glvmmy01mp6hnix79aichgwjq842kgf5q5zynkg6mch85y4ary7")))) + "1c1sy4pbhlwsajs2972brdmma5val72gkil6k0a0f58nfvvg952d")))) (build-system cmake-build-system) (propagated-inputs `(("gettext" ,gettext-minimal) @@ -719,7 +716,7 @@ translation scripting.") (define-public kidletime (package (name "kidletime") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -728,7 +725,7 @@ translation scripting.") name "-" version ".tar.xz")) (sha256 (base32 - "0z8x6iz52y2m8llsp2q4qayxswkzay7ksimzy47crfag442bw24g")))) + "01m4q3l2yq83f2dpbv6jry7cjkj6bqdgfpy5b8byaf1gf9w2firs")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -746,7 +743,7 @@ or user activity.") (define-public kitemmodels (package (name "kitemmodels") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -755,7 +752,7 @@ or user activity.") name "-" version ".tar.xz")) (sha256 (base32 - "1liq1ppa7xb1dcncv25c2a0xy3l9bvb2a56cff90c0b0vwr239q5")))) + "1nlpzzp4m0ghfz1p2hrwn4lbhjhxc8b8q8kbzqbh9hmwmimbzzrr")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -805,7 +802,7 @@ model to observers (define-public kitemviews (package (name "kitemviews") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -814,7 +811,7 @@ model to observers name "-" version ".tar.xz")) (sha256 (base32 - "054accbis471zj1gbfxbc99062r2hvpb04i6w3r8fa4ml8s6brqk")))) + "17r7vnlyiiifhrz4gb4fifshn1jb4c67lhadczi8d301rzk7wwsm")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -840,7 +837,7 @@ to flat and hierarchical lists.") (define-public kplotting (package (name "kplotting") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -849,7 +846,7 @@ to flat and hierarchical lists.") name "-" version ".tar.xz")) (sha256 (base32 - "1ffy9b08128ym024wlfgnzk52vpy0mbaa91dhndpr40qcz0i67sh")))) + "0k4s0qvhjm9h1bmg16l32g4bsdrp2jrcila4dgzvrb56447px0zw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -875,7 +872,7 @@ pixel units.") (define-public ksyntaxhighlighting (package (name "ksyntaxhighlighting") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -884,7 +881,7 @@ pixel units.") "syntax-highlighting-" version ".tar.xz")) (sha256 (base32 - "0ryfwblvzj9rd5jj7l8scmbb49ygzk77ng05hrznsipczin2cjw8")))) + "1l56pb84z7sy0qq8xkd5w5v5418bm9n4qds0vd39ch655d47bl72")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -918,12 +915,13 @@ highlighting engine. It's meant as a building block for text editors as well as for simple highlighted text rendering (e.g. as HTML), supporting both integration with a custom editor as well as a ready-to-use @code{QSyntaxHighlighter} sub-class.") + (properties `((upstream-name . "syntax-highlighting"))) (license license:lgpl2.1+))) (define-public kwayland (package (name "kwayland") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -932,7 +930,7 @@ integration with a custom editor as well as a ready-to-use name "-" version ".tar.xz")) (sha256 (base32 - "1zxb9ram47vbiik8h0czyvacrdiijhnslkpcm61l4r1rb0ybb0ib")))) + "0d4c8l8k38pgj73kzlf1hsq52w31wy9wgpwph1bv0cq5yn2rjiyr")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -962,7 +960,7 @@ represented by a QPoint or a QSize.") (define-public kwidgetsaddons (package (name "kwidgetsaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -971,7 +969,7 @@ represented by a QPoint or a QSize.") name "-" version ".tar.xz")) (sha256 (base32 - "0hw87iig75mfgl5p3ph6zkwap31h357bm7rlyv5d9nnp10bq0hfg")))) + "1jmk377r1h4is2il7chh6bq8wbj21psf4b1yiw84iivg38vlpid4")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1009,7 +1007,7 @@ configuration pages, message boxes, and password requests.") (define-public kwindowsystem (package (name "kwindowsystem") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1018,7 +1016,7 @@ configuration pages, message boxes, and password requests.") name "-" version ".tar.xz")) (sha256 (base32 - "1sp2x7afhw19vmhdp2qyrmljz8h0875xjk95n8c5gzypk7sr0l83")))) + "0pd2n0j5pdv1x7wf4mwcpimnah73g6l0xidhqbpg37p829jix2k2")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1074,7 +1072,7 @@ lower level classes for interaction with the X Windowing System.") (define-public modemmanager-qt (package (name "modemmanager-qt") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1083,7 +1081,7 @@ lower level classes for interaction with the X Windowing System.") name "-" version ".tar.xz")) (sha256 (base32 - "1cf5nsc8h7djvr19fm5dphzplh1wm3asvn0a7r71spg0i7lzi89h")))) + "1fqf43kvj1v1mcdlbfxbh6sh3ycvg35aml2ywh2a684iz4qzq1aq")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1112,7 +1110,7 @@ messages.") (define-public networkmanager-qt (package (name "networkmanager-qt") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1121,7 +1119,7 @@ messages.") name "-" version ".tar.xz")) (sha256 (base32 - "05s0irvkg0g57acriablyha2wb9c7w3xhq223vdddjqpcdx0pnkl")))) + "01px9n97gyvyyfg3dp1k7dik9fprgx9i28hg8wjr2rb5dlr99jd1")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1151,7 +1149,7 @@ which are used in DBus communication.") (define-public oxygen-icons (package (name "oxygen-icons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1160,7 +1158,7 @@ which are used in DBus communication.") name "5" "-" version ".tar.xz")) (sha256 (base32 - "0cmxxssir5zbp5nlxq81h2xfd6wrxbbkydyw93dby7r56isl7ga5")))) + "1rns7n93f83qp5q11a7r5y87y0hvc0q95ar57cqy0fxsqrg4614h")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1176,7 +1174,7 @@ which are used in DBus communication.") (define-public solid (package (name "solid") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1185,7 +1183,7 @@ which are used in DBus communication.") name "-" version ".tar.xz")) (sha256 (base32 - "02kz21p3p1s1rg7gf34fr6ynhji6x97yvsfdpvbfxbhijabbh4ib")))) + "1gb9gnp1a11q5abl97b7sq1if2rqcrcs0f33sakpxf1z9y0ppg8l")))) (build-system cmake-build-system) (arguments `(#:phases @@ -1214,7 +1212,7 @@ system.") (define-public sonnet (package (name "sonnet") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1223,7 +1221,7 @@ system.") name "-" version ".tar.xz")) (sha256 (base32 - "06gxrh8rb75ydkqxk5dhlmwndnczp264jx588ryfwlf3vlnk99vs")))) + "0sb6i464riadgb2q73nj0vy6xavr2m1sszrvghr20nj7i64f3kk0")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1242,7 +1240,7 @@ ASpell and HUNSPELL.") (define-public threadweaver (package (name "threadweaver") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1251,7 +1249,7 @@ ASpell and HUNSPELL.") name "-" version ".tar.xz")) (sha256 (base32 - "1gylpl283qf1jcfyib4q5xwnpdq13hnd2cp2i7xjazdw2jp40zhr")))) + "1hb3721r1zbbyj211886sfkcxk18k0rsdhcg9ssagx10f29rpxx4")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1272,7 +1270,7 @@ uses a job-based interface to queue tasks and execute them in an efficient way." (define-public kauth (package (name "kauth") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1281,7 +1279,7 @@ uses a job-based interface to queue tasks and execute them in an efficient way." name "-" version ".tar.xz")) (sha256 (base32 - "06cw1bsp7inh5wglajm8aahy17p35ixgnijb7d74gjqzbj4cv93d")))) + "0ciz28bvbvxlv0iz0cgs31x2m1czkki21ypzqj8rg2ix8jw2p65w")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -1319,7 +1317,7 @@ utilities.") (define-public kcompletion (package (name "kcompletion") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1328,7 +1326,7 @@ utilities.") name "-" version ".tar.xz")) (sha256 (base32 - "18hvdk5b1nkh6b3vx0jajri57rl266b0qjsiwirh5wmjc81xbpcw")))) + "0qhjkqmd1jjy50hlzsdxwgnjwpfdrz3njl5n88h3nzp83yjv1ljz")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1355,7 +1353,7 @@ integrated it into your application's other widgets.") (define-public kcrash (package (name "kcrash") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1364,7 +1362,7 @@ integrated it into your application's other widgets.") name "-" version ".tar.xz")) (sha256 (base32 - "1cshay7dhbqgh62nq85vd9sm20gq9s9f70mdnzjjh1q7cajybkp3")))) + "16k2pwf3s3adgayd9vq7kk8c5gnq9g6wra4psrvs3a3c5k5am5y0")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1390,7 +1388,7 @@ application crashes.") (define-public kdoctools (package (name "kdoctools") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1399,7 +1397,7 @@ application crashes.") name "-" version ".tar.xz")) (sha256 (base32 - "145jjhsd0whmcj91zbjz2b1jyj4wasw60hbwyd4xvqds8cp0l02h")))) + "0gbc5qqim6262hvkl9pf6rynnblxb3hsw3c4ars03ip7n761y0zl")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1438,7 +1436,7 @@ from DocBook files.") (define-public kfilemetadata (package (name "kfilemetadata") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1447,7 +1445,7 @@ from DocBook files.") name "-" version ".tar.xz")) (sha256 (base32 - "1rvlg6by8daiq5ff3qlxcw9k2iq4qicsj0c8a00xfy3w4h9ip9h5")))) + "17mbm6pdi6ac61kj2qzxf7y3rbxhxg9rwqr7qy766gh3img2vq8p")))) (build-system cmake-build-system) (arguments `(#:phases @@ -1490,7 +1488,7 @@ by applications to write metadata.") (define-public kimageformats (package (name "kimageformats") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1499,7 +1497,7 @@ by applications to write metadata.") name "-" version ".tar.xz")) (sha256 (base32 - "0q9ng4clqk2dqw43nk1pmq1d61rahc3qr4dmg4y3kjvz3ahnnijw")))) + "1knha6wjzjs0vnkljwpfinzg3hg2jyh9c07ifqvd47cprl96ickg")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1511,6 +1509,11 @@ by applications to write metadata.") (arguments `(#:phases (modify-phases %standard-phases + ;; This test fails regularly, delete offending portion + (add-after 'unpack 'neuter-read-xcf-test + (lambda _ + (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.png") + (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.xcf"))) (add-before 'check 'check-setup (lambda _ ;; make Qt render "offscreen", required for tests @@ -1534,7 +1537,7 @@ formats.") (define-public kjobwidgets (package (name "kjobwidgets") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1543,7 +1546,7 @@ formats.") name "-" version ".tar.xz")) (sha256 (base32 - "0lrx761vf947mb2q1l2jgi0wgwj8cz2nn1xg0j38bh99sgddmzpf")))) + "1162dxhpspd7p1735npp0amrxr5b0j467f5651k2rv6mvqfmqr4b")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1562,7 +1565,7 @@ asynchronous jobs.") (define-public knotifications (package (name "knotifications") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1571,7 +1574,7 @@ asynchronous jobs.") name "-" version ".tar.xz")) (sha256 (base32 - "12z5hza0n5zr6mv3gkwhzb8zkrmk6dvgq8hrzwm8rzkgphjr6pi9")))) + "0gvv6jal7n4m3y30ragjlyhghq3y2782d422im9klxqzlgdgvkb6")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1608,7 +1611,7 @@ covers feedback and persistent events.") (define-public kpackage (package (name "kpackage") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1617,7 +1620,7 @@ covers feedback and persistent events.") name "-" version ".tar.xz")) (sha256 (base32 - "0wdymhcrjggxb7andz36cfk9f240vvbq5yahlxyhfp9z69lriw5q")))) + "1ikf55q2pk8vm70pqm7rmakja309zjh9z1lg0xqslq1pqd6xki7s")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1646,7 +1649,7 @@ were traditional plugins.") (define-public kpty (package (name "kpty") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1655,7 +1658,7 @@ were traditional plugins.") name "-" version ".tar.xz")) (sha256 (base32 - "00k5hhz7nf3nf47xb003ni1chi03imyrfajap6ay4zp90l8fr950")))) + "0wb873r1ycgi11s0qx3lhvz54703yz5sax6fb6wdmri5c05gzd5a")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1683,7 +1686,7 @@ and communicating with them using a pty.") (define-public kunitconversion (package (name "kunitconversion") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1692,7 +1695,7 @@ and communicating with them using a pty.") name "-" version ".tar.xz")) (sha256 (base32 - "0v4x0flbfavrzfiqh71mdkqgp1fzk4f52msvq6w60i2s3sz7hcsm")))) + "1qvq61sbv9naj5ndi5xjwx7ami0xa6bqiajr912kbbbp2257cjsi")))) (build-system cmake-build-system) (arguments `(#:phases @@ -1726,7 +1729,7 @@ gallons).") (define-public baloo (package (name "baloo") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1735,7 +1738,7 @@ gallons).") name "-" version ".tar.xz")) (sha256 (base32 - "0z53lnniq9xdk09d73z0p1xs1qmaf71m4znm4hmq956yg4yqa1ya")))) + "19sl07lhjrri40vfi8wl6azgmg08lgfb98xx110j6spjbbbnww79")))) (build-system cmake-build-system) (propagated-inputs `(("kcoreaddons" ,kcoreaddons) @@ -1770,6 +1773,12 @@ gallons).") ;; make Qt render "offscreen", required for tests (setenv "QT_QPA_PLATFORM" "offscreen") #t)) + (add-after 'unpack 'remove-failing-test + ;; This test fails on i686 and aarch64 + (lambda _ + (substitute* "autotests/unit/file/CMakeLists.txt" + (("metadatamovertest") "")) + #t)) (replace 'check (lambda _ (setenv "DBUS_FATAL_WARNINGS" "0") @@ -1784,7 +1793,7 @@ maintaining an index of the contents of your files.") (define-public kactivities (package (name "kactivities") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1793,7 +1802,7 @@ maintaining an index of the contents of your files.") name "-" version ".tar.xz")) (sha256 (base32 - "0dg6bkdxf4sicij4szmi55npn6chp0sfmw27qi1s582ymqzjgf5m")))) + "005xvzp10kvwcsl2w6ghcqgqnr2rdvv9w61i4y44y25vcb85g26v")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1831,7 +1840,7 @@ with other frameworks.") (define-public kactivities-stats (package (name "kactivities-stats") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1840,7 +1849,7 @@ with other frameworks.") name "-" version ".tar.xz")) (sha256 (base32 - "1dfaq4hsd9wm1ka45dkxbl9wwr7s5ixbnnghqwxhl7a60imc680r")))) + "09zsdzf77palmww7x3dzinl0hxrm4z0q0yc2fmf0d7z6cfl695y2")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1861,7 +1870,7 @@ by which applications, and what documents have been linked to which activity.") (define-public kbookmarks (package (name "kbookmarks") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1870,7 +1879,7 @@ by which applications, and what documents have been linked to which activity.") name "-" version ".tar.xz")) (sha256 (base32 - "0ggn4rz8ch82ph64q6yik9fb1mp6kmsd7n33p769zl1lw7fldn0v")))) + "0l6rkj0b7hk2wg6dypj1dkl8pcd1vx89gaiixbhkd3vf7jp46n41")))) (build-system cmake-build-system) (propagated-inputs `(("kwidgetsaddons" ,kwidgetsaddons))) @@ -1904,7 +1913,7 @@ using the XBEL format.") (define-public kcmutils (package (name "kcmutils") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1913,7 +1922,7 @@ using the XBEL format.") name "-" version ".tar.xz")) (sha256 (base32 - "1b52lwn7qjqrn06va7j1jswlzs6bx0drs90myf3607k52ffbf4hy")))) + "1ik1505f16swsmvrv62dacis33f1ccnmkw3zbhb84vbrbqyskvzx")))) (build-system cmake-build-system) (propagated-inputs `(("kconfigwidgets" ,kconfigwidgets) @@ -1943,7 +1952,7 @@ KCModules can be created with the KConfigWidgets framework.") (define-public kconfigwidgets (package (name "kconfigwidgets") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1952,7 +1961,7 @@ KCModules can be created with the KConfigWidgets framework.") name "-" version ".tar.xz")) (sha256 (base32 - "0h4kappsffrp2qgg8wza1ybgah2dlcgpz591llfvaz31ldsml9hk")))) + "001d1nj8q6xpl71rwm15rnvy5ajyxpvknvf4ic7p5pbik3021bs6")))) (build-system cmake-build-system) (propagated-inputs `(("kauth" ,kauth) @@ -1985,7 +1994,7 @@ their settings.") (define-public kdeclarative (package (name "kdeclarative") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1994,7 +2003,7 @@ their settings.") name "-" version ".tar.xz")) (sha256 (base32 - "1mfj32p631zvwz9ldk8536ifb4n825zxbhx69bfllhw2vn1am7z2")))) + "1ish46m2dpnpqjnf8g660clcg7ky65w11cbk2m79pwyhqvhxgggj")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2046,7 +2055,7 @@ that offer bindings to some of the Frameworks.") (define-public kded (package (name "kded") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2055,7 +2064,7 @@ that offer bindings to some of the Frameworks.") name "-" version ".tar.xz")) (sha256 (base32 - "0qy4w7bcg60gyf6y6c11kqcshnld55a8w4fzglpwgqfbliyi5yzq")))) + "162s5qx2qb0bi889f8jjvd3ci31azd8iwp25i04vwi0lzglwb8gy")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2079,7 +2088,7 @@ started on demand.") (define-public kdesignerplugin (package (name "kdesignerplugin") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2088,7 +2097,7 @@ started on demand.") name "-" version ".tar.xz")) (sha256 (base32 - "1jnarg7wrhdjfq73q4wplazxsz927mpf0l6m0i4akq4dlp1b7aah")))) + "1197003bqcdpsyn6faasr2nhaadh7ryg92vjpqim78af3vwinsdw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2117,7 +2126,7 @@ ini-style description files.") (define-public kdesu (package (name "kdesu") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2126,7 +2135,7 @@ ini-style description files.") name "-" version ".tar.xz")) (sha256 (base32 - "04mx0d6kf8slgkkgbna3cyv4c491jvlwcwqxc7zikz0i03l341id")))) + "1qfhkzk6l9rfdyiad8y6k30zlhziz3q2dxvxkmnghxmkg98yhdza")))) (build-system cmake-build-system) (propagated-inputs `(("kpty" ,kpty))) @@ -2148,7 +2157,7 @@ with su and ssh respectively.") (define-public kemoticons (package (name "kemoticons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2157,7 +2166,7 @@ with su and ssh respectively.") name "-" version ".tar.xz")) (sha256 (base32 - "02h12qy0w6mcgkczi3md1znnvp7r47l8h416nd080ljpsydalgx8")))) + "1cx978s1dm3v1jh4aymncxs44iizdqp174dqg9m5mf043fcvvinq")))) (build-system cmake-build-system) (propagated-inputs `(("kservice" ,kservice))) @@ -2189,7 +2198,7 @@ emoticons coming from different providers.") (define-public kglobalaccel (package (name "kglobalaccel") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2198,7 +2207,7 @@ emoticons coming from different providers.") name "-" version ".tar.xz")) (sha256 (base32 - "1i32dq70qxjbfvlw0wqxvqvl6ysydmpg3zbiflff4z1qrmvmpw6a")))) + "1d84q3r6q5n2lclym9a9m1brfqnq3p3dykfpzvhcba3bjxh3cdsb")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2232,7 +2241,7 @@ window does not need focus for them to be activated.") (define-public kiconthemes (package (name "kiconthemes") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2241,7 +2250,7 @@ window does not need focus for them to be activated.") name "-" version ".tar.xz")) (sha256 (base32 - "0hbl82r6qc8dh9v9n9xjkx966czkq5yjxx2rx7sbilj2p9v3saii")))) + "1j7mgfsvxa24nf1d9xyn2jv9y9j523vghsvsm73x8d3ijibchfxq")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2279,7 +2288,7 @@ in applications using the KDE Frameworks.") (define-public kinit (package (name "kinit") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2288,7 +2297,7 @@ in applications using the KDE Frameworks.") name "-" version ".tar.xz")) (sha256 (base32 - "08429kjihpaip73wszr3rsii8sdlwgm3kxx7g0hpjhkj9d2jq3m1")))) + "0b7dyy4hqyf6wk7gg2l23ldnji2zl8vzyj5wd5qh4yi7rdl6js5r")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2326,7 +2335,7 @@ makes starting KDE applications faster and reduces memory consumption.") (define-public kio (package (name "kio") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2335,7 +2344,7 @@ makes starting KDE applications faster and reduces memory consumption.") name "-" version ".tar.xz")) (sha256 (base32 - "1i23ld5b9gafh2x3lv79jbggbd92xyhk7rg3n765w3bsfpg2ijva")))) + "0nxchbhs8p2d4243dyp7qa65g1p6r3ic2h6dz7w0aa0qzsy8wi29")))) (build-system cmake-build-system) (propagated-inputs `(("kbookmarks" ,kbookmarks) @@ -2401,7 +2410,7 @@ KIO enabled infrastructure.") (define-public knewstuff (package (name "knewstuff") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2410,7 +2419,7 @@ KIO enabled infrastructure.") name "-" version ".tar.xz")) (sha256 (base32 - "19d53ylwr92dzl9agk4j765zvb897rcm55z7pr6841aj58jk9b82")))) + "1scnxhxx4g8j4wml6x8i5v00rpaxyzzcm7vqbra2axbql5d8g8ny")))) (build-system cmake-build-system) (propagated-inputs `(("attica" ,attica) @@ -2458,7 +2467,7 @@ specification.") (define-public knotifyconfig (package (name "knotifyconfig") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2467,7 +2476,7 @@ specification.") name "-" version ".tar.xz")) (sha256 (base32 - "0lwl22vq770jyp45j32s0ss8yiqdwbink6cdhkbapg3pzbiwklyk")))) + "14kjckynszv8015p17j578l3knmkmw25d8r8ks4wavgj3db9bik5")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2500,7 +2509,7 @@ notifications which can be embedded in your application.") (define-public kparts (package (name "kparts") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2509,7 +2518,7 @@ notifications which can be embedded in your application.") name "-" version ".tar.xz")) (sha256 (base32 - "1a5n0f7ljdc2bm6vggzwbvpblyxjqn9m9pam70iab964pqqalgp7")))) + "0jrd8idkz8nhkda2rwgf8rysqngiv4r5ajmrzp2kfz1pr91a6l5h")))) (build-system cmake-build-system) (propagated-inputs `(("kio" ,kio) @@ -2551,7 +2560,7 @@ widgets with a user-interface defined in terms of actions.") (define-public kpeople (package (name "kpeople") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2560,7 +2569,7 @@ widgets with a user-interface defined in terms of actions.") name "-" version ".tar.xz")) (sha256 (base32 - "0krm74dl80s48nhiygga4dvkvqqimxdx4nczbk4qvj7j1g9p2rsh")))) + "1qgp4wqp985ac1m9wakpsvk3c2driwkwrjkc3aic7dyr1p456qsf")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2594,7 +2603,7 @@ to easily extend the contacts collection.") (define-public krunner (package (name "krunner") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2603,7 +2612,7 @@ to easily extend the contacts collection.") name "-" version ".tar.xz")) (sha256 (base32 - "0n527p708k719zgmvvbmp20xmg72f85cll05q05p4h317g7wz6i5")))) + "171qbhr1yszl2gcffm47p5wiwj71w9yhvk6srhvfpiwfyh61a4ld")))) (build-system cmake-build-system) (propagated-inputs `(("plasma-framework" ,plasma-framework))) @@ -2624,6 +2633,7 @@ to easily extend the contacts collection.") ("kpackage" ,kpackage) ("kservice" ,kservice) ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) ("kxmlgui" ,kxmlgui) ("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative) @@ -2649,7 +2659,7 @@ typed.") (define-public kservice (package (name "kservice") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2658,7 +2668,7 @@ typed.") name "-" version ".tar.xz")) (sha256 (base32 - "0sikwn49s2iq1nj518q55m2p0hvdvwm98cpf0dkjb1z1v6fgjc37")))) + "1zxs5yzd3rmy33vsip4c4igk9g38kzaggw8c29sxmgr8vgdrnvhr")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2694,7 +2704,7 @@ types or handled by application specific code.") (define-public ktexteditor (package (name "ktexteditor") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2703,7 +2713,7 @@ types or handled by application specific code.") name "-" version ".tar.xz")) (sha256 (base32 - "182a0swfgdqr0faq3ksk6hlfvdi1afd0hpys5vayjjf263m19xxw")))) + "0y04s1nwkf0np6iymjxf0jssin28qw2901kpb3iw8gd52ni5rrks")))) (build-system cmake-build-system) (propagated-inputs `(("kparts" ,kparts))) @@ -2764,7 +2774,7 @@ library.") (define-public ktextwidgets (package (name "ktextwidgets") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2773,7 +2783,7 @@ library.") name "-" version ".tar.xz")) (sha256 (base32 - "1hri34b373bww5gv14qli2nm77k05pk170nbb2vv2zvzv93g25gw")))) + "1p8ns75sbnapm6ds16hx36q9vlnz9phgy28rx0gm1ckxqvm4yzr5")))) (build-system cmake-build-system) (propagated-inputs `(("ki18n" ,ki18n) @@ -2811,7 +2821,7 @@ It supports rich text as well as plain text.") (define-public kwallet (package (name "kwallet") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2820,7 +2830,7 @@ It supports rich text as well as plain text.") name "-" version ".tar.xz")) (sha256 (base32 - "08z3ddsam5n5qn2svscp4hgksf6qd1h8lqw1v382p01nnmhxadz5")))) + "1l7jl3y0rzx2whnbp6w5p6kg71vwyccp2nwxxgcxr6541m0nihsz")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2852,7 +2862,7 @@ the passwords on KDE work spaces.") (define-public kxmlgui (package (name "kxmlgui") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2861,7 +2871,7 @@ the passwords on KDE work spaces.") name "-" version ".tar.xz")) (sha256 (base32 - "1v8m6qzjqg3ic14a5ki37bf13kifzcbhly68zcxgs5b92hr953iy")))) + "0jrvjlxkg9knj61b2gj2w6l96jlmww9kn4ij808ir35365x3cdg2")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2904,7 +2914,7 @@ descriptions for integrating actions from plugins.") (define-public kxmlrpcclient (package (name "kxmlrpcclient") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2913,7 +2923,7 @@ descriptions for integrating actions from plugins.") name "-" version ".tar.xz")) (sha256 (base32 - "0kp3ab50m5jl2jgw883ip67s6gs0l3saprzrqa9r3hydn2c4s3md")))) + "1jn9v86dpfx43qcdcsp6lpnga9q6aa5vxjkkg4wg0wbxmw4w9gvq")))) (build-system cmake-build-system) (propagated-inputs `(("kio" ,kio))) @@ -2947,7 +2957,7 @@ setUrl, setUserAgent and call.") (define-public plasma-framework (package (name "plasma-framework") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2956,7 +2966,7 @@ setUrl, setUserAgent and call.") name "-" version ".tar.xz")) (sha256 (base32 - "0waicqskfwc8xpmrym165hwlfv6nzbwc783sac5vrhbyk4bwk8x9")))) + "0kamvxfzrbx3msn0cp3k20clqchz9jg5wlazz3h6p6zmrk5v16bh")))) (build-system cmake-build-system) (propagated-inputs `(("kpackage" ,kpackage) @@ -3042,7 +3052,7 @@ script engines.") (define-public kde-frameworkintegration (package (name "kde-frameworkintegration") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -3051,7 +3061,7 @@ script engines.") "frameworkintegration-" version ".tar.xz")) (sha256 (base32 - "0hq1r2znjzy0wzm3nsclqmih1aia5300bsf87a2l4919q0ildb20")))) + "0pcy3hjqbahbx65yxz5bl0h2ah4y3fb7mq3pj1rrp2cpp92s135a")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3099,7 +3109,7 @@ workspace.") (define-public kdelibs4support (package (name "kdelibs4support") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3108,7 +3118,7 @@ workspace.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "0q9jjsjcvc43va4yvfay2xi40vb95lnqhgzavpqcndzjihixwmi0")))) + (base32 "1zz100m1sqfmg3ni7023b99qn79jhdd2ryw6534axl5zgn0sglh9")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -3210,7 +3220,7 @@ http://community.kde.org/Frameworks/Porting_Notes should help with this.") (define-public khtml (package (name "khtml") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3219,13 +3229,14 @@ http://community.kde.org/Frameworks/Porting_Notes should help with this.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "0j490jfnz8pbfl1i11wj514nw0skpnxr2fvi9pqpfql9lfhsanxv")))) + (base32 "1n0mx2xy9n5ffhvh58z3kn61aa7dhppsrwgxk697pybqy1h45ah2")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("perl", perl))) (inputs `(("giflib" ,giflib) + ("gperf" ,gperf) ("karchive" ,karchive) ("kcodecs" ,kcodecs) ("kglobalaccel" ,kglobalaccel) @@ -3268,7 +3279,7 @@ technology and using KJS for JavaScript support.") (define-public kjs (package (name "kjs") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3277,7 +3288,7 @@ technology and using KJS for JavaScript support.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "18b7k1hi73iqn06c1ryy9lcmvscr9d08q7n1wwkrn0l2xmy05xsq")))) + (base32 "046hy8ji4i6p2xp5gnqa8dk82sv6sbh4xg67y79i82bbi97dvq9b")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3301,7 +3312,7 @@ support.") (define-public kjsembed (package (name "kjsembed") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3310,7 +3321,7 @@ support.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "17w8i370pqks1fj3pcziz7j014chnc6yi7md7w2p4xprw54pbmbk")))) + (base32 "0w2wk5azf1b45db58qj0cdc1l056x9s1xcd09ibavx5xmdvq6br0")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3330,7 +3341,7 @@ QObjects, so you can script your applications.") (define-public kmediaplayer (package (name "kmediaplayer") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3339,7 +3350,7 @@ QObjects, so you can script your applications.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "1mq87qf86sdvwhas4w7rspd221qp4x9kds4nd0lpldiay4483k86")))) + (base32 "0fqxrkcwwzg11zsax9q169lisnfp9jsqg4ccd6xvv8kpkz3g04jp")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3376,7 +3387,7 @@ KParts instead.") (define-public kross (package (name "kross") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3385,7 +3396,7 @@ KParts instead.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "092qz8vyiialv9fvk4wvn8mrfhz5i5hnbq0xnz6nvi1pk3db6bxq")))) + (base32 "06pk6f6v82pd7x9rsmkhkp5r9sgcbrc503lqckl8d7argbb7j4k1")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) From d983a1cb8ec43669c4188376a4d1f872e77d5555 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 18 Aug 2017 15:27:27 +0300 Subject: [PATCH 1086/1227] gnu: libksysguard: Update to 5.10.4. * gnu/packages/kde.scm (libksysguard ): Update to 5.10.4. --- gnu/packages/kde.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 0a416148cb..a65a61f96b 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -258,7 +258,7 @@ used in KDE development tools Kompare and KDevelop.") (define-public libksysguard (package (name "libksysguard") - (version "5.8.2") + (version "5.10.4") (source (origin (method url-fetch) @@ -266,7 +266,7 @@ used in KDE development tools Kompare and KDevelop.") "/libksysguard-" version ".tar.xz")) (sha256 (base32 - "158n30wbpsgbw3axhhsc58hnwhwdd02j3zc9hhcybmnbkfl5c96l")))) + "01w0laywva0p0ar2lvr1k5000bhjikjfxsb4f6p30qswrchrmrh3")))) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config))) @@ -303,7 +303,7 @@ used in KDE development tools Kompare and KDevelop.") (replace 'check (lambda _ ;other tests require a display and therefore fail (zero? (system* "ctest" "-R" "chronotest"))))))) - (home-page "https://www.kde.org/info/plasma-5.8.2.php") + (home-page "https://www.kde.org/info/plasma-5.10.4.php") (synopsis "Network enabled task and system monitoring") (description "KSysGuard can obtain information on system load and manage running processes. It obtains this information by interacting From c5a856d5516673c7a40c916aeb7572c4eadbede6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 18 Aug 2017 15:49:24 +0300 Subject: [PATCH 1087/1227] gnu: xf86-video-siliconmotion: Fix building on aarch64. * gnu/packages/xorg.scm (xf86-video-siliconmotion)[source]: Add patch. * gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + .../xf86-video-siliconmotion-fix-ftbfs.patch | 171 ++++++++++++++++++ gnu/packages/xorg.scm | 3 +- 3 files changed, 174 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1abdeca830..5e4ef72503 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1111,6 +1111,7 @@ dist_patch_DATA = \ %D%/packages/patches/xf86-video-geode-glibc-2.20.patch \ %D%/packages/patches/xf86-video-i128-remove-mibstore.patch \ %D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \ + %D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \ %D%/packages/patches/xf86-video-tga-remove-mibstore.patch \ %D%/packages/patches/xfce4-panel-plugins.patch \ %D%/packages/patches/xfce4-session-fix-xflock4.patch \ diff --git a/gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch b/gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch new file mode 100644 index 0000000000..8aeec455d7 --- /dev/null +++ b/gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch @@ -0,0 +1,171 @@ +From eee8fd4c489a693344da0bba14cfa54c54610b89 Mon Sep 17 00:00:00 2001 +From: Maarten Lankhorst +Date: Thu, 9 Mar 2017 13:31:34 +0200 +Subject: [PATCH] Fix build against xorg server 1.17 on certain architectures + +Fixes at least arm64, likely also hppa, m68k, sh4. + +Signed-off-by: Maarten Lankhorst +--- + src/regsmi.h | 18 ++++++++++++++++++ + src/smi.h | 2 ++ + src/smi_driver.c | 19 +++++++++---------- + src/smilynx_crtc.c | 6 +++--- + src/smilynx_hw.c | 5 ++--- + 5 files changed, 34 insertions(+), 16 deletions(-) + +diff --git a/src/regsmi.h b/src/regsmi.h +index 5dd0320..69205ba 100644 +--- a/src/regsmi.h ++++ b/src/regsmi.h +@@ -64,8 +64,13 @@ VGAIN8_INDEX(SMIPtr pSmi, int indexPort, int dataPort, CARD8 index) + MMIO_OUT8(pSmi->IOBase, indexPort, index); + return(MMIO_IN8(pSmi->IOBase, dataPort)); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ pci_io_write8(pSmi->io, indexPort, index); ++ return pci_io_read8(pSmi->io, dataPort); ++#else + outb(pSmi->PIOBase + indexPort, index); + return(inb(pSmi->PIOBase + dataPort)); ++#endif + } + } + +@@ -76,8 +81,13 @@ VGAOUT8_INDEX(SMIPtr pSmi, int indexPort, int dataPort, CARD8 index, CARD8 data) + MMIO_OUT8(pSmi->IOBase, indexPort, index); + MMIO_OUT8(pSmi->IOBase, dataPort, data); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ pci_io_write8(pSmi->io, indexPort, index); ++ pci_io_write8(pSmi->io, dataPort, data); ++#else + outb(pSmi->PIOBase + indexPort, index); + outb(pSmi->PIOBase + dataPort, data); ++#endif + } + } + +@@ -87,7 +97,11 @@ VGAIN8(SMIPtr pSmi, int port) + if (pSmi->IOBase) { + return(MMIO_IN8(pSmi->IOBase, port)); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ return pci_io_read8(pSmi->io, port); ++#else + return(inb(pSmi->PIOBase + port)); ++#endif + } + } + +@@ -97,7 +111,11 @@ VGAOUT8(SMIPtr pSmi, int port, CARD8 data) + if (pSmi->IOBase) { + MMIO_OUT8(pSmi->IOBase, port, data); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ pci_io_write8(pSmi->io, port, data); ++#else + outb(pSmi->PIOBase + port, data); ++#endif + } + } + +diff --git a/src/smi.h b/src/smi.h +index 2742c8d..1f20a2d 100644 +--- a/src/smi.h ++++ b/src/smi.h +@@ -171,6 +171,8 @@ typedef struct + pciVideoPtr PciInfo; /* PCI info vars */ + #ifndef XSERVER_LIBPCIACCESS + PCITAG PciTag; ++#else ++ struct pci_io_handle *io; + #endif + int Chipset; /* Chip info, set using PCI + above */ +diff --git a/src/smi_driver.c b/src/smi_driver.c +index 8949cae..6bdf64d 100644 +--- a/src/smi_driver.c ++++ b/src/smi_driver.c +@@ -446,6 +446,9 @@ SMI_PreInit(ScrnInfoPtr pScrn, int flags) + pSmi->PIOBase = hwp->PIOOffset; + #else + pSmi->PIOBase = 0; ++#ifdef XSERVER_LIBPCIACCESS ++ pSmi->io = hwp->io; ++#endif + #endif + + xf86ErrorFVerb(VERBLEV, "\tSMI_PreInit vgaCRIndex=%x, vgaIOBase=%x, " +@@ -2022,16 +2025,14 @@ SMI_EnableMmio(ScrnInfoPtr pScrn) + vgaHWSetStdFuncs(hwp); + + /* Enable linear mode */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); ++ tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18); + pSmi->SR18Value = tmp; /* PDR#521 */ +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp | 0x11); ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18, tmp | 0x11); + + /* Enable 2D/3D Engine and Video Processor */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x21); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); ++ tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21); + pSmi->SR21Value = tmp; /* PDR#521 */ +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp & ~0x03); ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21, tmp & ~0x03); + } + + LEAVE(); +@@ -2050,12 +2051,10 @@ SMI_DisableMmio(ScrnInfoPtr pScrn) + vgaHWSetStdFuncs(hwp); + + /* Disable 2D/3D Engine and Video Processor */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x21); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, pSmi->SR21Value); /* PDR#521 */ ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21, pSmi->SR21Value); /* PDR#521 */ + + /* Disable linear mode */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, pSmi->SR18Value); /* PDR#521 */ ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18, pSmi->SR18Value); /* PDR#521 */ + } + + LEAVE(); +diff --git a/src/smilynx_crtc.c b/src/smilynx_crtc.c +index fb7183c..f4d8b4e 100644 +--- a/src/smilynx_crtc.c ++++ b/src/smilynx_crtc.c +@@ -619,9 +619,9 @@ SMILynx_CrtcModeSet_bios(xf86CrtcPtr crtc, + xf86ExecX86int10(pSmi->pInt10); + + /* Enable linear mode. */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp | 0x01); ++ VGAOUT8(pSmi, VGA_SEQ_INDEX, 0x18); ++ tmp = VGAIN8(pSmi, VGA_SEQ_DATA); ++ VGAOUT8(pSmi, VGA_SEQ_DATA, tmp | 0x01); + + /* Enable DPR/VPR registers. */ + tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21); +diff --git a/src/smilynx_hw.c b/src/smilynx_hw.c +index b2ee8a5..40aa5a4 100644 +--- a/src/smilynx_hw.c ++++ b/src/smilynx_hw.c +@@ -365,9 +365,8 @@ SMILynx_WriteMode(ScrnInfoPtr pScrn, vgaRegPtr vgaSavePtr, SMIRegPtr restore) + xf86ExecX86int10(pSmi->pInt10); + + /* Enable linear mode. */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp | 0x01); ++ tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18); ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18, tmp | 0x01); + + /* Enable DPR/VPR registers. */ + tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21); +-- +2.7.4 + diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index b50807702b..b6652b4e43 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -3198,7 +3198,8 @@ This driver is intended for ATI Rage 128 based cards.") ".tar.bz2")) (sha256 (base32 - "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh")))) + "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh")) + (patches (search-patches "xf86-video-siliconmotion-fix-ftbfs.patch")))) (build-system gnu-build-system) (inputs `(("xorg-server" ,xorg-server))) (native-inputs `(("pkg-config" ,pkg-config))) From cc81f1c3495e81cc738b486e1ef2b4a1dbe99e28 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Wed, 16 Aug 2017 21:49:17 +0200 Subject: [PATCH 1088/1227] gnu: freerdp: Revert to version 1.1. * gnu/packages/rdesktop.scm (freerdp) [version, source]: Revert to upstream branch 1.1. [inputs]: Use ffmpeg-2.8. * gnu/packages/gnome.scm (vinagre): Add patches required to build against freerdp branch 1.1. * gnu/packages/patches/vinagre-revert-1.patch, gnu/packages/patches/vinagre-revert-2.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. --- gnu/local.mk | 2 + gnu/packages/gnome.scm | 3 + gnu/packages/patches/vinagre-revert-1.patch | 56 +++ gnu/packages/patches/vinagre-revert-2.patch | 448 ++++++++++++++++++++ gnu/packages/rdesktop.scm | 95 +++-- 5 files changed, 558 insertions(+), 46 deletions(-) create mode 100644 gnu/packages/patches/vinagre-revert-1.patch create mode 100644 gnu/packages/patches/vinagre-revert-2.patch diff --git a/gnu/local.mk b/gnu/local.mk index 5e4ef72503..c37d4b2206 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1081,6 +1081,8 @@ dist_patch_DATA = \ %D%/packages/patches/util-linux-tests.patch \ %D%/packages/patches/upower-builddir.patch \ %D%/packages/patches/valgrind-enable-arm.patch \ + %D%/packages/patches/vinagre-revert-1.patch \ + %D%/packages/patches/vinagre-revert-2.patch \ %D%/packages/patches/virglrenderer-CVE-2017-6386.patch \ %D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch \ %D%/packages/patches/vorbis-tools-CVE-2014-9640.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b362ba5e2d..dab450acb4 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2123,6 +2123,9 @@ selection and URL hints."))) (uri (string-append "mirror://gnome/sources/" name "/" (version-major+minor version) "/" name "-" version ".tar.xz")) + (patches ; We have to revert 2 commits to build against freerdp 1.1. + (search-patches "vinagre-revert-1.patch" + "vinagre-revert-2.patch")) (sha256 (base32 "10jya3jyrm18nbw3v410gbkc7677bqamax44pzgd3j15randn76d")))) diff --git a/gnu/packages/patches/vinagre-revert-1.patch b/gnu/packages/patches/vinagre-revert-1.patch new file mode 100644 index 0000000000..5a983770b7 --- /dev/null +++ b/gnu/packages/patches/vinagre-revert-1.patch @@ -0,0 +1,56 @@ +Patch taken from Debian: revert changes that prevent building against freerdp +version 1.1 branch. + +From 8ebc0685b85e0d1f70eb00171f2e7712de3d44bd Mon Sep 17 00:00:00 2001 +From: Michael Biebl +Date: Thu, 22 Sep 2016 01:15:55 +0200 +Subject: [PATCH 1/2] Revert "Improve FreeRDP authentication failure handling" + +This reverts commit d7b4f88943e8615d252d27e1efc58cb64a9e1821. +--- + plugins/rdp/vinagre-rdp-tab.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/plugins/rdp/vinagre-rdp-tab.c b/plugins/rdp/vinagre-rdp-tab.c +index b731f9b..8572bc3 100644 +--- a/plugins/rdp/vinagre-rdp-tab.c ++++ b/plugins/rdp/vinagre-rdp-tab.c +@@ -1195,8 +1195,8 @@ open_freerdp (VinagreRdpTab *rdp_tab) + VinagreTab *tab = VINAGRE_TAB (rdp_tab); + GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); + gboolean success = TRUE; ++ gboolean authentication_error = FALSE; + gboolean cancelled = FALSE; +- guint authentication_errors = 0; + + priv->events = g_queue_new (); + +@@ -1205,12 +1205,14 @@ open_freerdp (VinagreRdpTab *rdp_tab) + + do + { ++ authentication_error = FALSE; ++ + /* Run FreeRDP session */ + success = freerdp_connect (priv->freerdp_session); + if (!success) + { +- authentication_errors += freerdp_get_last_error (priv->freerdp_session->context) == 0x20009 || +- freerdp_get_last_error (priv->freerdp_session->context) == 0x2000c; ++ authentication_error = freerdp_get_last_error (priv->freerdp_session->context) == 0x20009 || ++ freerdp_get_last_error (priv->freerdp_session->context) == 0x2000c; + + cancelled = freerdp_get_last_error (priv->freerdp_session->context) == 0x2000b; + +@@ -1218,7 +1220,7 @@ open_freerdp (VinagreRdpTab *rdp_tab) + init_freerdp (rdp_tab); + } + } +- while (!success && authentication_errors < 3); ++ while (!success && authentication_error); + + if (!success) + { +-- +2.9.3 + diff --git a/gnu/packages/patches/vinagre-revert-2.patch b/gnu/packages/patches/vinagre-revert-2.patch new file mode 100644 index 0000000000..686ee203e4 --- /dev/null +++ b/gnu/packages/patches/vinagre-revert-2.patch @@ -0,0 +1,448 @@ +Patch taken from Debian: revert changes that prevent building against freerdp +version 1.1 branch. + +From bb1828b6b7eb29bb037bcc687cf10f916ddc7561 Mon Sep 17 00:00:00 2001 +From: Michael Biebl +Date: Thu, 22 Sep 2016 01:18:16 +0200 +Subject: [PATCH 2/2] Revert "Store credentials for RDP" + +This reverts commit 60dea279a24c7f0e398b89a0a60d45e80087ed1d. +--- + plugins/rdp/vinagre-rdp-connection.c | 22 +--- + plugins/rdp/vinagre-rdp-plugin.c | 29 +---- + plugins/rdp/vinagre-rdp-tab.c | 231 +++++++++++++++++------------------ + 3 files changed, 123 insertions(+), 159 deletions(-) + +diff --git a/plugins/rdp/vinagre-rdp-connection.c b/plugins/rdp/vinagre-rdp-connection.c +index f0ff02b..c5f6ed1 100644 +--- a/plugins/rdp/vinagre-rdp-connection.c ++++ b/plugins/rdp/vinagre-rdp-connection.c +@@ -127,25 +127,9 @@ rdp_parse_item (VinagreConnection *conn, xmlNode *root) + static void + rdp_parse_options_widget (VinagreConnection *conn, GtkWidget *widget) + { +- const gchar *text; +- GtkWidget *u_entry, *d_entry, *spin_button, *scaling_button; +- gboolean scaling; +- guint width, height; +- +- d_entry = g_object_get_data (G_OBJECT (widget), "domain_entry"); +- if (!d_entry) +- { +- g_warning ("Wrong widget passed to rdp_parse_options_widget()"); +- return; +- } +- +- text = gtk_entry_get_text (GTK_ENTRY (d_entry)); +- vinagre_cache_prefs_set_string ("rdp-connection", "domain", text); +- +- g_object_set (conn, +- "domain", text != NULL && *text != '\0' ? text : NULL, +- NULL); +- ++ GtkWidget *u_entry, *spin_button, *scaling_button; ++ gboolean scaling; ++ guint width, height; + + u_entry = g_object_get_data (G_OBJECT (widget), "username_entry"); + if (!u_entry) +diff --git a/plugins/rdp/vinagre-rdp-plugin.c b/plugins/rdp/vinagre-rdp-plugin.c +index 4751102..f41da37 100644 +--- a/plugins/rdp/vinagre-rdp-plugin.c ++++ b/plugins/rdp/vinagre-rdp-plugin.c +@@ -100,7 +100,7 @@ vinagre_rdp_plugin_init (VinagreRdpPlugin *plugin) + static GtkWidget * + impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + { +- GtkWidget *grid, *label, *u_entry, *d_entry, *spin_button, *check; ++ GtkWidget *grid, *label, *u_entry, *spin_button, *check; + gchar *str; + gint width, height; + +@@ -146,29 +146,10 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + g_free (str); + + +- label = gtk_label_new_with_mnemonic (_("_Domain:")); +- gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +- gtk_grid_attach (GTK_GRID (grid), label, 0, 3, 1, 1); +- gtk_widget_set_margin_left (label, 12); +- +- d_entry = gtk_entry_new (); +- /* Translators: This is the tooltip for the domain field in a RDP connection */ +- gtk_widget_set_tooltip_text (d_entry, _("Optional.")); +- g_object_set_data (G_OBJECT (grid), "domain_entry", d_entry); +- gtk_grid_attach (GTK_GRID (grid), d_entry, 1, 3, 1, 1); +- gtk_label_set_mnemonic_widget (GTK_LABEL (label), d_entry); +- str = g_strdup (VINAGRE_IS_CONNECTION (conn) ? +- vinagre_connection_get_domain (conn) : +- vinagre_cache_prefs_get_string ("rdp-connection", "domain", "")); +- gtk_entry_set_text (GTK_ENTRY (d_entry), str); +- gtk_entry_set_activates_default (GTK_ENTRY (d_entry), TRUE); +- g_free (str); +- +- + /* Host width */ + label = gtk_label_new_with_mnemonic (_("_Width:")); + gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +- gtk_grid_attach (GTK_GRID (grid), label, 0, 4, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), label, 0, 3, 1, 1); + gtk_widget_set_margin_left (label, 12); + + spin_button = gtk_spin_button_new_with_range (MIN_SIZE, MAX_SIZE, 1); +@@ -176,7 +157,7 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + gtk_widget_set_tooltip_text (spin_button, _("Set width of the remote desktop")); + gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin_button), DEFAULT_WIDTH); + g_object_set_data (G_OBJECT (grid), "width_spin_button", spin_button); +- gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 4, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 3, 1, 1); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), spin_button); + width = VINAGRE_IS_CONNECTION (conn) ? + vinagre_connection_get_width (conn) : +@@ -188,7 +169,7 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + /* Host height */ + label = gtk_label_new_with_mnemonic (_("_Height:")); + gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +- gtk_grid_attach (GTK_GRID (grid), label, 0, 5, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), label, 0, 4, 1, 1); + gtk_widget_set_margin_left (label, 12); + + spin_button = gtk_spin_button_new_with_range (MIN_SIZE, MAX_SIZE, 1); +@@ -196,7 +177,7 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + gtk_widget_set_tooltip_text (spin_button, _("Set height of the remote desktop")); + gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin_button), DEFAULT_HEIGHT); + g_object_set_data (G_OBJECT (grid), "height_spin_button", spin_button); +- gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 5, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 4, 1, 1); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), spin_button); + height = VINAGRE_IS_CONNECTION (conn) ? + vinagre_connection_get_height (conn) : +diff --git a/plugins/rdp/vinagre-rdp-tab.c b/plugins/rdp/vinagre-rdp-tab.c +index 8572bc3..f3d9c08 100644 +--- a/plugins/rdp/vinagre-rdp-tab.c ++++ b/plugins/rdp/vinagre-rdp-tab.c +@@ -70,8 +70,6 @@ struct _VinagreRdpTabPrivate + gboolean scaling; + double scale; + double offset_x, offset_y; +- +- guint authentication_attempts; + }; + + G_DEFINE_TYPE (VinagreRdpTab, vinagre_rdp_tab, VINAGRE_TYPE_TAB) +@@ -611,7 +609,6 @@ frdp_post_connect (freerdp *instance) + 0, 0, + gdi->width, gdi->height); + +- vinagre_tab_save_credentials_in_keyring (VINAGRE_TAB (rdp_tab)); + vinagre_tab_add_recent_used (VINAGRE_TAB (rdp_tab)); + vinagre_tab_set_state (VINAGRE_TAB (rdp_tab), VINAGRE_TAB_STATE_CONNECTED); + +@@ -862,76 +859,114 @@ frdp_mouse_moved (GtkWidget *widget, + return TRUE; + } + ++static void ++entry_text_changed_cb (GtkEntry *entry, ++ GtkBuilder *builder) ++{ ++ const gchar *text; ++ GtkWidget *widget; ++ gsize username_length; ++ gsize password_length; ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "username_entry")); ++ text = gtk_entry_get_text (GTK_ENTRY (widget)); ++ username_length = strlen (text); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "password_entry")); ++ text = gtk_entry_get_text (GTK_ENTRY (widget)); ++ password_length = strlen (text); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "ok_button")); ++ gtk_widget_set_sensitive (widget, password_length > 0 && username_length > 0); ++} ++ + static gboolean + frdp_authenticate (freerdp *instance, + char **username, + char **password, + char **domain) + { +- VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab); +- VinagreRdpTab *rdp_tab = VINAGRE_RDP_TAB (tab); +- VinagreRdpTabPrivate *priv = rdp_tab->priv; +- VinagreConnection *conn = vinagre_tab_get_conn (tab); +- GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); +- gboolean save_in_keyring = FALSE; +- gchar *keyring_domain = NULL; +- gchar *keyring_username = NULL; +- gchar *keyring_password = NULL; ++ VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab); ++ VinagreConnection *conn = vinagre_tab_get_conn (tab); ++ const gchar *user_name; ++ const gchar *domain_name; ++ GtkBuilder *builder; ++ GtkWidget *dialog; ++ GtkWidget *widget; ++ GtkWidget *username_entry; ++ GtkWidget *password_entry; ++ GtkWidget *domain_entry; ++ gboolean save_credential_check_visible; ++ gboolean domain_label_visible; ++ gboolean domain_entry_visible; ++ gint response; + +- priv->authentication_attempts++; ++ builder = vinagre_utils_get_builder (); + +- if (priv->authentication_attempts == 1) +- { +- vinagre_tab_find_credentials_in_keyring (tab, &keyring_domain, &keyring_username, &keyring_password); +- if (keyring_password != NULL && keyring_username != NULL) +- { +- *domain = keyring_domain; +- *username = keyring_username; +- *password = keyring_password; ++ dialog = GTK_WIDGET (gtk_builder_get_object (builder, "auth_required_dialog")); ++ gtk_window_set_modal ((GtkWindow *) dialog, TRUE); ++ gtk_window_set_transient_for ((GtkWindow *) dialog, GTK_WINDOW (vinagre_tab_get_window (tab))); + +- return TRUE; +- } +- else +- { +- g_free (keyring_domain); +- g_free (keyring_username); +- g_free (keyring_password); +- } ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "host_label")); ++ gtk_label_set_text (GTK_LABEL (widget), vinagre_connection_get_host (conn)); ++ ++ username_entry = GTK_WIDGET (gtk_builder_get_object (builder, "username_entry")); ++ password_entry = GTK_WIDGET (gtk_builder_get_object (builder, "password_entry")); ++ domain_entry = GTK_WIDGET (gtk_builder_get_object (builder, "domain_entry")); ++ ++ if (*username != NULL && *username[0] != '\0') ++ { ++ gtk_entry_set_text (GTK_ENTRY (username_entry), *username); ++ gtk_widget_grab_focus (password_entry); + } + +- if (vinagre_utils_request_credential (window, +- "RDP", +- vinagre_connection_get_host (conn), +- vinagre_connection_get_domain (conn), +- vinagre_connection_get_username (conn), +- TRUE, +- TRUE, +- TRUE, +- 20, +- domain, +- username, +- password, +- &save_in_keyring)) ++ g_signal_connect (username_entry, "changed", G_CALLBACK (entry_text_changed_cb), builder); ++ g_signal_connect (password_entry, "changed", G_CALLBACK (entry_text_changed_cb), builder); ++ ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "save_credential_check")); ++ save_credential_check_visible = gtk_widget_get_visible (widget); ++ gtk_widget_set_visible (widget, FALSE); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "domain_label")); ++ domain_label_visible = gtk_widget_get_visible (widget); ++ gtk_widget_set_visible (widget, TRUE); ++ ++ domain_entry_visible = gtk_widget_get_visible (domain_entry); ++ gtk_widget_set_visible (domain_entry, TRUE); ++ ++ ++ response = gtk_dialog_run (GTK_DIALOG (dialog)); ++ gtk_widget_hide (dialog); ++ ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "save_credential_check")); ++ gtk_widget_set_visible (widget, save_credential_check_visible); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "domain_label")); ++ gtk_widget_set_visible (widget, domain_label_visible); ++ ++ gtk_widget_set_visible (domain_entry, domain_entry_visible); ++ ++ ++ if (response == GTK_RESPONSE_OK) + { +- if (*domain && **domain != '\0') +- vinagre_connection_set_domain (conn, *domain); ++ domain_name = gtk_entry_get_text (GTK_ENTRY (domain_entry)); ++ if (g_strcmp0 (*domain, domain_name) != 0) ++ *domain = g_strdup (domain_name); + +- if (*username && **username != '\0') +- vinagre_connection_set_username (conn, *username); ++ user_name = gtk_entry_get_text (GTK_ENTRY (username_entry)); ++ if (g_strcmp0 (*username, user_name) != 0) ++ *username = g_strdup (user_name); + +- if (*password && **password != '\0') +- vinagre_connection_set_password (conn, *password); ++ *password = g_strdup (gtk_entry_get_text (GTK_ENTRY (password_entry))); + +- vinagre_tab_set_save_credentials (tab, save_in_keyring); ++ return TRUE; + } + else + { +- vinagre_tab_remove_from_notebook (tab); +- + return FALSE; + } +- +- return TRUE; + } + + static BOOL +@@ -1028,25 +1063,30 @@ frdp_changed_certificate_verify (freerdp *instance, + #endif + + static void +-init_freerdp (VinagreRdpTab *rdp_tab) ++open_freerdp (VinagreRdpTab *rdp_tab) + { + VinagreRdpTabPrivate *priv = rdp_tab->priv; +- rdpSettings *settings; + VinagreTab *tab = VINAGRE_TAB (rdp_tab); + VinagreConnection *conn = vinagre_tab_get_conn (tab); +- gboolean scaling; +- gchar *hostname; +- gint width, height; +- gint port; ++ rdpSettings *settings; ++ GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); ++ gboolean success = TRUE; ++ gboolean fullscreen, scaling; ++ gchar *hostname, *username; ++ gint port, width, height; + + g_object_get (conn, + "port", &port, + "host", &hostname, + "width", &width, + "height", &height, ++ "fullscreen", &fullscreen, + "scaling", &scaling, ++ "username", &username, + NULL); + ++ priv->events = g_queue_new (); ++ + /* Setup FreeRDP session */ + priv->freerdp_session = freerdp_new (); + priv->freerdp_session->PreConnect = frdp_pre_connect; +@@ -1111,6 +1151,17 @@ init_freerdp (VinagreRdpTab *rdp_tab) + settings->port = port; + #endif + ++ /* Set username */ ++ username = g_strstrip (username); ++ if (username != NULL && username[0] != '\0') ++ { ++#if HAVE_FREERDP_1_1 ++ settings->Username = g_strdup (username); ++#else ++ settings->username = g_strdup (username); ++#endif ++ } ++ + /* Set keyboard layout */ + #if HAVE_FREERDP_1_1 + freerdp_keyboard_init (KBD_US); +@@ -1120,24 +1171,6 @@ init_freerdp (VinagreRdpTab *rdp_tab) + + /* Allow font smoothing by default */ + settings->AllowFontSmoothing = TRUE; +-} +- +-static void +-init_display (VinagreRdpTab *rdp_tab) +-{ +- VinagreRdpTabPrivate *priv = rdp_tab->priv; +- VinagreTab *tab = VINAGRE_TAB (rdp_tab); +- VinagreConnection *conn = vinagre_tab_get_conn (tab); +- GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); +- gboolean fullscreen, scaling; +- gint width, height; +- +- g_object_get (conn, +- "width", &width, +- "height", &height, +- "fullscreen", &fullscreen, +- "scaling", &scaling, +- NULL); + + /* Setup display for FreeRDP session */ + priv->display = gtk_drawing_area_new (); +@@ -1186,54 +1219,20 @@ init_display (VinagreRdpTab *rdp_tab) + priv->key_release_handler_id = g_signal_connect (GTK_WIDGET (tab), "key-release-event", + G_CALLBACK (frdp_key_pressed), + rdp_tab); +-} +- +-static void +-open_freerdp (VinagreRdpTab *rdp_tab) +-{ +- VinagreRdpTabPrivate *priv = rdp_tab->priv; +- VinagreTab *tab = VINAGRE_TAB (rdp_tab); +- GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); +- gboolean success = TRUE; +- gboolean authentication_error = FALSE; +- gboolean cancelled = FALSE; +- +- priv->events = g_queue_new (); +- +- init_freerdp (rdp_tab); +- init_display (rdp_tab); +- +- do +- { +- authentication_error = FALSE; + +- /* Run FreeRDP session */ +- success = freerdp_connect (priv->freerdp_session); +- if (!success) +- { +- authentication_error = freerdp_get_last_error (priv->freerdp_session->context) == 0x20009 || +- freerdp_get_last_error (priv->freerdp_session->context) == 0x2000c; +- +- cancelled = freerdp_get_last_error (priv->freerdp_session->context) == 0x2000b; +- +- freerdp_free (priv->freerdp_session); +- init_freerdp (rdp_tab); +- } +- } +- while (!success && authentication_error); ++ /* Run FreeRDP session */ ++ success = freerdp_connect (priv->freerdp_session); + + if (!success) + { + gtk_window_unfullscreen (window); +- if (!cancelled) +- vinagre_utils_show_error_dialog (_("Error connecting to host."), +- NULL, +- window); ++ vinagre_utils_show_error_dialog (_("Error connecting to host."), ++ NULL, ++ window); + g_idle_add ((GSourceFunc) idle_close, rdp_tab); + } + else + { +- priv->authentication_attempts = 0; + priv->update_id = g_idle_add ((GSourceFunc) update, rdp_tab); + } + } +-- +2.9.3 + diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm index 7946cde790..7c2b8911b7 100644 --- a/gnu/packages/rdesktop.scm +++ b/gnu/packages/rdesktop.scm @@ -70,51 +70,54 @@ to remotely control a user's Windows desktop.") (license license:gpl3+))) (define-public freerdp - (package - (name "freerdp") - (version "2.0.0-rc0") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/FreeRDP/FreeRDP/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 "0r36zwhl7fhmdng5pvl2a106gqbcqq184g2i2klz6ilna8pxjcml")))) - (build-system cmake-build-system) - (native-inputs - `(("pkg-config" ,pkg-config) - ("xmlto" ,xmlto))) - (inputs - `(("libx11" ,libx11) - ("libxkbfile" ,libxkbfile) - ("libxcursor" ,libxcursor) - ("libxext" ,libxext) - ("libxi" ,libxi) - ("libxv" ,libxv) - ("libxrandr" ,libxrandr) - ("libxrender" ,libxrender) - ("libxinerama" ,libxinerama) - ("libxshmfence" ,libxshmfence) - ("libxml2" ,libxml2) - ("libxslt" ,libxslt) - ("cups" ,cups) - ("ffmpeg" ,ffmpeg) - ("pulseaudio" ,pulseaudio) - ("alsa-lib" ,alsa-lib) - ("gstreamer" ,gstreamer) - ("gst-plugins-base" ,gst-plugins-base) - ("zlib" ,zlib) - ("openssl" ,openssl))) - (arguments - `(#:configure-flags - '("-DCMAKE_INSTALL_LIBDIR=lib" - "-DWITH_PULSE=ON" - "-DWITH_CUPS=ON") - #:tests? #f)) ; no 'test' target - (home-page "https://www.freerdp.com") - (synopsis "Remote Desktop Protocol implementation") - (description "FreeRDP implements Microsoft's Remote Desktop Protocol. It -consists of the @code{xfreerdp} client, libraries for client and server + (let ((commit "03ab68318966c3a22935a02838daaea7b7fbe96c")) + (package + (name "freerdp") + (version (git-version "1.1" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + ;; We need the 1.1 branch for RDP support in vinagre. + (url "git://github.com/FreeRDP/FreeRDP.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "07ish8rmvbk2zd99k91qybmmh5h4afly75l5kbvslhq1r6k8pbmp")))) + (build-system cmake-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("xmlto" ,xmlto))) + (inputs + `(("libx11" ,libx11) + ("libxkbfile" ,libxkbfile) + ("libxcursor" ,libxcursor) + ("libxext" ,libxext) + ("libxi" ,libxi) + ("libxv" ,libxv) + ("libxrandr" ,libxrandr) + ("libxrender" ,libxrender) + ("libxinerama" ,libxinerama) + ("libxshmfence" ,libxshmfence) + ("libxml2" ,libxml2) + ("libxslt" ,libxslt) + ("cups" ,cups) + ("ffmpeg" ,ffmpeg-2.8) + ("pulseaudio" ,pulseaudio) + ("alsa-lib" ,alsa-lib) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("zlib" ,zlib) + ("openssl" ,openssl))) + (arguments + `(#:configure-flags + '("-DCMAKE_INSTALL_LIBDIR=lib" + "-DWITH_PULSE=ON" + "-DWITH_CUPS=ON") + #:tests? #f)) ; no 'test' target + (home-page "https://www.freerdp.com") + (synopsis "Remote Desktop Protocol implementation") + (description "FreeRDP implements Microsoft's Remote Desktop Protocol. +It consists of the @code{xfreerdp} client, libraries for client and server functionality, and Windows Portable Runtime (WinPR), a portable implementation of parts of the Windows API.") - (license license:asl2.0))) + (license license:asl2.0)))) From 598b5481a462509638004728122a42cc9e3ac502 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Fri, 18 Aug 2017 12:36:19 +0200 Subject: [PATCH 1089/1227] gnu: freerdp: Update inputs. * gnu/packages/rdesktop.scm (freerdp) [native-inputs]: Add libxslt, libxml2 and docbook-xsl. [inputs]: Add libjpeg, remove gstreamer, gst-plugins-base, libxml2 and libxslt. [arguments]: Enable features JPEG and SSE2 (on x86_64), and set up docbook-xsl. --- gnu/packages/rdesktop.scm | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm index 7c2b8911b7..65d17de637 100644 --- a/gnu/packages/rdesktop.scm +++ b/gnu/packages/rdesktop.scm @@ -26,7 +26,9 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages compression) #:use-module (gnu packages cups) + #:use-module (gnu packages docbook) #:use-module (gnu packages gstreamer) + #:use-module (gnu packages image) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) @@ -86,6 +88,9 @@ to remotely control a user's Windows desktop.") (build-system cmake-build-system) (native-inputs `(("pkg-config" ,pkg-config) + ("libxslt" ,libxslt) + ("libxml2" ,libxml2) + ("docbook-xsl" ,docbook-xsl) ("xmlto" ,xmlto))) (inputs `(("libx11" ,libx11) @@ -98,21 +103,29 @@ to remotely control a user's Windows desktop.") ("libxrender" ,libxrender) ("libxinerama" ,libxinerama) ("libxshmfence" ,libxshmfence) - ("libxml2" ,libxml2) - ("libxslt" ,libxslt) ("cups" ,cups) ("ffmpeg" ,ffmpeg-2.8) + ("libjpeg" ,libjpeg) ("pulseaudio" ,pulseaudio) ("alsa-lib" ,alsa-lib) - ("gstreamer" ,gstreamer) - ("gst-plugins-base" ,gst-plugins-base) ("zlib" ,zlib) ("openssl" ,openssl))) (arguments `(#:configure-flags - '("-DCMAKE_INSTALL_LIBDIR=lib" - "-DWITH_PULSE=ON" - "-DWITH_CUPS=ON") + (list "-DCMAKE_INSTALL_LIBDIR=lib" + "-DCMAKE_BUILD_TYPE=RELEASE" + "-DWITH_JPEG=ON" + ,@(if (string-prefix? "x86_64" + (or (%current-target-system) + (%current-system))) + '("-DWITH_SSE2=ON") + '()) + (string-append "-DDOCBOOKXSL_DIR=" + (assoc-ref %build-inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl)) + "-DWITH_PULSE=ON" + "-DWITH_CUPS=ON") #:tests? #f)) ; no 'test' target (home-page "https://www.freerdp.com") (synopsis "Remote Desktop Protocol implementation") From 94793c1d0a03bb183bf13cd578d10410f4a9dda8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 09:23:36 +0200 Subject: [PATCH 1090/1227] gnu: perl-crypt-openssl-bignum: Update to 0.08. * gnu/packages/tls.scm (perl-crypt-openssl-bignum): Update to 0.08. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index bf16c1794f..88c71a908a 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -697,7 +697,7 @@ OpenSSL libraries).") (define-public perl-crypt-openssl-bignum (package (name "perl-crypt-openssl-bignum") - (version "0.06") + (version "0.08") (source (origin (method url-fetch) @@ -707,7 +707,7 @@ OpenSSL libraries).") ".tar.gz")) (sha256 (base32 - "05yzrdglrrzp191krf77zrwfkmzrfwrsrx1vyskbj94522lszk67")))) + "0gamn4dff1bz77nswacy1dlpn9fkwahzw7yvvik4nbwwy2s63hc8")))) (build-system perl-build-system) (inputs `(("openssl" ,openssl))) (arguments perl-crypt-arguments) From 7c94a3599eedfd53fcbad70baebbcbed3e38d0fa Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 13:50:22 +0200 Subject: [PATCH 1091/1227] gnu: totem-pl-parser: Update to 3.10.8. * gnu/packages/gnome.scm (totem-pl-parser): Update to 3.10.8. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index dab450acb4..9ad56e00f9 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2983,7 +2983,7 @@ settings, themes, mouse settings, and startup of other daemons.") (define-public totem-pl-parser (package (name "totem-pl-parser") - (version "3.10.7") + (version "3.10.8") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/totem-pl-parser/" @@ -2991,7 +2991,7 @@ settings, themes, mouse settings, and startup of other daemons.") "totem-pl-parser-" version ".tar.xz")) (sha256 (base32 - "17089sqyh6w6zr8ci865ihmvqshnslcsk9fbsl4s7yii66y8b0lw")))) + "0ayxg0gfs5h5jhr811ja5hxlhryklzp6jlal2ach9wym2c3hmigz")))) (build-system gnu-build-system) (arguments ;; FIXME: Tests require gvfs. From 69d0674830e0c36091fccaaca5040ae5e0a0b2cb Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 13:51:29 +0200 Subject: [PATCH 1092/1227] gnu: shotwell: Update to 0.26.3. * gnu/packages/gnome.scm (shotwell): Update to 0.26.3. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9ad56e00f9..c313a5cb94 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4301,7 +4301,7 @@ metadata in photo and video files of various formats.") (define-public shotwell (package (name "shotwell") - (version "0.26.2") + (version "0.26.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4309,7 +4309,7 @@ metadata in photo and video files of various formats.") name "-" version ".tar.xz")) (sha256 (base32 - "0frjqa6nmh025clwnb74z2rzbdq65wjcp2lf9csgcbkpahyjhrag")))) + "1r8fd63r7c5n99hwrkzv9jlrk84z4sa15q3h70pydzfjnfqf90zv")))) (build-system glib-or-gtk-build-system) (propagated-inputs `(("dconf" ,dconf))) From 9d086c075d512188879b0b5535f11500376851bb Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 13:52:06 +0200 Subject: [PATCH 1093/1227] gnu: gjs: Update to 1.48.6. * gnu/packages/gnome.scm (gjs): Update to 1.48.6. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index c313a5cb94..a19ccad7aa 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4469,7 +4469,7 @@ configuration program to choose applications starting on login.") (define-public gjs (package (name "gjs") - (version "1.48.3") + (version "1.48.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4477,7 +4477,7 @@ configuration program to choose applications starting on login.") name "-" version ".tar.xz")) (sha256 (base32 - "0cqgv460wfhwkw6j1h46v6bg29bycg6dfl7c5rv0lfcqmmw7v6v6")))) + "04nkig077r7xq55dxg9v46w8i7p8zkkdyja92yv81grq9fx6apz8")))) (build-system gnu-build-system) (arguments '(#:phases From 32d00d78dc3604a5e6041ebc45ac4a062a5ad7b8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 13:50:55 +0200 Subject: [PATCH 1094/1227] gnu: libgnome-games-support: Update to 1.2.2. * gnu/packages/gnome.scm (libgnome-games-support): Update to 1.2.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index a19ccad7aa..2b42c1da59 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3375,7 +3375,7 @@ GNOME Games, but it may be used by others.") (package (inherit libgames-support) (name "libgnome-games-support") - (version "1.2.1") + (version "1.2.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3383,7 +3383,7 @@ GNOME Games, but it may be used by others.") name "-" version ".tar.xz")) (sha256 (base32 - "1rsyf5hbjim7zpk1yar3gv65g1nmw6zbbc0smrmxsfk0f9n3j9m6")))))) + "04qbgcgmc01sinhbqdljiny8q868l01nkdawj8wrnqnd1i8czvsg")))))) (define-public gnome-klotski (package From d95d6d931edbf9718b99155adfd8e7aa7324a5ff Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 13:49:47 +0200 Subject: [PATCH 1095/1227] gnu: gnome-keyring: Update to 3.20.1. * gnu/packages/gnome.scm (gnome-keyring): Update to 3.20.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 2b42c1da59..036d6b4ffc 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -627,7 +627,7 @@ GNOME Desktop.") (define-public gnome-keyring (package (name "gnome-keyring") - (version "3.20.0") + (version "3.20.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -635,7 +635,7 @@ GNOME Desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "16gcwwcg91ipxjmiyi4c4njvnxixmv1i278p0bilc3lafk6ww5xw")))) + "134ci3mn6jjap59z3lrvyiip7zf2nlw5xvanr44yajs57xr4x5lp")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does From cd5db77151dfc87de952c360d65f05162ad7cbe6 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 13:52:39 +0200 Subject: [PATCH 1096/1227] gnu: gnome-control-center: Update to 3.24.3. * gnu/packages/gnome.scm (gnome-control-center): Update to 3.24.3. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 036d6b4ffc..d8a06775a4 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5218,7 +5218,7 @@ devices using the GNOME desktop.") (define-public gnome-control-center (package (name "gnome-control-center") - (version "3.24.2") + (version "3.24.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -5226,7 +5226,7 @@ devices using the GNOME desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "0awga40jh6gvn335mn6kyl6yg79frap1znrsz3sw2m27yldlnaiq")))) + "18ncjqjj93a39sla2zjr9i6pw59yh87p4jla899lmvi2qajd5923")))) (build-system glib-or-gtk-build-system) (arguments '(#:phases From 1f9c2351d7c8534cc1f9b320dba7c719aecc0789 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 13:56:32 +0200 Subject: [PATCH 1097/1227] gnu: gnome-shell: Update to 3.24.3. * gnu/packages/gnome.scm (gnome-shell): Update to 3.24.3. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index d8a06775a4..f17db8fe13 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5289,7 +5289,7 @@ properties, screen resolution, and other GNOME parameters.") (define-public gnome-shell (package (name "gnome-shell") - (version "3.24.2") + (version "3.24.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -5297,7 +5297,7 @@ properties, screen resolution, and other GNOME parameters.") name "-" version ".tar.xz")) (sha256 (base32 - "1xp2ccmdrvzlczsrcplykwqwx2v4lbmkr0rxyylb06danlw9mivh")))) + "1f20x36ymkp1j667hb7s7byly2gqc4m0anldy3qwp38vm8437caq")))) (build-system glib-or-gtk-build-system) (arguments '(#:phases From 8c0c0c4defed40f4cb3139e0a887f9ed19915b1b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 18 Aug 2017 21:03:30 +0200 Subject: [PATCH 1098/1227] gnu: python-pygit2: Update to 0.26.0. * gnu/packages/python.scm (python-pygit2): Update to 0.26.0. * gnu/packages/patches/python-pygit2-disable-network-tests.patch: Skip one more test. Use unittest.skipIf instead of deleting sections. --- .../python-pygit2-disable-network-tests.patch | 79 +++++++------------ gnu/packages/python.scm | 4 +- 2 files changed, 31 insertions(+), 52 deletions(-) diff --git a/gnu/packages/patches/python-pygit2-disable-network-tests.patch b/gnu/packages/patches/python-pygit2-disable-network-tests.patch index e46d244807..5578e4c375 100644 --- a/gnu/packages/patches/python-pygit2-disable-network-tests.patch +++ b/gnu/packages/patches/python-pygit2-disable-network-tests.patch @@ -1,64 +1,43 @@ Disable tests trying to look up remote servers. diff --git a/test/test_credentials.py b/test/test_credentials.py -index 92482d9..9a281e5 100644 --- a/test/test_credentials.py +++ b/test/test_credentials.py -@@ -68,39 +68,5 @@ class CredentialCreateTest(utils.NoRepoTestCase): +@@ -68,6 +68,7 @@ class CredentialCreateTest(utils.NoRepoTestCase): self.assertEqual((username, None, None, None), cred.credential_tuple) --class CredentialCallback(utils.RepoTestCase): -- def test_callback(self): -- class MyCallbacks(pygit2.RemoteCallbacks): -- @staticmethod -- def credentials(url, username, allowed): -- self.assertTrue(allowed & GIT_CREDTYPE_USERPASS_PLAINTEXT) -- raise Exception("I don't know the password") -- -- url = "https://github.com/github/github" -- remote = self.repo.create_remote("github", url) -- -- self.assertRaises(Exception, lambda: remote.fetch(callbacks=MyCallbacks())) -- -- def test_bad_cred_type(self): -- class MyCallbacks(pygit2.RemoteCallbacks): -- @staticmethod -- def credentials(url, username, allowed): -- self.assertTrue(allowed & GIT_CREDTYPE_USERPASS_PLAINTEXT) -- return Keypair("git", "foo.pub", "foo", "sekkrit") -- -- url = "https://github.com/github/github" -- remote = self.repo.create_remote("github", url) -- self.assertRaises(TypeError, lambda: remote.fetch(callbacks=MyCallbacks())) -- --class CallableCredentialTest(utils.RepoTestCase): -- -- def test_user_pass(self): -- credentials = UserPass("libgit2", "libgit2") -- callbacks = pygit2.RemoteCallbacks(credentials=credentials) -- -- url = "https://bitbucket.org/libgit2/testgitrepository.git" -- remote = self.repo.create_remote("bb", url) -- remote.fetch(callbacks=callbacks) -- - if __name__ == '__main__': - unittest.main() ++@unittest.skipIf(True, "network tests are not supported in Guix") + class CredentialCallback(utils.RepoTestCase): + def test_callback(self): + class MyCallbacks(pygit2.RemoteCallbacks): +@@ -92,6 +93,7 @@ class CredentialCallback(utils.RepoTestCase): + remote = self.repo.create_remote("github", url) + self.assertRaises(TypeError, lambda: remote.fetch(callbacks=MyCallbacks())) + ++@unittest.skipIf(True, "network tests are not supported in Guix") + class CallableCredentialTest(utils.RepoTestCase): + + def test_user_pass(self): diff --git a/test/test_repository.py b/test/test_repository.py -index cfdf01e..c0d8de4 100644 --- a/test/test_repository.py +++ b/test/test_repository.py -@@ -538,13 +538,6 @@ class CloneRepositoryTest(utils.NoRepoTestCase): +@@ -573,6 +573,7 @@ class CloneRepositoryTest(utils.NoRepoTestCase): self.assertTrue('refs/remotes/custom_remote/master' in repo.listall_references()) self.assertIsNotNone(repo.remotes["custom_remote"]) -- def test_clone_with_credentials(self): -- repo = clone_repository( -- "https://bitbucket.org/libgit2/testgitrepository.git", -- self._temp_dir, callbacks=pygit2.RemoteCallbacks(credentials=pygit2.UserPass("libgit2", "libgit2"))) -- -- self.assertFalse(repo.is_empty) -- - def test_clone_with_checkout_branch(self): - # create a test case which isolates the remote - test_repo = clone_repository('./test/data/testrepo.git', ++ @unittest.skipIf(True, "network tests are not supported in Guix") + def test_clone_with_credentials(self): + repo = clone_repository( + "https://bitbucket.org/libgit2/testgitrepository.git", +diff --git a/test/test_submodule.py b/test/test_submodule.py +--- a/test/test_submodule.py ++++ b/test/test_submodule.py +@@ -42,6 +42,7 @@ SUBM_PATH = 'submodule' + SUBM_URL = 'https://github.com/libgit2/pygit2' + SUBM_HEAD_SHA = '819cbff552e46ac4b8d10925cc422a30aa04e78e' + ++@unittest.skipIf(True, "network tests are not supported in Guix") + class SubmoduleTest(utils.SubmoduleRepoTestCase): + + def test_lookup_submodule(self): diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 29bb4936bc..f841197ba9 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3910,14 +3910,14 @@ association studies (GWAS) on extremely large data sets.") (define-public python-pygit2 (package (name "python-pygit2") - (version "0.25.0") + (version "0.26.0") (source (origin (method url-fetch) (uri (pypi-uri "pygit2" version)) (sha256 (base32 - "0wf5rp0fvrw7j3j18dvwjq6xqlbm611wd55aphrfpps0v1gxh3ny")) + "1cbc488ra3kg7r3qky17ms0szi3cda2d96qfkv1l9djsy9hnvw57")) (patches (search-patches "python-pygit2-disable-network-tests.patch")))) (build-system python-build-system) From d9f15d7e48bc7c361b8a88849542d9f5d7442126 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 18 Aug 2017 16:33:04 -0400 Subject: [PATCH 1099/1227] gnu: newsbeuter: Fix CVE-2017-12904. * gnu/packages/patches/newsbeuter-CVE-2017-12904.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/syndication.scm (newsbeuter)[source]: Use it. --- gnu/local.mk | 1 + .../patches/newsbeuter-CVE-2017-12904.patch | 34 +++++++++++++++++++ gnu/packages/syndication.scm | 2 ++ 3 files changed, 37 insertions(+) create mode 100644 gnu/packages/patches/newsbeuter-CVE-2017-12904.patch diff --git a/gnu/local.mk b/gnu/local.mk index c37d4b2206..8e4e29bdde 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -879,6 +879,7 @@ dist_patch_DATA = \ %D%/packages/patches/netsurf-system-utf8proc.patch \ %D%/packages/patches/netsurf-y2038-tests.patch \ %D%/packages/patches/netsurf-longer-test-timeout.patch \ + %D%/packages/patches/newsbeuter-CVE-2017-12904.patch \ %D%/packages/patches/ngircd-handle-zombies.patch \ %D%/packages/patches/ninja-zero-mtime.patch \ %D%/packages/patches/node-9077.patch \ diff --git a/gnu/packages/patches/newsbeuter-CVE-2017-12904.patch b/gnu/packages/patches/newsbeuter-CVE-2017-12904.patch new file mode 100644 index 0000000000..8e90502469 --- /dev/null +++ b/gnu/packages/patches/newsbeuter-CVE-2017-12904.patch @@ -0,0 +1,34 @@ +Fix CVE-2017-12904: + +https://github.com/akrennmair/newsbeuter/issues/591 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=2017-12904 + +Patch copied from the Debian package of newsbeuter, version 2.9-5+deb9u1. + +Adapted from upstream source repository: + +https://github.com/akrennmair/newsbeuter/commit/96e9506ae9e252c548665152d1b8968297128307 + +Description: Fix a RCE vulnerability in the bookmark command + Newsbeuter didn't properly escape the title and description fields before + passing them to the bookmarking program which could lead to remote code + execution using the shells command substitution functionality (e.g. "$()", ``, + etc) + +Origin: upstream, https://github.com/akrennmair/newsbeuter/commit/96e9506ae9e252c548665152d1b8968297128307 +Last-Update: 2017-08-18 + +--- newsbeuter-2.9.orig/src/controller.cpp ++++ newsbeuter-2.9/src/controller.cpp +@@ -1274,9 +1274,10 @@ std::string controller::bookmark(const s + std::string bookmark_cmd = cfg.get_configvalue("bookmark-cmd"); + bool is_interactive = cfg.get_configvalue_as_bool("bookmark-interactive"); + if (bookmark_cmd.length() > 0) { +- std::string cmdline = utils::strprintf("%s '%s' %s %s", ++ std::string cmdline = utils::strprintf("%s '%s' '%s' '%s'", + bookmark_cmd.c_str(), utils::replace_all(url,"'", "%27").c_str(), +- stfl::quote(title).c_str(), stfl::quote(description).c_str()); ++ utils::replace_all(title,"'", "%27").c_str(), ++ utils::replace_all(description,"'", "%27").c_str()); + + LOG(LOG_DEBUG, "controller::bookmark: cmd = %s", cmdline.c_str()); diff --git a/gnu/packages/syndication.scm b/gnu/packages/syndication.scm index f434006656..80c45c396c 100644 --- a/gnu/packages/syndication.scm +++ b/gnu/packages/syndication.scm @@ -18,6 +18,7 @@ #:use-module (guix download) #:use-module (guix packages) #:use-module (guix build-system gnu) + #:use-module (gnu packages) #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages gettext) @@ -37,6 +38,7 @@ (method url-fetch) (uri (string-append "https://newsbeuter.org/downloads/newsbeuter-" version ".tar.gz")) + (patches (search-patches "newsbeuter-CVE-2017-12904.patch")) (sha256 (base32 "1j1x0hgwxz11dckk81ncalgylj5y5fgw5bcmp9qb5hq9kc0vza3l")))) From 865aacc9fae1a04f14ea2d7066c523192c79f027 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 14:13:50 +0200 Subject: [PATCH 1100/1227] gnu: Remove libgames-support. It was simply the old name (and version) of libgnome-games-support. * gnu/packages/gnome.scm (libgames-support): Remove variable. Move the inherited fields... (libgnome-games-support): ...to here. --- gnu/packages/gnome.scm | 62 ++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 38 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f17db8fe13..f143155933 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3335,45 +3335,8 @@ write applications that need to store structured data as well as make complex queries upon that data.") (license license:lgpl2.1+))) -(define-public libgames-support - (package - (name "libgames-support") - (version "1.0.2") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "0rms2ksiv7j9944km7r87q22nh05si1fisn5xm3z4zy5vpcfi5mh")))) - (build-system gnu-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-before 'check 'pre-check - (lambda _ - ;; tests require a writable HOME. - (setenv "HOME" (getcwd)) - #t))))) - (native-inputs - `(("intltool" ,intltool) - ("pkg-config" ,pkg-config) - ("vala" ,vala))) - (propagated-inputs - ;; Required by libgames-support-1.0.pc - `(("gtk+" ,gtk+) - ("libgee" ,libgee))) - (home-page "https://www.gnome.org/") - (synopsis "Useful functionality shared among GNOME games") - (description - "libgames-support is a small library intended for internal use by -GNOME Games, but it may be used by others.") - (license license:lgpl3+))) - (define-public libgnome-games-support (package - (inherit libgames-support) (name "libgnome-games-support") (version "1.2.2") (source (origin @@ -3383,7 +3346,30 @@ GNOME Games, but it may be used by others.") name "-" version ".tar.xz")) (sha256 (base32 - "04qbgcgmc01sinhbqdljiny8q868l01nkdawj8wrnqnd1i8czvsg")))))) + "04qbgcgmc01sinhbqdljiny8q868l01nkdawj8wrnqnd1i8czvsg")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + ;; Tests require a writable HOME. + (setenv "HOME" (getcwd)) + #t))))) + (native-inputs + `(("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (propagated-inputs + ;; Required by libgnome-games-support-1.0.pc + `(("gtk+" ,gtk+) + ("libgee" ,libgee))) + (home-page "https://www.gnome.org/") + (synopsis "Useful functionality shared among GNOME games") + (description + "libgnome-games-support is a small library intended for internal use by +GNOME Games, but it may be used by others.") + (license license:lgpl3+))) (define-public gnome-klotski (package From 00d9124d40aef7ad354b7d5c5ac32a1ae5976453 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 9 Jun 2017 09:34:32 +0200 Subject: [PATCH 1101/1227] gnu: lz4: Use recommended home page. * gnu/packages/compression.scm (lz4)[home-page]: Use lz4.org. --- gnu/packages/compression.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 523bedb477..30838e04a5 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -728,7 +728,7 @@ writing of compressed data created with the zlib and bzip2 libraries.") (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure)))) ; no configure script - (home-page "https://github.com/lz4/lz4") + (home-page "http://www.lz4.org") (synopsis "Compression algorithm focused on speed") (description "LZ4 is a lossless compression algorithm, providing compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an From b7585ca3b92c16986fcf84f1cb3f00e29c4b090d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 19 Aug 2017 00:09:31 +0200 Subject: [PATCH 1102/1227] gnu: lz4: Update to 1.8.0. * gnu/packages/compression.scm (lz4): Update to 1.8.0. Fix typo in comment. [source]: Remove patch. * gnu/packages/patches/lz4-fix-test-failures.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/compression.scm | 7 +- .../patches/lz4-fix-test-failures.patch | 136 ------------------ 3 files changed, 3 insertions(+), 141 deletions(-) delete mode 100644 gnu/packages/patches/lz4-fix-test-failures.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8e4e29bdde..2d49b1e974 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -842,7 +842,6 @@ dist_patch_DATA = \ %D%/packages/patches/lvm2-static-link.patch \ %D%/packages/patches/lxsession-use-gapplication.patch \ %D%/packages/patches/lxterminal-CVE-2016-10369.patch \ - %D%/packages/patches/lz4-fix-test-failures.patch \ %D%/packages/patches/make-impure-dirs.patch \ %D%/packages/patches/mars-install.patch \ %D%/packages/patches/mars-sfml-2.3.patch \ diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 30838e04a5..0a2cda84fb 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -708,16 +708,15 @@ writing of compressed data created with the zlib and bzip2 libraries.") (define-public lz4 (package (name "lz4") - (version "1.7.5") + (version "1.8.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/lz4/lz4/archive/" "v" version ".tar.gz")) - (patches (search-patches "lz4-fix-test-failures.patch")) (sha256 (base32 - "0zkykqqjfa1q3ji0qmb1ml3l9063qqfh99agyj3cnb02cg6wm401")) + "1xnckwwah74gl98gylf1b00vk4km1d8sgd8865h07ccvgbm8591c")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (native-inputs `(("valgrind" ,valgrind))) ; for tests @@ -735,7 +734,7 @@ compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an extremely fast decoder, with speed in multiple GB/s per core (0.71 Bytes/cycle). A high compression derivative, called LZ4_HC, is also provided. It trades CPU time for compression ratio.") - ;; The libraries (lz4, lz4hc, and xxhash are BSD licenced. The command + ;; The libraries (lz4, lz4hc, and xxhash) are BSD licenced. The command ;; line interface programs (lz4, fullbench, fuzzer, datagen) are GPL2+. (license (list license:bsd-2 license:gpl2+)))) diff --git a/gnu/packages/patches/lz4-fix-test-failures.patch b/gnu/packages/patches/lz4-fix-test-failures.patch deleted file mode 100644 index d38357d402..0000000000 --- a/gnu/packages/patches/lz4-fix-test-failures.patch +++ /dev/null @@ -1,136 +0,0 @@ -These two patches fix some bugs in lz4's test suite: - -https://github.com/lz4/lz4/issues/308 - -Patches copied from upstream source repository: - -https://github.com/lz4/lz4/commit/b89cac7b2e92b792af98bb0a12e4d14684d07629 -https://github.com/lz4/lz4/commit/0dfb0b9dad2a8cb7cc347d2139bf9b84de7e1481 - -From b89cac7b2e92b792af98bb0a12e4d14684d07629 Mon Sep 17 00:00:00 2001 -From: Eric Siegerman -Date: Tue, 14 Feb 2017 14:17:06 -0500 -Subject: [PATCH] Don't use "foo && false || true" - -Replace it with either: - test ! -f $FILE_THAT_SHOULD_NOT_EXIST -or: - ! $COMMAND_THAT_SHOULD_FAIL - -as appropriate. ---- - tests/Makefile | 38 +++++++++++++++++++------------------- - 1 file changed, 19 insertions(+), 19 deletions(-) - -diff --git a/tests/Makefile b/tests/Makefile -index 77e6ae7..ebab278 100644 ---- a/tests/Makefile -+++ b/tests/Makefile -@@ -236,17 +236,17 @@ test-lz4-basic: lz4 datagen unlz4 lz4cat - ./datagen -g256MB | $(LZ4) -vqB4D | $(LZ4) -t - @echo "hello world" > tmp - $(LZ4) --rm -f tmp -- ls -ls tmp && false || true # must fail (--rm) -- ls -ls tmp.lz4 -- $(PRGDIR)/lz4cat tmp.lz4 # must display hello world -- ls -ls tmp.lz4 -+ test ! -f tmp # must fail (--rm) -+ test -f tmp.lz4 -+ $(PRGDIR)/lz4cat tmp.lz4 # must display hello world -+ test -f tmp.lz4 - $(PRGDIR)/unlz4 --rm tmp.lz4 -- ls -ls tmp -- ls -ls tmp.lz4 && false || true # must fail (--rm) -- ls -ls tmp.lz4.lz4 && false || true # must fail (unlz4) -- $(PRGDIR)/lz4cat tmp # pass-through mode -- ls -ls tmp -- ls -ls tmp.lz4 && false || true # must fail (lz4cat) -+ test -f tmp -+ test ! -f tmp.lz4 # must fail (--rm) -+ test ! -f tmp.lz4.lz4 # must fail (unlz4) -+ $(PRGDIR)/lz4cat tmp # pass-through mode -+ test -f tmp -+ test ! -f tmp.lz4 # must fail (lz4cat) - $(LZ4) tmp # creates tmp.lz4 - $(PRGDIR)/lz4cat < tmp.lz4 > tmp3 # checks lz4cat works with stdin (#285) - $(DIFF) -q tmp tmp3 -@@ -262,22 +262,22 @@ test-lz4-hugefile: lz4 datagen - - test-lz4-testmode: lz4 datagen - @echo "\n ---- bench mode ----" -- $(LZ4) -bi1 -+ $(LZ4) -bi1 - @echo "\n ---- test mode ----" -- ./datagen | $(LZ4) -t && false || true -- ./datagen | $(LZ4) -tf && false || true -+ ! ./datagen | $(LZ4) -t -+ ! ./datagen | $(LZ4) -tf - @echo "\n ---- pass-through mode ----" -- ./datagen | $(LZ4) -d > $(VOID) && false || true -- ./datagen | $(LZ4) -df > $(VOID) -+ ! ./datagen | $(LZ4) -d > $(VOID) -+ ./datagen | $(LZ4) -df > $(VOID) - @echo "Hello World !" > tmp1 - $(LZ4) -dcf tmp1 - @echo "from underground..." > tmp2 - $(LZ4) -dcfm tmp1 tmp2 - @echo "\n ---- test cli ----" -- $(LZ4) file-does-not-exist && false || true -- $(LZ4) -f file-does-not-exist && false || true -- $(LZ4) -fm file1-dne file2-dne && false || true -- $(LZ4) -fm file1-dne file2-dne && false || true -+ ! $(LZ4) file-does-not-exist -+ ! $(LZ4) -f file-does-not-exist -+ ! $(LZ4) -fm file1-dne file2-dne -+ ! $(LZ4) -fm file1-dne file2-dne - - test-lz4-opt-parser: lz4 datagen - @echo "\n ---- test opt-parser ----" --- -2.12.2 - -From 0dfb0b9dad2a8cb7cc347d2139bf9b84de7e1481 Mon Sep 17 00:00:00 2001 -From: "Dmitry V. Levin" -Date: Sun, 5 Mar 2017 23:20:10 +0000 -Subject: [PATCH] Fix test-lz4-basic - -When no output filename is specified and stdout is not a terminal, -lz4 doesn't attempt to guess an output filename and uses stdout for -output. - -This change fixes test-lz4-basic when run without a terminal -by specifying output filenames. ---- - tests/Makefile | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/tests/Makefile b/tests/Makefile -index ebab278..d68c700 100644 ---- a/tests/Makefile -+++ b/tests/Makefile -@@ -235,19 +235,19 @@ test-lz4-basic: lz4 datagen unlz4 lz4cat - ./datagen -g33M | $(LZ4) --no-frame-crc | $(LZ4) -t - ./datagen -g256MB | $(LZ4) -vqB4D | $(LZ4) -t - @echo "hello world" > tmp -- $(LZ4) --rm -f tmp -+ $(LZ4) --rm -f tmp tmp.lz4 - test ! -f tmp # must fail (--rm) - test -f tmp.lz4 - $(PRGDIR)/lz4cat tmp.lz4 # must display hello world - test -f tmp.lz4 -- $(PRGDIR)/unlz4 --rm tmp.lz4 -+ $(PRGDIR)/unlz4 --rm tmp.lz4 tmp - test -f tmp - test ! -f tmp.lz4 # must fail (--rm) - test ! -f tmp.lz4.lz4 # must fail (unlz4) - $(PRGDIR)/lz4cat tmp # pass-through mode - test -f tmp - test ! -f tmp.lz4 # must fail (lz4cat) -- $(LZ4) tmp # creates tmp.lz4 -+ $(LZ4) tmp tmp.lz4 # creates tmp.lz4 - $(PRGDIR)/lz4cat < tmp.lz4 > tmp3 # checks lz4cat works with stdin (#285) - $(DIFF) -q tmp tmp3 - $(PRGDIR)/lz4cat < tmp > tmp2 # checks lz4cat works with stdin (#285) --- -2.12.2 - From e121be1e15b79ed179b5618a7b47d94b6aa7024d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 19 Aug 2017 02:16:55 +0200 Subject: [PATCH 1103/1227] gnu: python-netaddr: Update to 0.7.19. * gnu/packages/python.scm (python-netaddr): Update to 0.7.19. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index f841197ba9..6da5ad8a06 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7290,7 +7290,7 @@ reading and writing MessagePack data.") (define-public python-netaddr (package (name "python-netaddr") - (version "0.7.18") + (version "0.7.19") (source (origin (method url-fetch) @@ -7300,7 +7300,7 @@ reading and writing MessagePack data.") ".tar.gz")) (sha256 (base32 - "06dxjlbcicq7q3vqy8agq11ra01kvvd47j4mk6dmghjsyzyckxd1")))) + "1zdfadvpq4lmcqzr383gywxn4xyn355kj1n3lk9q2l03vmyfrbiq")))) (build-system python-build-system) (arguments `(#:tests? #f)) ;; No tests. (home-page "https://github.com/drkjam/netaddr/") From d79013f66a98dca24e11193c43e78364043d0c16 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sat, 5 Aug 2017 12:12:21 +0200 Subject: [PATCH 1104/1227] maint: Create an ISO9660 installation image in the 'release' target. * Makefile.am (GUIXSD_IMAGE_BASE): Adapt target file name. (release): Use file-system-type iso9660. * doc/guix.texi: Document installation from DVD. --- Makefile.am | 3 +- doc/guix.texi | 91 ++++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 81 insertions(+), 13 deletions(-) diff --git a/Makefile.am b/Makefile.am index 91a9113d22..9ba4ccba78 100644 --- a/Makefile.am +++ b/Makefile.am @@ -577,7 +577,7 @@ GUIXSD_SUPPORTED_SYSTEMS ?= x86_64-linux i686-linux GUIXSD_VM_SYSTEMS ?= x86_64-linux # Prefix of the GuixSD installation image file name. -GUIXSD_IMAGE_BASE = guixsd-usb-install-$(PACKAGE_VERSION) +GUIXSD_IMAGE_BASE = guixsd-install-$(PACKAGE_VERSION) # Prefix of the GuixSD VM image file name. GUIXSD_VM_IMAGE_BASE = guixsd-vm-image-$(PACKAGE_VERSION) @@ -628,6 +628,7 @@ release: dist for system in $(GUIXSD_SUPPORTED_SYSTEMS) ; do \ image=`$(top_builddir)/pre-inst-env \ guix system disk-image \ + --file-system-type=iso9660 \ --system=$$system \ gnu/system/install.scm` ; \ if [ ! -f "$$image" ] ; then \ diff --git a/doc/guix.texi b/doc/guix.texi index 94277ba396..9521181f57 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -7465,6 +7465,7 @@ available. * Limitations:: What you can expect. * Hardware Considerations:: Supported hardware. * USB Stick Installation:: Preparing the installation medium. +* DVD Installation:: Preparing the installation medium. * Preparing for Installation:: Networking, partitioning, etc. * Proceeding with the Installation:: The real thing. * Installing GuixSD in a VM:: GuixSD playground. @@ -7554,7 +7555,7 @@ about their support in GNU/Linux. @subsection USB Stick Installation An installation image for USB sticks can be downloaded from -@indicateurl{ftp://alpha.gnu.org/gnu/guix/guixsd-usb-install-@value{VERSION}.@var{system}.xz}, +@indicateurl{ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz}, where @var{system} is one of: @table @code @@ -7570,8 +7571,8 @@ Make sure to download the associated @file{.sig} file and to verify the authenticity of the image against it, along these lines: @example -$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-usb-install-@value{VERSION}.@var{system}.xz.sig -$ gpg --verify guixsd-usb-install-@value{VERSION}.@var{system}.xz.sig +$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz.sig +$ gpg --verify guixsd-install-@value{VERSION}.@var{system}.xz.sig @end example If that command fails because you do not have the required public key, @@ -7585,9 +7586,8 @@ $ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} and rerun the @code{gpg --verify} command. @c end duplication -This image contains a single partition with the tools necessary for an -installation. It is meant to be copied @emph{as is} to a large-enough -USB stick. +This image contains the tools necessary for an installation. +It is meant to be copied @emph{as is} to a large-enough USB stick or DVD. To copy the image to a USB stick, follow these steps: @@ -7596,7 +7596,7 @@ To copy the image to a USB stick, follow these steps: Decompress the image using the @command{xz} command: @example -xz -d guixsd-usb-install-@value{VERSION}.@var{system}.xz +xz -d guixsd-install-@value{VERSION}.@var{system}.xz @end example @item @@ -7605,7 +7605,7 @@ its device name. Assuming that the USB stick is known as @file{/dev/sdX}, copy the image with: @example -dd if=guixsd-usb-install-@value{VERSION}.x86_64 of=/dev/sdX +dd if=guixsd-install-@value{VERSION}.x86_64 of=/dev/sdX sync @end example @@ -7619,12 +7619,79 @@ UEFI boot menu, where you can choose to boot from the USB stick. @xref{Installing GuixSD in a VM}, if, instead, you would like to install GuixSD in a virtual machine (VM). +@node DVD Installation +@subsection DVD Installation + +An installation image for DVDs can be downloaded from +@indicateurl{ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz}, +where @var{system} is one of: + +@table @code +@item x86_64-linux +for a GNU/Linux system on Intel/AMD-compatible 64-bit CPUs; + +@item i686-linux +for a 32-bit GNU/Linux system on Intel-compatible CPUs. +@end table + +@c start duplication of authentication part from ``Binary Installation'' +Make sure to download the associated @file{.sig} file and to verify the +authenticity of the image against it, along these lines: + +@example +$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz.sig +$ gpg --verify guixsd-install-@value{VERSION}.@var{system}.xz.sig +@end example + +If that command fails because you do not have the required public key, +then run this command to import it: + +@example +$ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} +@end example + +@noindent +and rerun the @code{gpg --verify} command. +@c end duplication + +This image contains the tools necessary for an installation. +It is meant to be copied @emph{as is} to a large-enough USB stick or DVD. + +To copy the image to a DVD, follow these steps: + +@enumerate +@item +Decompress the image using the @command{xz} command: + +@example +xz -d guixsd-install-@value{VERSION}.@var{system}.xz +@end example + +@item +Insert a blank DVD into your machine, and determine +its device name. Assuming that the DVD drive is known as @file{/dev/srX}, +copy the image with: + +@example +growisofs -dvd-compat -Z /dev/srX=guixsd-install-@value{VERSION}.x86_64 +@end example + +Access to @file{/dev/srX} usually requires root privileges. +@end enumerate + +Once this is done, you should be able to reboot the system and boot from +the DVD. The latter usually requires you to get in the BIOS or +UEFI boot menu, where you can choose to boot from the DVD. + +@xref{Installing GuixSD in a VM}, if, instead, you would like to install +GuixSD in a virtual machine (VM). + @node Preparing for Installation @subsection Preparing for Installation -Once you have successfully booted the image on the USB stick, you should -end up with a root prompt. Several console TTYs are configured and can -be used to run commands as root. TTY2 shows this documentation, +Once you have successfully booted your computer using the installation medium, +you should end up with a root prompt. Several console TTYs are configured +and can be used to run commands as root. TTY2 shows this documentation, browsable using the Info reader commands (@pxref{Top,,, info-stnd, Stand-alone GNU Info}). The installation system runs the GPM mouse daemon, which allows you to select text with the left mouse button and @@ -7979,7 +8046,7 @@ Boot the USB installation image in an VM: @example qemu-system-x86_64 -m 1024 -smp 1 \ -net user -net nic,model=virtio -boot menu=on \ - -drive file=guixsd-usb-install-@value{VERSION}.@var{system} \ + -drive file=guixsd-install-@value{VERSION}.@var{system} \ -drive file=guixsd.img @end example From acabbd597678e1f0be995297bb009b6dd38ae795 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sat, 19 Aug 2017 01:09:18 +0530 Subject: [PATCH 1105/1227] doc: Mention how to use emacs-debbugs. * HACKING (Using emacs-debbugs): Add section on using emacs-debbugs. --- HACKING | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/HACKING b/HACKING index 20cc9ea6ea..d1a26d2d64 100644 --- a/HACKING +++ b/HACKING @@ -5,6 +5,7 @@ Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès Copyright © 2015, 2017 Mathieu Lirzin Copyright © 2017 Leo Famulari +Copyright © 2017 Arun Isaac Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright @@ -61,3 +62,12 @@ after two weeks, and if you’re confident, it’s OK to commit. That last part is subject to being adjusted, allowing individuals to commit directly on non-controversial changes on parts they’re familiar with. + +* Using emacs-debbugs + +Bug reports and patches are tracked using debbugs. If you are on emacs, you +can use emacs-debbugs. + +List all open bug reports on guix-patches with + +C-u M-x debbugs-gnu guix-patches n y From 2905926285c0ea4a66be61b8f6687c16f61bc8d1 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 19 Aug 2017 11:04:22 +0100 Subject: [PATCH 1106/1227] doc: Update Database services in detailed node list. This was updated in the Service subsection, but the matching update here was missed. * doc/guix.text (Top): Change database services description. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 9521181f57..816064383c 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -216,7 +216,7 @@ Services * X Window:: Graphical display. * Printing Services:: Local and remote printer support. * Desktop Services:: D-Bus and desktop services. -* Database Services:: SQL databases. +* Database Services:: SQL databases, key-value stores, etc. * Mail Services:: IMAP, POP3, SMTP, and all that. * Messaging Services:: Messaging services. * Monitoring Services:: Monitoring services. From 55cca6ac616275f33988df6a3e6746f921990d5f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 19 Aug 2017 15:26:10 +0200 Subject: [PATCH 1107/1227] gnu: perl-plack-middleware-reverseproxy: Provide Module::Install. * gnu/packages/web.scm (perl-plack-middleware-reverseproxy)[native-inputs]: Add PERL-MODULE-INSTALL. --- gnu/packages/web.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 54fd410df7..8021366052 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2976,6 +2976,8 @@ required.") (base32 "1zmsccdy6wr5hxzj07r1nsmaymyibk87p95z0wzknjw10lwmqs9f")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-plack" ,perl-plack))) (home-page "http://search.cpan.org/dist/Plack-Middleware-ReverseProxy") From 1cd5f1776da210b1d2dc0594de3597881d0e0231 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 19 Aug 2017 16:02:51 +0200 Subject: [PATCH 1108/1227] gnu: perl-moosex-types-datetime: Update to 0.13. * gnu/packages/perl.scm (perl-moosex-types-datetime): Update to 0.13. --- gnu/packages/perl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 2b2b2ea1fe..2baf09e943 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -4972,7 +4972,7 @@ prevent name clashes between packages.") (define-public perl-moosex-types-datetime (package (name "perl-moosex-types-datetime") - (version "0.10") + (version "0.13") (source (origin (method url-fetch) @@ -4980,7 +4980,7 @@ prevent name clashes between packages.") "MooseX-Types-DateTime-" version ".tar.gz")) (sha256 (base32 - "03p66rx0qj2p23n2i2rj7c7x41621jzzaxscrpg95mb3mqmravc0")))) + "1iir3mdvz892kbbs2q91vjxnhas7811m3d3872m7x8gn6rka57xq")))) (build-system perl-build-system) (native-inputs `(("perl-module-build-tiny" ,perl-module-build-tiny) From f87c1107d60372acc5ff627324e9fdd36278daa3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 19 Aug 2017 16:11:21 +0200 Subject: [PATCH 1109/1227] gnu: perl: Work around more "dotless @INC" build issues. * gnu/packages/perl.scm (perl-hash-fieldhash, perl-string-camelcase)[arguments]: Add 'set-perl-search-path' phase. --- gnu/packages/perl.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 2baf09e943..e6138fcc98 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3432,6 +3432,16 @@ which are tied to the scope exit.") (base32 "1wg8nzczfxif55j2nbymbhyd25pjy7dqs4bvd6jrcds3ll3mflaw")))) (build-system perl-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'set-perl-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) ":" + (getenv "PERL5LIB"))) + #t))))) (native-inputs `(("perl-module-build" ,perl-module-build) ("perl-test-leaktrace" ,perl-test-leaktrace))) @@ -6087,6 +6097,16 @@ run from within a source-controlled directory.") (base32 "17kh8nap2z5g5rqcvw0m7mvbai7wr7h0al39w8l827zhqad8ss42")))) (build-system perl-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'set-perl-search-path + (lambda _ + ;; Work around "dotless @INC" build failure. + (setenv "PERL5LIB" + (string-append (getcwd) ":" + (getenv "PERL5LIB"))) + #t))))) (home-page "http://search.cpan.org/dist/String-CamelCase") (synopsis "Camelcase and de-camelcase") (description "This module may be used to convert from under_score text to From 68d5906c06edb1bfb0ffdcf35288d7d14f9e7c5e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 19 Aug 2017 16:27:33 +0200 Subject: [PATCH 1110/1227] gnu: perl-www-mechanize: Update to 1.86. * gnu/packages/web.scm (perl-www-mechanize): Update to 1.86. [native-inputs]: Add PERL-TEST-DEEP, PERL-TEST-FATAL, PERL-TEST-OUTPUT and PERL-TEST-WARNINGS. [propagated-inputs]: Add PERL-HTML-TREE. --- gnu/packages/web.scm | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 8021366052..1a37c82d6f 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3276,7 +3276,7 @@ library.") (define-public perl-www-mechanize (package (name "perl-www-mechanize") - (version "1.73") + (version "1.86") (source (origin (method url-fetch) @@ -3284,13 +3284,18 @@ library.") "WWW-Mechanize-" version ".tar.gz")) (sha256 (base32 - "1zrw8aadhwy48q51x2z2rqlkwf17bya4j4h3hy89mw783j96rmg9")))) + "0sfl6b7mx8nannnh3ys5jk44d1s1b2d1mffrnrphkzzykaw6hm0f")))) (build-system perl-build-system) (native-inputs ;only for tests - `(("perl-cgi" ,perl-cgi))) + `(("perl-cgi" ,perl-cgi) + ("perl-test-deep" ,perl-test-deep) + ("perl-test-fatal" ,perl-test-fatal) + ("perl-test-output" ,perl-test-output) + ("perl-test-warnings" ,perl-test-warnings))) (propagated-inputs `(("perl-html-form" ,perl-html-form) ("perl-html-parser" ,perl-html-parser) + ("perl-html-tree" ,perl-html-tree) ("perl-http-message" ,perl-http-message) ("perl-http-server-simple" ,perl-http-server-simple) ("perl-libwww" ,perl-libwww) From 7eb09e39edcaef8fc5e087bdd1d18a8c651cc4bc Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 19 Aug 2017 16:42:13 +0200 Subject: [PATCH 1111/1227] gnu: perl-net-server: Update to 2.009. * gnu/packages/web.scm (perl-net-server): Update to 2.009. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 1a37c82d6f..ca6f97a0d6 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2806,7 +2806,7 @@ HTTP/1.1.") (define-public perl-net-server (package (name "perl-net-server") - (version "2.008") + (version "2.009") (source (origin (method url-fetch) @@ -2814,7 +2814,7 @@ HTTP/1.1.") "Net-Server-" version ".tar.gz")) (sha256 (base32 - "182gfikn7r40kmm3d35m2qc6r8g0y1j8gxbn9ffaawf8xmm0a889")))) + "0gw1k9gcw7habbkxvsfa2gz34brlbwcidk6khgsf1qjm0dbccrw2")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Net-Server") (synopsis "Extensible Perl server engine") From af735661f3829390c8e43f83873068b86509526b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 19 Aug 2017 17:56:28 +0200 Subject: [PATCH 1112/1227] pack: Add "none" compressor. * guix/scripts/pack.scm (%compressors): Add compressor "none"; prepend extension with ".". (self-contained-tarball, docker-image): Assume compressor extensions start with period. * doc/guix.texi (Invoking guix pack): Document it. --- doc/guix.texi | 2 +- guix/scripts/pack.scm | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 816064383c..bff0788b2f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -2630,7 +2630,7 @@ configuration triplets,, autoconf, Autoconf}). @item --compression=@var{tool} @itemx -C @var{tool} Compress the resulting tarball using @var{tool}---one of @code{gzip}, -@code{bzip2}, @code{xz}, or @code{lzip}. +@code{bzip2}, @code{xz}, @code{lzip}, or @code{none} for no compression. @item --symlink=@var{spec} @itemx -S @var{spec} diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index 1273c09f54..c269a1fefc 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2017 Ludovic Courtès ;;; Copyright © 2017 Efraim Flashner +;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -50,19 +51,20 @@ (compressor name extension command) compressor? (name compressor-name) ;string (e.g., "gzip") - (extension compressor-extension) ;string (e.g., "lz") + (extension compressor-extension) ;string (e.g., ".lz") (command compressor-command)) ;gexp (e.g., #~("/gnu/store/…/gzip" "-9n")) (define %compressors ;; Available compression tools. - (list (compressor "gzip" "gz" + (list (compressor "gzip" ".gz" #~(#+(file-append gzip "/bin/gzip") "-9n")) - (compressor "lzip" "lz" + (compressor "lzip" ".lz" #~(#+(file-append lzip "/bin/lzip") "-9")) - (compressor "xz" "xz" + (compressor "xz" ".xz" #~(#+(file-append xz "/bin/xz") "-e -T0")) - (compressor "bzip2" "bz2" - #~(#+(file-append bzip2 "/bin/bzip2") "-9")))) + (compressor "bzip2" ".bz2" + #~(#+(file-append bzip2 "/bin/bzip2") "-9")) + (compressor "none" "" #f))) (define (lookup-compressor name) "Return the compressor object called NAME. Error out if it could not be @@ -180,7 +182,7 @@ added to the pack." (_ #f)) directives))))))))) - (gexp->derivation (string-append name ".tar." + (gexp->derivation (string-append name ".tar" (compressor-extension compressor)) build #:references-graphs `(("profile" ,profile)))) @@ -245,7 +247,7 @@ the image." #:compressor '#$(compressor-command compressor) #:creation-time (make-time time-utc 0 1))))) - (gexp->derivation (string-append name ".tar." + (gexp->derivation (string-append name ".tar" (compressor-extension compressor)) build #:references-graphs `(("profile" ,profile)))) From 128c9b92699c8bd822cca66cd4824fa376625698 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 19 Aug 2017 21:51:24 +0300 Subject: [PATCH 1113/1227] gnu: perl-www-mechanize: Update source uri. * gnu/packages/web.scm (perl-www-mechanize)[source]: Update to new uri. --- gnu/packages/web.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index ca6f97a0d6..09c60ac0e4 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3280,7 +3280,7 @@ library.") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" + (uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/" "WWW-Mechanize-" version ".tar.gz")) (sha256 (base32 From 7b87132f6e6f1ba03c820519b172a7174fdde964 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Sat, 19 Aug 2017 22:43:51 +0200 Subject: [PATCH 1114/1227] gnu: libreoffice: Update to 5.3.5.2. * gnu/packages/libreoffice.scm (libreoffice): Update to 5.3.5.2. --- gnu/packages/libreoffice.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index c27ddf042a..16a8d257d0 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -789,7 +789,7 @@ and to return information on pronunciations, meanings and synonyms.") (define-public libreoffice (package (name "libreoffice") - (version "5.3.2.2") + (version "5.3.5.2") (source (origin (method url-fetch) @@ -798,7 +798,7 @@ and to return information on pronunciations, meanings and synonyms.") "http://download.documentfoundation.org/libreoffice/src/" (version-prefix version 3) "/libreoffice-" version ".tar.xz")) (sha256 (base32 - "1bcy1wx2cixawpd6cpivakwcwv8ryyy25kdw0fbci319p5gaj4c8")))) + "1sknmb9bhm8mxyfycqbwng1jqs4avyp1ffcla7dhlpwqs1aqxvx5")))) (build-system gnu-build-system) (native-inputs `(;; autoreconf is run by the LibreOffice build system, since after From 0c2e2b660d51f0f2884aa6bf2d6ba8f73084e208 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 19 Aug 2017 11:23:47 -0400 Subject: [PATCH 1115/1227] gnu: icedtea@2: Update to 2.6.11 [security fixes]. Fixes CVE-2017-{10053,10067,10074,10081,10087,10089,10090,10096,10101,10102, 10107,10108,10109,10110,10111,10115,10116,10118,10135,10074,10176}. * gnu/packages/java.scm (icedtea-7): Update to 2.6.11. --- gnu/packages/java.scm | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 5744db6ebc..0835b77676 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1064,7 +1064,7 @@ bootstrapping purposes.") (license license:gpl2+))) (define-public icedtea-7 - (let* ((version "2.6.10") + (let* ((version "2.6.11") (drop (lambda (name hash) (origin (method url-fetch) @@ -1082,7 +1082,7 @@ bootstrapping purposes.") version ".tar.xz")) (sha256 (base32 - "0am945k2zqrka2xn7lb5grmkad4lwncnhnwk8iq6f269birzsj8w")) + "1ibp6ybqnf8g7mbs45bkbv44dwz4h2w9gr4rh15yvr1m8lqkq1i0")) (modules '((guix build utils))) (snippet '(substitute* "Makefile.in" @@ -1475,25 +1475,25 @@ bootstrapping purposes.") (native-inputs `(("openjdk-src" ,(drop "openjdk" - "02klsxp9hlf5sial6mxpiq53hmrhlrg6x774j7bjjfhb7hpdvadh")) + "1zhr4l9kxnbzghcsgjk3vmih9qpg1wrr9qry7fx04l97svp1ylhd")) ("corba-drop" ,(drop "corba" - "1vbly6khri241xda05gnwkpf2fk41d96ls96ximi084mx0a3w5rd")) + "108v15ncb2rnsyzgzncjlm1f57d1sv60zd9qbpas8kqmvpp8r0gz")) ("jaxp-drop" ,(drop "jaxp" - "0s8zln64vdwdxwlw1vpfzm8xbpyhgsv3nqjmnv7y36qpsszg27a5")) + "0zcpcmm3g1s7m31glrbw3ys7azi97ixcvbyxd40y9xzdja3jyr52")) ("jaxws-drop" ,(drop "jaxws" - "0myd66bv8ib8krzgqv754bc564rd8xwpwabvf7my1apyb86vap3n")) + "1gkqm0p3sr8d0xpki3fhf7cvmgqxx8ambgl5f3jx2plfnhsg96d2")) ("jdk-drop" ,(drop "jdk" - "10b4lfv10vba07zblw0wii7mhrfhf32pf7410x5nz2q0smgszl2h")) + "1d9fjnzdx4m6gwkvmj2n097ag0mvkhm3lldaxjki8x8c6a5clknf")) ("langtools-drop" ,(drop "langtools" - "0lvncxb5qzrlqkflrnd0l8vwy155cwj1jb07rkq10z2vx0bq7lq2")) + "0zscdp9arcq7gr8j7jq4m75gq0w1i3ryxpdnrc8fl0msh4w2s2k5")) ("hotspot-drop" ,(drop "hotspot" - "0q6mdgbbd3681y3n0z1v783irdjhhi73z6sn5csczpyhjm318axb")) + "1y6vnssn5y50x27g4ypdb5wwpmi7zf7jdi8gqbymkwf6n8p5y1d6")) ("ant" ,ant-bootstrap) ("attr" ,attr) ("coreutils" ,coreutils) From 36ed934dfe0bab2db62f7581ee0b874421220325 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 19 Aug 2017 11:26:50 -0400 Subject: [PATCH 1116/1227] gnu: icedtea@3: Update to 3.5.1. * gnu/packages/java.scm (icedtea-8): Update to 3.5.1. --- gnu/packages/java.scm | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 0835b77676..31406cda93 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1543,7 +1543,7 @@ IcedTea build harness.") (license license:gpl2+)))) (define-public icedtea-8 - (let* ((version "3.5.0") + (let* ((version "3.5.1") (drop (lambda (name hash) (origin (method url-fetch) @@ -1552,7 +1552,7 @@ IcedTea build harness.") "/icedtea8/" version "/" name ".tar.xz")) (sha256 (base32 hash)))))) (package (inherit icedtea-7) - (version "3.5.0") + (version "3.5.1") (source (origin (method url-fetch) (uri (string-append @@ -1560,7 +1560,7 @@ IcedTea build harness.") version ".tar.xz")) (sha256 (base32 - "1dfa7ing61i73m6wfx2kx59q44npqdiy7cd66xmslyy0xh09xa4s")) + "1j8iv0cdk9fkh3yb5is7z29m9k3s89w6y9090538j6aa7p4nmalf")) (modules '((guix build utils))) (snippet '(begin @@ -1632,34 +1632,34 @@ IcedTea build harness.") `(("jdk" ,icedtea-7 "jdk") ("openjdk-src" ,(drop "openjdk" - "0di7gmyis1p6rpksmff1q21ck85i51sqcl9awqyvg7xiwggq0wsm")) + "0a6yrq8y1zkzc7hm2l28rm3vzy5izfxhmmhhhvc91lhfclnqcd2q")) ("aarch32-drop" ,(drop "aarch32" "0cway5a5hcfyh4pzl9zz5xr7lil4gsliy6r5iqbaasd2d9alvqiq")) ("corba-drop" ,(drop "corba" - "1xk64bsdxfc66g61d8k6xrhqj8rc56vzrlxx6s23gkr45604bl8x")) + "031sc6byd8lqvz3cd07phm13pqrxalxk9f3a2q8pim5n4sbsy0qb")) ("jaxp-drop" ,(drop "jaxp" - "1iw9xa4s5kxijdqpf0ih4x6g0lw142yy11vrzfmz6n1y4b0ic7iw")) + "1815jaj0k0w1s0g0jr1ahkajp1jx2qlb08i6l9ha4wyqqyp49a4n")) ("jaxws-drop" ,(drop "jaxws" - "14p2l4j985wh5cdd4hfmm18gb5wmry73yiysdx9pg3aqpkw9qms7")) + "0vh4f85cxhqvabzg86ycpz02519cdzgsn5dr75k22rkmbbxnbbl6")) ("jdk-drop" ,(drop "jdk" - "1qwmb80vicn7jd801f3j23lyil7327ks54d3s87czwv8h108m40r")) + "196ycqz4d9kknc6b219q4ib83l1kkl6w6l1cznw9bzaafyynqa35")) ("langtools-drop" ,(drop "langtools" - "175pi2privhcvn9sbam5mhhgcvicfqbgldiw25fi5g80fqkkrza9")) + "0ssnadlr5cxhmj06nmni34kdynix1sjhcvjzahm5yzfd7dfllmgy")) ("hotspot-drop" ,(drop "hotspot" - "1qdyn02p4ssl3p7z9aadhzl9qdam2q7pvwddz2jkyvajcrxb0mpi")) + "0f7fxf0s9kadvs80hm5ga72pyp9r0fvl8zm1wmd1wrks8kl79sd6")) ("nashorn-drop" ,(drop "nashorn" - "0kzmpf5b9kwhrvnwn7m20q3dzz8s82jjvbac84606x3ff97xk5gr")) + "0m95qgnd4z6p0xp9m06ihss7skx2yrm7xw69jsjsrxpriy1shiwy")) ("shenandoah-drop" ,(drop "shenandoah" - "0kjc5m5jj2bzyy1vj1s59khv5xjfnkxy18z0g4bdb1kb3g21c5wi")) + "0yjlcgp6mldp30hmkfl68mdwlbg3gb0m6xd5y7srczni7cln5f3i")) ,@(fold alist-delete (package-native-inputs icedtea-7) '("jdk" "openjdk-src" "corba-drop" "jaxp-drop" "jaxws-drop" "jdk-drop" "langtools-drop" "hotspot-drop"))))))) From 6a84ec8eb3e58f22e2961016722ae01e464cb8f4 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Fri, 18 Aug 2017 14:43:55 +0530 Subject: [PATCH 1117/1227] gnu: Add libinfinity. * gnu/packages/gobby.scm (libinfinity): New variable. --- gnu/packages/gobby.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm index 961028d00a..897a6ac425 100644 --- a/gnu/packages/gobby.scm +++ b/gnu/packages/gobby.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Andy Wingo +;;; Copyright © 2017 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,6 +26,7 @@ #:use-module (gnu packages) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gsasl) #:use-module (gnu packages gtk) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) @@ -129,3 +131,35 @@ documents in one session. Obby is used by the Gobby collaborative editor.") a multi-user chat. Gobby allows multiple users to edit the same document together over the internet in real-time.") (license license:gpl2+))) + +(define-public libinfinity + (package + (name "libinfinity") + (version "0.6.8") + (source + (origin + (method url-fetch) + (uri (string-append "http://releases.0x539.de/libinfinity/libinfinity-" + version ".tar.gz")) + (sha256 + (base32 + "0nylsb6qz9pjw3agjp27c4za205i6zg6i5g1vgs5vbdnbh77wkhc")))) + (build-system gnu-build-system) + (inputs + `(("glib" ,glib) + ("gsasl" ,gsasl) + ("gtk+" ,gtk+-2) + ("libxml2" ,libxml2))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:configure-flags (list "--with-inftextgtk" + "--with-infgtk"))) + (home-page "https://gobby.github.io/") + (synopsis "Infininote protocol implementation") + (description "libinfinity is a library to build collaborative text +editors. Changes to the text buffers are synced to all other clients over a +central server. Even though a central server is involved, the local user sees +his changes applied instantly and the merging is done on the individual +clients.") + (license license:lgpl2.1+))) From 97291c0c7c6bc50aa503f9bf7f9abd97cffae9c9 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Fri, 18 Aug 2017 14:44:17 +0530 Subject: [PATCH 1118/1227] gnu: gobby: Update to 0.5.0. * gnu/packages/gobby.scm (gobby): Update to 0.5.0. [inputs]: Remove libnet6 and obby. Add libinfinity. Sort. [arguments]: Add move-executable phase. --- gnu/packages/gobby.scm | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm index 897a6ac425..37b1c158e0 100644 --- a/gnu/packages/gobby.scm +++ b/gnu/packages/gobby.scm @@ -101,7 +101,7 @@ documents in one session. Obby is used by the Gobby collaborative editor.") (define-public gobby (package (name "gobby") - (version "0.4.13") + (version "0.5.0") (source (origin (method url-fetch) (uri (string-append "http://releases.0x539.de/gobby/gobby-" @@ -109,21 +109,28 @@ documents in one session. Obby is used by the Gobby collaborative editor.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0w8q01lf6bcdz537b29m7rwlbc7k87b12vnpm1h6219ypvzqkgcc")))) + "165x0r668ma5blziisvbr8qig3jw9hf7i6w8r7wwvz3wsac3bswc")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) (inputs - `(("libxml++-2" ,libxml++-2) - ("gnutls" ,gnutls) + `(("gnutls" ,gnutls) + ("gsasl" ,gsasl) ("gtkmm-2" ,gtkmm-2) ("gtksourceview-2" ,gtksourceview-2) - ("libnet6" ,libnet6) - ("obby" ,obby))) + ("libinfinity" ,libinfinity) + ("libxml++-2" ,libxml++-2))) (arguments ;; Required by libsigc++. - `(#:configure-flags '("CXXFLAGS=-std=c++11"))) + `(#:configure-flags '("CXXFLAGS=-std=c++11") + #:phases + (modify-phases %standard-phases + (add-after 'install 'move-executable + (lambda* (#:key outputs #:allow-other-keys) + (with-directory-excursion (assoc-ref outputs "out") + (rename-file "bin/gobby-0.5" "bin/gobby")) + #t))))) (home-page "https://gobby.github.io/") (synopsis "Collaborative editor") (description From 2941b347b664a3d3114de0ac95e28db78db66144 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 20 Aug 2017 10:48:19 +0200 Subject: [PATCH 1119/1227] gnu: grub-efi-bootloader: Specialize grub-install invocation. * gnu/bootloader/grub.scm (install-grub-efi): Fix grub-install invocation for EFI systems. * gnu/system/examples/bare-bones.tmpl: Use the newer "bootloader-configuration" syntax. * gnu/system/examples/desktop.tmpl: Use bootloader-configuration sytax. Also, use the same label for the LUKS-mapped device and the root partition. Remove unneeded "title" field for the file-system based on LUKS; as noted in the manual, the "title" field is ignored for mapped devices. * gnu/system/examples/lightweight-desktop.tmpl: Use bootloader-configuration, and use grub-efi-bootloader. --- gnu/bootloader/grub.scm | 16 +++++++++++++++- gnu/system/examples/bare-bones.tmpl | 4 +++- gnu/system/examples/desktop.tmpl | 7 ++++--- gnu/system/examples/lightweight-desktop.tmpl | 7 ++++--- 4 files changed, 26 insertions(+), 8 deletions(-) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index ef62fe059b..a9f0875f36 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -389,7 +389,20 @@ submenu \"GNU system, old configurations...\" {~%") (unless (zero? (system* grub "--no-floppy" "--boot-directory" install-dir device)) - (error "failed to install GRUB"))))) + (error "failed to install GRUB (BIOS)"))))) + +(define install-grub-efi + #~(lambda (bootloader efi-dir mount-point) + ;; Install GRUB onto the EFI partition mounted at EFI-DIR, for the + ;; system whose root is mounted at MOUNT-POINT. + (let ((grub-install (string-append bootloader "/sbin/grub-install")) + (install-dir (string-append mount-point "/boot"))) + ;; Tell 'grub-install' that there might be a LUKS-encrypted /boot or + ;; root partition. + (setenv "GRUB_ENABLE_CRYPTODISK" "y") + (unless (zero? (system* grub-install "--boot-directory" install-dir + "--efi-directory" efi-dir)) + (error "failed to install GRUB (EFI)"))))) @@ -408,6 +421,7 @@ submenu \"GNU system, old configurations...\" {~%") (define* grub-efi-bootloader (bootloader (inherit grub-bootloader) + (installer install-grub-efi) (name 'grub-efi) (package grub-efi))) diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index f7b8823d4f..a10ee6e7fe 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -12,7 +12,9 @@ ;; Assuming /dev/sdX is the target hard disk, and "my-root" is ;; the label of the target root file system. - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (bootloader-configuration + (bootloader grub-bootloader) + (device "/dev/sdX"))) (file-systems (cons (file-system (device "my-root") (title 'label) diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index 8b02659478..3cfbd9add6 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -13,19 +13,20 @@ ;; Assuming /dev/sdX is the target hard disk, and "my-root" ;; is the label of the target root file system. - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (bootloader-configuration + (bootloader grub-bootloader) + (device "/dev/sdX"))) ;; Specify a mapped device for the encrypted root partition. ;; The UUID is that returned by 'cryptsetup luksUUID'. (mapped-devices (list (mapped-device (source (uuid "12345678-1234-1234-1234-123456789abc")) - (target "the-root-device") + (target "my-root") (type luks-device-mapping)))) (file-systems (cons (file-system (device "my-root") - (title 'label) (mount-point "/") (type "ext4") (dependencies mapped-devices)) diff --git a/gnu/system/examples/lightweight-desktop.tmpl b/gnu/system/examples/lightweight-desktop.tmpl index 6fb6283d29..127ceb4dc5 100644 --- a/gnu/system/examples/lightweight-desktop.tmpl +++ b/gnu/system/examples/lightweight-desktop.tmpl @@ -12,9 +12,10 @@ (locale "en_US.utf8") ;; Use the UEFI variant of GRUB with the EFI System - ;; Partition on /dev/sda1. - (bootloader (grub-configuration (grub grub-efi) - (device "/dev/sda1"))) + ;; Partition mounted on /boot/efi. + (bootloader (bootloader-configuration + (bootloader grub-efi-bootloader) + (device "/boot/efi"))) ;; Assume the target root file system is labelled "my-root". (file-systems (cons* (file-system From 63ad9b80c76f08dbb39dceff5e8702ade3afd628 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 20 Aug 2017 11:07:53 +0200 Subject: [PATCH 1120/1227] gnu: gnome: Propagate more packages. * gnu/packages/gnome.scm (gnome): Add additional dependencies, inspired by Debian's "gnome-core" package. --- gnu/packages/gnome.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f143155933..e0e5df361c 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2014, 2015 Federico Beffa ;;; Copyright © 2015, 2016 Sou Bunnbu ;;; Copyright © 2015 Mathieu Lirzin -;;; Copyright © 2015 Andy Wingo +;;; Copyright © 2015, 2017 Andy Wingo ;;; Copyright © 2015 David Hashe ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus ;;; Copyright © 2015, 2016, 2017 Mark H Weaver @@ -5687,13 +5687,19 @@ software that do not provide their own configuration interface.") ("gedit" ,gedit) ("glib-networking" ,glib-networking) ("gnome-backgrounds" ,gnome-backgrounds) + ("gnome-bluetooth" ,gnome-bluetooth) + ("gnome-calculator" ,gnome-calculator) ("gnome-control-center" ,gnome-control-center) + ("gnome-disk-utility" ,gnome-disk-utility) ("gnome-keyring" ,gnome-keyring) + ("gnome-online-accounts" ,gnome-online-accounts) ("gnome-session" ,gnome-session) ("gnome-settings-daemon" ,gnome-settings-daemon) ("gnome-shell" ,gnome-shell) + ("gnome-system-monitor" ,gnome-system-monitor) ("gnome-terminal" ,gnome-terminal) ("gnome-themes-standard" ,gnome-themes-standard) + ("gucharmap" ,gucharmap) ("gvfs" ,gvfs) ("hicolor-icon-theme" ,hicolor-icon-theme) ("nautilus" ,nautilus) From 50631fe933037977cf54140d0cd473cea9ea1994 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 20 Aug 2017 11:29:37 +0200 Subject: [PATCH 1121/1227] gnu: gobby: Re-add Gobby 0.4. * gnu/packages/gobby.scm (gobby-0.4): New variable. --- gnu/packages/gobby.scm | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm index 37b1c158e0..45ebed7c43 100644 --- a/gnu/packages/gobby.scm +++ b/gnu/packages/gobby.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Andy Wingo +;;; Copyright © 2016, 2017 Andy Wingo ;;; Copyright © 2017 Arun Isaac ;;; ;;; This file is part of GNU Guix. @@ -98,6 +98,46 @@ documents in one session. Obby is used by the Gobby collaborative editor.") (license license:gpl2+))) +;; Although there is a newer version of Gobby defined below, the protocols are +;; incompatible; you need Gobby 0.4 if you want to connect to servers running +;; the 0.4 protocol. +(define-public gobby-0.4 + (package + (name "gobby") + (version "0.4.13") + (source (origin + (method url-fetch) + (uri (string-append "http://releases.0x539.de/gobby/gobby-" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0w8q01lf6bcdz537b29m7rwlbc7k87b12vnpm1h6219ypvzqkgcc")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (inputs + `(("libxml++-2" ,libxml++-2) + ("gnutls" ,gnutls) + ("gtkmm-2" ,gtkmm-2) + ("gtksourceview-2" ,gtksourceview-2) + ("libnet6" ,libnet6) + ("obby" ,obby))) + (arguments + ;; Required by libsigc++. + `(#:configure-flags '("CXXFLAGS=-std=c++11"))) + (home-page "https://gobby.github.io/") + (synopsis "Collaborative editor") + (description + "Collaborative editor that supports multiple documents in one session and +a multi-user chat. Gobby allows multiple users to edit the same document +together over the internet in real-time. + +This is the older 0.4 version of Gobby. Use this version only if you need to +connect to a server running the old 0.4 protocol.") + (license license:gpl2+))) + (define-public gobby (package (name "gobby") From a9dbefdc9d8f52cf6a1965796d1d883a7c9689bd Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 20 Aug 2017 13:08:23 +0200 Subject: [PATCH 1122/1227] gnu: gnome: Propagate font-dejavu. * gnu/packages/gnome.scm (gnome): Add font-dejavu to propagated inputs, to provide a better default for "Monospace". Otherwise the terminal looks horrible and defaults to Nimbus Mono, a Courier-like face. --- gnu/packages/gnome.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e0e5df361c..6aa2e6adf2 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5676,6 +5676,7 @@ software that do not provide their own configuration interface.") `(("adwaita-icon-theme" ,adwaita-icon-theme) ("baobab" ,baobab) ("font-cantarell" ,font-cantarell) + ("font-dejavu" ,font-dejavu) ("at-spi2-core" ,at-spi2-core) ("dbus" ,dbus) ("dconf" ,dconf) From 96d36f385cb1de83f95dd0404dc2166d6f877389 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 20 Aug 2017 13:09:21 +0200 Subject: [PATCH 1123/1227] gnu: Add gnome-default-applications. * gnu/packages/gnome.scm (gnome-default-applications): New public variable. (gnome): Propagate gnome-default-applications so that nautilus is associated with folders, not baobab. --- gnu/packages/gnome.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 6aa2e6adf2..1712ca0013 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5663,6 +5663,37 @@ configuration system for GNOME. It allows users to configure desktop software that do not provide their own configuration interface.") (license license:lgpl2.1+))) +(define-public gnome-default-applications + (package + (name "gnome-default-applications") + (version "0") + (build-system trivial-build-system) + (source #f) + (propagated-inputs + `(("nautilus" ,nautilus))) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (apps (string-append out "/share/applications"))) + (mkdir-p apps) + (call-with-output-file (string-append apps "/defaults.list") + (lambda (port) + (format port "[Default Applications]\n") + (format port "inode/directory=org.gnome.Nautilus.desktop\n"))) + #t)))) + (synopsis "Default MIME type associations for the GNOME desktop") + (description + "Given many installed packages which might handle a given MIME type, a +user running the GNOME desktop probably has some preferences: for example, +that folders be opened by default by the Nautilus file manager, not the Baobab +disk usage analyzer. This package establishes that set of default MIME type +associations for GNOME.") + (license license:gpl3+) + (home-page #f))) + (define-public gnome (package (name "gnome") @@ -5692,6 +5723,7 @@ software that do not provide their own configuration interface.") ("gnome-calculator" ,gnome-calculator) ("gnome-control-center" ,gnome-control-center) ("gnome-disk-utility" ,gnome-disk-utility) + ("gnome-default-applications" ,gnome-default-applications) ("gnome-keyring" ,gnome-keyring) ("gnome-online-accounts" ,gnome-online-accounts) ("gnome-session" ,gnome-session) From 17cddc1714af122690670bc613891ae73988ff04 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 19 Aug 2017 18:02:35 +0200 Subject: [PATCH 1124/1227] gnu: Add r-annotationfilter. * gnu/packages/bioinformatics.scm (r-annotationfilter): New variable. --- gnu/packages/bioinformatics.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 018a262129..e8e05fff09 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8311,6 +8311,30 @@ package, and for letting R applications work on datasets that are larger than the available RAM.") (license license:artistic2.0))) +(define-public r-annotationfilter + (package + (name "r-annotationfilter") + (version "1.0.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "AnnotationFilter" version)) + (sha256 + (base32 + "0pxvswjzwibdfmrkdragxmzcl844z73pmkn82z92wahwa6gjfyi7")))) + (properties + `((upstream-name . "AnnotationFilter"))) + (build-system r-build-system) + (propagated-inputs + `(("r-genomicranges" ,r-genomicranges) + ("r-lazyeval" ,r-lazyeval))) + (home-page "https://github.com/Bioconductor/AnnotationFilter") + (synopsis "Facilities for filtering Bioconductor annotation resources") + (description + "This package provides classes and other infrastructure to implement +filters for manipulating Bioconductor annotation resources. The filters are +used by @code{ensembldb}, @code{Organism.dplyr}, and other packages.") + (license license:artistic2.0))) + (define-public emboss (package (name "emboss") From 92a1cb92858b9a413c6d043ea0c135def16df91a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 20 Aug 2017 08:19:16 +0200 Subject: [PATCH 1125/1227] gnu: powertabeditor: Update to 2.0.0-alpha10. * gnu/packages/music.scm (powertabeditor): Update to 2.0.0-alpha10. [arguments]: Remove "set-target-directories" phase; disable additional tests. --- gnu/packages/music.scm | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 6d0b3aeffd..29ab50fc4c 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -952,7 +952,7 @@ your own lessons.") (define-public powertabeditor (package (name "powertabeditor") - (version "2.0.0-alpha9") + (version "2.0.0-alpha10") (source (origin (method url-fetch) (uri (string-append @@ -961,7 +961,7 @@ your own lessons.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1zjdz1qpkl83xr6dkap8airqcyjs3mxc5dzfyhrrvkyr7dics7ii")) + "1fr14ql0yhlqvh6y08yaanszm2nvca5i50rqym396kfvga3ky18x")) (modules '((guix build utils))) (snippet '(begin @@ -996,20 +996,13 @@ add_library( rapidjson INTERFACE IMPORTED )")) (replace 'check (lambda _ (zero? (system* "bin/pte_tests" - ;; FIXME: one test fails. - "exclude:Formats/PowerTabOldImport/Directions")))) - (add-after 'unpack 'set-target-directories - (lambda _ - (substitute* "cmake/PTE_Executable.cmake" - (("set\\( install_dir.*") - "set( install_dir bin )\n")) - (substitute* "cmake/PTE_Paths.cmake" - (("set\\( PTE_DATA_DIR .*") - "set( PTE_DATA_DIR share/powertabeditor )\n")) - ;; Tests hardcode the data directory as "data" - (substitute* "test/CMakeLists.txt" - (("\\$\\{PTE_DATA_DIR\\}") "data")) - #t)) + ;; FIXME: these tests fail + "exclude:Actions/EditStaff" + "exclude:Formats/PowerTabOldImport/MergeMultiBarRests" + "exclude:Score/ViewFilter/FilterRule" + "exclude:Score/ViewFilter/ViewFilter" + "exclude:Formats/PowerTabOldImport/Directions" + )))) (add-before 'configure 'remove-third-party-libs (lambda* (#:key inputs #:allow-other-keys) ;; Link with required static libraries, because we're not From a8cd352304807ef60d06c35da07c5456f036688c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 20 Aug 2017 13:58:07 +0200 Subject: [PATCH 1126/1227] gnu: r-minimal: Work around failure to embed reference to "which". * gnu/packages/statistics.scm (r-minimal)[arguments]: Add phase "patch-which". [native-inputs]: Move "which" from here... [propagated-inputs]: ...to here. --- gnu/packages/statistics.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 80465ea102..883bc82c8d 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -126,6 +126,12 @@ be output in text, PostScript, PDF or HTML.") "PKG_BUILT_STAMP=1970-01-01") #:phases (modify-phases %standard-phases + ;; FIXME: see bug #28157. + (add-before 'configure 'patch-which + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/library/base/R/unix/system.unix.R" + (("@WHICH@") "which")) + #t)) (add-before 'configure 'patch-uname (lambda* (#:key inputs #:allow-other-keys) (let ((uname-bin (string-append (assoc-ref inputs "coreutils") @@ -227,7 +233,6 @@ be output in text, PostScript, PDF or HTML.") ("perl" ,perl) ("pkg-config" ,pkg-config) ("texinfo" ,texinfo) ; for building HTML manuals - ("which" ,which) ; for tests/Examples/base-Ex.R ("tzdata" ,tzdata-2017a) ("xz" ,xz))) (inputs @@ -246,6 +251,9 @@ be output in text, PostScript, PDF or HTML.") ("pcre" ,pcre) ("readline" ,readline) ("zlib" ,zlib))) + ;; FIXME: By default Sys.which embeds a reference to "which", but this + ;; reference is not detected by Guix (see bug #28157). + (propagated-inputs `(("which" ,which))) (native-search-paths (list (search-path-specification (variable "R_LIBS_SITE") From 6d7d9d9507484773eff697a01f422ea984936373 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sat, 19 Aug 2017 11:39:33 -0400 Subject: [PATCH 1127/1227] gnu: graphicsmagick: Fix CVE-2017-{12935,12936,12937}. * gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch, gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch, gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/imagemagick.scm (graphicsmagick)[source]: Use them. --- gnu/local.mk | 3 ++ gnu/packages/imagemagick.scm | 6 +++- .../graphicsmagick-CVE-2017-12935.patch | 28 +++++++++++++++++++ .../graphicsmagick-CVE-2017-12936.patch | 16 +++++++++++ .../graphicsmagick-CVE-2017-12937.patch | 28 +++++++++++++++++++ 5 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch create mode 100644 gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch create mode 100644 gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch diff --git a/gnu/local.mk b/gnu/local.mk index 2d49b1e974..1c6158cbfc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -679,6 +679,9 @@ dist_patch_DATA = \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ %D%/packages/patches/gobject-introspection-cc.patch \ %D%/packages/patches/gobject-introspection-girepository.patch \ + %D%/packages/patches/graphicsmagick-CVE-2017-12935.patch \ + %D%/packages/patches/graphicsmagick-CVE-2017-12936.patch \ + %D%/packages/patches/graphicsmagick-CVE-2017-12937.patch \ %D%/packages/patches/graphite2-ffloat-store.patch \ %D%/packages/patches/grep-timing-sensitive-test.patch \ %D%/packages/patches/gsl-test-i686.patch \ diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 8e17307543..3bd705fa2f 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -175,7 +175,11 @@ script.") "/GraphicsMagick-" version ".tar.xz"))) (sha256 (base32 - "122zgs96dqrys62mnh8x5yvfff6km4d3yrnvaxzg3mg5sprib87v")))) + "122zgs96dqrys62mnh8x5yvfff6km4d3yrnvaxzg3mg5sprib87v")) + (patches + (search-patches "graphicsmagick-CVE-2017-12935.patch" + "graphicsmagick-CVE-2017-12936.patch" + "graphicsmagick-CVE-2017-12937.patch")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch b/gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch new file mode 100644 index 0000000000..2cb3d46f62 --- /dev/null +++ b/gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch @@ -0,0 +1,28 @@ +This patch comes from http://hg.code.sf.net/p/graphicsmagick/code/rev/cd699a44f188. + +diff -ur a/coders/png.c b/coders/png.c +--- a/coders/png.c 2017-07-04 17:32:08.000000000 -0400 ++++ b/coders/png.c 2017-08-19 11:16:20.933969362 -0400 +@@ -4101,11 +4101,17 @@ + mng_info->image=image; + } + +- if ((mng_info->mng_width > 65535L) || (mng_info->mng_height +- > 65535L)) +- (void) ThrowException(&image->exception,ImageError, +- WidthOrHeightExceedsLimit, +- image->filename); ++ if ((mng_info->mng_width > 65535L) || ++ (mng_info->mng_height > 65535L)) ++ { ++ (void) LogMagickEvent(CoderEvent,GetMagickModule(), ++ " MNG width or height is too large: %lu, %lu", ++ mng_info->mng_width,mng_info->mng_height); ++ MagickFreeMemory(chunk); ++ ThrowReaderException(CorruptImageError, ++ ImproperImageHeader,image); ++ } ++ + FormatString(page_geometry,"%lux%lu+0+0",mng_info->mng_width, + mng_info->mng_height); + mng_info->frame.left=0; diff --git a/gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch b/gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch new file mode 100644 index 0000000000..7036f37438 --- /dev/null +++ b/gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch @@ -0,0 +1,16 @@ +This patch comes from http://hg.code.sf.net/p/graphicsmagick/code/rev/be898b7c97bd. + +diff -ur a/coders/wmf.c b/coders/wmf.c +--- a/coders/wmf.c 2016-09-05 15:20:23.000000000 -0400 ++++ b/coders/wmf.c 2017-08-19 10:38:08.984187264 -0400 +@@ -2719,8 +2719,8 @@ + if(image->exception.severity != UndefinedException) + ThrowException2(exception, + CoderWarning, +- ddata->image->exception.reason, +- ddata->image->exception.description); ++ image->exception.reason, ++ image->exception.description); + + if(logging) + (void) LogMagickEvent(CoderEvent,GetMagickModule(),"leave ReadWMFImage()"); diff --git a/gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch b/gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch new file mode 100644 index 0000000000..71af9ffe59 --- /dev/null +++ b/gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch @@ -0,0 +1,28 @@ +This patch comes from http://hg.code.sf.net/p/graphicsmagick/code/rev/95d00d55e978. + +diff -ur a/coders/sun.c b/coders/sun.c +--- a/coders/sun.c 2016-05-30 13:19:54.000000000 -0400 ++++ b/coders/sun.c 2017-08-18 18:00:00.191023610 -0400 +@@ -1,5 +1,5 @@ + /* +-% Copyright (C) 2003-2015 GraphicsMagick Group ++% Copyright (C) 2003-2017 GraphicsMagick Group + % Copyright (C) 2002 ImageMagick Studio + % Copyright 1991-1999 E. I. du Pont de Nemours and Company + % +@@ -577,6 +577,7 @@ + for (bit=7; bit >= 0; bit--) + { + index=((*p) & (0x01 << bit) ? 0x01 : 0x00); ++ VerifyColormapIndex(image,index); + indexes[x+7-bit]=index; + q[x+7-bit]=image->colormap[index]; + } +@@ -587,6 +588,7 @@ + for (bit=7; bit >= (long) (8-(image->columns % 8)); bit--) + { + index=((*p) & (0x01 << bit) ? 0x01 : 0x00); ++ VerifyColormapIndex(image,index); + indexes[x+7-bit]=index; + q[x+7-bit]=image->colormap[index]; + } From a02967d77af03d6468e25d6e26dbea0db919ce96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Sat, 19 Aug 2017 20:41:44 +0800 Subject: [PATCH 1128/1227] guix download: Support retrieving local file without the URI scheme. * guix/scripts/download.scm (guix-download): Treat the URL argument as a local file path when it fails on 'string->uri'. Call 'fetch' with the processed 'uri' instead of the original URL argument. * tests/guix-download.sh: Adjust accordingly. --- guix/scripts/download.scm | 5 ++++- tests/guix-download.sh | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/guix/scripts/download.scm b/guix/scripts/download.scm index bb3dc76741..f40213be33 100644 --- a/guix/scripts/download.scm +++ b/guix/scripts/download.scm @@ -143,12 +143,15 @@ Supported formats: 'nix-base32' (default), 'base32', and 'base16' (arg (or (assq-ref opts 'argument) (leave (G_ "no download URI was specified~%")))) (uri (or (string->uri arg) + (false-if-exception + (string->uri + (string-append "file://" (canonicalize-path arg)))) (leave (G_ "~a: failed to parse URI~%") arg))) (fetch (assq-ref opts 'download-proc)) (path (parameterize ((current-terminal-columns (terminal-columns))) - (fetch arg + (fetch (uri->string uri) #:verify-certificate? (assq-ref opts 'verify-certificate?)))) (hash (call-with-input-file diff --git a/tests/guix-download.sh b/tests/guix-download.sh index ebc853c7fa..30f55fbe2b 100644 --- a/tests/guix-download.sh +++ b/tests/guix-download.sh @@ -29,12 +29,15 @@ then false; else true; fi if guix download unknown://some/where; then false; else true; fi -if guix download not/a/uri; +if guix download /does-not-exist then false; else true; fi # This one should succeed. guix download "file://$abs_top_srcdir/README" +# And this one, without the URI scheme. +guix download "$abs_top_srcdir/README" + # This one too, even if it cannot talk to the daemon. output="t-download-$$" trap 'rm -f "$output"' EXIT From 3fa1b0821366113cf077385f0180e6071bff4308 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 20 Aug 2017 16:19:45 +0200 Subject: [PATCH 1129/1227] gnu: limnoria: Update to 2017.08.18. * gnu/packages/irc.scm (limnoria): Update to 2017.08.18. --- gnu/packages/irc.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index bff8efe54b..0f68cc532a 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -301,14 +301,14 @@ using a mouse. It is customizable and extensible with plugins and scripts.") (define-public limnoria (package (name "limnoria") - (version "2017.08.03") + (version "2017.08.18") (source (origin (method url-fetch) (uri (pypi-uri "limnoria" version)) (sha256 (base32 - "1513a01ckzdn5qjjs2jrp3lyryx92h3j5mzc3si0vd7ayqmxhrjz")))) + "1hij444l45mjli8i67iyd3syf263ijj1l0cm3irqjjxv5r3f9zjj")))) (build-system python-build-system) (inputs `(("python-pytz" ,python-pytz) From 29a33257081bf4f5231bd4b945a66304b6eb7a9c Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 20 Aug 2017 16:20:25 +0200 Subject: [PATCH 1130/1227] gnu: bundler: Update to 1.15.4. * gnu/packages/ruby.scm (bundler): Update to 1.15.4. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 25b2dd33f7..243ff9e5db 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -464,13 +464,13 @@ expectations and mocks frameworks.") (define-public bundler (package (name "bundler") - (version "1.15.3") + (version "1.15.4") (source (origin (method url-fetch) (uri (rubygems-uri "bundler" version)) (sha256 (base32 - "125amldnpzzrfw76mmr7mlx002k1k6xdyrqf5bdnzl5hajvn0s5f")))) + "0wl4r7wbwdq68xidfv4hhzfb1spb6lmhbspwlzrg4pf1l6ipxlgs")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; avoid dependency cycles From 7295a0c020afce1bde1ba9e6186336f5da2c18e1 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 20 Aug 2017 17:11:30 +0200 Subject: [PATCH 1131/1227] gnu: perl-test-trap: Add missing dependency on Test::Simple. * gnu/packages/perl.scm (perl-test-trap)[native-inputs]: Add PERL-TEST-SIMPLE. --- gnu/packages/perl.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index e6138fcc98..0395d642f6 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7372,7 +7372,8 @@ a minimum of effort.") "05b4zc4087imwphls4yksg4chzx9yavbri301gaxas9kv1yhx13w")))) (build-system perl-build-system) (native-inputs - `(("perl-module-build" ,perl-module-build))) + `(("perl-module-build" ,perl-module-build) + ("perl-test-simple" ,perl-test-simple))) (propagated-inputs `(("perl-test-tester" ,perl-test-tester) ("perl-data-dump" ,perl-data-dump))) From 9c4ce3afac2ad42c832dc7a9f0932744b5fd8892 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 20 Aug 2017 17:13:42 +0200 Subject: [PATCH 1132/1227] gnu: perl-test-trap: Update to 0.3.2. * gnu/packages/perl.scm (perl-test-trap): Update to 0.3.2. [source, version]: Remove 'v' prefix from version field. --- gnu/packages/perl.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 0395d642f6..1a96ee237b 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7361,15 +7361,15 @@ a minimum of effort.") (define-public perl-test-trap (package (name "perl-test-trap") - (version "v0.3.0") + (version "0.3.2") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/E/EB/EBHANSSEN/" - "Test-Trap-" version ".tar.gz")) + "Test-Trap-v" version ".tar.gz")) (sha256 (base32 - "05b4zc4087imwphls4yksg4chzx9yavbri301gaxas9kv1yhx13w")))) + "0jq54pkm4s61gk8gzxglix1ff9s0m9vi6bpfv7f63lb9qq4r76rr")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build) From bda6c350939dac5d073e999a3e940abd5bcc4b97 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 20 Aug 2017 21:44:28 +0300 Subject: [PATCH 1133/1227] gnu: pspp: Update to 1.0.0. * gnu/packages/statistics.scm (pspp): Update to 1.0.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 883bc82c8d..685042240a 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -65,7 +65,7 @@ (define-public pspp (package (name "pspp") - (version "0.11.0") + (version "1.0.0") (source (origin (method url-fetch) @@ -73,7 +73,7 @@ version ".tar.gz")) (sha256 (base32 - "1dmvg2dzfx57vxswdmk458qm2q12ihj2jnwm3qbmqywi473c2p5f")))) + "10yb8nknh33c1y2ji3gww5dcnx9n3nqgsj6yfb4wibdjypa1m68v")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) From 1dbd34329b50118264ed21ddeace55152096842d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 20 Aug 2017 23:22:32 +0300 Subject: [PATCH 1134/1227] gnu: vifm: Update to 0.9. * gnu/packages/vim.scm (vifm): Update to 0.9. [source]: Add alternate uri. [arguments]: Remove build timestamp. Add phase to install vim plugins into vim plugin directory. Patch more shebangs. --- gnu/packages/vim.scm | 40 +++++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 7db81ee57d..818d2d207f 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Cyril Roelandt -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2017 Marius Bakke @@ -648,24 +648,46 @@ refactor Vim in order to: (define-public vifm (package (name "vifm") - (version "0.8.2") + (version "0.9") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/vifm/vifm/vifm-" - version ".tar.bz2")) + (uri (list + (string-append "https://github.com/vifm/vifm/releases/download/v" + version "/vifm-" version ".tar.bz2") + (string-append "https://sourceforge.net/projects/vifm/files/vifm/" + "vifm-" version ".tar.bz2"))) (sha256 (base32 - "07r15kq7kjl3a41sd11ncpsii866xxps4f90zh3lv8jqcrv6silb")))) + "1zd72vcgir3g9rhs2iyca13qf5fc0b1f22y20f5gy92c3sfwj45b")))) (build-system gnu-build-system) (arguments - '(#:phases + '(#:configure-flags '("--disable-build-timestamp") + #:phases (modify-phases %standard-phases (add-after 'patch-source-shebangs 'patch-test-shebangs (lambda _ - (substitute* (find-files "tests" "\\.c$") - (("/bin/sh") (which "sh"))) - #t))))) + (substitute* (cons* "src/background.c" + "src/cfg/config.c" + (find-files "tests" "\\.c$")) + (("/bin/sh") (which "sh")) + (("/bin/bash") (which "bash"))) + ;; This test segfaults + (substitute* "tests/Makefile" + (("misc") "")) + #t)) + (add-after 'install 'install-vim-plugin-files + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (vifm (string-append out "/share/vifm")) + (vimfiles (string-append out "/share/vim/vimfiles"))) + (copy-recursively (string-append vifm "/colors") + (string-append vimfiles "/colors")) + (copy-recursively (string-append vifm "/vim") + vimfiles) + (delete-file-recursively (string-append vifm "/colors")) + (delete-file-recursively (string-append vifm "/vim"))) + #t))))) (native-inputs `(("groff" ,groff) ; for the documentation ("perl" ,perl))) From e904de7ec1789e243e830b19187b5ef550b2eefa Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 20 Aug 2017 19:01:40 +0000 Subject: [PATCH 1135/1227] gnu: gnurl: Update to 7.55.1. * gnu/packages/gnunet.scm (gnurl): Update to 7.55.1. Signed-off-by: Tobias Geerinckx-Rice --- gnu/packages/gnunet.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 497afaf668..7ff1a3f6f8 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -186,14 +186,14 @@ and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.55.0") + (version "7.55.1") (source (origin (method url-fetch) (uri (string-append "https://gnunet.org/sites/default/files/" name "-" version ".tar.bz2")) (sha256 (base32 - "0i9bik76rbyag3mbxbk8j383iaxs5v7lmjkn4v36ascl6bdks6vn")))) + "118vb2mc5ivsbrkqzg40w56raf5jdnx00cfmkh735w0mjfy6wccv")))) (build-system gnu-build-system) (outputs '("out" "doc")) ; 1.5 MiB of man3 pages From bd2e321061218729dec82fceba639aaee52bfff3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Aug 2017 16:02:06 +0300 Subject: [PATCH 1136/1227] gnu: augeas: Update to 1.8.1. Fixes CVE-2017-7555. * gnu/packages/augeas.scm (augeas): Update to 1.8.1. --- gnu/packages/augeas.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/augeas.scm b/gnu/packages/augeas.scm index 9b320810ca..077105155c 100644 --- a/gnu/packages/augeas.scm +++ b/gnu/packages/augeas.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2017 Ricardo Wurmus +;;; Copyright © 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,14 +31,14 @@ (define-public augeas (package (name "augeas") - (version "1.8.0") + (version "1.8.1") (source (origin (method url-fetch) (uri (string-append "http://download.augeas.net/augeas-" version ".tar.gz")) (sha256 (base32 - "1iac5lwi1q10r343ii9v5p2fdplvh06yv9svsi8zz6cd2c2fjp2i")))) + "1yf93fqwav1zsl8dpyfkf0g11w05mmfckqy6qsjy5zkklnspbkv5")))) (build-system gnu-build-system) ;; Marked as "required" in augeas.pc (propagated-inputs From cf684d87d7446ffe33ca4c73bf51dc24fa5a7129 Mon Sep 17 00:00:00 2001 From: Theodoros Foradis Date: Wed, 2 Aug 2017 13:10:12 +0300 Subject: [PATCH 1137/1227] gnu: z3: Build Python bindings. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (z3): Add python bindings. [build-system]: Change to cmake-build-system. [arguments]: Remove "changedir" phase. Add "bootstrap" and "make-test-z3" phases; replace the "check" phase. Add #:configure-flags. Remove #:test-target. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 36 ++++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 3f1dc845fe..d1651e5a7b 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3179,26 +3179,38 @@ as equations, scalars, vectors, and matrices.") (sha256 (base32 "032a5lvji2liwmc25jv52bdrhimqflvqbpg77ccaq1jykhiivbmf")))) - (build-system gnu-build-system) + (build-system cmake-build-system) (arguments - `(#:test-target "test" + `(#:configure-flags + (list "-DBUILD_PYTHON_BINDINGS=true" + "-DINSTALL_PYTHON_BINDINGS=true" + (string-append "-DCMAKE_INSTALL_PYTHON_PKG_DIR=" + %output + "/lib/python2.7/site-packages") + (string-append "-DCMAKE_INSTALL_LIBDIR=" + %output + "/lib")) + #:phases (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (zero? - (system* "python" "scripts/mk_make.py" - (string-append "--prefix=" - (assoc-ref outputs "out")))))) - (add-after 'configure 'change-dir + (add-before 'configure 'bootstrap (lambda _ - (chdir "build") - #t))))) + (zero? + (system* "python" "contrib/cmake/bootstrap.py" "create")))) + (add-before 'check 'make-test-z3 + (lambda _ + ;; Build the test suite executable. + (zero? (system* "make" "test-z3" "-j" + (number->string (parallel-job-count)))))) + (replace 'check + (lambda _ + ;; Run all the tests that don't require arguments. + (zero? (system* "./test-z3" "/a"))))))) (native-inputs `(("python" ,python-2))) (synopsis "Theorem prover") (description "Z3 is a theorem prover and @dfn{satisfiability modulo -theories} (SMT) solver. It provides a C/C++ API.") +theories} (SMT) solver. It provides a C/C++ API, as well as Python bindings.") (home-page "https://github.com/Z3Prover/z3") (license license:expat))) From 685bef2bd1d92678c7f7104fee9f6e46438d88f8 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Thu, 27 Jul 2017 15:52:34 +0100 Subject: [PATCH 1138/1227] gnu: openmpi: Add separate variant with thread-multiple support. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mpi.scm (openmpi)[arguments]: Remove "--enable-mpi-thread-multiple". (openmpi-thread-multiple): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/mpi.scm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index d6423aa6fc..ac7b9b2545 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -135,7 +135,6 @@ bind processes, and much more.") (arguments `(#:configure-flags `("--enable-static" - "--enable-mpi-thread-multiple" "--enable-builtin-atomics" "--enable-mpi-ext=all" @@ -184,3 +183,17 @@ best MPI library available. Open MPI offers advantages for system and software vendors, application developers and computer science researchers.") ;; See file://LICENSE (license bsd-2))) + +(define-public openmpi-thread-multiple + (package + (inherit openmpi) + (name "openmpi-thread-multiple") + (arguments + (substitute-keyword-arguments (package-arguments openmpi) + ((#:configure-flags flags) + `(cons "--enable-mpi-thread-multiple" ,flags)))) + (description " This version of Open@tie{}MPI has an implementation of +@code{MPI_Init_thread} that provides @code{MPI_THREAD_MULTIPLE}. This won't +work correctly with all transports (such as @code{openib}), and the +performance is generally worse than the vanilla @code{openmpi} package, which +only provides @code{MPI_THREAD_FUNNELED}."))) From 327404aeaa4a431188a24eb697c37e4d5c5b428f Mon Sep 17 00:00:00 2001 From: Dave Love Date: Mon, 31 Jul 2017 14:57:21 +0100 Subject: [PATCH 1139/1227] gnu: openmpi: Remove "static" output. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --enable-static removes dynamically-loaded MCA components. * gnu/packages/mpi.scm (openmpi)[outputs]: Remove field. [arguments]: Don't configure with --enable-static; remove 'move-static-libraries' phase. Signed-off-by: Ludovic Courtès --- gnu/packages/mpi.scm | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index ac7b9b2545..f24da7b661 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -122,7 +122,6 @@ bind processes, and much more.") (base32 "142s1vny9gllkq336yafxayjgcirj2jv0ddabj879jgya7hyr2d0")))) (build-system gnu-build-system) - (outputs '("out" "static")) (inputs `(("hwloc" ,hwloc "lib") ("gfortran" ,gfortran) @@ -133,9 +132,7 @@ bind processes, and much more.") `(("pkg-config" ,pkg-config) ("perl" ,perl))) (arguments - `(#:configure-flags `("--enable-static" - - "--enable-builtin-atomics" + `(#:configure-flags `("--enable-builtin-atomics" "--enable-mpi-ext=all" "--with-devel-headers" @@ -157,20 +154,6 @@ bind processes, and much more.") (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (for-each delete-file (find-files out "config.log")) - #t))) - (add-after 'install 'move-static-libraries - (lambda* (#:key outputs #:allow-other-keys) - ;; Move 19 MiB of static libraries to 'static'. - (let* ((out (assoc-ref outputs "out")) - (static (assoc-ref outputs "static")) - (lib (string-append out "/lib")) - (slib (string-append static "/lib"))) - (mkdir-p slib) - (for-each (lambda (file) - (rename-file - file - (string-append slib "/" (basename file)))) - (find-files lib "\\.a$")) #t)))))) (home-page "http://www.open-mpi.org") (synopsis "MPI-3 implementation") From 84bf845abc4b25af84a91eef368e1ea2f3d794a5 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Mon, 21 Aug 2017 16:19:59 +0200 Subject: [PATCH 1140/1227] gnu: valgrind: Add separate "doc" output. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/valgrind.scm (valgrind)[outputs]: New field. [arguments]: Add 'install-doc' phase. Co-authored-by: Ludovic Courtès --- gnu/packages/valgrind.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gnu/packages/valgrind.scm b/gnu/packages/valgrind.scm index 5f2bef16df..611a9a0558 100644 --- a/gnu/packages/valgrind.scm +++ b/gnu/packages/valgrind.scm @@ -41,6 +41,8 @@ "18bnrw9b1d55wi1wnl68n25achsp9w48n51n1xw4fwjjnaal7jk7")) (patches (search-patches "valgrind-enable-arm.patch")))) (build-system gnu-build-system) + (outputs '("doc" ;16 MB + "out")) (arguments '(#:phases (modify-phases %standard-phases @@ -53,6 +55,13 @@ (("obj:/lib") "obj:*/lib") (("obj:/usr/X11R6/lib") "obj:*/lib") (("obj:/usr/lib") "obj:*/lib")) + #t))) + (add-after 'install 'install-doc + (lambda* (#:key outputs #:allow-other-keys) + (let ((orig (format #f "~a/share/doc" (assoc-ref outputs "out"))) + (dest (format #f "~a/share" (assoc-ref outputs "doc")))) + (mkdir-p dest) + (rename-file orig dest) #t)))))) (inputs `(;; GDB is needed to provide a sane default for `--db-command'. ("gdb" ,gdb))) From 0d97d3cbff3d81c8a95b2dc7e037deb04c770779 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Mon, 31 Jul 2017 17:15:19 +0100 Subject: [PATCH 1141/1227] gnu: openmpi: Remove references to compiler pathnames in "_info" programs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reduces the closure greatly, but note that the Fortran .mod files are gfortran version-specific, so there should probably be development packages for each incompatible version. (The runtime is supposed to be more-or-less version-independent unless the libgfortran soname changes.) There may still be a case for a separate runtime output. * gnu/packages/mpi.scm (openmpi)[arguments]: Add "remove-absolute" phase. Co-authored-by: Ludovic Courtès --- gnu/packages/mpi.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index f24da7b661..3337054223 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -143,6 +143,18 @@ bind processes, and much more.") ,(string-append "--with-hwloc=" (assoc-ref %build-inputs "hwloc"))) #:phases (modify-phases %standard-phases + (add-before 'build 'remove-absolute + ;; Remove compiler absolute file names (OPAL_FC_ABSOLUTE + ;; etc.) to reduce the closure size. See + ;; + ;; and + ;; . + (lambda _ + (substitute* '("orte/tools/orte-info/param.c" + "oshmem/tools/oshmem_info/param.c" + "ompi/tools/ompi_info/param.c") + (("_ABSOLUTE") "")) + #t)) (add-before 'build 'scrub-timestamps ;reproducibility (lambda _ (substitute* '("ompi/tools/ompi_info/param.c" From df981d8b36754c820f41f01758c585bf282065c1 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Mon, 31 Jul 2017 15:03:46 +0100 Subject: [PATCH 1142/1227] gnu: openmpi: Modify configuration to reduce closure. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit devel-headers are only for building MCA components, produce a large closure and aren't normally packaged. Only the affinity component of mpi-ext is useful. * gnu/packages/mpi.scm (openmpi)[arguments]: Don't configure --with-devel-headers and --enable-mpi-ext=all. Signed-off-by: Ludovic Courtès --- gnu/packages/mpi.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 3337054223..3dd890ed62 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -134,8 +134,7 @@ bind processes, and much more.") (arguments `(#:configure-flags `("--enable-builtin-atomics" - "--enable-mpi-ext=all" - "--with-devel-headers" + "--enable-mpi-ext=affinity" ;cr doesn't work "--enable-memchecker" "--with-sge" ,(string-append "--with-valgrind=" From 6c171ff47c01b44c1be7632462bdef166a85bdf2 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Mon, 31 Jul 2017 15:04:44 +0100 Subject: [PATCH 1143/1227] gnu: openmpi: Configure without vampirtrace. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit VT is obsoleted by scorep (not currently packaged) and disabling it reduces the closure considerably. * mpi.scm (openmpi)[arguments]: Configure without vampirtrace. Signed-off-by: Ludovic Courtès --- gnu/packages/mpi.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 3dd890ed62..93157e2692 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -137,6 +137,11 @@ bind processes, and much more.") "--enable-mpi-ext=affinity" ;cr doesn't work "--enable-memchecker" "--with-sge" + + ;; VampirTrace is obsoleted by scorep and disabling + ;; it reduces the closure size considerably. + "--disable-vt" + ,(string-append "--with-valgrind=" (assoc-ref %build-inputs "valgrind")) ,(string-append "--with-hwloc=" From 46057c0a3f5826baf9fb3c92ee778810424d18fa Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Aug 2017 10:34:11 +0200 Subject: [PATCH 1144/1227] gnu: zstd: Update to 1.3.1. * gnu/packages/compression.scm (zstd): Update to 1.3.1. --- gnu/packages/compression.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 0a2cda84fb..827c842946 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -1287,7 +1287,7 @@ RAR archives.") (define-public zstd (package (name "zstd") - (version "1.3.0") + (version "1.3.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/facebook/zstd/archive/v" @@ -1295,7 +1295,7 @@ RAR archives.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0j5kf0phx4w4b5x7aqwc10lxi9ix7rxhxk0df37cpdrqni1sdnqg")) + "1imddqjhczira626nf3nqmjwj3wb37xcfcwgkjydv2k6fpfbjbri")) (modules '((guix build utils))) (snippet ;; Remove non-free source files. From 88648855f857ca5d67ad1e0528ddbdc2313c182d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Aug 2017 10:34:56 +0200 Subject: [PATCH 1145/1227] gnu: perl-net-dns: Update to 1.12. * gnu/packages/networking.scm (perl-net-dns): Update to 1.12. --- gnu/packages/networking.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index c329c463f3..e37f2cb5ea 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -705,7 +705,7 @@ allows for heavy scripting.") (define-public perl-net-dns (package (name "perl-net-dns") - (version "1.06") + (version "1.12") (source (origin (method url-fetch) @@ -715,7 +715,7 @@ allows for heavy scripting.") ".tar.gz")) (sha256 (base32 - "07m5331132h9xkh1i6jv9d80f571yva27iqa31aq4sm31iw7nn53")))) + "1zy16idzc96n20fm9976qapz89n3f44xpylhs5cvfgyyg7z03zr5")))) (build-system perl-build-system) (inputs `(("perl-digest-hmac" ,perl-digest-hmac))) From 51eecee7b9486c9e16ac6334fa8b11e327c4aac2 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 21 Aug 2017 22:45:37 +0200 Subject: [PATCH 1146/1227] gnu: feh: Update to 2.19.3. * gnu/packages/image-viewers.scm (feh): Update to 2.19.3. --- gnu/packages/image-viewers.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index c2f0a24344..f82d4baf24 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -54,7 +54,7 @@ (define-public feh (package (name "feh") - (version "2.19.2") + (version "2.19.3") (home-page "https://feh.finalrewind.org/") (source (origin (method url-fetch) @@ -62,7 +62,7 @@ name "-" version ".tar.bz2")) (sha256 (base32 - "0v2nwc6sk4vs855a1ncz9vxpzxvs1d5wcjz87rfbypxx7nap2al2")))) + "1l3yvv0l0ggwlfyhk84p2g9mrqvzqrg1fgalf88kzppvb9jppjay")))) (build-system gnu-build-system) (arguments '(#:phases (alist-delete 'configure %standard-phases) From 3ce16aeac50b3b7bec17dd03e5c44667e1f1fb08 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 21 Aug 2017 22:45:57 +0200 Subject: [PATCH 1147/1227] gnu: imagemagick: Update to 6.9.9-9. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.9-9. --- gnu/packages/imagemagick.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 3bd705fa2f..4056d486fb 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -45,14 +45,14 @@ ;; The 7 release series has an incompatible API, while the 6 series is still ;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; users are ready for the 7-series API. - (version "6.9.9-7") + (version "6.9.9-9") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "1lwsz9b8clygdppgawv2hsry4aykgmawjlwhg3fj70rndv4a8rw4")))) + "0p7jz55zry5r1lv34ymx536fqymvy3iwzwy0kvj53mlmsaad7vjr")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") From 9f9d2a723ffbc0543f4d8015a7be843175bd006e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Aug 2017 16:11:29 +0200 Subject: [PATCH 1148/1227] gnu: gspell: Update to 1.4.2. * gnu/packages/gnome.scm (gspell): Update to 1.4.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 1712ca0013..aec27d8347 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6458,7 +6458,7 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).") (define-public gspell (package (name "gspell") - (version "1.4.1") + (version "1.4.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -6466,7 +6466,7 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).") name "-" version ".tar.xz")) (sha256 (base32 - "1ghh1xdzf04mfgb13zqpj88krpa44xv2vbyhm6k017kzrpz8hbs4")) + "1683vyyfq3q0ph665jj6id8hnlyid4qxzmqiwpv97gmz8zksg6x5")) (patches (search-patches "gspell-dash-test.patch")))) (build-system glib-or-gtk-build-system) (arguments From 3592a57255b27bc03e908cfcce8ec32bcdc2eb2f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Aug 2017 19:50:04 +0200 Subject: [PATCH 1149/1227] gnu: lollypop: Update to 0.9.244. * gnu/packages/gnome.scm (lollypop): Update to 0.9.244. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index aec27d8347..f823dd398d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6561,7 +6561,7 @@ views can be printed as PDF or PostScript files, or exported to HTML.") (define-public lollypop (package (name "lollypop") - (version "0.9.240") + (version "0.9.244") (source (origin (method url-fetch) @@ -6570,7 +6570,7 @@ views can be printed as PDF or PostScript files, or exported to HTML.") name "-" version ".tar.xz")) (sha256 (base32 - "0n1ycmg6dgz1pajs80fwlcbxw3rx1hff1xw6ja67zngm85ydbjvq")))) + "0y9nmwrplz4mlvc2badfbyjj97ksn6qqis3rgm8lvp5llsk1583w")))) (build-system glib-or-gtk-build-system) (arguments `(#:imported-modules ((guix build python-build-system) From 4ecab114fd29e5465fdf5d94ac0ebe63d9dd5ceb Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Aug 2017 16:12:05 +0200 Subject: [PATCH 1150/1227] gnu: python-pylast: Update to 1.9.0. * gnu/packages/python.scm (python-pylast): Update to 1.9.0. --- gnu/packages/music.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 29ab50fc4c..51a213b13f 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2180,13 +2180,13 @@ detailed track info including timbre, pitch, rhythm and loudness information. (define-public python-pylast (package (name "python-pylast") - (version "1.6.0") + (version "1.9.0") (source (origin (method url-fetch) (uri (pypi-uri "pylast" version)) (sha256 (base32 - "0bml11gfkxqd3i2jxkn5k2xllc4rvxjcyhs8an05gcyy1zp2bwvb")))) + "190c6sicc80v21wbbwbq771nqmxw4r6aqmxs22ndj177rc2l275f")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; FIXME: Requires unpackaged python-flaky. From 58f3d4599601d7277f9c115db6278c82089352f3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 21 Aug 2017 16:13:15 +0200 Subject: [PATCH 1151/1227] gnu: python-marshmallow: Update to 3.0.0b3. * gnu/packages/python.scm (python-marshmallow): Update to 3.0.0b3. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 6da5ad8a06..bd490cf885 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -15564,14 +15564,14 @@ address is valid and really exists.") (define-public python-marshmallow (package (name "python-marshmallow") - (version "3.0.0b2") + (version "3.0.0b3") (source (origin (method url-fetch) (uri (pypi-uri "marshmallow" version)) (sha256 (base32 - "11bnpvfdbczr74177p295zbkdrax2cahvbj5bqhhlprgz2xxi5d9")))) + "07mcrij1yvk85lvgx44wwr9pc80xryghvlgayb057g1cazcypysd")))) (build-system python-build-system) (propagated-inputs `(("python-dateutil" ,python-dateutil) From 86a9b1633c6566fc5e98ec5e64f6fcc0ad804fde Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 17 Aug 2017 23:08:38 +0300 Subject: [PATCH 1152/1227] gnu: python-internetarchive: Update to 1.7.1. * gnu/packages/web.scm (python-internetarchive): Update to 1.7.1. Signed-off-by: Marius Bakke --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 1629c293d4..1af80f61ec 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -4697,7 +4697,7 @@ command-line arguments or read from stdin.") (define-public python-internetarchive (package (name "python-internetarchive") - (version "1.6.0") + (version "1.7.1") (source (origin (method url-fetch) @@ -4706,7 +4706,7 @@ command-line arguments or read from stdin.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "00v1489rv1ydcihwbdl7sqpcpmm98b9kqqlfggr32k0ndmv7ivas")))) + "1lj4r0y67mwjns2gcjvw0y7m5x0vqir2iv7s4q2y93492azli1qh")))) (build-system python-build-system) (arguments `(#:tests? #f ; 11 tests of 105 fail to mock "requests". From 61b31ac46f9e8a36fc0862941f8dd1f203f8c8ba Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 17 Aug 2017 23:46:10 +0300 Subject: [PATCH 1153/1227] gnu: Update emacs-rainbow-mode to 0.13. * gnu/packages/emacs.scm (emacs-rainbow-mode): Update to 0.13. Signed-off-by: Marius Bakke --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 1728b5b92d..140a532050 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -3315,14 +3315,14 @@ of its name.") (define-public emacs-rainbow-mode (package (name "emacs-rainbow-mode") - (version "0.12") + (version "0.13") (source (origin (method url-fetch) (uri (string-append "http://elpa.gnu.org/packages/rainbow-mode-" version ".el")) (sha256 (base32 - "10a7qs7fvw4qi4vxj9n56j26gjk61bl79dgz4md1d26slb2j1c04")))) + "1d3aamx6qgqqpqijwsr02ggwrh67gfink1bir0692alfkm3zdddl")))) (build-system emacs-build-system) (home-page "http://elpa.gnu.org/packages/rainbow-mode.html") (synopsis "Colorize color names in buffers") From 285e18e9ae45970c67ec3b35d1d589bed32089f8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Aug 2017 09:43:16 +0300 Subject: [PATCH 1154/1227] gnu: terminology: Update to 1.1.0. * gnu/packages/enlightenment.scm (terminology): Update to 1.1.0. [source]: Remove bundled fonts and references to them. [native-inputs]: Add gettext-minimal. --- gnu/packages/enlightenment.scm | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index da1a1cf43d..8c25f38aae 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -165,7 +165,7 @@ removable devices or support for multimedia.") (define-public terminology (package (name "terminology") - (version "1.0.0") + (version "1.1.0") (source (origin (method url-fetch) (uri @@ -173,7 +173,23 @@ removable devices or support for multimedia.") "terminology/terminology-" version ".tar.xz")) (sha256 (base32 - "1x4j2q4qqj10ckbka0zaq2r2zm66ff1x791kp8slv1ff7fw45vdz")))) + "13rl1k22yf8qrpzdm5nh6ij641fibadr2ww1r7rnz7mbhzj3d4gb")) + (modules '((guix build utils))) + ;; Remove the bundled fonts. + ;; TODO: Remove bundled lz4. + (snippet + '(begin + (delete-file-recursively "data/fonts") + (substitute* '("data/Makefile.in" "data/Makefile.am") + (("fonts") "")) + (substitute* "configure" + (("data/fonts/Makefile") "") + (("\\\"data/fonts/Makefile") "# \"data/fonts/Makefile")) + (substitute* '("data/themes/Makefile.in" + "data/themes/Makefile.am" + "data/themes/nyanology/Makefile.in" + "data/themes/nyanology/Makefile.am") + (("-fd \\$\\(top_srcdir\\)/data/fonts") "")))))) (build-system gnu-build-system) (arguments '(#:phases @@ -182,7 +198,8 @@ removable devices or support for multimedia.") ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2 (lambda _ (setenv "HOME" "/tmp") #t))))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("gettext" ,gettext-minimal) + ("pkg-config" ,pkg-config))) (inputs `(("efl" ,efl))) (home-page "https://www.enlightenment.org/about-terminology") From 5c78db622238bc564ba343c18afd59afedeb2bd2 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Mon, 21 Aug 2017 12:26:40 +0200 Subject: [PATCH 1155/1227] gnu: python-h5py: Update to 2.7.0. * gnu/packages/python.scm (python-h5py): Update to 2.7.0. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index bd490cf885..b74e62bf37 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -803,14 +803,14 @@ NetCDF files can also be read and modified. Python-HDF4 is a fork of (define-public python-h5py (package (name "python-h5py") - (version "2.6.0") + (version "2.7.0") (source (origin (method url-fetch) (uri (pypi-uri "h5py" version)) (sha256 (base32 - "0df46dg7i7xfking9lp221bfm8dbl974yvlrbi1w7r6m61ac7bxj")))) + "0433sdv6xc9p7v1xs1gvbxp7p152ywi3nplgjb258q9fvw9469br")))) (build-system python-build-system) (arguments `(#:tests? #f ; no test target From 1206c95a4992d47c4309416906112c0d5293fb4c Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Mon, 21 Aug 2017 13:26:47 +0200 Subject: [PATCH 1156/1227] gnu: python-netcdf4: Update to 1.2.9. * gnu/packages/python.scm (python-netcdf4): Update to 1.2.9. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index b74e62bf37..1b4d90b561 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -852,14 +852,14 @@ concepts.") (define-public python-netcdf4 (package (name "python-netcdf4") - (version "1.2.7") + (version "1.2.9") (source (origin (method url-fetch) (uri (pypi-uri "netCDF4" version)) (sha256 (base32 - "1fllizmnpw0zkzzm4j9pgamarlzfn3kmv9zrm0w65q1y31h9ni0c")))) + "1h6jq338amlbk0ilzvjyl7cck80i0bah9a5spn9in71vy2qxm7i5")))) (build-system python-build-system) (native-inputs `(("python-cython" ,python-cython))) From c15374e03d257ef0630a9ee6b9bbbc6a748d9be5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 22 Aug 2017 14:51:50 +0200 Subject: [PATCH 1157/1227] gnu: libjpeg-turbo: Build reproducibly. * gnu/packages/image.scm (libjpeg-turbo)[arguments]: Add #:configure-flags. Co-authored-by: Z. Ren --- gnu/packages/image.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 43dc7e6d4c..3f8b520aec 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -1148,7 +1148,8 @@ PNG, and performs PNG integrity checks and corrections.") (native-inputs `(("nasm" ,nasm))) (arguments - '(#:test-target "test")) + '(#:test-target "test" + #:configure-flags (list "--with-build-date=1970-01-01"))) (home-page "http://www.libjpeg-turbo.org/") (synopsis "SIMD-accelerated JPEG image handling library") (description "libjpeg-turbo is a JPEG image codec that accelerates baseline From 0e4d822e3fccd1bb360924ed4dba42f5b16458ea Mon Sep 17 00:00:00 2001 From: "Z. Ren" Date: Tue, 8 Aug 2017 14:50:35 +0800 Subject: [PATCH 1158/1227] gnu: skalibs: Build reproducibly. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/skarnet.scm (skalibs)[arguments]: Add #:phases. Signed-off-by: Ludovic Courtès --- gnu/packages/skarnet.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/skarnet.scm b/gnu/packages/skarnet.scm index 37e09d8642..5a46b0db64 100644 --- a/gnu/packages/skarnet.scm +++ b/gnu/packages/skarnet.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Claes Wallin ;;; Copyright © 2016 Eric Le Bihan +;;; Copyright © 2017 Z. Ren ;;; ;;; This file is part of GNU Guix. ;;; @@ -39,7 +40,16 @@ (build-system gnu-build-system) (arguments '(#:configure-flags '("--enable-force-devr") ; do not analyze /dev/random - #:tests? #f)) ; no tests exist + #:tests? #f ; no tests exist + #:phases (modify-phases %standard-phases + (add-after 'unpack 'reproducible + (lambda _ + ;; Sort source files deterministically so that the *.a + ;; and *.so files are reproducible. + (substitute* "Makefile" + (("\\$\\(ALL_SRCS:%.c=%.o\\)") + "$(sort $(ALL_SRCS:%.c=%.o))")) + #t))))) (home-page "http://skarnet.org/software/skalibs/") (synopsis "Platform abstraction libraries for skarnet.org software") (description From fe535d81ae520f47f5ef5ef5a69645dc45d14d6c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Aug 2017 16:54:29 +0300 Subject: [PATCH 1159/1227] gnu: libraw: Update to 0.18.2. * gnu/packages/photo.scm (libraw): Update to 0.18.2. [source, home-page]: Use https. --- gnu/packages/photo.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index 7cfbe2ffbe..2378acd975 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -65,16 +65,16 @@ (define-public libraw (package (name "libraw") - (version "0.17.2") + (version "0.18.2") (source (origin (method url-fetch) - (uri (string-append "http://www.libraw.org/data/LibRaw-" + (uri (string-append "https://www.libraw.org/data/LibRaw-" version ".tar.gz")) (sha256 (base32 - "0p6imxpsfn82i0i9w27fnzq6q6gwzvb9f7sygqqakv36fqnc9c4j")))) + "1imby9x88pjx4ad1frdi3bfb8dw90ccyj5pb6w3i6i0iijrnndnf")))) (build-system gnu-build-system) - (home-page "http://www.libraw.org") + (home-page "https://www.libraw.org") (synopsis "Raw image decoder") (description "LibRaw is a library for reading RAW files obtained from digital photo From 94b179c67571b007e8a0a69f456155e9d7fc3711 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Aug 2017 18:46:00 +0300 Subject: [PATCH 1160/1227] gnu: gst-plugins-bad: Build with wayland support. * gnu/packages/gstreamer.scm (gst-plugins-bad)[inputs]: Add wayland. --- gnu/packages/gstreamer.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 97fd52e160..6e43dc9918 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -334,8 +334,7 @@ developers consider to have good quality code and correct functionality.") ;("qtx11extras" ,qtx11extras) ("soundtouch" ,soundtouch) ("x265" ,x265) - ;("wayland" ,wayland) ; needs gtk+ built with wayland support - )) + ("wayland" ,wayland))) (home-page "https://gstreamer.freedesktop.org/") (synopsis "Plugins for the GStreamer multimedia library") (description From 6be54a8751ac36b9b2cd80f4914b11f89a087f6f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Aug 2017 11:53:12 +0200 Subject: [PATCH 1161/1227] gnu: Add rmath-standalone. * gnu/packages/statistics.scm (rmath-standalone): New variable. --- gnu/packages/statistics.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 685042240a..7f6360fc7c 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -269,6 +269,18 @@ publication-quality data plots. A large amount of 3rd-party packages are available, greatly increasing its breadth and scope.") (license license:gpl3+))) +(define-public rmath-standalone + (package (inherit r-minimal) + (name "rmath-standalone") + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'configure 'chdir + (lambda _ (chdir "src/nmath/standalone/") #t))))) + (synopsis "Standalone R math library") + (description + "This package provides the R math library as an independent package."))) + (define-public r-boot (package (name "r-boot") From bd3a184613e20155a8b3e417f00f4d59ff0935e6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Aug 2017 12:59:48 +0200 Subject: [PATCH 1162/1227] gnu: r-minimal: Do not compress serialized files. * gnu/packages/statistics.scm (r-minimal)[arguments]: Replace build phase "patch-which" with "do-not-compress-serialized-files". [propagated-inputs]: Move "which" from here... [inputs]: ...to here. Fixes . --- gnu/packages/statistics.scm | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 7f6360fc7c..ad3032e2ec 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -126,11 +126,12 @@ be output in text, PostScript, PDF or HTML.") "PKG_BUILT_STAMP=1970-01-01") #:phases (modify-phases %standard-phases - ;; FIXME: see bug #28157. - (add-before 'configure 'patch-which + (add-before 'configure 'do-not-compress-serialized-files (lambda* (#:key inputs #:allow-other-keys) - (substitute* "src/library/base/R/unix/system.unix.R" - (("@WHICH@") "which")) + ;; This ensures that Guix can detect embedded store references; + ;; see bug #28157 for details. + (substitute* "src/library/base/makebasedb.R" + (("compress = TRUE") "compress = FALSE")) #t)) (add-before 'configure 'patch-uname (lambda* (#:key inputs #:allow-other-keys) @@ -250,10 +251,8 @@ be output in text, PostScript, PDF or HTML.") ("libxt" ,libxt) ("pcre" ,pcre) ("readline" ,readline) + ("which" ,which) ("zlib" ,zlib))) - ;; FIXME: By default Sys.which embeds a reference to "which", but this - ;; reference is not detected by Guix (see bug #28157). - (propagated-inputs `(("which" ,which))) (native-search-paths (list (search-path-specification (variable "R_LIBS_SITE") From e4b729f89c07b8937db7f96d6076201130f0a3bf Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sun, 30 Jul 2017 11:21:16 +0100 Subject: [PATCH 1163/1227] web: Export more nginx related procedures, macros and record types. This makes it possible to work with the configuration of the NGinx service programatically. * gnu/services/web.scm (, , , , ): Export NGinx related record types. (nginx-configuration-*, nginx-server-configuration-*, nginx-upstream-configuration-*, nginx-location-configuration-*, nginx-named-location-configuration-*): Export NGinx related record procedures. (nginx-configuration): Export NGinx related record macro. --- gnu/services/web.scm | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index cc7adeb5e4..4156b1a56e 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -30,16 +30,47 @@ #:use-module (guix gexp) #:use-module (srfi srfi-1) #:use-module (ice-9 match) - #:export (nginx-configuration + #:export ( + nginx-configuration nginx-configuration? + nginx-configuartion-nginx + nginx-configuration-log-directory + nginx-configuration-run-directory + nginx-configuration-server-blocks + nginx-configuration-upstream-blocks + nginx-configuration-file + + nginx-server-configuration nginx-server-configuration? + nginx-server-configuration-http-port + nginx-server-configuartion-https-port + nginx-server-configuration-server-name + nginx-server-configuration-root + nginx-server-configuration-locations + nginx-server-configuration-index + nginx-server-configuration-ssl-certificate + nginx-server-configuration-ssl-certificate-key + nginx-server-configuration-server-tokens? + + nginx-upstream-configuration nginx-upstream-configuration? + nginx-upstream-configuration-name + nginx-upstream-configuration-servers + + nginx-location-configuration nginx-location-configuration? + nginx-location-configuration-uri + nginx-location-configuration-body + + nginx-named-location-configuration nginx-named-location-configuration? + nginx-named-location-configuration-name + nginx-named-location-configuration-body + nginx-service nginx-service-type From ad4cc435e86c51b7777f09c29f9f94d0971e26fc Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sun, 30 Jul 2017 13:51:35 +0100 Subject: [PATCH 1164/1227] web: Add default-value for the nginx-service-type. * gnu/services/web.scm (nginx-service-type)[default-value]: Use (nginx-configuration). --- gnu/services/web.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index 4156b1a56e..aefae5aedb 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -324,7 +324,9 @@ of index files." (inherit config) (server-blocks (append (nginx-configuration-server-blocks config) - servers))))))) + servers))))) + (default-value + (nginx-configuration)))) (define* (nginx-service #:key (nginx nginx) (log-directory "/var/log/nginx") From 39fc3004be008adfbdd29e38703834bfbd65fda8 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 2 Aug 2017 10:06:27 +0100 Subject: [PATCH 1165/1227] web: Remove the nginx-service procedure. Now that the service-type has a default value, and configuration record is accessible. * gnu/services/web.scm (nginx-service): Remove procedure. * doc/guix.texi (Web Services): Update and improve NGinx documentation. --- doc/guix.texi | 151 +++++++++++++++++++++++++++++++++---------- gnu/services/web.scm | 19 ------ 2 files changed, 116 insertions(+), 54 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index bff0788b2f..ff306a4575 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -14000,52 +14000,133 @@ Local accounts with lower values will silently fail to authenticate. The @code{(gnu services web)} module provides the nginx web server and also a fastcgi wrapper daemon. -@deffn {Scheme Procedure} nginx-service [#:nginx nginx] @ - [#:log-directory ``/var/log/nginx''] @ - [#:run-directory ``/var/run/nginx''] @ - [#:server-list '()] @ - [#:upstream-list '()] @ - [#:config-file @code{#f}] - -Return a service that runs @var{nginx}, the nginx web server. - -The nginx daemon loads its runtime configuration from @var{config-file}. -Log files are written to @var{log-directory} and temporary runtime data -files are written to @var{run-directory}. For proper operation, these -arguments should match what is in @var{config-file} to ensure that the -directories are created when the service is activated. - -As an alternative to using a @var{config-file}, @var{server-list} can be -used to specify the list of @dfn{server blocks} required on the host and -@var{upstream-list} can be used to specify a list of @dfn{upstream -blocks} to configure. For this to work, use the default value for -@var{config-file}. - -At startup, @command{nginx} has not yet read its configuration file, so it -uses a default file to log error messages. If it fails to load its -configuration file, that is where error messages are logged. After the -configuration file is loaded, the default error log file changes as per -configuration. In our case, startup error messages can be found in -@file{/var/run/nginx/logs/error.log}, and after configuration in -@file{/var/log/nginx/error.log}. The second location can be changed with the -@var{log-directory} configuration option. - -@end deffn - @deffn {Scheme Variable} nginx-service-type -This is type for the nginx web server. +Service type for the @uref{https://nginx.org/,NGinx} web server. The +value for this service type is a @code{} record. -This service can be extended to add server blocks in addition to the -default one, as in this example: +A simple example configuration is given below. + +@example +(service nginx-service-type + (nginx-configuration + (server-list + (list (nginx-server-configuration + (server-name '("www.example.com")) + (root "/srv/http/www.example.com") + (https-port #f) + (ssl-certificate #f) + (ssl-certificate-key #f)))))) +@end example + +In addition to adding server blocks to the service configuration +directly, this service can be extended by other services to add server +blocks, as in this example: @example (simple-service 'my-extra-server nginx-service-type (list (nginx-server-configuration (https-port #f) + (ssl-certificate #f) + (ssl-certificate-key #f) (root "/srv/http/extra-website")))) @end example @end deffn +At startup, @command{nginx} has not yet read its configuration file, so +it uses a default file to log error messages. If it fails to load its +configuration file, that is where error messages are logged. After the +configuration file is loaded, the default error log file changes as per +configuration. In our case, startup error messages can be found in +@file{/var/run/nginx/logs/error.log}, and after configuration in +@file{/var/log/nginx/error.log}. The second location can be changed +with the @var{log-directory} configuration option. + +@deffn {Data Type} nginx-configuration +This data type represents the configuration for NGinx. Some +configuration can be done through this and the other provided record +types, or alternatively, a config file can be provided. + +@table @asis +@item @code{nginx} (default: @code{nginx}) +The nginx package to use. + +@item @code{log-directory} (default: @code{"/var/log/nginx"}) +The directory to which NGinx will write log files. + +@item @code{run-directory} (default: @code{"/var/run/nginx"}) +The directory in which NGinx will create a pid file, and write temporary +files. + +@item @code{server-list} (default: @code{'()}) +A list of @dfn{server blocks} to create in the generated configuration +file, the elements should be of type +@code{}. + +The following example would setup NGinx to serve @code{www.example.com} +from the @code{/srv/http/www.example.com} directory, without using +HTTPS. +@example +(service nginx-service-type + (nginx-configuration + (server-list + (list (nginx-server-configuration + (server-name '("www.example.com")) + (root "/srv/http/www.example.com") + (https-port #f) + (ssl-certificate #f) + (ssl-certificate-key #f)))))) +@end example + +@item @code{upstream-list} (default: @code{'()}) +A list of @dfn{upstream blocks} to create in the generated configuration +file, the elements should be of type +@code{}. + +Configuring upstreams through the @code{upstream-list} can be useful +when combined with @code{locations} in the +@code{} records. The following example +creates a server configuration with one location configuration, that +will proxy requests to a upstream configuration, which will handle +requests with two servers. + +@example +(service + nginx-service-type + (nginx-configuration + (server-list + (list (nginx-server-configuration + (server-name '("www.example.com")) + (root "/srv/http/www.example.com") + (https-port #f) + (ssl-certificate #f) + (ssl-certificate-key #f) + (locations + (list + (nginx-location-configuration + (uri "/path1") + (body '("proxy_pass http://server-proxy;")))))))) + (upstream-list + (list (nginx-upstream-configuration + (name "server-proxy") + (servers (list "server1.example.com" + "server2.example.com"))))))) +@end example + +@item @code{config-file} (default: @code{#f}) +If the @var{config-file} is provided, this will be used, rather than +generating a configuration file from the provided @code{log-directory}, +@code{run-directory}, @code{server-list} and @code{upstream-list}. For +proper operation, these arguments should match what is in +@var{config-file} to ensure that the directories are created when the +service is activated. + +This can be useful if you have an existing configuration file, or it's +not possible to do what is required through the other parts of the +nginx-configuration record. + +@end table +@end deffn + @deftp {Data Type} nginx-server-configuration Data type representing the configuration of an nginx server block. This type has the following parameters: diff --git a/gnu/services/web.scm b/gnu/services/web.scm index aefae5aedb..18278502e4 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -328,25 +328,6 @@ of index files." (default-value (nginx-configuration)))) -(define* (nginx-service #:key (nginx nginx) - (log-directory "/var/log/nginx") - (run-directory "/var/run/nginx") - (server-list '()) - (upstream-list '()) - (config-file #f)) - "Return a service that runs NGINX, the nginx web server. - -The nginx daemon loads its runtime configuration from CONFIG-FILE, stores log -files in LOG-DIRECTORY, and stores temporary runtime files in RUN-DIRECTORY." - (service nginx-service-type - (nginx-configuration - (nginx nginx) - (log-directory log-directory) - (run-directory run-directory) - (server-blocks server-list) - (upstream-blocks upstream-list) - (file config-file)))) - (define-record-type* fcgiwrap-configuration make-fcgiwrap-configuration fcgiwrap-configuration? From 77a0354a362a78340956f53ecab406c37bab414f Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 22 Aug 2017 19:09:44 +0000 Subject: [PATCH 1166/1227] gnu: gnurl: Update to 7.55.1-3. * gnu/packages/gnunet.scm (gnurl): Update to 7.55.1-3. Signed-off-by: Tobias Geerinckx-Rice --- gnu/packages/gnunet.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 7ff1a3f6f8..f3fe637b13 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -186,14 +186,14 @@ and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.55.1") + (version "7.55.1-3") (source (origin (method url-fetch) (uri (string-append "https://gnunet.org/sites/default/files/" name "-" version ".tar.bz2")) (sha256 (base32 - "118vb2mc5ivsbrkqzg40w56raf5jdnx00cfmkh735w0mjfy6wccv")))) + "1p2qdh44hgsxjlzh4d3n51xr66cg2z517vpr818flvcrmpq2vxpq")))) (build-system gnu-build-system) (outputs '("out" "doc")) ; 1.5 MiB of man3 pages From 7ac2cab8c92c614e85764a1b2053365f26e0afac Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 22 Jun 2017 13:54:01 +0200 Subject: [PATCH 1167/1227] gnu: Add icedtea-web. * gnu/packages/java.scm (icedtea-web): New variable. --- gnu/packages/web.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 1af80f61ec..652eb6792c 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -73,6 +73,7 @@ #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gperf) #:use-module (gnu packages gtk) + #:use-module (gnu packages java) #:use-module (gnu packages javascript) #:use-module (gnu packages image) #:use-module (gnu packages libidn) @@ -306,6 +307,42 @@ such as high performance, preforking, signal support, superdaemon awareness, and UNIX socket support.") (license l:perl-license))) +(define-public icedtea-web + (package + (name "icedtea-web") + (version "1.6.2") + (source (origin + (method url-fetch) + (uri (string-append + "http://icedtea.wildebeest.org/download/source/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "004kwrngyxxlrlzby4vzxjr0xcyngcdc9dfgnvi61ffnjr006ryf")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list "--disable-plugin" ;NPAPI plugins are obsolete nowadays. + (string-append "BIN_BASH=" (assoc-ref %build-inputs "bash") + "/bin/bash") + (string-append "--with-jdk-home=" (assoc-ref %build-inputs "jdk"))))) + (outputs '("out" "doc")) + (native-inputs + `(("pkg-config" ,pkg-config) + ("zip" ,zip))) + (inputs + `(("gtk+" ,gtk+) + ("jdk" ,icedtea "jdk"))) + (home-page "http://icedtea.classpath.org/wiki/IcedTea-Web") + (synopsis "Java Web Start") + (description + "IcedTea-Web is an implementation of the @dfn{Java Network Launching +Protocol}, also known as Java Web Start. This package provides tools and +libraries for working with JNLP applets.") + ;; The program is mainly GPL2+, with some individual files under LGPL2.1+ + ;; or dual licenses. + (license l:gpl2+))) + (define-public jansson (package (name "jansson") From 2e4569829e12afd23bb4671704a6f48c6b29c786 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jul 2017 13:24:56 +0200 Subject: [PATCH 1168/1227] gnu: Add f2fs-tools. * gnu/packages/linux.scm (f2fs-tools): New variable. --- gnu/packages/linux.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 52637f1332..6c70328eba 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3219,6 +3219,42 @@ repair and easy administration.") from the btrfs-progs package. It is meant to be used in initrds.") (license (package-license btrfs-progs)))) +(define-public f2fs-tools + (package + (name "f2fs-tools") + (version "1.8.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://git.kernel.org/cgit/linux/kernel/git/jaegeuk" + "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz")) + (sha256 + (base32 + "1bir9ladb58ijlcvrjrq1fb1xv5ys50zdjaq0yzliib0apsyrnyl")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + (zero? (system* "autoreconf" "-vif"))))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (inputs + `(("libuuid" ,util-linux))) + (home-page "https://f2fs.wiki.kernel.org/") + (synopsis "Userland tools for f2fs") + (description + "F2FS, the Flash-Friendly File System, is a modern file system +designed to be fast and durable on flash devices such as solid-state +disks and SD cards. This package provides the userland utilities.") + ;; The formatting utility, libf2fs and include/f2fs_fs.h is dual + ;; GPL2/LGPL2.1, everything else is GPL2 only. See 'COPYING'. + (license (list license:gpl2 license:lgpl2.1)))) + (define-public freefall (package (name "freefall") From ed8634c404410ed5e0d3ab06e43bd50d4eed9c42 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 20 Aug 2017 12:57:00 +0200 Subject: [PATCH 1169/1227] bash completion: Complete files names after 'guix download'. * etc/completion/bash/guix (_guix_complete): When the command is "download", use __guix_complete_file. --- etc/completion/bash/guix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix index 6a5f281c4f..6b84193dbe 100644 --- a/etc/completion/bash/guix +++ b/etc/completion/bash/guix @@ -158,6 +158,9 @@ _guix_complete () else _guix_complete_available_package "$word_at_point" fi + elif _guix_is_command "download" + then + _guix_complete_file elif _guix_is_command "system" then case $COMP_CWORD in From 4e58740affd0533d4ddfb25d386d045246973517 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 22 Aug 2017 23:17:14 +0200 Subject: [PATCH 1170/1227] gnu: whois: Update to 5.2.18. * gnu/packages/networking.scm (whois): Update to 5.2.18. --- gnu/packages/networking.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index e37f2cb5ea..b786b63c20 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -444,7 +444,7 @@ and up to 1 Mbit/s downstream.") (define-public whois (package (name "whois") - (version "5.2.17") + (version "5.2.18") (source (origin (method url-fetch) @@ -452,7 +452,7 @@ and up to 1 Mbit/s downstream.") name "_" version ".tar.xz")) (sha256 (base32 - "0r4np8gaxhy9c0v795dc4dhxms9zak31vd378sb1h7jpixkqax95")))) + "1mcpgj18n1xppvlhjqzpj05yr5z48bym9bd88k10fwgkmwk0spf3")))) (build-system gnu-build-system) ;; TODO: unbundle mkpasswd binary + its po files. (arguments From 7d14082d56462f7bef4254d65a21fd265fbce471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Aug 2017 00:03:06 +0200 Subject: [PATCH 1171/1227] services: herd: Actions return a list of results. Fixes a regression introduced in 0642838b2e9ab2bd988dccb64b9e1130006347bf. * gnu/services/herd.scm (invoke-action): Explain that we get a list of results. (current-services): Expect a list of result and use the first one. (unload-service, %load-file, eval-there): Likewise. --- gnu/services/herd.scm | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/gnu/services/herd.scm b/gnu/services/herd.scm index e16d51b9d0..5c894af6fd 100644 --- a/gnu/services/herd.scm +++ b/gnu/services/herd.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. @@ -136,7 +136,8 @@ does not denote an error." (define* (invoke-action service action arguments cont) "Invoke ACTION on SERVICE with ARGUMENTS. On success, call CONT with the -result. Otherwise return #f." +list of results (one result per instance with the name SERVICE). Otherwise +return #f." (with-shepherd sock (write `(shepherd-command (version 0) (action ,action) @@ -186,30 +187,34 @@ of pairs." "Return the list of currently defined Shepherd services, represented as objects. Return #f if the list of services could not be obtained." - (with-shepherd-action 'root ('status) services - (match services - ((('service ('version 0 _ ...) _ ...) ...) - (map (lambda (service) - (alist-let* service (provides requires running) - (live-service provides requires running))) - services)) - (x - #f)))) + (with-shepherd-action 'root ('status) results + ;; We get a list of results, one for each service with the name 'root'. + ;; In practice there's only one such service though. + (match results + ((services _ ...) + (match services + ((('service ('version 0 _ ...) _ ...) ...) + (map (lambda (service) + (alist-let* service (provides requires running) + (live-service provides requires running))) + services)) + (x + #f)))))) (define (unload-service service) "Unload SERVICE, a symbol name; return #t on success." (with-shepherd-action 'root ('unload (symbol->string service)) result - result)) + (first result))) (define (%load-file file) "Load FILE in the Shepherd." (with-shepherd-action 'root ('load file) result - result)) + (first result))) (define (eval-there exp) "Eval EXP in the Shepherd." (with-shepherd-action 'root ('eval (object->string exp)) result - result)) + (first result))) (define (load-services files) "Load and register the services from FILES, where FILES contain code that From 0577a3fd92be2ae8244894155bfa24a559ef31b8 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 22 Aug 2017 16:09:47 +0100 Subject: [PATCH 1172/1227] gnu: Build the shared library for yaml-cpp. * gnu/packages/serialization.scm (yaml-cpp)[arguments]: Add -DBUILD_SHARED_LIBS=ON to #:configure-flags. --- gnu/packages/serialization.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 3994191bd2..8032e3181d 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -249,6 +249,8 @@ that implements both the msgpack and msgpack-rpc specifications.") (base32 "1vk6pjh0f5k6jwk2sszb9z5169whmiha9ainbdpa1arxlkq7v3b6")))) (build-system cmake-build-system) + (arguments + '(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) (inputs `(("boost" ,boost))) (native-inputs From 903e051a71467bc96a054c9b4ed89348fdae8977 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 19 Aug 2017 20:07:47 +0100 Subject: [PATCH 1173/1227] gnu: libvirt: Wrap with iproute and qemu. libvirtd runs qemu if it's configured to use it, and also uses the ip command. * gnu/packages/virtualization.scm (libvirt)[arguments]: Add wrap-libvirtd phase. --- gnu/packages/virtualization.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index ab364cd1fb..d76a6dfd85 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -361,7 +361,16 @@ manage system or application containers.") (lambda _ (zero? (system* "make" "install" "sysconfdir=/tmp/etc" - "localstatedir=/tmp/var"))))))) + "localstatedir=/tmp/var")))) + (add-after 'install 'wrap-libvirtd + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/sbin/libvirtd") + `("PATH" = (,(string-append (assoc-ref inputs "iproute") + "/sbin") + ,(string-append (assoc-ref inputs "qemu") + "/bin")))) + #t)))))) (inputs `(("libxml2" ,libxml2) ("gnutls" ,gnutls) From e6051057ab926daa19a00a2d8dbd678ecb9be95c Mon Sep 17 00:00:00 2001 From: Ryan Moe Date: Fri, 28 Jul 2017 16:50:37 -0700 Subject: [PATCH 1174/1227] services: Add libvirt services * gnu/services/virtualization.scm: New file. * doc/guix.texi (Virtualization Services): Document it. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: Christopher Baines --- doc/guix.texi | 709 ++++++++++++++++++++++++++++++++ gnu/local.mk | 1 + gnu/services/virtualization.scm | 492 ++++++++++++++++++++++ 3 files changed, 1202 insertions(+) create mode 100644 gnu/services/virtualization.scm diff --git a/doc/guix.texi b/doc/guix.texi index ff306a4575..77435d897b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -228,6 +228,7 @@ Services * Continuous Integration:: The Cuirass service. * Power management Services:: The TLP tool. * Audio Services:: The MPD. +* Virtualization Services:: Virtualization services. * Miscellaneous Services:: Other services. Defining Services @@ -9104,6 +9105,7 @@ declaration. * Continuous Integration:: The Cuirass service. * Power management Services:: The TLP tool. * Audio Services:: The MPD. +* Virtualization Services:: Virtualization services. * Miscellaneous Services:: Other services. @end menu @@ -15838,6 +15840,713 @@ an absolute path can be specified here. @end table @end deftp +@node Virtualization Services +@subsubsection Virtualization services +The @code{(gnu services virtualization)} module provides services for +the libvirt and virtlog daemons. + +@subsubheading Libvirt daemon +@code{libvirtd} is the server side daemon component of the libvirt +virtualization management system. This daemon runs on host servers +and performs required management tasks for virtualized guests. + +@deffn {Scheme Variable} libvirt-service-type +This is the type of the @uref{https://libvirt.org, libvirt daemon}. +Its value must be a @code{libvirt-configuration}. + +@example +(service libvirt-service-type + (libvirt-configuration + (unix-sock-group "libvirt") + (tls-port "16555"))) +@end example +@end deffn + +@c Auto-generated with (generate-libvirt-documentation) +Available @code{libvirt-configuration} fields are: + +@deftypevr {@code{libvirt-configuration} parameter} package libvirt +Libvirt package. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} boolean listen-tls? +Flag listening for secure TLS connections on the public TCP/IP port. +must set @code{listen} for this to have any effect. + +It is necessary to setup a CA and issue server certificates before using +this capability. + +Defaults to @samp{#t}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} boolean listen-tcp? +Listen for unencrypted TCP connections on the public TCP/IP port. must +set @code{listen} for this to have any effect. + +Using the TCP socket requires SASL authentication by default. Only SASL +mechanisms which support data encryption are allowed. This is +DIGEST_MD5 and GSSAPI (Kerberos5) + +Defaults to @samp{#f}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string tls-port +Port for accepting secure TLS connections This can be a port number, or +service name + +Defaults to @samp{"16514"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string tcp-port +Port for accepting insecure TCP connections This can be a port number, +or service name + +Defaults to @samp{"16509"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string listen-addr +IP address or hostname used for client connections. + +Defaults to @samp{"0.0.0.0"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} boolean mdns-adv? +Flag toggling mDNS advertisement of the libvirt service. + +Alternatively can disable for all services on a host by stopping the +Avahi daemon. + +Defaults to @samp{#f}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string mdns-name +Default mDNS advertisement name. This must be unique on the immediate +broadcast network. + +Defaults to @samp{"Virtualization Host "}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string unix-sock-group +UNIX domain socket group ownership. This can be used to allow a +'trusted' set of users access to management capabilities without +becoming root. + +Defaults to @samp{"root"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string unix-sock-ro-perms +UNIX socket permissions for the R/O socket. This is used for monitoring +VM status only. + +Defaults to @samp{"0777"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string unix-sock-rw-perms +UNIX socket permissions for the R/W socket. Default allows only root. +If PolicyKit is enabled on the socket, the default will change to allow +everyone (eg, 0777) + +Defaults to @samp{"0770"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string unix-sock-admin-perms +UNIX socket permissions for the admin socket. Default allows only owner +(root), do not change it unless you are sure to whom you are exposing +the access to. + +Defaults to @samp{"0777"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string unix-sock-dir +The directory in which sockets will be found/created. + +Defaults to @samp{"/var/run/libvirt"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string auth-unix-ro +Authentication scheme for UNIX read-only sockets. By default socket +permissions allow anyone to connect + +Defaults to @samp{"polkit"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string auth-unix-rw +Authentication scheme for UNIX read-write sockets. By default socket +permissions only allow root. If PolicyKit support was compiled into +libvirt, the default will be to use 'polkit' auth. + +Defaults to @samp{"polkit"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string auth-tcp +Authentication scheme for TCP sockets. If you don't enable SASL, then +all TCP traffic is cleartext. Don't do this outside of a dev/test +scenario. + +Defaults to @samp{"sasl"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string auth-tls +Authentication scheme for TLS sockets. TLS sockets already have +encryption provided by the TLS layer, and limited authentication is done +by certificates. + +It is possible to make use of any SASL authentication mechanism as well, +by using 'sasl' for this option + +Defaults to @samp{"none"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} optional-list access-drivers +API access control scheme. + +By default an authenticated user is allowed access to all APIs. Access +drivers can place restrictions on this. + +Defaults to @samp{()}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string key-file +Server key file path. If set to an empty string, then no private key is +loaded. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string cert-file +Server key file path. If set to an empty string, then no certificate is +loaded. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string ca-file +Server key file path. If set to an empty string, then no CA certificate +is loaded. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string crl-file +Certificate revocation list path. If set to an empty string, then no +CRL is loaded. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} boolean tls-no-sanity-cert +Disable verification of our own server certificates. + +When libvirtd starts it performs some sanity checks against its own +certificates. + +Defaults to @samp{#f}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} boolean tls-no-verify-cert +Disable verification of client certificates. + +Client certificate verification is the primary authentication mechanism. +Any client which does not present a certificate signed by the CA will be +rejected. + +Defaults to @samp{#f}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} optional-list tls-allowed-dn-list +Whitelist of allowed x509 Distinguished Name. + +Defaults to @samp{()}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} optional-list sasl-allowed-usernames +Whitelist of allowed SASL usernames. The format for username depends on +the SASL authentication mechanism. + +Defaults to @samp{()}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string tls-priority +Override the compile time default TLS priority string. The default is +usually "NORMAL" unless overridden at build time. Only set this is it +is desired for libvirt to deviate from the global default settings. + +Defaults to @samp{"NORMAL"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer max-clients +Maximum number of concurrent client connections to allow over all +sockets combined. + +Defaults to @samp{5000}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer max-queued-clients +Maximum length of queue of connections waiting to be accepted by the +daemon. Note, that some protocols supporting retransmission may obey +this so that a later reattempt at connection succeeds. + +Defaults to @samp{1000}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer max-anonymous-clients +Maximum length of queue of accepted but not yet authenticated clients. +Set this to zero to turn this feature off + +Defaults to @samp{20}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer min-workers +Number of workers to start up initially. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer max-workers +Maximum number of worker threads. + +If the number of active clients exceeds @code{min-workers}, then more +threads are spawned, up to max_workers limit. Typically you'd want +max_workers to equal maximum number of clients allowed. + +Defaults to @samp{20}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer prio-workers +Number of priority workers. If all workers from above pool are stuck, +some calls marked as high priority (notably domainDestroy) can be +executed in this pool. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer max-requests +Total global limit on concurrent RPC calls. + +Defaults to @samp{20}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer max-client-requests +Limit on concurrent requests from a single client connection. To avoid +one client monopolizing the server this should be a small fraction of +the global max_requests and max_workers parameter. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer admin-min-workers +Same as @code{min-workers} but for the admin interface. + +Defaults to @samp{1}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer admin-max-workers +Same as @code{max-workers} but for the admin interface. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer admin-max-clients +Same as @code{max-clients} but for the admin interface. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer admin-max-queued-clients +Same as @code{max-queued-clients} but for the admin interface. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer admin-max-client-requests +Same as @code{max-client-requests} but for the admin interface. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer log-level +Logging level. 4 errors, 3 warnings, 2 information, 1 debug. + +Defaults to @samp{3}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string log-filters +Logging filters. + +A filter allows to select a different logging level for a given category +of logs The format for a filter is one of: + +@itemize @bullet +@item +x:name + +@item +x:+name + +@end itemize + +where @code{name} is a string which is matched against the category +given in the @code{VIR_LOG_INIT()} at the top of each libvirt source +file, e.g., "remote", "qemu", or "util.json" (the name in the filter can +be a substring of the full category name, in order to match multiple +similar categories), the optional "+" prefix tells libvirt to log stack +trace for each message matching name, and @code{x} is the minimal level +where matching messages should be logged: + +@itemize @bullet +@item +1: DEBUG + +@item +2: INFO + +@item +3: WARNING + +@item +4: ERROR + +@end itemize + +Multiple filters can be defined in a single filters statement, they just +need to be separated by spaces. + +Defaults to @samp{"3:remote 4:event"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string log-outputs +Logging outputs. + +An output is one of the places to save logging information The format +for an output can be: + +@table @code +@item x:stderr +output goes to stderr + +@item x:syslog:name +use syslog for the output and use the given name as the ident + +@item x:file:file_path +output to a file, with the given filepath + +@item x:journald +output to journald logging system + +@end table + +In all case the x prefix is the minimal level, acting as a filter + +@itemize @bullet +@item +1: DEBUG + +@item +2: INFO + +@item +3: WARNING + +@item +4: ERROR + +@end itemize + +Multiple outputs can be defined, they just need to be separated by +spaces. + +Defaults to @samp{"3:stderr"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer audit-level +Allows usage of the auditing subsystem to be altered + +@itemize @bullet +@item +0: disable all auditing + +@item +1: enable auditing, only if enabled on host + +@item +2: enable auditing, and exit if disabled on host. + +@end itemize + +Defaults to @samp{1}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} boolean audit-logging +Send audit messages via libvirt logging infrastructure. + +Defaults to @samp{#f}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} optional-string host-uuid +Host UUID. UUID must not have all digits be the same. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} string host-uuid-source +Source to read host UUID. + +@itemize @bullet +@item +@code{smbios}: fetch the UUID from @code{dmidecode -s system-uuid} + +@item +@code{machine-id}: fetch the UUID from @code{/etc/machine-id} + +@end itemize + +If @code{dmidecode} does not provide a valid UUID a temporary UUID will +be generated. + +Defaults to @samp{"smbios"}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer keepalive-interval +A keepalive message is sent to a client after @code{keepalive_interval} +seconds of inactivity to check if the client is still responding. If +set to -1, libvirtd will never send keepalive requests; however clients +can still send them and the daemon will send responses. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer keepalive-count +Maximum number of keepalive messages that are allowed to be sent to the +client without getting any response before the connection is considered +broken. + +In other words, the connection is automatically closed approximately +after @code{keepalive_interval * (keepalive_count + 1)} seconds since +the last message received from the client. When @code{keepalive-count} +is set to 0, connections will be automatically closed after +@code{keepalive-interval} seconds of inactivity without sending any +keepalive messages. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer admin-keepalive-interval +Same as above but for admin interface. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer admin-keepalive-count +Same as above but for admin interface. + +Defaults to @samp{5}. + +@end deftypevr + +@deftypevr {@code{libvirt-configuration} parameter} integer ovs-timeout +Timeout for Open vSwitch calls. + +The @code{ovs-vsctl} utility is used for the configuration and its +timeout option is set by default to 5 seconds to avoid potential +infinite waits blocking libvirt. + +Defaults to @samp{5}. + +@end deftypevr + +@c %end of autogenerated docs + +@subsubheading Virtlog daemon +The virtlogd service is a server side daemon component of libvirt that is +used to manage logs from virtual machine consoles. + +This daemon is not used directly by libvirt client applications, rather it +is called on their behalf by @code{libvirtd}. By maintaining the logs in a +standalone daemon, the main @code{libvirtd} daemon can be restarted without +risk of losing logs. The @code{virtlogd} daemon has the ability to re-exec() +itself upon receiving @code{SIGUSR1}, to allow live upgrades without downtime. + +@deffn {Scheme Variable} virtlog-service-type +This is the type of the virtlog daemon. +Its value must be a @code{virtlog-configuration}. + +@example +(service virtlog-service-type + (virtlog-configuration + (max-clients 1000))) +@end example +@end deffn + +@deftypevr {@code{virtlog-configuration} parameter} integer log-level +Logging level. 4 errors, 3 warnings, 2 information, 1 debug. + +Defaults to @samp{3}. + +@end deftypevr + +@deftypevr {@code{virtlog-configuration} parameter} string log-filters +Logging filters. + +A filter allows to select a different logging level for a given category +of logs The format for a filter is one of: + +@itemize @bullet +@item +x:name + +@item +x:+name + +@end itemize + +where @code{name} is a string which is matched against the category +given in the @code{VIR_LOG_INIT()} at the top of each libvirt source +file, e.g., "remote", "qemu", or "util.json" (the name in the filter can +be a substring of the full category name, in order to match multiple +similar categories), the optional "+" prefix tells libvirt to log stack +trace for each message matching name, and @code{x} is the minimal level +where matching messages should be logged: + +@itemize @bullet +@item +1: DEBUG + +@item +2: INFO + +@item +3: WARNING + +@item +4: ERROR + +@end itemize + +Multiple filters can be defined in a single filters statement, they just +need to be separated by spaces. + +Defaults to @samp{"3:remote 4:event"}. + +@end deftypevr + +@deftypevr {@code{virtlog-configuration} parameter} string log-outputs +Logging outputs. + +An output is one of the places to save logging information The format +for an output can be: + +@table @code +@item x:stderr +output goes to stderr + +@item x:syslog:name +use syslog for the output and use the given name as the ident + +@item x:file:file_path +output to a file, with the given filepath + +@item x:journald +output to journald logging system + +@end table + +In all case the x prefix is the minimal level, acting as a filter + +@itemize @bullet +@item +1: DEBUG + +@item +2: INFO + +@item +3: WARNING + +@item +4: ERROR + +@end itemize + +Multiple outputs can be defined, they just need to be separated by +spaces. + +Defaults to @samp{"3:stderr"}. + +@end deftypevr + +@deftypevr {@code{virtlog-configuration} parameter} integer max-clients +Maximum number of concurrent client connections to allow over all +sockets combined. + +Defaults to @samp{1024}. + +@end deftypevr + +@deftypevr {@code{virtlog-configuration} parameter} integer max-size +Maximum file size before rolling over. + +Defaults to @samp{2MB} + +@end deftypevr + +@deftypevr {@code{virtlog-configuration} parameter} integer max-backups +Maximum number of backup files to keep. + +Defaults to @samp{3} + +@end deftypevr + + @node Miscellaneous Services @subsubsection Miscellaneous Services diff --git a/gnu/local.mk b/gnu/local.mk index 1c6158cbfc..1bec2227ec 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -440,6 +440,7 @@ GNU_SYSTEM_MODULES = \ %D%/services/dns.scm \ %D%/services/kerberos.scm \ %D%/services/lirc.scm \ + %D%/services/virtualization.scm \ %D%/services/mail.scm \ %D%/services/mcron.scm \ %D%/services/messaging.scm \ diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm new file mode 100644 index 0000000000..845cdb07ba --- /dev/null +++ b/gnu/services/virtualization.scm @@ -0,0 +1,492 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Ryan Moe +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu services virtualization) + #:use-module (gnu services) + #:use-module (gnu services configuration) + #:use-module (gnu services base) + #:use-module (gnu services dbus) + #:use-module (gnu services shepherd) + #:use-module (gnu system shadow) + #:use-module (gnu packages admin) + #:use-module (gnu packages virtualization) + #:use-module (guix records) + #:use-module (guix gexp) + #:use-module (guix packages) + #:use-module (ice-9 match) + + #:export (libvirt-configuration + libvirt-service-type + virtlog-service-type)) + +(define (uglify-field-name field-name) + (let ((str (symbol->string field-name))) + (string-join + (string-split (string-delete #\? str) #\-) + "_"))) + +(define (quote-val val) + (string-append "\"" val "\"")) + +(define (serialize-field field-name val) + (format #t "~a = ~a\n" (uglify-field-name field-name) val)) + +(define (serialize-string field-name val) + (serialize-field field-name (quote-val val))) + +(define (serialize-boolean field-name val) + (serialize-field field-name (if val 1 0))) + +(define (serialize-integer field-name val) + (serialize-field field-name val)) + +(define (build-opt-list val) + (string-append + "[" + (string-join (map quote-val val) ",") + "]")) + +(define optional-list? list?) +(define optional-string? string?) + +(define (serialize-list field-name val) + (serialize-field field-name (build-opt-list val))) + +(define (serialize-optional-list field-name val) + (if (null? val) + (format #t "# ~a = []\n" (uglify-field-name field-name)) + (serialize-list field-name val))) + +(define (serialize-optional-string field-name val) + (if (string-null? val) + (format #t "# ~a = \"\"\n" (uglify-field-name field-name)) + (serialize-string field-name val))) + +(define-configuration libvirt-configuration + (libvirt + (package libvirt) + "Libvirt package.") + (listen-tls? + (boolean #t) + "Flag listening for secure TLS connections on the public TCP/IP port. +must set @code{listen} for this to have any effect. + +It is necessary to setup a CA and issue server certificates before +using this capability.") + (listen-tcp? + (boolean #f) + "Listen for unencrypted TCP connections on the public TCP/IP port. +must set @code{listen} for this to have any effect. + +Using the TCP socket requires SASL authentication by default. Only +SASL mechanisms which support data encryption are allowed. This is +DIGEST_MD5 and GSSAPI (Kerberos5)") + (tls-port + (string "16514") + "Port for accepting secure TLS connections This can be a port number, +or service name") + (tcp-port + (string "16509") + "Port for accepting insecure TCP connections This can be a port number, +or service name") + (listen-addr + (string "0.0.0.0") + "IP address or hostname used for client connections.") + (mdns-adv? + (boolean #f) + "Flag toggling mDNS advertisement of the libvirt service. + +Alternatively can disable for all services on a host by +stopping the Avahi daemon.") + (mdns-name + (string (string-append "Virtualization Host " (gethostname))) + "Default mDNS advertisement name. This must be unique on the +immediate broadcast network.") + (unix-sock-group + (string "root") + "UNIX domain socket group ownership. This can be used to +allow a 'trusted' set of users access to management capabilities +without becoming root.") + (unix-sock-ro-perms + (string "0777") + "UNIX socket permissions for the R/O socket. This is used +for monitoring VM status only.") + (unix-sock-rw-perms + (string "0770") + "UNIX socket permissions for the R/W socket. Default allows +only root. If PolicyKit is enabled on the socket, the default +will change to allow everyone (eg, 0777)") + (unix-sock-admin-perms + (string "0777") + "UNIX socket permissions for the admin socket. Default allows +only owner (root), do not change it unless you are sure to whom +you are exposing the access to.") + (unix-sock-dir + (string "/var/run/libvirt") + "The directory in which sockets will be found/created.") + (auth-unix-ro + (string "polkit") + "Authentication scheme for UNIX read-only sockets. By default +socket permissions allow anyone to connect") + (auth-unix-rw + (string "polkit") + "Authentication scheme for UNIX read-write sockets. By default +socket permissions only allow root. If PolicyKit support was compiled +into libvirt, the default will be to use 'polkit' auth.") + (auth-tcp + (string "sasl") + "Authentication scheme for TCP sockets. If you don't enable SASL, +then all TCP traffic is cleartext. Don't do this outside of a dev/test +scenario.") + (auth-tls + (string "none") + "Authentication scheme for TLS sockets. TLS sockets already have +encryption provided by the TLS layer, and limited authentication is +done by certificates. + +It is possible to make use of any SASL authentication mechanism as +well, by using 'sasl' for this option") + (access-drivers + (optional-list '()) + "API access control scheme. + +By default an authenticated user is allowed access to all APIs. Access +drivers can place restrictions on this.") + (key-file + (string "") + "Server key file path. If set to an empty string, then no private key +is loaded.") + (cert-file + (string "") + "Server key file path. If set to an empty string, then no certificate +is loaded.") + (ca-file + (string "") + "Server key file path. If set to an empty string, then no CA certificate +is loaded.") + (crl-file + (string "") + "Certificate revocation list path. If set to an empty string, then no +CRL is loaded.") + (tls-no-sanity-cert + (boolean #f) + "Disable verification of our own server certificates. + +When libvirtd starts it performs some sanity checks against its own +certificates.") + (tls-no-verify-cert + (boolean #f) + "Disable verification of client certificates. + +Client certificate verification is the primary authentication mechanism. +Any client which does not present a certificate signed by the CA +will be rejected.") + (tls-allowed-dn-list + (optional-list '()) + "Whitelist of allowed x509 Distinguished Name.") + (sasl-allowed-usernames + (optional-list '()) + "Whitelist of allowed SASL usernames. The format for username +depends on the SASL authentication mechanism.") + (tls-priority + (string "NORMAL") + "Override the compile time default TLS priority string. The +default is usually \"NORMAL\" unless overridden at build time. +Only set this is it is desired for libvirt to deviate from +the global default settings.") + (max-clients + (integer 5000) + "Maximum number of concurrent client connections to allow +over all sockets combined.") + (max-queued-clients + (integer 1000) + "Maximum length of queue of connections waiting to be +accepted by the daemon. Note, that some protocols supporting +retransmission may obey this so that a later reattempt at +connection succeeds.") + (max-anonymous-clients + (integer 20) + "Maximum length of queue of accepted but not yet authenticated +clients. Set this to zero to turn this feature off") + (min-workers + (integer 5) + "Number of workers to start up initially.") + (max-workers + (integer 20) + "Maximum number of worker threads. + +If the number of active clients exceeds @code{min-workers}, +then more threads are spawned, up to max_workers limit. +Typically you'd want max_workers to equal maximum number +of clients allowed.") + (prio-workers + (integer 5) + "Number of priority workers. If all workers from above +pool are stuck, some calls marked as high priority +(notably domainDestroy) can be executed in this pool.") + (max-requests + (integer 20) + "Total global limit on concurrent RPC calls.") + (max-client-requests + (integer 5) + "Limit on concurrent requests from a single client +connection. To avoid one client monopolizing the server +this should be a small fraction of the global max_requests +and max_workers parameter.") + (admin-min-workers + (integer 1) + "Same as @code{min-workers} but for the admin interface.") + (admin-max-workers + (integer 5) + "Same as @code{max-workers} but for the admin interface.") + (admin-max-clients + (integer 5) + "Same as @code{max-clients} but for the admin interface.") + (admin-max-queued-clients + (integer 5) + "Same as @code{max-queued-clients} but for the admin interface.") + (admin-max-client-requests + (integer 5) + "Same as @code{max-client-requests} but for the admin interface.") + (log-level + (integer 3) + "Logging level. 4 errors, 3 warnings, 2 information, 1 debug.") + (log-filters + (string "3:remote 4:event") + "Logging filters. + +A filter allows to select a different logging level for a given category +of logs +The format for a filter is one of: +@itemize +@item x:name + +@item x:+name +@end itemize + +where @code{name} is a string which is matched against the category +given in the @code{VIR_LOG_INIT()} at the top of each libvirt source +file, e.g., \"remote\", \"qemu\", or \"util.json\" (the name in the +filter can be a substring of the full category name, in order +to match multiple similar categories), the optional \"+\" prefix +tells libvirt to log stack trace for each message matching +name, and @code{x} is the minimal level where matching messages should +be logged: + +@itemize +@item 1: DEBUG +@item 2: INFO +@item 3: WARNING +@item 4: ERROR +@end itemize + +Multiple filters can be defined in a single filters statement, they just +need to be separated by spaces.") + (log-outputs + (string "3:stderr") + "Logging outputs. + +An output is one of the places to save logging information +The format for an output can be: + +@table @code +@item x:stderr +output goes to stderr + +@item x:syslog:name +use syslog for the output and use the given name as the ident + +@item x:file:file_path +output to a file, with the given filepath + +@item x:journald +output to journald logging system +@end table + +In all case the x prefix is the minimal level, acting as a filter + +@itemize +@item 1: DEBUG +@item 2: INFO +@item 3: WARNING +@item 4: ERROR +@end itemize + +Multiple outputs can be defined, they just need to be separated by spaces.") + (audit-level + (integer 1) + "Allows usage of the auditing subsystem to be altered + +@itemize +@item 0: disable all auditing +@item 1: enable auditing, only if enabled on host +@item 2: enable auditing, and exit if disabled on host. +@end itemize +") + (audit-logging + (boolean #f) + "Send audit messages via libvirt logging infrastructure.") + (host-uuid + (optional-string "") + "Host UUID. UUID must not have all digits be the same.") + (host-uuid-source + (string "smbios") + "Source to read host UUID. + +@itemize + +@item @code{smbios}: fetch the UUID from @code{dmidecode -s system-uuid} + +@item @code{machine-id}: fetch the UUID from @code{/etc/machine-id} + +@end itemize + +If @code{dmidecode} does not provide a valid UUID a temporary UUID +will be generated.") + (keepalive-interval + (integer 5) + "A keepalive message is sent to a client after +@code{keepalive_interval} seconds of inactivity to check if +the client is still responding. If set to -1, libvirtd will +never send keepalive requests; however clients can still send +them and the daemon will send responses.") + (keepalive-count + (integer 5) + "Maximum number of keepalive messages that are allowed to be sent +to the client without getting any response before the connection is +considered broken. + +In other words, the connection is automatically +closed approximately after +@code{keepalive_interval * (keepalive_count + 1)} seconds since the last +message received from the client. When @code{keepalive-count} is +set to 0, connections will be automatically closed after +@code{keepalive-interval} seconds of inactivity without sending any +keepalive messages.") + (admin-keepalive-interval + (integer 5) + "Same as above but for admin interface.") + (admin-keepalive-count + (integer 5) + "Same as above but for admin interface.") + (ovs-timeout + (integer 5) + "Timeout for Open vSwitch calls. + +The @code{ovs-vsctl} utility is used for the configuration and +its timeout option is set by default to 5 seconds to avoid +potential infinite waits blocking libvirt.")) + +(define* (libvirt-conf-file config) + "Return a libvirtd config file." + (plain-file "libvirtd.conf" + (with-output-to-string + (lambda () + (serialize-configuration config libvirt-configuration-fields))))) + +(define %libvirt-accounts + (list (user-group (name "libvirt") (system? #t)))) + +(define (%libvirt-activation config) + (let ((sock-dir (libvirt-configuration-unix-sock-dir config))) + #~(begin + (use-modules (guix build utils)) + (mkdir-p #$sock-dir)))) + + +(define (libvirt-shepherd-service config) + (let* ((config-file (libvirt-conf-file config)) + (libvirt (libvirt-configuration-libvirt config))) + (list (shepherd-service + (documentation "Run the libvirt daemon.") + (provision '(libvirtd)) + (start #~(make-forkexec-constructor + (list (string-append #$libvirt "/sbin/libvirtd") + "-f" #$config-file))) + (stop #~(make-kill-destructor)))))) + +(define libvirt-service-type + (service-type (name 'libvirt) + (extensions + (list + (service-extension polkit-service-type + (compose list libvirt-configuration-libvirt)) + (service-extension profile-service-type + (compose list + libvirt-configuration-libvirt)) + (service-extension activation-service-type + %libvirt-activation) + (service-extension shepherd-root-service-type + libvirt-shepherd-service) + (service-extension account-service-type + (const %libvirt-accounts)))) + (default-value (libvirt-configuration)))) + + +(define-record-type* + virtlog-configuration make-virtlog-configuration + virtlog-configuration? + (libvirt virtlog-configuration-libvirt + (default libvirt)) + (log-level virtlog-configuration-log-level + (default 3)) + (log-filters virtlog-configuration-log-filters + (default "3:remote 4:event")) + (log-outputs virtlog-configuration-log-outputs + (default "3:syslog:virtlogd")) + (max-clients virtlog-configuration-max-clients + (default 1024)) + (max-size virtlog-configuration-max-size + (default 2097152)) ;; 2MB + (max-backups virtlog-configuration-max-backups + (default 3))) + +(define* (virtlogd-conf-file config) + "Return a virtlogd config file." + (plain-file "virtlogd.conf" + (string-append + "log_level = " (number->string (virtlog-configuration-log-level config)) "\n" + "log_filters = \"" (virtlog-configuration-log-filters config) "\"\n" + "log_outputs = \"" (virtlog-configuration-log-outputs config) "\"\n" + "max_clients = " (number->string (virtlog-configuration-max-clients config)) "\n" + "max_size = " (number->string (virtlog-configuration-max-size config)) "\n" + "max_backups = " (number->string (virtlog-configuration-max-backups config)) "\n"))) + +(define (virtlogd-shepherd-service config) + (let* ((config-file (virtlogd-conf-file config)) + (libvirt (virtlog-configuration-libvirt config))) + (list (shepherd-service + (documentation "Run the virtlog daemon.") + (provision '(virtlogd)) + (start #~(make-forkexec-constructor + (list (string-append #$libvirt "/sbin/virtlogd") + "-f" #$config-file))) + (stop #~(make-kill-destructor)))))) + +(define virtlog-service-type + (service-type (name 'virtlogd) + (extensions + (list + (service-extension shepherd-root-service-type + virtlogd-shepherd-service))) + (default-value (virtlog-configuration)))) + +(define (generate-libvirt-documentation) + (generate-documentation + `((libvirt-configuration ,libvirt-configuration-fields)) + 'libvirt-configuration)) From c075c8fd0c79293a1461f78c7f7b141af23fa7bf Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 19 Aug 2017 12:56:07 +0100 Subject: [PATCH 1175/1227] tests: Add 'libvirt-service-type' test. * gnu/tests/virtualization.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/tests/virtualization.scm | 95 ++++++++++++++++++++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 gnu/tests/virtualization.scm diff --git a/gnu/local.mk b/gnu/local.mk index 1bec2227ec..253e0c8db6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -494,6 +494,7 @@ GNU_SYSTEM_MODULES = \ %D%/tests/messaging.scm \ %D%/tests/networking.scm \ %D%/tests/ssh.scm \ + %D%/tests/virtualization.scm \ %D%/tests/web.scm # Modules that do not need to be compiled. diff --git a/gnu/tests/virtualization.scm b/gnu/tests/virtualization.scm new file mode 100644 index 0000000000..c2939355b2 --- /dev/null +++ b/gnu/tests/virtualization.scm @@ -0,0 +1,95 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Christopher Baines +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests virtualization) + #:use-module (gnu tests) + #:use-module (gnu system) + #:use-module (gnu system file-systems) + #:use-module (gnu system vm) + #:use-module (gnu services) + #:use-module (gnu services dbus) + #:use-module (gnu services networking) + #:use-module (gnu services virtualization) + #:use-module (gnu packages virtualization) + #:use-module (guix gexp) + #:use-module (guix store) + #:export (%test-libvirt)) + +(define %libvirt-os + (simple-operating-system + (dhcp-client-service) + (dbus-service) + (polkit-service) + (service libvirt-service-type))) + +(define (run-libvirt-test) + "Run tests in %LIBVIRT-OS." + (define os + (marionette-operating-system + %libvirt-os + #:imported-modules '((gnu services herd) + (guix combinators)))) + + (define vm + (virtual-machine + (operating-system os) + (port-forwardings '()))) + + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (srfi srfi-11) (srfi srfi-64) + (gnu build marionette)) + + (define marionette + (make-marionette (list #$vm))) + + (mkdir #$output) + (chdir #$output) + + (test-begin "libvirt") + + (test-assert "service running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (match (start-service 'libvirtd) + (#f #f) + (('service response-parts ...) + (match (assq-ref response-parts 'running) + ((pid) (number? pid)))))) + marionette)) + + (test-eq "fetch version" + 0 + (marionette-eval + `(begin + (system* ,(string-append #$libvirt "/bin/virsh") + "-c" "qemu:///system" "version")) + marionette)) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "libvirt-test" test)) + +(define %test-libvirt + (system-test + (name "libvirt") + (description "Connect to the running LIBVIRT service.") + (value (run-libvirt-test)))) From 35e657017c79a57b76f445c2645893ebac50d943 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Wed, 23 Aug 2017 10:03:38 +0200 Subject: [PATCH 1176/1227] gnu: id3lib: Remove bundled zlib. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mp3.scm (id3lib)[source]: Remove bundled zlib. [inputs]: Add zlib. Signed-off-by: 宋文武 --- gnu/packages/mp3.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index 73e767faec..9330179f96 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2014, 2015, 2017 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2017 Thomas Danckaert ;;; ;;; This file is part of GNU Guix. ;;; @@ -114,8 +115,12 @@ versions of ID3v2.") (sha256 (base32 "0yfhqwk0w8q2hyv1jib1008jvzmwlpsxvc8qjllhna6p1hycqj97")) + (modules '((guix build utils))) + ;; Don't use bundled zlib + (snippet '(delete-file-recursively "zlib")) (patches (search-patches "id3lib-CVE-2007-4460.patch")))) (build-system gnu-build-system) + (inputs `(("zlib" ,zlib))) (arguments `(#:phases (alist-cons-before From 56cdca95372f8c64472126f6d56e246b33ecc8c8 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 23 Aug 2017 20:11:20 +0800 Subject: [PATCH 1177/1227] gnu: retroarch: Update to 1.6.7. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm (retroarch): Update to 1.6.7. Signed-off-by: 宋文武 --- gnu/packages/games.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 7932e841c4..834d402949 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1343,15 +1343,15 @@ either by Infocom or created using the Inform compiler.") (define-public retroarch (package (name "retroarch") - (version "1.6.3") + (version "1.6.7") (source (origin (method url-fetch) - (uri (string-append "https://github.com/libretro/RetroArch/archive/" + (uri (string-append "https://github.com/libretro/RetroArch/archive/v" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "0a0w2sjizjs20376h7j1gfi0qccr8mhkl1cm6hi0c17hy1493l6d")))) + (base32 "13vp5skf95a4fla3dwdk2v48dgnmrvimvp9fgpr1vppb7wfjhbr1")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests From 8a7f958ed97bbd1dc125ed51f304e41e14fffac7 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 23 Aug 2017 20:23:14 +0800 Subject: [PATCH 1178/1227] gnu: higan: Update to 104. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/games.scm (higan): Update to 104. Signed-off-by: 宋文武 --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 834d402949..9e7b579907 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2870,7 +2870,7 @@ Red Eclipse provides fast paced and accessible gameplay.") (define-public higan (package (name "higan") - (version "103") + (version "104") (source (origin (method url-fetch) @@ -2879,7 +2879,7 @@ Red Eclipse provides fast paced and accessible gameplay.") version)) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "013r0lcm0qw8zwavz977mqk2clg80gngkjijr3n0q8snpc1727r7")) + (base32 "18by01ir2mvdi9hq571in1hk18gw2bd0ynq4avfs1qj0qra35fqb")) (patches (search-patches "higan-remove-march-native-flag.patch")))) (build-system gnu-build-system) (native-inputs From cc527b504817900db9598d4d68141062c0637e09 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 23 Aug 2017 20:32:44 +0800 Subject: [PATCH 1179/1227] gnu: xpra: Update to 2.1.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/xorg.scm (xpra): Update to 2.1.1. Signed-off-by: 宋文武 --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index b6652b4e43..8f41bb4160 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -5853,7 +5853,7 @@ basic eye-candy effects.") (define-public xpra (package (name "xpra") - (version "2.0.3") + (version "2.1.1") (source (origin (method url-fetch) @@ -5861,7 +5861,7 @@ basic eye-candy effects.") version ".tar.xz")) (sha256 (base32 - "1f2mkbgjslfivh5xq5xbab1cn6jjyc1d104f692f3s0dnhq7dafa")))) + "0fgdddhafxnpjlw5nhfyfyimxp43hdn4yhp1vbsjrz3ypfsfhxq7")))) (build-system python-build-system) (inputs `(("ffmpeg", ffmpeg) ("flac", flac) From d7eea7d7ae8ba2e97eadb487f1a532fa19b1f294 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 23 Aug 2017 17:31:00 +0200 Subject: [PATCH 1180/1227] gnu: python-scikit-learn: Update to 0.19.0. * gnu/packages/python.scm (python-scikit-learn): Update to 0.19.0. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 1b4d90b561..d328178638 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3473,7 +3473,7 @@ and is very extensible.") (define-public python-scikit-learn (package (name "python-scikit-learn") - (version "0.18.1") + (version "0.19.0") (source (origin (method url-fetch) @@ -3483,7 +3483,7 @@ and is very extensible.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1hwswckdmd27f7k1jvwdc0m4mqrgxl2s245yq1scq34v124bjqgq")))) + "0g7q4ri75mj93wpa9bp83a3jmrf3dm5va9h7k4zkbcxr6bgqka15")))) (build-system python-build-system) (arguments `(#:phases From f00e328fd37eda2ed0f706ca03a021e72a6b2350 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 23 Aug 2017 21:07:07 +0300 Subject: [PATCH 1181/1227] gnu: openjpeg: Fix CVE-2017-12982. * gnu/packages/image.scm (openjepg)[source]: Add patch. * gnu/packages/patches/openjpeg-CVE-2017-12982.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/image.scm | 3 +- .../patches/openjpeg-CVE-2017-12982.patch | 28 +++++++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/openjpeg-CVE-2017-12982.patch diff --git a/gnu/local.mk b/gnu/local.mk index 253e0c8db6..f72bb52011 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -901,6 +901,7 @@ dist_patch_DATA = \ %D%/packages/patches/ola-readdir-r.patch \ %D%/packages/patches/openscenegraph-ffmpeg3.patch \ %D%/packages/patches/openexr-missing-samples.patch \ + %D%/packages/patches/openjpeg-CVE-2017-12982.patch \ %D%/packages/patches/openldap-CVE-2017-9287.patch \ %D%/packages/patches/openocd-nrf52.patch \ %D%/packages/patches/openssl-runpath.patch \ diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 3f8b520aec..b629d3b206 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -549,7 +549,8 @@ work.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0yvfghxwfm3dcqr9krkw63pcd76hzkknc3fh7bh11s8qlvjvrpbg")))) + "0yvfghxwfm3dcqr9krkw63pcd76hzkknc3fh7bh11s8qlvjvrpbg")) + (patches (search-patches "openjpeg-CVE-2017-12982.patch")))) (build-system cmake-build-system) (arguments ;; Trying to run `$ make check' results in a no rule fault. diff --git a/gnu/packages/patches/openjpeg-CVE-2017-12982.patch b/gnu/packages/patches/openjpeg-CVE-2017-12982.patch new file mode 100644 index 0000000000..3929a73570 --- /dev/null +++ b/gnu/packages/patches/openjpeg-CVE-2017-12982.patch @@ -0,0 +1,28 @@ +http://openwall.com/lists/oss-security/2017/08/21/1 +https://github.com/uclouvain/openjpeg/commit/baf0c1ad4572daa89caa3b12985bdd93530f0dd7.patch + +From baf0c1ad4572daa89caa3b12985bdd93530f0dd7 Mon Sep 17 00:00:00 2001 +From: Even Rouault +Date: Mon, 14 Aug 2017 17:26:58 +0200 +Subject: [PATCH] bmp_read_info_header(): reject bmp files with biBitCount == 0 + (#983) + +--- + src/bin/jp2/convertbmp.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/bin/jp2/convertbmp.c b/src/bin/jp2/convertbmp.c +index b49e7a080..2715fdf24 100644 +--- a/src/bin/jp2/convertbmp.c ++++ b/src/bin/jp2/convertbmp.c +@@ -392,6 +392,10 @@ static OPJ_BOOL bmp_read_info_header(FILE* IN, OPJ_BITMAPINFOHEADER* header) + + header->biBitCount = (OPJ_UINT16)getc(IN); + header->biBitCount |= (OPJ_UINT16)((OPJ_UINT32)getc(IN) << 8); ++ if (header->biBitCount == 0) { ++ fprintf(stderr, "Error, invalid biBitCount %d\n", 0); ++ return OPJ_FALSE; ++ } + + if (header->biSize >= 40U) { + header->biCompression = (OPJ_UINT32)getc(IN); From f81039058cb2c7b0b4986109fca584a87112a9b9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 23 Aug 2017 21:56:34 +0300 Subject: [PATCH 1182/1227] gnu: qemu: Fix CVE-2017-12809. * gnu/packages/virtualization.scm (qemu)[source]: Add patch. * gnu/packages/patches/qemu-CVE-2017-12809.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + .../patches/qemu-CVE-2017-12809.patch | 38 +++++++++++++++++++ gnu/packages/virtualization.scm | 3 +- 3 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/qemu-CVE-2017-12809.patch diff --git a/gnu/local.mk b/gnu/local.mk index f72bb52011..71f1cb2441 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1003,6 +1003,7 @@ dist_patch_DATA = \ %D%/packages/patches/qemu-CVE-2017-10911.patch \ %D%/packages/patches/qemu-CVE-2017-11334.patch \ %D%/packages/patches/qemu-CVE-2017-11434.patch \ + %D%/packages/patches/qemu-CVE-2017-12809.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/quagga-reproducible-build.patch \ diff --git a/gnu/packages/patches/qemu-CVE-2017-12809.patch b/gnu/packages/patches/qemu-CVE-2017-12809.patch new file mode 100644 index 0000000000..e40a14b4e0 --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2017-12809.patch @@ -0,0 +1,38 @@ +http://openwall.com/lists/oss-security/2017/08/21/2 +https://lists.gnu.org/archive/html/qemu-devel/2017-08/msg01850.html + +The block backend changed in a way that flushing empty CDROM drives now +crashes. Amend IDE to avoid doing so until the root problem can be +addressed for 2.11. + +Original patch by John Snow . + +Reported-by: Kieron Shorrock +Signed-off-by: Stefan Hajnoczi +--- + hw/ide/core.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/hw/ide/core.c b/hw/ide/core.c +index 0b48b64d3a..bea39536b0 100644 +--- a/hw/ide/core.c ++++ b/hw/ide/core.c +@@ -1063,7 +1063,15 @@ static void ide_flush_cache(IDEState *s) + s->status |= BUSY_STAT; + ide_set_retry(s); + block_acct_start(blk_get_stats(s->blk), &s->acct, 0, BLOCK_ACCT_FLUSH); +- s->pio_aiocb = blk_aio_flush(s->blk, ide_flush_cb, s); ++ ++ if (blk_bs(s->blk)) { ++ s->pio_aiocb = blk_aio_flush(s->blk, ide_flush_cb, s); ++ } else { ++ /* XXX blk_aio_flush() crashes when blk_bs(blk) is NULL, remove this ++ * temporary workaround when blk_aio_*() functions handle NULL blk_bs. ++ */ ++ ide_flush_cb(s, 0); ++ } + } + + static void ide_cfata_metadata_inquiry(IDEState *s) +-- +2.13.3 diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index d76a6dfd85..d06c55bd57 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -87,7 +87,8 @@ "qemu-CVE-2017-10806.patch" "qemu-CVE-2017-10911.patch" "qemu-CVE-2017-11334.patch" - "qemu-CVE-2017-11434.patch")) + "qemu-CVE-2017-11434.patch" + "qemu-CVE-2017-12809.patch")) (sha256 (base32 "08mhfs0ndbkyqgw7fjaa9vjxf4dinrly656f6hjzvmaz7hzc677h")))) From ba015ce9c04e2cd8e686add647109b514c3fa244 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Wed, 23 Aug 2017 21:26:05 +0200 Subject: [PATCH 1183/1227] gnu: scripts: Cleanup regarding "gnu system" bootloader devices. * guix/scripts/system.scm (install-bootloader, install): Remove unused "device" argument. (reinstall-bootloader, perform-action): Adapt callers. --- guix/scripts/system.scm | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 5a2811e75b..44d2c8f20c 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -150,7 +150,7 @@ TARGET, and register them." (define* (install-bootloader installer-drv #:key bootcfg bootcfg-file - device target) + target) "Call INSTALLER-DRV with error handling, in %STORE-MONAD." (with-monad %store-monad (let* ((gc-root (string-append target %gc-roots-directory @@ -169,7 +169,7 @@ TARGET, and register them." (when install (save-load-path-excursion (primitive-load install))))) (delete-file temp-gc-root) - (leave (G_ "failed to install bootloader on device ~a '~a'~%") install device)) + (leave (G_ "failed to install bootloader ~a~%") install)) ;; Register bootloader config file as a GC root so that its dependencies ;; (background image, font, etc.) are not reclaimed. @@ -179,13 +179,12 @@ TARGET, and register them." (define* (install os-drv target #:key (log-port (current-output-port)) bootloader-installer install-bootloader? - bootcfg bootcfg-file - device) + bootcfg bootcfg-file) "Copy the closure of BOOTCFG, which includes the output of OS-DRV, to directory TARGET. TARGET must be an absolute directory name since that's what 'guix-register' expects. -When INSTALL-BOOTLOADER? is true, install bootloader on DEVICE, using BOOTCFG." +When INSTALL-BOOTLOADER? is true, install bootloader using BOOTCFG." (define (maybe-copy to-copy) (with-monad %store-monad (if (string=? target "/") @@ -227,7 +226,6 @@ the ownership of '~a' may be incorrect!~%") (install-bootloader bootloader-installer #:bootcfg bootcfg #:bootcfg-file bootcfg-file - #:device device #:target target))))) @@ -457,12 +455,11 @@ STORE is an open connection to the store." (mbegin %store-monad (show-what-to-build* drvs) (built-derivations drvs) - ;; Only install bootloader configuration file. Thus, no installer - ;; nor device is provided here. + ;; Only install bootloader configuration file. Thus, no installer is + ;; provided here. (install-bootloader #f #:bootcfg bootcfg #:bootcfg-file bootcfg-file - #:device #f #:target target)))))) @@ -697,7 +694,6 @@ output when building a system derivation, such as a disk image." (install-bootloader bootloader-installer #:bootcfg bootcfg #:bootcfg-file bootcfg-file - #:device device #:target "/")))) ((init) (newline) @@ -707,8 +703,7 @@ output when building a system derivation, such as a disk image." #:install-bootloader? install-bootloader? #:bootcfg bootcfg #:bootcfg-file bootcfg-file - #:bootloader-installer bootloader-installer - #:device device)) + #:bootloader-installer bootloader-installer)) (else ;; All we had to do was to build SYS and maybe register an ;; indirect GC root. From 045ebb3e58d74c75f39ce47380045d3cd00359c3 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Wed, 23 Aug 2017 21:48:58 +0200 Subject: [PATCH 1184/1227] gnu: bootloader: Deprecate "device" field in favor of "target". * gnu/bootloader.scm (): Deprecate "device" field in favor of "target" field. This is mostly a renaming but also a generalization to support UEFI targets being paths to a mounted partition instead of a device name. * gnu/system/examples/bare-bones.tmpl: * gnu/system/examples/desktop.tmpl: * gnu/system/examples/lightweight-desktop.tmpl: * gnu/system/examples/vm-image.tmpl: * gnu/system/install.scm: * gnu/tests.scm: * gnu/tests/install.scm: * gnu/tests/nfs.scm: * tests/system.scm: Adapt all invocations of bootloader-configuration. * guix/scripts/system.scm (perform-action): Rename device argument to bootloader-target. (process-action): Adapt caller. * doc/guix.texi (Proceeding with the Installation): * doc/guix.texi (Bootloader Configuration): Update documentation. --- doc/guix.texi | 26 +++++++++++++------- gnu/bootloader.scm | 13 +++++++++- gnu/system/examples/bare-bones.tmpl | 2 +- gnu/system/examples/desktop.tmpl | 2 +- gnu/system/examples/lightweight-desktop.tmpl | 2 +- gnu/system/examples/vm-image.tmpl | 2 +- gnu/system/install.scm | 3 +-- gnu/tests.scm | 2 +- gnu/tests/install.scm | 14 +++++------ gnu/tests/nfs.scm | 2 +- guix/scripts/system.scm | 23 ++++++++--------- tests/system.scm | 4 +-- 12 files changed, 57 insertions(+), 38 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 77435d897b..954ff90ff7 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -7964,9 +7964,13 @@ in particular: @itemize @item -Make sure the @code{grub-configuration} form refers to the device you -want to install GRUB on. You also need to specify the @code{grub-efi} -package if you wish to use native UEFI boot. +Make sure the @code{grub-configuration} form refers to the target you +want to install GRUB on. It should mention @code{grub-bootloader} if +you are installing GRUB in the legacy way, or @code{grub-efi-bootloader} +for newer UEFI systems. For legacy systems, the @code{target} field +names a device, like @code{/dev/sda}; for UEFI systems it names a path +to a mounted EFI partition, like @code{/boot/efi}, and do make sure the +path is actually mounted. @item Be sure that your partition labels match the value of their respective @@ -17192,11 +17196,15 @@ The bootloader to use, as a @code{bootloader} object. For now Available bootloaders are described in @code{(gnu bootloader @dots{})} modules. -@item @code{device} -This is a string denoting the boot device. It must be a device name -understood by the bootloader @command{installer} command, such as -@code{/dev/sda} or @code{(hd0)} (for GRUB, @pxref{Invoking grub-install,,, grub, -GNU GRUB Manual}). +@item @code{target} +This is a string denoting the target onto which to install the +bootloader. The exact interpretation depends on the bootloader in +question; for @code{grub-bootloader}, for example, it should be a device +name understood by the bootloader @command{installer} command, such as +@code{/dev/sda} or @code{(hd0)} (for GRUB, @pxref{Invoking +grub-install,,, grub, GNU GRUB Manual}). For +@code{grub-efi-bootloader}, it should be the path to a mounted EFI file +system. @item @code{menu-entries} (default: @code{()}) A possibly empty list of @code{menu-entry} objects (see below), denoting @@ -17448,7 +17456,7 @@ files, packages, and so on. It also creates other essential files needed for the system to operate correctly---e.g., the @file{/etc}, @file{/var}, and @file{/run} directories, and the @file{/bin/sh} file. -This command also installs bootloader on the device specified in +This command also installs bootloader on the target specified in @file{my-os-config}, unless the @option{--no-bootloader} option was passed. diff --git a/gnu/bootloader.scm b/gnu/bootloader.scm index e080b04568..122e350874 100644 --- a/gnu/bootloader.scm +++ b/gnu/bootloader.scm @@ -43,7 +43,7 @@ bootloader-configuration bootloader-configuration? bootloader-configuration-bootloader - bootloader-configuration-device + bootloader-configuration-target bootloader-configuration-menu-entries bootloader-configuration-default-entry bootloader-configuration-timeout @@ -107,6 +107,8 @@ (bootloader bootloader-configuration-bootloader) ; (device bootloader-configuration-device ; string (default #f)) + (target %bootloader-configuration-target ; string + (default #f)) (menu-entries bootloader-configuration-menu-entries ; list of (default '())) (default-entry bootloader-configuration-default-entry ; integer @@ -126,6 +128,15 @@ (additional-configuration bootloader-configuration-additional-configuration ; record (default #f))) +(define (bootloader-configuration-target config) + (or (%bootloader-configuration-target config) + (let ((device (bootloader-configuration-device config))) + (when device + (issue-deprecation-warning + "The 'device' field of bootloader configurations is deprecated." + "Use 'target' instead.")) + device))) + ;;; ;;; Bootloaders. diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index a10ee6e7fe..459d241885 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -14,7 +14,7 @@ ;; the label of the target root file system. (bootloader (bootloader-configuration (bootloader grub-bootloader) - (device "/dev/sdX"))) + (target "/dev/sdX"))) (file-systems (cons (file-system (device "my-root") (title 'label) diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index 3cfbd9add6..2131d1f18f 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -15,7 +15,7 @@ ;; is the label of the target root file system. (bootloader (bootloader-configuration (bootloader grub-bootloader) - (device "/dev/sdX"))) + (target "/dev/sdX"))) ;; Specify a mapped device for the encrypted root partition. ;; The UUID is that returned by 'cryptsetup luksUUID'. diff --git a/gnu/system/examples/lightweight-desktop.tmpl b/gnu/system/examples/lightweight-desktop.tmpl index 127ceb4dc5..fb7cfebf6d 100644 --- a/gnu/system/examples/lightweight-desktop.tmpl +++ b/gnu/system/examples/lightweight-desktop.tmpl @@ -15,7 +15,7 @@ ;; Partition mounted on /boot/efi. (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) - (device "/boot/efi"))) + (target "/boot/efi"))) ;; Assume the target root file system is labelled "my-root". (file-systems (cons* (file-system diff --git a/gnu/system/examples/vm-image.tmpl b/gnu/system/examples/vm-image.tmpl index 57ac71c535..056b439c5f 100644 --- a/gnu/system/examples/vm-image.tmpl +++ b/gnu/system/examples/vm-image.tmpl @@ -26,7 +26,7 @@ partprobe, and then 2) resizing the filesystem with resize2fs.\n")) ;; Assuming /dev/sdX is the target hard disk, and "my-root" is ;; the label of the target root file system. - (bootloader (grub-configuration (device "/dev/sda") + (bootloader (grub-configuration (target "/dev/sda") (terminal-outputs '(console)))) (file-systems (cons (file-system (device "my-root") diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 6837385daf..7f6ffe9582 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -299,8 +299,7 @@ Use Alt-F2 for documentation. (host-name "gnu") (timezone "Europe/Paris") (locale "en_US.utf8") - (bootloader (grub-configuration - (device "/dev/sda"))) + (bootloader (grub-configuration (target "/dev/sda"))) (file-systems ;; Note: the disk image build code overrides this root file system with ;; the appropriate one. diff --git a/gnu/tests.scm b/gnu/tests.scm index 2886a982f4..97b9cc5107 100644 --- a/gnu/tests.scm +++ b/gnu/tests.scm @@ -206,7 +206,7 @@ the system under test." (timezone "Europe/Berlin") (locale "en_US.UTF-8") - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (grub-configuration (target "/dev/sdX"))) (file-systems (cons (file-system (device "my-root") (title 'label) diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index 22e4181ab1..866bf885ce 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -59,7 +59,7 @@ (timezone "Europe/Paris") (locale "en_US.UTF-8") - (bootloader (grub-configuration (device "/dev/vdb"))) + (bootloader (grub-configuration (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons (file-system (device "my-root") @@ -98,7 +98,7 @@ (bootloader (bootloader-configuration (bootloader extlinux-bootloader-gpt) - (device "/dev/vdb"))) + (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons (file-system (device "my-root") @@ -326,7 +326,7 @@ per %test-installed-os, this test is expensive in terms of CPU and storage.") (timezone "Europe/Paris") (locale "en_US.utf8") - (bootloader (grub-configuration (device "/dev/vdb"))) + (bootloader (grub-configuration (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons* (file-system (device "my-root") @@ -384,7 +384,7 @@ partition. In particular, home directories must be correctly created (see (timezone "Europe/Paris") (locale "en_US.UTF-8") - (bootloader (grub-configuration (device "/dev/vdb"))) + (bootloader (grub-configuration (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons* (file-system (device "root-fs") @@ -460,7 +460,7 @@ where /gnu lives on a separate partition.") (timezone "Europe/Paris") (locale "en_US.utf8") - (bootloader (grub-configuration (device "/dev/vdb"))) + (bootloader (grub-configuration (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (initrd (lambda (file-systems . rest) ;; Add a kernel module for RAID-0 (aka. "stripe"). @@ -543,7 +543,7 @@ by 'mdadm'.") (timezone "Europe/Paris") (locale "en_US.UTF-8") - (bootloader (grub-configuration (device "/dev/vdb"))) + (bootloader (grub-configuration (target "/dev/vdb"))) ;; Note: Do not pass "console=ttyS0" so we can use our passphrase prompt ;; detection logic in 'enter-luks-passphrase'. @@ -670,7 +670,7 @@ build (current-guix) and then store a couple of full system images.") (timezone "Europe/Paris") (locale "en_US.UTF-8") - (bootloader (grub-configuration (device "/dev/vdb"))) + (bootloader (grub-configuration (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons (file-system (device "my-root") diff --git a/gnu/tests/nfs.scm b/gnu/tests/nfs.scm index 2e666b2c08..889f578d01 100644 --- a/gnu/tests/nfs.scm +++ b/gnu/tests/nfs.scm @@ -41,7 +41,7 @@ (timezone "Europe/Berlin") (locale "en_US.UTF-8") - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (grub-configuration (target "/dev/sdX"))) (file-systems %base-file-systems) (users %base-user-accounts) (packages (cons* diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 44d2c8f20c..8793c40925 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -612,17 +612,16 @@ and TARGET arguments." (define* (perform-action action os #:key install-bootloader? dry-run? derivations-only? - use-substitutes? device target + use-substitutes? bootloader-target target image-size file-system-type full-boot? (mappings '()) (gc-root #f)) "Perform ACTION for OS. INSTALL-BOOTLOADER? specifies whether to install -bootloader; DEVICE is the target devices for bootloader; TARGET is the target -root directory; IMAGE-SIZE is the size of the image to be built, for the -'vm-image' and 'disk-image' actions. -The root filesystem is created as a FILE-SYSTEM-TYPE filesystem. -FULL-BOOT? is used for the 'vm' action; -it determines whether to boot directly to the kernel or to the bootloader. +bootloader; BOOTLOADER-TAGET is the target for the bootloader; TARGET is the +target root directory; IMAGE-SIZE is the size of the image to be built, for +the 'vm-image' and 'disk-image' actions. The root filesystem is created as a +FILE-SYSTEM-TYPE filesystem. FULL-BOOT? is used for the 'vm' action; it +determines whether to boot directly to the kernel or to the bootloader. When DERIVATIONS-ONLY? is true, print the derivation file name(s) without building anything. @@ -662,7 +661,7 @@ output when building a system derivation, such as a disk image." (target (or target "/"))) (bootloader-installer-derivation installer bootloader-package - device target))) + bootloader-target target))) ;; For 'init' and 'reconfigure', always build BOOTCFG, even if ;; --no-bootloader is passed, because we then use it as a GC root. @@ -895,8 +894,9 @@ resulting from command-line parsing." (target (match args ((first second) second) (_ #f))) - (device (and bootloader? - (bootloader-configuration-device + (bootloader-target + (and bootloader? + (bootloader-configuration-target (operating-system-bootloader os))))) (with-store store @@ -929,7 +929,8 @@ resulting from command-line parsing." (_ #f)) opts) #:install-bootloader? bootloader? - #:target target #:device device + #:target target + #:bootloader-target bootloader-target #:gc-root (assoc-ref opts 'gc-root))))) #:system system)))) diff --git a/tests/system.scm b/tests/system.scm index ca34409be9..a661544a5f 100644 --- a/tests/system.scm +++ b/tests/system.scm @@ -36,7 +36,7 @@ (host-name "komputilo") (timezone "Europe/Berlin") (locale "en_US.utf8") - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (grub-configuration (target "/dev/sdX"))) (file-systems (cons %root-fs %base-file-systems)) (users %base-user-accounts))) @@ -51,7 +51,7 @@ (host-name "komputilo") (timezone "Europe/Berlin") (locale "en_US.utf8") - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (grub-configuration (target "/dev/sdX"))) (mapped-devices (list %luks-device)) (file-systems (cons (file-system (inherit %root-fs) From e4925e00ca420737556e2039b4fa1c40121ee567 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Aug 2017 00:41:44 +0200 Subject: [PATCH 1185/1227] packages: Use Guile 2.0 for grafting. Works around . Reported by Marius Bakke . * guix/packages.scm (guile-2.0): New procedure. (package-derivation, package-cross-derivation): Use it when computing the #:guile argument to 'graft-derivation'. --- guix/packages.scm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/guix/packages.scm b/guix/packages.scm index 3528db442f..f619d9b370 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -414,6 +414,13 @@ derivations." (let ((distro (resolve-interface '(gnu packages commencement)))) (module-ref distro 'guile-final))) +(define (guile-2.0) + "Return Guile 2.0." + ;; FIXME: This is used as a workaround for when + ;; grafting packages. + (let ((distro (resolve-interface '(gnu packages guile)))) + (module-ref distro 'guile-2.0))) + (define* (default-guile-derivation #:optional (system (%current-system))) "Return the derivation for SYSTEM of the default Guile package used to run the build code of derivation." @@ -1145,7 +1152,7 @@ This is an internal procedure." (() drv) (grafts - (let ((guile (package-derivation store (default-guile) + (let ((guile (package-derivation store (guile-2.0) system #:graft? #f))) ;; TODO: As an optimization, we can simply graft the tip ;; of the derivation graph since 'graft-derivation' @@ -1171,7 +1178,7 @@ system identifying string)." (graft-derivation store drv grafts #:system system #:guile - (package-derivation store (default-guile) + (package-derivation store (guile-2.0) system #:graft? #f)))) drv)))) From c47048c328843bcc26772bd6c96d03962972b173 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Aug 2017 10:34:34 +0300 Subject: [PATCH 1186/1227] gnu: datamash: Update to 1.2. * gnu/packages/datamash.scm (datamash): Update to 1.2. --- gnu/packages/datamash.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/datamash.scm b/gnu/packages/datamash.scm index 78ed868fa9..60c9ba795b 100644 --- a/gnu/packages/datamash.scm +++ b/gnu/packages/datamash.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Eric Bavier -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,7 +28,7 @@ (define-public datamash (package (name "datamash") - (version "1.1.1") + (version "1.2") (source (origin (method url-fetch) @@ -36,7 +36,7 @@ version ".tar.gz")) (sha256 (base32 - "06w0pc828qsabmrlh7bc2zwc823xzxy89paaf37f6bipsyrij222")))) + "15jrv3ly0vgvwwi2qjmhi39n7wrklwifdk961wwfaxyc5jr6zm78")))) (native-inputs `(("which" ,which) ;for tests ("perl" ,perl))) ;for help2man From f6c5821530d243ac64004ea4d8f611a4e39d3570 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 24 Aug 2017 14:20:45 +0530 Subject: [PATCH 1187/1227] gnu: cliapp: Update to 1.20170823. * gnu/packages/python.scm (python2-cliapp): Update to 1.20170823. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index d328178638..1700c9c0a0 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -13930,7 +13930,7 @@ parse many formal languages.") (define-public python2-cliapp (package (name "python2-cliapp") - (version "1.20160724") + (version "1.20170823") (source (origin (method url-fetch) @@ -13939,7 +13939,7 @@ parse many formal languages.") version ".tar.gz")) (sha256 (base32 - "025cyi75vxyghbm4hav8dz4fzwksshddavy9g9fwr440awcvw74f")))) + "1i9gik0xrj6jmi95s5w988jl1y265baz5xm5pbqdyvsh8h9ln6yq")))) (build-system python-build-system) (arguments `(#:python ,python-2)) From 2d6da7942a26af79f5051aeffc3a348c9ef0723f Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 24 Aug 2017 14:28:41 +0530 Subject: [PATCH 1188/1227] gnu: python2-ttystatus: Update to 0.35. * gnu/packages/python.scm (python2-ttystatus): Update to 0.35. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 1700c9c0a0..454ce1c258 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -13956,7 +13956,7 @@ iterating over input files.") (define-public python2-ttystatus (package (name "python2-ttystatus") - (version "0.32") + (version "0.35") (source (origin (method url-fetch) @@ -13965,7 +13965,7 @@ iterating over input files.") version ".tar.gz")) (sha256 (base32 - "0b5g889jj23r2w1hi300cdldx6jvspanp0ybf5n1qvdvl150aamf")))) + "0vivqbw7ddhsq1zj3g9cvvv4f0phl0pis2smsnwcr2szz2fk3hl6")))) (build-system python-build-system) (arguments `(#:python ,python-2)) From e3c13d044f8c7fdeef5079e16591dc4302f5c31b Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Sun, 20 Aug 2017 19:30:46 +0200 Subject: [PATCH 1189/1227] gnu: libksysguard: Enable more tests (not all working yet). * gnu/packages/kde.scm (libksysguard)[arguments] <#:phases>'check-setup': Set QT_QPA_PLATFORM=offscreen. <#:phases>'check': Enable all tests except of the failing one. --- gnu/packages/kde.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index a65a61f96b..2e46a3c924 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -300,9 +300,14 @@ used in KDE development tools Kompare and KDevelop.") ;; KF5AuthConfig.cmake.in contains this already. (substitute* "processcore/CMakeLists.txt" (("KAUTH_HELPER_INSTALL_DIR") "KDE_INSTALL_LIBEXECDIR")))) + (add-before 'check 'check-setup + (lambda _ + ;; make Qt render "offscreen", required for tests + (setenv "QT_QPA_PLATFORM" "offscreen"))) (replace 'check - (lambda _ ;other tests require a display and therefore fail - (zero? (system* "ctest" "-R" "chronotest"))))))) + (lambda _ + ;; TODO: Fix this failing test-case + (zero? (system* "ctest" "-E" "processtest"))))))) (home-page "https://www.kde.org/info/plasma-5.10.4.php") (synopsis "Network enabled task and system monitoring") (description "KSysGuard can obtain information on system load and From 5fc9b6c1082b63b201aad128209d7bdaa11c8806 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 24 Aug 2017 15:32:52 +0300 Subject: [PATCH 1190/1227] gnu: lollypop: Use pseudo meson build system. * gnu/packages/gnome.scm (lollypop)[arguments]: Disable tests. Delete configure phase, replace build and install phase with custom phases. [native-inputs]: Add ninja. [propagated-inputs]: Move gst-plugins-base ... [inputs]: ... to here. Add meson. --- gnu/packages/gnome.scm | 40 +++++++++++++++++++++++++++++----------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f823dd398d..ab8e0871fb 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -59,6 +59,7 @@ #:use-module (gnu packages avahi) #:use-module (gnu packages base) #:use-module (gnu packages bison) + #:use-module (gnu packages build-tools) #:use-module (gnu packages calendar) #:use-module (gnu packages check) #:use-module (gnu packages cmake) @@ -99,6 +100,7 @@ #:use-module (gnu packages imagemagick) #:use-module (gnu packages music) #:use-module (gnu packages networking) + #:use-module (gnu packages ninja) #:use-module (gnu packages password-utils) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) @@ -6571,30 +6573,47 @@ views can be printed as PDF or PostScript files, or exported to HTML.") (sha256 (base32 "0y9nmwrplz4mlvc2badfbyjj97ksn6qqis3rgm8lvp5llsk1583w")))) + ;; TODO: Use meson-build-system (build-system glib-or-gtk-build-system) (arguments `(#:imported-modules ((guix build python-build-system) ,@%glib-or-gtk-build-system-modules) - #:phases (modify-phases %standard-phases - (add-after 'install 'wrap-program - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) - (wrap-program (string-append out "/bin/lollypop") - `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))) - #t)) - (add-after 'install 'wrap - (@@ (guix build python-build-system) wrap))))) + #:tests? #f ; no test suite + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; remove post-install script, we update the caches later + (substitute* "meson.build" + (("meson.add_install_script\\('meson_post_install.py'\\)") "")) + (zero? + (system* "meson" "builddir" (string-append "--prefix=" out)))))) + (replace 'install + (lambda _ (zero? (system* "ninja" "-C" "builddir" "install")))) + (add-after 'install 'wrap-program + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) + (wrap-program (string-append out "/bin/lollypop") + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))) + #t)) + (add-after 'install 'wrap + (@@ (guix build python-build-system) wrap))))) (native-inputs `(("intltool" ,intltool) ("itstool" ,itstool) + ("ninja" ,ninja) ("pkg-config" ,pkg-config))) (inputs `(("gobject-introspection" ,gobject-introspection) + ("gst-plugins-base" ,gst-plugins-base) ("gtk+" ,gtk+) ("libnotify" ,libnotify) ("libsecret" ,libsecret) ("libsoup" ,libsoup) + ("meson" ,meson) ("python" ,python) ("python-beautifulsoup4" ,python-beautifulsoup4) ("python-gst" ,python-gst) @@ -6606,7 +6625,6 @@ views can be printed as PDF or PostScript files, or exported to HTML.") (propagated-inputs `(;; gst-plugins-base is required to start Lollypop, ;; the others are required to play streaming. - ("gst-plugins-base" ,gst-plugins-base) ("gst-plugins-good" ,gst-plugins-good) ("gst-plugins-ugly" ,gst-plugins-ugly))) (home-page "https://gnumdk.github.io/lollypop-web") From 5cdb0cd3809277c9802e787432ca572e4f467a89 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 24 Aug 2017 16:38:30 +0200 Subject: [PATCH 1191/1227] gnu: dovecot: Update to 2.2.32. * gnu/packages/mail.scm (dovecot): Update to 2.2.32. --- gnu/packages/mail.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index cc76a93ed0..3b0f12b764 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1090,7 +1090,7 @@ facilities for checking incoming mail.") (define-public dovecot (package (name "dovecot") - (version "2.2.31") + (version "2.2.32") (source (origin (method url-fetch) @@ -1098,7 +1098,7 @@ facilities for checking incoming mail.") (version-major+minor version) "/" name "-" version ".tar.gz")) (sha256 (base32 - "18bnwgn6hshbmr79g21sngkrmydji6bzb948a3b2i0bl0w4y8jq3")))) + "0bmwyvi1crmrca2knvknsf517x53w7gxrclwyrvrhddgw98j22qn")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) From 17e56dac127013a3bacefcf9bcbe13d27ce08055 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Tue, 22 Aug 2017 19:25:11 +0200 Subject: [PATCH 1192/1227] gnu: libreoffice: Fix icons, enable liblangtag. * gnu/packages/libreoffice.scm (libreoffice) [inputs]: Add liblangtag. [arguments]: Correct icon names in .desktop files; copy desktop files & icons for libreoffice-math and libreoffice-startcenter; enable parallel build; enable liblangtag. --- gnu/packages/libreoffice.scm | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 16a8d257d0..cca222b1f8 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -837,6 +837,7 @@ and to return information on pronunciations, meanings and synonyms.") ("libetonyek" ,libetonyek) ("libexttextcat" ,libexttextcat) ("libfreehand" ,libfreehand) + ("liblangtag" ,liblangtag) ("libmspub" ,libmspub) ("libmwaw" ,libmwaw) ("libodfgen" ,libodfgen) @@ -919,15 +920,16 @@ and to return information on pronunciations, meanings and synonyms.") (substitute* (string-append out src) (("Exec=libreoffice[0-9]+\\.[0-9]+ ") (string-append "Exec=" out "/bin/libreoffice ")) - (("Icon=libreoffice[0-9]+\\.[0-9]+") - "Icon=libreoffice") + (("Icon=libreoffice.*") + (string-append "Icon=" app "\n")) (("LibreOffice [0-9]+\\.[0-9]+") "LibreOffice")) - (symlink-output src dst) - (install-file (string-append + (symlink-output src dst))) + (define (install-appdata app) + (install-file (string-append "sysui/desktop/appstream-appdata/" "libreoffice-" app ".appdata.xml") - (string-append out "/share/appdata")))) + (string-append out "/share/appdata"))) (symlink-output "/lib/libreoffice/program/soffice" "/bin/soffice") (symlink-output "/lib/libreoffice/program/soffice" @@ -940,16 +942,18 @@ and to return information on pronunciations, meanings and synonyms.") "workdir/CustomTarget/sysui/share/libreoffice/openoffice.org.xml" "/share/mime/packages/libreoffice.xml") (for-each install-desktop-file + '("base" "calc" "draw" "impress" "writer" + "math" "startcenter")) + (for-each install-appdata '("base" "calc" "draw" "impress" "writer")) - (mkdir-p (string-append out "/share/icons")) + (mkdir-p (string-append out "/share/icons/hicolor")) (copy-recursively "sysui/desktop/icons/hicolor" - (string-append out "/share/icons/"))) + (string-append out "/share/icons/hicolor"))) #t))) #:configure-flags (list "--enable-release-build" "--enable-verbose" - "--without-parallelism" ; otherwise the build fails "--disable-fetch-external" ; disable downloads "--with-system-libs" ; enable all --with-system-* flags (string-append "--with-boost-libdir=" @@ -969,8 +973,7 @@ and to return information on pronunciations, meanings and synonyms.") "--disable-firebird-sdbc" ; embedded firebird "--disable-gltf" "--without-doxygen" - "--disable-gtk3" - "--disable-liblangtag"))) + "--disable-gtk3"))) (home-page "https://www.libreoffice.org/") (synopsis "Office suite") (description "LibreOffice is a comprehensive office suite. It contains From 3f8efbb9a46c655d009f309ed75efa63d6fc08f4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 24 Aug 2017 20:34:52 +0200 Subject: [PATCH 1193/1227] gnu: guile-wm: Update source URL. * gnu/packages/guile-wm.scm (guile-wm)[source]: Use archived URL. --- gnu/packages/guile-wm.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm index a114fd441d..d3081f9acc 100644 --- a/gnu/packages/guile-wm.scm +++ b/gnu/packages/guile-wm.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014 Ludovic Courtès ;;; Copyright © 2016 Alex ter Weele +;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -68,7 +69,8 @@ dependencies.") (synopsis "X11 window manager toolkit in Scheme") (source (origin (method url-fetch) - (uri (string-append "http://www.markwitmer.com/dist/guile-wm-" + (uri (string-append "http://web.archive.org/web/20161005084324/" + "http://www.markwitmer.com/dist/guile-wm-" version ".tar.gz")) (sha256 (base32 From 8752fa6cbaa22b63ddd4b2cd739b541be2e754d8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 22 Aug 2017 23:52:00 +0200 Subject: [PATCH 1194/1227] gnu: slop: Update to 7.3.49. * gnu/packages/xdisorg.scm (slop): Update to 7.3.49. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index ffc2e790b5..363e44e412 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -451,7 +451,7 @@ of the screen selected by mouse.") (define-public slop (package (name "slop") - (version "7.3.48") + (version "7.3.49") (source (origin (method url-fetch) (uri (string-append @@ -460,7 +460,7 @@ of the screen selected by mouse.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "14igmf6a6vwx75gjnj10497n04klc35dvq87id8g9jn9rd3m6n25")))) + "0gxi174vi13ldjaf776s2jcdyy379lnwwml29nk1bkzj5d5gpghm")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target From a251838d6788476248bf84a994dcaf95cda8febf Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 22 Aug 2017 23:52:44 +0200 Subject: [PATCH 1195/1227] gnu: maim: Update to 5.4.68. * gnu/packages/xdisorg.scm (maim): Update to 5.4.68. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 363e44e412..ac9dcdb22c 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -484,7 +484,7 @@ selection's dimensions to stdout.") (define-public maim (package (name "maim") - (version "5.4.66") + (version "5.4.68") (source (origin (method url-fetch) (uri (string-append @@ -493,7 +493,7 @@ selection's dimensions to stdout.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "077aww1fab3ihzxdybxpdh0h3d7fbgpvsm9q92byfb2ig32viyfa")))) + "0f54s7csrxjd5r9anqqa92diwmzdplpws3llmbr6g3c0l6bp8815")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target From 84342e2fa95fb5ff972c5c216b0548787e25f142 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Reich=C3=B6r?= Date: Wed, 23 Aug 2017 22:19:57 +0200 Subject: [PATCH 1196/1227] gnu: Add honcho. * gnu/packages/python.scm (python-honcho, python2-honcho): New variables. Signed-off-by: Marius Bakke --- gnu/packages/python.scm | 47 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 454ce1c258..4bd777c09e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5226,6 +5226,53 @@ cluster without needing to write any wrapper code yourself.") (define-public python2-gridmap (package-with-python2 python-gridmap)) +(define-public python-honcho + (package + (name "python-honcho") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/nickstenning/honcho/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "0zizn61n5z5hq421hkypk9pw8s6fpxw30f4hsg7k4ivwzy3gjw9j")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest-3.0) + ("python-mock" ,python-mock) + ("python-tox" ,python-tox) + ("which" ,which))) ;for tests + (propagated-inputs + `(("python-jinja2" ,python-jinja2))) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda* (#:key outputs inputs #:allow-other-keys) + ;; fix honcho path in testsuite + (substitute* "tests/conftest.py" + (("'honcho'") (string-append "'" (assoc-ref outputs "out") + "/bin/honcho" "'"))) + ;; It's easier to run tests after install. + ;; Make installed package available for running the tests + (add-installed-pythonpath inputs outputs) + (zero? (system* "py.test" "-v"))))))) + (home-page "https://github.com/nickstenning/honcho") + (synopsis "Manage Procfile-based applications") + (description + "A Procfile is a file which describes how to run an application +consisting of serveral processes. honcho starts all listed processes. +The output of all running processes is collected by honcho and +displayed.") + (license license:expat))) + +(define-public python2-honcho + (package-with-python2 python-honcho)) + (define-public python-pexpect (package (name "python-pexpect") From 87f057c46ec77e7e01069f24589f4f665787b331 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Aug 2017 12:12:02 +0200 Subject: [PATCH 1197/1227] gnu: font-go: Remove reference to 'go-1.4'. This avoids circular references at the top level. * gnu/packages/fonts.scm (font-go)[license]: Remove reference to GO-1.4. --- gnu/packages/fonts.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index a83be8522c..051926cbd7 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -49,7 +49,6 @@ #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages fontutils) - #:use-module (gnu packages golang) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -987,7 +986,7 @@ programming. Iosevka is completely generated from its source code.") Holmes type foundry, released under the same license as the Go programming language. It includes a set of proportional, sans-serif fonts, and a set of monospace, slab-serif fonts.") - (license (package-license go-1.4))))) + (license license:bsd-3)))) (define-public font-google-material-design-icons (package From 649c438c2330d1828406235cefb1bec37bc62c86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Aug 2017 12:15:08 +0200 Subject: [PATCH 1198/1227] gnu: font-mathjax: Move to javascript.scm. This avoids cross-module top-level references. * gnu/packages/fonts.scm (font-mathjax): Move to... * gnu/packages/javascript.scm (font-mathjax): ... here. New variable. --- gnu/packages/fonts.scm | 39 ------------------------------------ gnu/packages/javascript.scm | 40 ++++++++++++++++++++++++++++++++++++- 2 files changed, 39 insertions(+), 40 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 051926cbd7..69ef743cba 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -1013,45 +1013,6 @@ have been optimized for beautiful display on all common platforms and display resolutions.") (license license:asl2.0))) -(define-public font-mathjax - (package - (name "font-mathjax") - (version "2.7.1") - (source - (origin - (method url-fetch) - (uri (string-append - "https://github.com/mathjax/MathJax/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0sbib5lk0jrvbq6s72ag6ss3wjlz5wnk07ddxij1kp96yg3c1d1b")))) - (build-system trivial-build-system) - (arguments - `(#:modules ((guix build utils)) - #:builder - (begin - (use-modules (guix build utils) - (ice-9 match)) - (set-path-environment-variable - "PATH" '("bin") (map (match-lambda - ((_ . input) - input)) - %build-inputs)) - (let ((install-directory (string-append %output "/share/fonts/mathjax"))) - (mkdir-p install-directory) - (zero? (system* "tar" "-C" install-directory "-xvf" - (assoc-ref %build-inputs "source") - "MathJax-2.7.1/fonts" "--strip" "2")))))) - (native-inputs - `(("gzip" ,gzip) - ("tar" ,tar))) - (home-page "https://www.mathjax.org/") - (synopsis "Fonts for MathJax") - (description "This package contains the fonts required for MathJax.") - (license license:asl2.0))) - (define-public font-open-dyslexic (package (name "font-open-dyslexic") diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 12f12bf8f1..85017453ff 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -22,7 +22,6 @@ #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages compression) - #:use-module (gnu packages fonts) #:use-module (gnu packages lisp) #:use-module (guix packages) #:use-module (guix download) @@ -30,6 +29,45 @@ #:use-module (guix build-system trivial) #:use-module (guix build-system minify)) +(define-public font-mathjax + (package + (name "font-mathjax") + (version "2.7.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/mathjax/MathJax/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0sbib5lk0jrvbq6s72ag6ss3wjlz5wnk07ddxij1kp96yg3c1d1b")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match)) + (set-path-environment-variable + "PATH" '("bin") (map (match-lambda + ((_ . input) + input)) + %build-inputs)) + (let ((install-directory (string-append %output "/share/fonts/mathjax"))) + (mkdir-p install-directory) + (zero? (system* "tar" "-C" install-directory "-xvf" + (assoc-ref %build-inputs "source") + "MathJax-2.7.1/fonts" "--strip" "2")))))) + (native-inputs + `(("gzip" ,gzip) + ("tar" ,tar))) + (home-page "https://www.mathjax.org/") + (synopsis "Fonts for MathJax") + (description "This package contains the fonts required for MathJax.") + (license license:asl2.0))) + (define-public js-mathjax (package (inherit font-mathjax) From 5e60bef9802e448924f889d34d95a249b008652c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Aug 2017 15:53:57 +0200 Subject: [PATCH 1199/1227] Revert "graph: Provide access to the package record in the emit functions." This reverts commit 5d7e8543659874682b618bba799ba7cd6ffce554, which broke 'tests/graph.scm' and broke node types not related to objects, such as '%reference-node-type'. --- guix/graph.scm | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/guix/graph.scm b/guix/graph.scm index 5b650f5448..d7fd5f3e4b 100644 --- a/guix/graph.scm +++ b/guix/graph.scm @@ -1,7 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016 Ludovic Courtès ;;; Copyright © 2016 Ricardo Wurmus -;;; Copyright © 2017 Roel Janssen ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,7 +22,6 @@ #:use-module (guix monads) #:use-module (guix records) #:use-module (guix sets) - #:use-module (guix packages) #:use-module (rnrs io ports) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) @@ -172,9 +170,9 @@ typically returned by 'node-edges' or 'node-back-edges'." name)) (define (emit-epilogue port) (display "\n}\n" port)) -(define (emit-node id node port) +(define (emit-node id label port) (format port " \"~a\" [label = \"~a\", shape = box, fontname = Helvetica];~%" - id (package-full-name node))) + id label)) (define (emit-edge id1 id2 port) (format port " \"~a\" -> \"~a\" [color = ~a];~%" id1 id2 (pop-color id1))) @@ -215,11 +213,11 @@ var nodes = {}, (format port "" (search-path %load-path "graph.js"))) -(define (emit-d3js-node id node port) +(define (emit-d3js-node id label port) (format port "\ nodes[\"~a\"] = {\"id\": \"~a\", \"label\": \"~a\", \"index\": nodeArray.length}; nodeArray.push(nodes[\"~a\"]);~%" - id id (package-full-name node) id)) + id id label id)) (define (emit-d3js-edge id1 id2 port) (format port "links.push({\"source\": \"~a\", \"target\": \"~a\"});~%" @@ -243,9 +241,9 @@ nodeArray.push(nodes[\"~a\"]);~%" (define (emit-cypher-epilogue port) (format port "")) -(define (emit-cypher-node id node port) +(define (emit-cypher-node id label port) (format port "MERGE (p:Package { id: ~s }) SET p.name = ~s;~%" - id (package-name node))) + id label )) (define (emit-cypher-edge id1 id2 port) (format port "MERGE (a:Package { id: ~s });~%" id1) @@ -298,7 +296,7 @@ true, draw reverse arrows." (ids (mapm %store-monad node-identifier dependencies))) - (emit-node id head port) + (emit-node id (node-label head) port) (for-each (lambda (dependency dependency-id) (if reverse-edges? (emit-edge dependency-id id port) From 94e86a6b67c7a02f5f11358743f3b9f11997059c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Aug 2017 13:14:47 +0200 Subject: [PATCH 1200/1227] graft: Correctly replace references near the end of the scan buffer. Fixes . Reported by Leo Famulari . * guix/build/graft.scm (replace-store-references): When I >= END, check whether WRITTEN > END and call 'get-bytevector-n!' when it is. * tests/grafts.scm (buffer-size): New variable. ("replace-store-references, "): New test. --- guix/build/graft.scm | 22 +++++++++++++--------- tests/grafts.scm | 34 +++++++++++++++++++++++++++++++++- 2 files changed, 46 insertions(+), 10 deletions(-) diff --git a/guix/build/graft.scm b/guix/build/graft.scm index 16df169ec7..3dce486adf 100644 --- a/guix/build/graft.scm +++ b/guix/build/graft.scm @@ -164,15 +164,19 @@ bytevectors to the same value." ;; not to unget bytes that have already been written, because ;; that would cause them to be written again from the next ;; buffer. In practice, this case occurs when a replacement is - ;; made near the end of the buffer. - (let* ((unwritten (- end written)) - (unget-size (if (= end request-size) - (min hash-length unwritten) - 0)) - (write-size (- unwritten unget-size))) - (put-bytevector output buffer written write-size) - (unget-bytevector input buffer (+ written write-size) - unget-size) + ;; made near or beyond the end of the buffer. When REPLACEMENT + ;; went beyond END, we consume the extra bytes from INPUT. + (begin + (if (> written end) + (get-bytevector-n! input buffer 0 (- written end)) + (let* ((unwritten (- end written)) + (unget-size (if (= end request-size) + (min hash-length unwritten) + 0)) + (write-size (- unwritten unget-size))) + (put-bytevector output buffer written write-size) + (unget-bytevector input buffer (+ written write-size) + unget-size))) (loop))))))))) (define (rename-matching-files directory mapping) diff --git a/tests/grafts.scm b/tests/grafts.scm index 08f05c0f75..abb074d628 100644 --- a/tests/grafts.scm +++ b/tests/grafts.scm @@ -28,7 +28,9 @@ #:use-module (gnu packages bootstrap) #:use-module (srfi srfi-1) #:use-module (srfi srfi-64) - #:use-module (rnrs io ports)) + #:use-module (rnrs bytevectors) + #:use-module (rnrs io ports) + #:use-module (ice-9 vlist)) (define %store (open-connection-for-tests)) @@ -442,4 +444,34 @@ (and (file-exists? (string-append out "/p2/replacement")) (file-exists? (string-append out "/p2/p1/replacement"))))))) +(define buffer-size + ;; Must be equal to REQUEST-SIZE in 'replace-store-references'. + (expt 2 20)) + +(test-equal "replace-store-references, " + (string-append (make-string (- buffer-size 47) #\a) + "/gnu/store/" (make-string 32 #\8) + "-SoMeTHiNG" + (list->string (map integer->char (iota 77 33)))) + + ;; Create input data where the right-hand-size of the dash ("-something" + ;; here) goes beyond the end of the internal buffer of + ;; 'replace-store-references'. + (let* ((content (string-append (make-string (- buffer-size 47) #\a) + "/gnu/store/" (make-string 32 #\7) + "-something" + (list->string + (map integer->char (iota 77 33))))) + (replacement (alist->vhash + `((,(make-string 32 #\7) + . ,(string->utf8 (string-append + (make-string 32 #\8) + "-SoMeTHiNG"))))))) + (call-with-output-string + (lambda (output) + ((@@ (guix build graft) replace-store-references) + (open-input-string content) output + replacement + "/gnu/store"))))) + (test-end) From 44aca1a3e5f3bdac1db7103b546b10d65b3038ad Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 25 Aug 2017 01:57:16 +0200 Subject: [PATCH 1201/1227] gnu: guile-xcb: Update source URL. * gnu/packages/guile-wm.scm (guile-xcb)[source]: Use archived tarball URL. --- gnu/packages/guile-wm.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm index d3081f9acc..4a484b9de4 100644 --- a/gnu/packages/guile-wm.scm +++ b/gnu/packages/guile-wm.scm @@ -34,7 +34,8 @@ (version "1.3") (source (origin (method url-fetch) - (uri (string-append "http://www.markwitmer.com/dist/guile-xcb-" + (uri (string-append "http://web.archive.org/web/20150803094848/" + "http://www.markwitmer.com/dist/guile-xcb-" version ".tar.gz")) (sha256 (base32 From 5cff549c60334a53e82eaf86b42e3b2cb92ce4b4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 25 Aug 2017 04:51:07 +0200 Subject: [PATCH 1202/1227] gnu: zynaddsubfx: Update to 3.0.2. * gnu/packages/music.scm (zynaddsubfx): Update to 3.0.2. --- gnu/packages/music.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 51a213b13f..ccd94bb1c1 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1699,7 +1699,7 @@ backends, including ALSA, OSS, Network and FluidSynth.") (define-public zynaddsubfx (package (name "zynaddsubfx") - (version "3.0.1") + (version "3.0.2") (source (origin (method url-fetch) (uri (string-append @@ -1707,7 +1707,7 @@ backends, including ALSA, OSS, Network and FluidSynth.") version "/zynaddsubfx-" version ".tar.bz2")) (sha256 (base32 - "1qijvlbv41lnqaqbp6gh1i42xzf1syviyxz8wr39xbz55cw7y0d8")))) + "09mr23lqc51r7gskry5b7hk84pghdpgn1s4vnrzvx7xpa21gvplm")))) (build-system cmake-build-system) (arguments `(#:phases From 0b4f40e4fa8754330c38e5fca65b0ef7f00980cf Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 25 Aug 2017 04:55:05 +0200 Subject: [PATCH 1203/1227] gnu: yoshimi: Update to 1.5.3. * gnu/packages/music.scm (yoshimi): Update to 1.5.3. --- gnu/packages/music.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index ccd94bb1c1..56e6d26493 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1745,7 +1745,7 @@ capabilities, custom envelopes, effects, etc.") (define-public yoshimi (package (name "yoshimi") - (version "1.5.1.1") + (version "1.5.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/yoshimi/" @@ -1753,7 +1753,7 @@ capabilities, custom envelopes, effects, etc.") "/yoshimi-" version ".tar.bz2")) (sha256 (base32 - "1gjanmbn08x11iz4bjlkx3m66x0yk401ddkz8fqkj7y3p5ih1kna")))) + "0sns35pyw2f74xrv1fxiyf9g9415kvh2rrbdjd60hsiv584nlari")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; there are no tests From 05e172ca4e89d39b4e67d7bc728a3f40876f8f5d Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 25 Aug 2017 01:53:51 -0400 Subject: [PATCH 1204/1227] download: Remove a SourceForge mirror that never returns 404. * guix/download.scm (%mirrors)[sourceforge]: Remove nbtelecom.dl.sourceforge.net, which never returns 404 responses. This causes download failures due to hash mismatch, effectively preventing secondary source URLs from being queried. --- guix/download.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/download.scm b/guix/download.scm index bf818e3cdf..ae381ee7ab 100644 --- a/guix/download.scm +++ b/guix/download.scm @@ -115,7 +115,7 @@ "http://jaist.dl.sourceforge.net/project/" "http://kent.dl.sourceforge.net/project/" "http://liquidtelecom.dl.sourceforge.net/project/" - "http://nbtelecom.dl.sourceforge.net/project/" + ;; "http://nbtelecom.dl.sourceforge.net/project/" ;never returns 404s "http://nchc.dl.sourceforge.net/project/" "http://ncu.dl.sourceforge.net/project/" "http://netcologne.dl.sourceforge.net/project/" From 1934769ba163caa06816deb97688926130d4395a Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 25 Aug 2017 01:45:54 -0400 Subject: [PATCH 1205/1227] gnu: libmikmod: Add fallback source URL, needed for older versions. * gnu/packages/sdl.scm (libmikmod)[source]: Add a fallback source URL where older versions are kept. --- gnu/packages/sdl.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 9e2d81f182..af598ecb46 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -120,8 +120,13 @@ joystick, and graphics hardware.") (version "3.3.10") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/mikmod/libmikmod/" - version "/libmikmod-" version ".tar.gz")) + (uri (list + (string-append "mirror://sourceforge/mikmod/libmikmod/" + version "/libmikmod-" version ".tar.gz") + ;; Older versions are sometimes moved to: + (string-append "mirror://sourceforge/mikmod/" + "outdated_versions/libmikmod/" + version "/libmikmod-" version ".tar.gz"))) (sha256 (base32 "0j7g4jpa2zgzw7x6s3rldypa7zlwjvn97rwx0sylx1iihhlzbcq0")))) From cb8b14f18294831abcdc3cb024d7f909667177aa Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Aug 2017 09:15:09 +0300 Subject: [PATCH 1206/1227] gnu: parallel: Update to 20170822. * gnu/packages/parallel.scm (parallel): Update to 20170822. --- gnu/packages/parallel.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 179fa7ed32..db04a5704e 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -45,7 +45,7 @@ (define-public parallel (package (name "parallel") - (version "20170722") + (version "20170822") (source (origin (method url-fetch) @@ -53,7 +53,7 @@ version ".tar.bz2")) (sha256 (base32 - "117g50bx1kcbrqix0f1539z5rzhvgsni2wddjv939wcxkrdb1idx")))) + "0j4i0dfbk1i37mcdl7l5ynsldp8biqnbm32sm0cl26by0nivyjc9")))) (build-system gnu-build-system) (arguments `(#:phases From e76008dbc87744656f1d30672af681d864310e0d Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 14:05:58 +0200 Subject: [PATCH 1207/1227] gnu: accountsservice: Properly reference shadow. * gnu/packages/freedesktop.scm (accountsservice): Fix references to binaries provided by the shadow package. --- gnu/packages/freedesktop.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index a9a7e08da1..b3d4279dc6 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Andreas Enge ;;; Copyright © 2015 Sou Bunnbu -;;; Copyright © 2015 Andy Wingo +;;; Copyright © 2015, 2017 Andy Wingo ;;; Copyright © 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 David Hashe @@ -645,10 +645,17 @@ message bus.") (modify-phases %standard-phases (add-before 'configure 'pre-configure - (lambda _ - ;; Don't try to create /var/lib/AccoutsService. + (lambda* (#:key inputs #:allow-other-keys) + ;; Don't try to create /var/lib/AccountsService. (substitute* "src/Makefile.in" (("\\$\\(MKDIR_P\\).*/lib/AccountsService.*") "true")) + (let ((shadow (assoc-ref inputs "shadow"))) + (substitute* '("src/user.c" "src/daemon.c") + (("/usr/sbin/usermod") (string-append shadow "/sbin/usermod")) + (("/usr/sbin/useradd") (string-append shadow "/sbin/useradd")) + (("/usr/sbin/userdel") (string-append shadow "/sbin/userdel")) + (("/usr/bin/passwd") (string-append shadow "/bin/passwd")) + (("/usr/bin/chage") (string-append shadow "/bin/chage")))) #t))))) (native-inputs `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc. @@ -656,7 +663,8 @@ message bus.") ("intltool" ,intltool) ("pkg-config" ,pkg-config))) (inputs - `(("polkit" ,polkit))) + `(("shadow" ,shadow) + ("polkit" ,polkit))) (home-page "http://www.freedesktop.org/wiki/Software/AccountsService/") (synopsis "D-Bus interface for user account query and manipulation") (description From 063c6082619d13ed10a448ad3d84025921c0fdea Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 14:20:48 +0200 Subject: [PATCH 1208/1227] gnu: Add AccountsService service to desktop services. * doc/guix.texi (Desktop Services): Add accountsservice-service. * gnu/services/desktop.scm (%accountsservice-activation): (accountsservice-service-type): New public variables. (%desktop-services): Add accountsservice-service. --- doc/guix.texi | 29 +++++++++++++++++++++-------- gnu/services/desktop.scm | 31 +++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 954ff90ff7..e8b4d5e082 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -11572,14 +11572,14 @@ This is a list of services that builds upon @var{%base-services} and adds or adjusts services for a typical ``desktop'' setup. In particular, it adds a graphical login manager (@pxref{X Window, -@code{slim-service}}), screen lockers, -a network management tool (@pxref{Networking -Services, @code{wicd-service}}), energy and color management services, -the @code{elogind} login and seat manager, the Polkit privilege service, -the GeoClue location service, an NTP client (@pxref{Networking -Services}), the Avahi daemon, and has the name service switch service -configured to be able to use @code{nss-mdns} (@pxref{Name Service -Switch, mDNS}). +@code{slim-service}}), screen lockers, a network management tool +(@pxref{Networking Services, @code{wicd-service}}), energy and color +management services, the @code{elogind} login and seat manager, the +Polkit privilege service, the GeoClue location service, the +AccountsService daemon that allows authorized users change system +passwords, an NTP client (@pxref{Networking Services}), the Avahi +daemon, and has the name service switch service configured to be able to +use @code{nss-mdns} (@pxref{Name Service Switch, mDNS}). @end defvr The @var{%desktop-services} variable can be used as the @code{services} @@ -11722,6 +11722,19 @@ their default values are: @end table @end deffn +@deffn {Scheme Procedure} accountsservice-service @ + [#:accountsservice @var{accountsservice}] +Return a service that runs AccountsService, a system service that can +list available accounts, change their passwords, and so on. +AccountsService integrates with PolicyKit to enable unprivileged users +to acquire the capability to modify their system configuration. +@uref{https://www.freedesktop.org/wiki/Software/AccountsService/, the +accountsservice web site} for more information. + +The @var{accountsservice} keyword argument is the @code{accountsservice} +package to expose as a service. +@end deffn + @deffn {Scheme Procedure} polkit-service @ [#:polkit @var{polkit}] Return a service that runs the diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 50a561bf51..0509bd8a44 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -73,6 +73,9 @@ elogind-service elogind-service-type + accountsservice-service-type + accountsservice-service + gnome-desktop-configuration gnome-desktop-configuration? gnome-desktop-service @@ -703,6 +706,33 @@ types (graphical, console, remote, etc.). It can also clean up after users when they log out." (service elogind-service-type config)) + +;;; +;;; AccountsService service. +;;; + +(define %accountsservice-activation + #~(begin + (use-modules (guix build utils)) + (mkdir-p "/var/lib/AccountsService"))) + +(define accountsservice-service-type + (service-type (name 'accountsservice) + (extensions + (list (service-extension activation-service-type + (const %accountsservice-activation)) + (service-extension dbus-root-service-type list) + (service-extension polkit-service-type list))))) + +(define* (accountsservice-service #:key (accountsservice accountsservice)) + "Return a service that runs AccountsService, a system service that +can list available accounts, change their passwords, and so on. +AccountsService integrates with PolicyKit to enable unprivileged users to +acquire the capability to modify their system configuration. +@uref{https://www.freedesktop.org/wiki/Software/AccountsService/, the +accountsservice web site} for more information." + (service accountsservice-service-type accountsservice)) + ;;; ;;; GNOME desktop service. @@ -783,6 +813,7 @@ with the administrator's password." (wicd-service) (udisks-service) (upower-service) + (accountsservice-service) (colord-service) (geoclue-service) (polkit-service) From 92753a8badf7ffd6c58b2164abfdb5dc576b6197 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 17:43:48 +0200 Subject: [PATCH 1209/1227] gnu: services: Refactor to separate X and startx wrappers. * gnu/services/xorg.scm (xorg-wrapper): New public function. (xorg-start-command): Use xorg-wrapper. --- gnu/services/xorg.scm | 55 ++++++++++++++++++++++++++++--------------- 1 file changed, 36 insertions(+), 19 deletions(-) diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 5bae8c18e1..cde6c4d371 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -1,4 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Andy Wingo ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès ;;; Copyright © 2015 Sou Bunnbu ;;; @@ -41,6 +42,7 @@ #:use-module (ice-9 match) #:export (xorg-configuration-file %default-xorg-modules + xorg-wrapper xorg-start-command xinitrc @@ -184,36 +186,51 @@ in @var{modules}." files) #t)))) -(define* (xorg-start-command #:key - (guile (canonical-package guile-2.0)) - (configuration-file (xorg-configuration-file)) - (modules %default-xorg-modules) - (xorg-server xorg-server)) +(define* (xorg-wrapper #:key + (guile (canonical-package guile-2.0)) + (configuration-file (xorg-configuration-file)) + (modules %default-xorg-modules) + (xorg-server xorg-server)) "Return a derivation that builds a @var{guile} script to start the X server from @var{xorg-server}. @var{configuration-file} is the server configuration file or a derivation that builds it; when omitted, the result of -@code{xorg-configuration-file} is used. - -Usually the X server is started by a login manager." +@code{xorg-configuration-file} is used. The resulting script should be used +in place of @code{/usr/bin/X}." (define exp ;; Write a small wrapper around the X server. #~(begin (setenv "XORG_DRI_DRIVER_PATH" (string-append #$mesa "/lib/dri")) (setenv "XKB_BINDIR" (string-append #$xkbcomp "/bin")) - (apply execl (string-append #$xorg-server "/bin/X") - (string-append #$xorg-server "/bin/X") ;argv[0] - "-logverbose" "-verbose" - "-xkbdir" (string-append #$xkeyboard-config "/share/X11/xkb") - "-config" #$configuration-file - "-configdir" #$(xorg-configuration-directory modules) - "-nolisten" "tcp" "-terminate" + (let ((X (string-append #$xorg-server "/bin/X"))) + (apply execl X X + "-xkbdir" (string-append #$xkeyboard-config "/share/X11/xkb") + "-config" #$configuration-file + "-configdir" #$(xorg-configuration-directory modules) + (cdr (command-line)))))) - ;; Note: SLiM and other display managers add the - ;; '-auth' flag by themselves. - (cdr (command-line))))) + (program-file "X-wrapper" exp)) - (program-file "start-xorg" exp)) +(define* (xorg-start-command #:key + (guile (canonical-package guile-2.0)) + (configuration-file (xorg-configuration-file)) + (modules %default-xorg-modules) + (xorg-server xorg-server)) + "Return a derivation that builds a @code{startx} script in which a number of +X modules are available. See @code{xorg-wrapper} for more details on the +arguments. The result should be used in place of @code{startx}." + (define X + (xorg-wrapper #:guile guile + #:configuration-file configuration-file + #:modules modules + #:xorg-server xorg-server)) + (define exp + ;; Write a small wrapper around the X server. + #~(apply execl #$X #$X ;; Second #$X is for argv[0]. + "-logverbose" "-verbose" "-nolisten" "tcp" "-terminate" + (cdr (command-line)))) + + (program-file "startx" exp)) (define* (xinitrc #:key (guile (canonical-package guile-2.0)) From af37e6bbd4a0b97c8147ccbd1548dc2e5f830466 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 14:06:40 +0200 Subject: [PATCH 1210/1227] gnu: gdm: Look for sessions in /run/current-system. * gnu/packages/gnome.scm (gdm): Fix search paths for system sessions. Use /var as localstatedir. Set a more sensible default path for user sessions. --- gnu/packages/gnome.scm | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ab8e0871fb..a26688d8b8 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5098,7 +5098,13 @@ libxml2.") (build-system gnu-build-system) (arguments '(#:configure-flags - '("--without-plymouth") + `("--without-plymouth" + "--localstatedir=/var" + ,(string-append "--with-default-path=" + (string-join '("/run/setuid-programs" + "/run/current-system/profile/bin" + "/run/current-system/profile/sbin") + ":"))) #:phases (modify-phases %standard-phases (add-before @@ -5119,6 +5125,18 @@ libxml2.") ;; Avoid checking SYSTEMD using pkg-config. (setenv "SYSTEMD_CFLAGS" " ") (setenv "SYSTEMD_LIBS" "-lelogind") + ;; Look for system-installed sessions in + ;; /run/current-system/profile/share. + (substitute* '("libgdm/gdm-sessions.c" + "daemon/gdm-session.c" + "daemon/gdm-display.c" + "daemon/gdm-launch-environment.c") + (("DATADIR \"/x") + "\"/run/current-system/profile/share/x") + (("DATADIR \"/wayland") + "\"/run/current-system/profile/share/wayland") + (("DATADIR \"/gnome") + "\"/run/current-system/profile/share/gnome")) #t))))) (native-inputs `(("dconf" ,dconf) From 957dbc0a4d2c4d173b094a3c003c87deffc8a8a0 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 22:51:32 +0200 Subject: [PATCH 1211/1227] gnu: gdm: Use proper elogind check, and wrap environment. * gnu/packages/gnome.scm (gdm): Use glib-or-gtk-build-system to make sure the schemas are available to GDM. Install gdm to /bin to make this happen. Use a proper elogind check. --- gnu/packages/gnome.scm | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index a26688d8b8..2d825081f6 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5095,16 +5095,20 @@ libxml2.") (sha256 (base32 "1s2xzrwcjhfb4ra8jrxqfycs1jpv97id0f6idb2h6vjkspxbjy23")))) - (build-system gnu-build-system) + (build-system glib-or-gtk-build-system) (arguments '(#:configure-flags `("--without-plymouth" + "--disable-systemd-journal" "--localstatedir=/var" ,(string-append "--with-default-path=" (string-join '("/run/setuid-programs" "/run/current-system/profile/bin" "/run/current-system/profile/sbin") - ":"))) + ":")) + ;; Put GDM in bindir so that glib-or-gtk-build-system wraps the + ;; XDG_DATA_DIRS so that it finds its schemas. + "--sbindir" ,(string-append (assoc-ref %outputs "out") "/bin")) #:phases (modify-phases %standard-phases (add-before @@ -5122,9 +5126,10 @@ libxml2.") "libgdm/gdm-user-switching.c") (("#include ") "#include ")) - ;; Avoid checking SYSTEMD using pkg-config. - (setenv "SYSTEMD_CFLAGS" " ") - (setenv "SYSTEMD_LIBS" "-lelogind") + ;; Check for elogind. + (substitute* '("configure") + (("libsystemd") + "libelogind")) ;; Look for system-installed sessions in ;; /run/current-system/profile/share. (substitute* '("libgdm/gdm-sessions.c" From e0e6756fbddc56b73640273ea8c6bf17825b337a Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 18:39:39 +0200 Subject: [PATCH 1212/1227] gnu: gdm: Fix environment of worker processes and sessions. * gnu/packages/gnome.scm (gdm): Get X server path from GDM_X_SERVER environment variable, and make sure this variable is propagated to internal sub-processes. Launch sessions with a reasonable XDG_CONFIG_DIRS setting. Get the custom GDM conf from the current system's profile. --- gnu/packages/gnome.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 2d825081f6..bd415139b2 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5142,6 +5142,38 @@ libxml2.") "\"/run/current-system/profile/share/wayland") (("DATADIR \"/gnome") "\"/run/current-system/profile/share/gnome")) + (substitute* '("daemon/gdm-session.c") + (("set_up_session_environment \\(self\\);") + (string-append + "set_up_session_environment (self);\n" + ;; Propagate GDM_X_SERVER environment variable (which is set + ;; by the GDM service, as it's a function of what X modules + ;; the user decides to have available) down to worker + ;; processes. + "gdm_session_set_environment_variable (self, \"GDM_X_SERVER\",\n" + " g_getenv (\"GDM_X_SERVER\"));\n" + ;; FIXME: Really glib should be declaring XDG_CONFIG_DIRS as a + ;; variable, but it doesn't do that right now. Anyway + ;; /run/current-system/profile/share/gnome-session/sessions/gnome.desktop + ;; requires that a number of .desktop files be present, and + ;; these special .desktop files are in $XDG_CONFIG_DIRS (which + ;; defaults to /etc/xdg if it's not set). Here we need to + ;; provide a value such that the GNOME session's requirements + ;; are met (provided GNOME is installed of course). + "gdm_session_set_environment_variable (self, \"XDG_CONFIG_DIRS\",\n" + " \"/run/current-system/profile/etc/xdg\");\n" + ))) + ;; Look for custom GDM conf in /run/current-system. + (substitute* '("common/gdm-settings-backend.c") + (("GDM_CUSTOM_CONF") + "/run/current-system/etc/gdm/custom.conf")) + ;; Use service-supplied path to X. + (substitute* '("daemon/gdm-server.c") + (("\\(X_SERVER X_SERVER_ARG_FORMAT") + "(\"%s\" X_SERVER_ARG_FORMAT, g_getenv (\"GDM_X_SERVER\")")) + (substitute* '("daemon/gdm-x-session.c") + (("X_SERVER") + "g_getenv (\"GDM_X_SERVER\")")) #t))))) (native-inputs `(("dconf" ,dconf) From b6d8066d4d458a9fd2375e730d206df69b1575d6 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 18:40:18 +0200 Subject: [PATCH 1213/1227] gnu: services: Log debug messages to /var/log/debug. * gnu/services/base.scm (%default-syslog.conf): Create a /var/log/debug with messages logged to syslog at debug level. --- gnu/services/base.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index e28e0d7ac5..54bd9ca2fb 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1220,6 +1220,9 @@ Service Switch}, for an example." # Don't log private authentication messages! *.info;mail.none;authpriv.none /var/log/messages + # Like /var/log/messages, but also including \"debug\"-level logs. + *.debug;mail.none;authpriv.none /var/log/debug + # Same, in a different place. *.info;mail.none;authpriv.none /dev/tty12 From 6e99c01b4d3ae6dfa467d83604484707f07f8e86 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 22 Aug 2017 18:41:19 +0200 Subject: [PATCH 1214/1227] gnu: Add draft of gdm service. * gnu/services/xorg.scm (%gdm-accounts, ) (gdm-etc-service, gdm-pam-service, gdm-shepherd-service, gdm-service-programs) (gdm-service-type, gdm-service): New public variables. Not yet working. --- gnu/services/xorg.scm | 147 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 146 insertions(+), 1 deletion(-) diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index cde6c4d371..5a8ee6cd40 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -23,14 +23,17 @@ #:use-module (gnu services) #:use-module (gnu services shepherd) #:use-module (gnu system pam) + #:use-module (gnu services dbus) #:use-module ((gnu packages base) #:select (canonical-package)) #:use-module (gnu packages guile) #:use-module (gnu packages xorg) #:use-module (gnu packages gl) #:use-module (gnu packages display-managers) #:use-module (gnu packages gnustep) + #:use-module (gnu packages gnome) #:use-module (gnu packages admin) #:use-module (gnu packages bash) + #:use-module (gnu system shadow) #:use-module (guix gexp) #:use-module (guix store) #:use-module (guix packages) @@ -55,7 +58,11 @@ screen-locker screen-locker? screen-locker-service-type - screen-locker-service)) + screen-locker-service + + gdm-configuration + gdm-service-type + gdm-service)) ;;; Commentary: ;;; @@ -476,4 +483,142 @@ makes the good ol' XlockMore usable." (file-append package "/bin/" program) allow-empty-passwords?))) +(define %gdm-accounts + (list (user-group (name "gdm") (system? #t)) + (user-account + (name "gdm") + (group "gdm") + (system? #t) + (comment "GNOME Display Manager user") + (home-directory "/var/lib/gdm") + (shell (file-append shadow "/sbin/nologin"))))) + +(define-record-type* + gdm-configuration make-gdm-configuration + gdm-configuration? + (gdm gdm-configuration-gdm (default gdm)) + (allow-empty-passwords? gdm-configuration-allow-empty-passwords? (default #t)) + (allow-root? gdm-configuration-allow-root? (default #t)) + (auto-login? gdm-configuration-auto-login? (default #f)) + (default-user gdm-configuration-default-user (default #f)) + (x-server gdm-configuration-x-server)) + +(define (gdm-etc-service config) + (define gdm-configuration-file + (mixed-text-file "gdm-custom.conf" + "[daemon]\n" + "#User=gdm\n" + "#Group=gdm\n" + (if (gdm-configuration-auto-login? config) + (string-append + "AutomaticLoginEnable=true\n" + "AutomaticLogin=" + (or (gdm-configuration-default-user config) + (error "missing default user for auto-login")) + "\n") + (string-append + "AutomaticLoginEnable=false\n" + "#AutomaticLogin=\n")) + "#TimedLoginEnable=false\n" + "#TimedLogin=\n" + "#TimedLoginDelay=0\n" + "#InitialSetupEnable=true\n" + ;; Enable me once X is working. + "WaylandEnable=false\n" + "\n" + "[debug]\n" + "Enable=true\n" + "\n" + "[security]\n" + "#DisallowTCP=true\n" + "#AllowRemoteAutoLogin=false\n")) + `(("gdm" ,(file-union + "gdm" + `(("custom.conf" ,gdm-configuration-file)))))) + +(define (gdm-pam-service config) + "Return a PAM service for @command{gdm}." + (list + (pam-service + (inherit (unix-pam-service "gdm-autologin")) + (auth (list (pam-entry + (control "[success=ok default=1]") + (module (file-append (gdm-configuration-gdm config) + "/lib/security/pam_gdm.so"))) + (pam-entry + (control "sufficient") + (module "pam_permit.so"))))) + (pam-service + (inherit (unix-pam-service "gdm-launch-environment")) + (auth (list (pam-entry + (control "required") + (module "pam_permit.so"))))) + (unix-pam-service + "gdm-password" + #:allow-empty-passwords? (gdm-configuration-allow-empty-passwords? config) + #:allow-root? (gdm-configuration-allow-root? config)))) + +(define (gdm-shepherd-service config) + (list (shepherd-service + (documentation "Xorg display server (GDM)") + (provision '(xorg-server)) + (requirement '(dbus-system user-processes host-name udev)) + ;; While this service isn't working properly, turn off auto-start. + (auto-start? #f) + (start #~(lambda () + (fork+exec-command + (list #$(file-append (gdm-configuration-gdm config) + "/bin/gdm")) + #:environment-variables + (list (string-append + "GDM_X_SERVER=" + #$(gdm-configuration-x-server config)))))) + (stop #~(make-kill-destructor)) + (respawn? #t)))) + +(define gdm-service-type + (service-type (name 'gdm) + (extensions + (list (service-extension shepherd-root-service-type + gdm-shepherd-service) + (service-extension account-service-type + (const %gdm-accounts)) + (service-extension pam-root-service-type + gdm-pam-service) + (service-extension etc-service-type + gdm-etc-service) + (service-extension dbus-root-service-type + (compose list gdm-configuration-gdm)))))) + +;; This service isn't working yet; it gets as far as starting to run the +;; greeter from gnome-shell but doesn't get any further. It is here because +;; it doesn't hurt anyone and perhaps it inspires someone to fix it :) +(define* (gdm-service #:key (gdm gdm) + (allow-empty-passwords? #t) + (x-server (xorg-wrapper))) + "Return a service that spawns the GDM graphical login manager, which in turn +starts the X display server with @var{X}, a command as returned by +@code{xorg-wrapper}. + +@cindex X session + +GDM automatically looks for session types described by the @file{.desktop} +files in @file{/run/current-system/profile/share/xsessions} and allows users +to choose a session from the log-in screen using @kbd{F1}. Packages such as +@var{xfce}, @var{sawfish}, and @var{ratpoison} provide @file{.desktop} files; +adding them to the system-wide set of packages automatically makes them +available at the log-in screen. + +In addition, @file{~/.xsession} files are honored. When available, +@file{~/.xsession} must be an executable that starts a window manager +and/or other X clients. + +When @var{allow-empty-passwords?} is true, allow logins with an empty +password." + (service gdm-service-type + (gdm-configuration + (gdm gdm) + (allow-empty-passwords? allow-empty-passwords?) + (x-server x-server)))) + ;;; xorg.scm ends here From 35131babc1363852d1c0f393b848f85ae1aec0c8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 14 Jul 2017 14:15:54 -0400 Subject: [PATCH 1215/1227] gnu: go: Update to 1.9. * gnu/packages/golang.scm (go-1.8): Replace with ... (go-1.9): ... new variable. [arguments]: Adjust the pre-build phase accordingly. --- gnu/packages/golang.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 70cae6d871..95cfa4c674 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -199,11 +199,11 @@ garbage collection, various safety features and in the style of communicating sequential processes (CSP) concurrent programming features added.") (license license:bsd-3))) -(define-public go-1.8 +(define-public go-1.9 (package (inherit go-1.4) (name "go") - (version "1.8.3") + (version "1.9") (source (origin (method url-fetch) @@ -211,7 +211,7 @@ sequential processes (CSP) concurrent programming features added.") name version ".src.tar.gz")) (sha256 (base32 - "19lzv4lqixj3v2gjaff0fdbbmgsq5r8lrfd61z2zvp778wjflpaz")))) + "14z9azh8pk5cwyl2qdk893j68lk0cca7a9b8k2hpn5pd52825ax4")))) (arguments (substitute-keyword-arguments (package-arguments go-1.4) ((#:phases phases) @@ -242,7 +242,7 @@ sequential processes (CSP) concurrent programming features added.") ;; Add libgcc to runpath (substitute* "cmd/link/internal/ld/lib.go" (("!rpath.set") "true")) - (substitute* "cmd/go/build.go" + (substitute* "cmd/go/internal/work/build.go" (("cgoldflags := \\[\\]string\\{\\}") (string-append "cgoldflags := []string{" "\"-rpath=" gcclib "\"" @@ -366,4 +366,4 @@ sequential processes (CSP) concurrent programming features added.") `(("go" ,go-1.4) ,@(package-native-inputs go-1.4))))) -(define-public go go-1.8) +(define-public go go-1.9) From a21db79e5252e6a3f6b0a85fe2681022b02f6537 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 25 Aug 2017 21:34:47 +0200 Subject: [PATCH 1216/1227] gnu: perl-catalyst-runtime: Update to 5.90115. * gnu/packages/web.scm (perl-catalyst-runtime): Update to 5.90115. [native-inputs]: Add PERL-MODULE-INSTALL. --- gnu/packages/web.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index d46b6c8ec3..623dad3995 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1564,7 +1564,7 @@ MIME type directly to the browser, without being processed through Catalyst.") (define-public perl-catalyst-runtime (package (name "perl-catalyst-runtime") - (version "5.90082") + (version "5.90115") (source (origin (method url-fetch) @@ -1572,10 +1572,11 @@ MIME type directly to the browser, without being processed through Catalyst.") "Catalyst-Runtime-" version ".tar.gz")) (sha256 (base32 - "1gs70nq4rikpq6siwds9disb1z03vwjzf979xi9kf7saa1drfncs")))) + "0kh3ng6pjpxmndq9vrn515f70x7h44ish5bsgjwj4pjvchcyivzm")))) (build-system perl-build-system) (native-inputs - `(("perl-test-fatal" ,perl-test-fatal))) + `(("perl-module-install" ,perl-module-install) + ("perl-test-fatal" ,perl-test-fatal))) (propagated-inputs `(("perl-cgi-simple" ,perl-cgi-simple) ("perl-cgi-struct" ,perl-cgi-struct) From 2f837cf7fe100b0584fb02cf8f19d4cfb4e14d88 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 25 Aug 2017 22:18:58 +0200 Subject: [PATCH 1217/1227] gnu: perl: Add more missing dependencies on Module::Install. * gnu/packages/databases.scm (perl-dbix-class, perl-dbix-class-cursor-cached, perl-dbix-class-introspectablem2m, perl-dbix-class-schema-loader)[native-inputs]: Add PERL-MODULE-INSTALL. * gnu/packages/web.scm (perl-catalyst-action-renderview, perl-catalyst-action-rest, perl-catalyst-authentication-store-dbix-class, perl-catalyst-component-instancepercontext, perl-catalyst-model-dbic-schema, perl-catalyst-plugin-authentication, perl-catalyst-plugin-authorization-roles, perl-catalyst-plugin-configloader, perl-catalyst-plugin-session, perl-catalyst-plugin-session-state-cookie, perl-catalyst-plugin-stacktrace, perl-catalyst-plugin-static-simple, perl-catalyst-traitfor-request-proxybase, perl-catalyst-view-download, perl-catalyst-view-json, perl-catalystx-script-server-starman, perl-test-www-mechanize, perl-test-www-mechanize-catalyst)[native-inputs]: Likewise. * gnu/packages/xorg.scm (perl-x11-xcb)[native-inputs]: Likewise. --- gnu/packages/databases.scm | 7 ++++++- gnu/packages/web.scm | 40 ++++++++++++++++++++++++++++++-------- gnu/packages/xorg.scm | 1 + 3 files changed, 39 insertions(+), 9 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 6b8695ff04..648ba81aaf 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -861,6 +861,7 @@ extremely small.") (native-inputs `(("perl-dbd-sqlite" ,perl-dbd-sqlite) ("perl-file-temp" ,perl-file-temp) + ("perl-module-install" ,perl-module-install) ("perl-package-stash" ,perl-package-stash) ("perl-test-deep" ,perl-test-deep) ("perl-test-exception" ,perl-test-exception) @@ -914,7 +915,8 @@ single query, \"JOIN\", \"LEFT JOIN\", \"COUNT\", \"DISTINCT\", \"GROUP BY\", (build-system perl-build-system) (native-inputs `(("perl-cache-cache" ,perl-cache-cache) - ("perl-dbd-sqlite" ,perl-dbd-sqlite))) + ("perl-dbd-sqlite" ,perl-dbd-sqlite) + ("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-carp-clan" ,perl-carp-clan) ("perl-dbix-class" ,perl-dbix-class))) @@ -937,6 +939,8 @@ built-in caching support.") (base32 "1w47rh2241iy5x3a9bqsyd5kdp9sk43dksr99frzv4qn4jsazfn6")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-dbix-class" ,perl-dbix-class))) (home-page "http://search.cpan.org/dist/DBIx-Class-IntrospectableM2M") @@ -967,6 +971,7 @@ introspected and examined.") ("perl-config-general" ,perl-config-general) ("perl-dbd-sqlite" ,perl-dbd-sqlite) ("perl-dbix-class-introspectablem2m" ,perl-dbix-class-introspectablem2m) + ("perl-module-install" ,perl-module-install) ("perl-moose" ,perl-moose) ("perl-moosex-markasmethods" ,perl-moosex-markasmethods) ("perl-moosex-nonmoose" ,perl-moosex-nonmoose) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 623dad3995..ccba7ce7e6 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1054,7 +1054,8 @@ to perl-code, for faster generation of access_log lines.") "0j1rrld13cjk7ks92b5hv3xw4rfm2lvmksb4rlzd8mx0a0wj0rc5")))) (build-system perl-build-system) (native-inputs - `(("perl-http-request-ascgi" ,perl-http-request-ascgi))) + `(("perl-http-request-ascgi" ,perl-http-request-ascgi) + ("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-data-visitor" ,perl-data-visitor) @@ -1078,7 +1079,8 @@ action, which will forward to the first available view.") "1mpa64p61f3dp24xnhdraswch4sqj5vyv1iivcvvh5h0xi0haiy0")))) (build-system perl-build-system) (native-inputs - `(("perl-test-requires" ,perl-test-requires))) + `(("perl-test-requires" ,perl-test-requires) + ("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-class-inspector" ,perl-class-inspector) @@ -1120,6 +1122,7 @@ regular method.") ("perl-catalyst-plugin-session-state-cookie" ,perl-catalyst-plugin-session-state-cookie) ("perl-dbd-sqlite" ,perl-dbd-sqlite) + ("perl-module-install" ,perl-module-install) ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) @@ -1149,6 +1152,8 @@ DBIx::Class.") (base32 "0wfj4vnn2cvk6jh62amwlg050p37fcwdgrn9amcz24z6w4qgjqvz")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-moose" ,perl-moose))) @@ -1247,6 +1252,7 @@ when the dispatch type is first seen in your application.") (build-system perl-build-system) (native-inputs `(("perl-dbd-sqlite" ,perl-dbd-sqlite) + ("perl-module-install" ,perl-module-install) ("perl-test-exception" ,perl-test-exception) ("perl-test-requires" ,perl-test-requires))) (propagated-inputs @@ -1315,6 +1321,8 @@ for you. It will work even with Catalyst debug logging turned off.") (base32 "0v6hb4r1wv3djrnqvnjcn3xx1scgqzx8nyjdg9lfc1ybvamrl0rn")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session) ("perl-catalyst-runtime" ,perl-catalyst-runtime) @@ -1350,7 +1358,8 @@ system authorises them to do).") "0l83lkwmq0lngwh8b1rv3r719pn8w1gdbyhjqm74rnd0wbjl8h7f")))) (build-system perl-build-system) (native-inputs - `(("perl-test-exception" ,perl-test-exception))) + `(("perl-module-install" ,perl-module-install) + ("perl-test-exception" ,perl-test-exception))) (propagated-inputs `(("perl-catalyst-plugin-authentication" ,perl-catalyst-plugin-authentication) @@ -1403,7 +1412,8 @@ Catalyst.") "19j7p4v7mbx6wrmpvmrnd974apx7hdl2s095ga3b9zcbdrl77h5q")))) (build-system perl-build-system) (native-inputs - `(("perl-path-class" ,perl-path-class))) + `(("perl-path-class" ,perl-path-class) + ("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-config-any" ,perl-config-any) @@ -1430,7 +1440,8 @@ formats.") "171vi9xcl775scjaw4fcfdmqvz0rb1nr0xxg2gb3ng6bjzpslhgv")))) (build-system perl-build-system) (native-inputs - `(("perl-test-deep" ,perl-test-deep) + `(("perl-module-install" ,perl-module-install) + ("perl-test-deep" ,perl-test-deep) ("perl-test-exception" ,perl-test-exception))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) @@ -1461,6 +1472,8 @@ management in web applications together: the state, and the store.") (base32 "1rvxbfnpf9x2pc2zgpazlcgdlr2dijmxgmcs0m5nazs0w6xikssb")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session) ("perl-catalyst-runtime" ,perl-catalyst-runtime) @@ -1519,6 +1532,8 @@ memory interprocess cache. It is based on Cache::FastMmap.") (base32 "1b2ksz74cpigxqzf63rddar3vfmnbpwpdcbs11v0ml89pb8ar79j")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-devel-stacktrace" ,perl-devel-stacktrace) @@ -1544,6 +1559,8 @@ number, file name, and code context surrounding the line number.") (base32 "1h8f12bhzh0ssq9gs8r9g3hqn8zn2k0q944vc1vm8j81bns16msy")))) (build-system perl-build-system) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-mime-types" ,perl-mime-types) @@ -1644,7 +1661,8 @@ run an application on the web, either by doing them itself, or by letting you (native-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-catalystx-roleapplicator" ,perl-catalystx-roleapplicator) - ("perl-http-message" ,perl-http-message))) + ("perl-http-message" ,perl-http-message) + ("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-moose" ,perl-moose) ("perl-namespace-autoclean" ,perl-namespace-autoclean) @@ -1673,6 +1691,7 @@ replaced with the contents of the X-Request-Base header.") (build-system perl-build-system) (native-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) + ("perl-module-install" ,perl-module-install) ("perl-test-simple" ,perl-test-simple) ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst) ("perl-text-csv" ,perl-text-csv) @@ -1698,7 +1717,8 @@ table based report in a variety of formats (CSV, HTML, etc.).") "0x943j1n2r0zqanyzdrs1xsnn8ayn2wqskn7h144xcqa6v6gcisl")))) (build-system perl-build-system) (native-inputs - `(("perl-yaml" ,perl-yaml))) + `(("perl-module-install" ,perl-module-install) + ("perl-yaml" ,perl-yaml))) (inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-json-maybexs" ,perl-json-maybexs) @@ -1807,7 +1827,8 @@ application classes.") "0h02mpkc4cmi3jpvcd7iw7xyzx55bqvvl1qkf967gqkvpklm0qx5")))) (build-system perl-build-system) (native-inputs - `(("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst))) + `(("perl-module-install" ,perl-module-install) + ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst))) (propagated-inputs `(("perl-catalyst-runtime" ,perl-catalyst-runtime) ("perl-moose" ,perl-moose) @@ -3045,6 +3066,8 @@ either mocked HTTP or a locally spawned server.") (build-system perl-build-system) (native-inputs `(("perl-test-exception" ,perl-test-exception))) + (native-inputs + `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-carp-assert-more" ,perl-carp-assert-more) ("perl-html-form" ,perl-html-form) @@ -3077,6 +3100,7 @@ WWW::Mechanize that incorporates features for web application testing.") `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session) ("perl-catalyst-plugin-session-state-cookie" ,perl-catalyst-plugin-session-state-cookie) + ("perl-module-install" ,perl-module-install) ("perl-test-exception" ,perl-test-exception) ("perl-test-pod" ,perl-test-pod) ("perl-test-utf8" ,perl-test-utf8))) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index af217ef679..1c458831da 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -5780,6 +5780,7 @@ programs that cannot use the window system directly.") (native-inputs `(("perl-extutils-depends" ,perl-extutils-depends) ("perl-extutils-pkgconfig" ,perl-extutils-pkgconfig) + ("perl-module-install" ,perl-module-install) ("perl-test-deep" ,perl-test-deep) ("perl-test-exception" ,perl-test-exception))) (propagated-inputs From cd2247cccdf5266d21fcf36f04b60f6171148f0f Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 25 Aug 2017 23:52:14 -0400 Subject: [PATCH 1218/1227] gnu: linux-libre@4.4: Update to 4.4.84. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.84. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 6c70328eba..3cdcc51c00 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -381,8 +381,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.83" - "1fv3j0w0v82aa9s9n4a4qyrxc5bpq2ag9riawlabx57a380x1n62" + (make-linux-libre "4.4.84" + "00lp3471mvwpq5062cynaakjn7bjpylmg1d1wwmhh6fdknd2h1kz" %intel-compatible-systems #:configuration-file kernel-config)) From 50e34c608e800eabde0bb70b3090be68abbe465a Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 25 Aug 2017 23:52:58 -0400 Subject: [PATCH 1219/1227] gnu: linux-libre@4.9: Update to 4.9.45. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.45. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 3cdcc51c00..8116e1f400 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -375,8 +375,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.44" - "0a92bsb5d0pyhyn5ypc8ashwxixhivdadvikcpv31376j842fmj2" + (make-linux-libre "4.9.45" + "0qdwn2m3iynbjyszkq4hlx891s1b83p9nr1v7vdb20fs4n2cbl9s" %intel-compatible-systems #:configuration-file kernel-config)) From 828f0109ee619187de9f1fb1877e2c48a68c1faf Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Fri, 25 Aug 2017 23:53:32 -0400 Subject: [PATCH 1220/1227] gnu: linux-libre: Update to 4.12.9. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.12.9. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 8116e1f400..ac3a4c2ddf 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -365,8 +365,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.8") -(define %linux-libre-hash "1p4ah15qs94id2yj6lhp6abdycvgp7lvn3ccsfs7f6n34hdij0cm") +(define %linux-libre-version "4.12.9") +(define %linux-libre-hash "1wpsqhaab91l1wdbsxq8pdwrdx3a603zr5zjxbzdsx99pr6iypra") (define-public linux-libre (make-linux-libre %linux-libre-version From acf7a958a685b3282fa1c63eba3cef4635786b98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Sat, 26 Aug 2017 13:58:25 +0800 Subject: [PATCH 1221/1227] gnu: pv: Update to 1.6.6. * gnu/packages/pv.scm (pv): Update to 1.6.6. --- gnu/packages/pv.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/pv.scm b/gnu/packages/pv.scm index 59a0853a0e..db6c3dd669 100644 --- a/gnu/packages/pv.scm +++ b/gnu/packages/pv.scm @@ -25,7 +25,7 @@ (define-public pv (package (name "pv") - (version "1.6.0") + (version "1.6.6") (source (origin (method url-fetch) @@ -33,7 +33,7 @@ version ".tar.bz2")) (sha256 (base32 - "13gg6r84pkvznpd1l11qw1jw9yna40gkgpni256khyx21m785khf")))) + "1wbk14xh9rfypiwyy68ssl8dliyji30ly70qki1y2xx3ywszk3k0")))) (build-system gnu-build-system) (home-page "https://www.ivarch.com/programs/pv.shtml") (synopsis "Pipeline progress indicator") From d987a006dc35db60f0024557ea8cfcad3252dfc1 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Sat, 26 Aug 2017 03:59:44 +0300 Subject: [PATCH 1222/1227] gnu: youtube-dl: Update to 2017.08.23. * gnu/packages/video.scm (youtube-dl): Update to 2017.08.23. Signed-off-by: Arun Isaac --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 2057307a30..4ce2a8f401 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.08.18") + (version "2017.08.23") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1mn3wi31k62c6drpplzp2irygjhiwprj5k7w4m0g8m4bgfdjgx57")))) + "1vq0r37ynnj2hx0ssh3hycg4wzhwch5pphq76swfz76r1klnrich")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion From 6febda9443e34adda38b7c365ff2d7368f589995 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Fri, 11 Aug 2017 20:41:39 +0200 Subject: [PATCH 1223/1227] gnu: Add capstone. * gnu/packages/engineering.scm (capstone): New variable. --- gnu/packages/engineering.scm | 38 ++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 650ac2b89c..db8dbff1eb 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 David Thompson ;;; Copyright © 2016, 2017 Ludovic Courtès ;;; Copyright © 2016, 2017 Theodoros Foradis +;;; Copyright © 2017 Julien Lepiller ;;; ;;; This file is part of GNU Guix. ;;; @@ -1013,3 +1014,40 @@ specified in high-level description language into ready-to-compile C code for the API of spice simulators. Based on transformations specified in XML language, ADMS transforms Verilog-AMS code into other target languages.") (license license:gpl3))) + +(define-public capstone + (package + (name "capstone") + (version "3.0.5-rc2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/aquynh/capstone/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1cqms9r2p43aiwp5spd84zaccp16ih03r7sjhrv16nddahj0jz2q")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f + #:make-flags (list (string-append "PREFIX=" %output) + "CC=gcc") + #:phases + (modify-phases %standard-phases + (delete 'configure) + ;; cstool's Makefile overrides LDFLAGS, so we cannot pass it as a make flag. + (add-before 'build 'fix-cstool-ldflags + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "cstool/Makefile" + (("LDFLAGS =") + (string-append "LDFLAGS = -Wl,-rpath=" (assoc-ref outputs "out") + "/lib"))) + #t))))) + (home-page "http://www.capstone-engine.org") + (synopsis "Lightweight multi-platform, multi-architecture disassembly framework") + (description + "Capstone is a lightweight multi-platform, multi-architecture disassembly +framework. Capstone can disassemble machine code for many supported architectures +such as x86, x86_64, arm, arm64, mips, ppc, sparc, sysz and xcore. It provides +bindings for Python, Java, OCaml and more.") + (license license:bsd-3))) From f70be0113f135d81db8ce3ee1acf997c0bcefe00 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Fri, 11 Aug 2017 20:49:04 +0200 Subject: [PATCH 1224/1227] gnu: Add python-capstone. * gnu/packages/engineering.scm (python-capstone, python2-capstone): New variables. --- gnu/packages/engineering.scm | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index db8dbff1eb..b4ccc446fb 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -33,7 +33,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) - #:use-module (guix build-system cmake) + #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) @@ -1051,3 +1051,30 @@ framework. Capstone can disassemble machine code for many supported architectur such as x86, x86_64, arm, arm64, mips, ppc, sparc, sysz and xcore. It provides bindings for Python, Java, OCaml and more.") (license license:bsd-3))) + +;; FIXME: This package has a timestamp embedded in +;; lib/python3.5/site-packages/capstone/__pycache__/__iti__.cpython-35.pyc +(define-public python-capstone + (package + (inherit capstone) + (name "python-capstone") + (propagated-inputs + `(("capstone" ,capstone))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir-and-fix-setup-py + (lambda _ + (chdir "bindings/python") + ;; Do not build the library again, because we already have it. + (substitute* "setup.py" ((".* build_libraries.*") "")) + ;; This substitution tells python-capstone where to find the + ;; library. + (substitute* "capstone/__init__.py" + (("pkg_resources.resource_filename.*") + (string-append "'" (assoc-ref %build-inputs "capstone") "/lib',\n"))) + #t))))))) + +(define-public python2-capstone + (package-with-python2 python-capstone)) From 446695775d6d8d15546c5d0fc535e9f5c83a7b7e Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Fri, 11 Aug 2017 20:54:40 +0200 Subject: [PATCH 1225/1227] gnu: Add radare2. * gnu/packages/engineering.scm (radare2): New variable. --- gnu/packages/engineering.scm | 55 ++++++++++++++++++++++++++++++++++-- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index b4ccc446fb..008a96b244 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -23,6 +23,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages engineering) + #:use-module (srfi srfi-1) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix gexp) @@ -60,6 +61,7 @@ #:use-module (gnu packages linux) ;FIXME: for pcb #:use-module (gnu packages m4) #:use-module (gnu packages maths) + #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -71,8 +73,7 @@ #:use-module (gnu packages tls) #:use-module (gnu packages tex) #:use-module (gnu packages wxwidgets) - #:use-module (gnu packages xorg) - #:use-module (srfi srfi-1)) + #:use-module (gnu packages xorg)) (define-public librecad (package @@ -1078,3 +1079,53 @@ bindings for Python, Java, OCaml and more.") (define-public python2-capstone (package-with-python2 python-capstone)) + +(define-public radare2 + (package + (name "radare2") + (version "1.6.0") + (source (origin + (method url-fetch) + (uri (string-append "http://radare.mikelloc.com/get/" version "/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "16ggsk40zz6hyvclvqj1r4bh4hb78jf0d6ppry1jk4r0j30wm7cm")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* "libr/asm/p/Makefile" + (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) ")) + (substitute* "libr/parse/p/Makefile" + (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) ")) + (substitute* "libr/bin/p/Makefile" + (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) ")))))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f; tests require git and network access + #:phases + (modify-phases %standard-phases + (add-before 'configure 'mklibdir + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p (string-append (assoc-ref %outputs "out") "/lib")) + #t))) + #:configure-flags + (list "--with-sysmagic" "--with-syszip" "--with-openssl" + "--without-nonpic" "--with-rpath" "--with-syscapstone") + #:make-flags + (list "CC=gcc"))) + (inputs + `(("openssl" ,openssl) + ("zip" ,zip) + ("gmp" ,gmp) + ("capstone" ,capstone))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://radare.org/") + (synopsis "Portable reversing framework") + (description + "Radare project started as a forensics tool, a scriptable commandline +hexadecimal editor able to open disk files, but later support for analyzing +binaries, disassembling code, debugging programs, attaching to remote gdb +servers, ...") + (license license:lgpl3))) From b9bf08f05805a733cb5fe89130d98c577cfe6089 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sat, 26 Aug 2017 12:07:10 +0200 Subject: [PATCH 1226/1227] gnu: Add xdg-user-dirs. * gnu/packages/freedesktop.scm (xdg-user-dirs): New public variable. --- gnu/packages/freedesktop.scm | 44 ++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index b3d4279dc6..067d5be056 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -1008,3 +1008,47 @@ desktop-file-install: installs a desktop file to the applications directory, update-desktop-database: updates the database containing a cache of MIME types handled by desktop files.") (license license:gpl2+))) + +(define-public xdg-user-dirs + (package + (name "xdg-user-dirs") + (version "0.16") + (source (origin + (method url-fetch) + (uri (string-append "http://user-dirs.freedesktop.org/releases/" + name "-" version ".tar.gz")) + (sha256 + (base32 "1rp3c94hxjlfsryvwajklynfnrcvxplhwnjqc7395l89i0nb83vp")))) + (build-system gnu-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("docbook-xsl" ,docbook-xsl) + ("docbook-xml" ,docbook-xml-4.3) + ("xsltproc" ,libxslt))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'locate-catalog-files + (lambda* (#:key inputs #:allow-other-keys) + (let ((xmldoc (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook")) + (xsldoc (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl)))) + (for-each (lambda (file) + (substitute* file + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd")))) + (find-files "man" "\\.xml$")) + (substitute* "man/Makefile" + (("http://.*/docbook\\.xsl") + (string-append xsldoc "/manpages/docbook.xsl"))) + #t)))))) + (home-page "https://www.freedesktop.org/wiki/Software/xdg-user-dirs/") + (synopsis "Tool to help manage \"well known\" user directories") + (description "xdg-user-dirs is a tool to help manage \"well known\" user +directories, such as the desktop folder or the music folder. It also handles +localization (i.e. translation) of the file names. Designed to be +automatically run when a user logs in, xdg-user-dirs can also be run +manually by a user.") + (license license:gpl2))) From c20cd0d24d9b5e8a47b864db9799e0992ffd44b9 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sat, 26 Aug 2017 12:07:45 +0200 Subject: [PATCH 1227/1227] gnu: gnome: Depend on xdg-user-dirs. * gnu/packages/gnome.scm (gnome): Add xdg-user-dirs dependency. The presence of the autostart file in /run/current-system/profile/etc/xdg should cause xdg-user-dirs to be run when a user logs in, ensuring that they have ~/Pictures and other well-known user directories. --- gnu/packages/gnome.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index bd415139b2..ead86a2d4a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5797,6 +5797,7 @@ associations for GNOME.") ("pulseaudio" ,pulseaudio) ("shared-mime-info" ,shared-mime-info) ("totem" ,totem) + ("xdg-user-dirs" ,xdg-user-dirs) ("yelp" ,yelp) ("zenity" ,zenity))) (synopsis "The GNU desktop environment")