From 22cc598b1e7c35e5be36a684bfa4474f42fe51f9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 21 Jun 2019 11:55:23 +0200 Subject: gnu: utf8proc: Update source and home page. * gnu/packages/textutils.scm (utf8proc)[source, home-page]: Follow redirected URLs. --- gnu/packages/textutils.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 79835e8578..14220b85f1 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -145,7 +145,7 @@ libenca and several charset conversion libraries and tools.") (origin (method url-fetch) (uri (string-append - "https://github.com/JuliaLang/utf8proc/archive/v" + "https://github.com/JuliaStrings/utf8proc/archive/v" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 @@ -181,7 +181,7 @@ libenca and several charset conversion libraries and tools.") (substitute* "data/GraphemeBreakTest.txt" (("÷") "/") (("×") "+"))))))) - (home-page "https://julialang.org/utf8proc/") + (home-page "https://juliastrings.github.io/utf8proc/") (synopsis "C library for processing UTF-8 Unicode data") (description "utf8proc is a small C library that provides Unicode normalization, case-folding, and other operations for data in the UTF-8 -- cgit 1.4.1 From 39ff1d8930df2c53beb174cd9ee2b34a5c7b005d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 21 Jun 2019 11:57:39 +0200 Subject: gnu: utf8proc: Do not use unstable tarball. * gnu/packages/textutils.scm (utf8proc)[source]: Change to GIT-FETCH. --- gnu/packages/textutils.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 14220b85f1..0b3ea492fb 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -143,13 +143,13 @@ libenca and several charset conversion libraries and tools.") (version "2.1.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/JuliaStrings/utf8proc/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaStrings/utf8proc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "1cnpigrazhslw65s4j1a56j7p6d7d61wsxxjf1218i9mkwv2yw17")))) + (base32 "1brr8nnpam7y8l9j8fppdpdqvfyfxliw20z41qfip6ygz9pvcsiq")))) (build-system gnu-build-system) (inputs ; test data that is otherwise downloaded with curl `(("NormalizationTest.txt" -- cgit 1.4.1 From 99293380314651858ef2f58bc93429f46b1ce1d8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 21 Jun 2019 11:58:30 +0200 Subject: gnu: utf8proc: Update to 2.4.0. * gnu/packages/textutils.scm (utf8proc): Update to 2.4.0. [inputs]: Rename to ... [native-inputs]: ... this. Update Unicode test data and add PERL. [arguments]: End phase on #t. --- gnu/packages/textutils.scm | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 0b3ea492fb..d1dc14e6d7 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -140,7 +140,7 @@ libenca and several charset conversion libraries and tools.") (define-public utf8proc (package (name "utf8proc") - (version "2.1.1") + (version "2.4.0") (source (origin (method git-fetch) @@ -149,23 +149,26 @@ libenca and several charset conversion libraries and tools.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1brr8nnpam7y8l9j8fppdpdqvfyfxliw20z41qfip6ygz9pvcsiq")))) + (base32 "1i42hqwc8znqii9brangwkxk5cyc2lk95ip405fg88zr7z2ncr34")))) (build-system gnu-build-system) - (inputs ; test data that is otherwise downloaded with curl + (native-inputs ;test data that is otherwise downloaded with curl `(("NormalizationTest.txt" ,(origin (method url-fetch) - (uri (string-append "http://www.unicode.org/Public/9.0.0/ucd/" + (uri (string-append "https://www.unicode.org/Public/12.1.0/ucd/" "NormalizationTest.txt")) (sha256 - (base32 "1fxrz0bilsbwl685336aqi88k62i6nqhm62rvy4zhg3bcm4dhj1d")))) + (base32 "0hb97k9xv1lr847hwz0719ksqy39s47xw6k01dgs1368jdibvawc")))) ("GraphemeBreakTest.txt" ,(origin (method url-fetch) - (uri (string-append "http://www.unicode.org/Public/9.0.0/ucd/" + (uri (string-append "https://www.unicode.org/Public/12.1.0/ucd/" "auxiliary/GraphemeBreakTest.txt")) (sha256 - (base32 "0qbhyhmf0778lc2hcwlpizrvmdxwpk959v2q2wb8abv09ba7wvn7")))))) + (base32 "0qc90ppmrwfn3y9cdn8jcjrn7qpdf0fhxkwh945yp4rvh37mbgcm")))) + + ;; For tests. + ("perl" ,perl))) (arguments '(#:make-flags (list "CC=gcc" (string-append "prefix=" (assoc-ref %outputs "out"))) @@ -180,7 +183,8 @@ libenca and several charset conversion libraries and tools.") '("NormalizationTest.txt" "GraphemeBreakTest.txt")) (substitute* "data/GraphemeBreakTest.txt" (("÷") "/") - (("×") "+"))))))) + (("×") "+")) + #t))))) (home-page "https://juliastrings.github.io/utf8proc/") (synopsis "C library for processing UTF-8 Unicode data") (description "utf8proc is a small C library that provides Unicode -- cgit 1.4.1 From 6edbf8de877651495c7b9f6f41e921c501f3c9fb Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Fri, 21 Jun 2019 10:18:19 +0200 Subject: gnu: vulkan-headers: Update to 1.1.108. * gnu/packages/vulkan.scm (vulkan-headers): Update to 1.1.108. * gnu/packages/vulkan.scm (vulkan-loader): Update hash. [arguments]: Add 'copy-headers1 and 'copy-headers2 phases. * gnu/packages/vulkan.scm (vulkan-tools): Update hash. --- gnu/packages/vulkan.scm | 30 ++++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 6b151f0a31..86a0d711eb 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -159,7 +159,7 @@ interpretation of the specifications for these languages.") (define-public vulkan-headers (package (name "vulkan-headers") - (version "1.1.107") + (version "1.1.108") (source (origin (method git-fetch) @@ -169,7 +169,7 @@ interpretation of the specifications for these languages.") (file-name (git-file-name name version)) (sha256 (base32 - "0kyf83n6fghqmjj5jbwhy08yq5sl598qnmw3kbavrnw9avqqm0c4")))) + "0slj10rfcrd6xpfhm13x3q1ldz2qhk9p64cw0nw0qlmy40k1iy83")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; No tests. @@ -193,7 +193,7 @@ interpretation of the specifications for these languages.") (file-name (git-file-name name version)) (sha256 (base32 - "1p64k9x5r7nsrs0cn6d61687xbajqvsm78xk6j85w9wfin5dxs30")))) + "08v3sdkr0aii4a9jqhyz8j3x42zm2qswsiy6qsb47wz4bpi90zgy")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;FIXME: 23/39 tests fail. Try "tests/run_all_tests.sh". @@ -203,6 +203,28 @@ interpretation of the specifications for these languages.") (lambda* (#:key inputs #:allow-other-keys) ;; Remove lines trying to build in a git commit id. (substitute* "CMakeLists.txt" ((".*spirv_tools_commit_id.h.*") "")) + #t)) + ;; Make sure that the files needed for Mesa's Vulkan overlay are availabe. + (add-after 'unpack 'copy-headers1 + (lambda* (#:key outputs #:allow-other-keys) + (install-file "tests/layers/vk_layer_data.h" + (string-append (assoc-ref %outputs "out") + "/include/vulkan")) + (install-file "tests/layers/vk_layer_extension_utils.h" + (string-append (assoc-ref %outputs "out") + "/include/vulkan")) + (install-file "loader/vk_loader_platform.h" + (string-append (assoc-ref %outputs "out") + "/include/vulkan")) + #t)) + (add-after 'build 'copy-headers2 + (lambda* (#:key outputs #:allow-other-keys) + (install-file "vk_layer_dispatch_table.h" + (string-append (assoc-ref %outputs "out") + "/include/vulkan")) + (install-file "vk_dispatch_table_helper.h" + (string-append (assoc-ref %outputs "out") + "/include/vulkan")) #t))) #:configure-flags (list "-DBUILD_TESTS=OFF" ; FIXME: Needs 'googletest' submodule. @@ -244,7 +266,7 @@ and the ICD.") (file-name (git-file-name name version)) (sha256 (base32 - "1mak96jdg3wv043b4jxyv1fm2cz4nnallg0yb90my3yp5q64grrw")))) + "1azch34l9b57wxvh2k5vc0qzmhnapli3348wwhs04z6izszyz4kf")))) (build-system cmake-build-system) (inputs `(("glslang" ,glslang) -- cgit 1.4.1 From 301b2e74f986385664153e6e770e238b351f5cf0 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 26 Jun 2019 08:20:27 +0200 Subject: gnu: mesa: Update to 19.1.1. * gnu/packages/gl.scm (mesa): Update to 19.1.1. [native-inputs]: Add glslang, vulkan-headers, vulkan-loader for i686-linux and x86_64-linux. [arguments]: Enable "-Dvulkan-overlay-layer" configuration flag for i686-linux and x86_64-linux. --- gnu/packages/gl.scm | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 96e7fc7165..f0454a6fe3 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -46,6 +46,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages tls) #:use-module (gnu packages video) + #:use-module (gnu packages vulkan) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) @@ -223,7 +224,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "19.0.4") + (version "19.1.1") (source (origin (method url-fetch) @@ -235,7 +236,7 @@ also known as DXTn or DXTC) for Mesa.") version "/mesa-" version ".tar.xz"))) (sha256 (base32 - "0iyffj3xd7f0vsayirswh6aia37ba26hkihpz273hxwd8hpz7y9r")) + "10amy5sdmpjbskr3xazgk0jyli8xpgi0y1nsmjr76hx8nhb4n4bj")) (patches (search-patches "mesa-skip-disk-cache-test.patch")))) (build-system meson-build-system) @@ -269,6 +270,13 @@ also known as DXTn or DXTC) for Mesa.") `(("bison" ,bison) ("flex" ,flex) ("gettext" ,gettext-minimal) + ,@(match (%current-system) + ((or "x86_64-linux" "i686-linux") + `(("glslang" ,glslang) + ("vulkan-headers" ,vulkan-headers) + ("vulkan-loader" ,vulkan-loader))) + (_ + `())) ("pkg-config" ,pkg-config) ("python" ,python) ("python-mako" ,python-mako) @@ -305,6 +313,13 @@ also known as DXTn or DXTC) for Mesa.") (_ '("-Dvulkan-drivers=auto"))) + ;; Enable the Vulkan overlay layer on i686-linux and x86-64-linux. + ,@(match (%current-system) + ((or "x86_64-linux" "i686-linux") + '("-Dvulkan-overlay-layer=true")) + (_ + '(""))) + ;; Also enable the tests. "-Dbuild-tests=true" -- cgit 1.4.1 From c24b896365ebf0c783140e53e000305e682d18c5 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 26 Jun 2019 09:16:20 +0200 Subject: gnu: vulkan-headers: Update to 1.1.112. * gnu/packages/vulkan.scm (vulkan-headers): Update to 1.1.112. * gnu/packages/vulkan.scm (vulkan-loader): Update hash. * gnu/packages/vulkan.scm (vulkan-tools): Update hash. --- gnu/packages/vulkan.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 86a0d711eb..9fb780de77 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -159,7 +159,7 @@ interpretation of the specifications for these languages.") (define-public vulkan-headers (package (name "vulkan-headers") - (version "1.1.108") + (version "1.1.112") (source (origin (method git-fetch) @@ -169,7 +169,7 @@ interpretation of the specifications for these languages.") (file-name (git-file-name name version)) (sha256 (base32 - "0slj10rfcrd6xpfhm13x3q1ldz2qhk9p64cw0nw0qlmy40k1iy83")))) + "0iia2wlq38hvxwip6r3k5946ylrlk42fw50mhf0pdjxjh02p8zn5")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; No tests. @@ -193,7 +193,7 @@ interpretation of the specifications for these languages.") (file-name (git-file-name name version)) (sha256 (base32 - "08v3sdkr0aii4a9jqhyz8j3x42zm2qswsiy6qsb47wz4bpi90zgy")))) + "1819bgmpjlikcc25bkmwwb7mp1rlyrq2v74wybg1g40ix70v0m0d")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;FIXME: 23/39 tests fail. Try "tests/run_all_tests.sh". @@ -266,7 +266,7 @@ and the ICD.") (file-name (git-file-name name version)) (sha256 (base32 - "1azch34l9b57wxvh2k5vc0qzmhnapli3348wwhs04z6izszyz4kf")))) + "0an9hqvvpfmfld2pkszzwi7ccb9g2ijjqqzlj24dqg9kqnmcr3x4")))) (build-system cmake-build-system) (inputs `(("glslang" ,glslang) -- cgit 1.4.1 From 6ad087b82143e3eb4893bee76cfeba1e89b583ee Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Thu, 27 Jun 2019 13:26:42 +0200 Subject: gnu: mame: Update to 0.211. * gnu/packages/emulators.scm (mame): Update to 0.211. --- gnu/packages/emulators.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index a55e5b7a18..8d0162a2d1 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1191,7 +1191,7 @@ play them on systems for which they were never designed!") (define-public mame (package (name "mame") - (version "0.210") + (version "0.211") (source (origin (method git-fetch) @@ -1201,7 +1201,7 @@ play them on systems for which they were never designed!") (file-name (git-file-name name version)) (sha256 (base32 - "08c62mc8aajzh44q36qvmrcq404hdzh3i8wwdfnvn0c4w8dbf486")) + "0gbxgncbzmmplijg0c1ibwsb87fbmfvs1kjflh002yyx8yvfw83z")) (modules '((guix build utils))) (snippet ;; Remove bundled libraries. -- cgit 1.4.1 From bae0f8af21fafd222a31f84c0dd9aaefeed2370f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 27 Jun 2019 23:17:19 +0200 Subject: gnu: pigx-scrnaseq: Update to 0.0.8. * gnu/packages/bioinformatics.scm (pigx-scrnaseq): Update to 0.0.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 4f4d3d9839..03463cb530 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -12748,7 +12748,7 @@ methylation and segmentation.") (define-public pigx-scrnaseq (package (name "pigx-scrnaseq") - (version "0.0.7") + (version "0.0.8") (source (origin (method url-fetch) (uri (string-append "https://github.com/BIMSBbioinfo/pigx_scrnaseq/" @@ -12756,7 +12756,7 @@ methylation and segmentation.") "/pigx_scrnaseq-" version ".tar.gz")) (sha256 (base32 - "131zarirv16w8653m0d66jgjnwqfsxqc0hix0rypssz4d83bl51j")))) + "0zv0sc5amivxhb95vx2gfx6l9bh7n80fh7h47dalnwxxnfvnzai4")))) (build-system gnu-build-system) (arguments `(#:configure-flags -- cgit 1.4.1 From 9969b436af8c2892e59ed14ffe94905b6b18c005 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 27 Jun 2019 18:57:10 -0400 Subject: gnu: linux-libre@4.4: Update to 4.4.184. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.184. --- 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 079300cf6d..efb1c659f8 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -486,8 +486,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.183" - "1v21n5kwnv9n18gfp2dz9hsdkwmfwigalr82xsnwbzhs0x561bxx" + (make-linux-libre "4.4.184" + "05v295wk9fid17n5plkx6p9nwz6dvpcn2r7khwsq30sy3pg0vxv5" '("x86_64-linux" "i686-linux") #:configuration-file kernel-config #:extra-options -- cgit 1.4.1 From 1ad3e3f9f159d53e8ccbf4ca67afc10ae67428c5 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 27 Jun 2019 18:58:06 -0400 Subject: gnu: linux-libre@4.9: Update to 4.9.184. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.184. --- 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 efb1c659f8..7110fd9474 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -480,8 +480,8 @@ It has been modified to remove all non-free binary blobs.") %linux-libre-4.14-hash)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.183" - "1w3syih3fggwkpcl6zkmm9f6577r2jvack4br5ffccgcddkz52ia" + (make-linux-libre "4.9.184" + "0q3ggndwf0rwsb3xv33zl9awkd1803h2l9b4g6d6ps3f2sjxwxwa" '("x86_64-linux" "i686-linux") #:configuration-file kernel-config)) -- cgit 1.4.1 From fbb5b688b6258d40e91a34b52a402eea246210d3 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 27 Jun 2019 18:58:45 -0400 Subject: gnu: linux-libre@4.14: Update to 4.14.131. * gnu/packages/linux.scm (%linux-libre-4.14-version): Update to 4.14.131. (%linux-libre-4.14-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 7110fd9474..72b62faf42 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -466,8 +466,8 @@ It has been modified to remove all non-free binary blobs.") (make-linux-libre-headers %linux-libre-4.19-version %linux-libre-4.19-hash)) -(define %linux-libre-4.14-version "4.14.130") -(define %linux-libre-4.14-hash "1fk6ds0q2rykr6byvfass8f5a9k6qq9sk261wjcfp1gn8b9wmxws") +(define %linux-libre-4.14-version "4.14.131") +(define %linux-libre-4.14-hash "1qcf4cg83zpjirkj8l09y07x4zzskypngampvfw7zyazynwwgs1i") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version -- cgit 1.4.1 From 09debcf5aa84ef156158e3fd51a102e7331858be Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 28 Jun 2019 09:28:33 +0200 Subject: gnu: Add quazip. * gnu/packages/compression.scm (quazip): New variable. --- gnu/packages/compression.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 024025fe52..a6a2a04f6f 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -23,6 +23,7 @@ ;;; Copyright © 2018 Rutger Helling ;;; Copyright © 2018 Joshua Sierles, Nextjournal ;;; Copyright © 2018 Pierre Neidhardt +;;; Copyright © 2019 Nicolas Goaziou ;;; ;;; This file is part of GNU Guix. ;;; @@ -55,11 +56,13 @@ #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages curl) + #:use-module (gnu packages documentation) #:use-module (gnu packages file) #:use-module (gnu packages maths) #: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 tls) #:use-module (gnu packages valgrind) #:use-module (ice-9 match) @@ -1886,3 +1889,40 @@ compressor. UPX typically reduces the file size of programs and shared libraries by around 50%--70%, thus reducing disk space, network load times, download times, and other distribution and storage costs.") (license license:gpl2+))) + +(define-public quazip + (package + (name "quazip") + (version "0.8.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stachenov/quazip.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1g473gnsbkvxpsv8lbsmhspn7jnq86b05zzgqh11r581v8ndvz5s")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f)) ;no test + (native-inputs + `(("doxygen" ,doxygen))) + (inputs + `(("qtbase" ,qtbase) + ("zlib" ,zlib))) + (home-page "https://stachenov.github.io/quazip/index.html") + (synopsis "Qt/C++ wrapper for Minizip") + (description "QuaZIP is a simple C++ wrapper over Gilles Vollant's +ZIP/UNZIP package that can be used to access ZIP archives. It uses +Trolltech's Qt toolkit. + +QuaZIP allows you to access files inside ZIP archives using QIODevice +API, and that means that you can also use QTextStream, QDataStream or +whatever you would like to use on your zipped files. + +QuaZIP provides complete abstraction of the ZIP/UNZIP API, for both +reading from and writing to ZIP archives. ") + ;; Project is distributed under LGPL, but "quazip/z*" "quazip/unzip.*" are + ;; distributed under zlib terms. + (license (list license:lgpl2.1+ license:zlib)))) -- cgit 1.4.1 From 2668e06efdebd3779361ab885d2a32b03a805540 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 28 Jun 2019 09:29:13 +0200 Subject: gnu: krita: Update to 4.2.2. * gnu/packages/kde.scm (krita): Update to 4.2.2. [source]: Don't use NAME in source URI. [arguments]: Remove obsolete configure flags. [native-inputs]: Add pkg-config. [inputs]: Add quazip, reorder alphabetically. --- gnu/packages/kde.scm | 51 +++++++++++++++++++++++---------------------------- 1 file changed, 23 insertions(+), 28 deletions(-) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 2fce704901..31b3670079 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017, 2018 Mark Meyer ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018 Gábor Boskovits +;;; Copyright © 2019 Nicolas Goaziou ;;; ;;; This file is part of GNU Guix. ;;; @@ -319,29 +320,21 @@ plugins, as well as code to create plugins, or complete applications.") (define-public krita (package (name "krita") - (version "4.1.7.101") + (version "4.2.2") (source (origin (method url-fetch) (uri (string-append "mirror://kde/stable/krita/" (version-prefix version 3) - "/" name "-" version ".tar.gz")) + "/krita-" version ".tar.gz")) (sha256 (base32 - "0pvghb17vj3y19wa1n1zfg3yl5206ir3y45znrgdgdw076m5pjav")))) + "1pzk5bqp3kh22djhvsvmsc7ybirs4hsnkpg1y9677m2gxwbqnnps")))) (build-system cmake-build-system) (arguments `(#:tests? #f #:configure-flags - (list "-DBUILD_TESTING=OFF" "-DKDE4_BUILD_TESTS=OFF" - (string-append "-DWITH_FFTW3=" - (assoc-ref %build-inputs "fftw")) - (string-append "-DWITH_GSL=" - (assoc-ref %build-inputs "gsl")) - (string-append "-DWITH_LibRaw=" - (assoc-ref %build-inputs "libraw")) - (string-append "-DWITH_TIFF=" - (assoc-ref %build-inputs "libtiff")) + (list "-DBUILD_TESTING=OFF" (string-append "-DCMAKE_CXX_FLAGS=-I" (assoc-ref %build-inputs "ilmbase") "/include/OpenEXR")) @@ -366,14 +359,15 @@ plugins, as well as code to create plugins, or complete applications.") ("extra-cmake-modules" ,extra-cmake-modules) ("gettext-minimal" ,gettext-minimal) ("kitemmodels" ,kitemmodels) + ("pkg-config" ,pkg-config) ("qwt" ,qwt) ("vc" ,vc))) (inputs - `(("qtbase" ,qtbase) - ("qtdeclarative" ,qtdeclarative) - ("qtmultimedia" ,qtmultimedia) - ("qtx11extras" ,qtx11extras) - ("qtsvg" ,qtsvg) + `(("boost" ,boost) + ("exiv2" ,exiv2) + ("fftw" ,fftw) + ("gsl" ,gsl) + ("ilmbase" ,ilmbase) ("karchive" ,karchive) ("kcompletion" ,kcompletion) ("kconfig" ,kconfig) @@ -387,23 +381,24 @@ plugins, as well as code to create plugins, or complete applications.") ("kwidgetsaddons" ,kwidgetsaddons) ("kwindowsystem" ,kwindowsystem) ("kxmlgui" ,kxmlgui) - ("boost" ,boost) - ("exiv2" ,exiv2) ("lcms" ,lcms) - ("libpng" ,libpng) ("libjpeg-turbo" ,libjpeg-turbo) - ("zlib" ,zlib) + ("libpng" ,libpng) + ("libraw" ,libraw-0.18) + ("libtiff" ,libtiff) ("libx11" ,libx11) ("libxcb" ,libxcb) ("libxi" ,libxi) - ("fftw" ,fftw) - ("gsl" ,gsl) - ("poppler-qt5" ,poppler-qt5) - ("libraw" ,libraw-0.18) - ("libtiff" ,libtiff) + ("openexr" ,openexr) ("perl" ,perl) - ("ilmbase" ,ilmbase) - ("openexr" ,openexr))) + ("poppler-qt5" ,poppler-qt5) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtmultimedia" ,qtmultimedia) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("quazip" ,quazip) + ("zlib" ,zlib))) (home-page "https://krita.org") (synopsis "Digital painting application") (description -- cgit 1.4.1 From 5b786db86c12550cfbb7564b0d3472aa6401d4ec Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 28 Jun 2019 10:38:15 +0300 Subject: gnu: atlas: All phases return #t. * gnu/packages/maths.scm (atlas)[arguments]: Ensure all custom phases return #t. --- gnu/packages/maths.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f16e108656..5b31596041 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3369,13 +3369,15 @@ packages.") ;; Use `sh', not `/bin/sh'. (substitute* (find-files "." "Makefile|configure|SpewMakeInc\\.c") (("/bin/sh") - "sh")))) + "sh")) + #t)) ;; Fix /bin/sh in generated make files. (add-after 'configure 'fix-/bin/sh-in-generated-files (lambda _ (substitute* (find-files "." "^[Mm]ake\\.inc.*") (("/bin/sh") - "sh")))) + "sh")) + #t)) ;; ATLAS configure program does not accepts the default flags ;; passed by the 'gnu-build-system'. (replace 'configure -- cgit 1.4.1 From 458f410bc2d9a007101a699e3e91c1cdcf1bff89 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 28 Jun 2019 10:11:12 +0200 Subject: gnu: snap: Update to 5. * gnu/packages/education.scm (snap): Update to 5. --- gnu/packages/education.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index 98aaad7e63..2bb61a744a 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -250,17 +250,17 @@ easy.") (define-public snap (package (name "snap") - (version "4.2.2.9") + (version "5") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/jmoenig/Snap.git") - (commit version))) + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "07qyhh4f8gr1fqyvxa2i6lkzaaa0vl12yzllgp81rdil8z8bi976")))) + "0bh52n7nklaaq02qb56v7bvrslf047my6irl7g8h6xfjgw04yf20")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) -- cgit 1.4.1 From 9d83e60e515dcb452dd7f041722307ae6278e73c Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 28 Jun 2019 10:46:45 +0200 Subject: gnu: musescore: Update to 3.2. * gnu/packages/music.scm (musescore): Update to 3.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 ca9cbd3343..4a852b091d 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -3718,7 +3718,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke (define-public musescore (package (name "musescore") - (version "3.1") + (version "3.2") (source (origin (method git-fetch) (uri (git-reference @@ -3727,7 +3727,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke (file-name (git-file-name name version)) (sha256 (base32 - "07xkn8gnnqzhj9cn1li5qpm2rfm86bmxbbfd76i1jx4v999icn0j")) + "0719p4hjlq7skga8q4hvnd5w33vhrd1a1aygvqm9pn4na02zazy6")) (modules '((guix build utils))) (snippet ;; Un-bundle OpenSSL and remove unused libraries. -- cgit 1.4.1 From 4ee2cce327ce839f471fb28a095fe7299ed822af Mon Sep 17 00:00:00 2001 From: "Jakob L. Kreuze" Date: Thu, 27 Jun 2019 20:41:05 -0400 Subject: gnu: Add beets-bandcamp. * gnu/packages/music.scm (beets-bandcamp): New variable. Signed-off-by: Tobias Geerinckx-Rice --- gnu/packages/music.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 4a852b091d..0a0677161a 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2018 Björn Höfling ;;; Copyright © 2019 Gabriel Hondet ;;; Copyright © 2019 Timotej Lazar +;;; Copyright © 2019 Jakob L. Kreuze ;;; ;;; This file is part of GNU Guix. ;;; @@ -129,6 +130,7 @@ #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) #:use-module (gnu packages tex) + #:use-module (gnu packages time) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) #:use-module (gnu packages video) @@ -2816,6 +2818,33 @@ metadata as it goes using the MusicBrainz database. Then it provides a variety of tools for manipulating and accessing your music.") (license license:expat))) +(define-public beets-bandcamp + (package + (name "beets-bandcamp") + (version "0.1.3") + (source (origin + (method url-fetch) + (uri (pypi-uri "beets-bandcamp" version)) + (sha256 + (base32 + "04awg0zdhhg5h510fc1p3qkvr2l1qm6nf85hlr9z8im8a7xlka0i")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; there are no tests + (propagated-inputs + `(("beets" ,beets) + ("python-isodate" ,python-isodate))) + (inputs + `(("python-beautifulsoup4" ,python-beautifulsoup4) + ("python-requests" ,python-requests) + ("python-six" ,python-six))) + (home-page "https://github.com/unrblt/beets-bandcamp") + (synopsis "Bandcamp plugin for beets") + (description + "This plugin for beets automatically obtains tag data from @uref{Bandcamp, +https://bandcamp.com/}. It's also capable of getting song lyrics and album art +using the beets FetchArt plugin.") + (license license:gpl2))) + (define-public milkytracker (package (name "milkytracker") -- cgit 1.4.1 From 4289d1d71cbbb1895354ec3b0cb8c99a4ce9f9be Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 28 Jun 2019 20:53:20 +0200 Subject: gnu: python-llvmlite: Build against LLVM 7. This is a follow-up to commit c5296e205b65a9b53553cf45be2ab223d5e82df5. * gnu/packages/llvm.scm (llvm-7, clang-runtime-7, clang-7): New public variables. (python-llvmlite)[inputs]: Inherit from LLVM-7 instead of LLVM. --- gnu/packages/llvm.scm | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 732ffc0823..faf9e40049 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -371,6 +371,28 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.") "0svk1f70hvpwrjp6x5i9kqwrqwxnmcrw5s7f4cxyd100mdd12k08" #:patches '("clang-7.0-libc-search-path.patch"))) +(define-public llvm-7 + (package + (inherit llvm) + (version "7.0.1") + (source (origin + (method url-fetch) + (uri (string-append "https://llvm.org/releases/" + version "/llvm-" version ".src.tar.xz")) + (sha256 + (base32 + "16s196wqzdw4pmri15hadzqgdi926zln3an2viwyq0kini6zr3d3")))))) + +(define-public clang-runtime-7 + (clang-runtime-from-llvm + llvm-7 + "065ybd8fsc4h2hikbdyricj6pyv4r7r7kpcikhb2y5zf370xybkq")) + +(define-public clang-7 + (clang-from-llvm llvm-7 clang-runtime + "067lwggnbg0w1dfrps790r5l6k8n5zwhlsw7zb6zvmfpwpfn4nx4" + #:patches '("clang-7.0-libc-search-path.patch"))) + (define-public llvm-6 (package (inherit llvm) @@ -542,9 +564,9 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.") (inputs `(("llvm" ,(package - (inherit llvm) + (inherit llvm-7) (source (origin - (inherit (package-source llvm)) + (inherit (package-source llvm-7)) (patches (list (origin -- cgit 1.4.1 From aff3ecbfda62c39fe3414565b6366621b9aef978 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:18:54 +0200 Subject: gnu: r-dose: Update to 3.10.2. * gnu/packages/bioconductor.scm (r-dose): Update to 3.10.2. --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 92f2e4f3ab..331dee069b 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2915,14 +2915,14 @@ to multiple hypothesis correction.") (define-public r-dose (package (name "r-dose") - (version "3.10.1") + (version "3.10.2") (source (origin (method url-fetch) (uri (bioconductor-uri "DOSE" version)) (sha256 (base32 - "0ab7mgj42fg6608qkciyqivr1n8s8r5ibvp0z3jfclrnyx6cl0w1")))) + "06jm1mnfd92s84f21562vsmj6jfkravfqf4lcxx2lk7s4ll66znj")))) (properties `((upstream-name . "DOSE"))) (build-system r-build-system) (propagated-inputs -- cgit 1.4.1 From 3c944fdace6ae388eb01c45f5975aec1d2f693b6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:05 +0200 Subject: gnu: r-genomicscores: Update to 1.8.1. * gnu/packages/bioconductor.scm (r-genomicscores): Update to 1.8.1. --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 331dee069b..f08b48aeb0 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -3406,14 +3406,14 @@ type and symbol colors.") (define-public r-genomicscores (package (name "r-genomicscores") - (version "1.8.0") + (version "1.8.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicScores" version)) (sha256 (base32 - "17bd61icfycc61b5dij1968h026w7vfd9miwdcbppak1j6s08idq")))) + "0xgv5h6hwr4p2p05z8vzhivy97gfirm4rj1ihb5c8fhgc5vp85dy")))) (properties `((upstream-name . "GenomicScores"))) (build-system r-build-system) (propagated-inputs -- cgit 1.4.1 From 3e265d968bf998335583d2b82a056b7652f7a97c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:19 +0200 Subject: gnu: r-rsubread: Update to 1.34.4. * gnu/packages/bioconductor.scm (r-rsubread): Update to 1.34.4. --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index f08b48aeb0..29dac5b0f1 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -4749,14 +4749,14 @@ annotations.") (define-public r-rsubread (package (name "r-rsubread") - (version "1.34.2") + (version "1.34.4") (source (origin (method url-fetch) (uri (bioconductor-uri "Rsubread" version)) (sha256 (base32 - "0bsrw61wcav0q22c5m6gr0vn1f3c3ld8gxj730wcab6dj196z6q3")))) + "1230p8nsakifmpsqfiaj8rpm7npa8ab903mfjmayfa71n6yzvcbs")))) (properties `((upstream-name . "Rsubread"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) -- cgit 1.4.1 From 0253b5d881e78c4920e6dc149d35cc6b2f92db05 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:27 +0200 Subject: gnu: r-systempiper: Update to 1.18.2. * gnu/packages/bioinformatics.scm (r-systempiper): Update to 1.18.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 03463cb530..8d6351501b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6960,14 +6960,14 @@ ungapped alignment formats.") (define-public r-systempiper (package (name "r-systempiper") - (version "1.18.1") + (version "1.18.2") (source (origin (method url-fetch) (uri (bioconductor-uri "systemPipeR" version)) (sha256 (base32 - "1k57zyzagd7g7wl38l3cn9csylykxcllbfvyq7dz8pvihgkn0ssi")))) + "18s5vpmw766pm64w7bwwfgpsv9yzhwclf0ya1rpqz8qslw7bbdjf")))) (properties `((upstream-name . "systemPipeR"))) (build-system r-build-system) (propagated-inputs -- cgit 1.4.1 From f0c244229a3cb6e9d92c178c88a7526f697f1589 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:33 +0200 Subject: gnu: r-edger: Update to 3.26.5. * gnu/packages/bioinformatics.scm (r-edger): Update to 3.26.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 8d6351501b..1a08947c29 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7467,13 +7467,13 @@ names in their natural, rather than lexicographic, order.") (define-public r-edger (package (name "r-edger") - (version "3.26.4") + (version "3.26.5") (source (origin (method url-fetch) (uri (bioconductor-uri "edgeR" version)) (sha256 (base32 - "013glavk6a1wpyq3q35k343bdp6rf27w30q59i4kf47rp3i37g15")))) + "0iba4krz30dx5b0s89n5cfkwn64867s7vmvvfqms9lbcr4kj439m")))) (properties `((upstream-name . "edgeR"))) (build-system r-build-system) (propagated-inputs -- cgit 1.4.1 From 888085c36cb4eb82517c5d3ccf9285dd9b7df20b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:41 +0200 Subject: gnu: r-biomart: Update to 2.40.1. * gnu/packages/bioinformatics.scm (r-biomart): Update to 2.40.1. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1a08947c29..2c1149955d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7667,13 +7667,13 @@ annotation data packages using SQLite data storage.") (define-public r-biomart (package (name "r-biomart") - (version "2.40.0") + (version "2.40.1") (source (origin (method url-fetch) (uri (bioconductor-uri "biomaRt" version)) (sha256 (base32 - "1i457s91bn7n60bzw3zk4h64xgmawlrr6bq4z4cb7jlm04hdq8qm")))) + "1abl0c4qbhfqf9ixdp74183phm7s8rszrr5ldczm59b8vyng8rhx")))) (properties `((upstream-name . "biomaRt"))) (build-system r-build-system) -- cgit 1.4.1 From c40bba2b366b0aab4033854325414d3d0de27490 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:46 +0200 Subject: gnu: r-genomicalignments: Update to 1.20.1. * gnu/packages/bioinformatics.scm (r-genomicalignments): Update to 1.20.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 2c1149955d..763879d768 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7859,13 +7859,13 @@ samples.") (define-public r-genomicalignments (package (name "r-genomicalignments") - (version "1.20.0") + (version "1.20.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicAlignments" version)) (sha256 (base32 - "13zw7bb1adgph9bf9b9y725nr0320b80y70p2yqf3bjb2klfxf55")))) + "0s3q97q4pgj5jwn4g95al44rahrwsncsf45v01v4071msx3xmjxq")))) (properties `((upstream-name . "GenomicAlignments"))) (build-system r-build-system) -- cgit 1.4.1 From dafd290d2160f30a07a118fb5b16767ec18ae867 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:52 +0200 Subject: gnu: r-genomicfeatures: Update to 1.36.3. * gnu/packages/bioinformatics.scm (r-genomicfeatures): Update to 1.36.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 763879d768..e8af330c84 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7939,13 +7939,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.36.1") + (version "1.36.3") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "02psq3jfgghdydwbydb1j792lvfg44l5npb44mx8d54ckr8658dd")))) + "0zkd57i5qjxsravv0gbyckc0wrnqzgxd61ibh3jmhmrccrr9ihn3")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) -- cgit 1.4.1 From 7f17e60ab76e6e107fee6884be83443da0b69370 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:19:59 +0200 Subject: gnu: r-tximport: Update to 1.12.3. * gnu/packages/bioinformatics.scm (r-tximport): Update to 1.12.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 e8af330c84..2aacd38cd8 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -8562,13 +8562,13 @@ factors bound at the specific regions.") (define-public r-tximport (package (name "r-tximport") - (version "1.12.1") + (version "1.12.3") (source (origin (method url-fetch) (uri (bioconductor-uri "tximport" version)) (sha256 (base32 - "1nq8v1sgkm2ssmvr2z3qw0zsk7zy0dzb95g1mfs8fkpjqh3nqq5s")))) + "070nx0blvvfhsnkbb5j899wy7dgalrh4xfcciir9l2xl67lna1zf")))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/tximport") (synopsis "Import and summarize transcript-level estimates for gene-level analysis") -- cgit 1.4.1 From 5b86bcfa684eeaa5f881c9fb2549f826f991fe4b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:20:09 +0200 Subject: gnu: r-phangorn: Update to 2.5.5. * gnu/packages/bioinformatics.scm (r-phangorn): Update to 2.5.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 2aacd38cd8..8c140a1d24 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -10693,14 +10693,14 @@ memory usage and processing time is minimized.") (define-public r-phangorn (package (name "r-phangorn") - (version "2.5.3") + (version "2.5.5") (source (origin (method url-fetch) (uri (cran-uri "phangorn" version)) (sha256 (base32 - "1bv86yfk5r015s7ij6v4zz7bagwrw9m13yfs5853drxb19d5h1m3")))) + "0ihkaykqjmf80d8wrk3saphxvnv58zma6pd13633bd3cwanc33f5")))) (build-system r-build-system) (propagated-inputs `(("r-ape" ,r-ape) -- cgit 1.4.1 From 4ae5f18a25381da80c9094bc53837eb8155c6a0f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:20:15 +0200 Subject: gnu: r-abbyyr: Update to 0.5.5. * gnu/packages/cran.scm (r-abbyyr): Update to 0.5.5. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index e0f2b3bb87..69c659a58d 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1115,14 +1115,14 @@ and several other tools.") (define-public r-abbyyr (package (name "r-abbyyr") - (version "0.5.4") + (version "0.5.5") (source (origin (method url-fetch) (uri (cran-uri "abbyyR" version)) (sha256 (base32 - "1jh1c1ad6mgw7brdh2isnza1qpjlfxnqr7jl76yd93axyfl76xjx")))) + "1vldnd3dg89aj6a73nhirirqddbfdrnzhb5m3679i60sark8nk6r")))) (properties `((upstream-name . "abbyyR"))) (build-system r-build-system) (propagated-inputs -- cgit 1.4.1 From 1f7e8d49c3082d955dd402ad878bb3da3b9739b4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:20:21 +0200 Subject: gnu: r-performanceanalytics: Update to 1.5.3. * gnu/packages/cran.scm (r-performanceanalytics): Update to 1.5.3. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 69c659a58d..0beec3c510 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -3196,14 +3196,14 @@ simplifying cross-class interoperability.") (define-public r-performanceanalytics (package (name "r-performanceanalytics") - (version "1.5.2") + (version "1.5.3") (source (origin (method url-fetch) (uri (cran-uri "PerformanceAnalytics" version)) (sha256 (base32 - "01bgm57z079g6r505w3bj293zkbd49fwa8sg55z87vizwavipml6")))) + "0jhjldwyxwq7a47zmk5y1jjck7hvq92p8rlgjvdfy51hx2dmlqqd")))) (properties `((upstream-name . "PerformanceAnalytics"))) (build-system r-build-system) -- cgit 1.4.1 From db794146ac8429cb6edc0135331a1bbb8b8da54b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:20:26 +0200 Subject: gnu: r-xfun: Update to 0.8. * gnu/packages/cran.scm (r-xfun): Update to 0.8. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 0beec3c510..c71d19c0b8 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -3617,14 +3617,14 @@ iVAT).") (define-public r-xfun (package (name "r-xfun") - (version "0.7") + (version "0.8") (source (origin (method url-fetch) (uri (cran-uri "xfun" version)) (sha256 (base32 - "1gllyyjhkvswcwa15h1f3kb1l1drs2ifpxy4jjanmmhaj7wcmvy9")))) + "05jlbi5byqpw0fkhmmxqglnaxh9gwbcigx77kcpw1pkxnpwfry62")))) (build-system r-build-system) (home-page "https://github.com/yihui/xfun") (synopsis "Miscellaneous functions") -- cgit 1.4.1 From f5ec882390c4f8f8b5f64bf715c0b9e93f3fde76 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:20:31 +0200 Subject: gnu: r-tinytex: Update to 0.14. * gnu/packages/cran.scm (r-tinytex): Update to 0.14. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c71d19c0b8..cd59a4658e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -3761,14 +3761,14 @@ terminals.") (define-public r-tinytex (package (name "r-tinytex") - (version "0.13") + (version "0.14") (source (origin (method url-fetch) (uri (cran-uri "tinytex" version)) (sha256 (base32 - "1bbphyrbk2rnyi0jhw4hj2w4l84kyhb0km901qd5qnnl0cy6dzvb")))) + "0aab7ybc6kkxxk3lzdmbla8zcpp6nmlahchc33miv28cmnqw363w")))) (build-system r-build-system) (propagated-inputs `(("r-xfun" ,r-xfun))) -- cgit 1.4.1 From 22b2d8b97f84c8ccfdd2d40aba54e4d2e58f12bc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:20:38 +0200 Subject: gnu: r-quantmod: Update to 0.4-15. * gnu/packages/cran.scm (r-quantmod): Update to 0.4-15. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index cd59a4658e..0e63faec1c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4009,14 +4009,14 @@ Fisher's method), and Sidak correction.") (define-public r-quantmod (package (name "r-quantmod") - (version "0.4-14") + (version "0.4-15") (source (origin (method url-fetch) (uri (cran-uri "quantmod" version)) (sha256 (base32 - "1csljagnpkr1mmc18h70b64zbyj07kx972nip9dng39jfg7ilnyr")))) + "0lyzaf5ypk93v6zj9gdghy05cc7cxgn9yasv1apx5r6qsjcfgwky")))) (build-system r-build-system) (propagated-inputs `(("r-curl" ,r-curl) -- cgit 1.4.1 From dacf52e0a3c4a9b80e429b8ed4b7f25d38c3ed36 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:20:44 +0200 Subject: gnu: r-cgdsr: Update to 1.3.0. * gnu/packages/cran.scm (r-cgdsr): Update to 1.3.0. [propagated-inputs]: Add r-httr. --- gnu/packages/cran.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 0e63faec1c..f856ee8572 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4418,17 +4418,18 @@ fit into memory.") (define-public r-cgdsr (package (name "r-cgdsr") - (version "1.2.10") + (version "1.3.0") (source (origin (method url-fetch) (uri (cran-uri "cgdsr" version)) (sha256 (base32 - "1xyhw7mhmjichr1l6f9y1qvfj9wm87kfbm87ji7lcwf36gxh5g23")))) + "07yc819hkabpzzh0g0cbqza6bcfy67b2marrzz1lj97f9iba78ja")))) (build-system r-build-system) (propagated-inputs - `(("r-r-methodss3" ,r-r-methodss3) + `(("r-httr" ,r-httr) + ("r-r-methodss3" ,r-r-methodss3) ("r-r-oo" ,r-r-oo))) (home-page "https://github.com/cBioPortal/cgdsr") (synopsis "R-based API for accessing the MSKCC Cancer Genomics Data Server") -- cgit 1.4.1 From a4bc73b2361ef2197925893a5e1b699fd30e6bd0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:24:42 +0200 Subject: gnu: r-ellipsis: Update to 0.2.0. * gnu/packages/cran.scm (r-ellipsis): Update to 0.2.0. [propagated-inputs]: Add r-rlang. --- gnu/packages/cran.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index f856ee8572..89d06d7f3e 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -97,15 +97,17 @@ the system clipboards.") (define-public r-ellipsis (package (name "r-ellipsis") - (version "0.1.0") + (version "0.2.0") (source (origin (method url-fetch) (uri (cran-uri "ellipsis" version)) (sha256 (base32 - "0pw94qpg81xmsdsagpqxddv7m2cmdszmyyq99dk3caqqj01z7wg6")))) + "0hdk79q4wn5nq52p8qd65kqz81l0b8gfzsbzyvmfais0p24qclib")))) (build-system r-build-system) + (propagated-inputs + `(("r-rlang" ,r-rlang))) (home-page "https://github.com/hadley/ellipsis") (synopsis "Tools for working with additional arguments") (description -- cgit 1.4.1 From 0ccb34584c29400412626fd135111143d46d9a2f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:24:56 +0200 Subject: gnu: r-ggpubr: Update to 0.2.1. * gnu/packages/cran.scm (r-ggpubr): Update to 0.2.1. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 89d06d7f3e..ade55a374a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5388,14 +5388,14 @@ and adds the annotation to the plot.") (define-public r-ggpubr (package (name "r-ggpubr") - (version "0.2") + (version "0.2.1") (source (origin (method url-fetch) (uri (cran-uri "ggpubr" version)) (sha256 (base32 - "0rkpcjb1x7lvhj68aam5airbi534jqyiq12x5xk40a25iifhghq6")))) + "0a4dv6a752hwvc7l31xs7bgqhfzfdy94xp6wgwaxf5dxm46na7k1")))) (build-system r-build-system) (propagated-inputs `(("r-cowplot" ,r-cowplot) -- cgit 1.4.1 From 0d2e266220d8fbbf3128c9f24885c1144999c792 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:03 +0200 Subject: gnu: r-officer: Update to 0.3.5. * gnu/packages/cran.scm (r-officer): Update to 0.3.5. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ade55a374a..8d18e6d2a3 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5722,14 +5722,14 @@ references and Rd files.") (define-public r-officer (package (name "r-officer") - (version "0.3.4") + (version "0.3.5") (source (origin (method url-fetch) (uri (cran-uri "officer" version)) (sha256 (base32 - "1m4b3mcn5j5q3nq0jp1nranh4rdb8vxcpabn6ryqk9m6709fvhjz")))) + "005kaxjhr40shpav2pg7s7gj8f49579r7rbgwlncbwv16nn0rbbg")))) (build-system r-build-system) (propagated-inputs `(("r-base64enc" ,r-base64enc) -- cgit 1.4.1 From c3447a92eeae4944e58336d796f864b541c0c979 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:09 +0200 Subject: gnu: r-prediction: Update to 0.3.14. * gnu/packages/cran.scm (r-prediction): Update to 0.3.14. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8d18e6d2a3..578d5c8fa0 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5886,14 +5886,14 @@ parse and convert strings into cases like snake or camel among others.") (define-public r-prediction (package (name "r-prediction") - (version "0.3.6.2") + (version "0.3.14") (source (origin (method url-fetch) (uri (cran-uri "prediction" version)) (sha256 (base32 - "0kx7xbm2j6c8h6gk1iig4vfpg877psg16j74hl7zc2mv40sc6dy5")))) + "0awlq5lxfia6m2b91w73rksp93rbwv5gwqb36wbji4rgq41rzbrx")))) (build-system r-build-system) (propagated-inputs `(("r-data-table" ,r-data-table))) -- cgit 1.4.1 From 36c5f86fababce0dd9b88a836edc2e10d149728b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:14 +0200 Subject: gnu: r-sjmisc: Update to 2.8.1. * gnu/packages/cran.scm (r-sjmisc): Update to 2.8.1. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 578d5c8fa0..a10e8e5605 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -5965,14 +5965,14 @@ vice versa), or to deal with multiple declared missing values.") (define-public r-sjmisc (package (name "r-sjmisc") - (version "2.8.0") + (version "2.8.1") (source (origin (method url-fetch) (uri (cran-uri "sjmisc" version)) (sha256 (base32 - "0pgavkygsj8fa591pmasx78b4gd32sf2pa067yqvi82xha7dj5k4")))) + "1a30n3cyd9h9ilaiai9ywy53f03nikafc47rvpws2c2vghc8mbn7")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) -- cgit 1.4.1 From c46a16407b6d9a1011d869137d4706fbc84e2f6f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:23 +0200 Subject: gnu: r-flextable: Update to 0.5.5. * gnu/packages/cran.scm (r-flextable): Update to 0.5.5. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a10e8e5605..bf19c6e9db 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6042,14 +6042,14 @@ functions.") (define-public r-flextable (package (name "r-flextable") - (version "0.5.4") + (version "0.5.5") (source (origin (method url-fetch) (uri (cran-uri "flextable" version)) (sha256 (base32 - "0h6ylgz1mn61d2kh1bym8hfl3r7nf4z092lmjsaav3h1ki3avrnl")))) + "1q6x9mfk5gikqjbbra1dn8hs1rq5ws99jdjav3m113gx9f2j5yxh")))) (build-system r-build-system) (propagated-inputs `(("r-base64enc" ,r-base64enc) -- cgit 1.4.1 From 56ab7acb96a9b8e0442871a2a54cbd77b2d553dd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:28 +0200 Subject: gnu: r-ggstance: Update to 0.3.2. * gnu/packages/cran.scm (r-ggstance): Update to 0.3.2. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index bf19c6e9db..60117399ff 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6642,13 +6642,13 @@ and coverage methods to tune the choice of threshold.") (define-public r-ggstance (package (name "r-ggstance") - (version "0.3.1") + (version "0.3.2") (source (origin (method url-fetch) (uri (cran-uri "ggstance" version)) (sha256 - (base32 "0v7f3xdaaridw6d4jvnsfwxmpjrasvx5vl555wsrn50aah17fkvh")))) + (base32 "078ih9s5b0xzf582qg0vjnxvg5qad5ms1v2vdd062ckahi8zz1r8")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) -- cgit 1.4.1 From 992e03d2099f8229d3cd3e0b71f0aca1d5afe043 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:33 +0200 Subject: gnu: r-emmeans: Update to 1.3.5.1. * gnu/packages/cran.scm (r-emmeans): Update to 1.3.5.1. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 60117399ff..5fac4f593f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7697,14 +7697,14 @@ Hothorn, Westfall, 2010, CRC Press).") (define-public r-emmeans (package (name "r-emmeans") - (version "1.3.5") + (version "1.3.5.1") (source (origin (method url-fetch) (uri (cran-uri "emmeans" version)) (sha256 (base32 - "0zyink60132f2a0491a94bf67hq8a0bwmw5wn19l0ms8iyiml9d2")))) + "0rgzjvmp3yqhwgfg96v17wi8gbafzbrmz134shj2jsf5bsmw6vbj")))) (build-system r-build-system) (propagated-inputs `(("r-estimability" ,r-estimability) -- cgit 1.4.1 From a634a76a063462a459adaefcebf06b54656c7c3f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:39 +0200 Subject: gnu: r-bayestestr: Update to 0.2.2. * gnu/packages/cran.scm (r-bayestestr): Update to 0.2.2. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5fac4f593f..286be35249 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -7929,14 +7929,14 @@ differentiation.") (define-public r-bayestestr (package (name "r-bayestestr") - (version "0.2.0") + (version "0.2.2") (source (origin (method url-fetch) (uri (cran-uri "bayestestR" version)) (sha256 (base32 - "0729j4fdxkkvmh99nmny38dywidzgmipdjqbi2ljxygsn4jg7ysy")))) + "09r654lrhwwnshn5h2s2fbx3c8wigv3j4sva5hmfnkwjg8cclhd9")))) (properties `((upstream-name . "bayestestR"))) (build-system r-build-system) (propagated-inputs -- cgit 1.4.1 From da4754a3b17728b9a270fc7188714318f26c9efb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:45 +0200 Subject: gnu: r-remotes: Update to 2.1.0. * gnu/packages/cran.scm (r-remotes): Update to 2.1.0. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 286be35249..c24309f7a8 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -8212,14 +8212,14 @@ more information about packages, and where they were installed from.") (define-public r-remotes (package (name "r-remotes") - (version "2.0.4") + (version "2.1.0") (source (origin (method url-fetch) (uri (cran-uri "remotes" version)) (sha256 (base32 - "1jbn4kjimcr82zv5lnqxqa2487a96vn6jxf7wc6gnpxr6k06d61p")))) + "19v8dmnk9l4i9m64p7zgmj7y1vhnnwhi5kyn0k5d034zzkvchi49")))) (build-system r-build-system) (home-page "https://github.com/r-lib/remotes#readme") (synopsis "R package installation from remote repositories") -- cgit 1.4.1 From 9f84c9e843ba024b2c40ddab00fd37677c4018e0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:51 +0200 Subject: gnu: r-rgl: Update to 0.100.24. * gnu/packages/cran.scm (r-rgl): Update to 0.100.24. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c24309f7a8..fe2e280828 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -8725,14 +8725,14 @@ Bioconductor packages.") (define-public r-rgl (package (name "r-rgl") - (version "0.100.19") + (version "0.100.24") (source (origin (method url-fetch) (uri (cran-uri "rgl" version)) (sha256 (base32 - "09bhvx8aq104yzysfgd7wlnq4vrvmnd4jzgj0c32whjfal10fqsh")))) + "0nm3iyvhhmh0zlywkfmrq3vyh8z1l296xxfmcky0ifd2qnysfcqj")))) (build-system r-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit 1.4.1 From 93e72161ae1d6d41a245625e8ac9863d8f5a8a5c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:25:56 +0200 Subject: gnu: r-rnifti: Update to 0.11.0. * gnu/packages/cran.scm (r-rnifti): Update to 0.11.0. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index fe2e280828..51cb9b3d71 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -9558,14 +9558,14 @@ Touzet and Varre (2007).") (define-public r-rnifti (package (name "r-rnifti") - (version "0.10.0") + (version "0.11.0") (source (origin (method url-fetch) (uri (cran-uri "RNifti" version)) (sha256 (base32 - "07sfzps4yg5zdhbxh6i4rbjvbjvvf2d8i9jcf64ywbmi557sw1zv")))) + "0zs8ffa6gpi9cygxk7xjin6k3vpvfgb540a506zlk50bf6kc5nlf")))) (properties `((upstream-name . "RNifti"))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) -- cgit 1.4.1 From 36ff60f539530110b3362a8a90184382e4db4274 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:01 +0200 Subject: gnu: r-bootstrap: Update to 2019.6. * gnu/packages/cran.scm (r-bootstrap): Update to 2019.6. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 51cb9b3d71..98f85d043c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -10593,14 +10593,14 @@ for association and heterogeneity.") (define-public r-bootstrap (package (name "r-bootstrap") - (version "2017.2") + (version "2019.6") (source (origin (method url-fetch) (uri (cran-uri "bootstrap" version)) (sha256 (base32 - "08lmsy7k8wsgv89yc904c6fidcymr1ma2ry4fl0p69p21v4iiwa4")))) + "1546jqhhw5h177ii8jkdikyd26rv6gwkav816np1zks4p7zgsljj")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) (home-page "https://cran.r-project.org/web/packages/bootstrap") -- cgit 1.4.1 From d42fb7d2931e3bc52ea25eb0aa017de6295e2b72 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:12 +0200 Subject: gnu: r-future-apply: Update to 1.3.0. * gnu/packages/cran.scm (r-future-apply): Update to 1.3.0. --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 98f85d043c..e307d2d57c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -11003,14 +11003,14 @@ the local machine to, say, distributed processing on a remote compute cluster.") (define-public r-future-apply (package (name "r-future-apply") - (version "1.2.0") + (version "1.3.0") (source (origin (method url-fetch) (uri (cran-uri "future.apply" version)) (sha256 (base32 - "00ma43ma3byrf9vfqqn9g8sn18c71ryhk7lpza5h7817f1kibw1h")))) + "0wd3bh114zkvrqlpn8gqz4ix1igr9hr8x72h2g00a7mqkfjfqx33")))) (properties `((upstream-name . "future.apply"))) (build-system r-build-system) (propagated-inputs -- cgit 1.4.1 From 2c4b38002eeb4f73136a3179920608bbce7ae3d8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:18 +0200 Subject: gnu: r-cluster: Update to 2.1.0. * gnu/packages/statistics.scm (r-cluster): Update to 2.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 21fe65a08d..c1349a2cca 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -460,14 +460,14 @@ k-nearest neighbour, Learning Vector Quantization and Self-Organizing Maps.") (define-public r-cluster (package (name "r-cluster") - (version "2.0.9") + (version "2.1.0") (source (origin (method url-fetch) (uri (cran-uri "cluster" version)) (sha256 (base32 - "1bg5dvs4bzj0rp75jpxaklz12rvyh5w99h7zkvfgpgn86ljg1rlf")))) + "055af3yz2biqbsbwm4arwr1yqnj4gicpzv2i6dbfl5pnz2z5byga")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) -- cgit 1.4.1 From 45ad3fa9e169a012e4ba17f58bced44ddbff7d21 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:23 +0200 Subject: gnu: r-gdtools: Update to 0.1.9. * gnu/packages/statistics.scm (r-gdtools): Update to 0.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 c1349a2cca..cd6b7ff792 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1198,14 +1198,14 @@ agnes cluster diagrams.") (define-public r-gdtools (package (name "r-gdtools") - (version "0.1.8") + (version "0.1.9") (source (origin (method url-fetch) (uri (cran-uri "gdtools" version)) (sha256 (base32 - "1ayy0s699ghaz34lklvcskfwman3x2n2772s5sa5x9k9xgsnxwcl")))) + "0w4fihf52q5qxxk0lg36x6yvjjl8vw66y60ncdjs5fvnxqn5z2vb")))) (build-system r-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit 1.4.1 From ef558bcfc5bb94090d4e1e8688c96e1c594f88ee Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:28 +0200 Subject: gnu: r-rlang: Update to 0.4.0. * gnu/packages/statistics.scm (r-rlang): Update to 0.4.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 cd6b7ff792..e50202c866 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1651,13 +1651,13 @@ defined in different packages.") (define-public r-rlang (package (name "r-rlang") - (version "0.3.4") + (version "0.4.0") (source (origin (method url-fetch) (uri (cran-uri "rlang" version)) (sha256 (base32 - "1pks7d2xavzgaxqrnk3f79qsmv4wqv93f8991jv93pnb1mxpyijf")))) + "038mmbmklw17ncgz53vrdx2506c1jj6di3y165bbx2sl2yia8j4p")))) (build-system r-build-system) (home-page "http://rlang.tidyverse.org") (synopsis "Functions for base types, core R and Tidyverse features") -- cgit 1.4.1 From 0b17f1d1dd0659e304cc81b441a98ae8cddf5891 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:33 +0200 Subject: gnu: r-dbplyr: Update to 1.4.2. * gnu/packages/statistics.scm (r-dbplyr): Update to 1.4.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 e50202c866..c6110a8084 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1730,14 +1730,14 @@ database.") (define-public r-dbplyr (package (name "r-dbplyr") - (version "1.4.1") + (version "1.4.2") (source (origin (method url-fetch) (uri (cran-uri "dbplyr" version)) (sha256 (base32 - "15fs66qq2p20gi3y2jlcsw27ach8rwkkkgr1mz2qbiyddbsjks6g")))) + "1q2dflr88s5a1amzfld3087q422vf70052qn84zyd8895kdg10xp")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) -- cgit 1.4.1 From 5eddf1e2913477ed87c4e9b4f71f33b545e4cee9 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:40 +0200 Subject: gnu: r-plotrix: Update to 3.7-6. * gnu/packages/statistics.scm (r-plotrix): Update to 3.7-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 c6110a8084..b6c789abde 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2537,13 +2537,13 @@ disk (or a connection).") (define-public r-plotrix (package (name "r-plotrix") - (version "3.7-5") + (version "3.7-6") (source (origin (method url-fetch) (uri (cran-uri "plotrix" version)) (sha256 (base32 - "0k6ivryac1k81z2dijjds376a9jxwk8rf5g48snj67cnjffkybxj")))) + "0ijfjlr7ls5hvfyzdmwab6bx0w3nvp0c8fgynj4355cj8mbzgmc3")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/plotrix") (synopsis "Various plotting functions") -- cgit 1.4.1 From 30f7acdb6b576323a213610b2f949d9233be7906 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:45 +0200 Subject: gnu: r-segmented: Update to 1.0-0. * gnu/packages/statistics.scm (r-segmented): 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 b6c789abde..e9a83802be 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3004,14 +3004,14 @@ statements.") (define-public r-segmented (package (name "r-segmented") - (version "0.5-4.0") + (version "1.0-0") (source (origin (method url-fetch) (uri (cran-uri "segmented" version)) (sha256 (base32 - "0wa0xjda2j33284jkp5hj1wdjysc5f4paj1s1lcixgawj4ckmxkz")))) + "1igsfkffpa60zn6j45lhw1zgr5pz6rjknv2f3sylnx5l9fdwibgf")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/segmented") (synopsis "Regression models with breakpoints estimation") -- cgit 1.4.1 From fad641716ef9a5f2f98df600bd8f74ba7c71ac08 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:49 +0200 Subject: gnu: r-mvtnorm: Update to 1.0-11. * gnu/packages/statistics.scm (r-mvtnorm): Update to 1.0-11. --- 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 e9a83802be..a609f02c67 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3622,13 +3622,13 @@ vignettes.") (define-public r-mvtnorm (package (name "r-mvtnorm") - (version "1.0-10") + (version "1.0-11") (source (origin (method url-fetch) (uri (cran-uri "mvtnorm" version)) (sha256 (base32 - "04md0wmqgif24g0a4hx19ifn4kk8nx10986vf2d9vascig6ikpri")))) + "0lkjph661blc1nwfzg9w48a60wvj6ffh4zjwlisvracsx4nn2883")))) (build-system r-build-system) (inputs `(("gfortran" ,gfortran))) -- cgit 1.4.1 From 666a5a649c336fd7d35ef3ef9a437ebd4d7e32df Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:26:54 +0200 Subject: gnu: r-mclust: Update to 5.4.4. * gnu/packages/statistics.scm (r-mclust): Update to 5.4.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 a609f02c67..abae2f9591 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4748,14 +4748,14 @@ models, generalized linear models and model-based clustering.") (define-public r-mclust (package (name "r-mclust") - (version "5.4.3") + (version "5.4.4") (source (origin (method url-fetch) (uri (cran-uri "mclust" version)) (sha256 (base32 - "18x5ych9zi3y87rxi4pf6f23sl2918dp9xxpw1pqa7p7drw817p6")))) + "039ymr57bq5327gypizw0v2qb81j6bkqhjdh8yj23qa5sh51phyc")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) -- cgit 1.4.1 From 73a29d39b3244d4c410c654cf85f0ff5a8c60b28 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:27:04 +0200 Subject: gnu: r-fpc: Update to 2.2-3. * gnu/packages/statistics.scm (r-fpc): Update to 2.2-3. [propagated-inputs]: Remove r-mvtnorm. --- 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 abae2f9591..f4ea1148bc 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -4967,14 +4967,14 @@ of the points.") (define-public r-fpc (package (name "r-fpc") - (version "2.2-2") + (version "2.2-3") (source (origin (method url-fetch) (uri (cran-uri "fpc" version)) (sha256 (base32 - "1lzqxi2jzc753j4356b949isx2nccd32mw2ch665q78nxccp145n")))) + "1dy3pla4jjgs46izqg2kxajlxr80sbr9896jbzb1qszrdx7af041")))) (build-system r-build-system) (propagated-inputs `(("r-class" ,r-class) @@ -4984,7 +4984,6 @@ of the points.") ("r-kernlab" ,r-kernlab) ("r-mass" ,r-mass) ("r-mclust" ,r-mclust) - ("r-mvtnorm" ,r-mvtnorm) ("r-prabclus" ,r-prabclus) ("r-robustbase" ,r-robustbase))) (home-page "https://cran.r-project.org/web/packages/fpc") -- cgit 1.4.1 From 3d0c9ff83ec82a404bd25e270dc1262169af0c7e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 29 Jun 2019 01:27:18 +0200 Subject: gnu: r-quantreg: Update to 5.41. * gnu/packages/statistics.scm (r-quantreg): Update to 5.41. --- 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 f4ea1148bc..31dff49daa 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5137,14 +5137,14 @@ using modular prediction and response module classes.") (define-public r-quantreg (package (name "r-quantreg") - (version "5.40") + (version "5.41") (source (origin (method url-fetch) (uri (cran-uri "quantreg" version)) (sha256 (base32 - "1srni6lkgvy44ljxndz2j9ca702z2wy81f6z6mbbi6h06ni11qw6")))) + "110ax3ngn6i94h7iw7ha67kfsmj94hycp7lk62nmyvkp34vpfykh")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) -- cgit 1.4.1 From f309420b2d6c2e20422eef89ade2b7837fe3801c Mon Sep 17 00:00:00 2001 From: Ivan Petkov Date: Mon, 17 Jun 2019 19:36:10 -0700 Subject: gnu: rust: remove debug-info patch thanks to newer gdb version * gnu/local.mk: (dist_patch_DATA): Delete %D%/packages/patches/rust-1.30-gdb-llvm.patch * gnu/packages/rust.scm: (rust-1.30): Delete patch overrides. (rust-1.31): Delete patch overrides. --- gnu/local.mk | 1 - gnu/packages/rust.scm | 11 +---------- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/gnu/local.mk b/gnu/local.mk index f5d53b49b8..8f63d0bd14 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1267,7 +1267,6 @@ dist_patch_DATA = \ %D%/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch \ %D%/packages/patches/rust-bootstrap-stage0-test.patch \ %D%/packages/patches/rust-coresimd-doctest.patch \ - %D%/packages/patches/rust-1.30-gdb-llvm.patch \ %D%/packages/patches/rust-reproducible-builds.patch \ %D%/packages/patches/rxvt-unicode-escape-sequences.patch \ %D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \ diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 9c8088b2f7..76a38736ac 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -871,10 +871,7 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (delete-file-recursively "src/llvm-emscripten") (delete-file-recursively "src/tools/clang") (delete-file-recursively "src/tools/lldb") - #t)) - (patches (map search-patch '("rust-1.25-accept-more-detailed-gdb-lines.patch" - "rust-1.30-gdb-llvm.patch" - "rust-reproducible-builds.patch"))))) + #t)))) (inputs ;; Use LLVM 7.0 (alist-replace "llvm" (list llvm) @@ -918,12 +915,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" "0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli"))) (package (inherit base-rust) - (source - (origin - (inherit (package-source base-rust)) - (patches (map search-patch '("rust-1.25-accept-more-detailed-gdb-lines.patch" - "rust-1.30-gdb-llvm.patch" - "rust-reproducible-builds.patch"))))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:phases phases) -- cgit 1.4.1 From f676b2a45fd3f91eb12006adb957ff55bfe8514b Mon Sep 17 00:00:00 2001 From: Ivan Petkov Date: Mon, 17 Jun 2019 19:39:08 -0700 Subject: gnu: rust: downgrade older versions to llvm@6 * gnu/packages/rust.scm: (rust-1.30): Remove llvm override. --- gnu/packages/rust.scm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 76a38736ac..c83c8a6784 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -872,10 +872,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (delete-file-recursively "src/tools/clang") (delete-file-recursively "src/tools/lldb") #t)))) - (inputs - ;; Use LLVM 7.0 - (alist-replace "llvm" (list llvm) - (package-inputs base-rust))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:phases phases) -- cgit 1.4.1 From f5de2b9a3e0070ec431e01c279192e6d93d6a1c8 Mon Sep 17 00:00:00 2001 From: Ivan Petkov Date: Mon, 17 Jun 2019 22:10:52 -0700 Subject: gnu: rust: use llvm@8 * gnu/packages/llvm.scm (llvm): Rename to... (llvm-8): ...this. (llvm): New variable. * gnu/packages/rust.scm (rust)[inputs]: Use llvm-8 --- gnu/packages/llvm.scm | 4 +++- gnu/packages/rust.scm | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index faf9e40049..0315740bcd 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -48,7 +48,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages xml)) -(define-public llvm +(define-public llvm-8 (package (name "llvm") (version "8.0.0") @@ -99,6 +99,8 @@ languages is in development. The compiler infrastructure includes mirror sets of programming tools as well as libraries with equivalent functionality.") (license license:ncsa))) +(define-public llvm llvm-8) + (define* (clang-runtime-from-llvm llvm hash #:optional (patches '())) (package diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index c83c8a6784..9444d8be73 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -1056,6 +1056,9 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" "0bbizy6b7002v1rdhrxrf5gijclbyizdhkglhp81ib3bf5x66kas"))) (package (inherit base-rust) + (inputs + (alist-replace "llvm" (list llvm-8) + (package-inputs base-rust))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:phases phases) -- cgit 1.4.1 From d1555f34c0e35763f6de995db1106f30c6011f6f Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Fri, 28 Jun 2019 22:44:59 -0500 Subject: gnu: Add Perl Clone::Choose. * gnu/packages/perl.scm (perl-clone-choose): New variable. --- gnu/packages/perl.scm | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 909b7fa78a..d0df091494 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus -;;; Copyright © 2015, 2016, 2017 Eric Bavier +;;; Copyright © 2015, 2016, 2017, 2019 Eric Bavier ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2016, 2018 Mark H Weaver ;;; Copyright © 2016 Jochem Raat @@ -1283,6 +1283,32 @@ objects.") (home-page "https://metacpan.org/release/Clone") (license (package-license perl)))) +(define-public perl-clone-choose + (package + (name "perl-clone-choose") + (version "0.010") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/H/HE/HERMES/" + "Clone-Choose-" version ".tar.gz")) + (sha256 + (base32 + "0cin2bjn5z8xhm9v4j7pwlkx88jnvz8al0njdjwyvs6fb0glh8sn")))) + (build-system perl-build-system) + (native-inputs + `(("perl-clone" ,perl-clone) + ("perl-clone-pp" ,perl-clone-pp) + ("perl-test-without-module" ,perl-test-without-module))) + (propagated-inputs + `(("perl-module-runtime" ,perl-module-runtime))) + (home-page "https://metacpan.org/release/Clone-Choose") + (synopsis "Choose appropriate Perl @code{clone} utility") + (description "This @code{Clone::Choose} module checks several different +modules which provide a @code{clone()} function and selects an appropriate +one.") + (license perl-license))) + (define-public perl-clone-pp (package (name "perl-clone-pp") -- cgit 1.4.1 From 30833b1397eeb0e997a0be1d1424dc9b499124d5 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Fri, 28 Jun 2019 22:45:48 -0500 Subject: gnu: stow: Update to 2.3.0. * gnu/packages/package-management.scm (stow): Update to 2.3.0. [propagated-inputs]: New field. --- gnu/packages/package-management.scm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index e1e7d6a5a0..e4820f403b 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2018 Julien Lepiller ;;; Copyright © 2018, 2019 Rutger Helling ;;; Copyright © 2018 Sou Bunnbu -;;; Copyright © 2018 Eric Bavier +;;; Copyright © 2018, 2019 Eric Bavier ;;; Copyright © 2019 Efraim Flashner ;;; Copyright © 2019 Vagrant Cascadian ;;; Copyright © 2019 Jonathan Brielmaier @@ -466,14 +466,14 @@ sub-directory.") (define-public stow (package (name "stow") - (version "2.2.2") + (version "2.3.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/stow/stow-" version ".tar.gz")) (sha256 (base32 - "1pvky9fayms4r6fhns8jd0vavszd7d979w62vfd5n88v614pdxz2")))) + "0h8qr2rxsrkg6d8jxjk68r23jgn1dxdxyp4bnzzinpa8sjhfl905")))) (build-system gnu-build-system) (inputs `(("perl" ,perl))) @@ -482,6 +482,10 @@ sub-directory.") ("perl-test-output" ,perl-test-output) ("perl-capture-tiny" ,perl-capture-tiny) ("perl-io-stringy" ,perl-io-stringy))) + (propagated-inputs + `(("perl-clone-choose" ,perl-clone-choose) + ("perl-clone" ,perl-clone) + ("perl-hash-merge" ,perl-hash-merge))) (home-page "https://www.gnu.org/software/stow/") (synopsis "Managing installed software packages") (description -- cgit 1.4.1 From ad9baf38cef5cb637fbb541bca472f1d64950520 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 29 Jun 2019 01:45:17 +0200 Subject: gnu: di: Update to 4.47.1. * gnu/packages/admin.scm (di): Update to 4.47.1. --- gnu/packages/admin.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 3d8c247f57..411be40f5b 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2220,19 +2220,19 @@ a new command using the matched rule, and runs it.") (define-public di (package (name "di") - (version "4.47") + (version "4.47.1") (source (origin (method url-fetch) (uri (string-append "https://gentoo.com/di/di-" version ".tar.gz")) (sha256 - (base32 "0zlapxlzjizwzwa8xwrwibhcbkh0wx7n74gvjpp6wlwq7cgiq0xm")))) + (base32 "1bdbl9k3gqf4h6g21difqc0w17pjid6r587y19wi37vx36aava7f")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; obscure test failures. + `(#:tests? #f ; obscure test failures #:phases (modify-phases %standard-phases - (delete 'configure) + (delete 'configure) ; no configure script (add-before 'build 'setup-environment (lambda* (#:key outputs #:allow-other-keys) (setenv "CC" "gcc") -- cgit 1.4.1 From a3efe269b5e343c6b2593997a6f3fdc8d96976b8 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 29 Jun 2019 06:27:04 +0200 Subject: gnu: flashrom: Update to 1.1. * gnu/packages/flashing-tools.scm (flashrom): Update to 1.1. --- gnu/packages/flashing-tools.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm index f0547a1a8a..a8d6cfd5aa 100644 --- a/gnu/packages/flashing-tools.scm +++ b/gnu/packages/flashing-tools.scm @@ -48,7 +48,7 @@ (define-public flashrom (package (name "flashrom") - (version "1.0.1") + (version "1.1") (source (origin (method url-fetch) (uri (string-append @@ -56,7 +56,7 @@ version ".tar.bz2")) (sha256 (base32 - "0i6yrrl69hrqmwd7azj7x3j46m0qpvzmk3b5basym7mnlpfzhyfm")))) + "06afq680n9p34hi3vrkn12vd1pfyq2062db9qqbi4hi21k3skbdf")))) (build-system gnu-build-system) (inputs `(("dmidecode" ,dmidecode) ("pciutils" ,pciutils) -- cgit 1.4.1 From 414c4de15de50c9bbc1d7159418f52fdcc6dab13 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 28 Jun 2019 16:13:44 +0200 Subject: guix-install.sh: Don't authorise hydra.gnu.org. * etc/guix-install.sh (sys_authorize_build_farms): Authorise only ci.guix.gnu.org and make all references to it singular. --- etc/guix-install.sh | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/etc/guix-install.sh b/etc/guix-install.sh index a0777c8bfe..604c683202 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -362,13 +362,11 @@ sys_enable_guix_daemon() } sys_authorize_build_farms() -{ # authorize the public keys of the two build farms +{ # authorize the public key of the build farm while true; do - read -p "Permit downloading pre-built package binaries from the project's build farms? (yes/no) " yn + read -p "Permit downloading pre-built package binaries from the project's build farm? (yes/no) " yn case $yn in - [Yy]*) guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/hydra.gnu.org.pub" && - _msg "${PAS}Authorized public key for hydra.gnu.org"; - guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/ci.guix.gnu.org.pub" && + [Yy]*) guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/ci.guix.gnu.org.pub" && _msg "${PAS}Authorized public key for ci.guix.gnu.org"; break;; [Nn]*) _msg "${INF}Skipped authorizing build farm public keys" -- cgit 1.4.1 From 44b5f28a77d94609cc43d713c46f6c1bdc4e380b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 28 Jun 2019 16:19:15 +0200 Subject: doc: Remove references to hydra.gnu.org. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * doc/contributing.texi (Packaging Guidelines, Submitting Patches): Replace hydra URL with @value{SUBSTITUTE-SERVER}. * doc/guix.texi (Official Substitute Server): Remove ‘hydra’ @cindex. (Substitute Server Authorization): Remove note about hydra.gnu.org.pub. --- doc/contributing.texi | 5 ++--- doc/guix.texi | 7 ------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 6770fae222..e00634eed4 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -281,8 +281,7 @@ Once your package builds correctly, please send us a patch (@pxref{Submitting Patches}). Well, if you need help, we will be happy to help you too. Once the patch is committed in the Guix repository, the new package automatically gets built on the supported platforms by -@url{http://hydra.gnu.org/jobset/gnu/master, our continuous integration -system}. +@url{@value{SUBSTITUTE-SERVER}, our continuous integration system}. @cindex substituter Users can obtain the new package definition simply by running @@ -893,7 +892,7 @@ changes). This branch is intended to be merged in @code{master} every 2.5 months or so. @end table -All these branches are @uref{https://hydra.gnu.org/project/gnu, +All these branches are @uref{@value{SUBSTITUTE-SERVER}, tracked by our build farm} and merged into @code{master} once everything has been successfully built. This allows us to fix issues before they hit users, and to reduce the window during which pre-built diff --git a/doc/guix.texi b/doc/guix.texi index f0d148ace0..f6be4c6117 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3134,7 +3134,6 @@ also result from derivation builds, can be available as substitutes. @node Official Substitute Server @subsection Official Substitute Server -@cindex hydra @cindex build farm The @code{@value{SUBSTITUTE-SERVER}} server is a front-end to an official build farm that builds packages from Guix continuously for some @@ -3186,12 +3185,6 @@ Then, you can run something like this: # guix archive --authorize < @var{prefix}/share/guix/@value{SUBSTITUTE-SERVER}.pub @end example -@quotation Note -Similarly, the @file{hydra.gnu.org.pub} file contains the public key -of an independent build farm also run by the project, reachable at -@indicateurl{https://mirror.hydra.gnu.org}. -@end quotation - Once this is in place, the output of a command like @code{guix build} should change from something like: -- cgit 1.4.1 From 70d6ec3e4facb2eed4b8842031ebd2683a8cfd3b Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 28 Jun 2019 16:20:08 +0200 Subject: doc: Correct the software behind ci.guix.gnu.org. * doc/guix.texi (Invoking guix publish): It runs Cuirass. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index f6be4c6117..1794c6cd5a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9604,7 +9604,7 @@ their store with others, who can then use it as a substitute server When @command{guix publish} runs, it spawns an HTTP server which allows anyone with network access to obtain substitutes from it. This means that any machine running Guix can also act as if it were a build farm, -since the HTTP interface is compatible with Hydra, the software behind +since the HTTP interface is compatible with Cuirass, the software behind the @code{@value{SUBSTITUTE-SERVER}} build farm. For security, each substitute is signed, allowing recipients to check -- cgit 1.4.1 From 3a8bfebed94ba295432da8304b7ffb4a611ef761 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 28 Jun 2019 16:33:01 +0200 Subject: etc: Remove hydra.gnu.org.pub key. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/substitutes/hydra.gnu.org.pub: Delete file. * guix/self.scm (miscellaneous-files): Don't install it. * Makefile.am (dist_pkgdata_DATA): Remove it. * gnu/services/base.scm (%default-authorized-guix-keys): Likewise. (hydra-key-authorization): Rename to… (substitute-key-authorization): …this. Adjust only call site. --- Makefile.am | 3 +-- etc/substitutes/hydra.gnu.org.pub | 6 ------ gnu/services/base.scm | 7 +++---- gnu/system/install.scm | 4 ++-- guix/self.scm | 3 --- 5 files changed, 6 insertions(+), 17 deletions(-) delete mode 100644 etc/substitutes/hydra.gnu.org.pub diff --git a/Makefile.am b/Makefile.am index 80be73e4bf..8adf23c699 100644 --- a/Makefile.am +++ b/Makefile.am @@ -489,9 +489,8 @@ check-system: $(GOBJECTS) -e '(@@ (run-system-tests) run-system-tests)' \ $(top_srcdir)/build-aux/run-system-tests.scm -# Public key used to sign substitutes from hydra.gnu.org & co. +# Public keys used to sign substitutes. dist_pkgdata_DATA = \ - etc/substitutes/hydra.gnu.org.pub \ etc/substitutes/berlin.guixsd.org.pub \ etc/substitutes/ci.guix.gnu.org.pub \ etc/substitutes/ci.guix.info.pub diff --git a/etc/substitutes/hydra.gnu.org.pub b/etc/substitutes/hydra.gnu.org.pub deleted file mode 100644 index 6db597ed4d..0000000000 --- a/etc/substitutes/hydra.gnu.org.pub +++ /dev/null @@ -1,6 +0,0 @@ - (public-key - (rsa - (n #00DB1634E3D9DFAC97AE4734DAE968CCB15EE4815C82BDC254883DBB49FE1EF32268E82D4BBE0E35298C481C9DA1551642FAFF05AEC1A60712F1BB4BE7D25D7EFF7A4F89704A5A9AC232870CB9F2476C3B538A0E990A8825DEB73081D317001FB8A188600F2FEF5F5F570E857F3EE4355077A3C3918ED72723A56BA55C466D400658974D7DAD1F6B7B63C192B9C2704D98BBFF1C3BD5B8EF11A8ADC83ACB8FD8E9F1E792FDAD262415D13F2DEE55F330908CFDA9C3C8C32B64F7DD088457D34F445E2E2C83C6D680549DC9B6E6573B89496567204ED285E67A279F2F667080BA941D80D015CE87B0FB6A91A99CECC7D91D2D210B00E4B6E611DA51DB008F1DFE3FCAC6B27393FA781D45F9A15FC7B8785A3E86BA6592B2916CA22CF1E40FC85F85CACA590461154F58F3580B16398908EF32076F411299C28727C94D88B6A618F84DD73AEBED8270BCB6690928CB1BF250C35E1F6BF3B1B30D05BA246ECE8F69D9065DE26F4B3E0D814D70A9C27CB5B7B050C9090590D3A9EF83374F2643E5446FBD39DDB124DBF6DFDAA6D18E2560AD0CBFA11C959C9B7316BF19963A191967054E9FD97DC14D71082B30B1C90A46E8996682474C3BCB51BA0882958897B6DD35E41B5174D0A6BCDE97B89043E95BD1B70DE61DA666893B417196A180005466BC3A742FDF04E89B04460E3E6BC72E7F1B5FEA5B3092FEE551A3C447C12E104E65#) - (e #010001#) - ) - ) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 3c1827fb70..537d30add5 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1533,7 +1533,7 @@ GID." (('gnu rest ...) #t) (rest #f))) -(define (hydra-key-authorization keys guix) +(define (substitute-key-authorization keys guix) "Return a gexp with code to register KEYS, a list of files containing 'guix archive' public keys, with GUIX." (define default-acl @@ -1570,8 +1570,7 @@ archive' public keys, with GUIX." (define %default-authorized-guix-keys ;; List of authorized substitute keys. - (list (file-append guix "/share/guix/hydra.gnu.org.pub") - (file-append guix "/share/guix/berlin.guixsd.org.pub"))) + (list (file-append guix "/share/guix/berlin.guixsd.org.pub"))) (define-record-type* guix-configuration make-guix-configuration @@ -1688,7 +1687,7 @@ archive' public keys, with GUIX." ;; Optionally authorize substitute server keys. (if authorize-key? - (hydra-key-authorization keys guix) + (substitute-key-authorization keys guix) #~#f)))) (define* (references-file item #:optional (name "references")) diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 453b0bdd6d..912096027f 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -330,8 +330,8 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m ;; The usual services. (syslog-service) - ;; The build daemon. Register the hydra.gnu.org key as trusted. - ;; This allows the installation process to use substitutes by + ;; The build daemon. Register the default substitute server key(s) + ;; as trusted to allow the installation process to use substitutes by ;; default. (service guix-service-type (guix-configuration (authorize-key? #t))) diff --git a/guix/self.scm b/guix/self.scm index 69e2381a8c..be90b60863 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -577,9 +577,6 @@ load path." ,(file-append* source "/etc/completion/zsh/_guix")) ("share/fish/vendor_completions.d/guix.fish" ,(file-append* source "/etc/completion/fish/guix.fish")) - ("share/guix/hydra.gnu.org.pub" - ,(file-append* source - "/etc/substitutes/hydra.gnu.org.pub")) ("share/guix/berlin.guixsd.org.pub" ,(file-append* source "/etc/substitutes/berlin.guixsd.org.pub")) -- cgit 1.4.1 From 87a90486ca63939d0ef73bdc8e9a26fef03afccb Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 28 Jun 2019 16:24:44 +0200 Subject: download: Remove hydra from content-addressed URL list * guix/build/download-nar.scm (urls-for-item): Remove mirror.hydra.gnu.org. * guix/download.scm (%content-addressed-mirrors): Likewise. --- guix/build/download-nar.scm | 6 +++--- guix/download.scm | 1 - 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/guix/build/download-nar.scm b/guix/build/download-nar.scm index 681f22238d..cb146038ad 100644 --- a/guix/build/download-nar.scm +++ b/guix/build/download-nar.scm @@ -42,10 +42,10 @@ "Return the fallback nar URL for ITEM--e.g., \"/gnu/store/cabbag3…-foo-1.2-checkout\"." ;; Here we hard-code nar URLs without checking narinfos. That's probably OK - ;; though. + ;; though. Use berlin.guixsd.org instead of its ci.guix.gnu.org front end to + ;; avoid sending these requests to CDN providers without user consent. ;; TODO: Use HTTPS? The downside is the extra dependency. - (let ((bases '("http://mirror.hydra.gnu.org/guix" - "http://berlin.guixsd.org")) + (let ((bases '("http://berlin.guixsd.org")) (item (basename item))) (append (map (cut string-append <> "/nar/gzip/" item) bases) (map (cut string-append <> "/nar/" item) bases)))) diff --git a/guix/download.scm b/guix/download.scm index cd5d61cd13..fe680be4a2 100644 --- a/guix/download.scm +++ b/guix/download.scm @@ -394,7 +394,6 @@ '(guix base16) '(bytevector->base16-string)) (list (guix-publish "ci.guix.gnu.org") - (guix-publish "mirror.hydra.gnu.org") (lambda (file algo hash) ;; 'tarballs.nixos.org' supports several algorithms. (string-append "https://tarballs.nixos.org/" -- cgit 1.4.1 From bdb51ed6d16c8fb3f934991f991ca44fdbac715e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 29 Jun 2019 21:18:50 +0300 Subject: gnu: stow: Update license information. * gnu/packages/package-management.scm (stow)[license]: Update to gpl3+. --- 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 e4820f403b..ca360b3884 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -494,7 +494,7 @@ of data and makes them appear to be merged into the same directory. It is typically used for managing software packages installed from source, by letting you install them apart in distinct directories and then create symlinks to the files in a common directory such as /usr/local.") - (license license:gpl2+))) + (license license:gpl3+))) (define-public rpm (package -- cgit 1.4.1 From 55d1d9eb2f0051404d0562622d5d85b701f5a973 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jun 2019 19:07:40 +0200 Subject: gnu: gstreamer: Fix buffer offset problem. * gnu/packages/patches/gstreamer-buffer-reset-offset.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gstreamer.scm (gstreamer)[source](patches): New field. [arguments]: Do not disable any tests. --- gnu/local.mk | 1 + gnu/packages/gstreamer.scm | 15 +----- .../patches/gstreamer-buffer-reset-offset.patch | 59 ++++++++++++++++++++++ 3 files changed, 62 insertions(+), 13 deletions(-) create mode 100644 gnu/packages/patches/gstreamer-buffer-reset-offset.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8f63d0bd14..0f4cb2a6e4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -901,6 +901,7 @@ dist_patch_DATA = \ %D%/packages/patches/guile-relocatable.patch \ %D%/packages/patches/guile-rsvg-pkgconfig.patch \ %D%/packages/patches/guile-emacs-fix-configure.patch \ + %D%/packages/patches/gstreamer-buffer-reset-offset.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/gstreamer.scm b/gnu/packages/gstreamer.scm index 2a818e078c..13c2c2fc27 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -110,6 +110,7 @@ arrays of data.") (uri (string-append "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-" version ".tar.xz")) + (patches (search-patches "gstreamer-buffer-reset-offset.patch")) (sha256 (base32 "003wy1p1in85p9sr5jsyhbnwqaiwz069flwkhyx7qhxy31qjz3hf")))) @@ -119,19 +120,7 @@ arrays of data.") `(#:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") - "/share/gtk-doc/html")) - - ,@(if (not (target-64bit?)) - ;; Skip test that fails on 32-bit systems: - ;; . - `(#:phases (modify-phases %standard-phases - (add-before 'check 'disable-gstbufferpool-test - (lambda _ - (substitute* "tests/check/Makefile" - (("^[[:blank:]]+gst/gstbufferpool.*$") - "")) - #t)))) - '()))) + "/share/gtk-doc/html")))) (propagated-inputs `(("glib" ,glib))) ; required by gstreamer-1.0.pc. (native-inputs `(("bison" ,bison) diff --git a/gnu/packages/patches/gstreamer-buffer-reset-offset.patch b/gnu/packages/patches/gstreamer-buffer-reset-offset.patch new file mode 100644 index 0000000000..024892a60f --- /dev/null +++ b/gnu/packages/patches/gstreamer-buffer-reset-offset.patch @@ -0,0 +1,59 @@ +Fix a buffer offset problem in GStreamer 1.16. Initially reported by Mark H. +Weaver in . + +See also . + +From 1734c9fc1a4f99b165383ae1eb02f04e0844a00c Mon Sep 17 00:00:00 2001 +From: Nicolas Dufresne +Date: Sat, 29 Jun 2019 09:22:05 -0400 +Subject: [PATCH] bufferpool: Fix the buffer size reset code + +The offset in gst_buffer_resize() is additive. So to move back the +offset to zero, we need to pass the opposite of the current offset. This +was raised through the related unit test failingon 32bit as on 64bit +the alignment padding was enough to hide the issue. The test was +modified to also fail on 64bit. This patch will remove spurious +assertions like: + + assertion 'bufmax >= bufoffs + offset + size' failed + +Fixes #316 +--- + gst/gstbufferpool.c | 7 +++++-- + tests/check/gst/gstbufferpool.c | 2 +- + 2 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/gst/gstbufferpool.c b/gst/gstbufferpool.c +index e5c7a5872..619860e63 100644 +--- a/gst/gstbufferpool.c ++++ b/gst/gstbufferpool.c +@@ -1222,8 +1222,11 @@ default_reset_buffer (GstBufferPool * pool, GstBuffer * buffer) + GST_BUFFER_OFFSET_END (buffer) = GST_BUFFER_OFFSET_NONE; + + /* if the memory is intact reset the size to the full size */ +- if (!GST_BUFFER_FLAG_IS_SET (buffer, GST_BUFFER_FLAG_TAG_MEMORY)) +- gst_buffer_resize (buffer, 0, pool->priv->size); ++ if (!GST_BUFFER_FLAG_IS_SET (buffer, GST_BUFFER_FLAG_TAG_MEMORY)) { ++ gsize offset; ++ gst_buffer_get_sizes (buffer, &offset, NULL); ++ gst_buffer_resize (buffer, -offset, pool->priv->size); ++ } + + /* remove all metadata without the POOLED flag */ + gst_buffer_foreach_meta (buffer, remove_meta_unpooled, pool); +diff --git a/tests/check/gst/gstbufferpool.c b/tests/check/gst/gstbufferpool.c +index f0c3c8d8e..dd9b2dc03 100644 +--- a/tests/check/gst/gstbufferpool.c ++++ b/tests/check/gst/gstbufferpool.c +@@ -190,7 +190,7 @@ GST_START_TEST (test_buffer_modify_discard) + gst_buffer_pool_acquire_buffer (pool, &buf, NULL); + buffer_track_destroy (buf, &dcount); + /* do resize, as we didn't modify the memory, pool should reuse this buffer */ +- gst_buffer_resize (buf, 5, 2); ++ gst_buffer_resize (buf, 8, 2); + gst_buffer_unref (buf); + + /* buffer should've gone back into pool */ +-- +2.22.0 + -- cgit 1.4.1 From 8e92d5465fc154fed5d06f7e4a64d7dcccded74d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jun 2019 21:46:34 +0200 Subject: gnu: nginx: Update to 1.17.1. * gnu/packages/web.scm (nginx): Update to 1.17.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 82102f427f..124cc93e68 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -202,14 +202,14 @@ Interface} specification.") ;; ’stable’ and recommends that “in general you deploy the NGINX mainline ;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/) ;; Consider updating the nginx-documentation package together with this one. - (version "1.17.0") + (version "1.17.1") (source (origin (method url-fetch) (uri (string-append "https://nginx.org/download/nginx-" version ".tar.gz")) (sha256 (base32 - "1aqgmrjzmklmv2iiyirk2h0hy35v1a76gczhjkxnms2krl35s6z2")))) + "0gp7cy2bbn8yi1wapjzssf4bhmn4d4vphdb0k1wiaq2fa6s2a63g")))) (build-system gnu-build-system) (inputs `(("openssl" ,openssl) ("pcre" ,pcre) -- cgit 1.4.1 From 93ef8ca662fc3dce4e15977347baa0b9c50dd29e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jun 2019 19:40:08 +0200 Subject: gnu: mesa: Do not pass an empty string argument to the build system. This is a follow-up to commit 301b2e74f986385664153e6e770e238b351f5cf0. * gnu/packages/gl.scm (mesa)[arguments]: Return the empty list instead of an empty string for the non-matching case. --- gnu/packages/gl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index cd82b17d15..9ed043c7ae 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -318,7 +318,7 @@ also known as DXTn or DXTC) for Mesa.") ((or "x86_64-linux" "i686-linux") '("-Dvulkan-overlay-layer=true")) (_ - '(""))) + '())) ;; Also enable the tests. "-Dbuild-tests=true" -- cgit 1.4.1 From c2dad3f98300ac71fcac5c3048673a04c24fe1ec Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jun 2019 18:47:37 +0200 Subject: gnu: nss, nss-certs: Update to 3.44.1. * gnu/packages/certs.scm (nss-certs): Update to 3.44.1. * gnu/packages/nss.scm (nss): Likewise. --- gnu/packages/certs.scm | 4 ++-- gnu/packages/nss.scm | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index ee8815d522..c41870332c 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -76,7 +76,7 @@ (define-public nss-certs (package (name "nss-certs") - (version "3.44") + (version "3.44.1") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -87,7 +87,7 @@ "nss-" version ".tar.gz"))) (sha256 (base32 - "1zvabgxlyvz3fnv4w89y4a5qkscjmm88naf929dgvvgfnrchwqm5")))) + "1y0jvva4s3j7cjz22kqw2lsml0an1295bgpc2raf7kc9r60cpr7w")))) (build-system gnu-build-system) (outputs '("out")) (native-inputs diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm index 83f4431c2b..40a8002954 100644 --- a/gnu/packages/nss.scm +++ b/gnu/packages/nss.scm @@ -70,7 +70,7 @@ in the Mozilla clients.") (define-public nss (package (name "nss") - (version "3.44") + (version "3.44.1") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -81,7 +81,7 @@ in the Mozilla clients.") "nss-" version ".tar.gz"))) (sha256 (base32 - "1zvabgxlyvz3fnv4w89y4a5qkscjmm88naf929dgvvgfnrchwqm5")) + "1y0jvva4s3j7cjz22kqw2lsml0an1295bgpc2raf7kc9r60cpr7w")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-pkgconfig.patch" "nss-increase-test-timeout.patch")))) -- cgit 1.4.1 From 8cf7afe69d08918267c38f19ba06a4008e33489d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jun 2019 18:48:06 +0200 Subject: gnu: libinput: Update to 1.13.4. * gnu/packages/freedesktop.scm (libinput): Update to 1.13.4. --- 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 4b37ffdf3c..d77d6c58c4 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -152,14 +152,14 @@ freedesktop.org project.") (define-public libinput (package (name "libinput") - (version "1.13.2") + (version "1.13.4") (source (origin (method url-fetch) (uri (string-append "https://freedesktop.org/software/libinput/" "libinput-" version ".tar.xz")) (sha256 (base32 - "0vbapc90m49n0z8w8w4v0qf1iiwaixw9h79jfmps9pj8hdls17qx")))) + "07a0w7rak7rvnh6g4j0akwjxwinxfszc1xi9mrx12fv82k3mgsyk")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=false"))) -- cgit 1.4.1 From 5e26ac3f6a468b5a3e88f512b4ac6a92ad650935 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jun 2019 18:48:28 +0200 Subject: gnu: gtk+: Update to 3.24.9. * gnu/packages/gtk.scm (gtk+): Update to 3.24.9. --- 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 2776bd31a3..e63e84a7c3 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -732,7 +732,7 @@ application suites.") (name "gtk+") ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; mate.scm will also need to be updated. - (version "3.24.8") + (version "3.24.9") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -740,7 +740,7 @@ application suites.") name "-" version ".tar.xz")) (sha256 (base32 - "16f71bbkhwhndcsrpyhjia3b77cb5ksf5c45lyfgws4pkgg64sb6")) + "0dg6jf2763sp740ls6b5y86b5b9zhz3zj0sbmar2xpws1lkv0zjp")) (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) (outputs '("out" "bin" "doc")) -- cgit 1.4.1 From 966e4beadcf5dcc7537ccdbe42505c9129c5dd08 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jun 2019 18:48:50 +0200 Subject: gnu: perl-net-ssleay: Update to 1.88. * gnu/packages/tls.scm (perl-net-ssleay): Update to 1.88. --- 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 8e20101e51..bd1606c164 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -643,14 +643,14 @@ certificates for free.") (define-public perl-net-ssleay (package (name "perl-net-ssleay") - (version "1.85") + (version "1.88") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MI/MIKEM/" "Net-SSLeay-" version ".tar.gz")) (sha256 (base32 - "1j5h4ycm8538397l204d2d5fkm9595aj174pj7bkpbhwzfwqi0cx")))) + "1pfgh4h3szcpvqlcimc60pjbk9zwls99x5863sva0wc47i4dl010")))) (build-system perl-build-system) (inputs `(("openssl" ,openssl))) (arguments -- cgit 1.4.1 From c50f15d67f5e6e15335150146903473b1e36c91e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jun 2019 12:45:52 +0200 Subject: gnu: perl-net-ssleay: Update source URI. This is a follow-up to commit 966e4beadcf5dcc7537ccdbe42505c9129c5dd08. * gnu/packages/tls.scm (perl-net-ssleay)[source](uri): Update to current. --- gnu/packages/tls.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index bd1606c164..53f5ccb26f 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -646,7 +646,7 @@ certificates for free.") (version "1.88") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/M/MI/MIKEM/" + (uri (string-append "mirror://cpan/authors/id/C/CH/CHRISN/" "Net-SSLeay-" version ".tar.gz")) (sha256 (base32 -- cgit 1.4.1 From 730c1cc04ea1e458c4690e28db415e0c4ea136ff Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jun 2019 13:41:21 +0200 Subject: gnu: ImageMagick: Update to 6.9.10-50. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.10-50. --- 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 dba193d8e5..769b0bda64 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -48,14 +48,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.10-49") + (version "6.9.10-50") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "1w4vsppyn1h58x3z4hgly5qxp16q66l18y9rwavrravw0kiq64fs")))) + "1p8mqfz500bc6hapm64xr5qjrgmkfw7cq9m73xfzaxlriih8rm56")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") -- cgit 1.4.1 From d1b93e91a47e4e6caa8313069a51ab9955ccf31d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jun 2019 13:41:53 +0200 Subject: gnu: python-cython: Update to 0.29.11. * gnu/packages/python-xyz.scm (python-cython): Update to 0.29.11. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 4ba40e95b0..8398dede79 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -3181,14 +3181,14 @@ provides additional functionality on the produced Mallard documents.") (define-public python-cython (package (name "python-cython") - (version "0.29.7") + (version "0.29.11") (source (origin (method url-fetch) (uri (pypi-uri "Cython" version)) (sha256 (base32 - "1s61hq2ikawxp6qvmkbfvvaxy9rqj67cddzwgcfc3dwi44b83l2m")))) + "1866m01ggl2h3rky4hac3m5p048gg4a0jb09ljkknryiqln54fkn")))) (build-system python-build-system) ;; we need the full python package and not just the python-wrapper ;; because we need libpython3.3m.so -- cgit 1.4.1 From ff68ddb032774c65279372c6d4bfab5d8825977e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jun 2019 12:37:25 +0200 Subject: gnu: ungoogled-chromium: Build against ICU 64. * gnu/packages/icu4c.scm (icu4c-64): New public variable. * gnu/packages/chromium.scm (ungoogled-chromium)[inputs]: Change ICU4C to ICU4C-64. --- gnu/packages/chromium.scm | 6 +++++- gnu/packages/icu4c.scm | 18 ++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm index e357556956..79828ef589 100644 --- a/gnu/packages/chromium.scm +++ b/gnu/packages/chromium.scm @@ -714,7 +714,11 @@ from forcing GEXP-PROMISE." ("glib" ,glib) ("gtk+" ,gtk+) ("harfbuzz" ,harfbuzz) - ("icu4c" ,icu4c) + + ;; Build against ICU 64 to prevent a localization problem in version 75 + ;; and later: . + ("icu4c" ,icu4c-64) + ("jsoncpp" ,jsoncpp) ("lcms" ,lcms) ("libevent" ,libevent) diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm index 6e93d6aed9..512967a305 100644 --- a/gnu/packages/icu4c.scm +++ b/gnu/packages/icu4c.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2017 Clément Lassieur ;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2019 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ (define-module (gnu packages icu4c) #:use-module (gnu packages) #:use-module (gnu packages perl) + #:use-module (gnu packages python) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) @@ -81,6 +83,22 @@ C/C++ part.") (license x11) (home-page "http://site.icu-project.org/"))) +(define-public icu4c-64 + (package + (inherit icu4c) + (version "64.2") + (source (origin + (inherit (package-source icu4c)) + (uri (string-append + "http://download.icu-project.org/files/icu4c/" version "/icu4c-" + (string-map (lambda (x) (if (char=? x #\.) #\_ x)) version) + "-src.tgz")) + (sha256 + (base32 "0v0xsf14xwlj125y9fd8lrhsaych4d8liv8gr746zng6g225szb2")))) + (native-inputs + `(;; For tests. + ("python" ,python))))) + (define-public java-icu4j (package (name "java-icu4j") -- cgit 1.4.1 From 1307aa4427160c11d6ab84c5b2e96ea172fa0f1e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jun 2019 13:36:58 +0200 Subject: gnu: mbedtls-apache: Update to 2.16.2. * gnu/packages/tls.scm (mbedtls-apache): Update to 2.16.2. --- 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 8e20101e51..ea6dfda931 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -834,7 +834,7 @@ then ported to the GNU / Linux environment.") (define-public mbedtls-apache (package (name "mbedtls-apache") - (version "2.16.1") + (version "2.16.2") (source (origin (method url-fetch) @@ -844,7 +844,7 @@ then ported to the GNU / Linux environment.") version "-apache.tgz")) (sha256 (base32 - "08zz88gcb2jmpfsgy5b6qc3li6l39yw1dbimd18aziyd889nvl7b")))) + "1906hbwlkq32075hca4vjad03dcc36aycvmaz8yvhr3ygg6lz0x6")))) (build-system cmake-build-system) (arguments `(#:configure-flags -- cgit 1.4.1 From 5dd0269244da42066133d19055c9eb82b9e9ae20 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jun 2019 13:37:22 +0200 Subject: gnu: miniupnpc: Update to 2.1.20190625. * gnu/packages/upnp.scm (miniupnpc): Update to 2.1.20190625. --- gnu/packages/upnp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/upnp.scm b/gnu/packages/upnp.scm index 3f3d80f576..a085fe9747 100644 --- a/gnu/packages/upnp.scm +++ b/gnu/packages/upnp.scm @@ -32,14 +32,14 @@ (define-public miniupnpc (package (name "miniupnpc") - (version "2.1.20190408") + (version "2.1.20190625") (source (origin (method url-fetch) (uri (string-append "https://miniupnp.tuxfamily.org/files/" name "-" version ".tar.gz")) (sha256 - (base32 "1v0l2m8j7r6jiy871d6v11ls243xqn6s3856iwd3bmk5c37npi50")))) + (base32 "1yqp0d8x5ldjfma5x2vhpg1aaafdg0470ismccixww3rzpbza8w7")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) -- cgit 1.4.1 From 022288ba53bd44c9311c6cffef5e8224a2e74598 Mon Sep 17 00:00:00 2001 From: Ivan Petkov Date: Sun, 30 Jun 2019 07:18:20 -0700 Subject: guix: import: crate: fix redundant inputs list nesting * guix/import/crate.scm (maybe-cargo-inputs): Remove one level of lists. * guix/import/crate.scm (maybe-cargo-development-inputs): Same. * tests/crate.scm: (crate->guix-package)[package]<#:arguments>: Remove one level of list nesting. --- guix/import/crate.scm | 4 ++-- tests/crate.scm | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/guix/import/crate.scm b/guix/import/crate.scm index 9a73d9fe16..29318aac0e 100644 --- a/guix/import/crate.scm +++ b/guix/import/crate.scm @@ -85,14 +85,14 @@ (() '()) ((package-inputs ...) - `((#:cargo-inputs ,package-inputs))))) + `(#:cargo-inputs ,package-inputs)))) (define (maybe-cargo-development-inputs package-names) (match (package-names->package-inputs package-names) (() '()) ((package-inputs ...) - `((#:cargo-development-inputs ,package-inputs))))) + `(#:cargo-development-inputs ,package-inputs)))) (define (maybe-arguments arguments) (match arguments diff --git a/tests/crate.scm b/tests/crate.scm index a4a328d507..72c3a13350 100644 --- a/tests/crate.scm +++ b/tests/crate.scm @@ -91,7 +91,7 @@ ('build-system 'cargo-build-system) ('arguments ('quasiquote - (('#:cargo-inputs (("rust-bar" ('unquote rust-bar))))))) + ('#:cargo-inputs (("rust-bar" ('unquote rust-bar)))))) ('home-page "http://example.com") ('synopsis "summary") ('description "summary") -- cgit 1.4.1 From a3d1a3487a34820d2a0b3d5e6206e4df1c77c15c Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 30 Jun 2019 20:14:58 +0200 Subject: gnu: gtksourceviewmm: Build against gtksourceview@3. * gnu/packages/gtk.scm (gtksourceviewmm)[propagated-inputs]: Change GTKSOURCEVIEW to GTKSOURCEVIEW-3. --- gnu/packages/gtk.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 2776bd31a3..3f835f51e5 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1182,7 +1182,7 @@ extensive documentation, including API reference and a tutorial.") ;; In 'Requires' of gtksourceviewmm-3.0.pc. `(("glibmm" ,glibmm) ("gtkmm" ,gtkmm) - ("gtksourceview" ,gtksourceview))) + ("gtksourceview" ,gtksourceview-3))) (synopsis "C++ interface to the GTK+ 'GtkTextView' widget") (description "gtksourceviewmm is a portable C++ library that extends the standard GTK+ -- cgit 1.4.1 From 037bef7db4f67b1f7df879f8e41a971308ce8128 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 1 Jul 2019 12:08:08 +0200 Subject: gnu: behave: Fix build. * gnu/packages/check.scm (behave)[propagated-inputs]: Add python-importlib-metadata. --- gnu/packages/check.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 9bc5036cf6..dae2b0e1d9 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -1924,7 +1924,8 @@ backported from Python 2.7 for Python 2.4+.") ("python-pyhamcrest" ,python-pyhamcrest) ("python-pytest" ,python-pytest))) (propagated-inputs - `(("python-six" ,python-six) + `(("python-importlib-metadata" ,python-importlib-metadata) + ("python-six" ,python-six) ("python-parse" ,python-parse) ("python-parse-type" ,python-parse-type))) (arguments -- cgit 1.4.1 From 78c88baad56ae2843d809a8160631a7bae071315 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 1 Jul 2019 12:29:02 +0200 Subject: gnu: guile: Add 2.2.6. * gnu/packages/guile.scm (guile-2.2.5): Rename to... (guile-2.2.6): ... this, and update to 2.2.6. --- gnu/packages/guile.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index f0a53e7c39..6e11a13c56 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -286,17 +286,17 @@ without requiring the source code to be rewritten.") (max-silent-time . 36000))))) ;10 hours (needed on ARM ; when heavily loaded) -(define-public guile-2.2.5 +(define-public guile-2.2.6 (package (inherit guile-2.2) - (version "2.2.5") + (version "2.2.6") (source (origin (inherit (package-source guile-2.2)) (uri (string-append "mirror://gnu/guile/guile-" version ".tar.xz")) (sha256 (base32 - "19w5ws1jvs01dpv756qv2cgs37rsnwq1f4f07mj0wra35pqp6c7w")))))) + "1269ymxm56j1z1lvq1y42rm961f2n7rinm3k6l00p9k52hrpcddk")))))) (define-public guile-next ;; This is the upcoming Guile 3.0, with JIT support. -- cgit 1.4.1 From cea5db1b8454c02452bed8cbe6eb89ce37164fe8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 1 Jul 2019 23:31:24 +0200 Subject: etc: Do not recommend use of SKS key servers. * etc/guix-install.sh: Recommend downloading the GPG key from Savannah. --- etc/guix-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 604c683202..aa95cb4e20 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -104,7 +104,7 @@ chk_require() gpg --list-keys ${OPENPGP_SIGNING_KEY_ID} >/dev/null 2>&1 || ( _err "${ERR}Missing OpenPGP public key. Fetch it with this command:" - echo " gpg --keyserver pool.sks-keyservers.net --recv-keys ${OPENPGP_SIGNING_KEY_ID}" + echo " wget https://sv.gnu.org/people/viewgpg.php?user_id=15145 -qO - | gpg --import -" exit 1 ) } -- cgit 1.4.1 From 2868804de69ed23f396fd8e68d6dd18c40518948 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 2 Jul 2019 00:13:08 +0200 Subject: gnu: python-duniterpy: Update to 0.54.3. * gnu/packages/finance.scm (python-duniterpy): Update to 0.54.3. --- gnu/packages/finance.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index cd5d3b7d9a..573ec0be15 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -935,7 +935,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (define-public python-duniterpy (package (name "python-duniterpy") - (version "0.54.1") + (version "0.54.3") (source (origin (method git-fetch) @@ -946,7 +946,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (file-name (git-file-name name version)) (sha256 (base32 - "15z5wc3ahvv8axyiqmf7hd4y91ahh1x4bfmgsqxwygyhswl1yjq8")))) + "1k3rpfc9zxj9z50cr4zjfyzdla9ap5mj1v1rlcriqmflgb5cmiba")))) (build-system python-build-system) (arguments ;; Tests fail with "AttributeError: module 'attr' has no attribute 's'". -- cgit 1.4.1 From 7242d5792b9aee67da30cbe21b1b20265c12248d Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 2 Jul 2019 00:38:36 +0200 Subject: gnu: giac: Update to 1.5.0-61. * gnu/packages/algebra.scm (giac): Update to 1.5.0-61. --- 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 95189401f7..7e66e42f0a 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -331,7 +331,7 @@ precision.") (define-public giac (package (name "giac") - (version "1.5.0-57") + (version "1.5.0-61") (source (origin (method url-fetch) ;; "~parisse/giac" is not used because the maintainer regularly @@ -343,7 +343,7 @@ precision.") "source/giac_" version ".tar.gz")) (sha256 (base32 - "08c93knsisbk9dkyyrignw0wvqbr1sa5czlvk5l307ahxbbmqncf")))) + "050vzpqq77fhky32sbisc0ysimgp60xjv39q7y45jkaabdkmclwh")))) (build-system gnu-build-system) (arguments `(#:modules ((ice-9 ftw) -- cgit 1.4.1 From 0f0651295e742b399af4436f350662afb4a6f7af Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 2 Jul 2019 00:45:05 +0200 Subject: gnu: silkaj: Update to 0.7.2. * gnu/packages/finance.scm (silkaj): Update to 0.7.2. --- gnu/packages/finance.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 573ec0be15..03a8285fc1 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -993,7 +993,7 @@ main features are: (define-public silkaj (package (name "silkaj") - (version "0.7.0") + (version "0.7.2") (source (origin (method git-fetch) @@ -1003,7 +1003,7 @@ main features are: (file-name (git-file-name name version)) (sha256 (base32 - "0pnd5v15sgxxm114sbs0z24a4dars5hy1nabc9v9ask7kxzrxs9y")))) + "059k2kil2l8jcm4wp86w1z7y8p26rww7d3l5fzds0qq2dzvkvzgs")))) (build-system python-build-system) (arguments `(#:tests? #f)) ;no test -- cgit 1.4.1 From 27b3568b612721605240d531f0f45934bddffe9b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 01:57:13 +0200 Subject: gnu: tzdata: Update source URI. * gnu/packages/base.scm (tzdata, tzdata-for-tests)[source, native-inputs]: Update redirected URIs. --- gnu/packages/base.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 15f35009a9..59b50440aa 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -1219,7 +1219,7 @@ command.") (source (origin (method url-fetch) (uri (string-append - "https://www.iana.org/time-zones/repository/releases/tzdata" + "https://data.iana.org/time-zones/releases/tzdata" version ".tar.gz")) (sha256 (base32 @@ -1269,7 +1269,7 @@ command.") (inputs `(("tzcode" ,(origin (method url-fetch) (uri (string-append - "http://www.iana.org/time-zones/repository/releases/tzcode" + "https://data.iana.org/time-zones/releases/tzcode" version ".tar.gz")) (sha256 (base32 @@ -1296,7 +1296,7 @@ and daylight-saving rules.") (source (origin (method url-fetch) (uri (string-append - "https://www.iana.org/time-zones/repository/releases/tzdata" + "https://data.iana.org/time-zones/releases/tzdata" version ".tar.gz")) (sha256 (base32 @@ -1305,7 +1305,7 @@ and daylight-saving rules.") `(("tzcode" ,(origin (method url-fetch) (uri (string-append - "http://www.iana.org/time-zones/repository/releases/tzcode" + "http://data.iana.org/time-zones/releases/tzcode" version ".tar.gz")) (sha256 (base32 -- cgit 1.4.1 From 01589acc5e114e46e314777bc0d60ebfa620e4f8 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 28 Mar 2019 00:26:00 -0400 Subject: import: pypi: Do not consider requirements.txt files. PyPI packages are mandated to have a setup.py file, which contains a listing of the required dependencies. The setuptools/distutils machinery embed metadata in the archives they produce, which contains this information. There is no need nor gain to collect the requirements from a "requirements.txt" file, as it is not the true record of dependencies for PyPI packages and may contain extraneous requirements or not exist at all. * guix/import/pypi.scm (guess-requirements): Update comment. [guess-requirements-from-source]: Do not attempt to parse the file requirements.txt. Streamline logic. * tests/pypi.scm (test-requires.txt): Rename from test-requirements, to hint at the file being tested. ("pypi->guix-package"): Adapt so that the fake package contains a requires.txt file rather than a requirements.txt file. ("pypi->guix-package, wheels"): Likewise. --- guix/import/pypi.scm | 35 +++++++++++++---------------------- tests/pypi.scm | 23 ++++++++++++----------- 2 files changed, 25 insertions(+), 33 deletions(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 3a20fc4b9b..8269aa61d7 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -206,35 +206,26 @@ cannot determine package dependencies")) (call-with-temporary-directory (lambda (dir) (let* ((pypi-name (string-take dirname (string-rindex dirname #\-))) - (req-files (list (string-append dirname "/requirements.txt") - (string-append dirname "/" pypi-name ".egg-info" - "/requires.txt"))) - (exit-codes (map (lambda (file-name) - (parameterize ((current-error-port (%make-void-port "rw+")) - (current-output-port (%make-void-port "rw+"))) - (system* "tar" "xf" tarball "-C" dir file-name))) - req-files))) - ;; Only one of these files needs to exist. - (if (any zero? exit-codes) - (match (find-files dir) - ((file . _) - (read-requirements file)) - (() - (warning (G_ "No requirements file found.\n")))) + (requires.txt (string-append dirname "/" pypi-name + ".egg-info" "/requires.txt")) + (exit-code (parameterize ((current-error-port (%make-void-port "rw+")) + (current-output-port (%make-void-port "rw+"))) + (system* "tar" "xf" tarball "-C" dir requires.txt)))) + (if (zero? exit-code) + (read-requirements (string-append dir "/" requires.txt)) (begin - (warning (G_ "Failed to extract requirements files\n")) + (warning + (G_ "Failed to extract file: ~a from source.~%") + requires.txt) '()))))) '()))) - ;; First, try to compute the requirements using the wheel, since that is the - ;; most reliable option. If a wheel is not provided for this package, try - ;; getting them by reading either the "requirements.txt" file or the - ;; "requires.txt" from the egg-info directory from the source tarball. Note - ;; that "requirements.txt" is not mandatory, so this is likely to fail. + ;; First, try to compute the requirements using the wheel, else, fallback to + ;; reading the "requires.txt" from the egg-info directory from the source + ;; tarball. (or (guess-requirements-from-wheel) (guess-requirements-from-source))) - (define (compute-inputs source-url wheel-url tarball) "Given the SOURCE-URL of an already downloaded TARBALL, return a list of name/variable pairs describing the required inputs of this package. Also diff --git a/tests/pypi.scm b/tests/pypi.scm index 6daa44a6e7..a0271fffad 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -23,7 +23,7 @@ #:use-module (gcrypt hash) #:use-module (guix tests) #:use-module (guix build-system python) - #:use-module ((guix build utils) #:select (delete-file-recursively which)) + #:use-module ((guix build utils) #:select (delete-file-recursively which mkdir-p)) #:use-module (srfi srfi-64) #:use-module (ice-9 match)) @@ -55,11 +55,12 @@ (define test-source-hash "") -(define test-requirements -"# A comment +(define test-requires.txt "\ +# A comment # A comment after a space bar -baz > 13.37") +baz > 13.37 +") (define test-metadata "{ @@ -107,10 +108,10 @@ baz > 13.37") (match url ("https://example.com/foo-1.0.0.tar.gz" (begin - (mkdir "foo-1.0.0") - (with-output-to-file "foo-1.0.0/requirements.txt" + (mkdir-p "foo-1.0.0/foo.egg-info/") + (with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt" (lambda () - (display test-requirements))) + (display test-requires.txt))) (system* "tar" "czvf" file-name "foo-1.0.0/") (delete-file-recursively "foo-1.0.0") (set! test-source-hash @@ -157,11 +158,11 @@ baz > 13.37") (lambda (url file-name) (match url ("https://example.com/foo-1.0.0.tar.gz" - (begin - (mkdir "foo-1.0.0") - (with-output-to-file "foo-1.0.0/requirements.txt" + (begin + (mkdir-p "foo-1.0.0/foo.egg-info/") + (with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt" (lambda () - (display test-requirements))) + (display test-requires.txt))) (system* "tar" "czvf" file-name "foo-1.0.0/") (delete-file-recursively "foo-1.0.0") (set! test-source-hash -- cgit 1.4.1 From a853acebe1ccdba51ae509cd8a838a954c7c8bd2 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 10 Jun 2019 12:20:08 +0900 Subject: tests: pypi: Mute the output of tar. The output of tar when creating archives for the purpose of tests is not useful, so we mute it. * tests/pypi.scm ("pypi->guix-package"): Mute the output of tar. ("pypi->guix-package, wheels"): Likewise. --- tests/pypi.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/pypi.scm b/tests/pypi.scm index a0271fffad..6df69073dc 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -112,7 +112,8 @@ baz > 13.37 (with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt" (lambda () (display test-requires.txt))) - (system* "tar" "czvf" file-name "foo-1.0.0/") + (parameterize ((current-output-port (%make-void-port "rw+"))) + (system* "tar" "czvf" file-name "foo-1.0.0/")) (delete-file-recursively "foo-1.0.0") (set! test-source-hash (call-with-input-file file-name port-sha256)))) @@ -163,7 +164,8 @@ baz > 13.37 (with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt" (lambda () (display test-requires.txt))) - (system* "tar" "czvf" file-name "foo-1.0.0/") + (parameterize ((current-output-port (%make-void-port "rw+"))) + (system* "tar" "czvf" file-name "foo-1.0.0/")) (delete-file-recursively "foo-1.0.0") (set! test-source-hash (call-with-input-file file-name port-sha256)))) -- cgit 1.4.1 From c4797121beea74ae93e3ce17677b9e72b8df920d Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 28 Mar 2019 00:26:00 -0400 Subject: import: pypi: Do not parse optional requirements from source. * guix/import/pypi.scm: Export PARSE-REQUIRES.TXT. (clean-requirement): Move procedure to the top level. (guess-requirements): Move the READ-REQUIREMENTS procedure to the top level, and rename it to PARSE-REQUIRES.TXT. Move the CLEAN-REQUIREMENT procedure to the top level. Move the COMMENT? functions inside the PARSE-REQUIRES.TXT procedure. (parse-requires.txt): Add a SECTION-HEADER? predicate, and use it to prevent parsing optional requirements. * tests/pypi.scm (test-requires-with-sections): New variable. ("parse-requires.txt, with sections"): New test. --- guix/import/pypi.scm | 74 +++++++++++++++++++++++++++++++--------------------- tests/pypi.scm | 14 ++++++++++ 2 files changed, 58 insertions(+), 30 deletions(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 8269aa61d7..d9db876222 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -47,7 +47,8 @@ #:use-module (guix upstream) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system python) - #:export (guix-package->pypi-name + #:export (parse-requires.txt + guix-package->pypi-name pypi-recursive-import pypi->guix-package %pypi-updater)) @@ -117,6 +118,47 @@ package definition." ((package-inputs ...) `((propagated-inputs (,'quasiquote ,package-inputs)))))) +(define (clean-requirement s) + ;; Given a requirement LINE, as can be found in a setuptools requires.txt + ;; file, remove everything other than the actual name of the required + ;; package, and return it. + (cond + ((string-index s (char-set #\space #\> #\= #\<)) => (cut string-take s <>)) + (else s))) + +(define (parse-requires.txt requires.txt) + "Given REQUIRES.TXT, a Setuptools requires.txt file, return a list of +requirement names." + ;; This is a very incomplete parser, whose job is to select the non-optional + ;; dependencies and strip them out of any version information. + ;; Alternatively, we could implement a PEG parser with the (ice-9 peg) + ;; library and the requirements grammar defined by PEP-0508 + ;; (https://www.python.org/dev/peps/pep-0508/). + + (define (comment? line) + ;; Return #t if the given LINE is a comment, #f otherwise. + (string-prefix? "#" (string-trim line))) + + (define (section-header? line) + ;; Return #t if the given LINE is a section header, #f otherwise. + (string-prefix? "[" (string-trim line))) + + (call-with-input-file requires.txt + (lambda (port) + (let loop ((result '())) + (let ((line (read-line port))) + ;; Stop when a section is encountered, as sections contain optional + ;; (extra) requirements. Non-optional requirements must appear + ;; before any section is defined. + (if (or (eof-object? line) (section-header? line)) + (reverse result) + (cond + ((or (string-null? line) (comment? line)) + (loop result)) + (else + (loop (cons (clean-requirement line) + result)))))))))) + (define (guess-requirements source-url wheel-url tarball) "Given SOURCE-URL, WHEEL-URL and a TARBALL of the package, return a list of the required packages specified in the requirements.txt file. TARBALL will @@ -139,34 +181,6 @@ be extracted in a temporary directory." cannot determine package dependencies")) #f))))) - (define (clean-requirement s) - ;; Given a requirement LINE, as can be found in a Python requirements.txt - ;; file, remove everything other than the actual name of the required - ;; package, and return it. - (string-take s - (or (string-index s (lambda (chr) (member chr '(#\space #\> #\= #\<)))) - (string-length s)))) - - (define (comment? line) - ;; Return #t if the given LINE is a comment, #f otherwise. - (eq? (string-ref (string-trim line) 0) #\#)) - - (define (read-requirements requirements-file) - ;; Given REQUIREMENTS-FILE, a Python requirements.txt file, return a list - ;; of name/variable pairs describing the requirements. - (call-with-input-file requirements-file - (lambda (port) - (let loop ((result '())) - (let ((line (read-line port))) - (if (eof-object? line) - result - (cond - ((or (string-null? line) (comment? line)) - (loop result)) - (else - (loop (cons (clean-requirement line) - result)))))))))) - (define (read-wheel-metadata wheel-archive) ;; Given WHEEL-ARCHIVE, a ZIP Python wheel archive, return the package's ;; requirements. @@ -212,7 +226,7 @@ cannot determine package dependencies")) (current-output-port (%make-void-port "rw+"))) (system* "tar" "xf" tarball "-C" dir requires.txt)))) (if (zero? exit-code) - (read-requirements (string-append dir "/" requires.txt)) + (parse-requires.txt (string-append dir "/" requires.txt)) (begin (warning (G_ "Failed to extract file: ~a from source.~%") diff --git a/tests/pypi.scm b/tests/pypi.scm index 6df69073dc..03455ba6be 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -62,6 +62,14 @@ bar baz > 13.37 ") +(define test-requires-with-sections "\ +foo ~= 3 +bar != 2 + +[test] +pytest (>=2.5.0) +") + (define test-metadata "{ \"run_requires\": [ @@ -101,6 +109,12 @@ baz > 13.37 (uri (list "https://bitheap.org/cram/cram-0.7.tar.gz" (pypi-uri "cram" "0.7")))))))) +(test-equal "parse-requires.txt, with sections" + '("foo" "bar") + (mock ((ice-9 ports) call-with-input-file + call-with-input-string) + (parse-requires.txt test-requires-with-sections))) + (test-assert "pypi->guix-package" ;; Replace network resources with sample data. (mock ((guix import utils) url-fetch -- cgit 1.4.1 From 803fb336d62ea65990e263ce58d8552e04c9c038 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 28 Mar 2019 00:26:01 -0400 Subject: import: pypi: Improve parsing of requirement specifications. The previous solution was fragile and could leave unwanted characters in a requirement name, such as '[' or ']'. Partially fixes . * guix/import/pypi.scm (use-modules): Export SPECIFICATION->REQUIREMENT-NAME (%requirement-name-regexp): New variable. (clean-requirement): Rename to... (specification->requirement-name): this, which now uses %requirement-name-regexp to select the requirement name from the requirement specification. (parse-requires.txt): Adapt. --- guix/import/pypi.scm | 54 ++++++++++++++++++++++++++++++++++++++-------------- tests/pypi.scm | 12 ++++++++++++ 2 files changed, 52 insertions(+), 14 deletions(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index d9db876222..6a881bda12 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -48,6 +48,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system python) #:export (parse-requires.txt + specification->requirement-name guix-package->pypi-name pypi-recursive-import pypi->guix-package @@ -118,22 +119,47 @@ package definition." ((package-inputs ...) `((propagated-inputs (,'quasiquote ,package-inputs)))))) -(define (clean-requirement s) - ;; Given a requirement LINE, as can be found in a setuptools requires.txt - ;; file, remove everything other than the actual name of the required - ;; package, and return it. - (cond - ((string-index s (char-set #\space #\> #\= #\<)) => (cut string-take s <>)) - (else s))) +(define %requirement-name-regexp + ;; Regexp to match the requirement name in a requirement specification. + + ;; Some grammar, taken from PEP-0508 (see: + ;; https://www.python.org/dev/peps/pep-0508/). + + ;; Using this grammar makes the PEP-0508 regexp easier to understand for + ;; humans. The use of a regexp is preferred to more primitive string + ;; manipulations because we can more directly match what upstream uses + ;; (again, per PEP-0508). The regexp approach is also easier to extend, + ;; should we want to implement more completely the grammar of PEP-0508. + + ;; The unified rule can be expressed as: + ;; specification = wsp* ( url_req | name_req ) wsp* + + ;; where url_req is: + ;; url_req = name wsp* extras? wsp* urlspec wsp+ quoted_marker? + + ;; and where name_req is: + ;; name_req = name wsp* extras? wsp* versionspec? wsp* quoted_marker? + + ;; Thus, we need only matching NAME, which is expressed as: + ;; identifer_end = letterOrDigit | (('-' | '_' | '.' )* letterOrDigit) + ;; identifier = letterOrDigit identifier_end* + ;; name = identifier + (let* ((letter-or-digit "[A-Za-z0-9]") + (identifier-end (string-append "(" letter-or-digit "|" + "[-_.]*" letter-or-digit ")")) + (identifier (string-append "^" letter-or-digit identifier-end "*")) + (name identifier)) + (make-regexp name))) + +(define (specification->requirement-name spec) + "Given a specification SPEC, return the requirement name." + (match:substring + (or (regexp-exec %requirement-name-regexp spec) + (error (G_ "Could not extract requirement name in spec:") spec)))) (define (parse-requires.txt requires.txt) "Given REQUIRES.TXT, a Setuptools requires.txt file, return a list of requirement names." - ;; This is a very incomplete parser, whose job is to select the non-optional - ;; dependencies and strip them out of any version information. - ;; Alternatively, we could implement a PEG parser with the (ice-9 peg) - ;; library and the requirements grammar defined by PEP-0508 - ;; (https://www.python.org/dev/peps/pep-0508/). (define (comment? line) ;; Return #t if the given LINE is a comment, #f otherwise. @@ -156,7 +182,7 @@ requirement names." ((or (string-null? line) (comment? line)) (loop result)) (else - (loop (cons (clean-requirement line) + (loop (cons (specification->requirement-name line) result)))))))))) (define (guess-requirements source-url wheel-url tarball) @@ -198,7 +224,7 @@ cannot determine package dependencies")) (hash-ref (list-ref run_requires 0) "requires") '()))) - (map clean-requirement requirements))))) + (map specification->requirement-name requirements))))) (lambda () (delete-file json-file) (rmdir dirname)))))) diff --git a/tests/pypi.scm b/tests/pypi.scm index 03455ba6be..c40be6c21d 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -55,6 +55,14 @@ (define test-source-hash "") +(define test-specifications + '("Fizzy [foo, bar]" + "PickyThing<1.6,>1.9,!=1.9.6,<2.0a0,==2.4c1" + "SomethingWithMarker[foo]>1.0;python_version<\"2.7\"" + "requests [security,tests] >= 2.8.1, == 2.8.* ; python_version < \"2.7\"" + "pip @ https://github.com/pypa/pip/archive/1.3.1.zip#\ +sha1=da9234ee9982d4bbb3c72346a6de940a148ea686")) + (define test-requires.txt "\ # A comment # A comment after a space @@ -109,6 +117,10 @@ pytest (>=2.5.0) (uri (list "https://bitheap.org/cram/cram-0.7.tar.gz" (pypi-uri "cram" "0.7")))))))) +(test-equal "specification->requirement-name" + '("Fizzy" "PickyThing" "SomethingWithMarker" "requests" "pip") + (map specification->requirement-name test-specifications)) + (test-equal "parse-requires.txt, with sections" '("foo" "bar") (mock ((ice-9 ports) call-with-input-file -- cgit 1.4.1 From cc9a77cd396f8932bec1b8c7ae9d829ea76f37ec Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 28 Mar 2019 00:26:01 -0400 Subject: import: pypi: Deduplicate requirements. * guix/import/pypi.scm (parse-requires.txt): Remove potential duplicates. --- guix/import/pypi.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 6a881bda12..ad59a8b731 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -177,7 +177,11 @@ requirement names." ;; (extra) requirements. Non-optional requirements must appear ;; before any section is defined. (if (or (eof-object? line) (section-header? line)) - (reverse result) + ;; Duplicates can occur, since the same requirement can be + ;; listed multiple times with different conditional markers, e.g. + ;; pytest >= 3 ; python_version >= "3.3" + ;; pytest < 3 ; python_version < "3.3" + (reverse (delete-duplicates result)) (cond ((or (string-null? line) (comment? line)) (loop result)) -- cgit 1.4.1 From c799ad7276dcc771912f4fc7edca400ea48b8ec2 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 28 Mar 2019 00:26:02 -0400 Subject: import: pypi: Support more types of archives. This change enables the PyPI importer to look for requirements in a source archive of a different type than "tar.gz" or "tar.bz2". Also, scan the source archive to find a requires.txt file. * guix/import/pypi.scm: (guess-requirements)[tarball-directory]: Remove procedure. [guess-requirements-from-source]: Use COMRESSED-FILE? to determine if an archive type is supported, and some file extension logic that chooses either "tar" or "unzip" as the extractor. Search for the requires.txt file in the archive instead of using a static, expected location. (guess-requirements): Rename the TARBALL argument to ARCHIVE, to denote the archive format is no longer bound specifically to the Tar format. (compute-inputs): Likewise. * tests/pypi.scm ("pypi->guix-package, no wheel"): Mock the requires.txt at a non-standard location. ("pypi->guix-package, no usable requirement file."): New test. --- guix/import/pypi.scm | 77 ++++++++++++++++++++++------------------------------ tests/pypi.scm | 52 +++++++++++++++++++++++++++++++++-- 2 files changed, 83 insertions(+), 46 deletions(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index ad59a8b731..a6106ab4ec 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -39,7 +39,8 @@ #:use-module ((guix build utils) #:select ((package-name->name+version . hyphen-package-name->name+version) - find-files)) + find-files + invoke)) #:use-module (guix import utils) #:use-module ((guix download) #:prefix download:) #:use-module (guix import json) @@ -189,28 +190,11 @@ requirement names." (loop (cons (specification->requirement-name line) result)))))))))) -(define (guess-requirements source-url wheel-url tarball) - "Given SOURCE-URL, WHEEL-URL and a TARBALL of the package, return a list -of the required packages specified in the requirements.txt file. TARBALL will +(define (guess-requirements source-url wheel-url archive) + "Given SOURCE-URL, WHEEL-URL and a ARCHIVE of the package, return a list +of the required packages specified in the requirements.txt file. ARCHIVE will be extracted in a temporary directory." - (define (tarball-directory url) - ;; Given the URL of the package's tarball, return the name of the directory - ;; that will be created upon decompressing it. If the filetype is not - ;; supported, return #f. - ;; TODO: Support more archive formats. - (let ((basename (substring url (+ 1 (string-rindex url #\/))))) - (cond - ((string-suffix? ".tar.gz" basename) - (string-drop-right basename 7)) - ((string-suffix? ".tar.bz2" basename) - (string-drop-right basename 8)) - (else - (begin - (warning (G_ "Unsupported archive format: \ -cannot determine package dependencies")) - #f))))) - (define (read-wheel-metadata wheel-archive) ;; Given WHEEL-ARCHIVE, a ZIP Python wheel archive, return the package's ;; requirements. @@ -239,29 +223,34 @@ cannot determine package dependencies")) (call-with-temporary-output-file (lambda (temp port) (if wheel-url - (and (url-fetch wheel-url temp) - (read-wheel-metadata temp)) - #f)))) + (and (url-fetch wheel-url temp) + (read-wheel-metadata temp)) + #f)))) (define (guess-requirements-from-source) ;; Return the package's requirements by guessing them from the source. - (let ((dirname (tarball-directory source-url))) - (if (string? dirname) - (call-with-temporary-directory - (lambda (dir) - (let* ((pypi-name (string-take dirname (string-rindex dirname #\-))) - (requires.txt (string-append dirname "/" pypi-name - ".egg-info" "/requires.txt")) - (exit-code (parameterize ((current-error-port (%make-void-port "rw+")) - (current-output-port (%make-void-port "rw+"))) - (system* "tar" "xf" tarball "-C" dir requires.txt)))) - (if (zero? exit-code) - (parse-requires.txt (string-append dir "/" requires.txt)) - (begin - (warning - (G_ "Failed to extract file: ~a from source.~%") - requires.txt) - '()))))) + (if (compressed-file? source-url) + (call-with-temporary-directory + (lambda (dir) + (parameterize ((current-error-port (%make-void-port "rw+")) + (current-output-port (%make-void-port "rw+"))) + (if (string=? "zip" (file-extension source-url)) + (invoke "unzip" archive "-d" dir) + (invoke "tar" "xf" archive "-C" dir))) + (let ((requires.txt-files + (find-files dir (lambda (abs-file-name _) + (string-match "\\.egg-info/requires.txt$" + abs-file-name))))) + (match requires.txt-files + (() + (warning (G_ "Cannot guess requirements from source archive:\ + no requires.txt file found.~%")) + '()) + (else (parse-requires.txt (first requires.txt-files))))))) + (begin + (warning (G_ "Unsupported archive format; \ +cannot determine package dependencies from source archive: ~a~%") + (basename source-url)) '()))) ;; First, try to compute the requirements using the wheel, else, fallback to @@ -270,13 +259,13 @@ cannot determine package dependencies")) (or (guess-requirements-from-wheel) (guess-requirements-from-source))) -(define (compute-inputs source-url wheel-url tarball) - "Given the SOURCE-URL of an already downloaded TARBALL, return a list of +(define (compute-inputs source-url wheel-url archive) + "Given the SOURCE-URL of an already downloaded ARCHIVE, return a list of name/variable pairs describing the required inputs of this package. Also return the unaltered list of upstream dependency names." (let ((dependencies (remove (cut string=? "argparse" <>) - (guess-requirements source-url wheel-url tarball)))) + (guess-requirements source-url wheel-url archive)))) (values (sort (map (lambda (input) (let ((guix-name (python->package-name input))) diff --git a/tests/pypi.scm b/tests/pypi.scm index c40be6c21d..b45d2c9d2f 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -20,6 +20,7 @@ (define-module (test-pypi) #:use-module (guix import pypi) #:use-module (guix base32) + #:use-module (guix memoization) #:use-module (gcrypt hash) #:use-module (guix tests) #:use-module (guix build-system python) @@ -134,8 +135,9 @@ pytest (>=2.5.0) (match url ("https://example.com/foo-1.0.0.tar.gz" (begin - (mkdir-p "foo-1.0.0/foo.egg-info/") - (with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt" + ;; Unusual requires.txt location should still be found. + (mkdir-p "foo-1.0.0/src/bizarre.egg-info") + (with-output-to-file "foo-1.0.0/src/bizarre.egg-info/requires.txt" (lambda () (display test-requires.txt))) (parameterize ((current-output-port (%make-void-port "rw+"))) @@ -241,4 +243,50 @@ pytest (>=2.5.0) (x (pk 'fail x #f)))))) +(test-assert "pypi->guix-package, no usable requirement file." + ;; Replace network resources with sample data. + (mock ((guix import utils) url-fetch + (lambda (url file-name) + (match url + ("https://example.com/foo-1.0.0.tar.gz" + (mkdir-p "foo-1.0.0/foo.egg-info/") + (parameterize ((current-output-port (%make-void-port "rw+"))) + (system* "tar" "czvf" file-name "foo-1.0.0/")) + (delete-file-recursively "foo-1.0.0") + (set! test-source-hash + (call-with-input-file file-name port-sha256))) + ("https://example.com/foo-1.0.0-py2.py3-none-any.whl" #f) + (_ (error "Unexpected URL: " url))))) + (mock ((guix http-client) http-fetch + (lambda (url . rest) + (match url + ("https://pypi.org/pypi/foo/json" + (values (open-input-string test-json) + (string-length test-json))) + ("https://example.com/foo-1.0.0-py2.py3-none-any.whl" #f) + (_ (error "Unexpected URL: " url))))) + ;; Not clearing the memoization cache here would mean returning the value + ;; computed in the previous test. + (invalidate-memoization! pypi->guix-package) + (match (pypi->guix-package "foo") + (('package + ('name "python-foo") + ('version "1.0.0") + ('source ('origin + ('method 'url-fetch) + ('uri ('pypi-uri "foo" 'version)) + ('sha256 + ('base32 + (? string? hash))))) + ('build-system 'python-build-system) + ('home-page "http://example.com") + ('synopsis "summary") + ('description "summary") + ('license 'license:lgpl2.0)) + (string=? (bytevector->nix-base32-string + test-source-hash) + hash)) + (x + (pk 'fail x #f)))))) + (test-end "pypi") -- cgit 1.4.1 From f0190a5dcdc1882e5a058dc7f12bc7ccb166c63d Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 28 Mar 2019 00:26:03 -0400 Subject: import: pypi: Parse wheel METADATA instead of metadata.json. With newer Wheel releases, there is no more metadata.json file; the METADATA file should be used instead (see: https://github.com/pypa/wheel/issues/195). This change updates our PyPI importer so that it uses the latter. * guix/import/pypi.scm (define-module): Remove unnecessary modules and export the PARSE-WHEEL-METADATA procedure. (parse-wheel-metadata): Add procedure. (guess-requirements): Use it. * tests/pypi.scm (test-metadata): Test it. --- guix/import/pypi.scm | 90 ++++++++++++++++++++++++++++++++-------------------- tests/pypi.scm | 60 +++++++++++++++++++++++++++-------- 2 files changed, 101 insertions(+), 49 deletions(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index a6106ab4ec..7cf1e92101 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -21,9 +21,7 @@ ;;; along with GNU Guix. If not, see . (define-module (guix import pypi) - #:use-module (ice-9 binary-ports) #:use-module (ice-9 match) - #:use-module (ice-9 pretty-print) #:use-module (ice-9 regex) #:use-module (ice-9 receive) #:use-module ((ice-9 rdelim) #:select (read-line)) @@ -31,9 +29,6 @@ #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) - #:use-module (rnrs bytevectors) - #:use-module (json) - #:use-module (web uri) #:use-module (guix ui) #:use-module (guix utils) #:use-module ((guix build utils) @@ -49,6 +44,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system python) #:export (parse-requires.txt + parse-wheel-metadata specification->requirement-name guix-package->pypi-name pypi-recursive-import @@ -177,18 +173,49 @@ requirement names." ;; Stop when a section is encountered, as sections contain optional ;; (extra) requirements. Non-optional requirements must appear ;; before any section is defined. - (if (or (eof-object? line) (section-header? line)) - ;; Duplicates can occur, since the same requirement can be - ;; listed multiple times with different conditional markers, e.g. - ;; pytest >= 3 ; python_version >= "3.3" - ;; pytest < 3 ; python_version < "3.3" - (reverse (delete-duplicates result)) - (cond - ((or (string-null? line) (comment? line)) - (loop result)) - (else - (loop (cons (specification->requirement-name line) - result)))))))))) + (cond + ((or (eof-object? line) (section-header? line)) + ;; Duplicates can occur, since the same requirement can be + ;; listed multiple times with different conditional markers, e.g. + ;; pytest >= 3 ; python_version >= "3.3" + ;; pytest < 3 ; python_version < "3.3" + (reverse (delete-duplicates result))) + ((or (string-null? line) (comment? line)) + (loop result)) + (else + (loop (cons (specification->requirement-name line) + result))))))))) + +(define (parse-wheel-metadata metadata) + "Given METADATA, a Wheel metadata file, return a list of requirement names." + ;; METADATA is a RFC-2822-like, header based file. + + (define (requires-dist-header? line) + ;; Return #t if the given LINE is a Requires-Dist header. + (string-match "^Requires-Dist: " line)) + + (define (requires-dist-value line) + (string-drop line (string-length "Requires-Dist: "))) + + (define (extra? line) + ;; Return #t if the given LINE is an "extra" requirement. + (string-match "extra == '(.*)'" line)) + + (call-with-input-file metadata + (lambda (port) + (let loop ((requirements '())) + (let ((line (read-line port))) + ;; Stop at the first 'Provides-Extra' section: the non-optional + ;; requirements appear before the optional ones. + (cond + ((eof-object? line) + (reverse (delete-duplicates requirements))) + ((and (requires-dist-header? line) (not (extra? line))) + (loop (cons (specification->requirement-name + (requires-dist-value line)) + requirements))) + (else + (loop requirements)))))))) (define (guess-requirements source-url wheel-url archive) "Given SOURCE-URL, WHEEL-URL and a ARCHIVE of the package, return a list @@ -197,25 +224,18 @@ be extracted in a temporary directory." (define (read-wheel-metadata wheel-archive) ;; Given WHEEL-ARCHIVE, a ZIP Python wheel archive, return the package's - ;; requirements. + ;; requirements, or #f if the metadata file contained therein couldn't be + ;; extracted. (let* ((dirname (wheel-url->extracted-directory wheel-url)) - (json-file (string-append dirname "/metadata.json"))) - (and (zero? (system* "unzip" "-q" wheel-archive json-file)) - (dynamic-wind - (const #t) - (lambda () - (call-with-input-file json-file - (lambda (port) - (let* ((metadata (json->scm port)) - (run_requires (hash-ref metadata "run_requires")) - (requirements (if run_requires - (hash-ref (list-ref run_requires 0) - "requires") - '()))) - (map specification->requirement-name requirements))))) - (lambda () - (delete-file json-file) - (rmdir dirname)))))) + (metadata (string-append dirname "/METADATA"))) + (call-with-temporary-directory + (lambda (dir) + (if (zero? (system* "unzip" "-q" wheel-archive "-d" dir metadata)) + (parse-wheel-metadata (string-append dir "/" metadata)) + (begin + (warning + (G_ "Failed to extract file: ~a from wheel.~%") metadata) + #f)))))) (define (guess-requirements-from-wheel) ;; Return the package's requirements using the wheel, or #f if an error diff --git a/tests/pypi.scm b/tests/pypi.scm index b45d2c9d2f..8b42c2f071 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -22,6 +22,7 @@ #:use-module (guix base32) #:use-module (guix memoization) #:use-module (gcrypt hash) + #:use-module (guix memoization) #:use-module (guix tests) #:use-module (guix build-system python) #:use-module ((guix build utils) #:select (delete-file-recursively which mkdir-p)) @@ -79,17 +80,33 @@ bar != 2 pytest (>=2.5.0) ") -(define test-metadata - "{ - \"run_requires\": [ - { - \"requires\": [ - \"bar\", - \"baz (>13.37)\" - ] - } - ] -}") +(define test-metadata "\ +Classifier: Programming Language :: Python :: 3.7 +Requires-Dist: baz ~= 3 +Requires-Dist: bar != 2 +Provides-Extra: test +pytest (>=2.5.0) +") + +(define test-metadata-with-extras " +Classifier: Programming Language :: Python :: 3.7 +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.* +Requires-Dist: wrapt (<2,>=1) +Requires-Dist: bar + +Provides-Extra: dev +Requires-Dist: tox ; extra == 'dev' +Requires-Dist: bumpversion (<1) ; extra == 'dev' +") + +;;; Provides-Extra can appear before Requires-Dist. +(define test-metadata-with-extras-jedi "\ +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.* +Provides-Extra: testing +Requires-Dist: parso (>=0.3.0) +Provides-Extra: testing +Requires-Dist: pytest (>=3.1.0); extra == 'testing' +") (test-begin "pypi") @@ -128,6 +145,18 @@ pytest (>=2.5.0) call-with-input-string) (parse-requires.txt test-requires-with-sections))) +(test-equal "parse-wheel-metadata, with extras" + '("wrapt" "bar") + (mock ((ice-9 ports) call-with-input-file + call-with-input-string) + (parse-wheel-metadata test-metadata-with-extras))) + +(test-equal "parse-wheel-metadata, with extras - Jedi" + '("parso") + (mock ((ice-9 ports) call-with-input-file + call-with-input-string) + (parse-wheel-metadata test-metadata-with-extras-jedi))) + (test-assert "pypi->guix-package" ;; Replace network resources with sample data. (mock ((guix import utils) url-fetch @@ -191,7 +220,7 @@ pytest (>=2.5.0) (mkdir-p "foo-1.0.0/foo.egg-info/") (with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt" (lambda () - (display test-requires.txt))) + (display "wrong data to make sure we're testing wheels "))) (parameterize ((current-output-port (%make-void-port "rw+"))) (system* "tar" "czvf" file-name "foo-1.0.0/")) (delete-file-recursively "foo-1.0.0") @@ -200,13 +229,13 @@ pytest (>=2.5.0) ("https://example.com/foo-1.0.0-py2.py3-none-any.whl" (begin (mkdir "foo-1.0.0.dist-info") - (with-output-to-file "foo-1.0.0.dist-info/metadata.json" + (with-output-to-file "foo-1.0.0.dist-info/METADATA" (lambda () (display test-metadata))) (let ((zip-file (string-append file-name ".zip"))) ;; zip always adds a "zip" extension to the file it creates, ;; so we need to rename it. - (system* "zip" zip-file "foo-1.0.0.dist-info/metadata.json") + (system* "zip" zip-file "foo-1.0.0.dist-info/METADATA") (rename-file zip-file file-name)) (delete-file-recursively "foo-1.0.0.dist-info"))) (_ (error "Unexpected URL: " url))))) @@ -218,6 +247,9 @@ pytest (>=2.5.0) (string-length test-json))) ("https://example.com/foo-1.0.0-py2.py3-none-any.whl" #f) (_ (error "Unexpected URL: " url))))) + ;; Not clearing the memoization cache here would mean returning the value + ;; computed in the previous test. + (invalidate-memoization! pypi->guix-package) (match (pypi->guix-package "foo") (('package ('name "python-foo") -- cgit 1.4.1 From 73e83730607e34d5f89a7166fd1609342d954633 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 12 Jun 2019 11:34:23 +0900 Subject: import: pypi: Fix typo in docstring. * guix/import/pypi.scm (guess-requirements): Fix typo. --- guix/import/pypi.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 7cf1e92101..d861dd960d 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -218,7 +218,7 @@ requirement names." (loop requirements)))))))) (define (guess-requirements source-url wheel-url archive) - "Given SOURCE-URL, WHEEL-URL and a ARCHIVE of the package, return a list + "Given SOURCE-URL, WHEEL-URL and an ARCHIVE of the package, return a list of the required packages specified in the requirements.txt file. ARCHIVE will be extracted in a temporary directory." -- cgit 1.4.1 From f801c6215d8d5b2b21926d8cc41c0beb1f734108 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Wed, 12 Jun 2019 11:36:39 +0900 Subject: import: pypi: Completely mute the output of the "unzip" command. * guix/import/pypi.scm (guess-requirements): Completely mute the output of the "unzip" command. --- guix/import/pypi.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index d861dd960d..23a1e69061 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -230,7 +230,10 @@ be extracted in a temporary directory." (metadata (string-append dirname "/METADATA"))) (call-with-temporary-directory (lambda (dir) - (if (zero? (system* "unzip" "-q" wheel-archive "-d" dir metadata)) + (if (zero? + (parameterize ((current-error-port (%make-void-port "rw+")) + (current-output-port (%make-void-port "rw+"))) + (system* "unzip" wheel-archive "-d" dir metadata))) (parse-wheel-metadata (string-append dir "/" metadata)) (begin (warning -- cgit 1.4.1 From d514276b93ccf168438bbd2892fbc64d5661106c Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 28 Mar 2019 23:12:26 -0400 Subject: import: pypi: Include optional test inputs as native-inputs. * guix/import/pypi.scm (maybe-inputs): Add INPUT-TYPE argument, and use it. (test-section?): New predicate. (parse-requires.txt): Collect the optional test inputs, and return them as the second element of the returned list. (parse-wheel-metadata): Likewise. (guess-requirements): Adapt. (make-pypi-sexp): Likewise, and include the test inputs requirements as native inputs in the returned package expression. * tests/pypi.scm (test-requires.txt): Include a test section in the test-requires.txt data. (test-requires.txt-beaker): New variable. ("parse-requires.txt"): Adapt. ("parse-requires.txt - Beaker"): New test. ("parse-wheel-metadata, with extras"): Adapt. ("parse-wheel-metadata, with extras - Jedi"): Adapt. ("pypi->guix-package, no wheel"): Re-indent, and add the expected native-inputs. ("pypi->guix-package, wheels"): Likewise. --- guix/import/pypi.scm | 177 +++++++++++++++++++++++++++++++++------------------ tests/pypi.scm | 79 ++++++++++++++--------- 2 files changed, 166 insertions(+), 90 deletions(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 23a1e69061..537431dd69 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Mathieu Othacehe ;;; Copyright © 2018 Ricardo Wurmus +;;; Copyright © 2019 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,6 +27,7 @@ #:use-module (ice-9 receive) #:use-module ((ice-9 rdelim) #:select (read-line)) #:use-module (srfi srfi-1) + #:use-module (srfi srfi-11) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) @@ -107,14 +109,15 @@ package on PyPI." ((name version _ ...) (string-append name "-" version ".dist-info")))) -(define (maybe-inputs package-inputs) +(define (maybe-inputs package-inputs input-type) "Given a list of PACKAGE-INPUTS, tries to generate the 'inputs' field of a -package definition." +package definition. INPUT-TYPE, a symbol, is used to populate the name of +the input field." (match package-inputs (() '()) ((package-inputs ...) - `((propagated-inputs (,'quasiquote ,package-inputs)))))) + `((,input-type (,'quasiquote ,package-inputs)))))) (define %requirement-name-regexp ;; Regexp to match the requirement name in a requirement specification. @@ -154,9 +157,19 @@ package definition." (or (regexp-exec %requirement-name-regexp spec) (error (G_ "Could not extract requirement name in spec:") spec)))) +(define (test-section? name) + "Return #t if the section name contains 'test' or 'dev'." + (any (cut string-contains-ci name <>) + '("test" "dev"))) + (define (parse-requires.txt requires.txt) - "Given REQUIRES.TXT, a Setuptools requires.txt file, return a list of -requirement names." + "Given REQUIRES.TXT, a Setuptools requires.txt file, return a list of lists +of requirements. + +The first list contains the required dependencies while the second the +optional test dependencies. Note that currently, optional, non-test +dependencies are omitted since these can be difficult or expensive to +satisfy." (define (comment? line) ;; Return #t if the given LINE is a comment, #f otherwise. @@ -168,26 +181,49 @@ requirement names." (call-with-input-file requires.txt (lambda (port) - (let loop ((result '())) + (let loop ((required-deps '()) + (test-deps '()) + (inside-test-section? #f) + (optional? #f)) (let ((line (read-line port))) - ;; Stop when a section is encountered, as sections contain optional - ;; (extra) requirements. Non-optional requirements must appear - ;; before any section is defined. (cond - ((or (eof-object? line) (section-header? line)) + ((eof-object? line) ;; Duplicates can occur, since the same requirement can be ;; listed multiple times with different conditional markers, e.g. ;; pytest >= 3 ; python_version >= "3.3" ;; pytest < 3 ; python_version < "3.3" - (reverse (delete-duplicates result))) + (map (compose reverse delete-duplicates) + (list required-deps test-deps))) ((or (string-null? line) (comment? line)) - (loop result)) - (else + (loop required-deps test-deps inside-test-section? optional?)) + ((section-header? line) + ;; Encountering a section means that all the requirements + ;; listed below are optional. Since we want to pick only the + ;; test dependencies from the optional dependencies, we must + ;; track those separately. + (loop required-deps test-deps (test-section? line) #t)) + (inside-test-section? + (loop required-deps + (cons (specification->requirement-name line) + test-deps) + inside-test-section? optional?)) + ((not optional?) (loop (cons (specification->requirement-name line) - result))))))))) + required-deps) + test-deps inside-test-section? optional?)) + (optional? + ;; Skip optional items. + (loop required-deps test-deps inside-test-section? optional?)) + (else + (warning (G_ "parse-requires.txt reached an unexpected \ +condition on line ~a~%") line)))))))) (define (parse-wheel-metadata metadata) - "Given METADATA, a Wheel metadata file, return a list of requirement names." + "Given METADATA, a Wheel metadata file, return a list of lists of +requirements. + +Refer to the documentation of PARSE-REQUIRES.TXT for a description of the +returned value." ;; METADATA is a RFC-2822-like, header based file. (define (requires-dist-header? line) @@ -201,21 +237,29 @@ requirement names." ;; Return #t if the given LINE is an "extra" requirement. (string-match "extra == '(.*)'" line)) + (define (test-requirement? line) + (and=> (match:substring (extra? line) 1) test-section?)) + (call-with-input-file metadata (lambda (port) - (let loop ((requirements '())) + (let loop ((required-deps '()) + (test-deps '())) (let ((line (read-line port))) - ;; Stop at the first 'Provides-Extra' section: the non-optional - ;; requirements appear before the optional ones. (cond ((eof-object? line) - (reverse (delete-duplicates requirements))) + (map (compose reverse delete-duplicates) + (list required-deps test-deps))) ((and (requires-dist-header? line) (not (extra? line))) (loop (cons (specification->requirement-name (requires-dist-value line)) - requirements))) + required-deps) + test-deps)) + ((and (requires-dist-header? line) (test-requirement? line)) + (loop required-deps + (cons (specification->requirement-name (requires-dist-value line)) + test-deps))) (else - (loop requirements)))))))) + (loop required-deps test-deps)))))))) ;skip line (define (guess-requirements source-url wheel-url archive) "Given SOURCE-URL, WHEEL-URL and an ARCHIVE of the package, return a list @@ -268,37 +312,46 @@ be extracted in a temporary directory." (() (warning (G_ "Cannot guess requirements from source archive:\ no requires.txt file found.~%")) - '()) + (list '() '())) (else (parse-requires.txt (first requires.txt-files))))))) (begin (warning (G_ "Unsupported archive format; \ cannot determine package dependencies from source archive: ~a~%") (basename source-url)) - '()))) + (list '() '())))) ;; First, try to compute the requirements using the wheel, else, fallback to ;; reading the "requires.txt" from the egg-info directory from the source - ;; tarball. + ;; archive. (or (guess-requirements-from-wheel) (guess-requirements-from-source))) (define (compute-inputs source-url wheel-url archive) - "Given the SOURCE-URL of an already downloaded ARCHIVE, return a list of -name/variable pairs describing the required inputs of this package. Also + "Given the SOURCE-URL and WHEEL-URL of an already downloaded ARCHIVE, return +a pair of lists, each consisting of a list of name/variable pairs, for the +propagated inputs and the native inputs, respectively. Also return the unaltered list of upstream dependency names." - (let ((dependencies - (remove (cut string=? "argparse" <>) - (guess-requirements source-url wheel-url archive)))) - (values (sort - (map (lambda (input) - (let ((guix-name (python->package-name input))) - (list guix-name (list 'unquote (string->symbol guix-name))))) - dependencies) - (lambda args - (match args - (((a _ ...) (b _ ...)) - (string-ci) deps)) + + (define (requirement->package-name/sort deps) + (sort + (map (lambda (input) + (let ((guix-name (python->package-name input))) + (list guix-name (list 'unquote (string->symbol guix-name))))) + deps) + (lambda args + (match args + (((a _ ...) (b _ ...)) + (string-cipackage-name/sort strip-argparse)) + + (let ((dependencies (guess-requirements source-url wheel-url archive))) + (values (map process-requirements dependencies) + (concatenate dependencies)))) (define (make-pypi-sexp name version source-url wheel-url home-page synopsis description license) @@ -307,29 +360,31 @@ VERSION, SOURCE-URL, HOME-PAGE, SYNOPSIS, DESCRIPTION, and LICENSE." (call-with-temporary-output-file (lambda (temp port) (and (url-fetch source-url temp) - (receive (input-package-names upstream-dependency-names) + (receive (guix-dependencies upstream-dependencies) (compute-inputs source-url wheel-url temp) - (values - `(package - (name ,(python->package-name name)) - (version ,version) - (source (origin - (method url-fetch) - - ;; Sometimes 'pypi-uri' doesn't quite work due to mixed - ;; cases in NAME, for instance, as is the case with - ;; "uwsgi". In that case, fall back to a full URL. - (uri (pypi-uri ,(string-downcase name) version)) - (sha256 - (base32 - ,(guix-hash-url temp))))) - (build-system python-build-system) - ,@(maybe-inputs input-package-names) - (home-page ,home-page) - (synopsis ,synopsis) - (description ,description) - (license ,(license->symbol license))) - upstream-dependency-names)))))) + (match guix-dependencies + ((required-inputs test-inputs) + (values + `(package + (name ,(python->package-name name)) + (version ,version) + (source (origin + (method url-fetch) + ;; Sometimes 'pypi-uri' doesn't quite work due to mixed + ;; cases in NAME, for instance, as is the case with + ;; "uwsgi". In that case, fall back to a full URL. + (uri (pypi-uri ,(string-downcase name) version)) + (sha256 + (base32 + ,(guix-hash-url temp))))) + (build-system python-build-system) + ,@(maybe-inputs required-inputs 'propagated-inputs) + ,@(maybe-inputs test-inputs 'native-inputs) + (home-page ,home-page) + (synopsis ,synopsis) + (description ,description) + (license ,(license->symbol license))) + upstream-dependencies)))))))) (define pypi->guix-package (memoize diff --git a/tests/pypi.scm b/tests/pypi.scm index 8b42c2f071..43d45f1dd8 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 David Thompson ;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2019 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -68,11 +69,6 @@ sha1=da9234ee9982d4bbb3c72346a6de940a148ea686")) (define test-requires.txt "\ # A comment # A comment after a space -bar -baz > 13.37 -") - -(define test-requires-with-sections "\ foo ~= 3 bar != 2 @@ -80,12 +76,25 @@ bar != 2 pytest (>=2.5.0) ") +;; Beaker contains only optional dependencies. +(define test-requires.txt-beaker "\ +[crypto] +pycryptopp>=0.5.12 + +[cryptography] +cryptography + +[testsuite] +Mock +coverage +") + (define test-metadata "\ Classifier: Programming Language :: Python :: 3.7 Requires-Dist: baz ~= 3 Requires-Dist: bar != 2 Provides-Extra: test -pytest (>=2.5.0) +Requires-Dist: pytest (>=2.5.0) ; extra == 'test' ") (define test-metadata-with-extras " @@ -139,25 +148,31 @@ Requires-Dist: pytest (>=3.1.0); extra == 'testing' '("Fizzy" "PickyThing" "SomethingWithMarker" "requests" "pip") (map specification->requirement-name test-specifications)) -(test-equal "parse-requires.txt, with sections" - '("foo" "bar") +(test-equal "parse-requires.txt" + (list '("foo" "bar") '("pytest")) (mock ((ice-9 ports) call-with-input-file call-with-input-string) - (parse-requires.txt test-requires-with-sections))) + (parse-requires.txt test-requires.txt))) + +(test-equal "parse-requires.txt - Beaker" + (list '() '("Mock" "coverage")) + (mock ((ice-9 ports) call-with-input-file + call-with-input-string) + (parse-requires.txt test-requires.txt-beaker))) (test-equal "parse-wheel-metadata, with extras" - '("wrapt" "bar") + (list '("wrapt" "bar") '("tox" "bumpversion")) (mock ((ice-9 ports) call-with-input-file call-with-input-string) (parse-wheel-metadata test-metadata-with-extras))) (test-equal "parse-wheel-metadata, with extras - Jedi" - '("parso") + (list '("parso") '("pytest")) (mock ((ice-9 ports) call-with-input-file call-with-input-string) (parse-wheel-metadata test-metadata-with-extras-jedi))) -(test-assert "pypi->guix-package" +(test-assert "pypi->guix-package, no wheel" ;; Replace network resources with sample data. (mock ((guix import utils) url-fetch (lambda (url file-name) @@ -198,7 +213,10 @@ Requires-Dist: pytest (>=3.1.0); extra == 'testing' ('propagated-inputs ('quasiquote (("python-bar" ('unquote 'python-bar)) - ("python-baz" ('unquote 'python-baz))))) + ("python-foo" ('unquote 'python-foo))))) + ('native-inputs + ('quasiquote + (("python-pytest" ('unquote 'python-pytest))))) ('home-page "http://example.com") ('synopsis "summary") ('description "summary") @@ -219,25 +237,25 @@ Requires-Dist: pytest (>=3.1.0); extra == 'testing' (begin (mkdir-p "foo-1.0.0/foo.egg-info/") (with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt" - (lambda () - (display "wrong data to make sure we're testing wheels "))) + (lambda () + (display "wrong data to make sure we're testing wheels "))) (parameterize ((current-output-port (%make-void-port "rw+"))) (system* "tar" "czvf" file-name "foo-1.0.0/")) - (delete-file-recursively "foo-1.0.0") - (set! test-source-hash - (call-with-input-file file-name port-sha256)))) + (delete-file-recursively "foo-1.0.0") + (set! test-source-hash + (call-with-input-file file-name port-sha256)))) ("https://example.com/foo-1.0.0-py2.py3-none-any.whl" - (begin - (mkdir "foo-1.0.0.dist-info") - (with-output-to-file "foo-1.0.0.dist-info/METADATA" - (lambda () - (display test-metadata))) - (let ((zip-file (string-append file-name ".zip"))) - ;; zip always adds a "zip" extension to the file it creates, - ;; so we need to rename it. - (system* "zip" zip-file "foo-1.0.0.dist-info/METADATA") - (rename-file zip-file file-name)) - (delete-file-recursively "foo-1.0.0.dist-info"))) + (begin + (mkdir "foo-1.0.0.dist-info") + (with-output-to-file "foo-1.0.0.dist-info/METADATA" + (lambda () + (display test-metadata))) + (let ((zip-file (string-append file-name ".zip"))) + ;; zip always adds a "zip" extension to the file it creates, + ;; so we need to rename it. + (system* "zip" "-q" zip-file "foo-1.0.0.dist-info/METADATA") + (rename-file zip-file file-name)) + (delete-file-recursively "foo-1.0.0.dist-info"))) (_ (error "Unexpected URL: " url))))) (mock ((guix http-client) http-fetch (lambda (url . rest) @@ -265,6 +283,9 @@ Requires-Dist: pytest (>=3.1.0); extra == 'testing' ('quasiquote (("python-bar" ('unquote 'python-bar)) ("python-baz" ('unquote 'python-baz))))) + ('native-inputs + ('quasiquote + (("python-pytest" ('unquote 'python-pytest))))) ('home-page "http://example.com") ('synopsis "summary") ('description "summary") -- cgit 1.4.1 From a5376200541abf8245973e601be246bf65b8b6c7 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 16 Jun 2019 14:52:25 +0900 Subject: import: pypi: Update the host URI. * guix/build-system/python.scm (pypi-uri): Update the host URI to "files.pythonhosted.org". --- guix/build-system/python.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/build-system/python.scm b/guix/build-system/python.scm index b753940bad..e39c06528e 100644 --- a/guix/build-system/python.scm +++ b/guix/build-system/python.scm @@ -50,7 +50,7 @@ "Return a URI string for the Python package hosted on the Python Package Index (PyPI) corresponding to NAME and VERSION. EXTENSION is the file name extension, such as '.tar.gz'." - (string-append "https://pypi.org/packages/source/" + (string-append "https://files.pythonhosted.org/packages/source/" (string-take name 1) "/" name "/" name "-" version extension)) -- cgit 1.4.1 From 4b60ab8c006964d026dee8cf5f1260eba0b2bb81 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sat, 30 Mar 2019 20:27:35 -0400 Subject: import: pypi: Preserve package name case when forming pypi-uri. Fixes . * guix/build-system/python.scm (pypi-uri): Update the host URI to "files.pythonhosted.org". * guix/import/pypi.scm (make-pypi-sexp): Preserve the package name case when the source URL calls for it. --- guix/import/pypi.scm | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 537431dd69..ab7a024ee0 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -368,15 +368,20 @@ VERSION, SOURCE-URL, HOME-PAGE, SYNOPSIS, DESCRIPTION, and LICENSE." `(package (name ,(python->package-name name)) (version ,version) - (source (origin - (method url-fetch) - ;; Sometimes 'pypi-uri' doesn't quite work due to mixed - ;; cases in NAME, for instance, as is the case with - ;; "uwsgi". In that case, fall back to a full URL. - (uri (pypi-uri ,(string-downcase name) version)) - (sha256 - (base32 - ,(guix-hash-url temp))))) + (source + (origin + (method url-fetch) + ;; PyPI URL are case sensitive, but sometimes a project + ;; named using mixed case has a URL using lower case, so + ;; we must work around this inconsistency. For actual + ;; examples, compare the URLs of the "Deprecated" and + ;; "uWSGI" PyPI packages. + (uri ,(if (string-contains source-url name) + `(pypi-uri ,name version) + `(pypi-uri ,(string-downcase name) version))) + (sha256 + (base32 + ,(guix-hash-url temp))))) (build-system python-build-system) ,@(maybe-inputs required-inputs 'propagated-inputs) ,@(maybe-inputs test-inputs 'native-inputs) -- cgit 1.4.1 From 48eb71aea807262210c38b5fb675d747adfccff3 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Mon, 1 Jul 2019 15:37:10 +0200 Subject: gnu: emacsy: Update to 0.4.1. * gnu/packages/guile-xyz.scm (emacsy): Update to 0.4.1. --- gnu/packages/guile-xyz.scm | 119 ++++++++++++++++++--------------------------- 1 file changed, 46 insertions(+), 73 deletions(-) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index a8352380f7..f652a94d2e 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -2326,82 +2326,55 @@ more expressive and flexible than the traditional @code{format} procedure.") (license license:bsd-3)))) (define-public emacsy - (let ((commit "7d49cc1425d5d209bdb82cac0d8ea0694b8b3784") - (revision "4")) - (package - (name "emacsy") - (version (string-append "0.1.2-" revision "." (string-take commit 7))) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/janneke/emacsy.git") - (commit commit))) - (file-name (string-append name "-" version)) - (sha256 - (base32 - "0k9yns1v8zn135w60sx96nqs2bm2p2dvcvlm987hkw4lbff9ii6i")))) - (build-system gnu-build-system) - (native-inputs - `(("emacsy-webkit-gtk" - ,(origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/janneke/emacsy-webkit-gtk.git") - (commit "35ded1b3e997fd779a17e0c4a2c73741718562d9"))) - (file-name (string-append "emacsy-webkit-gtk" "-" version)) - (sha256 - (base32 - "1gp0li2rbp6in926r3hrww6cnh864pp46v1din2pgmd7vzzl7kg0")))) - ("hello-emacsy" - ,(origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/janneke/hello-emacsy.git") - (commit "2c117e5286a261be4ff24938f3ae1d348396c538"))) - (file-name (string-append "hello-emacsy" "-" version)) - (sha256 - (base32 - "15ykd7s8axcy8ym4v71fgal4x28fxnim0pv0jmpi3dnhizr63zqn")))) - ("autoconf" ,autoconf) - ("automake" ,automake) - ("bzip2" ,bzip2) - ("guile" ,guile-2.2) - ("gettext" ,gnu-gettext) - ("libtool" ,libtool) - ("noweb" ,noweb) - ("perl" ,perl) - ("pkg-config" ,pkg-config) - ("texinfo" ,texinfo) - ("texlive" ,texlive))) - (propagated-inputs - `(("guile-lib" ,guile-lib) - ("guile-readline" ,guile-readline) - ("freeglut" ,freeglut) - ("gssettings-desktop-schemas" ,gsettings-desktop-schemas) - ("webkitgtk" ,webkitgtk))) - (inputs `(("guile" ,guile-2.2))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'unpack-examples - (lambda _ - (copy-recursively (assoc-ref %build-inputs "emacsy-webkit-gtk") - "example/emacsy-webkit-gtk") - (copy-recursively (assoc-ref %build-inputs "hello-emacsy") - "example/hello-emacsy"))) - (add-before 'configure 'setenv - (lambda _ - (setenv "GUILE_AUTO_COMPILE" "0")))))) - (home-page "https://github.com/shanecelis/emacsy/") - (synopsis "Embeddable GNU Emacs-like library using Guile") - (description - "Emacsy is an embeddable GNU Emacs-like library that uses GNU Guile + (package + (name "emacsy") + (version "0.4.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://download.savannah.nongnu.org/releases/" + name "/" name "-" version ".tar.gz")) + (sha256 + (base32 + "1cpb85dl1nibd34c2x2h7vfmjpkgh353p5b1w20v6cs6gmvgg4np")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("bzip2" ,bzip2) + ("guile" ,guile-2.2) + ("gettext" ,gnu-gettext) + ("libtool" ,libtool) + ("perl" ,perl) + ("pkg-config" ,pkg-config) + ("texinfo" ,texinfo) + ("texlive" ,texlive))) + (propagated-inputs + `(("dbus-glib" ,dbus-glib) + ("guile" ,guile-2.2) + ("guile-lib" ,guile-lib) + ("guile-readline" ,guile-readline) + ("glib-networking" ,glib-networking) + ("freeglut" ,freeglut) + ("gssettings-desktop-schemas" ,gsettings-desktop-schemas) + ("webkitgtk" ,webkitgtk))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'setenv + (lambda _ + (setenv "GUILE_AUTO_COMPILE" "0") + #t))))) + (home-page "https://savannah.nongnu.org/projects/emacsy") + (synopsis "Embeddable GNU Emacs-like library using Guile") + (description + "Emacsy is an embeddable Emacs-like library that uses GNU Guile as extension language. Emacsy can give a C program an Emacsy feel with keymaps, minibuffer, recordable macros, history, tab completion, major and minor modes, etc., and can also be used as a pure Guile library. It -comes with a simple counter example using GLUT and browser examples in C -using gtk+-3 and webkitgtk.") - (license license:gpl3+)))) +comes with a simple counter example using FreeGLUT and browser examples +in C using Gtk+-3 and WebKitGtk.") + (license license:gpl3+))) (define-public guile-jpeg (let ((commit "6a1673578b297c2c1b28e44a76bd5c49e76a5046") -- cgit 1.4.1 From 941ae98eae755a92a0e28d04490ee9a237cc585f Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Tue, 2 Jul 2019 09:35:01 +0200 Subject: gnu: faudio: Update to 19.07. * gnu/packages/audio.scm (faudio): Update to 19.07. --- 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 b8dbc2f00a..eff4edeb59 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -3701,7 +3701,7 @@ library.") (define-public faudio (package (name "faudio") - (version "19.06.07") + (version "19.07") (source (origin (method git-fetch) @@ -3710,7 +3710,7 @@ library.") (commit version))) (file-name (string-append name "-" version "-checkout")) (sha256 - (base32 "1w37qp279lgpyvslwz3wlb4fp0i68ncd411rqdlk5s71b1zz466n")))) + (base32 "1wf6skc5agaikc9qgwk8bx56sad31fafs53lqqn4jmx8i76pl0lw")))) (arguments '(#:tests? #f ; No tests. #:configure-flags '("-DFFMPEG=ON"))) -- cgit 1.4.1 From 71a29277055708b509a477d97c8d5f9815f1b939 Mon Sep 17 00:00:00 2001 From: Amar Singh Date: Sat, 29 Jun 2019 03:09:31 +0530 Subject: gnu: emacs-shroud: Update to 1.83.4. * gnu/packages/emacs-xyz.scm (emacs-shroud): Update to 1.83.4. Signed-off-by: Efraim Flashner --- gnu/packages/emacs-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 2a59ae522e..a27de2f778 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -550,7 +550,7 @@ for editing Racket's Scribble documentation syntax in Emacs.") (define-public emacs-shroud (package (name "emacs-shroud") - (version "1.15.1") + (version "1.83.4") (source (origin (method git-fetch) @@ -559,7 +559,7 @@ for editing Racket's Scribble documentation syntax in Emacs.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0wvm4lxqcc1p8v7rpqal3bnqgnpk1gs7v18i83f6cvi5d88jkgdg")))) + (base32 "1yvdjx0kp4y8w5yz2cbqq9n6xl5splvmsyyx8ld1xv0q1c9872nf")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-bui" ,emacs-bui) -- cgit 1.4.1 From 4bac5bba51383f5c01cd5a9a5efe7b9198be86c0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 2 Jul 2019 11:42:56 +0300 Subject: gnu: Wrap program with libraries. * gnu/packages/package-management.scm (stow)[arguments]: Add custom 'wrap-stow phase to wrap stow with necessary inputs. [propagated-inputs]: Move perl-clone, perl-clone-choose, perl-hash-merge to... [inputs]: ... here. --- gnu/packages/package-management.scm | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index ca360b3884..d0388e5d43 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -475,17 +475,28 @@ sub-directory.") (base32 "0h8qr2rxsrkg6d8jxjk68r23jgn1dxdxyp4bnzzinpa8sjhfl905")))) (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-stow + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/stow") + `("PERL5LIB" ":" prefix + ,(map (lambda (i) (string-append (assoc-ref inputs i) + "/lib/perl5/site_perl")) + '("perl-clone-choose" "perl-clone" "perl-hash-merge")))) + #t)))))) (inputs - `(("perl" ,perl))) + `(("perl" ,perl) + ("perl-clone" ,perl-clone) + ("perl-clone-choose" ,perl-clone-choose) + ("perl-hash-merge" ,perl-hash-merge))) (native-inputs `(("perl-test-simple" ,perl-test-simple) ("perl-test-output" ,perl-test-output) ("perl-capture-tiny" ,perl-capture-tiny) ("perl-io-stringy" ,perl-io-stringy))) - (propagated-inputs - `(("perl-clone-choose" ,perl-clone-choose) - ("perl-clone" ,perl-clone) - ("perl-hash-merge" ,perl-hash-merge))) (home-page "https://www.gnu.org/software/stow/") (synopsis "Managing installed software packages") (description -- cgit 1.4.1 From 697df13f613468f4c572f85d3411dbf60b7bc45a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 2 Jul 2019 15:04:56 +0300 Subject: gnu: octave-cli: Sort inputs alphabetically. * gnu/packages/maths.scm (octave-cli)[inputs]: Sort inputs alphabetically. --- gnu/packages/maths.scm | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 5b31596041..7d2c4797f1 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1463,30 +1463,30 @@ can solve two kinds of problems: "11wwxpy2q1bhxs2v41bqn05i2sb0905cj1xil6mg8l4k2kka4cq6")))) (build-system gnu-build-system) (inputs - `(("lapack" ,lapack) - ("qhull" ,qhull) - ("readline" ,readline) - ("gl2ps" ,gl2ps) - ("glpk" ,glpk) + `(("alsa-lib" ,alsa-lib) + ("arpack" ,arpack-ng) + ("curl" ,curl) ("fftw" ,fftw) ("fftwf" ,fftwf) - ("arpack" ,arpack-ng) - ("pcre" ,pcre) ("fltk" ,fltk) ("fontconfig" ,fontconfig) ("freetype" ,freetype) - ("hdf5" ,hdf5) - ("libxft" ,libxft) - ("mesa" ,mesa) + ("gl2ps" ,gl2ps) + ("glpk" ,glpk) ("glu" ,glu) - ("zlib" ,zlib) - ("curl" ,curl) - ("texinfo" ,texinfo) ("graphicsmagick" ,graphicsmagick) - ("suitesparse" ,suitesparse) + ("hdf5" ,hdf5) + ("lapack" ,lapack) ("libsndfile" ,libsndfile) + ("libxft" ,libxft) + ("mesa" ,mesa) + ("pcre" ,pcre) ("portaudio" ,portaudio) - ("alsa-lib" ,alsa-lib))) + ("qhull" ,qhull) + ("readline" ,readline) + ("suitesparse" ,suitesparse) + ("texinfo" ,texinfo) + ("zlib" ,zlib))) (native-inputs `(("lzip" ,lzip) ("gfortran" ,gfortran) -- cgit 1.4.1 From 4c1cfe0faf78e95decdb908528a896ef8e31c217 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 14:09:30 +0200 Subject: gnu: perl-module-build: Update to 0.4229. * gnu/packages/perl.scm (perl-module-build): Update to 0.4229. --- 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 d0df091494..9ab7c37a24 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -9588,7 +9588,7 @@ MYMETA.yml.") (define-public perl-module-build (package (name "perl-module-build") - (version "0.4220") + (version "0.4229") (source (origin (method url-fetch) @@ -9596,7 +9596,7 @@ MYMETA.yml.") "Module-Build-" version ".tar.gz")) (sha256 (base32 - "18mm6k7d7cmj9l6na1c50vbc8hc1pwsz38yxi9x6ydlrwz3hf4pv")))) + "064c03wxia7jz0i578awj4srykj0nnigm4p5r0dv0559rnk93r0z")))) (build-system perl-build-system) (propagated-inputs `(("perl-cpan-meta" ,perl-cpan-meta))) -- cgit 1.4.1 From c6c0940ea33f034ea0efc5525feaeeebdc7b521d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 14:36:00 +0200 Subject: gnu: python-pycparser: Update to 2.19. * gnu/packages/python-xyz.scm (python-pycparser): Update to 2.19. [arguments]: End phases on #t. --- gnu/packages/python-xyz.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8398dede79..01b0f15cea 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -4413,14 +4413,14 @@ a general image processing tool.") (define-public python-pycparser (package (name "python-pycparser") - (version "2.18") + (version "2.19") (source (origin (method url-fetch) (uri (pypi-uri "pycparser" version)) (sha256 (base32 - "09mjyw82ibqzl449g7swy8bfxnfpmas0815d2rkdjlcqw81wma4r")))) + "1cr5dcj9628lkz1qlwq3fv97c25363qppkmcayqvd05dpy573259")))) (outputs '("out" "doc")) (build-system python-build-system) (native-inputs @@ -4443,7 +4443,8 @@ a general image processing tool.") (copy-file (string-append "." file) (string-append doc file))) '("/README.rst" "/CHANGES" "/LICENSE")) - (copy-recursively "examples" examples))))))) + (copy-recursively "examples" examples) + #t)))))) (home-page "https://github.com/eliben/pycparser") (synopsis "C parser in Python") (description -- cgit 1.4.1 From 6dc7a1934269b537e19876165a18caf2a18aad2a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 14:48:04 +0200 Subject: gnu: python-mako: Update to 1.0.13. * gnu/packages/python-xyz.scm (python-mako): Update to 1.0.13. --- gnu/packages/python-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 01b0f15cea..26b53b62ca 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8672,14 +8672,14 @@ python-xdo for newer bindings.)") (define-public python-mako (package (name "python-mako") - (version "1.0.12") + (version "1.0.13") (source (origin (method url-fetch) (uri (pypi-uri "Mako" version)) (sha256 (base32 - "0qj16ai937wrbpv1a9g395gybb9s06rmdj3arbp8fpl37bg6byhc")))) + "0h95n0g0k1jwxiqarr09navpfajarvbmpm8mhmw66c25qc675vlm")))) (build-system python-build-system) (propagated-inputs `(("python-markupsafe" ,python-markupsafe))) -- cgit 1.4.1 From af65e4c289041bbf8d03d9655cfd8f62621a51ed Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 14:49:47 +0200 Subject: gnu: ImageMagick: Update to 6.9.10-51. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.10-51. --- 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 769b0bda64..3cc9396d57 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -48,14 +48,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.10-50") + (version "6.9.10-51") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "1p8mqfz500bc6hapm64xr5qjrgmkfw7cq9m73xfzaxlriih8rm56")))) + "03c5r14ycp7mmlk6pryfcnpvjjnghk3z7dbjd1b7m1bgzmw21jhj")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") -- cgit 1.4.1 From 35a16f5f6d78f15309b8e8282f46887835db83e0 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Tue, 2 Jul 2019 13:45:16 +0200 Subject: gnu: btrfs-progs: Update to 5.1.1. * gnu/packages/linux.scm (btrfs-progs): Update to 5.1.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 72b62faf42..b4407a5133 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3544,7 +3544,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "5.1") + (version "5.1.1") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -3552,7 +3552,7 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "0dgh56pamav8wb9nmabjwdlpcazvqc9pgzwablxn77mqh0qrhkaq")))) + "06xybs7rglxjqkbzl2409acb3rgmnc5zc0xhyaxsc2p1x5yipfcw")))) (build-system gnu-build-system) (outputs '("out" "static")) ; static versions of the binaries in "out" -- cgit 1.4.1 From 0323db5aef236647ac3318bdd028edac6b92da68 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 17:11:39 +0200 Subject: gnu: tzdata: Update to 2019b. * gnu/packages/base.scm (tzdata): Update to 2019b. --- gnu/packages/base.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 59b50440aa..90dd69cfa3 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -1215,7 +1215,7 @@ command.") (define-public tzdata (package (name "tzdata") - (version "2019a") + (version "2019b") (source (origin (method url-fetch) (uri (string-append @@ -1223,7 +1223,7 @@ command.") version ".tar.gz")) (sha256 (base32 - "0wlpqm4asvi0waaz24xj20iq40gqfypmb4nldjhkfgm09bgnsdlh")))) + "0r0clnlslwm15m1c61dinf1fi9ffgl6aipng7i7yryfwj0n0kn85")))) (build-system gnu-build-system) (arguments '(#:tests? #f @@ -1273,7 +1273,7 @@ command.") version ".tar.gz")) (sha256 (base32 - "1x9z8fpgnhzlsnps0hamb54ymaskjab7ys9m4i4gpk9hpiig2fc7")))))) + "0vbmswvv3li25s31shyllq5v24449lxnrki9hr043nipjd09sirf")))))) (home-page "https://www.iana.org/time-zones") (synopsis "Database of current and historical time zones") (description "The Time Zone Database (often called tz or zoneinfo) -- cgit 1.4.1 From e307f52e01f46f99d7e3e729b9cfac446c783fc4 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 17:14:34 +0200 Subject: gnu: postgresql@10: Update to 10.9. * gnu/packages/databases.scm (postgresql): Update to 10.9. --- 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 561a3b3b12..01ce5f1ae7 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -804,14 +804,14 @@ as a drop-in replacement of MySQL.") (define-public postgresql (package (name "postgresql") - (version "10.8") + (version "10.9") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "0pfdmy4w95b49w9rkn8dwvzmi2brpqfvbxd04y0k0s0xvymc565i")) + "0m0gbf7nwgag6a1z5f9xszwzgf2xhx0ncakyxwxlzs87n1zk32wm")) (patches (search-patches "postgresql-disable-resolve_symlinks.patch")))) (build-system gnu-build-system) (arguments -- cgit 1.4.1 From f62b57ba74ebaee36c554b42933095612d1aee01 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 1 Jul 2019 12:15:48 +0200 Subject: gnu: re2: Update to 2019-07-01. * gnu/packages/regex.scm (re2): Update to 2019-07-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 a64944080b..71dac09737 100644 --- a/gnu/packages/regex.scm +++ b/gnu/packages/regex.scm @@ -30,7 +30,7 @@ (define-public re2 (package (name "re2") - (version "2019-06-01") + (version "2019-07-01") (home-page "https://github.com/google/re2") (source (origin (method git-fetch) @@ -38,7 +38,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "01613z66wgiffdngbq3031rwd92jf87j93h7y5mn8hlx19gg5k4j")))) + "1ric6gdnf5mqj5iy5f81al49mr3mmjqj3nqi3mw2hjdbbgwkdn71")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) -- cgit 1.4.1 From b8d41cfc875b1a6c438ac138fdce9caa579b8486 Mon Sep 17 00:00:00 2001 From: Robert Vollmert Date: Sun, 30 Jun 2019 22:54:48 +0200 Subject: gnu: ghc-primitive: Update to 0.6.4.0. * gnu/packages/haskell.scm (ghc-primitive): Update to 0.6.4.0. Signed-off-by: Marius Bakke --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index cfbd3bfb76..52f688a283 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -2685,7 +2685,7 @@ library, including the ability to split random number generators.") (define-public ghc-primitive (package (name "ghc-primitive") - (version "0.6.3.0") + (version "0.6.4.0") (outputs '("out" "doc")) (source (origin @@ -2696,7 +2696,7 @@ library, including the ability to split random number generators.") ".tar.gz")) (sha256 (base32 - "0mcmbnj08wd6zfwn7xk6zf5hy5zwbla5v78pw0dpymqg9s0gzpnd")))) + "0r0cda7acvplgwaxy69kviv4jp7kkfi038by68gj4yfx4iwszgjc")))) (build-system haskell-build-system) (home-page "https://github.com/haskell/primitive") -- cgit 1.4.1 From 8b5df106fdd52b8851bbdd978077e8ab257eb840 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 2 Jul 2019 14:52:00 +0200 Subject: gnu: WebKitGTK: Update to 2.24.3. * gnu/packages/webkit.scm (webkitgtk-2.24): Update to 2.24.3. [source](patches): Remove. * gnu/packages/patches/webkitgtk-sans-gstreamer-gl.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. --- gnu/local.mk | 1 - .../patches/webkitgtk-sans-gstreamer-gl.patch | 24 ---------------------- gnu/packages/webkit.scm | 5 ++--- 3 files changed, 2 insertions(+), 28 deletions(-) delete mode 100644 gnu/packages/patches/webkitgtk-sans-gstreamer-gl.patch diff --git a/gnu/local.mk b/gnu/local.mk index 0f4cb2a6e4..6e90d88689 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1370,7 +1370,6 @@ dist_patch_DATA = \ %D%/packages/patches/wavpack-CVE-2018-6767.patch \ %D%/packages/patches/wavpack-CVE-2018-7253.patch \ %D%/packages/patches/wavpack-CVE-2018-7254.patch \ - %D%/packages/patches/webkitgtk-sans-gstreamer-gl.patch \ %D%/packages/patches/weechat-python.patch \ %D%/packages/patches/wicd-bitrate-none-fix.patch \ %D%/packages/patches/wicd-get-selected-profile-fix.patch \ diff --git a/gnu/packages/patches/webkitgtk-sans-gstreamer-gl.patch b/gnu/packages/patches/webkitgtk-sans-gstreamer-gl.patch deleted file mode 100644 index 4577c81edb..0000000000 --- a/gnu/packages/patches/webkitgtk-sans-gstreamer-gl.patch +++ /dev/null @@ -1,24 +0,0 @@ -Fix build failure when USE_GSTREAMER_GL=off. See -. - -This patch is taken from the upstream source repository: -. - -diff --git a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp -index 00a2af6489e..5cb5f7536ac 100644 ---- a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp -+++ b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp -@@ -1000,11 +1000,13 @@ void MediaPlayerPrivateGStreamerBase::updateTextureMapperFlags() - break; - } - -+#if USE(GSTREAMER_GL) - // When the imxvpudecoder is used, the texture sampling of the - // directviv-uploaded texture returns an RGB value, so there's no need to - // convert it. - if (m_videoDecoderPlatform != WebKitGstVideoDecoderPlatform::ImxVPU) - m_textureMapperFlags |= TEXTURE_MAPPER_COLOR_CONVERT_FLAG; -+#endif - } - #endif - diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index e9b7ab74a7..6b38998772 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -168,15 +168,14 @@ HTML/CSS applications to full-fledged web browsers.") (define-public webkitgtk-2.24 (package/inherit webkitgtk (name "webkitgtk") - (version "2.24.2") + (version "2.24.3") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "071jnjvjq6wsxx1jh4ql3j53h1nhphs5ga67fa5i9xjvs3qb3701")) - (patches (search-patches "webkitgtk-sans-gstreamer-gl.patch")))) + "0lbcrw5axwrbrajxq7fqywfyh0djqi23ynzb5wi5ghw2grnp83cl")))) (native-inputs `(("gcc" ,gcc-7) ; webkitgtk-2.22 requires gcc-6 or newer ,@(package-native-inputs webkitgtk))) -- cgit 1.4.1 From 7c9fbf3e3dde341b33cfa8dca10001150e54640e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 2 Jul 2019 16:41:33 +0200 Subject: derivations: Update 'build-derivations' docstring. This is a followup to 7c690a47381f645ec5ec0a1fd6ffc34dba1b69c2. * guix/derivations.scm (build-derivations): Update docstring. --- guix/derivations.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/guix/derivations.scm b/guix/derivations.scm index 433b4551a5..ebeac31877 100644 --- a/guix/derivations.scm +++ b/guix/derivations.scm @@ -1011,8 +1011,8 @@ recursively." (define* (build-derivations store derivations #:optional (mode (build-mode normal))) - "Build DERIVATIONS, a list of objects, .drv file names, or -derivation/output pairs, using the specified MODE." + "Build DERIVATIONS, a list of or objects, +.drv file names, or derivation/output pairs, using the specified MODE." (build-things store (map (match-lambda ((? derivation? drv) (derivation-file-name drv)) -- cgit 1.4.1 From 9616b81e9861c831159a0e1a5993854b9ad3c3e5 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 2 Jul 2019 16:45:12 +0200 Subject: grafts: 'references-oracle' now takes a derivation input. That way, if we end up calling 'build-derivations', we'll only build the outputs that we really need. * guix/grafts.scm (references-oracle): Rename 'drv' to 'input'. [output-paths]: Remove. Adjust accordingly. (graft-derivation): Adjust call to 'references-oracle'. --- guix/grafts.scm | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/guix/grafts.scm b/guix/grafts.scm index 3b43e11425..adc7bfafae 100644 --- a/guix/grafts.scm +++ b/guix/grafts.scm @@ -163,16 +163,11 @@ references. Call REFERENCES to get the list of references." items)))) (remove (cut member <> self) refs))) -(define (references-oracle store drv) - "Return a one-argument procedure that, when passed the file name of DRV's -outputs or their dependencies, returns the list of references of that item. -Use either local info or substitute info; build DRV if no information is -available." - (define (output-paths drv) - (match (derivation->output-paths drv) - (((names . items) ...) - items))) - +(define (references-oracle store input) + "Return a one-argument procedure that, when passed the output file names of +INPUT, a derivation input, or their dependencies, returns the list of +references of that item. Use either local info or substitute info; build +INPUT if no information is available." (define (references* items) (guard (c ((store-protocol-error? c) ;; As a last resort, build DRV and query the references of the @@ -181,13 +176,14 @@ available." ;; Warm up the narinfo cache, otherwise each derivation build ;; will result in one HTTP request to get one narinfo, which is ;; much less efficient than fetching them all upfront. - (substitution-oracle store (list drv)) + (substitution-oracle store + (list (derivation-input-derivation input))) - (and (build-derivations store (list drv)) + (and (build-derivations store (list input)) (map (cut references store <>) items)))) (references/substitutes store items))) - (let loop ((items (output-paths drv)) + (let loop ((items (derivation-input-output-paths input)) (result vlist-null)) (match items (() @@ -324,7 +320,7 @@ DRV, and graft DRV itself to refer to those grafted dependencies." ;; upfront to have as much parallelism as possible when querying substitute ;; info or when building DRV. (define references - (references-oracle store drv)) + (references-oracle store (derivation-input drv outputs))) (match (run-with-state (cumulative-grafts store drv grafts references -- cgit 1.4.1 From 334a2f4def1d4f9dc37718d847923cd941849607 Mon Sep 17 00:00:00 2001 From: Robert Vollmert Date: Thu, 13 Jun 2019 15:50:37 +0200 Subject: gnu: postgres service: More secure default permissions. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This changes to 'peer' authentication for local socket connections, and password-based authentication for local network connections. * gnu/services/databases.scm (%default-postgres-hba): Change authentication method. Signed-off-by: Ludovic Courtès --- gnu/services/databases.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm index 7113f1f2a1..ec31489d48 100644 --- a/gnu/services/databases.scm +++ b/gnu/services/databases.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Christopher Baines ;;; Copyright © 2018 Clément Lassieur ;;; Copyright © 2018 Julien Lepiller +;;; Copyright © 2019 Robert Vollmert ;;; ;;; This file is part of GNU Guix. ;;; @@ -91,9 +92,9 @@ (define %default-postgres-hba (plain-file "pg_hba.conf" " -local all all trust -host all all 127.0.0.1/32 trust -host all all ::1/128 trust")) +local all all peer +host all all 127.0.0.1/32 md5 +host all all ::1/128 md5")) (define %default-postgres-ident (plain-file "pg_ident.conf" -- cgit 1.4.1 From 52bb05c70274e5f235901cf8f6d190bfce728e87 Mon Sep 17 00:00:00 2001 From: guy fleury iteriteka Date: Fri, 24 May 2019 11:33:07 +0200 Subject: gnu: Add chafa. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/image-viewers.scm (chaffa): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/image-viewers.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index a5bfb28a88..7d2ff9a677 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018, 2019 Ricardo Wurmus ;;; Copyright © 2019 Nicolas Goaziou +;;; Copyright © 2019 Guy Fleury Iteriteka ;;; ;;; This file is part of GNU Guix. ;;; @@ -477,3 +478,28 @@ minimalism and usability in mind. Its features include animated GIF controls, file history, rotation/mirroring, and multithreaded preloading.") (license license:gpl3+))) + +(define-public chafa + (package + (name "chafa") + (version "1.0.1") + (source (origin + (method url-fetch) + (uri (string-append "https://hpjansson.org/chafa/releases/chafa-" + version ".tar.xz")) + (sha256 + (base32 + "00cf2z52az0z6bzc3hfm4l8infipy5ck410wqmbaybd2csjr3m29")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("glib" ,glib) + ("imagemagick" ,imagemagick))) + (synopsis "Convert images to ANSI/Unicode characters") + (description + "Chafa is a command-line utility that converts all kinds of images, +including animated GIFs, into ANSI/Unicode character output that can be +displayed in a terminal.") + (home-page "https://hpjansson.org/chafa/") + (license license:lgpl3+))) -- cgit 1.4.1 From c473bd1881d5093789b41cb6927ee3a5ed6d0439 Mon Sep 17 00:00:00 2001 From: Jacob MacDonald Date: Fri, 7 Jun 2019 05:24:12 -0500 Subject: gnu: Add ghc-wl-pprint-annotated. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-wl-pprint-annotated): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index cfbd3bfb76..f40d92b9f7 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11591,4 +11591,34 @@ Replace some ASCII sequences by their Unicode equivalent (turned off by default) @end itemize") (license license:bsd-3))) + +(define-public ghc-wl-pprint-annotated + (package + (name "ghc-wl-pprint-annotated") + (version "0.1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/wl-pprint-annotated/wl-pprint-annotated-" + version + ".tar.gz")) + (sha256 + (base32 + "1br7qyf27iza213inwhf9bm2k6in0zbmfw6w4clqlc9f9cj2nrkb")))) + (build-system haskell-build-system) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page + "https://github.com/minad/wl-pprint-annotated#readme") + (synopsis + "Wadler/Leijen pretty printer with annotation support") + (description + "Annotations are useful for coloring. This is a limited version of +@code{wl-pprint-extras} without support for point effects and without the free +monad. Like in @code{annotated-wl-pprint}, only annotations are supported. +Compared to @code{annotated-wl-pprint} this library provides a slightly +modernized interface.") + (license license:bsd-3))) ;;; haskell.scm ends here -- cgit 1.4.1 From cbff89d126bf5985cfa4884f543c0908c437ff41 Mon Sep 17 00:00:00 2001 From: Jacob MacDonald Date: Fri, 7 Jun 2019 06:00:26 -0500 Subject: gnu: Add ghc-ansi-terminal-0.8. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-ansi-terminal-0.8): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index f40d92b9f7..a7a8b762c4 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -4383,6 +4383,21 @@ allows cursor movement, screen clearing, color output showing or hiding the cursor, and changing the title.") (license license:bsd-3))) +(define-public ghc-ansi-terminal-0.8 + (package (inherit ghc-ansi-terminal) + (name "ghc-ansi-terminal") + (version "0.8.0.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/ansi-terminal/ansi-terminal-" + version + ".tar.gz")) + (sha256 + (base32 + "0428gq8m3fdnb7ldcsyk97qcch76hcxbgh2666p6f76fs2qbhg7b")))))) + (define-public ghc-vault (package (name "ghc-vault") -- cgit 1.4.1 From 5a499d0f7d5b98443ed0b2c41f2651f66a84ab5e Mon Sep 17 00:00:00 2001 From: Jacob MacDonald Date: Fri, 7 Jun 2019 06:09:24 -0500 Subject: gnu: ghc-ansi-wl-pprint: Use ghc-ansi-terminal-0.8. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-ansi-wl-pprint)[inputs]: Use ghc-ansi-terminal-0.8. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a7a8b762c4..2c4baebcd8 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -4085,7 +4085,7 @@ instances of the @code{Pretty} class.") "0gnb4mkqryv08vncxnj0bzwcnd749613yw3cxfzw6y3nsldp4c56")))) (build-system haskell-build-system) (inputs - `(("ghc-ansi-terminal" ,ghc-ansi-terminal))) + `(("ghc-ansi-terminal" ,ghc-ansi-terminal-0.8))) (home-page "https://github.com/ekmett/ansi-wl-pprint") (synopsis "Wadler/Leijen Pretty Printer for colored ANSI terminal output") (description "This is a pretty printing library based on Wadler's paper -- cgit 1.4.1 From 4e3ebbfb1649063bcc0f350523868c667e6699dd Mon Sep 17 00:00:00 2001 From: Jacob MacDonald Date: Fri, 7 Jun 2019 05:28:36 -0500 Subject: gnu: ghc-ansi-terminal: Update to 0.9.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-ansi-terminal): Update to 0.9.1. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 2c4baebcd8..c16a291563 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -4362,7 +4362,7 @@ interface.") (define-public ghc-ansi-terminal (package (name "ghc-ansi-terminal") - (version "0.8.0.4") + (version "0.9.1") (source (origin (method url-fetch) @@ -4372,7 +4372,7 @@ interface.") ".tar.gz")) (sha256 (base32 - "0428gq8m3fdnb7ldcsyk97qcch76hcxbgh2666p6f76fs2qbhg7b")))) + "1yr0ld0kqns3w3j9gl62bdwshvyazidx4dv1qkvq19ivnf08w23l")))) (build-system haskell-build-system) (inputs `(("ghc-colour" ,ghc-colour))) -- cgit 1.4.1 From 3c69d462ce478b2d4e3939afd6b895a3e0534809 Mon Sep 17 00:00:00 2001 From: Jacob MacDonald Date: Fri, 7 Jun 2019 05:36:25 -0500 Subject: gnu: Add ghc-concurrent-output. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-concurrent-output): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c16a291563..63d4360182 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2018 Arun Isaac ;;; Copyright © 2018, 2019 Gabriel Hondet ;;; Copyright © 2019 Robert Vollmert +;;; Copyright © 2019 Jacob MacDonald ;;; ;;; This file is part of GNU Guix. ;;; @@ -11607,6 +11608,40 @@ default) @end itemize") (license license:bsd-3))) +(define-public ghc-concurrent-output + (package + (name "ghc-concurrent-output") + (version "1.10.10") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/concurrent-output/concurrent-output-" + version + ".tar.gz")) + (sha256 + (base32 + "1wnjxnwbc3l853kiiijagzjyb6fmhz3lmkwls24plbximl1qrr22")))) + (build-system haskell-build-system) + (inputs + `(("ghc-async" ,ghc-async) + ("ghc-stm" ,ghc-stm) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-ansi-terminal" ,ghc-ansi-terminal) + ("ghc-terminal-size" ,ghc-terminal-size))) + (home-page + "https://hackage.haskell.org/package/concurrent-output") + (synopsis + "Ungarble output from several threads or commands") + (description + "Lets multiple threads and external processes concurrently output to the +console, without it getting all garbled up. + +Built on top of that is a way of defining multiple output regions, which are +automatically laid out on the screen and can be individually updated by +concurrent threads. Can be used for progress displays etc.") + (license license:bsd-2))) + (define-public ghc-wl-pprint-annotated (package (name "ghc-wl-pprint-annotated") -- cgit 1.4.1 From 2c4e4bc6583579e0366849d588563d81e9802a0c Mon Sep 17 00:00:00 2001 From: Jacob MacDonald Date: Fri, 7 Jun 2019 05:42:59 -0500 Subject: gnu: Add ghc-hedgehog. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell-check.scm (ghc-hedgehog): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell-check.scm | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm index 550bb13a65..9b010fd5eb 100644 --- a/gnu/packages/haskell-check.scm +++ b/gnu/packages/haskell-check.scm @@ -822,3 +822,47 @@ minimal dependencies.") cryptographic ciphers, and is used by the test runners of various Haskell implementations of cryptographic ciphers.") (license license:bsd-3))) + +(define-public ghc-hedgehog + (package + (name "ghc-hedgehog") + (version "0.6.1") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/hedgehog/hedgehog-" + version + ".tar.gz")) + (sha256 + (base32 + "0xz10ycdm5vk9nrcym1fi83k19frfwqz18bz8bnpzwvaj0j41yfj")))) + (build-system haskell-build-system) + (inputs + `(("ghc-ansi-terminal" ,ghc-ansi-terminal-0.8) + ("ghc-async" ,ghc-async) + ("ghc-concurrent-output" ,ghc-concurrent-output) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-lifted-async" ,ghc-lifted-async) + ("ghc-mmorph" ,ghc-mmorph) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-pretty-show" ,ghc-pretty-show) + ("ghc-primitive" ,ghc-primitive) + ("ghc-random" ,ghc-random) + ("ghc-resourcet" ,ghc-resourcet) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-stm" ,ghc-stm) + ("ghc-th-lift" ,ghc-th-lift) + ("ghc-transformers-base" ,ghc-transformers-base) + ("ghc-wl-pprint-annotated" + ,ghc-wl-pprint-annotated))) + (home-page "https://hedgehog.qa") + (synopsis "Property-based testing in the spirt of QuickCheck") + (description + "Hedgehog is a property-based testing system, in the spirit of +QuickCheck. Hedgehog uses integrated shrinking, so shrinks obey the invariants +of generated values by construction. + +To get started quickly, see the examples: +@uref{https://github.com/hedgehogqa/haskell-hedgehog/tree/master/hedgehog-example}") + (license license:bsd-3))) -- cgit 1.4.1 From 252a4d59368d3fea9c63f12592044b856af20afe Mon Sep 17 00:00:00 2001 From: Jacob MacDonald Date: Fri, 7 Jun 2019 05:48:14 -0500 Subject: gnu: Add ghc-validation. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell.scm (ghc-validation): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell.scm | 54 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 63d4360182..d3ff27412f 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -11608,6 +11608,60 @@ default) @end itemize") (license license:bsd-3))) +(define-public ghc-validation + (package + (name "ghc-validation") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/validation/validation-" + version + ".tar.gz")) + (sha256 + (base32 + "1acj7mh3581ks405xswxw6667z7y1y0slisg6jvp6chc191ji9l5")))) + (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'add-setup-script + (lambda _ + ;; The usual "Setup.hs" script is missing from the source. + (with-output-to-file "Setup.hs" + (lambda () + (format #t "import Distribution.Simple~%") + (format #t "main = defaultMain~%")))))))) + (inputs + `(("ghc-semigroups" ,ghc-semigroups) + ("ghc-semigroupoids" ,ghc-semigroupoids) + ("ghc-bifunctors" ,ghc-bifunctors) + ("ghc-lens" ,ghc-lens))) + (native-inputs + `(("ghc-hedgehog" ,ghc-hedgehog) + ("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/qfpl/validation") + (synopsis + "Data-type like Either but with an accumulating Applicative") + (description + "A data-type like Either but with differing properties and type-class +instances. + +Library support is provided for this different representation, including +@code{lens}-related functions for converting between each and abstracting over +their similarities. + +The @code{Validation} data type is isomorphic to @code{Either}, but has an +instance of @code{Applicative} that accumulates on the error side. That is to +say, if two (or more) errors are encountered, they are appended using a +@{Semigroup} operation. + +As a consequence of this @code{Applicative} instance, there is no +corresponding @code{Bind} or @code{Monad} instance. @code{Validation} is an +example of, \"An applicative functor that is not a monad.\"") + (license license:bsd-3))) + (define-public ghc-concurrent-output (package (name "ghc-concurrent-output") -- cgit 1.4.1 From c5ab53204eccf2983bfcdc8e6164d02a81e54d23 Mon Sep 17 00:00:00 2001 From: Katherine Cox-Buday Date: Fri, 7 Jun 2019 15:24:58 -0500 Subject: gnu: Add trivial-utf-8. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/lisp.scm (sbcl-trivial-utf-8, ecl-trivial-utf-8): New variables. Signed-off-by: Ludovic Courtès --- gnu/packages/lisp.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 58813c2d84..37e375d356 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -5665,6 +5665,45 @@ basic everyday functions and macros.") (define-public ecl-fare-utils (sbcl-package->ecl-package sbcl-fare-utils)) +(define-public sbcl-trivial-utf-8 + (let ((commit "4d427cfbb1c452436a0efb71c3205c9da67f718f") + (revision "1")) + (package + (name "sbcl-trivial-utf-8") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri + (git-reference + (url (string-append "https://gitlab.common-lisp.net/" + "trivial-utf-8/trivial-utf-8.git")) + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1jz27gz8gvqdmvp3k9bxschs6d5b3qgk94qp2bj6nv1d0jc3m1l1")))) + (arguments + ;; Guix incorrectly assumes the "8" is part of the version + ;; number and lobs it off. + `(#:asd-file "trivial-utf-8.asd" + #:asd-system-name "trivial-utf-8")) + (build-system asdf-build-system/sbcl) + (synopsis "UTF-8 input/output library") + (description + "The Babel library solves a similar problem while understanding more +encodings. Trivial UTF-8 was written before Babel existed, but for new +projects you might be better off going with Babel. The one plus that Trivial +UTF-8 has is that it doesn't depend on any other libraries.") + (home-page "https://common-lisp.net/project/trivial-utf-8/") + (license license:bsd-3)))) + +(define-public cl-trivial-utf-8 + (sbcl-package->cl-source-package sbcl-trivial-utf-8)) + +(define-public ecl-trivial-utf-8 + (sbcl-package->ecl-package sbcl-trivial-utf-8)) + (define-public sbcl-idna (package (name "sbcl-idna") -- cgit 1.4.1 From 2e03bbeb7be35faa1cb5b41c119d378d221266f3 Mon Sep 17 00:00:00 2001 From: Zzull Date: Sat, 15 Jun 2019 22:32:19 +0200 Subject: gnu: Add emacs-multi-term MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs-xyz.scm (emacs-multi-term): New variable Signed-off-by: Ludovic Courtès --- gnu/packages/emacs-xyz.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index a27de2f778..d337700914 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -16340,3 +16340,35 @@ themselves live in an Org-mode file. As such, this leverages the power of Org-mode (the notes may have outlines, latex fragments, babel, etc...) while acting like notes that are made @emph{in} the document.") (license license:gpl3+))) + +(define-public emacs-multi-term + (let ((commit "0804b11e52b960c80f5cd0712ee1e53ae70d83a4")) + (package + (name "emacs-multi-term") + (version "1.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/manateelazycat/multi-term.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0apvidmvb7rv05qjnjhax42ma8wrimik5vxx620dlbv17svz7iyf")))) + (build-system emacs-build-system) + (inputs `(("zsh" ,zsh))) + (home-page "https://github.com/manateelazycat/multi-term") + (synopsis "Manage multiple terminal buffers in Emacs") + (description + "This package enhances @code{term.el} with the following features: + +@enumerate +@item Functions to switch between multiple terminal buffers +@item List of keys to be intercepted by @code{emacs-multi-term} instead of by +the underlying terminal +@item Kills the unused buffer left after exiting the terminal +@item Kills the running sub-processes along with the terminal when killing the +it forcibly +@item Dedicated window for debugging program. +@end enumerate") + (license license:gpl3+)))) -- cgit 1.4.1