summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-09-17 16:17:20 +0200
committerLudovic Courtès <ludo@gnu.org>2019-09-17 16:27:15 +0200
commit9ff87bb99614923fa3336ab4bbf22e3444709b48 (patch)
treefa169a6cc0fdc8d92bb4c4a4f265afc2ba29a890 /gnu
parentae71bef532d6b1c9d1481a3ac65827f148b1e45b (diff)
parent9e8e252026f558933bdd9cfc26a75d13954b3e8e (diff)
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu')
-rw-r--r--gnu/build/linux-container.scm7
-rw-r--r--gnu/build/shepherd.scm8
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/admin.scm4
-rw-r--r--gnu/packages/algebra.scm4
-rw-r--r--gnu/packages/audio.scm20
-rw-r--r--gnu/packages/authentication.scm41
-rw-r--r--gnu/packages/bioconductor.scm615
-rw-r--r--gnu/packages/bioinformatics.scm32
-rw-r--r--gnu/packages/check.scm12
-rw-r--r--gnu/packages/cluster.scm35
-rw-r--r--gnu/packages/cmake.scm12
-rw-r--r--gnu/packages/cran.scm476
-rw-r--r--gnu/packages/crates-io.scm4
-rw-r--r--gnu/packages/cups.scm4
-rw-r--r--gnu/packages/dictionaries.scm6
-rw-r--r--gnu/packages/education.scm102
-rw-r--r--gnu/packages/emacs-xyz.scm170
-rw-r--r--gnu/packages/emulators.scm8
-rw-r--r--gnu/packages/engineering.scm69
-rw-r--r--gnu/packages/finance.scm31
-rw-r--r--gnu/packages/freedesktop.scm8
-rw-r--r--gnu/packages/game-development.scm10
-rw-r--r--gnu/packages/games.scm19
-rw-r--r--gnu/packages/gnome.scm72
-rw-r--r--gnu/packages/gnupg.scm32
-rw-r--r--gnu/packages/graph.scm4
-rw-r--r--gnu/packages/graphics.scm41
-rw-r--r--gnu/packages/guile-xyz.scm28
-rw-r--r--gnu/packages/guile.scm12
-rw-r--r--gnu/packages/haskell-apps.scm18
-rw-r--r--gnu/packages/haskell-xyz.scm37
-rw-r--r--gnu/packages/haskell.scm8
-rw-r--r--gnu/packages/image.scm73
-rw-r--r--gnu/packages/irc.scm20
-rw-r--r--gnu/packages/javascript.scm139
-rw-r--r--gnu/packages/kde.scm32
-rw-r--r--gnu/packages/language.scm481
-rw-r--r--gnu/packages/linux.scm40
-rw-r--r--gnu/packages/lisp.scm73
-rw-r--r--gnu/packages/lua.scm66
-rw-r--r--gnu/packages/lxqt.scm3
-rw-r--r--gnu/packages/maths.scm43
-rw-r--r--gnu/packages/mes.scm31
-rw-r--r--gnu/packages/music.scm69
-rw-r--r--gnu/packages/networking.scm8
-rw-r--r--gnu/packages/ntp.scm8
-rw-r--r--gnu/packages/ocr.scm75
-rw-r--r--gnu/packages/package-management.scm102
-rw-r--r--gnu/packages/patches/cmake-curl-certificates.patch40
-rw-r--r--gnu/packages/patches/tipp10-fix-compiling.patch3
-rw-r--r--gnu/packages/patches/weechat-python.patch40
-rw-r--r--gnu/packages/perl-compression.scm5
-rw-r--r--gnu/packages/python-check.scm23
-rw-r--r--gnu/packages/python-xyz.scm213
-rw-r--r--gnu/packages/python.scm6
-rw-r--r--gnu/packages/ruby.scm30
-rw-r--r--gnu/packages/shellutils.scm103
-rw-r--r--gnu/packages/sphinx.scm21
-rw-r--r--gnu/packages/statistics.scm36
-rw-r--r--gnu/packages/suckless.scm28
-rw-r--r--gnu/packages/sync.scm4
-rw-r--r--gnu/packages/terminals.scm7
-rw-r--r--gnu/packages/tex.scm9
-rw-r--r--gnu/packages/textutils.scm51
-rw-r--r--gnu/packages/tls.scm19
-rw-r--r--gnu/packages/video.scm4
-rw-r--r--gnu/packages/vim.scm13
-rw-r--r--gnu/packages/virtualization.scm17
-rw-r--r--gnu/packages/vpn.scm8
-rw-r--r--gnu/packages/vulkan.scm4
-rw-r--r--gnu/packages/web-browsers.scm4
-rw-r--r--gnu/packages/web.scm6
-rw-r--r--gnu/packages/wget.scm68
-rw-r--r--gnu/packages/wine.scm6
-rw-r--r--gnu/packages/wm.scm135
-rw-r--r--gnu/packages/xfce.scm38
-rw-r--r--gnu/services/base.scm9
-rw-r--r--gnu/services/certbot.scm1
-rw-r--r--gnu/services/networking.scm203
-rw-r--r--gnu/services/virtualization.scm11
-rw-r--r--gnu/system/file-systems.scm2
-rw-r--r--gnu/system/linux-container.scm61
83 files changed, 3677 insertions, 765 deletions
diff --git a/gnu/build/linux-container.scm b/gnu/build/linux-container.scm
index 6ccb9248614..87695c98fdd 100644
--- a/gnu/build/linux-container.scm
+++ b/gnu/build/linux-container.scm
@@ -299,8 +299,10 @@ delete it when leaving the dynamic extent of this call."
299 (false-if-exception (delete-file-recursively tmp-dir)))))) 299 (false-if-exception (delete-file-recursively tmp-dir))))))
300 300
301(define* (call-with-container mounts thunk #:key (namespaces %namespaces) 301(define* (call-with-container mounts thunk #:key (namespaces %namespaces)
302 (host-uids 1) (guest-uid 0) (guest-gid 0)) 302 (host-uids 1) (guest-uid 0) (guest-gid 0)
303 "Run THUNK in a new container process and return its exit status. 303 (process-spawned-hook (const #t)))
304 "Run THUNK in a new container process and return its exit status; call
305PROCESS-SPAWNED-HOOK with the PID of the new process that has been spawned.
304MOUNTS is a list of <file-system> objects that specify file systems to mount 306MOUNTS is a list of <file-system> objects that specify file systems to mount
305inside the container. NAMESPACES is a list of symbols corresponding to 307inside the container. NAMESPACES is a list of symbols corresponding to
306the identifiers for Linux namespaces: mnt, ipc, uts, pid, user, and net. By 308the identifiers for Linux namespaces: mnt, ipc, uts, pid, user, and net. By
@@ -329,6 +331,7 @@ load path must be adjusted as needed."
329 (false-if-exception 331 (false-if-exception
330 (kill pid SIGKILL)))) 332 (kill pid SIGKILL))))
331 333
334 (process-spawned-hook pid)
332 (match (waitpid pid) 335 (match (waitpid pid)
333 ((_ . status) status)))))) 336 ((_ . status) status))))))
334 337
diff --git a/gnu/build/shepherd.scm b/gnu/build/shepherd.scm
index cf68f2108b7..b32765ed5e4 100644
--- a/gnu/build/shepherd.scm
+++ b/gnu/build/shepherd.scm
@@ -67,16 +67,10 @@
67 (file-system-mapping 67 (file-system-mapping
68 (source "/etc/group") (target source)))) 68 (source "/etc/group") (target source))))
69 69
70 (define nscd-socket
71 (file-system-mapping
72 (source "/var/run/nscd") (target source)
73 (writable? #t)))
74
75 (append (cons (tmpfs "/tmp") %container-file-systems) 70 (append (cons (tmpfs "/tmp") %container-file-systems)
76 (let ((mappings `(,@(if (memq 'net namespaces) 71 (let ((mappings `(,@(if (memq 'net namespaces)
77 '() 72 '()
78 (cons nscd-socket 73 %network-file-mappings)
79 %network-file-mappings))
80 ,@(if (and (memq 'mnt namespaces) 74 ,@(if (and (memq 'mnt namespaces)
81 (not (memq 'user namespaces))) 75 (not (memq 'user namespaces)))
82 accounts 76 accounts
diff --git a/gnu/local.mk b/gnu/local.mk
index ce4510ae4a0..63d55c50184 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -743,6 +743,7 @@ dist_patch_DATA = \
743 %D%/packages/patches/clementine-use-openssl.patch \ 743 %D%/packages/patches/clementine-use-openssl.patch \
744 %D%/packages/patches/clisp-remove-failing-test.patch \ 744 %D%/packages/patches/clisp-remove-failing-test.patch \
745 %D%/packages/patches/clucene-pkgconfig.patch \ 745 %D%/packages/patches/clucene-pkgconfig.patch \
746 %D%/packages/patches/cmake-curl-certificates.patch \
746 %D%/packages/patches/coda-use-system-libs.patch \ 747 %D%/packages/patches/coda-use-system-libs.patch \
747 %D%/packages/patches/combinatorial-blas-awpm.patch \ 748 %D%/packages/patches/combinatorial-blas-awpm.patch \
748 %D%/packages/patches/combinatorial-blas-io-fix.patch \ 749 %D%/packages/patches/combinatorial-blas-io-fix.patch \
@@ -1399,7 +1400,6 @@ dist_patch_DATA = \
1399 %D%/packages/patches/wavpack-CVE-2018-6767.patch \ 1400 %D%/packages/patches/wavpack-CVE-2018-6767.patch \
1400 %D%/packages/patches/wavpack-CVE-2018-7253.patch \ 1401 %D%/packages/patches/wavpack-CVE-2018-7253.patch \
1401 %D%/packages/patches/wavpack-CVE-2018-7254.patch \ 1402 %D%/packages/patches/wavpack-CVE-2018-7254.patch \
1402 %D%/packages/patches/weechat-python.patch \
1403 %D%/packages/patches/wicd-bitrate-none-fix.patch \ 1403 %D%/packages/patches/wicd-bitrate-none-fix.patch \
1404 %D%/packages/patches/wicd-get-selected-profile-fix.patch \ 1404 %D%/packages/patches/wicd-get-selected-profile-fix.patch \
1405 %D%/packages/patches/wicd-urwid-1.3.patch \ 1405 %D%/packages/patches/wicd-urwid-1.3.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 3e75b73dcbd..2e072deed7b 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -2725,7 +2725,7 @@ tool for remote execution and deployment.")
2725(define-public neofetch 2725(define-public neofetch
2726 (package 2726 (package
2727 (name "neofetch") 2727 (name "neofetch")
2728 (version "6.0.0") 2728 (version "6.1.0")
2729 (source (origin 2729 (source (origin
2730 (method git-fetch) 2730 (method git-fetch)
2731 (uri (git-reference 2731 (uri (git-reference
@@ -2733,7 +2733,7 @@ tool for remote execution and deployment.")
2733 (commit version))) 2733 (commit version)))
2734 (sha256 2734 (sha256
2735 (base32 2735 (base32
2736 "0j0r40llyry1sgc6p9wd7jrpydps2lnj4rwajjp37697g2bik89i")))) 2736 "022xzn9jk18k2f4b6011d8jk5nbl84i3mw3inlz4q52p2hvk8fch"))))
2737 (build-system gnu-build-system) 2737 (build-system gnu-build-system)
2738 (arguments 2738 (arguments
2739 `(#:tests? #f ; there are no tests 2739 `(#:tests? #f ; there are no tests
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index fb9e78bf928..02b4d4ca21d 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -1435,7 +1435,7 @@ of M4RI from F_2 to F_{2^e}.")
1435(define-public eclib 1435(define-public eclib
1436 (package 1436 (package
1437 (name "eclib") 1437 (name "eclib")
1438 (version "20190226") 1438 (version "20190909")
1439 (source (origin 1439 (source (origin
1440 (method git-fetch) 1440 (method git-fetch)
1441 (uri (git-reference 1441 (uri (git-reference
@@ -1444,7 +1444,7 @@ of M4RI from F_2 to F_{2^e}.")
1444 (file-name (git-file-name name version)) 1444 (file-name (git-file-name name version))
1445 (sha256 1445 (sha256
1446 (base32 1446 (base32
1447 "1910np1xzyjzszay24xn4b81qhpsvhp5aix9vdpknplni2mq8kwb")))) 1447 "1gw27lqc3f525n8qdcmr2nyn16y9g10z9f6dnmckyyxcdzvhq35n"))))
1448 (build-system gnu-build-system) 1448 (build-system gnu-build-system)
1449 (native-inputs 1449 (native-inputs
1450 `(("autoconf" ,autoconf) 1450 `(("autoconf" ,autoconf)
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 2bd07cb01d3..e1d7412bfe9 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -3195,24 +3195,28 @@ with support for HD extensions.")
3195(define-public bs1770gain 3195(define-public bs1770gain
3196 (package 3196 (package
3197 (name "bs1770gain") 3197 (name "bs1770gain")
3198 (version "0.5.2") 3198 (version "0.6.0")
3199 (source 3199 (source
3200 (origin 3200 (origin
3201 (method url-fetch) 3201 (method url-fetch)
3202 (uri (string-append "mirror://sourceforge/bs1770gain/bs1770gain/" 3202 (uri (string-append "mirror://sourceforge/bs1770gain/bs1770gain/"
3203 version "/bs1770gain-" version ".tar.gz")) 3203 version "/bs1770gain-" version ".tar.gz"))
3204 (sha256 3204 (sha256
3205 (base32 3205 (base32 "0nnqixvw3x7i22nsr54n4bgm35z9nh3d9qj5s75cfd3ajjsjndyh"))
3206 "1p6yz5q7czyf9ard65sp4kawdlkg40cfscr3b24znymmhs3p7rbk"))
3207 (modules '((guix build utils))) 3206 (modules '((guix build utils)))
3208 (snippet 3207 (snippet
3209 '(begin 3208 '(begin
3210 ;; XXX 3209 ;; XXX
3211 (substitute* "bs1770gain/bs1770gain.c" 3210 (substitute* "libbg/bgx.c"
3212 (("\"N.*\"") "\"\"")) 3211 (("#define BS.* ") "#define BS ")
3213 (substitute* "configure" 3212 (("BS.*NO?.*N.*S.*E.*N.*SE?") "NO")
3214 (("URL=.*$") 3213 (("\"( #|N).*\"") "\"\""))
3215 "https://manpages.debian.org/sid/bs1770gain/bs1770gain.1.en.html\n")))))) 3214 (substitute* (list "config.h"
3215 "configure.ac"
3216 "configure")
3217 (("https?://bs1770gain[^/]*/")
3218 "https://manpages.debian.org/sid/bs1770gain/bs1770gain.1.en.html"))
3219 #t))))
3216 (build-system gnu-build-system) 3220 (build-system gnu-build-system)
3217 (inputs `(("ffmpeg" ,ffmpeg) 3221 (inputs `(("ffmpeg" ,ffmpeg)
3218 ("sox" ,sox))) 3222 ("sox" ,sox)))
diff --git a/gnu/packages/authentication.scm b/gnu/packages/authentication.scm
index 70f2a8c103e..d995ef7e85a 100644
--- a/gnu/packages/authentication.scm
+++ b/gnu/packages/authentication.scm
@@ -1,5 +1,6 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> 2;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
3;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
3;;; 4;;;
4;;; This file is part of GNU Guix. 5;;; This file is part of GNU Guix.
5;;; 6;;;
@@ -18,10 +19,14 @@
18 19
19(define-module (gnu packages authentication) 20(define-module (gnu packages authentication)
20 #:use-module (gnu packages) 21 #:use-module (gnu packages)
22 #:use-module (gnu packages autotools)
23 #:use-module (gnu packages documentation)
21 #:use-module (gnu packages linux) 24 #:use-module (gnu packages linux)
22 #:use-module (gnu packages pkg-config) 25 #:use-module (gnu packages pkg-config)
26 #:use-module (gnu packages security-token)
23 #:use-module (guix build-system gnu) 27 #:use-module (guix build-system gnu)
24 #:use-module (guix download) 28 #:use-module (guix download)
29 #:use-module (guix git-download)
25 #:use-module ((guix licenses) #:prefix license:) 30 #:use-module ((guix licenses) #:prefix license:)
26 #:use-module (guix packages)) 31 #:use-module (guix packages))
27 32
@@ -86,3 +91,39 @@ Supported technologies include the event-based @dfn{HOTP} algorithm (RFC4226)
86and the time-based @dfn{TOTP} algorithm (RFC6238).") 91and the time-based @dfn{TOTP} algorithm (RFC6238).")
87 (license (list license:lgpl2.1+ ; the libraries (liboath/ & libpskc/) 92 (license (list license:lgpl2.1+ ; the libraries (liboath/ & libpskc/)
88 license:gpl3+)))) ; the tools (everything else) 93 license:gpl3+)))) ; the tools (everything else)
94
95(define-public yubico-pam
96 (let ((commit "b5bd00db81e0e0e0ecced65c684080bb56ddc35b")
97 (revision "0"))
98 (package
99 (name "yubico-pam")
100 (version (git-version "2.26" revision commit))
101 (source (origin
102 (method git-fetch)
103 (uri (git-reference
104 (url "https://github.com/Yubico/yubico-pam.git")
105 (commit commit)))
106 (file-name (git-file-name name version))
107 (sha256
108 (base32
109 "10dq8dqi3jldllj6p8r9hldx9sank9n82c44w8akxrs1vli6nj3m"))))
110 (build-system gnu-build-system)
111 (arguments
112 ;; The pam_test fails because ykclient fails to build a Curl handle.
113 '(#:make-flags '("TESTS=util_test")))
114 (inputs
115 `(("linux-pam" ,linux-pam)
116 ("libyubikey" ,libyubikey)
117 ("ykclient" ,ykclient)
118 ("yubikey-personalization" ,yubikey-personalization)))
119 (native-inputs
120 `(("autoconf" ,autoconf)
121 ("automake" ,automake)
122 ("libtool" ,libtool)
123 ("asciidoc" ,asciidoc)
124 ("pkg-config" ,pkg-config)))
125 (home-page "https://developers.yubico.com/yubico-pam")
126 (synopsis "Yubico pluggable authentication module")
127 (description "The Yubico PAM module provides an easy way to integrate the
128YubiKey into your existing user authentication infrastructure.")
129 (license license:bsd-2))))
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index 37cd51d16c3..7ca6788dd8f 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -50,21 +50,14 @@
50 (version "1.4.0") 50 (version "1.4.0")
51 (source (origin 51 (source (origin
52 (method url-fetch) 52 (method url-fetch)
53 ;; We cannot use bioconductor-uri here because this tarball is 53 (uri (bioconductor-uri "BSgenome.Celegans.UCSC.ce6"
54 ;; located under "data/annotation/" instead of "bioc/". 54 version 'annotation))
55 (uri (string-append "https://www.bioconductor.org/packages/"
56 "release/data/annotation/src/contrib/"
57 "BSgenome.Celegans.UCSC.ce6_"
58 version ".tar.gz"))
59 (sha256 55 (sha256
60 (base32 56 (base32
61 "0mqzb353xv2c3m3vkb315dkmnxkgczp7ndnknyhpgjlybyf715v9")))) 57 "0mqzb353xv2c3m3vkb315dkmnxkgczp7ndnknyhpgjlybyf715v9"))))
62 (properties 58 (properties
63 `((upstream-name . "BSgenome.Celegans.UCSC.ce6"))) 59 `((upstream-name . "BSgenome.Celegans.UCSC.ce6")))
64 (build-system r-build-system) 60 (build-system r-build-system)
65 ;; As this package provides little more than a very large data file it
66 ;; doesn't make sense to build substitutes.
67 (arguments `(#:substitutable? #f))
68 (propagated-inputs 61 (propagated-inputs
69 `(("r-bsgenome" ,r-bsgenome))) 62 `(("r-bsgenome" ,r-bsgenome)))
70 (home-page 63 (home-page
@@ -817,6 +810,28 @@ annotations.")
817Disease Ontology.") 810Disease Ontology.")
818 (license license:artistic2.0))) 811 (license license:artistic2.0)))
819 812
813(define-public r-pfam-db
814 (package
815 (name "r-pfam-db")
816 (version "3.8.2")
817 (source
818 (origin
819 (method url-fetch)
820 (uri (bioconductor-uri "PFAM.db" version 'annotation))
821 (sha256
822 (base32
823 "0rn1arzzcniy3yyc4yc44vn40g0cqss37dhwnvsgxpfayqq1k59s"))))
824 (properties `((upstream-name . "PFAM.db")))
825 (build-system r-build-system)
826 (propagated-inputs
827 `(("r-annotationdbi" ,r-annotationdbi)))
828 (home-page "https://bioconductor.org/packages/PFAM.db")
829 (synopsis "Set of protein ID mappings for PFAM")
830 (description
831 "This package provides a set of protein ID mappings for PFAM, assembled
832using data from public repositories.")
833 (license license:artistic2.0)))
834
820 835
821;;; Experiment data 836;;; Experiment data
822 837
@@ -942,6 +957,29 @@ jointly normalized data that are available here. The data are presented in
942the form of an @code{exprSet} object.") 957the form of an @code{exprSet} object.")
943 (license license:artistic2.0))) 958 (license license:artistic2.0)))
944 959
960(define-public r-affydata
961 (package
962 (name "r-affydata")
963 (version "1.32.0")
964 (source
965 (origin
966 (method url-fetch)
967 (uri (bioconductor-uri "affydata" version 'experiment))
968 (sha256
969 (base32
970 "1l9qhmjqgbrdl9cmd74rlnvmvr6mslbmckb83n0211whp2i0b7h5"))))
971 (properties `((upstream-name . "affydata")))
972 (build-system r-build-system)
973 (propagated-inputs
974 `(("r-affy" ,r-affy)))
975 (home-page "https://bioconductor.org/packages/affydata/")
976 (synopsis "Affymetrix data for demonstration purposes")
977 (description
978 "This package provides example datasets that represent 'real world
979examples' of Affymetrix data, unlike the artificial examples included in the
980package @code{affy}.")
981 (license license:gpl2+)))
982
945 983
946;;; Packages 984;;; Packages
947 985
@@ -965,6 +1003,147 @@ the form of an @code{exprSet} object.")
965packages.") 1003packages.")
966 (license license:artistic2.0))) 1004 (license license:artistic2.0)))
967 1005
1006(define-public r-affycomp
1007 (package
1008 (name "r-affycomp")
1009 (version "1.60.0")
1010 (source
1011 (origin
1012 (method url-fetch)
1013 (uri (bioconductor-uri "affycomp" version))
1014 (sha256
1015 (base32
1016 "1nijqljg5r3qj1y6an0i58sby76hqacj3a3nvainxic4n5wlzh0n"))))
1017 (properties `((upstream-name . "affycomp")))
1018 (build-system r-build-system)
1019 (propagated-inputs `(("r-biobase" ,r-biobase)))
1020 (home-page "https://bioconductor.org/packages/affycomp/")
1021 (synopsis "Graphics toolbox for assessment of Affymetrix expression measures")
1022 (description
1023 "The package contains functions that can be used to compare expression
1024measures for Affymetrix Oligonucleotide Arrays.")
1025 (license license:gpl2+)))
1026
1027(define-public r-affycompatible
1028 (package
1029 (name "r-affycompatible")
1030 (version "1.44.0")
1031 (source
1032 (origin
1033 (method url-fetch)
1034 (uri (bioconductor-uri "AffyCompatible" version))
1035 (sha256
1036 (base32
1037 "1zi96qa6vkgwvvy5cn6c3p1kbfsaz74zsw2kjxarz5qs744f0xvs"))))
1038 (properties
1039 `((upstream-name . "AffyCompatible")))
1040 (build-system r-build-system)
1041 (propagated-inputs
1042 `(("r-biostrings" ,r-biostrings)
1043 ("r-rcurl" ,r-rcurl)
1044 ("r-xml" ,r-xml)))
1045 (home-page "https://bioconductor.org/packages/AffyCompatible/")
1046 (synopsis "Work with Affymetrix GeneChip files")
1047 (description
1048 "This package provides an interface to Affymetrix chip annotation and
1049sample attribute files. The package allows an easy way for users to download
1050and manage local data bases of Affynmetrix NetAffx annotation files. It also
1051provides access to @dfn{GeneChip Operating System} (GCOS) and @dfn{GeneChip
1052Command Console} (AGCC)-compatible sample annotation files.")
1053 (license license:artistic2.0)))
1054
1055(define-public r-affycontam
1056 (package
1057 (name "r-affycontam")
1058 (version "1.42.0")
1059 (source
1060 (origin
1061 (method url-fetch)
1062 (uri (bioconductor-uri "affyContam" version))
1063 (sha256
1064 (base32
1065 "0nzk1cm26rhmym753wyhn35hqnz5lvavi3i5qfgdvhxgjy3m1jgp"))))
1066 (properties `((upstream-name . "affyContam")))
1067 (build-system r-build-system)
1068 (propagated-inputs
1069 `(("r-affy" ,r-affy)
1070 ("r-affydata" ,r-affydata)
1071 ("r-biobase" ,r-biobase)))
1072 (home-page "https://bioconductor.org/packages/affyContam/")
1073 (synopsis "Structured corruption of Affymetrix CEL file data")
1074 (description
1075 "Microarray quality assessment is a major concern of microarray analysts.
1076This package provides some simple approaches to in silico creation of quality
1077problems in CEL-level data to help evaluate performance of quality metrics.")
1078 (license license:artistic2.0)))
1079
1080(define-public r-affycoretools
1081 (package
1082 (name "r-affycoretools")
1083 (version "1.56.0")
1084 (source
1085 (origin
1086 (method url-fetch)
1087 (uri (bioconductor-uri "affycoretools" version))
1088 (sha256
1089 (base32
1090 "17dxpzhwwdwnxkdpmyjwdnacg41hw60mlc71w4nzlvs28sfsy09s"))))
1091 (properties `((upstream-name . "affycoretools")))
1092 (build-system r-build-system)
1093 (propagated-inputs
1094 `(("r-affy" ,r-affy)
1095 ("r-annotationdbi" ,r-annotationdbi)
1096 ("r-biobase" ,r-biobase)
1097 ("r-biocgenerics" ,r-biocgenerics)
1098 ("r-dbi" ,r-dbi)
1099 ("r-edger" ,r-edger)
1100 ("r-gcrma" ,r-gcrma)
1101 ("r-ggplot2" ,r-ggplot2)
1102 ("r-gostats" ,r-gostats)
1103 ("r-gplots" ,r-gplots)
1104 ("r-hwriter" ,r-hwriter)
1105 ("r-lattice" ,r-lattice)
1106 ("r-limma" ,r-limma)
1107 ("r-oligoclasses" ,r-oligoclasses)
1108 ("r-reportingtools" ,r-reportingtools)
1109 ("r-rsqlite" ,r-rsqlite)
1110 ("r-s4vectors" ,r-s4vectors)
1111 ("r-xtable" ,r-xtable)))
1112 (home-page "https://bioconductor.org/packages/affycoretools/")
1113 (synopsis "Functions for analyses with Affymetrix GeneChips")
1114 (description
1115 "This package provides various wrapper functions that have been written
1116to streamline the more common analyses that a Biostatistician might see.")
1117 (license license:artistic2.0)))
1118
1119(define-public r-affxparser
1120 (package
1121 (name "r-affxparser")
1122 (version "1.56.0")
1123 (source
1124 (origin
1125 (method url-fetch)
1126 (uri (bioconductor-uri "affxparser" version))
1127 (sha256
1128 (base32
1129 "1jv7k9pn4c7szi3ma2f2xsd58pkrkvjpk5wra73r6kc607qgrv33"))))
1130 (properties `((upstream-name . "affxparser")))
1131 (build-system r-build-system)
1132 (home-page "https://github.com/HenrikBengtsson/affxparser")
1133 (synopsis "Affymetrix File Parsing SDK")
1134 (description
1135 "This is a package for parsing Affymetrix files (CDF, CEL, CHP, BPMAP,
1136BAR). It provides methods for fast and memory efficient parsing of Affymetrix
1137files using the Affymetrix' Fusion SDK. Both ASCII- and binary-based files
1138are supported. Currently, there are methods for reading @dfn{chip definition
1139file} (CDF) and a @dfn{cell intensity file} (CEL). These files can be read
1140either in full or in part. For example, probe signals from a few probesets
1141can be extracted very quickly from a set of CEL files into a convenient list
1142structure.")
1143 ;; The Fusion SDK contains files under GPLv2 and LGPLv2.1. The R code is
1144 ;; under LGPLv2+.
1145 (license (list license:lgpl2.0+ license:lgpl2.1 license:gpl2))))
1146
968(define-public r-annotate 1147(define-public r-annotate
969 (package 1148 (package
970 (name "r-annotate") 1149 (name "r-annotate")
@@ -1013,14 +1192,14 @@ the Human Protein Atlas project.")
1013(define-public r-regioner 1192(define-public r-regioner
1014 (package 1193 (package
1015 (name "r-regioner") 1194 (name "r-regioner")
1016 (version "1.16.2") 1195 (version "1.16.4")
1017 (source 1196 (source
1018 (origin 1197 (origin
1019 (method url-fetch) 1198 (method url-fetch)
1020 (uri (bioconductor-uri "regioneR" version)) 1199 (uri (bioconductor-uri "regioneR" version))
1021 (sha256 1200 (sha256
1022 (base32 1201 (base32
1023 "1b8ybx4wcxlqw9nvajawsf0lqaqn9v89rxcawg4g3dbzlfssfc5q")))) 1202 "0xzk057h6nkr3rvd412prxgnkpq625b90laj1kwb0i5q8j5ch760"))))
1024 (properties `((upstream-name . "regioneR"))) 1203 (properties `((upstream-name . "regioneR")))
1025 (build-system r-build-system) 1204 (build-system r-build-system)
1026 (propagated-inputs 1205 (propagated-inputs
@@ -1039,6 +1218,54 @@ customizable permutation tests to assess the association between genomic
1039region sets and other genomic features.") 1218region sets and other genomic features.")
1040 (license license:artistic2.0))) 1219 (license license:artistic2.0)))
1041 1220
1221(define-public r-reportingtools
1222 (package
1223 (name "r-reportingtools")
1224 (version "2.24.0")
1225 (source
1226 (origin
1227 (method url-fetch)
1228 (uri (bioconductor-uri "ReportingTools" version))
1229 (sha256
1230 (base32
1231 "16ska7mlacka0xi8x2icy8v42vaxccb3a1x73szmfvcrwr592qsc"))))
1232 (properties
1233 `((upstream-name . "ReportingTools")))
1234 (build-system r-build-system)
1235 (propagated-inputs
1236 `(("r-annotate" ,r-annotate)
1237 ("r-annotationdbi" ,r-annotationdbi)
1238 ("r-biobase" ,r-biobase)
1239 ("r-biocgenerics" ,r-biocgenerics)
1240 ("r-category" ,r-category)
1241 ("r-deseq2" ,r-deseq2)
1242 ("r-edger" ,r-edger)
1243 ("r-ggbio" ,r-ggbio)
1244 ("r-ggplot2" ,r-ggplot2)
1245 ("r-gostats" ,r-gostats)
1246 ("r-gseabase" ,r-gseabase)
1247 ("r-hwriter" ,r-hwriter)
1248 ("r-iranges" ,r-iranges)
1249 ("r-knitr" ,r-knitr)
1250 ("r-lattice" ,r-lattice)
1251 ("r-limma" ,r-limma)
1252 ("r-pfam-db" ,r-pfam-db)
1253 ("r-r-utils" ,r-r-utils)
1254 ("r-xml" ,r-xml)))
1255 (home-page "https://bioconductor.org/packages/ReportingTools/")
1256 (synopsis "Tools for making reports in various formats")
1257 (description
1258 "The ReportingTools package enables users to easily display reports of
1259analysis results generated from sources such as microarray and sequencing
1260data. The package allows users to create HTML pages that may be viewed on a
1261web browser, or in other formats. Users can generate tables with sortable and
1262filterable columns, make and display plots, and link table entries to other
1263data sources such as NCBI or larger plots within the HTML page. Using the
1264package, users can also produce a table of contents page to link various
1265reports together for a particular project that can be viewed in a web
1266browser.")
1267 (license license:artistic2.0)))
1268
1042(define-public r-geneplotter 1269(define-public r-geneplotter
1043 (package 1270 (package
1044 (name "r-geneplotter") 1271 (name "r-geneplotter")
@@ -1064,6 +1291,75 @@ region sets and other genomic features.")
1064 "This package provides functions for plotting genomic data.") 1291 "This package provides functions for plotting genomic data.")
1065 (license license:artistic2.0))) 1292 (license license:artistic2.0)))
1066 1293
1294(define-public r-oligoclasses
1295 (package
1296 (name "r-oligoclasses")
1297 (version "1.46.0")
1298 (source
1299 (origin
1300 (method url-fetch)
1301 (uri (bioconductor-uri "oligoClasses" version))
1302 (sha256
1303 (base32
1304 "0z86zrmn80kcy6fgb9i9zs82vhim73n8hlkqy7y8sbb2jwksdr72"))))
1305 (properties `((upstream-name . "oligoClasses")))
1306 (build-system r-build-system)
1307 (propagated-inputs
1308 `(("r-affyio" ,r-affyio)
1309 ("r-biobase" ,r-biobase)
1310 ("r-biocgenerics" ,r-biocgenerics)
1311 ("r-biocmanager" ,r-biocmanager)
1312 ("r-biostrings" ,r-biostrings)
1313 ("r-dbi" ,r-dbi)
1314 ("r-ff" ,r-ff)
1315 ("r-foreach" ,r-foreach)
1316 ("r-genomicranges" ,r-genomicranges)
1317 ("r-iranges" ,r-iranges)
1318 ("r-rsqlite" ,r-rsqlite)
1319 ("r-s4vectors" ,r-s4vectors)
1320 ("r-summarizedexperiment" ,r-summarizedexperiment)))
1321 (home-page "https://bioconductor.org/packages/oligoClasses/")
1322 (synopsis "Classes for high-throughput arrays")
1323 (description
1324 "This package contains class definitions, validity checks, and
1325initialization methods for classes used by the @code{oligo} and @code{crlmm}
1326packages.")
1327 (license license:gpl2+)))
1328
1329(define-public r-oligo
1330 (package
1331 (name "r-oligo")
1332 (version "1.48.0")
1333 (source
1334 (origin
1335 (method url-fetch)
1336 (uri (bioconductor-uri "oligo" version))
1337 (sha256
1338 (base32
1339 "0qkyz65zvry0syibjkvkshwijccna18jy0hlib0n5x4c8x9zs5df"))))
1340 (properties `((upstream-name . "oligo")))
1341 (build-system r-build-system)
1342 (inputs `(("zlib" ,zlib)))
1343 (propagated-inputs
1344 `(("r-affxparser" ,r-affxparser)
1345 ("r-affyio" ,r-affyio)
1346 ("r-biobase" ,r-biobase)
1347 ("r-biocgenerics" ,r-biocgenerics)
1348 ("r-biostrings" ,r-biostrings)
1349 ("r-dbi" ,r-dbi)
1350 ("r-ff" ,r-ff)
1351 ("r-oligoclasses" ,r-oligoclasses)
1352 ("r-preprocesscore" ,r-preprocesscore)
1353 ("r-rsqlite" ,r-rsqlite)
1354 ("r-zlibbioc" ,r-zlibbioc)))
1355 (home-page "https://bioconductor.org/packages/oligo/")
1356 (synopsis "Preprocessing tools for oligonucleotide arrays")
1357 (description
1358 "This package provides a package to analyze oligonucleotide
1359arrays (expression/SNP/tiling/exon) at probe-level. It currently supports
1360Affymetrix (CEL files) and NimbleGen arrays (XYS files).")
1361 (license license:lgpl2.0+)))
1362
1067(define-public r-qvalue 1363(define-public r-qvalue
1068 (package 1364 (package
1069 (name "r-qvalue") 1365 (name "r-qvalue")
@@ -3895,14 +4191,14 @@ analysis.")
3895(define-public r-gtrellis 4191(define-public r-gtrellis
3896 (package 4192 (package
3897 (name "r-gtrellis") 4193 (name "r-gtrellis")
3898 (version "1.16.0") 4194 (version "1.16.1")
3899 (source 4195 (source
3900 (origin 4196 (origin
3901 (method url-fetch) 4197 (method url-fetch)
3902 (uri (bioconductor-uri "gtrellis" version)) 4198 (uri (bioconductor-uri "gtrellis" version))
3903 (sha256 4199 (sha256
3904 (base32 4200 (base32
3905 "00d5swg3brnx8ryzpg7hp3mg9hx3vz4yd1lv2chlp2pj2rhsir1y")))) 4201 "069hln9vflyxic24bxrlmdmz9h3jdd2qaqy898rgk5bn0gqwcjix"))))
3906 (build-system r-build-system) 4202 (build-system r-build-system)
3907 (propagated-inputs 4203 (propagated-inputs
3908 `(("r-circlize" ,r-circlize) 4204 `(("r-circlize" ,r-circlize)
@@ -4888,14 +5184,14 @@ annotations.")
4888(define-public r-rsubread 5184(define-public r-rsubread
4889 (package 5185 (package
4890 (name "r-rsubread") 5186 (name "r-rsubread")
4891 (version "1.34.6") 5187 (version "1.34.7")
4892 (source 5188 (source
4893 (origin 5189 (origin
4894 (method url-fetch) 5190 (method url-fetch)
4895 (uri (bioconductor-uri "Rsubread" version)) 5191 (uri (bioconductor-uri "Rsubread" version))
4896 (sha256 5192 (sha256
4897 (base32 5193 (base32
4898 "0nnfh4hnrs5kd72m8c50cidbsxjz12szw2vynpmg8q0wpd99q550")))) 5194 "0z4ydk9296bp76ah5y6a7za5jyn4h238xngb789zragly902x83y"))))
4899 (properties `((upstream-name . "Rsubread"))) 5195 (properties `((upstream-name . "Rsubread")))
4900 (build-system r-build-system) 5196 (build-system r-build-system)
4901 (inputs `(("zlib" ,zlib))) 5197 (inputs `(("zlib" ,zlib)))
@@ -5047,14 +5343,14 @@ self-organizing map clustering and minimal spanning trees.")
5047(define-public r-mixomics 5343(define-public r-mixomics
5048 (package 5344 (package
5049 (name "r-mixomics") 5345 (name "r-mixomics")
5050 (version "6.8.2") 5346 (version "6.8.4")
5051 (source 5347 (source
5052 (origin 5348 (origin
5053 (method url-fetch) 5349 (method url-fetch)
5054 (uri (bioconductor-uri "mixOmics" version)) 5350 (uri (bioconductor-uri "mixOmics" version))
5055 (sha256 5351 (sha256
5056 (base32 5352 (base32
5057 "0issfrhsgc102sr33q9v6w6jrrd32plig7szd1nm0n4r3yn4y2fc")))) 5353 "0lw4c9lxcm83xrvl4y120i1z710qjbdqginhrw738azpr1f82hcg"))))
5058 (properties `((upstream-name . "mixOmics"))) 5354 (properties `((upstream-name . "mixOmics")))
5059 (build-system r-build-system) 5355 (build-system r-build-system)
5060 (propagated-inputs 5356 (propagated-inputs
@@ -5466,3 +5762,288 @@ with multiple R processes supported by the package @code{parallel}.")
5466 "This package provides methods for working with Illumina arrays using the 5762 "This package provides methods for working with Illumina arrays using the
5467@code{gdsfmt} package.") 5763@code{gdsfmt} package.")
5468 (license license:gpl3))) 5764 (license license:gpl3)))
5765
5766(define-public r-seqbias
5767 (package
5768 (name "r-seqbias")
5769 (version "1.32.0")
5770 (source
5771 (origin
5772 (method url-fetch)
5773 (uri (bioconductor-uri "seqbias" version))
5774 (sha256
5775 (base32
5776 "1pk97jsq0rxijsdm5wnmlw79mhy19skdq1h3mmfbdjh560md47lw"))))
5777 (properties `((upstream-name . "seqbias")))
5778 (build-system r-build-system)
5779 (propagated-inputs
5780 `(("r-biostrings" ,r-biostrings)
5781 ("r-genomicranges" ,r-genomicranges)
5782 ("r-rhtslib" ,r-rhtslib)))
5783 (inputs
5784 `(("zlib" ,zlib))) ; This comes from rhtslib.
5785 (home-page "https://bioconductor.org/packages/seqbias/")
5786 (synopsis "Estimation of per-position bias in high-throughput sequencing data")
5787 (description
5788 "This package implements a model of per-position sequencing bias in
5789high-throughput sequencing data using a simple Bayesian network, the structure
5790and parameters of which are trained on a set of aligned reads and a reference
5791genome sequence.")
5792 (license license:lgpl3)))
5793
5794(define-public r-reqon
5795 (package
5796 (name "r-reqon")
5797 (version "1.30.0")
5798 (source
5799 (origin
5800 (method url-fetch)
5801 (uri (bioconductor-uri "ReQON" version))
5802 (sha256
5803 (base32
5804 "04bljr8vgb9z9800d9v8w7a4rvjkwq48zd8n5divq30zj9k2na7a"))))
5805 (properties `((upstream-name . "ReQON")))
5806 (build-system r-build-system)
5807 (propagated-inputs
5808 `(("r-rjava" ,r-rjava)
5809 ("r-rsamtools" ,r-rsamtools)
5810 ("r-seqbias" ,r-seqbias)))
5811 (home-page "https://bioconductor.org/packages/ReQON/")
5812 (synopsis "Recalibrating quality of nucleotides")
5813 (description
5814 "This package provides an implementation of an algorithm for
5815recalibrating the base quality scores for aligned sequencing data in BAM
5816format.")
5817 (license license:gpl2)))
5818
5819(define-public r-wavcluster
5820 (package
5821 (name "r-wavcluster")
5822 (version "2.18.0")
5823 (source
5824 (origin
5825 (method url-fetch)
5826 (uri (bioconductor-uri "wavClusteR" version))
5827 (sha256
5828 (base32
5829 "02i53dskirzr9nls3dsmv7dqhvy3vikkpx7247zpy2qd9r5yvhy2"))))
5830 (properties `((upstream-name . "wavClusteR")))
5831 (build-system r-build-system)
5832 (propagated-inputs
5833 `(("r-biocgenerics" ,r-biocgenerics)
5834 ("r-biostrings" ,r-biostrings)
5835 ("r-foreach" ,r-foreach)
5836 ("r-genomicfeatures" ,r-genomicfeatures)
5837 ("r-genomicranges" ,r-genomicranges)
5838 ("r-ggplot2" ,r-ggplot2)
5839 ("r-hmisc" ,r-hmisc)
5840 ("r-iranges" ,r-iranges)
5841 ("r-mclust" ,r-mclust)
5842 ("r-rsamtools" ,r-rsamtools)
5843 ("r-rtracklayer" ,r-rtracklayer)
5844 ("r-s4vectors" ,r-s4vectors)
5845 ("r-seqinr" ,r-seqinr)
5846 ("r-stringr" ,r-stringr)
5847 ("r-wmtsa" ,r-wmtsa)))
5848 (home-page "https://bioconductor.org/packages/wavClusteR/")
5849 (synopsis "Identification of RNA-protein interaction sites in PAR-CLIP data")
5850 (description
5851 "This package provides an integrated pipeline for the analysis of
5852PAR-CLIP data. PAR-CLIP-induced transitions are first discriminated from
5853sequencing errors, SNPs and additional non-experimental sources by a non-
5854parametric mixture model. The protein binding sites (clusters) are then
5855resolved at high resolution and cluster statistics are estimated using a
5856rigorous Bayesian framework. Post-processing of the results, data export for
5857UCSC genome browser visualization and motif search analysis are provided. In
5858addition, the package allows to integrate RNA-Seq data to estimate the False
5859Discovery Rate of cluster detection. Key functions support parallel multicore
5860computing. While wavClusteR was designed for PAR-CLIP data analysis, it can
5861be applied to the analysis of other NGS data obtained from experimental
5862procedures that induce nucleotide substitutions (e.g. BisSeq).")
5863 (license license:gpl2)))
5864
5865(define-public r-timeseriesexperiment
5866 (package
5867 (name "r-timeseriesexperiment")
5868 (version "1.2.0")
5869 (source
5870 (origin
5871 (method url-fetch)
5872 (uri (bioconductor-uri "TimeSeriesExperiment" version))
5873 (sha256
5874 (base32
5875 "1j11g7a2p0yk38fx6wd6152l1xynghj01pfxihalw601jwf1bl0y"))))
5876 (properties
5877 `((upstream-name . "TimeSeriesExperiment")))
5878 (build-system r-build-system)
5879 (propagated-inputs
5880 `(("r-deseq2" ,r-deseq2)
5881 ("r-dplyr" ,r-dplyr)
5882 ("r-dynamictreecut" ,r-dynamictreecut)
5883 ("r-edger" ,r-edger)
5884 ("r-ggplot2" ,r-ggplot2)
5885 ("r-hmisc" ,r-hmisc)
5886 ("r-limma" ,r-limma)
5887 ("r-magrittr" ,r-magrittr)
5888 ("r-proxy" ,r-proxy)
5889 ("r-s4vectors" ,r-s4vectors)
5890 ("r-summarizedexperiment" ,r-summarizedexperiment)
5891 ("r-tibble" ,r-tibble)
5892 ("r-tidyr" ,r-tidyr)
5893 ("r-vegan" ,r-vegan)
5894 ("r-viridis" ,r-viridis)))
5895 (home-page "https://github.com/nlhuong/TimeSeriesExperiment/")
5896 (synopsis "Analysis for short time-series data")
5897 (description
5898 "This package is a visualization and analysis toolbox for short time
5899course data which includes dimensionality reduction, clustering, two-sample
5900differential expression testing and gene ranking techniques. The package also
5901provides methods for retrieving enriched pathways.")
5902 (license license:lgpl3+)))
5903
5904(define-public r-variantfiltering
5905 (package
5906 (name "r-variantfiltering")
5907 (version "1.20.0")
5908 (source
5909 (origin
5910 (method url-fetch)
5911 (uri (bioconductor-uri "VariantFiltering" version))
5912 (sha256
5913 (base32
5914 "0vpghxacqcbaxx2scb5gfhcmfpw1lkls7h6qnbwbnmjwy01q2p17"))))
5915 (properties
5916 `((upstream-name . "VariantFiltering")))
5917 (build-system r-build-system)
5918 (propagated-inputs
5919 `(("r-annotationdbi" ,r-annotationdbi)
5920 ("r-biobase" ,r-biobase)
5921 ("r-biocgenerics" ,r-biocgenerics)
5922 ("r-biocparallel" ,r-biocparallel)
5923 ("r-biostrings" ,r-biostrings)
5924 ("r-bsgenome" ,r-bsgenome)
5925 ("r-dt" ,r-dt)
5926 ("r-genomeinfodb" ,r-genomeinfodb)
5927 ("r-genomicfeatures" ,r-genomicfeatures)
5928 ("r-genomicranges" ,r-genomicranges)
5929 ("r-genomicscores" ,r-genomicscores)
5930 ("r-graph" ,r-graph)
5931 ("r-gviz" ,r-gviz)
5932 ("r-iranges" ,r-iranges)
5933 ("r-rbgl" ,r-rbgl)
5934 ("r-rsamtools" ,r-rsamtools)
5935 ("r-s4vectors" ,r-s4vectors)
5936 ("r-shiny" ,r-shiny)
5937 ("r-shinyjs" ,r-shinyjs)
5938 ("r-shinythemes" ,r-shinythemes)
5939 ("r-shinytree" ,r-shinytree)
5940 ("r-summarizedexperiment" ,r-summarizedexperiment)
5941 ("r-variantannotation" ,r-variantannotation)
5942 ("r-xvector" ,r-xvector)))
5943 (home-page "https://github.com/rcastelo/VariantFiltering")
5944 (synopsis "Filtering of coding and non-coding genetic variants")
5945 (description
5946 "Filter genetic variants using different criteria such as inheritance
5947model, amino acid change consequence, minor allele frequencies across human
5948populations, splice site strength, conservation, etc.")
5949 (license license:artistic2.0)))
5950
5951(define-public r-genomegraphs
5952 (package
5953 (name "r-genomegraphs")
5954 (version "1.44.0")
5955 (source
5956 (origin
5957 (method url-fetch)
5958 (uri (bioconductor-uri "GenomeGraphs" version))
5959 (sha256
5960 (base32
5961 "026skcn2cqchlzaqsnk11gb8d8aq1rz7lrnx4mmsba234mh4j7kd"))))
5962 (properties `((upstream-name . "GenomeGraphs")))
5963 (build-system r-build-system)
5964 (propagated-inputs
5965 `(("r-biomart" ,r-biomart)))
5966 (home-page "https://bioconductor.org/packages/GenomeGraphs/")
5967 (synopsis "Plotting genomic information from Ensembl")
5968 (description
5969 "Genomic data analyses requires integrated visualization of known genomic
5970information and new experimental data. GenomeGraphs uses the biomaRt package
5971to perform live annotation queries to Ensembl and translates this to e.g.
5972gene/transcript structures in viewports of the grid graphics package. This
5973results in genomic information plotted together with your data. Another
5974strength of GenomeGraphs is to plot different data types such as array CGH,
5975gene expression, sequencing and other data, together in one plot using the
5976same genome coordinate system.")
5977 (license license:artistic2.0)))
5978
5979(define-public r-wavetiling
5980 (package
5981 (name "r-wavetiling")
5982 (version "1.26.0")
5983 (source
5984 (origin
5985 (method url-fetch)
5986 (uri (bioconductor-uri "waveTiling" version))
5987 (sha256
5988 (base32
5989 "0l0saa0myabpq2rl9dq70zff8jpxr3mkanxlj65hc41f0m5xllir"))))
5990 (properties `((upstream-name . "waveTiling")))
5991 (build-system r-build-system)
5992 (propagated-inputs
5993 `(("r-affy" ,r-affy)
5994 ("r-biobase" ,r-biobase)
5995 ("r-biostrings" ,r-biostrings)
5996 ("r-genomegraphs" ,r-genomegraphs)
5997 ("r-genomicranges" ,r-genomicranges)
5998 ("r-iranges" ,r-iranges)
5999 ("r-oligo" ,r-oligo)
6000 ("r-oligoclasses" ,r-oligoclasses)
6001 ("r-preprocesscore" ,r-preprocesscore)
6002 ("r-waveslim" ,r-waveslim)))
6003 (home-page "https://r-forge.r-project.org/projects/wavetiling/")
6004 (synopsis "Wavelet-based models for tiling array transcriptome analysis")
6005 (description
6006 "This package is designed to conduct transcriptome analysis for tiling
6007arrays based on fast wavelet-based functional models.")
6008 (license license:gpl2+)))
6009
6010(define-public r-variancepartition
6011 (package
6012 (name "r-variancepartition")
6013 (version "1.14.0")
6014 (source
6015 (origin
6016 (method url-fetch)
6017 (uri (bioconductor-uri "variancePartition" version))
6018 (sha256
6019 (base32
6020 "1ycapwb2mq57xibrzzjz9zwxqz4nwz9f3n5gskhlr5vcs7irkjd6"))))
6021 (properties
6022 `((upstream-name . "variancePartition")))
6023 (build-system r-build-system)
6024 (propagated-inputs
6025 `(("r-biobase" ,r-biobase)
6026 ("r-colorramps" ,r-colorramps)
6027 ("r-doparallel" ,r-doparallel)
6028 ("r-foreach" ,r-foreach)
6029 ("r-ggplot2" ,r-ggplot2)
6030 ("r-gplots" ,r-gplots)
6031 ("r-iterators" ,r-iterators)
6032 ("r-limma" ,r-limma)
6033 ("r-lme4" ,r-lme4)
6034 ("r-lmertest" ,r-lmertest)
6035 ("r-mass" ,r-mass)
6036 ("r-pbkrtest" ,r-pbkrtest)
6037 ("r-progress" ,r-progress)
6038 ("r-reshape2" ,r-reshape2)
6039 ("r-scales" ,r-scales)))
6040 (home-page "https://bioconductor.org/packages/variancePartition/")
6041 (synopsis "Analyze variation in gene expression experiments")
6042 (description
6043 "This is a package providing tools to quantify and interpret multiple
6044sources of biological and technical variation in gene expression experiments.
6045It uses a linear mixed model to quantify variation in gene expression
6046attributable to individual, tissue, time point, or technical variables. The
6047package includes dream differential expression analysis for repeated
6048measures.")
6049 (license license:gpl2+)))
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index e158bd3af76..34289501fc7 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -7340,13 +7340,13 @@ checks on R packages that are to be submitted to the Bioconductor repository.")
7340(define-public r-s4vectors 7340(define-public r-s4vectors
7341 (package 7341 (package
7342 (name "r-s4vectors") 7342 (name "r-s4vectors")
7343 (version "0.22.0") 7343 (version "0.22.1")
7344 (source (origin 7344 (source (origin
7345 (method url-fetch) 7345 (method url-fetch)
7346 (uri (bioconductor-uri "S4Vectors" version)) 7346 (uri (bioconductor-uri "S4Vectors" version))
7347 (sha256 7347 (sha256
7348 (base32 7348 (base32
7349 "1wkqmpy0d0fab9bjfc7i5wh2zng75pg9rn9c1z1lkki7fpwaw2jb")))) 7349 "0cpxqb18wd3pjd7bi8lry13sm5ffqahcvvxpk5pwm5xcj30cdlm9"))))
7350 (properties 7350 (properties
7351 `((upstream-name . "S4Vectors"))) 7351 `((upstream-name . "S4Vectors")))
7352 (build-system r-build-system) 7352 (build-system r-build-system)
@@ -7447,13 +7447,13 @@ names in their natural, rather than lexicographic, order.")
7447(define-public r-edger 7447(define-public r-edger
7448 (package 7448 (package
7449 (name "r-edger") 7449 (name "r-edger")
7450 (version "3.26.7") 7450 (version "3.26.8")
7451 (source (origin 7451 (source (origin
7452 (method url-fetch) 7452 (method url-fetch)
7453 (uri (bioconductor-uri "edgeR" version)) 7453 (uri (bioconductor-uri "edgeR" version))
7454 (sha256 7454 (sha256
7455 (base32 7455 (base32
7456 "1xbhb8aa1ygm5crkp1bmqs2x1601ppa2kgc2xlf2zh8jj8zqapg8")))) 7456 "1wwimzviy2vklp80faz7sbbp74qcw2csbmlfgvzj7b785vwarpwg"))))
7457 (properties `((upstream-name . "edgeR"))) 7457 (properties `((upstream-name . "edgeR")))
7458 (build-system r-build-system) 7458 (build-system r-build-system)
7459 (propagated-inputs 7459 (propagated-inputs
@@ -7569,13 +7569,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.")
7569(define-public r-genomicranges 7569(define-public r-genomicranges
7570 (package 7570 (package
7571 (name "r-genomicranges") 7571 (name "r-genomicranges")
7572 (version "1.36.0") 7572 (version "1.36.1")
7573 (source (origin 7573 (source (origin
7574 (method url-fetch) 7574 (method url-fetch)
7575 (uri (bioconductor-uri "GenomicRanges" version)) 7575 (uri (bioconductor-uri "GenomicRanges" version))
7576 (sha256 7576 (sha256
7577 (base32 7577 (base32
7578 "1285fr8qjd7d0ixpv7d5imi0n6wzc4k6yia1rkmig71qd2gg556k")))) 7578 "1yid84gn0052v52h84685lvk854grl1wl65psmlmxx9yyykgc0jn"))))
7579 (properties 7579 (properties
7580 `((upstream-name . "GenomicRanges"))) 7580 `((upstream-name . "GenomicRanges")))
7581 (build-system r-build-system) 7581 (build-system r-build-system)
@@ -7872,13 +7872,13 @@ alignments.")
7872(define-public r-rtracklayer 7872(define-public r-rtracklayer
7873 (package 7873 (package
7874 (name "r-rtracklayer") 7874 (name "r-rtracklayer")
7875 (version "1.44.3") 7875 (version "1.44.4")
7876 (source (origin 7876 (source (origin
7877 (method url-fetch) 7877 (method url-fetch)
7878 (uri (bioconductor-uri "rtracklayer" version)) 7878 (uri (bioconductor-uri "rtracklayer" version))
7879 (sha256 7879 (sha256
7880 (base32 7880 (base32
7881 "091zydz1zpz519ha0jkbvzrhxjvw5r2963qz9grmvl2jd8girvcg")))) 7881 "0dnifr58j2si2qbnvap2wslz3xgjv3h4l7a6v7nmmc57hq6kdbym"))))
7882 (build-system r-build-system) 7882 (build-system r-build-system)
7883 (arguments 7883 (arguments
7884 `(#:phases 7884 `(#:phases
@@ -9628,14 +9628,14 @@ Shiny-based display methods for Bioconductor objects.")
9628(define-public r-annotationhub 9628(define-public r-annotationhub
9629 (package 9629 (package
9630 (name "r-annotationhub") 9630 (name "r-annotationhub")
9631 (version "2.16.0") 9631 (version "2.16.1")
9632 (source 9632 (source
9633 (origin 9633 (origin
9634 (method url-fetch) 9634 (method url-fetch)
9635 (uri (bioconductor-uri "AnnotationHub" version)) 9635 (uri (bioconductor-uri "AnnotationHub" version))
9636 (sha256 9636 (sha256
9637 (base32 9637 (base32
9638 "1rpzl4x5mrwxrrf1jzm4zni6li6x34fjfyybsdvplb0ixa48zhn4")))) 9638 "0c773cmhng907839f0bq161jky7362lxxny36ac55qxiz1giqi8j"))))
9639 (properties `((upstream-name . "AnnotationHub"))) 9639 (properties `((upstream-name . "AnnotationHub")))
9640 (build-system r-build-system) 9640 (build-system r-build-system)
9641 (propagated-inputs 9641 (propagated-inputs
@@ -10023,14 +10023,14 @@ interval to data view, mismatch pileup, and several splicing summaries.")
10023(define-public r-gprofiler 10023(define-public r-gprofiler
10024 (package 10024 (package
10025 (name "r-gprofiler") 10025 (name "r-gprofiler")
10026 (version "0.6.7") 10026 (version "0.6.8")
10027 (source 10027 (source
10028 (origin 10028 (origin
10029 (method url-fetch) 10029 (method url-fetch)
10030 (uri (cran-uri "gProfileR" version)) 10030 (uri (cran-uri "gProfileR" version))
10031 (sha256 10031 (sha256
10032 (base32 10032 (base32
10033 "12nwidbnqmnfy5dnqga26byslvdnkrpz2fi19qfcby6xx0wbndk7")))) 10033 "05d6y6b7vkkzp2qhs1cwlvp02djij1b28dbwxnrms08f8qi35iaj"))))
10034 (properties `((upstream-name . "gProfileR"))) 10034 (properties `((upstream-name . "gProfileR")))
10035 (build-system r-build-system) 10035 (build-system r-build-system)
10036 (propagated-inputs 10036 (propagated-inputs
@@ -10448,14 +10448,14 @@ block processing.")
10448(define-public r-rhdf5lib 10448(define-public r-rhdf5lib
10449 (package 10449 (package
10450 (name "r-rhdf5lib") 10450 (name "r-rhdf5lib")
10451 (version "1.6.0") 10451 (version "1.6.1")
10452 (source 10452 (source
10453 (origin 10453 (origin
10454 (method url-fetch) 10454 (method url-fetch)
10455 (uri (bioconductor-uri "Rhdf5lib" version)) 10455 (uri (bioconductor-uri "Rhdf5lib" version))
10456 (sha256 10456 (sha256
10457 (base32 10457 (base32
10458 "1lpmyxlwwcy92hyxqag321ssc5z6yw3a0ws9r058jwgzyjg7i2gm")) 10458 "0niz9dh66fcwbvqpkpsdlz9d06kwi3kfh45dhk3qz9g9qqyiakr1"))
10459 (modules '((guix build utils))) 10459 (modules '((guix build utils)))
10460 (snippet 10460 (snippet
10461 '(begin 10461 '(begin
@@ -10644,14 +10644,14 @@ variable and significantly correlated genes.")
10644(define-public r-delayedmatrixstats 10644(define-public r-delayedmatrixstats
10645 (package 10645 (package
10646 (name "r-delayedmatrixstats") 10646 (name "r-delayedmatrixstats")
10647 (version "1.6.0") 10647 (version "1.6.1")
10648 (source 10648 (source
10649 (origin 10649 (origin
10650 (method url-fetch) 10650 (method url-fetch)
10651 (uri (bioconductor-uri "DelayedMatrixStats" version)) 10651 (uri (bioconductor-uri "DelayedMatrixStats" version))
10652 (sha256 10652 (sha256
10653 (base32 10653 (base32
10654 "0632ypndblrgzfk8k98rr8c6m2r0zwzf02pzvlrhcp9bj1pvqbrz")))) 10654 "1riyzfsq4bd513hidkw3cfkx3jywk3x87j89q70v459xsdfdc95b"))))
10655 (properties 10655 (properties
10656 `((upstream-name . "DelayedMatrixStats"))) 10656 `((upstream-name . "DelayedMatrixStats")))
10657 (build-system r-build-system) 10657 (build-system r-build-system)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 67ea968e434..dab0bd39c3c 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2234,7 +2234,7 @@ provides a simple way to achieve this.")
2234(define-public umockdev 2234(define-public umockdev
2235 (package 2235 (package
2236 (name "umockdev") 2236 (name "umockdev")
2237 (version "0.12.1") 2237 (version "0.13.2")
2238 (source (origin 2238 (source (origin
2239 (method url-fetch) 2239 (method url-fetch)
2240 (uri (string-append "https://github.com/martinpitt/umockdev/" 2240 (uri (string-append "https://github.com/martinpitt/umockdev/"
@@ -2242,7 +2242,7 @@ provides a simple way to achieve this.")
2242 "umockdev-" version ".tar.xz")) 2242 "umockdev-" version ".tar.xz"))
2243 (sha256 2243 (sha256
2244 (base32 2244 (base32
2245 "1hx5jm9afng6hw9wyp524z8nwdp6w053pca0w2c0gqpgrmvjxvd2")))) 2245 "095v3abc321s584sga04y16lcmdzsdi88h24wcrm78v7vq484g74"))))
2246 (build-system gnu-build-system) 2246 (build-system gnu-build-system)
2247 (arguments 2247 (arguments
2248 `(#:phases 2248 `(#:phases
@@ -2255,10 +2255,12 @@ provides a simple way to achieve this.")
2255 #t))))) 2255 #t)))))
2256 (native-inputs 2256 (native-inputs
2257 `(("vala" ,vala) 2257 `(("vala" ,vala)
2258 ("python" ,python) ; for tests
2259 ("which" ,which) ; for tests
2260 ("gtk-doc" ,gtk-doc) 2258 ("gtk-doc" ,gtk-doc)
2261 ("pkg-config" ,pkg-config))) 2259 ("pkg-config" ,pkg-config)
2260
2261 ;; For tests.
2262 ("python" ,python)
2263 ("which" ,which)))
2262 (inputs 2264 (inputs
2263 `(("glib" ,glib) 2265 `(("glib" ,glib)
2264 ("eudev" ,eudev) 2266 ("eudev" ,eudev)
diff --git a/gnu/packages/cluster.scm b/gnu/packages/cluster.scm
index 3608d67bed6..8b99a213562 100644
--- a/gnu/packages/cluster.scm
+++ b/gnu/packages/cluster.scm
@@ -1,6 +1,7 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org> 2;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
3;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> 3;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
4;;; Copyright © 2019 Andrew Miloradovsky <andrew@interpretmath.pw>
4;;; 5;;;
5;;; This file is part of GNU Guix. 6;;; This file is part of GNU Guix.
6;;; 7;;;
@@ -21,7 +22,10 @@
21 #:use-module ((guix licenses) #:prefix license:) 22 #:use-module ((guix licenses) #:prefix license:)
22 #:use-module (guix build-system gnu) 23 #:use-module (guix build-system gnu)
23 #:use-module (guix download) 24 #:use-module (guix download)
25 #:use-module (guix git-download)
24 #:use-module (guix packages) 26 #:use-module (guix packages)
27 #:use-module (gnu packages autotools)
28 #:use-module (gnu packages gettext)
25 #:use-module (gnu packages linux) 29 #:use-module (gnu packages linux)
26 #:use-module (gnu packages pkg-config) 30 #:use-module (gnu packages pkg-config)
27 #:use-module (gnu packages sphinx) 31 #:use-module (gnu packages sphinx)
@@ -79,3 +83,34 @@ Server (@dfn{IPVS}) kernel module. High availability is achieved by the Virtual
79Redundancy Routing Protocol (@dfn{VRRP}). Each Keepalived framework can be used 83Redundancy Routing Protocol (@dfn{VRRP}). Each Keepalived framework can be used
80independently or together to provide resilient infrastructures.") 84independently or together to provide resilient infrastructures.")
81 (license license:gpl2+))) 85 (license license:gpl2+)))
86
87(define-public libraft
88 (package
89 (name "libraft")
90 (version "0.9.5")
91 (home-page "https://github.com/canonical/raft")
92 (source (origin
93 (method git-fetch)
94 (uri (git-reference (url home-page)
95 (commit (string-append "v" version))))
96 (file-name (git-file-name name version))
97 (sha256
98 (base32
99 "1q49f5mmv6nr6dxhnp044xwc6jlczgh0nj0bl6718wiqh28411x0"))))
100 (arguments '(#:configure-flags '("--disable-uv")))
101 ;; The uv plugin tests fail, if libuv (or the example) is enabled,
102 ;; because setting up the environment requires too much privileges.
103 (native-inputs
104 `(("autoconf" ,autoconf)
105 ("automake" ,automake)
106 ("gettext" ,gettext-minimal)
107 ("libtool" ,libtool)
108 ("pkg-config" ,pkg-config)))
109 (build-system gnu-build-system)
110 (synopsis "C implementation of the Raft consensus protocol")
111 (description "The library has modular design: its core part implements only
112the core Raft algorithm logic, in a fully platform independent way. On top of
113that, a pluggable interface defines the I/O implementation for networking
114(send/receive RPC messages) and disk persistence (store log entries and
115snapshots).")
116 (license license:asl2.0)))
diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm
index 1d8d829ec52..64349be4442 100644
--- a/gnu/packages/cmake.scm
+++ b/gnu/packages/cmake.scm
@@ -207,6 +207,18 @@ and workspaces that can be used in the compiler environment of your choice.")
207 (outputs '("out" "doc")) 207 (outputs '("out" "doc"))
208 (properties (alist-delete 'hidden? (package-properties cmake-minimal))))) 208 (properties (alist-delete 'hidden? (package-properties cmake-minimal)))))
209 209
210(define-public cmake/fixed
211 ;; This is a variant of CMake that fixes X.509 certificate lookup:
212 ;; <https://issues.guix.gnu.org/issue/37371>.
213 (package
214 (inherit cmake)
215 (version (string-append (package-version cmake) "-1"))
216 (source (origin
217 (inherit (package-source cmake))
218 (patches
219 (append (search-patches "cmake-curl-certificates.patch")
220 (origin-patches (package-source cmake))))))))
221
210(define-public emacs-cmake-mode 222(define-public emacs-cmake-mode
211 (package 223 (package
212 (inherit cmake) 224 (inherit cmake)
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 5bf37e39005..cb0be4aedd8 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -15,6 +15,7 @@
15;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> 15;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
16;;; Copyright © 2018, 2019 Brett Gilio <brettg@posteo.net> 16;;; Copyright © 2018, 2019 Brett Gilio <brettg@posteo.net>
17;;; Copyright © 2019 Nicolò Balzarotti <anothersms@gmail.com> 17;;; Copyright © 2019 Nicolò Balzarotti <anothersms@gmail.com>
18;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
18;;; 19;;;
19;;; This file is part of GNU Guix. 20;;; This file is part of GNU Guix.
20;;; 21;;;
@@ -447,13 +448,13 @@ into a pipeline of data manipulation and visualisation.")
447(define-public r-httpuv 448(define-public r-httpuv
448 (package 449 (package
449 (name "r-httpuv") 450 (name "r-httpuv")
450 (version "1.5.1") 451 (version "1.5.2")
451 (source (origin 452 (source (origin
452 (method url-fetch) 453 (method url-fetch)
453 (uri (cran-uri "httpuv" version)) 454 (uri (cran-uri "httpuv" version))
454 (sha256 455 (sha256
455 (base32 456 (base32
456 "042piypg4c8sqrlcdl3dwajkafkbglsky3x7d0jpjv8s5wxnpfxm")))) 457 "13ax0hs2lc39ilznh1zarwqdzahcbhb8adilrfik3xg0fkljpcwk"))))
457 (build-system r-build-system) 458 (build-system r-build-system)
458 (propagated-inputs 459 (propagated-inputs
459 `(("r-bh" ,r-bh) 460 `(("r-bh" ,r-bh)
@@ -796,6 +797,84 @@ extensive prebuilt widgets make it possible to build beautiful,
796responsive, and powerful applications with minimal effort.") 797responsive, and powerful applications with minimal effort.")
797 (license license:artistic2.0))) 798 (license license:artistic2.0)))
798 799
800;; This package includes minified JavaScript files. When upgrading please
801;; check that there are no new minified JavaScript files.
802(define-public r-shinytree
803 (package
804 (name "r-shinytree")
805 (version "0.2.7")
806 (source
807 (origin
808 (method url-fetch)
809 (uri (cran-uri "shinyTree" version))
810 (sha256
811 (base32
812 "0jfx2capckv7hf2yx3fn8i4rcmhi222ah91jnmhg497x8wgz31s3"))
813 (modules '((guix build utils)))
814 (snippet
815 '(begin
816 ;; Delete minified JavaScript
817 (for-each delete-file
818 '("inst/www/jsTree-3.3.7/libs/require.js"
819 "inst/www/jsTree-3.3.7/libs/jquery.js"
820 "inst/www/jsTree-3.3.7/jstree.min.js"))
821 #t))))
822 (properties `((upstream-name . "shinyTree")))
823 (build-system r-build-system)
824 (arguments
825 `(#:modules ((guix build utils)
826 (guix build r-build-system)
827 (srfi srfi-1)
828 (ice-9 popen))
829 #:phases
830 (modify-phases %standard-phases
831 (add-after 'unpack 'replace-minified-javascript
832 (lambda* (#:key inputs #:allow-other-keys)
833 (with-directory-excursion "inst/www/jsTree-3.3.7/"
834 (symlink (string-append (assoc-ref inputs "js-requirejs")
835 "/share/javascript/require.min.js")
836 "libs/require.js")
837 (call-with-values
838 (lambda ()
839 (unzip2
840 `((,(assoc-ref inputs "js-jquery")
841 "libs/jquery.js")
842 ("jstree.js"
843 "jstree.min.js"))))
844 (lambda (sources targets)
845 (for-each (lambda (source target)
846 (format #t "Processing ~a --> ~a~%"
847 source target)
848 (let ((minified (open-pipe* OPEN_READ "uglify-js" source)))
849 (call-with-output-file target
850 (lambda (port)
851 (dump-port minified port)))))
852 sources targets))))
853 #t)))))
854 (propagated-inputs
855 `(("r-htmlwidgets" ,r-htmlwidgets)
856 ("r-jsonlite" ,r-jsonlite)
857 ("r-promises" ,r-promises)
858 ("r-shiny" ,r-shiny)
859 ("r-stringr" ,r-stringr)))
860 (inputs
861 `(("js-requirejs" ,js-requirejs)))
862 (native-inputs
863 `(("uglify-js" ,uglify-js)
864 ("js-jquery"
865 ,(origin
866 (method url-fetch)
867 (uri "https://code.jquery.com/jquery-3.3.1.js")
868 (sha256
869 (base32
870 "1b8zxrp6xwzpw25apn8j4qws0f6sr7qr7h2va5h1mjyfqvn29anq"))))))
871 (home-page "https://cran.r-project.org/web/packages/shinyTree/")
872 (synopsis "jsTree bindings for Shiny")
873 (description
874 "This package exposes R bindings to jsTree, a JavaScript library that
875supports interactive trees, to enable rich, editable trees in Shiny.")
876 (license license:expat)))
877
799(define-public r-shinydashboard 878(define-public r-shinydashboard
800 (package 879 (package
801 (name "r-shinydashboard") 880 (name "r-shinydashboard")
@@ -867,6 +946,31 @@ this gives the user direct access to the file system without the need to
867well as file saving is available.") 946well as file saving is available.")
868 (license license:gpl2+))) 947 (license license:gpl2+)))
869 948
949(define-public r-shinythemes
950 (package
951 (name "r-shinythemes")
952 (version "1.1.2")
953 (source
954 (origin
955 (method url-fetch)
956 (uri (cran-uri "shinythemes" version))
957 (sha256
958 (base32
959 "12miz44n2zxfswnia7p8dirxj3miw0aqn4pkx2111ikz67ax84rf"))))
960 (properties `((upstream-name . "shinythemes")))
961 (build-system r-build-system)
962 (propagated-inputs `(("r-shiny" ,r-shiny)))
963 (home-page "http://rstudio.github.io/shinythemes/")
964 (synopsis "Themes for Shiny")
965 (description
966 "This package provides themes for use with Shiny. It includes several
967Bootstrap themes, which are packaged for use with Shiny applications.")
968 ;; The package is released under version 3 of the GPL, but it includes
969 ;; source files that are covered by the Expat license. It also includes
970 ;; fonts under SIL or the ASL.
971 (license (list license:gpl3 license:expat
972 license:silofl1.1 license:asl2.0))))
973
870;; The package sources include minified variants of d3.js and non-minified 974;; The package sources include minified variants of d3.js and non-minified
871;; source code of d3-jetpack. 975;; source code of d3-jetpack.
872(define-public r-d3r 976(define-public r-d3r
@@ -1059,14 +1163,14 @@ work well on small screens.")
1059(define-public r-feather 1163(define-public r-feather
1060 (package 1164 (package
1061 (name "r-feather") 1165 (name "r-feather")
1062 (version "0.3.3") 1166 (version "0.3.5")
1063 (source 1167 (source
1064 (origin 1168 (origin
1065 (method url-fetch) 1169 (method url-fetch)
1066 (uri (cran-uri "feather" version)) 1170 (uri (cran-uri "feather" version))
1067 (sha256 1171 (sha256
1068 (base32 1172 (base32
1069 "0ls8lmygyjq60467s88h66d7fczjp1d3a2106rfq4dx9lyfvdfsa")))) 1173 "1gxd0h2m56sjjlzn4dry6s13nddxc4l5i11gsvavaf2dwbahdzsh"))))
1070 (build-system r-build-system) 1174 (build-system r-build-system)
1071 (propagated-inputs 1175 (propagated-inputs
1072 `(("r-hms" ,r-hms) 1176 `(("r-hms" ,r-hms)
@@ -1649,14 +1753,14 @@ validation and filtering on the values, making options invisible or private.")
1649(define-public r-circlize 1753(define-public r-circlize
1650 (package 1754 (package
1651 (name "r-circlize") 1755 (name "r-circlize")
1652 (version "0.4.7") 1756 (version "0.4.8")
1653 (source 1757 (source
1654 (origin 1758 (origin
1655 (method url-fetch) 1759 (method url-fetch)
1656 (uri (cran-uri "circlize" version)) 1760 (uri (cran-uri "circlize" version))
1657 (sha256 1761 (sha256
1658 (base32 1762 (base32
1659 "07y1bchkslpz2wl43yg5j5h1nl9z0i425a07jdmfd5avrynd8p3m")))) 1763 "0jvr9hmxyhg0zx101iiqkrg8wfaj86kp62xpv42n2j9fkn5r1mi2"))))
1660 (build-system r-build-system) 1764 (build-system r-build-system)
1661 (propagated-inputs 1765 (propagated-inputs
1662 `(("r-colorspace" ,r-colorspace) 1766 `(("r-colorspace" ,r-colorspace)
@@ -2663,14 +2767,14 @@ Optimization problems by using the simplex algorithm.")
2663(define-public r-geometry 2767(define-public r-geometry
2664 (package 2768 (package
2665 (name "r-geometry") 2769 (name "r-geometry")
2666 (version "0.4.3") 2770 (version "0.4.4")
2667 (source 2771 (source
2668 (origin 2772 (origin
2669 (method url-fetch) 2773 (method url-fetch)
2670 (uri (cran-uri "geometry" version)) 2774 (uri (cran-uri "geometry" version))
2671 (sha256 2775 (sha256
2672 (base32 2776 (base32
2673 "0z4491mhfmrlbb8lazjvq55alrprx7k0abg2d39fj0lsj84cls1r")))) 2777 "1mx5n5mw63nij4n6crs9165mlls4fnh1ipw5ch467rjsidgl0mg8"))))
2674 (build-system r-build-system) 2778 (build-system r-build-system)
2675 (propagated-inputs 2779 (propagated-inputs
2676 `(("r-magic" ,r-magic) 2780 `(("r-magic" ,r-magic)
@@ -5569,14 +5673,14 @@ and adds the annotation to the plot.")
5569(define-public r-ggpubr 5673(define-public r-ggpubr
5570 (package 5674 (package
5571 (name "r-ggpubr") 5675 (name "r-ggpubr")
5572 (version "0.2.2") 5676 (version "0.2.3")
5573 (source 5677 (source
5574 (origin 5678 (origin
5575 (method url-fetch) 5679 (method url-fetch)
5576 (uri (cran-uri "ggpubr" version)) 5680 (uri (cran-uri "ggpubr" version))
5577 (sha256 5681 (sha256
5578 (base32 5682 (base32
5579 "0r5knv3707pmpngmj60zn761y3bh8lj89dhh1b80ss083xnxr4qw")))) 5683 "0i81mmz4qn9yzcgfa6dhkcrx4ddlflkm2c3b40isc8all43rm8rn"))))
5580 (build-system r-build-system) 5684 (build-system r-build-system)
5581 (propagated-inputs 5685 (propagated-inputs
5582 `(("r-cowplot" ,r-cowplot) 5686 `(("r-cowplot" ,r-cowplot)
@@ -6091,14 +6195,14 @@ other add-on packages.")
6091(define-public r-insight 6195(define-public r-insight
6092 (package 6196 (package
6093 (name "r-insight") 6197 (name "r-insight")
6094 (version "0.4.1") 6198 (version "0.5.0")
6095 (source 6199 (source
6096 (origin 6200 (origin
6097 (method url-fetch) 6201 (method url-fetch)
6098 (uri (cran-uri "insight" version)) 6202 (uri (cran-uri "insight" version))
6099 (sha256 6203 (sha256
6100 (base32 6204 (base32
6101 "1lw1r3mb97z5p9z25jfzlhs0sbnwp6v8kzysf0am01x4m7l3iz82")))) 6205 "0lrh2l9n2zd9n3zzknsxz6nlasnrayx3bplxlz7m616g56gr5nfp"))))
6102 (build-system r-build-system) 6206 (build-system r-build-system)
6103 (home-page "https://easystats.github.io/insight/") 6207 (home-page "https://easystats.github.io/insight/")
6104 (synopsis "Easy access to model information for various model objects") 6208 (synopsis "Easy access to model information for various model objects")
@@ -6117,14 +6221,14 @@ information are missing.")
6117(define-public r-sjlabelled 6221(define-public r-sjlabelled
6118 (package 6222 (package
6119 (name "r-sjlabelled") 6223 (name "r-sjlabelled")
6120 (version "1.1.0") 6224 (version "1.1.1")
6121 (source 6225 (source
6122 (origin 6226 (origin
6123 (method url-fetch) 6227 (method url-fetch)
6124 (uri (cran-uri "sjlabelled" version)) 6228 (uri (cran-uri "sjlabelled" version))
6125 (sha256 6229 (sha256
6126 (base32 6230 (base32
6127 "0rnmlwpp41h04dzfjd5ncvzjzs43slaimb4v2in1axznv3haafyc")))) 6231 "0c9wy0gsr2sbkrv2638xbi7qm0gl6jyr6sfricavhkm7l4hljjkz"))))
6128 (build-system r-build-system) 6232 (build-system r-build-system)
6129 (propagated-inputs 6233 (propagated-inputs
6130 `(("r-haven" ,r-haven) 6234 `(("r-haven" ,r-haven)
@@ -6873,13 +6977,13 @@ and coverage methods to tune the choice of threshold.")
6873(define-public r-ggformula 6977(define-public r-ggformula
6874 (package 6978 (package
6875 (name "r-ggformula") 6979 (name "r-ggformula")
6876 (version "0.9.1") 6980 (version "0.9.2")
6877 (source 6981 (source
6878 (origin 6982 (origin
6879 (method url-fetch) 6983 (method url-fetch)
6880 (uri (cran-uri "ggformula" version)) 6984 (uri (cran-uri "ggformula" version))
6881 (sha256 6985 (sha256
6882 (base32 "01ngx8qh9lhmagng6abx2ky54zi3iyj5bpxlnw59slagwv7l6icx")))) 6986 (base32 "16ycabhnp78fsiv1dc63ccgh9gmpsy2683vbmq0fdzl6w3pd87sr"))))
6883 (build-system r-build-system) 6987 (build-system r-build-system)
6884 (propagated-inputs 6988 (propagated-inputs
6885 `(("r-ggplot2" ,r-ggplot2) 6989 `(("r-ggplot2" ,r-ggplot2)
@@ -7878,14 +7982,14 @@ Hothorn, Westfall, 2010, CRC Press).")
7878(define-public r-emmeans 7982(define-public r-emmeans
7879 (package 7983 (package
7880 (name "r-emmeans") 7984 (name "r-emmeans")
7881 (version "1.4") 7985 (version "1.4.1")
7882 (source 7986 (source
7883 (origin 7987 (origin
7884 (method url-fetch) 7988 (method url-fetch)
7885 (uri (cran-uri "emmeans" version)) 7989 (uri (cran-uri "emmeans" version))
7886 (sha256 7990 (sha256
7887 (base32 7991 (base32
7888 "1ynf9hhbch83k63lwps69ijfch30fk5v0sc418ck264c5vih26dh")))) 7992 "1fpawaxnmj67md169a9mzrnnh2d0c973xydfg6hw865933jil9lq"))))
7889 (build-system r-build-system) 7993 (build-system r-build-system)
7890 (propagated-inputs 7994 (propagated-inputs
7891 `(("r-estimability" ,r-estimability) 7995 `(("r-estimability" ,r-estimability)
@@ -8036,14 +8140,14 @@ detection, parallelism through BLAS and parallel user templates.")
8036(define-public r-sjstats 8140(define-public r-sjstats
8037 (package 8141 (package
8038 (name "r-sjstats") 8142 (name "r-sjstats")
8039 (version "0.17.5") 8143 (version "0.17.6")
8040 (source 8144 (source
8041 (origin 8145 (origin
8042 (method url-fetch) 8146 (method url-fetch)
8043 (uri (cran-uri "sjstats" version)) 8147 (uri (cran-uri "sjstats" version))
8044 (sha256 8148 (sha256
8045 (base32 8149 (base32
8046 "1x9ybvz84vgaabmqp4z6crbv5q6kqjg6msk1spbr11zx9dbj06ca")))) 8150 "11z1wfi0d74d1rld0320l3vmv6rl41wa0v9bjc44rk06yc90wld2"))))
8047 (build-system r-build-system) 8151 (build-system r-build-system)
8048 (propagated-inputs 8152 (propagated-inputs
8049 `(("r-bayestestr" ,r-bayestestr) 8153 `(("r-bayestestr" ,r-bayestestr)
@@ -8055,6 +8159,7 @@ detection, parallelism through BLAS and parallel user templates.")
8055 ("r-magrittr" ,r-magrittr) 8159 ("r-magrittr" ,r-magrittr)
8056 ("r-mass" ,r-mass) 8160 ("r-mass" ,r-mass)
8057 ("r-modelr" ,r-modelr) 8161 ("r-modelr" ,r-modelr)
8162 ("r-parameters" ,r-parameters)
8058 ("r-performance" ,r-performance) 8163 ("r-performance" ,r-performance)
8059 ("r-purrr" ,r-purrr) 8164 ("r-purrr" ,r-purrr)
8060 ("r-rlang" ,r-rlang) 8165 ("r-rlang" ,r-rlang)
@@ -8162,14 +8267,14 @@ effects models and Bayesian models.")
8162(define-public r-ggeffects 8267(define-public r-ggeffects
8163 (package 8268 (package
8164 (name "r-ggeffects") 8269 (name "r-ggeffects")
8165 (version "0.11.0") 8270 (version "0.12.0")
8166 (source 8271 (source
8167 (origin 8272 (origin
8168 (method url-fetch) 8273 (method url-fetch)
8169 (uri (cran-uri "ggeffects" version)) 8274 (uri (cran-uri "ggeffects" version))
8170 (sha256 8275 (sha256
8171 (base32 8276 (base32
8172 "1b0lxa8bljdh6h4lk7pql1lrhjlvh7p5c8qlgb8ac6ay8hb79vmi")))) 8277 "0idfycjk05gyykfp9ibmhxfcjvd01ikh1dl0fb4nqw6znw3ar0xp"))))
8173 (build-system r-build-system) 8278 (build-system r-build-system)
8174 (propagated-inputs 8279 (propagated-inputs
8175 `(("r-dplyr" ,r-dplyr) 8280 `(("r-dplyr" ,r-dplyr)
@@ -8196,14 +8301,14 @@ results using @code{ggplot2}.")
8196(define-public r-sjplot 8301(define-public r-sjplot
8197 (package 8302 (package
8198 (name "r-sjplot") 8303 (name "r-sjplot")
8199 (version "2.7.0") 8304 (version "2.7.1")
8200 (source 8305 (source
8201 (origin 8306 (origin
8202 (method url-fetch) 8307 (method url-fetch)
8203 (uri (cran-uri "sjPlot" version)) 8308 (uri (cran-uri "sjPlot" version))
8204 (sha256 8309 (sha256
8205 (base32 8310 (base32
8206 "1m0gy991fmxvqry91kkzdkdapyalhrwql25d0hg2a2naxgfw4zpk")))) 8311 "14shypabpahf68hd66rb1dpqhiyl3i0yx1yc85wamdvljh9fdymb"))))
8207 (properties `((upstream-name . "sjPlot"))) 8312 (properties `((upstream-name . "sjPlot")))
8208 (build-system r-build-system) 8313 (build-system r-build-system)
8209 (propagated-inputs 8314 (propagated-inputs
@@ -9122,17 +9227,18 @@ Scientific.")
9122(define-public r-activity 9227(define-public r-activity
9123 (package 9228 (package
9124 (name "r-activity") 9229 (name "r-activity")
9125 (version "1.2") 9230 (version "1.3")
9126 (source 9231 (source
9127 (origin 9232 (origin
9128 (method url-fetch) 9233 (method url-fetch)
9129 (uri (cran-uri "activity" version)) 9234 (uri (cran-uri "activity" version))
9130 (sha256 9235 (sha256
9131 (base32 9236 (base32
9132 "11w2bz6p9xbzdh6773dmbbh6rws0h5dj18p8m0ivzizgq932vdzs")))) 9237 "12imqj366dp6pam5gap6ji56p5wf1073xz5g4iikfxf5l8snxw92"))))
9133 (build-system r-build-system) 9238 (build-system r-build-system)
9134 (propagated-inputs 9239 (propagated-inputs
9135 `(("r-circular" ,r-circular) 9240 `(("r-circular" ,r-circular)
9241 ("r-insol" ,r-insol)
9136 ("r-pbapply" ,r-pbapply))) 9242 ("r-pbapply" ,r-pbapply)))
9137 (home-page "https://cran.r-project.org/web/packages/activity/") 9243 (home-page "https://cran.r-project.org/web/packages/activity/")
9138 (synopsis "Animal activity statistics") 9244 (synopsis "Animal activity statistics")
@@ -9444,14 +9550,14 @@ maps.")
9444(define-public r-tidytree 9550(define-public r-tidytree
9445 (package 9551 (package
9446 (name "r-tidytree") 9552 (name "r-tidytree")
9447 (version "0.2.6") 9553 (version "0.2.7")
9448 (source 9554 (source
9449 (origin 9555 (origin
9450 (method url-fetch) 9556 (method url-fetch)
9451 (uri (cran-uri "tidytree" version)) 9557 (uri (cran-uri "tidytree" version))
9452 (sha256 9558 (sha256
9453 (base32 9559 (base32
9454 "13mhizbsawmfqjpnzb73yw6kn1f1wlz0vhyzj3g0rj6ry880rw89")))) 9560 "15ky7hj7w08jx94wm0yikckca0apwv3jy5svd77dpzgb2lr9ff9a"))))
9455 (build-system r-build-system) 9561 (build-system r-build-system)
9456 (propagated-inputs 9562 (propagated-inputs
9457 `(("r-ape" ,r-ape) 9563 `(("r-ape" ,r-ape)
@@ -10767,14 +10873,14 @@ This makes it a convenient and fast interface to C/C++ and Fortran code.")
10767(define-public r-spam 10873(define-public r-spam
10768 (package 10874 (package
10769 (name "r-spam") 10875 (name "r-spam")
10770 (version "2.2-2") 10876 (version "2.3-0")
10771 (source 10877 (source
10772 (origin 10878 (origin
10773 (method url-fetch) 10879 (method url-fetch)
10774 (uri (cran-uri "spam" version)) 10880 (uri (cran-uri "spam" version))
10775 (sha256 10881 (sha256
10776 (base32 10882 (base32
10777 "024dgfnjfxvsiymbzrhadinamj6qy509f4sbd1zxql8ymkyxn7vi")))) 10883 "194n5mgvyms9ckjqixl3h33apii8h9kqspqg2si9k741k578qb3w"))))
10778 (build-system r-build-system) 10884 (build-system r-build-system)
10779 (propagated-inputs 10885 (propagated-inputs
10780 `(("r-dotcall64" ,r-dotcall64))) 10886 `(("r-dotcall64" ,r-dotcall64)))
@@ -11152,14 +11258,14 @@ regression coefficients can be conducted via jackknifing.")
11152(define-public r-huge 11258(define-public r-huge
11153 (package 11259 (package
11154 (name "r-huge") 11260 (name "r-huge")
11155 (version "1.3.2") 11261 (version "1.3.3")
11156 (source 11262 (source
11157 (origin 11263 (origin
11158 (method url-fetch) 11264 (method url-fetch)
11159 (uri (cran-uri "huge" version)) 11265 (uri (cran-uri "huge" version))
11160 (sha256 11266 (sha256
11161 (base32 11267 (base32
11162 "1j93gvi1jyq3ld9jhdqhrpm2is54rk3ilmf3yw7fx6gva0y6hjqd")))) 11268 "18f8w4hdp9fdi2k5ip6fnrn5z47w4ybgxs2m6a7jdvd2v4wfdr69"))))
11163 (build-system r-build-system) 11269 (build-system r-build-system)
11164 (propagated-inputs 11270 (propagated-inputs
11165 `(("r-igraph" ,r-igraph) 11271 `(("r-igraph" ,r-igraph)
@@ -12590,14 +12696,14 @@ barplots or heatmaps.")
12590(define-public r-seqinr 12696(define-public r-seqinr
12591 (package 12697 (package
12592 (name "r-seqinr") 12698 (name "r-seqinr")
12593 (version "3.4-5") 12699 (version "3.6-1")
12594 (source 12700 (source
12595 (origin 12701 (origin
12596 (method url-fetch) 12702 (method url-fetch)
12597 (uri (cran-uri "seqinr" version)) 12703 (uri (cran-uri "seqinr" version))
12598 (sha256 12704 (sha256
12599 (base32 12705 (base32
12600 "17zv0n5cji17izwmwg0jcbxbjl3w5rls91w15svcnlpxjms38ahn")))) 12706 "0j30za6kji6y3v09cvcydiacnp65pv6ig8aw7cydl47l5s9chky4"))))
12601 (build-system r-build-system) 12707 (build-system r-build-system)
12602 (propagated-inputs 12708 (propagated-inputs
12603 `(("r-ade4" ,r-ade4) 12709 `(("r-ade4" ,r-ade4)
@@ -13607,14 +13713,14 @@ the XKCD web comic.")
13607(define-public r-msigdbr 13713(define-public r-msigdbr
13608 (package 13714 (package
13609 (name "r-msigdbr") 13715 (name "r-msigdbr")
13610 (version "6.2.1") 13716 (version "7.0.1")
13611 (source 13717 (source
13612 (origin 13718 (origin
13613 (method url-fetch) 13719 (method url-fetch)
13614 (uri (cran-uri "msigdbr" version)) 13720 (uri (cran-uri "msigdbr" version))
13615 (sha256 13721 (sha256
13616 (base32 13722 (base32
13617 "1264j1hs74kq7hyh68vfynadfi6mdpq46qm1hnwzkzzhmbzpb9cg")))) 13723 "19p8z617m3my8la7n1qgb1s2msf940r372im3q30qkbcx3qxg3sd"))))
13618 (build-system r-build-system) 13724 (build-system r-build-system)
13619 (propagated-inputs 13725 (propagated-inputs
13620 `(("r-dplyr" ,r-dplyr) 13726 `(("r-dplyr" ,r-dplyr)
@@ -13881,14 +13987,14 @@ databases, including ENA, PDB or ChEMBL are also accessible.")
13881(define-public r-ggraph 13987(define-public r-ggraph
13882 (package 13988 (package
13883 (name "r-ggraph") 13989 (name "r-ggraph")
13884 (version "1.0.2") 13990 (version "2.0.0")
13885 (source 13991 (source
13886 (origin 13992 (origin
13887 (method url-fetch) 13993 (method url-fetch)
13888 (uri (cran-uri "ggraph" version)) 13994 (uri (cran-uri "ggraph" version))
13889 (sha256 13995 (sha256
13890 (base32 13996 (base32
13891 "0fpmp326mryd1k1qvacjadksrnhbla8h960i18lmrimzrag7692c")))) 13997 "0qj7w3af0pgmd9mil6y571jikfkln7b8csvzg6b08spwbglfy1s3"))))
13892 (build-system r-build-system) 13998 (build-system r-build-system)
13893 (propagated-inputs 13999 (propagated-inputs
13894 `(("r-digest" ,r-digest) 14000 `(("r-digest" ,r-digest)
@@ -13896,12 +14002,14 @@ databases, including ENA, PDB or ChEMBL are also accessible.")
13896 ("r-ggforce" ,r-ggforce) 14002 ("r-ggforce" ,r-ggforce)
13897 ("r-ggplot2" ,r-ggplot2) 14003 ("r-ggplot2" ,r-ggplot2)
13898 ("r-ggrepel" ,r-ggrepel) 14004 ("r-ggrepel" ,r-ggrepel)
14005 ("r-graphlayouts" ,r-graphlayouts)
13899 ("r-gtable" ,r-gtable) 14006 ("r-gtable" ,r-gtable)
13900 ("r-igraph" ,r-igraph) 14007 ("r-igraph" ,r-igraph)
13901 ("r-mass" ,r-mass) 14008 ("r-mass" ,r-mass)
13902 ("r-plyr" ,r-plyr)
13903 ("r-rcpp" ,r-rcpp) 14009 ("r-rcpp" ,r-rcpp)
14010 ("r-rlang" ,r-rlang)
13904 ("r-scales" ,r-scales) 14011 ("r-scales" ,r-scales)
14012 ("r-tidygraph" ,r-tidygraph)
13905 ("r-viridis" ,r-viridis))) 14013 ("r-viridis" ,r-viridis)))
13906 (home-page "https://cran.r-project.org/web/packages/ggraph/") 14014 (home-page "https://cran.r-project.org/web/packages/ggraph/")
13907 (synopsis "Implementation of grammar of graphics for graphs and networks") 14015 (synopsis "Implementation of grammar of graphics for graphs and networks")
@@ -15212,3 +15320,293 @@ single cell integration, described in Korsunsky et al
15212@url{doi.org/10.1101/461954}. The package includes a standalone Harmony 15320@url{doi.org/10.1101/461954}. The package includes a standalone Harmony
15213function and interfaces to external frameworks.") 15321function and interfaces to external frameworks.")
15214 (license license:gpl3)))) 15322 (license license:gpl3))))
15323
15324(define-public r-covr
15325 (package
15326 (name "r-covr")
15327 (version "3.3.1")
15328 (source
15329 (origin
15330 (method url-fetch)
15331 (uri (cran-uri "covr" version))
15332 (sha256
15333 (base32
15334 "0fvd7v53w11x6kaw61hbml8n1j2ck9l2fv2wvqdsg689xic9rqcs"))))
15335 (properties `((upstream-name . "covr")))
15336 (build-system r-build-system)
15337 (propagated-inputs
15338 `(("r-crayon" ,r-crayon)
15339 ("r-digest" ,r-digest)
15340 ("r-httr" ,r-httr)
15341 ("r-jsonlite" ,r-jsonlite)
15342 ("r-rex" ,r-rex)
15343 ("r-withr" ,r-withr)
15344 ("r-yaml" ,r-yaml)))
15345 (home-page "https://github.com/r-lib/covr")
15346 (synopsis "Test coverage for R packages")
15347 (description
15348 "Thisp package enables you to track and report code coverage for your
15349package and (optionally) upload the results to a coverage service. Code
15350coverage is a measure of the amount of code being exercised by a set of tests.
15351It is an indirect measure of test quality and completeness. This package is
15352compatible with any testing methodology or framework and tracks coverage of
15353both R code and compiled C/C++/FORTRAN code.")
15354 (license license:gpl3)))
15355
15356(define-public r-systemfonts
15357 (package
15358 (name "r-systemfonts")
15359 (version "0.1.1")
15360 (source
15361 (origin
15362 (method url-fetch)
15363 (uri (cran-uri "systemfonts" version))
15364 (sha256
15365 (base32
15366 "0m0ljid683xcam2f14x7k2zv1yx4npac38a3gfv11vhxfbnpgp0z"))))
15367 (properties `((upstream-name . "systemfonts")))
15368 (build-system r-build-system)
15369 (inputs
15370 `(("fontconfig" ,fontconfig)
15371 ("freetype" ,freetype)
15372 ("zlib" ,zlib)))
15373 (native-inputs
15374 `(("pkg-config" ,pkg-config)))
15375 (home-page "https://github.com/r-lib/systemfonts")
15376 (synopsis "System native font finding")
15377 (description
15378 "This package provides system native access to the font catalogue. As
15379font handling varies between systems it is difficult to correctly locate
15380installed fonts across different operating systems. The 'systemfonts' package
15381provides bindings to the native libraries for finding font files that can then
15382be used further by e.g. graphic devices.")
15383 (license license:expat)))
15384
15385(define-public r-graphlayouts
15386 (package
15387 (name "r-graphlayouts")
15388 (version "0.5.0")
15389 (source
15390 (origin
15391 (method url-fetch)
15392 (uri (cran-uri "graphlayouts" version))
15393 (sha256
15394 (base32
15395 "03dizbhhdhnzbj2i5zvqgs617kwcv4h2pha4f16adic0fph1rxl3"))))
15396 (properties `((upstream-name . "graphlayouts")))
15397 (build-system r-build-system)
15398 (propagated-inputs
15399 `(("r-igraph" ,r-igraph)
15400 ("r-rcpp" ,r-rcpp)
15401 ("r-rcpparmadillo" ,r-rcpparmadillo)))
15402 (home-page "https://github.com/schochastics/graphlayouts")
15403 (synopsis "Additional layout algorithms for network visualizations")
15404 (description
15405 "This package provides several layout algorithms to visualize networks
15406which are not part of the igraph library. Most are based on the concept of
15407stress majorization by Gansner et al. (2004)
15408<doi:10.1007/978-3-540-31843-9_25>. Some more specific algorithms allow to
15409emphasize hidden group structures in networks or focus on specific nodes.")
15410 (license license:expat)))
15411
15412(define-public r-tidygraph
15413 (package
15414 (name "r-tidygraph")
15415 (version "1.1.2")
15416 (source
15417 (origin
15418 (method url-fetch)
15419 (uri (cran-uri "tidygraph" version))
15420 (sha256
15421 (base32
15422 "1zpsarm74afbc7p5dlyb0whc09670qdcddw1ckb25cfc9hfh0hjn"))))
15423 (properties `((upstream-name . "tidygraph")))
15424 (build-system r-build-system)
15425 (propagated-inputs
15426 `(("r-dplyr" ,r-dplyr)
15427 ("r-igraph" ,r-igraph)
15428 ("r-magrittr" ,r-magrittr)
15429 ("r-pillar" ,r-pillar)
15430 ("r-r6" ,r-r6)
15431 ("r-rcpp" ,r-rcpp)
15432 ("r-rlang" ,r-rlang)
15433 ("r-tibble" ,r-tibble)
15434 ("r-tidyr" ,r-tidyr)))
15435 (home-page "https://github.com/thomasp85/tidygraph")
15436 (synopsis "Tidy API for graph manipulation")
15437 (description
15438 "This package provides a graph implementation that can be thought of as
15439two tidy data frames describing node and edge data respectively. It provides
15440an approach to manipulate these two virtual data frames using the API defined
15441in the @code{dplyr} package, and it also provides tidy interfaces to a lot of
15442common graph algorithms.")
15443 (license license:expat)))
15444
15445(define-public r-soupx
15446 (let ((commit "a3354be76fb52fd795be6ddf163cf056c05c6cb8")
15447 (revision "1"))
15448 (package
15449 (name "r-soupx")
15450 (version (git-version "0.3.1" revision commit))
15451 (source
15452 (origin
15453 (method git-fetch)
15454 (uri (git-reference
15455 (url "https://github.com/constantAmateur/SoupX")
15456 (commit commit)))
15457 (file-name (git-file-name name version))
15458 (sha256
15459 (base32
15460 "1zmlyzrl0fz6l79gn2wswid670p88mm3y292is89sa5p3h7frr99"))))
15461 (properties `((upstream-name . "SoupX")))
15462 (build-system r-build-system)
15463 (propagated-inputs
15464 `(("r-ggplot2" ,r-ggplot2)
15465 ("r-matrix" ,r-matrix)
15466 ("r-seurat" ,r-seurat)))
15467 (home-page "https://github.com/constantAmateur/SoupX")
15468 (synopsis "Single cell mRNA Soup eXterminator")
15469 (description
15470 "This package provides a package for quantifying, profiling and
15471removing cell free mRNA contamination (the \"soup\") from droplet based single
15472cell RNA-seq experiments.")
15473 (license license:gpl2))))
15474
15475(define-public r-assertr
15476 (package
15477 (name "r-assertr")
15478 (version "2.6")
15479 (source
15480 (origin
15481 (method url-fetch)
15482 (uri (cran-uri "assertr" version))
15483 (sha256
15484 (base32
15485 "0g4ii6vhp0155a29ljhs64a09x0nzy5ybvwwchhk4mkcgsvnvfkj"))))
15486 (build-system r-build-system)
15487 (propagated-inputs
15488 `(("r-dplyr" ,r-dplyr)
15489 ("r-mass" ,r-mass)
15490 ("r-rlang" ,r-rlang)))
15491 (native-inputs
15492 `(("r-knitr" ,r-knitr))) ; needed for vignette
15493 (home-page "https://github.com/ropensci/assertr")
15494 (synopsis "Assertive programming for R analysis pipelines")
15495 (description
15496 "This package provides functionality to assert conditions that have to be
15497met so that errors in data used in analysis pipelines can fail quickly. It is
15498similar to @code{stopifnot()} but more powerful, friendly, and easier for use
15499in pipelines.")
15500 (license license:expat)))
15501
15502(define-public r-parameters
15503 (package
15504 (name "r-parameters")
15505 (version "0.1.0")
15506 (source
15507 (origin
15508 (method url-fetch)
15509 (uri (cran-uri "parameters" version))
15510 (sha256
15511 (base32
15512 "12v301va1l3xydicbf0k04anxlmyjclbbjfg0riprryhkxwwk8g5"))))
15513 (properties `((upstream-name . "parameters")))
15514 (build-system r-build-system)
15515 (propagated-inputs
15516 `(("r-bayestestr" ,r-bayestestr)
15517 ("r-insight" ,r-insight)))
15518 (home-page "https://cran.r-project.org/web/packages/parameters")
15519 (synopsis "Processing of model parameters")
15520 (description
15521 "This package provides utilities for processing the parameters of various
15522statistical models. Beyond computing p values, CIs, and other indices for a
15523wide variety of models, this package implements features like standardization
15524or bootstrapping of parameters and models, feature reduction (feature
15525extraction and variable selection) as well as conversion between indices of
15526effect size.")
15527 (license license:gpl3)))
15528
15529(define-public r-rgdal
15530 (package
15531 (name "r-rgdal")
15532 (version "1.4-4")
15533 (source
15534 (origin
15535 (method url-fetch)
15536 (uri (cran-uri "rgdal" version))
15537 (sha256
15538 (base32
15539 "1my56hdc9x40ynxx1qwqwqxjvjxybmm00w4xg5gi8zgj19pffci5"))))
15540 (properties `((upstream-name . "rgdal")))
15541 (build-system r-build-system)
15542 (inputs
15543 `(("gdal" ,gdal)
15544 ("proj.4" ,proj.4)
15545 ("zlib" ,zlib)))
15546 (propagated-inputs
15547 `(("r-sp" ,r-sp)))
15548 (native-inputs
15549 `(("pkg-config" ,pkg-config)))
15550 (home-page "http://rgdal.r-forge.r-project.org")
15551 (synopsis "Bindings for the Geospatial Data Abstraction Library")
15552 (description
15553 "This package provides bindings to the Geospatial Data Abstraction
15554Library (GDAL) and access to projection/transformation operations from the
15555PROJ.4 library.")
15556 (license license:gpl2+)))
15557
15558(define-public r-insol
15559 (package
15560 (name "r-insol")
15561 (version "1.2")
15562 (source
15563 (origin
15564 (method url-fetch)
15565 (uri (cran-uri "insol" version))
15566 (sha256
15567 (base32
15568 "14ikz05375pjn9hby7kwkhcnykjilbnkdy5i8lsl7c5qdbhmqcm5"))))
15569 (properties `((upstream-name . "insol")))
15570 (build-system r-build-system)
15571 (propagated-inputs
15572 `(("r-raster" ,r-raster)
15573 ("r-rgdal" ,r-rgdal)))
15574 (native-inputs
15575 `(("gfortran" ,gfortran)))
15576 (home-page "https://meteoexploration.com/R/insol/index.html")
15577 (synopsis "Tools for calculating solar radiation")
15578 (description
15579 "This package provides functions to compute insolation on tilted
15580surfaces, computes atmospheric transmittance and related parameters such as:
15581Earth radius vector, declination, sunset and sunrise, daylength, equation of
15582time, vector in the direction of the sun, vector normal to surface, and some
15583atmospheric physics.")
15584 (license license:gpl2+)))
15585
15586(define-public r-lifecycle
15587 (package
15588 (name "r-lifecycle")
15589 (version "0.1.0")
15590 (source
15591 (origin
15592 (method url-fetch)
15593 (uri (cran-uri "lifecycle" version))
15594 (sha256
15595 (base32
15596 "11rk7hkw63rfrf4aqmb4xrb88kg95xh8hajpjvjfwjym2v02h74n"))))
15597 (properties `((upstream-name . "lifecycle")))
15598 (build-system r-build-system)
15599 (propagated-inputs
15600 `(("r-glue" ,r-glue)
15601 ("r-rlang" ,r-rlang)))
15602 (home-page "https://github.com/r-lib/lifecycle")
15603 (synopsis "Manage the life cycle of your package functions")
15604 (description
15605 "Manage the life cycle of your exported functions with shared
15606conventions, documentation badges, and non-invasive deprecation warnings. The
15607lifecycle package defines four development stages (experimental, maturing,
15608stable, and questioning) and three deprecation stages (soft-deprecated,
15609deprecated, and defunct). It makes it easy to insert badges corresponding to
15610these stages in your documentation. Usage of deprecated functions are
15611signalled with increasing levels of non-invasive verbosity.")
15612 (license license:gpl3)))
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e138b93e9bc..906a8e66bf0 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -2019,7 +2019,7 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}.
2019(define-public rust-percent-encoding 2019(define-public rust-percent-encoding
2020 (package 2020 (package
2021 (name "rust-percent-encoding") 2021 (name "rust-percent-encoding")
2022 (version "2.0.0") 2022 (version "2.1.0")
2023 (source 2023 (source
2024 (origin 2024 (origin
2025 (method url-fetch) 2025 (method url-fetch)
@@ -2027,7 +2027,7 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}.
2027 (file-name (string-append name "-" version ".tar.gz")) 2027 (file-name (string-append name "-" version ".tar.gz"))
2028 (sha256 2028 (sha256
2029 (base32 2029 (base32
2030 "0m6rkp3iy11la04p6z3492rns6n693pvmx585dvfmzzlzak2hkxs")))) 2030 "0bp3zrsk3kr47fbpipyczidbbx4g54lzxdm77ni1i3qws10mdzfl"))))
2031 (build-system cargo-build-system) 2031 (build-system cargo-build-system)
2032 (home-page "https://github.com/servo/rust-url/") 2032 (home-page "https://github.com/servo/rust-url/")
2033 (synopsis "Percent encoding and decoding") 2033 (synopsis "Percent encoding and decoding")
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index 4be1eee156f..152258a5226 100644
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@ -636,14 +636,14 @@ printer/driver specific, but spooler-independent PPD file.")
636(define-public foo2zjs 636(define-public foo2zjs
637 (package 637 (package
638 (name "foo2zjs") 638 (name "foo2zjs")
639 (version "20190517") 639 (version "20190909")
640 (source (origin 640 (source (origin
641 (method url-fetch) 641 (method url-fetch)
642 ;; XXX: This is an unversioned URL! 642 ;; XXX: This is an unversioned URL!
643 (uri "http://foo2zjs.rkkda.com/foo2zjs.tar.gz") 643 (uri "http://foo2zjs.rkkda.com/foo2zjs.tar.gz")
644 (sha256 644 (sha256
645 (base32 645 (base32
646 "13gzsd26nq4brx1xzpwmg1qnr4nk7ykgi94qr1hbjqfi561prki4")))) 646 "1nn84c045mbv6yzpjfggc6152bvgrmcxiyvgz9v2w3sws7ihshrm"))))
647 (build-system gnu-build-system) 647 (build-system gnu-build-system)
648 (arguments 648 (arguments
649 '(#:phases (modify-phases %standard-phases 649 '(#:phases (modify-phases %standard-phases
diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm
index ba22fecf201..37bd4aaf6b0 100644
--- a/gnu/packages/dictionaries.scm
+++ b/gnu/packages/dictionaries.scm
@@ -218,7 +218,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
218(define-public grammalecte 218(define-public grammalecte
219 (package 219 (package
220 (name "grammalecte") 220 (name "grammalecte")
221 (version "1.3.0") 221 (version "1.4.0")
222 (source 222 (source
223 (origin 223 (origin
224 (method url-fetch/zipbomb) 224 (method url-fetch/zipbomb)
@@ -226,10 +226,10 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
226 "Grammalecte-fr-v" version ".zip")) 226 "Grammalecte-fr-v" version ".zip"))
227 (sha256 227 (sha256
228 (base32 228 (base32
229 "1knysfdd1rx4vc5cmmnry4jsza0cdjy26fv505m854yfmq6zrckd")))) 229 "0k30b9kcczsadjjgwja03rkm11cpcc1xi6w8l6k0qfbjfpkhsh66"))))
230 (build-system python-build-system) 230 (build-system python-build-system)
231 (home-page "https://grammalecte.net") 231 (home-page "https://grammalecte.net")
232 (synopsis "French spelling and grammar checker") 232 (synopsis "French spelling and grammar checker")
233 (description "Grammalecte is a grammar checker dedicated to the French 233 (description "Grammalecte is a grammar checker dedicated to the French
234language, derived from Lightproof. 234language, derived from Lightproof.
235 235
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index 1ca2b95c197..66e7e22f261 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -2,7 +2,7 @@
2;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org> 2;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
3;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> 3;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
4;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> 4;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
5;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> 5;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
6;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> 6;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
7;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> 7;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
8;;; 8;;;
@@ -27,6 +27,7 @@
27 #:use-module (gnu packages base) 27 #:use-module (gnu packages base)
28 #:use-module (gnu packages bash) 28 #:use-module (gnu packages bash)
29 #:use-module (gnu packages compression) 29 #:use-module (gnu packages compression)
30 #:use-module (gnu packages curl)
30 #:use-module (gnu packages databases) 31 #:use-module (gnu packages databases)
31 #:use-module (gnu packages fonts) 32 #:use-module (gnu packages fonts)
32 #:use-module (gnu packages freedesktop) 33 #:use-module (gnu packages freedesktop)
@@ -36,6 +37,7 @@
36 #:use-module (gnu packages gnome) 37 #:use-module (gnu packages gnome)
37 #:use-module (gnu packages gtk) 38 #:use-module (gnu packages gtk)
38 #:use-module (gnu packages javascript) 39 #:use-module (gnu packages javascript)
40 #:use-module (gnu packages kde)
39 #:use-module (gnu packages kde-frameworks) ; extra-cmake-modules 41 #:use-module (gnu packages kde-frameworks) ; extra-cmake-modules
40 #:use-module (gnu packages perl) 42 #:use-module (gnu packages perl)
41 #:use-module (gnu packages pkg-config) 43 #:use-module (gnu packages pkg-config)
@@ -521,3 +523,101 @@ minutes. For simpler timetables, it may take a shorter time, under
521difficult timetables, it may take a longer time, a matter of hours.") 523difficult timetables, it may take a longer time, a matter of hours.")
522 (license license:agpl3+))) 524 (license license:agpl3+)))
523 525
526(define-public klavaro
527 (package
528 (name "klavaro")
529 (version "3.09")
530 (source
531 (origin
532 (method url-fetch)
533 (uri (string-append "mirror://sourceforge/klavaro/klavaro-"
534 version ".tar.bz2"))
535 (sha256
536 (base32
537 "12gml7h45b1w9s318h0d5wxw92h7pgajn2kh57j0ak9saq0yb0wr"))))
538 (build-system gnu-build-system)
539 (native-inputs
540 `(("intltool" ,intltool)
541 ("pkg-config" ,pkg-config)))
542 (inputs
543 `(("cairo" ,cairo)
544 ("curl" ,curl)
545 ("gtk+" ,gtk+)
546 ("pango" ,pango)))
547 (home-page "https://klavaro.sourceforge.io/en/index.html")
548 (synopsis "Touch typing tutor")
549 (description
550 "Klavaro is a simple tutor to teach correct typing, almost independently of
551language and very flexible regarding to new or unknown keyboard layouts.")
552 (license license:gpl3+)))
553
554(define-public ktouch
555 (package
556 (name "ktouch")
557 (version "19.08.1")
558 (source
559 (origin
560 (method url-fetch)
561 (uri (string-append "mirror://kde/stable/applications/"
562 version "/src/ktouch-" version ".tar.xz"))
563 (sha256
564 (base32
565 "19rdk94pls75hdvx11hnfk3qpm6l28p9q45q5f04sknxagrfaznr"))))
566 (build-system cmake-build-system)
567 (arguments
568 `(#:modules ((guix build cmake-build-system)
569 (guix build qt-utils)
570 (guix build utils))
571 #:imported-modules (,@%cmake-build-system-modules
572 (guix build qt-utils))
573 #:phases
574 (modify-phases %standard-phases
575 (add-after 'configure 'patch-makefiles
576 (lambda* (#:key inputs #:allow-other-keys)
577 (let ((qtdec (assoc-ref inputs "qtdeclarative")))
578 (substitute* '("src/CMakeFiles/ktouch_autogen.dir/build.make"
579 "src/CMakeFiles/ktouch.dir/build.make")
580 (("/gnu/store/.*qmlcachegen")
581 (string-append qtdec "/bin/qmlcachegen"))))
582 #t))
583 (add-after 'install 'wrap-executable
584 (lambda* (#:key outputs #:allow-other-keys)
585 (let ((out (assoc-ref outputs "out")))
586 (wrap-qt-program out "ktouch"))
587 #t)))))
588 (native-inputs
589 `(("extra-cmake-modules" ,extra-cmake-modules)
590 ("kdoctools" ,kdoctools)
591 ("pkg-config" ,pkg-config)))
592 (inputs
593 `(("kcmutils" ,kcmutils)
594 ("kcompletion" ,kcompletion)
595 ("kconfig" ,kconfig)
596 ("kconfigwidgets" ,kconfigwidgets)
597 ("kcoreaddons" ,kcoreaddons)
598 ("kdeclarative" ,kdeclarative)
599 ("ki18n" ,ki18n)
600 ("kiconthemes" ,kiconthemes)
601 ("kitemviews" ,kitemviews)
602 ("kqtquickcharts" ,kqtquickcharts)
603 ("ktextwidgets" ,ktextwidgets)
604 ("kwidgetsaddons" ,kwidgetsaddons)
605 ("kwindowsystem" ,kwindowsystem)
606 ("kxmlgui" ,kxmlgui)
607 ("libxcb" ,libxcb)
608 ("libxkbfile" ,libxkbfile)
609 ("qtbase" ,qtbase)
610 ("qtdeclarative" ,qtdeclarative)
611 ("qtgraphicaleffects" ,qtgraphicaleffects)
612 ("qtquickcontrols2" ,qtquickcontrols2)
613 ("qtx11extras" ,qtx11extras)
614 ("qtxmlpatterns" ,qtxmlpatterns)))
615 (home-page "https://edu.kde.org/ktouch/")
616 (synopsis "Touch typing tutor")
617 (description
618 "KTouch is an aid for learning how to type with speed and accuracy. It
619provides a sample text to type and indicates which fingers should be used for
620each key. A collection of lessons are included for a wide range of different
621languages and keyboard layouts, and typing statistics are used to dynamically
622adjust the level of difficulty.")
623 (license license:gpl2)))
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index e3c23ef945a..6b9027df8af 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -49,7 +49,7 @@
49;;; Copyright © 2019 LaFreniere, Joseph <joseph@lafreniere.xyz> 49;;; Copyright © 2019 LaFreniere, Joseph <joseph@lafreniere.xyz>
50;;; Copyright © 2019 Amar Singh <nly@disroot.org> 50;;; Copyright © 2019 Amar Singh <nly@disroot.org>
51;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr> 51;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr>
52;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autitici.org> 52;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
53;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk> 53;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk>
54;;; Copyright © 2019 Amin Bandali <bandali@gnu.org> 54;;; Copyright © 2019 Amin Bandali <bandali@gnu.org>
55;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> 55;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
@@ -2932,7 +2932,7 @@ snippets for yasnippet.")
2932(define-public emacs-smart-mode-line 2932(define-public emacs-smart-mode-line
2933 (package 2933 (package
2934 (name "emacs-smart-mode-line") 2934 (name "emacs-smart-mode-line")
2935 (version "2.12.0") 2935 (version "2.13")
2936 (source 2936 (source
2937 (origin 2937 (origin
2938 (method git-fetch) 2938 (method git-fetch)
@@ -2941,7 +2941,7 @@ snippets for yasnippet.")
2941 (commit version))) 2941 (commit version)))
2942 (file-name (git-file-name name version)) 2942 (file-name (git-file-name name version))
2943 (sha256 2943 (sha256
2944 (base32 "1gs4ay9hdg8gmia4ir74qawk80pqwv99hp4yhy108kpfry5mrq6z")))) 2944 (base32 "164b697xm1rwcggv37dymhf3npbyh2bs59z8b6m5x35lb4c3lf8b"))))
2945 (build-system emacs-build-system) 2945 (build-system emacs-build-system)
2946 (propagated-inputs 2946 (propagated-inputs
2947 `(("emacs-rich-minority" ,emacs-rich-minority))) 2947 `(("emacs-rich-minority" ,emacs-rich-minority)))
@@ -3211,14 +3211,14 @@ source code using IPython.")
3211(define-public emacs-debbugs 3211(define-public emacs-debbugs
3212 (package 3212 (package
3213 (name "emacs-debbugs") 3213 (name "emacs-debbugs")
3214 (version "0.18") 3214 (version "0.19")
3215 (source (origin 3215 (source (origin
3216 (method url-fetch) 3216 (method url-fetch)
3217 (uri (string-append "https://elpa.gnu.org/packages/debbugs-" 3217 (uri (string-append "https://elpa.gnu.org/packages/debbugs-"
3218 version ".tar")) 3218 version ".tar"))
3219 (sha256 3219 (sha256
3220 (base32 3220 (base32
3221 "00kich80zdg7v3v613f9prqddkpwpm1nf9sj10f0n6wh15rzwv07")))) 3221 "0cpby8f088cqb5mpd756a2mb706x763k15cg2xdmmsxl415k3yw4"))))
3222 (build-system emacs-build-system) 3222 (build-system emacs-build-system)
3223 (arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$"))) 3223 (arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
3224 (propagated-inputs 3224 (propagated-inputs
@@ -6008,7 +6008,7 @@ indentation guides in Emacs:
6008(define-public emacs-elpy 6008(define-public emacs-elpy
6009 (package 6009 (package
6010 (name "emacs-elpy") 6010 (name "emacs-elpy")
6011 (version "1.28.0") 6011 (version "1.31.0")
6012 (source (origin 6012 (source (origin
6013 (method git-fetch) 6013 (method git-fetch)
6014 (uri (git-reference 6014 (uri (git-reference
@@ -6017,7 +6017,7 @@ indentation guides in Emacs:
6017 (file-name (git-file-name name version)) 6017 (file-name (git-file-name name version))
6018 (sha256 6018 (sha256
6019 (base32 6019 (base32
6020 "073bwxwjzcbmvpcz9q2xjwzx9x7hkvjni6fwvikh6yawzjp56jis")))) 6020 "0bvmgqs3c80bhs9v5ymgadv7vk4iamha10y7rl09pixmjm4mzagk"))))
6021 (build-system emacs-build-system) 6021 (build-system emacs-build-system)
6022 (arguments 6022 (arguments
6023 `(#:include (cons* "^elpy/[^/]+\\.py$" "^snippets\\/" %default-include) 6023 `(#:include (cons* "^elpy/[^/]+\\.py$" "^snippets\\/" %default-include)
@@ -13189,16 +13189,17 @@ compilation/grep buffers. Works with @code{wgrep}, @code{ack}, @code{ag},
13189(define-public emacs-interactive-align 13189(define-public emacs-interactive-align
13190 (package 13190 (package
13191 (name "emacs-interactive-align") 13191 (name "emacs-interactive-align")
13192 (version "0.1.0") 13192 (version "0.4.2")
13193 (source 13193 (source
13194 (origin 13194 (origin
13195 (method url-fetch) 13195 (method git-fetch)
13196 (uri (string-append "https://github.com/mkcms/interactive-align/" 13196 (uri (git-reference
13197 "archive/" "v" version ".tar.gz")) 13197 (url "https://github.com/mkcms/interactive-align.git")
13198 (file-name (string-append name "-" version ".tar.gz")) 13198 (commit (string-append "v" version))))
13199 (file-name (git-file-name name version))
13199 (sha256 13200 (sha256
13200 (base32 13201 (base32
13201 "0sibpgb4lp6yy3pziak8f3hz4b28yj0dqy2nzh51z3d0b63h528m")))) 13202 "0bh03w91i622hbar5dcq631ndxx1y8kd3h655pgw1g0lqkv1mlnc"))))
13202 (build-system emacs-build-system) 13203 (build-system emacs-build-system)
13203 (home-page "https://github.com/mkcms/interactive-align/") 13204 (home-page "https://github.com/mkcms/interactive-align/")
13204 (synopsis "Interactive align-regexp command in Emacs") 13205 (synopsis "Interactive align-regexp command in Emacs")
@@ -13668,7 +13669,7 @@ through the symbol: @command{this-fn}.")
13668(define-public emacs-dumb-jump 13669(define-public emacs-dumb-jump
13669 (package 13670 (package
13670 (name "emacs-dumb-jump") 13671 (name "emacs-dumb-jump")
13671 (version "0.5.2") 13672 (version "0.5.3")
13672 (source 13673 (source
13673 (origin 13674 (origin
13674 (method git-fetch) 13675 (method git-fetch)
@@ -13677,7 +13678,7 @@ through the symbol: @command{this-fn}.")
13677 (commit (string-append "v" version)))) 13678 (commit (string-append "v" version))))
13678 (file-name (git-file-name name version)) 13679 (file-name (git-file-name name version))
13679 (sha256 13680 (sha256
13680 (base32 "00ph85vp8sa3k99qrdxfz4l8zx121q9xf47vvspzg26bk9l4nwin")))) 13681 (base32 "1njf60264snhxrd36m4z687lqfkis0p9mmrr7cf1c8l0lfdvawxi"))))
13681 (build-system emacs-build-system) 13682 (build-system emacs-build-system)
13682 (arguments 13683 (arguments
13683 `(#:tests? #f ; FIXME: Tests freeze when run. 13684 `(#:tests? #f ; FIXME: Tests freeze when run.
@@ -14260,30 +14261,29 @@ on-line service.")
14260 (license license:gpl3+))) 14261 (license license:gpl3+)))
14261 14262
14262(define-public emacs-helm-company 14263(define-public emacs-helm-company
14263 (let ((commit "d3fc093a0e833b4dee6561c00d6df3d62aa50f3f")) 14264 (package
14264 (package 14265 (name "emacs-helm-company")
14265 (name "emacs-helm-company") 14266 (version "0.2.5")
14266 (version (git-version "0.2.3" "1" commit)) 14267 (source
14267 (source 14268 (origin
14268 (origin 14269 (method git-fetch)
14269 (method git-fetch) 14270 (uri (git-reference
14270 (uri (git-reference 14271 (url "https://github.com/Sodel-the-Vociferous/helm-company")
14271 (url "https://github.com/Sodel-the-Vociferous/helm-company") 14272 (commit (string-append "v" version))))
14272 (commit commit))) 14273 (file-name (git-file-name name version))
14273 (file-name (git-file-name name version)) 14274 (sha256
14274 (sha256 14275 (base32
14275 (base32 14276 "1ci37w6ahnqrfpb284gjvxmimlf61sdxb9k192yy9q983cksv2hx"))))
14276 "1ciirsanhajdqm5iwl8k9ywf4jha1wdv4sc4d9kslyrfr9zn4q6k")))) 14277 (build-system emacs-build-system)
14277 (build-system emacs-build-system) 14278 (propagated-inputs
14278 (propagated-inputs 14279 `(("emacs-helm" ,emacs-helm)
14279 `(("emacs-helm" ,emacs-helm) 14280 ("emacs-company" ,emacs-company)))
14280 ("emacs-company" ,emacs-company))) 14281 (home-page "https://github.com/Sodel-the-Vociferous/helm-company")
14281 (home-page "https://github.com/Sodel-the-Vociferous/helm-company") 14282 (synopsis "Helm interface for company-mode")
14282 (synopsis "Helm interface for company-mode") 14283 (description
14283 (description 14284 "This is a Helm interface to company-mode, a text completion
14284 "This is a Helm interface to company-mode, a text completion
14285framework.") 14285framework.")
14286 (license license:gpl3+)))) 14286 (license license:gpl3+)))
14287 14287
14288(define-public emacs-helm-descbinds 14288(define-public emacs-helm-descbinds
14289 (let ((commit "033be73f21778633813264ce1634a6e1ad873d8e")) 14289 (let ((commit "033be73f21778633813264ce1634a6e1ad873d8e"))
@@ -17804,17 +17804,17 @@ connections using TLS encryption.")
17804(define-public emacs-zerodark-theme 17804(define-public emacs-zerodark-theme
17805 (package 17805 (package
17806 (name "emacs-zerodark-theme") 17806 (name "emacs-zerodark-theme")
17807 (version "4.5") 17807 (version "4.6")
17808 (source 17808 (source
17809 (origin 17809 (origin
17810 (method git-fetch) 17810 (method git-fetch)
17811 (uri (git-reference 17811 (uri (git-reference
17812 (url "https://gitlab.petton.fr/nico/zerodark-theme.git") 17812 (url "https://github.com/NicolasPetton/zerodark-theme")
17813 (commit version))) 17813 (commit version)))
17814 (file-name (git-file-name name version)) 17814 (file-name (git-file-name name version))
17815 (sha256 17815 (sha256
17816 (base32 17816 (base32
17817 "0nnlxzsmhsbszqigcyxak9i1a0digrd13gv6v18ck4h760mihh1m")))) 17817 "0pfyd1iqs7l2ngwgvj9n0r9k1px7yl16h8n502xdyf0pprxcs4p6"))))
17818 (build-system emacs-build-system) 17818 (build-system emacs-build-system)
17819 (propagated-inputs 17819 (propagated-inputs
17820 `(("emacs-flycheck" ,emacs-flycheck) 17820 `(("emacs-flycheck" ,emacs-flycheck)
@@ -18171,3 +18171,91 @@ JIRA issue servers.")
18171 "This packages fontifies the ssh config keywords and creates 18171 "This packages fontifies the ssh config keywords and creates
18172keybindings for skipping from host section to host section.") 18172keybindings for skipping from host section to host section.")
18173 (license license:gpl3+)))) 18173 (license license:gpl3+))))
18174
18175(define-public emacs-tao-theme
18176 (let ((commit "c5107fbe7e752f4e58c2d2147ff18a1ebb12937c")
18177 (revision "0"))
18178 (package
18179 (name "emacs-tao-theme")
18180 (version (git-version "0" revision commit))
18181 (source
18182 (origin
18183 (method git-fetch)
18184 (uri (git-reference
18185 (url "https://github.com/11111000000/tao-theme-emacs.git")
18186 (commit commit)))
18187 (file-name (git-file-name name version))
18188 (sha256
18189 (base32
18190 "07vvlglmkj87hpxz79s3bl2cjn71vain57fdxs7j9vlr5jkchxwn"))))
18191 (build-system emacs-build-system)
18192 (home-page "https://github.com/11111000000/tao-theme-emacs")
18193 (synopsis "Parameterized uncolored color themes for Emacs")
18194 (description
18195 "This package provides two parameterized uncolored color themes for
18196Emacs: @code{tao-yin} and @code{tao-yang}. The default
18197@code{tao-theme-scale-fn} is @code{tao-theme-golden-scale}.
18198
18199You can customize: @code{tao-theme-scale-fn}, that returns 16 2-digit numbers;
18200@code{tao-theme-scale-filter-fn}, for edge filter; and
18201@code{tao-theme-use-height}.")
18202 (license license:gpl3+))))
18203
18204(define-public emacs-doom-themes
18205 (package
18206 (name "emacs-doom-themes")
18207 (version "2.1.6")
18208 (source (origin
18209 (method git-fetch)
18210 (uri (git-reference
18211 (url "https://github.com/hlissner/emacs-doom-themes.git")
18212 (commit (string-append "v" version))))
18213 (file-name (git-file-name name version))
18214 (sha256
18215 (base32 "042pzcdhxi2z07jcscgjbaki9nrrm0cbgbbrnymd1r4q8ckkn8l9"))))
18216 (build-system emacs-build-system)
18217 (native-inputs
18218 `(("emacs-ert-runner" ,emacs-ert-runner)))
18219 (arguments
18220 `(#:tests? #t
18221 #:test-command '("ert-runner")
18222 #:phases
18223 (modify-phases %standard-phases
18224 (add-after 'unpack 'move-themes
18225 (lambda _
18226 ;; Move the source files to the top level, which is in the
18227 ;; EMACSLOADPATH.
18228 (for-each (lambda (f)
18229 (rename-file f (basename f)))
18230 (find-files "./themes" ".*\\.el$"))
18231 #t)))))
18232 (synopsis "Wide collection of color themes for Emacs")
18233 (description "Emacs-doom-themes contains numerous popular color themes for
18234Emacs that integrate with major modes like Org-mode.")
18235 (home-page "https://github.com/hlissner/emacs-doom-themes")
18236 (license license:expat)))
18237
18238(define-public emacs-elixir-mode
18239 (package
18240 (name "emacs-elixir-mode")
18241 (version "2.3.1")
18242 (source
18243 (origin
18244 (method url-fetch)
18245 (uri (string-append
18246 "https://stable.melpa.org/packages/elixir-mode-"
18247 version
18248 ".tar"))
18249 (sha256
18250 (base32
18251 "091cizxg1aw8bkj58y048mj020ssapjflav633z9bl6gmi10dy4v"))))
18252 (build-system emacs-build-system)
18253 (propagated-inputs
18254 `(("emacs-pkg-info" ,emacs-pkg-info)))
18255 (home-page
18256 "https://github.com/elixir-editors/emacs-elixir")
18257 (synopsis "Major mode for editing Elixir files")
18258 (description
18259 "Elixir-Mode Provides font-locking, indentation and navigation support
18260 for the Elixir programming language.")
18261 (license license:gpl3+)))
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 75a2e245f6e..449c6946120 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -399,7 +399,7 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.")
399(define-public mgba 399(define-public mgba
400 (package 400 (package
401 (name "mgba") 401 (name "mgba")
402 (version "0.7.2") 402 (version "0.7.3")
403 (source (origin 403 (source (origin
404 (method git-fetch) 404 (method git-fetch)
405 (uri (git-reference 405 (uri (git-reference
@@ -408,7 +408,7 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.")
408 (file-name (git-file-name name version)) 408 (file-name (git-file-name name version))
409 (sha256 409 (sha256
410 (base32 410 (base32
411 "0g0xa1mzvan0sl1p5c784j2g5mcw9kd2b7wiahy06gy0c1nmbcnp")) 411 "1wrmwh50rv8bd328r8cisrihq6h90kx2bfb0vmjfbsd3l1jvgrgm"))
412 (modules '((guix build utils))) 412 (modules '((guix build utils)))
413 (snippet 413 (snippet
414 ;; Make sure we don't use the bundled software. 414 ;; Make sure we don't use the bundled software.
@@ -1048,7 +1048,7 @@ emulation community. It provides highly accurate emulation.")
1048(define-public retroarch 1048(define-public retroarch
1049 (package 1049 (package
1050 (name "retroarch") 1050 (name "retroarch")
1051 (version "1.7.8") 1051 (version "1.7.8.4")
1052 (source 1052 (source
1053 (origin 1053 (origin
1054 (method git-fetch) 1054 (method git-fetch)
@@ -1057,7 +1057,7 @@ emulation community. It provides highly accurate emulation.")
1057 (commit (string-append "v" version)))) 1057 (commit (string-append "v" version))))
1058 (file-name (git-file-name name version)) 1058 (file-name (git-file-name name version))
1059 (sha256 1059 (sha256
1060 (base32 "0jwy5winrm87s6xa645fwa47x242r25m6i3rwf10x59448bd19r6")))) 1060 (base32 "1i3i23xwvmck8k2fpalr49np7xjzfg507243mybqrljawlnbxvph"))))
1061 (build-system gnu-build-system) 1061 (build-system gnu-build-system)
1062 (arguments 1062 (arguments
1063 `(#:tests? #f ; no tests 1063 `(#:tests? #f ; no tests
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 7f5409c8356..c1c1b18ed36 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -65,6 +65,7 @@
65 #:use-module (gnu packages glib) 65 #:use-module (gnu packages glib)
66 #:use-module (gnu packages gnome) 66 #:use-module (gnu packages gnome)
67 #:use-module (gnu packages gperf) 67 #:use-module (gnu packages gperf)
68 #:use-module (gnu packages graphics)
68 #:use-module (gnu packages groff) 69 #:use-module (gnu packages groff)
69 #:use-module (gnu packages gtk) 70 #:use-module (gnu packages gtk)
70 #:use-module (gnu packages guile) 71 #:use-module (gnu packages guile)
@@ -89,6 +90,7 @@
89 #:use-module (gnu packages tex) 90 #:use-module (gnu packages tex)
90 #:use-module (gnu packages version-control) 91 #:use-module (gnu packages version-control)
91 #:use-module (gnu packages wxwidgets) 92 #:use-module (gnu packages wxwidgets)
93 #:use-module (gnu packages xml)
92 #:use-module (gnu packages xorg)) 94 #:use-module (gnu packages xorg))
93 95
94(define-public librecad 96(define-public librecad
@@ -2145,3 +2147,70 @@ well as conversion and validation tools for input and output data. The
2145specification can be downloaded at @url{http://3mf.io/specification/}.") 2147specification can be downloaded at @url{http://3mf.io/specification/}.")
2146 (home-page "https://3mf.io/") 2148 (home-page "https://3mf.io/")
2147 (license license:bsd-2))) 2149 (license license:bsd-2)))
2150
2151(define-public openscad
2152 (package
2153 (name "openscad")
2154 (version "2019.05")
2155 (source
2156 (origin
2157 (method url-fetch)
2158 (uri (string-append "https://files.openscad.org/openscad-" version
2159 ".src.tar.gz"))
2160 (sha256
2161 (base32
2162 "0nbgk5q5pgnw53la0kccdcpz2f4xf6d6076rkn0q08z57hkc85ha"))))
2163 (build-system cmake-build-system)
2164 (inputs
2165 `(("boost" ,boost)
2166 ("cgal" ,cgal)
2167 ("double-conversion" ,double-conversion)
2168 ("eigen" ,eigen)
2169 ("fontconfig" ,fontconfig)
2170 ("glew" ,glew)
2171 ("gmp" ,gmp)
2172 ("harfbuzz" ,harfbuzz)
2173 ("lib3mf" ,lib3mf)
2174 ("libxml2" ,libxml2)
2175 ("libzip" ,libzip)
2176 ("mpfr" ,mpfr)
2177 ("opencsg" ,opencsg)
2178 ("qscintilla" ,qscintilla)
2179 ("qtbase" ,qtbase)
2180 ("qtmultimedia" ,qtmultimedia)))
2181 (native-inputs
2182 `(("bison" ,bison)
2183 ("flex" ,flex)
2184 ("gettext" ,gettext-minimal)
2185 ("pkg-config" ,pkg-config)
2186 ("which" ,which)
2187 ;; the following are only needed for tests
2188 ("imagemagick" ,imagemagick)
2189 ("ps" ,procps)
2190 ("python" ,python)
2191 ("xvfb" ,xorg-server)))
2192 (arguments
2193 `(#:phases
2194 (modify-phases %standard-phases
2195 (replace 'configure
2196 (lambda* (#:key outputs #:allow-other-keys)
2197 (invoke "qmake"
2198 (string-append "PREFIX=" (assoc-ref outputs "out")))
2199 #t))
2200 (replace 'check
2201 (lambda _
2202 (with-directory-excursion "tests"
2203 (invoke "cmake" ".")
2204 (invoke "make")
2205 (invoke "ctest"))
2206 ;; strip python test files since lib dir ends up in out/share
2207 (for-each delete-file
2208 (find-files "libraries/MCAD" ".*\\.py"))
2209 #t)))))
2210 (synopsis "Script-based 3D modeling application")
2211 (description
2212 "OpenSCAD is a 3D Computer-aided Design (CAD) application. Unlike an
2213interactive modeler, OpenSCAD generates 3D models from a script, giving you
2214full programmatic control over your models.")
2215 (home-page "https://www.openscad.org/")
2216 (license license:gpl2+)))
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index e8c4e6bc9d0..3f5f7b12855 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -476,16 +476,20 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
476 ("git" ,git) 476 ("git" ,git)
477 ("graphviz" ,graphviz) 477 ("graphviz" ,graphviz)
478 ("pkg-config" ,pkg-config) 478 ("pkg-config" ,pkg-config)
479 ("protobuf" ,protobuf)
480 ("python" ,python)
479 ("qttools" ,qttools))) 481 ("qttools" ,qttools)))
480 (inputs 482 (inputs
481 `(("boost" ,boost) 483 `(("boost" ,boost)
482 ("cppzmq" ,cppzmq) 484 ("cppzmq" ,cppzmq)
483 ("expat" ,expat) 485 ("expat" ,expat)
484 ("hidapi" ,hidapi) 486 ("hidapi" ,hidapi)
485 ("libunwind" ,libunwind)
486 ("libsodium" ,libsodium) 487 ("libsodium" ,libsodium)
488 ("libunwind" ,libunwind)
489 ("libusb" ,libusb)
487 ("miniupnpc" ,miniupnpc) 490 ("miniupnpc" ,miniupnpc)
488 ("openssl" ,openssl) 491 ("openssl" ,openssl)
492 ("protobuf" ,protobuf)
489 ("rapidjson" ,rapidjson) 493 ("rapidjson" ,rapidjson)
490 ("readline" ,readline) 494 ("readline" ,readline)
491 ("unbound" ,unbound) 495 ("unbound" ,unbound)
@@ -493,9 +497,12 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
493 ("zeromq" ,zeromq))) 497 ("zeromq" ,zeromq)))
494 (arguments 498 (arguments
495 `(#:out-of-source? #t 499 `(#:out-of-source? #t
496 #:configure-flags '("-DARCH=default" 500 #:configure-flags
497 "-DBUILD_TESTS=ON" 501 (list "-DARCH=default"
498 "-DBUILD_GUI_DEPS=ON") 502 "-DBUILD_TESTS=ON"
503 "-DBUILD_GUI_DEPS=ON"
504 (string-append "-DReadline_ROOT_DIR="
505 (assoc-ref %build-inputs "readline")))
499 #:phases 506 #:phases
500 (modify-phases %standard-phases 507 (modify-phases %standard-phases
501 ;; tests/core_tests need a valid HOME 508 ;; tests/core_tests need a valid HOME
@@ -534,7 +541,13 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
534 ":"))) 541 ":")))
535 (invoke "tests/unit_tests/unit_tests" 542 (invoke "tests/unit_tests/unit_tests"
536 (string-append "--gtest_filter=-" 543 (string-append "--gtest_filter=-"
537 excluded-unit-tests)))))))) 544 excluded-unit-tests)))))
545 (add-after 'install 'delete-dead-links
546 (lambda* (#:key outputs #:allow-other-keys)
547 (let ((out (assoc-ref outputs "out")))
548 (delete-file (string-append out "/lib/libprotobuf.so"))
549 (delete-file (string-append out "/lib/libusb-1.0.so"))
550 #t))))))
538 (home-page "https://getmonero.org/") 551 (home-page "https://getmonero.org/")
539 (synopsis "Command-line interface to the Monero currency") 552 (synopsis "Command-line interface to the Monero currency")
540 (description 553 (description
@@ -545,7 +558,7 @@ the Monero command line client and daemon.")
545(define-public monero-gui 558(define-public monero-gui
546 (package 559 (package
547 (name "monero-gui") 560 (name "monero-gui")
548 (version "0.14.1.0") 561 (version "0.14.1.2")
549 (source 562 (source
550 (origin 563 (origin
551 (method git-fetch) 564 (method git-fetch)
@@ -555,7 +568,7 @@ the Monero command line client and daemon.")
555 (file-name (git-file-name name version)) 568 (file-name (git-file-name name version))
556 (sha256 569 (sha256
557 (base32 570 (base32
558 "0ilx47771faygf97wilm64xnqxgxa3b43q0g9v014npk0qj8pc31")))) 571 "1rm043r6y2mzy8pclnzbjjfxgps8pkfa2b92p66k8y8rdmgq6m1k"))))
559 (build-system gnu-build-system) 572 (build-system gnu-build-system)
560 (native-inputs 573 (native-inputs
561 `(("pkg-config" ,pkg-config) 574 `(("pkg-config" ,pkg-config)
@@ -563,9 +576,11 @@ the Monero command line client and daemon.")
563 (inputs 576 (inputs
564 `(("boost" ,boost) 577 `(("boost" ,boost)
565 ("hidapi" ,hidapi) 578 ("hidapi" ,hidapi)
566 ("libunwind" ,libunwind)
567 ("libsodium" ,libsodium) 579 ("libsodium" ,libsodium)
580 ("libunwind" ,libunwind)
581 ("libusb" ,libusb)
568 ("openssl" ,openssl) 582 ("openssl" ,openssl)
583 ("protobuf" ,protobuf)
569 ("qtbase" ,qtbase) 584 ("qtbase" ,qtbase)
570 ("qtdeclarative" ,qtdeclarative) 585 ("qtdeclarative" ,qtdeclarative)
571 ("qtgraphicaleffects" ,qtgraphicaleffects) 586 ("qtgraphicaleffects" ,qtgraphicaleffects)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index b1368cb72ed..8a302ba5bc8 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -925,15 +925,15 @@ interfaces, based on the useradd, usermod and userdel commands.")
925(define-public libmbim 925(define-public libmbim
926 (package 926 (package
927 (name "libmbim") 927 (name "libmbim")
928 (version "1.18.2") 928 (version "1.20.0")
929 (source (origin 929 (source (origin
930 (method url-fetch) 930 (method url-fetch)
931 (uri (string-append 931 (uri (string-append
932 "https://www.freedesktop.org/software/" name "/" 932 "https://www.freedesktop.org/software/libmbim/"
933 name "-" version ".tar.xz")) 933 "libmbim-" version ".tar.xz"))
934 (sha256 934 (sha256
935 (base32 935 (base32
936 "0s4jsfsydp2vykv7lnimalp9i680aas1qcx7zdpjiic64b5g48vp")))) 936 "0rm8j4zh9gnb3yi324cnxy91gdimc1vg5gv1kxc2m5lymb3wdxrc"))))
937 (build-system gnu-build-system) 937 (build-system gnu-build-system)
938 (native-inputs 938 (native-inputs
939 `(("glib:bin" ,glib "bin") ; for glib-mkenums 939 `(("glib:bin" ,glib "bin") ; for glib-mkenums
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 7eac935a696..bb4c1d26bb4 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -314,6 +314,16 @@ provide connectivity for client applications written in any language.")
314 (base32 314 (base32
315 "1pmvvm3sgnpngfa7884mqhq3fwdjh9sr0ca07ypnidcg0y341w53")))) 315 "1pmvvm3sgnpngfa7884mqhq3fwdjh9sr0ca07ypnidcg0y341w53"))))
316 (build-system python-build-system) 316 (build-system python-build-system)
317 (arguments
318 `(#:phases
319 (modify-phases %standard-phases
320 (add-before 'build 'fix-pillow
321 (lambda _
322 ;; pillow's version is not in PIL.Image.VERSION anymore
323 (substitute* "nml/version_info.py"
324 (("from PIL import Image") "import PIL")
325 (("Image.VERSION") "PIL.__version__"))
326 #t)))))
317 (propagated-inputs 327 (propagated-inputs
318 `(("python-pillow" ,python-pillow) 328 `(("python-pillow" ,python-pillow)
319 ("python-ply" ,python-ply))) 329 ("python-ply" ,python-ply)))
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 26170f1cad0..d41d3e1f663 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2213,7 +2213,24 @@ also available.")
2213 (modify-phases %standard-phases 2213 (modify-phases %standard-phases
2214 (add-before 2214 (add-before
2215 'configure 'link-libm 2215 'configure 'link-libm
2216 (lambda _ (setenv "LIBS" "-lm")))))) 2216 (lambda _ (setenv "LIBS" "-lm")))
2217 (add-after 'install 'create-desktop-entry
2218 (lambda* (#:key outputs #:allow-other-keys)
2219 (let* ((out (assoc-ref outputs "out"))
2220 (apps (string-append out "/share/applications")))
2221 (mkdir-p apps)
2222 (with-output-to-file
2223 (string-append apps "/gnujump.desktop")
2224 (lambda _
2225 (format #t
2226 "[Desktop Entry]~@
2227 Name=GNUjump~@
2228 Comment=Jump up the tower to survive~@
2229 Exec=~a/bin/gnujump~@
2230 Terminal=false~@
2231 Type=Application~@
2232 Categories=Game;ArcadeGame~%"
2233 out)))))))))
2217 (inputs 2234 (inputs
2218 `(("glu" ,glu) 2235 `(("glu" ,glu)
2219 ("mesa" ,mesa) 2236 ("mesa" ,mesa)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index a2a5f98b76c..520d04d75f8 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -39,6 +39,8 @@
39;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> 39;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
40;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> 40;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
41;;; Copyright © 2019 Jonathan Frederickson <jonathan@terracrypt.net> 41;;; Copyright © 2019 Jonathan Frederickson <jonathan@terracrypt.net>
42;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
43;;; Copyright © 2019 Martin Becze <mjbecze@riseup.net>
42;;; 44;;;
43;;; This file is part of GNU Guix. 45;;; This file is part of GNU Guix.
44;;; 46;;;
@@ -65,6 +67,7 @@
65 #:use-module (gnu packages base) 67 #:use-module (gnu packages base)
66 #:use-module (gnu packages bash) 68 #:use-module (gnu packages bash)
67 #:use-module (gnu packages bison) 69 #:use-module (gnu packages bison)
70 #:use-module (gnu packages boost)
68 #:use-module (gnu packages build-tools) 71 #:use-module (gnu packages build-tools)
69 #:use-module (gnu packages calendar) 72 #:use-module (gnu packages calendar)
70 #:use-module (gnu packages cdrom) 73 #:use-module (gnu packages cdrom)
@@ -2626,7 +2629,7 @@ library.")
2626 (method url-fetch) 2629 (method url-fetch)
2627 (uri (string-append "mirror://gnome/sources/glib-networking/" 2630 (uri (string-append "mirror://gnome/sources/glib-networking/"
2628 (version-major+minor version) "/" 2631 (version-major+minor version) "/"
2629 name "-" version ".tar.xz")) 2632 "glib-networking-" version ".tar.xz"))
2630 (sha256 2633 (sha256
2631 (base32 2634 (base32
2632 "1mfw44qpmwvz6yzj8c6spx6z357wrmkk15byrkc5byagd82860fm")))) 2635 "1mfw44qpmwvz6yzj8c6spx6z357wrmkk15byrkc5byagd82860fm"))))
@@ -2689,7 +2692,7 @@ libxml to ease remote use of the RESTful API.")
2689 (method url-fetch) 2692 (method url-fetch)
2690 (uri (string-append "mirror://gnome/sources/libsoup/" 2693 (uri (string-append "mirror://gnome/sources/libsoup/"
2691 (version-major+minor version) "/" 2694 (version-major+minor version) "/"
2692 name "-" version ".tar.xz")) 2695 "libsoup-" version ".tar.xz"))
2693 (sha256 2696 (sha256
2694 (base32 2697 (base32
2695 "0amfw1yvy1kjrg41rfh2vvrw5gkwnyckqbw1fab50hm6xc1acbmx")))) 2698 "0amfw1yvy1kjrg41rfh2vvrw5gkwnyckqbw1fab50hm6xc1acbmx"))))
@@ -2795,16 +2798,16 @@ and the GLib main loop, to integrate well with GNOME applications.")
2795(define-public libsecret 2798(define-public libsecret
2796 (package 2799 (package
2797 (name "libsecret") 2800 (name "libsecret")
2798 (version "0.18.8") 2801 (version "0.19.1")
2799 (source (origin 2802 (source (origin
2800 (method url-fetch) 2803 (method url-fetch)
2801 (uri (string-append 2804 (uri (string-append
2802 "mirror://gnome/sources/libsecret/" 2805 "mirror://gnome/sources/libsecret/"
2803 (version-major+minor version) "/" 2806 (version-major+minor version) "/"
2804 name "-" version ".tar.xz")) 2807 "libsecret-" version ".tar.xz"))
2805 (sha256 2808 (sha256
2806 (base32 2809 (base32
2807 "058x64689k55wxfkdp4svhnwvv8jmqm7z5mrynybl38f4sfqiyiv")))) 2810 "0fhflcsr70b1pps2pcvqcbdhip2ny5am9nbm634f4sj5g40y30w5"))))
2808 (build-system gnu-build-system) 2811 (build-system gnu-build-system)
2809 (outputs '("out" "doc")) 2812 (outputs '("out" "doc"))
2810 (arguments 2813 (arguments
@@ -3353,7 +3356,7 @@ playlists in a variety of formats.")
3353(define-public aisleriot 3356(define-public aisleriot
3354 (package 3357 (package
3355 (name "aisleriot") 3358 (name "aisleriot")
3356 (version "3.22.8") 3359 (version "3.22.9")
3357 (source (origin 3360 (source (origin
3358 (method url-fetch) 3361 (method url-fetch)
3359 (uri (string-append "mirror://gnome/sources/aisleriot/" 3362 (uri (string-append "mirror://gnome/sources/aisleriot/"
@@ -3361,7 +3364,7 @@ playlists in a variety of formats.")
3361 "aisleriot-" version ".tar.xz")) 3364 "aisleriot-" version ".tar.xz"))
3362 (sha256 3365 (sha256
3363 (base32 3366 (base32
3364 "15pm39679ymxki07sb5nvhycz4z53zwbvascyp5wm4864bn98815")))) 3367 "0yzdh9cw5cjjgvfh75bihl968czlgfmpmn1z0fdk88sgvpjgzwji"))))
3365 (build-system glib-or-gtk-build-system) 3368 (build-system glib-or-gtk-build-system)
3366 (arguments 3369 (arguments
3367 '(#:configure-flags 3370 '(#:configure-flags
@@ -4204,9 +4207,9 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.")
4204 (version "1.40.1") 4207 (version "1.40.1")
4205 (source (origin 4208 (source (origin
4206 (method url-fetch) 4209 (method url-fetch)
4207 (uri (string-append "mirror://gnome/sources/" name "/" 4210 (uri (string-append "mirror://gnome/sources/gvfs/"
4208 (version-major+minor version) "/" 4211 (version-major+minor version) "/"
4209 name "-" version ".tar.xz")) 4212 "gvfs-" version ".tar.xz"))
4210 (sha256 4213 (sha256
4211 (base32 4214 (base32
4212 "1cfnzamr4mvgpf6yhm28lh9cafy9z6842s8jpbqnfizfxybg8ylj")))) 4215 "1cfnzamr4mvgpf6yhm28lh9cafy9z6842s8jpbqnfizfxybg8ylj"))))
@@ -5902,15 +5905,15 @@ providing graphical log-ins and managing local and remote displays.")
5902(define-public libgtop 5905(define-public libgtop
5903 (package 5906 (package
5904 (name "libgtop") 5907 (name "libgtop")
5905 (version "2.38.0") 5908 (version "2.40.0")
5906 (source (origin 5909 (source (origin
5907 (method url-fetch) 5910 (method url-fetch)
5908 (uri (string-append "mirror://gnome/sources/" name "/" 5911 (uri (string-append "mirror://gnome/sources/libgtop/"
5909 (version-major+minor version) "/" 5912 (version-major+minor version) "/"
5910 name "-" version ".tar.xz")) 5913 "libgtop-" version ".tar.xz"))
5911 (sha256 5914 (sha256
5912 (base32 5915 (base32
5913 "04mnxgzyb26wqk6qij4iw8cxwl82r8pcsna5dg8vz2j3pdi0wv2g")))) 5916 "1m6jbqk8maa52gxrf223442fr5bvvxgb7ham6v039i3r1i62gwvq"))))
5914 (build-system gnu-build-system) 5917 (build-system gnu-build-system)
5915 (native-inputs 5918 (native-inputs
5916 `(("gobject-introspection" ,gobject-introspection) 5919 `(("gobject-introspection" ,gobject-introspection)
@@ -6295,9 +6298,9 @@ easy, safe, and automatic.")
6295 (version "2.0.4") 6298 (version "2.0.4")
6296 (source (origin 6299 (source (origin
6297 (method url-fetch) 6300 (method url-fetch)
6298 (uri (string-append "mirror://gnome/sources/" name "/" 6301 (uri (string-append "mirror://gnome/sources/tracker/"
6299 (version-major+minor version) "/" 6302 (version-major+minor version) "/"
6300 name "-" version ".tar.xz")) 6303 "tracker-" version ".tar.xz"))
6301 (sha256 6304 (sha256
6302 (base32 6305 (base32
6303 "1mfc5lv820kr7ssi7hldn25gmshh65k19kh478qjsnb64sshsbyf")))) 6306 "1mfc5lv820kr7ssi7hldn25gmshh65k19kh478qjsnb64sshsbyf"))))
@@ -7224,9 +7227,9 @@ compiled.")
7224 (source (origin 7227 (source (origin
7225 (method url-fetch) 7228 (method url-fetch)
7226 (uri (string-append 7229 (uri (string-append
7227 "mirror://gnome/sources/" name "/" 7230 "mirror://gnome/sources/gfbgraph/"
7228 (version-major+minor version) "/" 7231 (version-major+minor version) "/"
7229 name "-" version ".tar.xz")) 7232 "gfbgraph-" version ".tar.xz"))
7230 (sha256 7233 (sha256
7231 (base32 7234 (base32
7232 "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs")))) 7235 "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs"))))
@@ -7994,7 +7997,7 @@ configurable file renaming. ")
7994(define-public workrave 7997(define-public workrave
7995 (package 7998 (package
7996 (name "workrave") 7999 (name "workrave")
7997 (version "1.10.23") 8000 (version "1.10.34")
7998 (source 8001 (source
7999 (origin 8002 (origin
8000 (method git-fetch) 8003 (method git-fetch)
@@ -8005,20 +8008,20 @@ configurable file renaming. ")
8005 version))))) 8008 version)))))
8006 (file-name (git-file-name name version)) 8009 (file-name (git-file-name name version))
8007 (sha256 8010 (sha256
8008 (base32 "1qhlwfhwk5agv4904d6bsf83k9k89q7bms6agg967vsca4905vcw")))) 8011 (base32 "0czwhr7nw523753ajcjjfwrf91mq8pmzr19gp0srqsvb1dsn1zcf"))))
8009 (build-system glib-or-gtk-build-system) 8012 (build-system glib-or-gtk-build-system)
8010 (propagated-inputs `(("glib" ,glib) 8013 (inputs `(("glib" ,glib)
8011 ("gtk+" ,gtk+) 8014 ("gtk+" ,gtk+)
8012 ("gdk-pixbuf" ,gdk-pixbuf) 8015 ("gdk-pixbuf" ,gdk-pixbuf)
8013 ("gtkmm" ,gtkmm) 8016 ("gtkmm" ,gtkmm)
8014 ("glibmm" ,glibmm) 8017 ("glibmm" ,glibmm)
8015 ("libx11" ,libx11) 8018 ("libx11" ,libx11)
8016 ("libxtst" ,libxtst) 8019 ("libxtst" ,libxtst)
8017 ("dconf" ,dconf) 8020 ("dconf" ,dconf)
8018 ("libice" ,libice))) 8021 ("libice" ,libice)
8019 (inputs `(("libsm" ,libsm) 8022 ("libsm" ,libsm)
8020 ("python-cheetah" ,python2-cheetah))) 8023 ("libxscrnsaver" ,libxscrnsaver)))
8021 (native-inputs `(("glib" ,glib "bin") 8024 (native-inputs `(("boost" ,boost)
8022 ("pkg-config" ,pkg-config) 8025 ("pkg-config" ,pkg-config)
8023 ("gettext" ,gnu-gettext) 8026 ("gettext" ,gnu-gettext)
8024 ("autoconf" ,autoconf) 8027 ("autoconf" ,autoconf)
@@ -8026,9 +8029,9 @@ configurable file renaming. ")
8026 ("automake" ,automake) 8029 ("automake" ,automake)
8027 ("libtool" ,libtool) 8030 ("libtool" ,libtool)
8028 ("intltool" ,intltool) 8031 ("intltool" ,intltool)
8029 ("libxscrnsaver" ,libxscrnsaver)
8030 ("gobject-introspection" ,gobject-introspection) 8032 ("gobject-introspection" ,gobject-introspection)
8031 ("python2" ,python-2))) 8033 ("python3" ,python-3)
8034 ("python-jinja2" ,python-jinja2)))
8032 (synopsis "Tool to help prevent repetitive strain injury (RSI)") 8035 (synopsis "Tool to help prevent repetitive strain injury (RSI)")
8033 (description 8036 (description
8034 "Workrave is a program that assists in the recovery and prevention of 8037 "Workrave is a program that assists in the recovery and prevention of
@@ -8147,7 +8150,7 @@ generic enough to work for everyone.")
8147 (add-after 'install 'glib-or-gtk-wrap 8150 (add-after 'install 'glib-or-gtk-wrap
8148 (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))))) 8151 (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
8149 (native-inputs 8152 (native-inputs
8150 `(("glib" ,glib "bin") ; glib-mkenums 8153 `(("glib" ,glib "bin") ; glib-mkenums
8151 ("pkg-config" ,pkg-config) 8154 ("pkg-config" ,pkg-config)
8152 ("intltool" ,intltool) 8155 ("intltool" ,intltool)
8153 ("itstool" ,itstool))) 8156 ("itstool" ,itstool)))
@@ -8155,6 +8158,7 @@ generic enough to work for everyone.")
8155 `(("enchant" ,enchant) 8158 `(("enchant" ,enchant)
8156 ("evolution-data-server" ,evolution-data-server) ; must be the same version 8159 ("evolution-data-server" ,evolution-data-server) ; must be the same version
8157 ("gcr" ,gcr) 8160 ("gcr" ,gcr)
8161 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
8158 ("gnome-autoar" ,gnome-autoar) 8162 ("gnome-autoar" ,gnome-autoar)
8159 ("gnome-desktop" ,gnome-desktop) 8163 ("gnome-desktop" ,gnome-desktop)
8160 ("gtkspell3" ,gtkspell3) 8164 ("gtkspell3" ,gtkspell3)
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 95a35368fa6..56db4121454 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -442,7 +442,7 @@ gpgpme starting with version 1.7.")
442(define-public guile-gcrypt 442(define-public guile-gcrypt
443 (package 443 (package
444 (name "guile-gcrypt") 444 (name "guile-gcrypt")
445 (version "0.1.0") 445 (version "0.2.0")
446 (home-page "https://notabug.org/cwebber/guile-gcrypt") 446 (home-page "https://notabug.org/cwebber/guile-gcrypt")
447 (source (origin 447 (source (origin
448 (method git-fetch) 448 (method git-fetch)
@@ -451,7 +451,7 @@ gpgpme starting with version 1.7.")
451 (commit (string-append "v" version)))) 451 (commit (string-append "v" version))))
452 (sha256 452 (sha256
453 (base32 453 (base32
454 "1lhgh3105yi0ggrjsjibv4wp1ipz8s17pa820hk2wln3rc04wpvf")) 454 "1mhc5m4xygkfj7x18f8apiqpfdn9mrql0am5sk13cf5xn8x1r63z"))
455 (file-name (string-append name "-" version "-checkout")))) 455 (file-name (string-append name "-" version "-checkout"))))
456 (build-system gnu-build-system) 456 (build-system gnu-build-system)
457 (native-inputs 457 (native-inputs
@@ -915,6 +915,34 @@ bytes (whether by hand, OCR, QR code, or the like) and paperkey can use
915them to transform your existing public key into a secret key.") 915them to transform your existing public key into a secret key.")
916 (license license:gpl2+))) 916 (license license:gpl2+)))
917 917
918(define-public pgpdump
919 (package
920 (name "pgpdump")
921 (version "0.33")
922 (source
923 (origin
924 (method url-fetch)
925 (uri (string-append "https://www.mew.org/~kazu/proj/pgpdump/pgpdump-"
926 version ".tar.gz"))
927 (sha256
928 (base32 "1j001jra2m89n6cys3n0hs574bipjdzfxhzpnd4jfyv95mqwl7n4"))))
929 (build-system gnu-build-system)
930 (arguments
931 `(#:tests? #f ; no make check
932 #:configure-flags (list "--prefix=/")
933 #:make-flags (list "CC=gcc"
934 (string-append "DESTDIR=" (assoc-ref %outputs "out")))))
935 (inputs
936 `(("zlib" ,zlib)))
937 (home-page "https://www.mew.org/~kazu/proj/pgpdump/en/")
938 (synopsis "PGP packet visualizer")
939 (description "pgpdump displays the sequence of OpenPGP or PGP version 2
940packets from a file.
941
942The output of this command is similar to GnuPG's list packets command,
943however, pgpdump produces more detailed and easier to understand output.")
944 (license license:bsd-3)))
945
918(define-public gpa 946(define-public gpa
919 (package 947 (package
920 (name "gpa") 948 (name "gpa")
diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm
index 8b06aaa0e96..bde8b44a305 100644
--- a/gnu/packages/graph.scm
+++ b/gnu/packages/graph.scm
@@ -139,14 +139,14 @@ more.")
139(define-public r-diffusionmap 139(define-public r-diffusionmap
140 (package 140 (package
141 (name "r-diffusionmap") 141 (name "r-diffusionmap")
142 (version "1.1-0.1") 142 (version "1.2.0")
143 (source 143 (source
144 (origin 144 (origin
145 (method url-fetch) 145 (method url-fetch)
146 (uri (cran-uri "diffusionMap" version)) 146 (uri (cran-uri "diffusionMap" version))
147 (sha256 147 (sha256
148 (base32 148 (base32
149 "11l4kbciawvli5nlsi4qaf8afmgk5xgqiqpdyhvaqri5mx0zhk5j")))) 149 "1rvk7069brlm1s9kqj4c31mwwr3mw4hmhay95cjjjfmw5xclff2j"))))
150 (properties `((upstream-name . "diffusionMap"))) 150 (properties `((upstream-name . "diffusionMap")))
151 (build-system r-build-system) 151 (build-system r-build-system)
152 (propagated-inputs 152 (propagated-inputs
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 33abdd79a28..b3518efc5f2 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -13,6 +13,7 @@
13;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net> 13;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
14;;; Copyright © 2019 Mark H Weaver <mhw@netris.org> 14;;; Copyright © 2019 Mark H Weaver <mhw@netris.org>
15;;; Copyright © 2019 Carlo Zancanaro <carlo@zancanaro.id.au> 15;;; Copyright © 2019 Carlo Zancanaro <carlo@zancanaro.id.au>
16;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
16;;; 17;;;
17;;; This file is part of GNU Guix. 18;;; This file is part of GNU Guix.
18;;; 19;;;
@@ -1019,3 +1020,43 @@ requirements.")
1019performance subdivision surface (subdiv) evaluation on massively parallel CPU 1020performance subdivision surface (subdiv) evaluation on massively parallel CPU
1020and GPU architectures.") 1021and GPU architectures.")
1021 (license license:asl2.0))) 1022 (license license:asl2.0)))
1023
1024(define-public opencsg
1025 (let ((dot-to-dash (lambda (c) (if (char=? c #\.) #\- c))))
1026 (package
1027 (name "opencsg")
1028 (version "1.4.2")
1029 (source
1030 (origin
1031 (method git-fetch)
1032 (uri (git-reference
1033 (url "https://github.com/floriankirsch/OpenCSG.git")
1034 (commit (string-append "opencsg-"
1035 (string-map dot-to-dash version)
1036 "-release"))))
1037 (file-name (git-file-name name version))
1038 (sha256
1039 (base32
1040 "00m4vs6jn3scqczscc4591l1d6zg6anqp9v1ldf9ymf70rdyvm7m"))))
1041 (build-system gnu-build-system)
1042 (arguments
1043 `(#:phases
1044 (modify-phases %standard-phases
1045 (replace 'configure
1046 (lambda* (#:key outputs #:allow-other-keys)
1047 (substitute* "src/Makefile"
1048 (("/usr/local") (assoc-ref outputs "out")))
1049 #t))
1050 (add-before 'build 'skip-example
1051 (lambda _ (chdir "src") #t)))))
1052 (inputs
1053 `(("glew" ,glew)
1054 ("freeglut" ,freeglut)))
1055 (synopsis "Library for rendering Constructive Solid Geometry (CSG)")
1056 (description
1057 "OpenCSG is a library for rendering Constructive Solid Geometry (CSG) using
1058OpenGL. CSG is an approach for modeling complex 3D-shapes using simpler ones.
1059For example, two shapes can be combined by uniting them, by intersecting them,
1060or by subtracting one shape from the other.")
1061 (home-page "http://www.opencsg.org/")
1062 (license license:gpl2))))
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index b765ef36e11..2f974ee63ba 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -5,7 +5,7 @@
5;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co> 5;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co>
6;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> 6;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
7;;; Copyright © 2016 Erik Edrosa <erik.edrosa@gmail.com> 7;;; Copyright © 2016 Erik Edrosa <erik.edrosa@gmail.com>
8;;; Copyright © 2016 Eraim Flashner <efraim@flashner.co.il> 8;;; Copyright © 2016, 2019 Eraim Flashner <efraim@flashner.co.il>
9;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com> 9;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com>
10;;; Copyright © 2016, 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org> 10;;; Copyright © 2016, 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
11;;; Copyright © 2016 Amirouche <amirouche@hypermove.net> 11;;; Copyright © 2016 Amirouche <amirouche@hypermove.net>
@@ -48,7 +48,6 @@
48 #:use-module (gnu packages compression) 48 #:use-module (gnu packages compression)
49 #:use-module (gnu packages databases) 49 #:use-module (gnu packages databases)
50 #:use-module (gnu packages disk) 50 #:use-module (gnu packages disk)
51 #:use-module (gnu packages ed)
52 #:use-module (gnu packages emacs) 51 #:use-module (gnu packages emacs)
53 #:use-module (gnu packages emacs-xyz) 52 #:use-module (gnu packages emacs-xyz)
54 #:use-module (gnu packages gawk) 53 #:use-module (gnu packages gawk)
@@ -1926,30 +1925,17 @@ is no support for parsing block and inline level HTML.")
1926(define-public mcron 1925(define-public mcron
1927 (package 1926 (package
1928 (name "mcron") 1927 (name "mcron")
1929 (version "1.1.1") 1928 (version "1.1.2")
1930 (source (origin 1929 (source (origin
1931 (method url-fetch) 1930 (method url-fetch)
1932 (uri (string-append "mirror://gnu/mcron/mcron-" 1931 (uri (string-append "mirror://gnu/mcron/mcron-"
1933 version ".tar.gz")) 1932 version ".tar.gz"))
1934 (sha256 1933 (sha256
1935 (base32 1934 (base32
1936 "1i9mcp6r6my61zfiydsm3n6my41mwvl7dfala4q29qx0zn1ynlm4")))) 1935 "069m3ri7nc8lgy3h9ka7gj3v3anqj69x9jw4l3cfq65nqkxsch4g"))))
1937 (build-system gnu-build-system) 1936 (build-system gnu-build-system)
1938 (arguments 1937 (arguments
1939 '(#:phases (modify-phases %standard-phases 1938 '(#:phases (modify-phases %standard-phases
1940 (add-before 'check 'set-timezone
1941 (lambda* (#:key inputs #:allow-other-keys)
1942 ;; 'tests/job-specifier.scm' expects to be running in
1943 ;; UTC-2 or something.
1944 ;; FIXME: This issue is being investigated upstream, for
1945 ;; now we'll just skip the tests (see below):
1946 ;; <https://lists.gnu.org/archive/html/bug-mcron/2018-04/msg00005.html>.
1947 (let ((tzdata (assoc-ref inputs "tzdata")))
1948 (setenv "TZDIR"
1949 (string-append tzdata
1950 "/share/zoneinfo"))
1951 (setenv "TZ" "UTC-2")
1952 #t)))
1953 (add-before 'check 'adjust-tests 1939 (add-before 'check 'adjust-tests
1954 (lambda _ 1940 (lambda _
1955 (substitute* "tests/job-specifier.scm" 1941 (substitute* "tests/job-specifier.scm"
@@ -1966,9 +1952,13 @@ is no support for parsing block and inline level HTML.")
1966 (("\\(test-equal \"next-year\"" all) 1952 (("\\(test-equal \"next-year\"" all)
1967 (string-append "(test-skip 4)\n" all))) 1953 (string-append "(test-skip 4)\n" all)))
1968 #t))))) 1954 #t)))))
1969 (native-inputs `(("pkg-config" ,pkg-config) 1955 (native-inputs `(("autoconf" ,autoconf)
1956 ("automake" ,automake)
1957 ("help2man" ,help2man)
1958 ("pkg-config" ,pkg-config)
1959 ("texinfo" ,texinfo)
1970 ("tzdata" ,tzdata-for-tests))) 1960 ("tzdata" ,tzdata-for-tests)))
1971 (inputs `(("ed" ,ed) ("which" ,which) ("guile" ,guile-2.2))) 1961 (inputs `(("guile" ,guile-2.2)))
1972 (home-page "https://www.gnu.org/software/mcron/") 1962 (home-page "https://www.gnu.org/software/mcron/")
1973 (synopsis "Run jobs at scheduled times") 1963 (synopsis "Run jobs at scheduled times")
1974 (description 1964 (description
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 475a6c5ef09..478b8faebe4 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -405,8 +405,8 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its
405 (home-page "https://github.com/aconchillo/guile-json") 405 (home-page "https://github.com/aconchillo/guile-json")
406 (source (origin 406 (source (origin
407 (method url-fetch) 407 (method url-fetch)
408 (uri (string-append "https://download.savannah.nongnu.org/releases/" 408 (uri (string-append "mirror://savannah/guile-json/guile-json-"
409 name "/" name "-" version ".tar.gz")) 409 version ".tar.gz"))
410 (sha256 410 (sha256
411 (base32 411 (base32
412 "15gnb84d7hpazqhskkf3g9z4r6knw54wfj4ch5270kakz1lp70c9")))) 412 "15gnb84d7hpazqhskkf3g9z4r6knw54wfj4ch5270kakz1lp70c9"))))
@@ -444,14 +444,14 @@ specification. These are the main features:
444 (package 444 (package
445 (inherit guile-json) 445 (inherit guile-json)
446 (name "guile-json") 446 (name "guile-json")
447 (version "3.1.0") 447 (version "3.2.0")
448 (source (origin 448 (source (origin
449 (method url-fetch) 449 (method url-fetch)
450 (uri (string-append "https://download.savannah.nongnu.org/releases/" 450 (uri (string-append "mirror://savannah/guile-json/guile-json-"
451 name "/" name "-" version ".tar.gz")) 451 version ".tar.gz"))
452 (sha256 452 (sha256
453 (base32 453 (base32
454 "1yfqscz74i4vxylabd3s9l0wbdp8bg9qxnv1ixdm3b1l7zdx00z3")))))) 454 "14m6b6g2maw0mkvfm4x63rqb54vgbpn1gcqs715ijw4bikfzlqfz"))))))
455 455
456;; There are two guile-gdbm packages, one using the FFI and one with 456;; There are two guile-gdbm packages, one using the FFI and one with
457;; direct C bindings, hence the verbose name. 457;; direct C bindings, hence the verbose name.
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 5cd6549c27d..e09285d63ad 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -245,7 +245,7 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
245(define-public git-annex 245(define-public git-annex
246 (package 246 (package
247 (name "git-annex") 247 (name "git-annex")
248 (version "7.20190708") 248 (version "7.20190912")
249 (source 249 (source
250 (origin 250 (origin
251 (method url-fetch) 251 (method url-fetch)
@@ -253,7 +253,7 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
253 "git-annex/git-annex-" version ".tar.gz")) 253 "git-annex/git-annex-" version ".tar.gz"))
254 (sha256 254 (sha256
255 (base32 255 (base32
256 "18s563swrp8mx479995pdhhmn40y3xwlbm1z3w63qsnjqmj7zlij")))) 256 "1a3jvl5cx32v78s3015i10cx00jprm1391rpww4mzkk1vskzn9cv"))))
257 (build-system haskell-build-system) 257 (build-system haskell-build-system)
258 (arguments 258 (arguments
259 `(#:configure-flags 259 `(#:configure-flags
@@ -337,6 +337,7 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
337 ("ghc-http-conduit" ,ghc-http-conduit) 337 ("ghc-http-conduit" ,ghc-http-conduit)
338 ("ghc-http-types" ,ghc-http-types) 338 ("ghc-http-types" ,ghc-http-types)
339 ("ghc-ifelse" ,ghc-ifelse) 339 ("ghc-ifelse" ,ghc-ifelse)
340 ("ghc-magic" ,ghc-magic)
340 ("ghc-memory" ,ghc-memory) 341 ("ghc-memory" ,ghc-memory)
341 ("ghc-monad-control" ,ghc-monad-control) 342 ("ghc-monad-control" ,ghc-monad-control)
342 ("ghc-monad-logger" ,ghc-monad-logger) 343 ("ghc-monad-logger" ,ghc-monad-logger)
@@ -374,9 +375,16 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
374checking the file contents into Git. It can store files in many places, 375checking the file contents into Git. It can store files in many places,
375such as local hard drives and cloud storage services. It can also be 376such as local hard drives and cloud storage services. It can also be
376used to keep a folder in sync between computers.") 377used to keep a folder in sync between computers.")
377 ;; The web app is released under the AGPLv3+. 378 ;; The main author has released all his changes under AGPLv3+ as of March
378 (license (list license:gpl3+ 379 ;; 2019 (7.20190219-187-g40ecf58d4). These are also licensed under the
379 license:agpl3+)))) 380 ;; original GPLv3+ license, but going forward new changes will be under
381 ;; only AGPLv3+. The other licenses below cover code written by others.
382 ;; See git-annex's COPYRIGHT file for details on each file.
383 (license (list license:agpl3+
384 license:gpl3+
385 license:bsd-2
386 license:expat
387 license:gpl2))))
380 388
381(define-public hlint 389(define-public hlint
382 (package 390 (package
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 940fbe8a6c5..4313b6059e1 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -5,7 +5,7 @@
5;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org> 5;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org>
6;;; Copyright © 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org> 6;;; Copyright © 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
7;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> 7;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
8;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> 8;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
9;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> 9;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
10;;; Copyright © 2016, 2017 David Craven <david@craven.ch> 10;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
11;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org> 11;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org>
@@ -20,6 +20,7 @@
20;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net> 20;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
21;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com> 21;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com>
22;;; Copyright © 2019 John Soo <jsoo1@asu.edu> 22;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
23;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
23;;; 24;;;
24;;; This file is part of GNU Guix. 25;;; This file is part of GNU Guix.
25;;; 26;;;
@@ -463,7 +464,7 @@ complicated text/binary file formats.")
463 (inputs 464 (inputs
464 `(("ghc-scientific" ,ghc-scientific-bootstrap))) 465 `(("ghc-scientific" ,ghc-scientific-bootstrap)))
465 (native-inputs '()) 466 (native-inputs '())
466 (properties '(hidden? #t)))) 467 (properties '((hidden? #t)))))
467 468
468(define-public ghc-attoparsec-iso8601 469(define-public ghc-attoparsec-iso8601
469 (package 470 (package
@@ -5201,7 +5202,7 @@ in migrated modules.")
5201 (name "ghc-integer-logarithms-bootstrap") 5202 (name "ghc-integer-logarithms-bootstrap")
5202 (arguments `(#:tests? #f)) 5203 (arguments `(#:tests? #f))
5203 (native-inputs '()) 5204 (native-inputs '())
5204 (properties '(hidden? #t)))) 5205 (properties '((hidden? #t)))))
5205 5206
5206(define-public ghc-interpolate 5207(define-public ghc-interpolate
5207 (package 5208 (package
@@ -5954,6 +5955,28 @@ monadic incremental interface is provided as well.")
5954compression algorithm used in the @code{.xz} file format.") 5955compression algorithm used in the @code{.xz} file format.")
5955 (license license:bsd-3))) 5956 (license license:bsd-3)))
5956 5957
5958(define-public ghc-magic
5959 (package
5960 (name "ghc-magic")
5961 (version "1.1")
5962 (source
5963 (origin
5964 (method url-fetch)
5965 (uri (string-append
5966 "https://hackage.haskell.org/package/magic/magic-"
5967 version ".tar.gz"))
5968 (sha256
5969 (base32
5970 "10p0gjjjwr1dda7hahwrwn5njbfhl67arq3v3nf1jr3vymlkn75j"))))
5971 (build-system haskell-build-system)
5972 (home-page "http://hackage.haskell.org/package/magic")
5973 (synopsis "Interface to C file/magic library")
5974 (description
5975 "This package provides a full-featured binding to the C libmagic library.
5976With it, you can determine the type of a file by examining its contents rather
5977than its name.")
5978 (license license:bsd-3)))
5979
5957(define-public ghc-markdown-unlit 5980(define-public ghc-markdown-unlit
5958 (package 5981 (package
5959 (name "ghc-markdown-unlit") 5982 (name "ghc-markdown-unlit")
@@ -8667,7 +8690,7 @@ notation}.")
8667 ("ghc-hashable" ,ghc-hashable) 8690 ("ghc-hashable" ,ghc-hashable)
8668 ("ghc-primitive" ,ghc-primitive))) 8691 ("ghc-primitive" ,ghc-primitive)))
8669 (native-inputs '()) 8692 (native-inputs '())
8670 (properties '(hidden? #t)))) 8693 (properties '((hidden? #t)))))
8671 8694
8672(define-public ghc-sdl 8695(define-public ghc-sdl
8673 (package 8696 (package
@@ -8951,7 +8974,7 @@ semigroup.")
8951 ("ghc-tagged" ,ghc-tagged) 8974 ("ghc-tagged" ,ghc-tagged)
8952 ("ghc-unordered-containers" ,ghc-unordered-containers-bootstrap) 8975 ("ghc-unordered-containers" ,ghc-unordered-containers-bootstrap)
8953 ("ghc-hashable" ,ghc-hashable-bootstrap))) 8976 ("ghc-hashable" ,ghc-hashable-bootstrap)))
8954 (properties '(hidden? #t)))) 8977 (properties '((hidden? #t)))))
8955 8978
8956(define-public ghc-setenv 8979(define-public ghc-setenv
8957 (package 8980 (package
@@ -10781,7 +10804,7 @@ and high speed.")
10781 (arguments `(#:tests? #f)) 10804 (arguments `(#:tests? #f))
10782 (inputs 10805 (inputs
10783 `(("ghc-hashable" ,ghc-hashable-bootstrap))) 10806 `(("ghc-hashable" ,ghc-hashable-bootstrap)))
10784 (properties '(hidden? #t)))) 10807 (properties '((hidden? #t)))))
10785 10808
10786(define-public ghc-unsafe 10809(define-public ghc-unsafe
10787 (package 10810 (package
@@ -11322,7 +11345,7 @@ widths to the Char type.")
11322 `(("ghc-setlocale" ,ghc-setlocale) 11345 `(("ghc-setlocale" ,ghc-setlocale)
11323 ("ghc-utf8-string" ,ghc-utf8-string) 11346 ("ghc-utf8-string" ,ghc-utf8-string)
11324 ("ghc-attoparsec" ,ghc-attoparsec-bootstrap))) 11347 ("ghc-attoparsec" ,ghc-attoparsec-bootstrap)))
11325 (properties '(hidden? #t)))) 11348 (properties '((hidden? #t)))))
11326 11349
11327(define-public ghc-weigh 11350(define-public ghc-weigh
11328 (package 11351 (package
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 4d16cd656fd..d86daa52c59 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -596,7 +596,13 @@ interactive environment for the functional language Haskell.")
596 (("^test\\('T8108'") "# guix skipped: test('T8108'")) 596 (("^test\\('T8108'") "# guix skipped: test('T8108'"))
597 (substitute* "libraries/unix/tests/libposix/all.T" 597 (substitute* "libraries/unix/tests/libposix/all.T"
598 (("^test\\('posix010'") "# guix skipped: test('posix010'")) 598 (("^test\\('posix010'") "# guix skipped: test('posix010'"))
599 #t)))))))) 599 #t))))))
600 (native-search-paths (list (search-path-specification
601 (variable "GHC_PACKAGE_PATH")
602 (files (list
603 (string-append "lib/ghc-" version)))
604 (file-pattern ".*\\.conf\\.d$")
605 (file-type 'directory))))))
600 606
601(define-public ghc-8 ghc-8.4) 607(define-public ghc-8 ghc-8.4)
602 608
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 4463007c74f..7b6c8b3e0b8 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -1428,6 +1428,40 @@ PNG, and performs PNG integrity checks and corrections.")
1428 (home-page "http://optipng.sourceforge.net/") 1428 (home-page "http://optipng.sourceforge.net/")
1429 (license license:zlib))) 1429 (license license:zlib)))
1430 1430
1431(define-public pngsuite
1432 (package
1433 (name "pngsuite")
1434 (version "2017jul19")
1435 (source
1436 (origin
1437 (method url-fetch/tarbomb)
1438 (uri (string-append "http://www.schaik.com/pngsuite2011/PngSuite-"
1439 version ".tgz"))
1440 (sha256
1441 (base32
1442 "1j7xgd9iffcnpphhzz9ld9ybrjmx9brhq0803g0450ssr52b5502"))))
1443 (build-system gnu-build-system)
1444 (arguments
1445 '(#:tests? #f ; there is no test target
1446 #:license-file-regexp "PngSuite.LICENSE"
1447 #:phases
1448 (modify-phases %standard-phases
1449 (replace 'install
1450 (lambda* (#:key outputs #:allow-other-keys)
1451 (let ((out (assoc-ref outputs "out")))
1452 (copy-recursively "." (string-append out "/"))
1453 #t)))
1454 (delete 'build)
1455 (delete 'configure))))
1456 (home-page "http://www.schaik.com/pngsuite2011/pngsuite.html")
1457 (synopsis "Example PNGs for use in test suites")
1458 (description "Collection of graphics images created to test PNG
1459applications like viewers, converters and editors. As far as that is
1460possible, all formats supported by the PNG standard are represented.")
1461 (license (license:fsdg-compatible "file://PngSuite.LICENSE" "Permission to
1462use, copy, modify and distribute these images for any purpose and without fee
1463is hereby granted."))))
1464
1431(define-public libjpeg-turbo 1465(define-public libjpeg-turbo
1432 (package 1466 (package
1433 (name "libjpeg-turbo") 1467 (name "libjpeg-turbo")
@@ -1755,3 +1789,42 @@ identical visual appearance.")
1755to the standard output. It works well together with grim.") 1789to the standard output. It works well together with grim.")
1756 ;; MIT license. 1790 ;; MIT license.
1757 (license license:expat))) 1791 (license license:expat)))
1792
1793(define-public sng
1794 (package
1795 (name "sng")
1796 (version "1.1.0")
1797 (source
1798 (origin
1799 (method url-fetch)
1800 (uri (string-append "mirror://sourceforge/sng/sng-"
1801 version ".tar.gz"))
1802 (sha256
1803 (base32 "06a6ydvx9xb3vxvrzdrg3hq0rjwwj9ibr7fyyxjxq6qx1j3mb70i"))))
1804 (build-system gnu-build-system)
1805 (arguments
1806 `(#:phases
1807 (modify-phases %standard-phases
1808 (add-before 'check 'link-pngsuite
1809 ;; tests expect pngsuite in source dir
1810 (lambda* (#:key inputs #:allow-other-keys)
1811 (symlink (assoc-ref inputs "pngsuite") "pngsuite")
1812 #t)))
1813 #:configure-flags
1814 (list (string-append "--with-rgbtxt="
1815 (assoc-ref %build-inputs "xorg-rgb")
1816 "/share/X11/rgb.txt"))))
1817 (inputs `(("xorg-rgb" ,xorg-rgb)
1818 ("libpng" ,libpng)))
1819 (native-inputs `(("pngsuite" ,pngsuite)))
1820 (home-page "http://sng.sourceforge.net")
1821 (synopsis "Markup language for representing PNG contents")
1822 (description "SNG (Scriptable Network Graphics) is a minilanguage designed
1823specifically to represent the entire contents of a PNG (Portable Network
1824Graphics) file in an editable form. Thus, SNGs representing elaborate
1825graphics images and ancillary chunk data can be readily generated or modified
1826using only text tools.
1827
1828SNG is implemented by a compiler/decompiler called sng that
1829losslessly translates between SNG and PNG.")
1830 (license license:zlib)))
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index 622f1253d8f..e3418c1fec3 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -5,7 +5,7 @@
5;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> 5;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
6;;; Copyright © 2016 ng0 <ng0@n0.is> 6;;; Copyright © 2016 ng0 <ng0@n0.is>
7;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> 7;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
8;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> 8;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
9;;; 9;;;
10;;; This file is part of GNU Guix. 10;;; This file is part of GNU Guix.
11;;; 11;;;
@@ -166,15 +166,14 @@ SILC and ICB protocols via plugins.")
166(define-public weechat 166(define-public weechat
167 (package 167 (package
168 (name "weechat") 168 (name "weechat")
169 (version "2.5") 169 (version "2.6")
170 (source (origin 170 (source (origin
171 (method url-fetch) 171 (method url-fetch)
172 (uri (string-append "https://weechat.org/files/src/weechat-" 172 (uri (string-append "https://weechat.org/files/src/weechat-"
173 version ".tar.xz")) 173 version ".tar.xz"))
174 (sha256 174 (sha256
175 (base32 175 (base32
176 "09sc5lf7z70x3iw87q4zh8rbyngsw89pwnzs5jk195zzqdspgj2j")) 176 "0j2iflnfvv31q2l9r67r8aj3ipggqfm2r2dpy7pvdpxgwwq337ps"))))
177 (patches (search-patches "weechat-python.patch"))))
178 (build-system cmake-build-system) 177 (build-system cmake-build-system)
179 (native-inputs 178 (native-inputs
180 `(("gettext" ,gettext-minimal) 179 `(("gettext" ,gettext-minimal)
@@ -187,9 +186,11 @@ SILC and ICB protocols via plugins.")
187 ("aspell" ,aspell) 186 ("aspell" ,aspell)
188 ("curl" ,curl) 187 ("curl" ,curl)
189 ("gnutls" ,gnutls) 188 ("gnutls" ,gnutls)
189
190 ;; Scripting language plug-ins.
190 ("guile" ,guile-2.0) 191 ("guile" ,guile-2.0)
191 ("lua" ,lua-5.1) 192 ("lua" ,lua-5.1)
192 ("python" ,python-2) 193 ("python" ,python)
193 ("perl" ,perl) 194 ("perl" ,perl)
194 ("tcl" ,tcl))) 195 ("tcl" ,tcl)))
195 (arguments 196 (arguments
@@ -214,14 +215,7 @@ SILC and ICB protocols via plugins.")
214 (substitute* "tests/scripts/test-scripts.cpp" 215 (substitute* "tests/scripts/test-scripts.cpp"
215 ((".*\\{ \"(javascript|php|ruby)\", " all) 216 ((".*\\{ \"(javascript|php|ruby)\", " all)
216 (string-append "// SKIP" all))) 217 (string-append "// SKIP" all)))
217 #t)) 218 #t)))))
218 (add-after 'install 'wrap
219 (lambda* (#:key inputs outputs #:allow-other-keys)
220 (let ((out (assoc-ref outputs "out"))
221 (py2 (assoc-ref inputs "python")))
222 (wrap-program (string-append out "/bin/weechat")
223 `("PATH" ":" prefix (,(string-append py2 "/bin"))))
224 #t))))))
225 (synopsis "Extensible chat client") 219 (synopsis "Extensible chat client")
226 (description "WeeChat (Wee Enhanced Environment for Chat) is an 220 (description "WeeChat (Wee Enhanced Environment for Chat) is an
227@dfn{Internet Relay Chat} (IRC) client, which is designed to be light and fast. 221@dfn{Internet Relay Chat} (IRC) client, which is designed to be light and fast.
diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm
index 9e1818dfaf5..2993eb66f69 100644
--- a/gnu/packages/javascript.scm
+++ b/gnu/packages/javascript.scm
@@ -1,6 +1,6 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> 2;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
3;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> 3;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
4;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> 4;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
5;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> 5;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
6;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> 6;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
@@ -144,45 +144,20 @@ be able to view it naturally and easily.")))
144 (name "js-respond") 144 (name "js-respond")
145 (version "1.4.2") 145 (version "1.4.2")
146 (source (origin 146 (source (origin
147 (method url-fetch) 147 (method git-fetch)
148 (uri (string-append "https://github.com/scottjehl/Respond/" 148 (uri (git-reference
149 "archive/" version ".tar.gz")) 149 (url "https://github.com/scottjehl/Respond")
150 (file-name (string-append name "-" version ".tar.gz")) 150 (commit version)))
151 (file-name (git-file-name name version))
151 (sha256 152 (sha256
152 (base32 153 (base32
153 "0ds1ya2a185jp93mdn07159c2x8zczwi960ykrawpp62bwk2n93d")))) 154 "00xid731rirc7sdy1gc8qal3v9g0agr2qx15hm4x97l1lcbylyn2"))))
154 (build-system trivial-build-system) 155 (build-system minify-build-system)
155 (arguments 156 (arguments
156 `(#:modules ((guix build utils)) 157 `(#:javascript-files '("src/matchmedia.addListener.js"
157 #:builder 158 "src/matchmedia.polyfill.js"
158 (begin 159 "src/respond.js")))
159 (use-modules (guix build utils)
160 (ice-9 match)
161 (ice-9 popen)
162 (srfi srfi-26))
163 (set-path-environment-variable
164 "PATH" '("bin") (map (match-lambda
165 ((_ . input)
166 input))
167 %build-inputs))
168 (let ((install-directory (string-append %output
169 "/share/javascript/respond/")))
170 (invoke "tar" "xvf"
171 (assoc-ref %build-inputs "source")
172 "--strip" "1")
173 (mkdir-p install-directory)
174 (let* ((file "src/respond.js")
175 (installed (string-append install-directory "respond.min.js")))
176 (let ((minified (open-pipe* OPEN_READ "uglify-js" file)))
177 (call-with-output-file installed
178 (cut dump-port minified <>)))))
179 #t)))
180 (home-page "https://github.com/scottjehl/Respond") 160 (home-page "https://github.com/scottjehl/Respond")
181 (native-inputs
182 `(("uglify-js" ,uglify-js)
183 ("source" ,source)
184 ("gzip" ,gzip)
185 ("tar" ,tar)))
186 (synopsis "Polyfill for min/max-width CSS3 Media Queries") 161 (synopsis "Polyfill for min/max-width CSS3 Media Queries")
187 (description "The goal of this script is to provide a fast and lightweight 162 (description "The goal of this script is to provide a fast and lightweight
188script to enable responsive web designs in browsers that don't support CSS3 163script to enable responsive web designs in browsers that don't support CSS3
@@ -194,13 +169,14 @@ Media Queries.")
194 (name "js-html5shiv") 169 (name "js-html5shiv")
195 (version "3.7.3") 170 (version "3.7.3")
196 (source (origin 171 (source (origin
197 (method url-fetch) 172 (method git-fetch)
198 (uri (string-append "https://github.com/aFarkas/html5shiv/" 173 (uri (git-reference
199 "archive/" version ".tar.gz")) 174 (url "https://github.com/aFarkas/html5shiv")
200 (file-name (string-append name "-" version ".tar.gz")) 175 (commit version)))
176 (file-name (git-file-name name version))
201 (sha256 177 (sha256
202 (base32 178 (base32
203 "0inlbpxpqzdyi24lqagzf7l24zxg0y02xcpqs2h4npjscazzw7hg")))) 179 "0y1c5nyq0brl9fjdihhax33vks4s1ij9iv113879sg3zflmgqpd0"))))
204 (build-system minify-build-system) 180 (build-system minify-build-system)
205 (home-page "https://github.com/aFarkas/html5shiv") 181 (home-page "https://github.com/aFarkas/html5shiv")
206 (synopsis "Enable HTML5 sectioning elements in legacy browsers") 182 (synopsis "Enable HTML5 sectioning elements in legacy browsers")
@@ -264,13 +240,14 @@ provided by ES5. @code{JSONPath} is used to represent the links.")
264 (name "js-strftime") 240 (name "js-strftime")
265 (version "0.10.0") 241 (version "0.10.0")
266 (source (origin 242 (source (origin
267 (method url-fetch) 243 (method git-fetch)
268 (uri (string-append "https://github.com/samsonjs/strftime/" 244 (uri (git-reference
269 "archive/v" version ".tar.gz")) 245 (url"https://github.com/samsonjs/strftime")
270 (file-name (string-append name "-" version ".tar.gz")) 246 (commit (string-append "v" version))))
247 (file-name (git-file-name name version))
271 (sha256 248 (sha256
272 (base32 249 (base32
273 "1iya43w7y26y2dp9l4d40bhjc4scb5a9mng5ng5c8hsqr82f1375")))) 250 "131nmlivazwxyba25kh9lda99749fq4xsyin6lzfalaaydviby4p"))))
274 (build-system minify-build-system) 251 (build-system minify-build-system)
275 (arguments 252 (arguments
276 `(#:javascript-files '("strftime.js"))) 253 `(#:javascript-files '("strftime.js")))
@@ -287,13 +264,14 @@ well as some other extensions from Ruby.")
287 (name "js-highlight") 264 (name "js-highlight")
288 (version "9.12.0") 265 (version "9.12.0")
289 (source (origin 266 (source (origin
290 (method url-fetch) 267 (method git-fetch)
291 (uri (string-append "https://github.com/isagalaev/highlight.js/" 268 (uri (git-reference
292 "archive/" version ".tar.gz")) 269 (url "https://github.com/isagalaev/highlight.js")
293 (file-name (string-append name "-" version ".tar.gz")) 270 (commit version)))
271 (file-name (git-file-name name version))
294 (sha256 272 (sha256
295 (base32 273 (base32
296 "1jjn9mj7fwq4zpr6is438bscf03b3q8jkj0k5c3fc6pkmjnhw939")))) 274 "12qz22qjpd6svj58pwgcwg2x2rzhihfdrxg6lgj39nfpaln6dris"))))
297 (build-system minify-build-system) 275 (build-system minify-build-system)
298 (arguments 276 (arguments
299 `(#:javascript-files '("src/highlight.js"))) 277 `(#:javascript-files '("src/highlight.js")))
@@ -329,18 +307,41 @@ Javascript library, adding sorting, paging and filtering abilities to plain
329HTML tables with minimal effort.") 307HTML tables with minimal effort.")
330 (license license:expat))) 308 (license license:expat)))
331 309
310(define-public js-requirejs
311 (package
312 (name "js-requirejs")
313 (version "2.3.6")
314 (source (origin
315 (method git-fetch)
316 (uri (git-reference
317 (url "https://github.com/requirejs/requirejs.git")
318 (commit version)))
319 (file-name (git-file-name name version))
320 (sha256
321 (base32
322 "0cvd5y2mb3h6yil3niqn3gjqrzixdsxcz4rvc2f0hg4kzp5y0w86"))))
323 (build-system minify-build-system)
324 (arguments `(#:javascript-files '("require.js")))
325 (home-page "https://github.com/requirejs/requirejs/")
326 (synopsis "File and module loader for JavaScript")
327 (description "RequireJS loads plain JavaScript files as well as more
328defined modules. It is optimized for in-browser use, including in a Web
329Worker, but it can be used in other JavaScript environments.")
330 (license license:expat)))
331
332(define-public js-selectize 332(define-public js-selectize
333 (package 333 (package
334 (name "js-selectize") 334 (name "js-selectize")
335 (version "0.12.4") 335 (version "0.12.6")
336 (source (origin 336 (source (origin
337 (method url-fetch) 337 (method git-fetch)
338 (uri (string-append "https://github.com/selectize/selectize.js/" 338 (uri (git-reference
339 "archive/v" version ".tar.gz")) 339 (url "https://github.com/selectize/selectize.js")
340 (file-name (string-append name "-" version ".tar.gz")) 340 (commit (string-append "v" version))))
341 (file-name (git-file-name name version))
341 (sha256 342 (sha256
342 (base32 343 (base32
343 "0756p49aaz34mw2dx8k1gxf210mngfrri25vkba0j7wihd2af8gn")))) 344 "15gichl8wi6yxag2ps723nxrgyan15976dzsnvw9h9py8sbyyzjn"))))
344 (build-system minify-build-system) 345 (build-system minify-build-system)
345 (arguments `(#:javascript-files '("src/selectize.js"))) 346 (arguments `(#:javascript-files '("src/selectize.js")))
346 (home-page "http://selectize.github.io/selectize.js/") 347 (home-page "http://selectize.github.io/selectize.js/")
@@ -353,15 +354,16 @@ navigation; it is useful for tagging, contact lists, etc.")
353(define-public js-es5-shim 354(define-public js-es5-shim
354 (package 355 (package
355 (name "js-es5-shim") 356 (name "js-es5-shim")
356 (version "4.5.9") 357 (version "4.5.13")
357 (source (origin 358 (source (origin
358 (method url-fetch) 359 (method git-fetch)
359 (uri (string-append "https://github.com/es-shims/es5-shim/" 360 (uri (git-reference
360 "archive/v" version ".tar.gz")) 361 (url "https://github.com/es-shims/es5-shim")
361 (file-name (string-append name "-" version ".tar.gz")) 362 (commit (string-append "v" version))))
363 (file-name (git-file-name name version))
362 (sha256 364 (sha256
363 (base32 365 (base32
364 "0yfndyijz0ykddzprpvfjb2453gzpn528klmwycwbqc1bqd3m1hl")))) 366 "142w384fbyllq4yggv173g82lw3wix4jqcg6hkhx1ymq89vvnpmh"))))
365 (build-system minify-build-system) 367 (build-system minify-build-system)
366 (arguments `(#:javascript-files 368 (arguments `(#:javascript-files
367 '("es5-sham.js" 369 '("es5-sham.js"
@@ -381,13 +383,14 @@ means that these shams cause many ES5 methods to silently fail.")
381 (name "js-filesaver") 383 (name "js-filesaver")
382 (version "1.3.8") 384 (version "1.3.8")
383 (source (origin 385 (source (origin
384 (method url-fetch) 386 (method git-fetch)
385 (uri (string-append "https://github.com/eligrey/FileSaver.js/" 387 (uri (git-reference
386 "archive/" version ".tar.gz")) 388 (url "https://github.com/eligrey/FileSaver.js")
387 (file-name (string-append name "-" version)) 389 (commit version)))
390 (file-name (git-file-name name version))
388 (sha256 391 (sha256
389 (base32 392 (base32
390 "1rkhfqs5plaj628kzj7qgm5qahy4v7ihygifidqr6g6265mil97h")))) 393 "0gvqk0hnr8fig0n4da7vj7q6z31bcyv52916xz3rbmdj3pgpiv1d"))))
391 (build-system minify-build-system) 394 (build-system minify-build-system)
392 (arguments 395 (arguments
393 `(#:phases 396 `(#:phases
diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm
index d8c0649131a..2d72c39436a 100644
--- a/gnu/packages/kde.scm
+++ b/gnu/packages/kde.scm
@@ -529,16 +529,16 @@ different notification systems.")
529(define-public kdeconnect 529(define-public kdeconnect
530 (package 530 (package
531 (name "kdeconnect") 531 (name "kdeconnect")
532 (version "1.3.3") 532 (version "1.3.5")
533 (source 533 (source
534 (origin 534 (origin
535 (method url-fetch) 535 (method url-fetch)
536 (uri (string-append "mirror://kde/stable/kdeconnect/" 536 (uri (string-append "mirror://kde/stable/kdeconnect/"
537 version "/src/kdeconnect-kde-" 537 version "/kdeconnect-kde-"
538 version ".tar.xz")) 538 version ".tar.xz"))
539 (sha256 539 (sha256
540 (base32 540 (base32
541 "1vac0mw1myrswr61adv7lgif0c4wzw5wnsj0sqxj6msp4l4pfgsg")))) 541 "02lr3xx5s2mgddac4n3lkgr7ppf1z5m6ajs90rjix0vs8a271kp5"))))
542 (build-system cmake-build-system) 542 (build-system cmake-build-system)
543 (arguments 543 (arguments
544 `(#:configure-flags '("-DBUILD_TESTING=ON") 544 `(#:configure-flags '("-DBUILD_TESTING=ON")
@@ -600,4 +600,30 @@ communicate with each other. Here's a few things KDE Connect can do:
600@item Browse your phone from the desktop 600@item Browse your phone from the desktop
601@item Control the desktop's volume from the phone 601@item Control the desktop's volume from the phone
602@end enumerate") 602@end enumerate")
603 (properties `((upstream-name . "kdeconnect-kde")))
603 (license (list license:gpl2 license:gpl3)))) ; dual licensed 604 (license (list license:gpl2 license:gpl3)))) ; dual licensed
605
606(define-public kqtquickcharts
607 (package
608 (name "kqtquickcharts")
609 (version "19.08.1")
610 (source
611 (origin
612 (method url-fetch)
613 (uri (string-append "mirror://kde/stable/applications/"
614 version "/src/kqtquickcharts-" version ".tar.xz"))
615 (sha256
616 (base32
617 "1j3rivvh4sa94lsd0hi4xfvcikl05zrqd7634wxyaxs718ais6dg"))))
618 (build-system cmake-build-system)
619 (native-inputs
620 `(("extra-cmake-modules" ,extra-cmake-modules)))
621 (inputs
622 `(("qtbase" ,qtbase)
623 ("qtdeclarative" ,qtdeclarative)))
624 (home-page "https://phabricator.kde.org/source/kqtquickcharts/")
625 (synopsis "Interactive charts for Qt Quick")
626 (description
627 "Kqtquickcharts is a QtQuick plugin to render beautiful and interactive
628charts.")
629 (license license:lgpl2.1+)))
diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm
index 73376feecbe..1ed2483615f 100644
--- a/gnu/packages/language.scm
+++ b/gnu/packages/language.scm
@@ -2,6 +2,7 @@
2;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org> 2;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
3;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> 3;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
4;;; Copyright © 2018 ng0 <ng0@n0.is> 4;;; Copyright © 2018 ng0 <ng0@n0.is>
5;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com>
5;;; 6;;;
6;;; This file is part of GNU Guix. 7;;; This file is part of GNU Guix.
7;;; 8;;;
@@ -20,13 +21,26 @@
20 21
21(define-module (gnu packages language) 22(define-module (gnu packages language)
22 #:use-module (gnu packages) 23 #:use-module (gnu packages)
24 #:use-module (gnu packages glib)
25 #:use-module (gnu packages gtk)
26 #:use-module (gnu packages ocr)
23 #:use-module (gnu packages perl) 27 #:use-module (gnu packages perl)
28 #:use-module (gnu packages pkg-config)
29 #:use-module (gnu packages python)
24 #:use-module (gnu packages perl-check) 30 #:use-module (gnu packages perl-check)
31 #:use-module (gnu packages swig)
25 #:use-module (gnu packages web) 32 #:use-module (gnu packages web)
33 #:use-module (gnu packages xorg)
26 #:use-module (guix packages) 34 #:use-module (guix packages)
35 #:use-module (guix build-system gnu)
27 #:use-module (guix build-system perl) 36 #:use-module (guix build-system perl)
28 #:use-module ((guix licenses) #:select (gpl2 gpl3 perl-license)) 37 #:use-module (guix build-system python)
29 #:use-module (guix download)) 38 #:use-module ((guix licenses)
39 #:select
40 (bsd-3 gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 perl-license zpl2.1))
41 #:use-module (guix download)
42 #:use-module (guix git-download)
43 #:use-module (guix utils))
30 44
31(define-public perl-lingua-en-findnumber 45(define-public perl-lingua-en-findnumber
32 (package 46 (package
@@ -406,3 +420,466 @@ string can be easily inferred by a human just by reading the identifier.")
406 (description "This module is a rather incomplete implementation of work 420 (description "This module is a rather incomplete implementation of work
407done by Gudrun Putze-Meier.") 421done by Gudrun Putze-Meier.")
408 (license perl-license))) 422 (license perl-license)))
423
424(define* (tegaki-release-uri proj version
425 #:optional (ext "tar.gz"))
426 (string-append "https://github.com/tegaki/tegaki/releases/download"
427 "/v" version "/" proj "-" version "." ext))
428
429(define remove-pre-compiled-files
430 (lambda exts
431 "Return snippet for removing pre-compiled files matching one of the
432extensions in EXTS."
433 `(begin (for-each delete-file
434 (find-files "."
435 (lambda (name _)
436 (any (cut string-suffix? <> name)
437 (map (cut string-append "." <>)
438 ',exts)))))
439 #t)))
440
441;;; modules required for the above snippet
442(define remove-pre-compiled-files-modules
443 '((guix build utils)
444 (srfi srfi-1)
445 (srfi srfi-26)))
446
447(define-public python2-tegaki-wagomu
448 (package
449 (name "python2-tegaki-wagomu")
450 (version "0.3.1")
451 (source
452 (origin
453 (method url-fetch)
454 (uri (tegaki-release-uri "tegaki-wagomu" version))
455 (sha256
456 (base32
457 "1pzdiq4zy1nyylaj9i6v2h4h0r05klahskzpafpp367p4rysi1x9"))
458 (modules remove-pre-compiled-files-modules)
459 (snippet (remove-pre-compiled-files "pyc"))))
460 (build-system python-build-system)
461 (arguments
462 `(#:python ,python-2 ; only Python 2 is supported
463 #:phases
464 (modify-phases %standard-phases
465 (add-after 'unpack 'fix-recognizer
466 (lambda* (#:key inputs #:allow-other-keys)
467 ;; fix missing module and function
468 (substitute* "tegakiwagomu.py"
469 (("import Results,")
470 "import ")
471 (("def _recognize")
472 "def recognize")
473 (("Results\\(candidates\\)")
474 "candidates"))
475 #t)))))
476 (inputs
477 `(("glib" ,glib)))
478 (native-inputs
479 `(("pkg-config" ,pkg-config)
480 ("swig" ,swig)))
481 (home-page "https://tegaki.github.io/")
482 (synopsis
483 "Chinese and Japanese Handwriting Recognition (Recognition engine)")
484 (description
485 "Tegaki is an ongoing project which aims to develop a free and open-source
486modern implementation of handwriting recognition software, specifically
487designed for Chinese (simplified and traditional) and Japanese, and that is
488suitable for both the desktop and mobile devices.")
489 (license gpl2+))) ; all files
490
491(define-public python2-tegaki-python
492 (package
493 (inherit python2-tegaki-wagomu)
494 (name "python2-tegaki-python")
495 (version "0.3.1")
496 (source
497 (origin
498 (method url-fetch)
499 (uri (tegaki-release-uri "tegaki-python" version))
500 (sha256
501 (base32
502 "0x93k7pw9nh0ywd97pr8pm7jv3f94nw044i5k0zvzhdpsjqvak7p"))
503 (modules remove-pre-compiled-files-modules)
504 (snippet (remove-pre-compiled-files "pyc"))))
505 (arguments
506 (substitute-keyword-arguments (package-arguments python2-tegaki-wagomu)
507 ((#:phases _)
508 `(modify-phases %standard-phases
509 (add-after 'unpack 'pre-configure
510 (lambda* (#:key inputs #:allow-other-keys)
511 ;; Always convert string to unicode to avoid the following error
512 ;; when running "tegaki-build" in python2-tegaki-tools:
513 ;;
514 ;; sqlite3.ProgrammingError: You must not use 8-bit bytestrings
515 ;; unless you use a text_factory that can interpret 8-bit
516 ;; bytestrings (like text_factory = str).
517 ;; It is highly recommended that you instead just switch your
518 ;; application to Unicode strings.
519 (substitute* "tegaki/charcol.py"
520 (("sqlite3.OptimizedUnicode")
521 "lambda s: unicode(s, 'utf-8')"))
522 (substitute* "tegaki/engine.py"
523 (("/usr(/local)?")
524 (assoc-ref inputs "python2-tegaki-wagomu")))
525 #t))))))
526 ;; override inherited inputs
527 (inputs '())
528 (native-inputs '())
529 (propagated-inputs
530 `(("python2-tegaki-wagomu" ,python2-tegaki-wagomu)
531 ("python2-zinnia" ,python2-zinnia)))
532 (synopsis
533 "Chinese and Japanese Handwriting Recognition (Base python library)")
534 (license (list gpl2+ ; all files except...
535 bsd-3 ; dictutils.py
536 zpl2.1)))) ; minjson.py
537
538(define-public python2-tegaki-pygtk
539 (package
540 (inherit python2-tegaki-wagomu)
541 (name "python2-tegaki-pygtk")
542 (version "0.3.1")
543 (source
544 (origin
545 (method url-fetch)
546 (uri (tegaki-release-uri "tegaki-pygtk" version))
547 (sha256
548 (base32
549 "1cip0azxhjdj2dg2z85cp1z3lz4qwx3w1j7z4xmcm7npapmsaqs2"))
550 (modules remove-pre-compiled-files-modules)
551 (snippet (remove-pre-compiled-files "pyc"))))
552 (arguments
553 (substitute-keyword-arguments (package-arguments python2-tegaki-wagomu)
554 ((#:phases _)
555 `(modify-phases %standard-phases
556 (add-after 'unpack 'fix-paths
557 (lambda* (#:key inputs #:allow-other-keys)
558 (substitute* "tegakigtk/fakekey.py"
559 (("libX11.so.6" so)
560 (string-append (assoc-ref inputs "libx11") "/lib/" so))
561 (("libXtst.so.6" so)
562 (string-append (assoc-ref inputs "libxtst") "/lib/" so)))
563 #t))))))
564 (inputs ; required for sending key strokes
565 `(("libx11" ,libx11)
566 ("libxtst" ,libxtst)))
567 (native-inputs '()) ; override inherited inputs
568 (propagated-inputs
569 `(("python2-pygtk" ,python2-pygtk)
570 ("python2-tegaki-python" ,python2-tegaki-python)))
571 (synopsis "Chinese and Japanese Handwriting Recognition (Base UI library)")
572 (license gpl2+))) ; all files
573
574(define-public python2-tegaki-tools
575 (package
576 (inherit python2-tegaki-wagomu)
577 (name "python2-tegaki-tools")
578 (version "0.3.1")
579 (source
580 (origin
581 (method url-fetch)
582 (uri (tegaki-release-uri "tegaki-tools" version))
583 (sha256
584 (base32
585 "0xxv97ggh2jgldw3r7y59lv3fhz733r6l7mdn6nh4m0gvb0ja971"))
586 (modules remove-pre-compiled-files-modules)
587 (snippet (remove-pre-compiled-files "pyc"))))
588 (arguments
589 (substitute-keyword-arguments (package-arguments python2-tegaki-wagomu)
590 ((#:phases _) '%standard-phases)))
591 (inputs
592 `(("python2-tegaki-pygtk" ,python2-tegaki-pygtk)))
593 ;; override inherited inputs
594 (native-inputs '())
595 (propagated-inputs '())
596 (synopsis "Chinese and Japanese Handwriting Recognition (Advanced tools)")
597 ;; Files in gifenc/ are licensed under gpl3+ while other files are licensed
598 ;; under gpl2+. Therefore, the combined work is licensed under gpl3+.
599 (license gpl3+)))
600
601(define-public python2-tegaki-recognize
602 (let ((commit "eceec69fe651d0733c8c8752dae569d2283d0f3c")
603 (revision "1"))
604 (package
605 (inherit python2-tegaki-tools)
606 (name "python2-tegaki-recognize")
607 ;; version copied from <https://github.com/tegaki/tegaki/releases>
608 (version (git-version "0.3.1" revision commit))
609 (source
610 (origin
611 ;; We use GIT-FETCH because 'tegaki-recognize.desktop.in' and
612 ;; 'tegaki-recognize.in' are missing in the tarball.
613 (method git-fetch)
614 (uri (git-reference
615 (url "https://github.com/tegaki/tegaki.git")
616 (commit commit)))
617 (sha256
618 (base32
619 "09mw2if9p885phbgah5f95q3fwy7s5b46qlmpxqyzfcnj6g7afr5"))
620 (file-name (git-file-name name version))
621 (modules `((guix build utils)
622 (ice-9 ftw)
623 (srfi srfi-26)
624 ,@remove-pre-compiled-files-modules))
625 (snippet
626 `(begin
627 ;; remove unnecessary files with potentially different license
628 (for-each delete-file-recursively
629 (scandir "."
630 (negate (cut member <> '("tegaki-recognize"
631 "." "..")))))
632 ,(remove-pre-compiled-files "pyc")
633 #t))))
634 (arguments
635 (substitute-keyword-arguments (package-arguments python2-tegaki-tools)
636 ((#:phases _)
637 `(modify-phases %standard-phases
638 (add-after 'unpack 'chdir
639 (lambda _
640 (chdir "tegaki-recognize")
641 #t))
642 ;; 'setup.py' script does not support one of the Python build
643 ;; system's default flags, "--single-version-externally-managed"
644 (replace 'install
645 (lambda* (#:key outputs #:allow-other-keys)
646 (invoke "python" "setup.py" "install"
647 (string-append "--prefix=" (assoc-ref outputs "out"))
648 "--root=/")
649 #t))))))
650 (synopsis "Chinese and Japanese Handwriting Recognition (Main program)")
651 (license gpl2+)))) ; all files
652
653(define-public tegaki-zinnia-japanese
654 (package
655 (inherit python2-tegaki-wagomu)
656 (name "tegaki-zinnia-japanese")
657 (version "0.3")
658 (source
659 (origin
660 (method url-fetch)
661 (uri (tegaki-release-uri name version "zip"))
662 (sha256
663 (base32
664 "1nmg9acxhcqly9gwkyb9m0hpy76fll91ywk4b1q4xms0ajxip1h7"))
665 (modules remove-pre-compiled-files-modules)
666 (snippet (remove-pre-compiled-files "model"))))
667 (build-system gnu-build-system)
668 (arguments
669 `(#:tests? #f ; no tests
670 #:phases
671 (modify-phases %standard-phases
672 (replace 'configure
673 (lambda* (#:key outputs #:allow-other-keys)
674 (substitute* "Makefile"
675 (("/usr/local")
676 (assoc-ref outputs "out")))
677 #t)))))
678 ;; override inherited inputs
679 (inputs '())
680 (native-inputs
681 `(("python2-tegaki-tools" ,python2-tegaki-tools)))
682 (propagated-inputs '())
683 (native-search-paths
684 (list (search-path-specification
685 (variable "TEGAKI_MODEL_PATH")
686 (files '("share/tegaki/models")))))
687 (synopsis "Chinese and Japanese Handwriting Recognition (Model)")
688 (license lgpl2.1))) ; all files
689
690(define-public tegaki-zinnia-japanese-light
691 (package
692 (inherit tegaki-zinnia-japanese)
693 (name "tegaki-zinnia-japanese-light")
694 (version "0.3")
695 (source
696 (origin
697 (method url-fetch)
698 (uri (tegaki-release-uri name version "zip"))
699 (sha256
700 (base32
701 "0x0fs29ylqzxd6xvg51h7rigpbisd7q8v11df425ib2j792yfyf8"))
702 (modules remove-pre-compiled-files-modules)
703 (snippet (remove-pre-compiled-files "model"))))
704 (license lgpl2.1))) ; all files
705
706(define-public tegaki-zinnia-japanese-kyoiku
707 (package
708 (inherit tegaki-zinnia-japanese)
709 (name "tegaki-zinnia-japanese-kyoiku")
710 (version "0.3")
711 (source
712 (origin
713 (method url-fetch)
714 (uri (tegaki-release-uri name version "zip"))
715 (sha256
716 (base32
717 "0am94bcpmbzplxdnwn9gk15sgaizvcfhmv13mk14jjvx3419cvvx"))
718 (modules remove-pre-compiled-files-modules)
719 (snippet (remove-pre-compiled-files "model"))))
720 (license lgpl2.1))) ; all files
721
722(define-public tegaki-zinnia-japanese-joyo
723 (package
724 (inherit tegaki-zinnia-japanese)
725 (name "tegaki-zinnia-japanese-joyo")
726 (version "0.3")
727 (source
728 (origin
729 (method url-fetch)
730 (uri (tegaki-release-uri name version "zip"))
731 (sha256
732 (base32
733 "1v0j40lzdyiz01ayws0b8r7fsdy2mr32658382kz4wyk883wzx2z"))
734 (modules remove-pre-compiled-files-modules)
735 (snippet (remove-pre-compiled-files "model"))))
736 (license lgpl2.1))) ; all files
737
738(define-public tegaki-zinnia-simplified-chinese
739 (package
740 (inherit tegaki-zinnia-japanese)
741 (name "tegaki-zinnia-simplified-chinese")
742 (version "0.3")
743 (source
744 (origin
745 (method url-fetch)
746 (uri (tegaki-release-uri name version "zip"))
747 (sha256
748 (base32
749 "18wq0jccv7lpnrfnzspyc110d6pj2v1i21xcx4fmgzz1lnln3fs5"))
750 (modules remove-pre-compiled-files-modules)
751 (snippet (remove-pre-compiled-files "model"))))
752 (license lgpl2.1))) ; all files
753
754(define-public tegaki-zinnia-simplified-chinese-light
755 (package
756 (inherit tegaki-zinnia-japanese)
757 (name "tegaki-zinnia-simplified-chinese-light")
758 (version "0.3")
759 (source
760 (origin
761 (method url-fetch)
762 (uri (tegaki-release-uri name version "zip"))
763 (sha256
764 (base32
765 "0v24yf0w0p03lb7fyx128a75mwzad166bigvlbrzqnad789qg1sr"))
766 (modules remove-pre-compiled-files-modules)
767 (snippet (remove-pre-compiled-files "model"))))
768 (license lgpl2.1))) ; all files
769
770(define-public tegaki-zinnia-traditional-chinese
771 (package
772 (inherit tegaki-zinnia-japanese)
773 (name "tegaki-zinnia-traditional-chinese")
774 (version "0.3")
775 (source
776 (origin
777 (method url-fetch)
778 (uri (tegaki-release-uri name version "zip"))
779 (sha256
780 (base32
781 "140nlp6hynrai2svs5670jjfw1za6ayflhyj2dl0bzsfgbk3447l"))
782 (modules remove-pre-compiled-files-modules)
783 (snippet (remove-pre-compiled-files "model"))))
784 (license lgpl2.1))) ; all files
785
786(define-public tegaki-zinnia-traditional-chinese-light
787 (package
788 (inherit tegaki-zinnia-japanese)
789 (name "tegaki-zinnia-traditional-chinese-light")
790 (version "0.3")
791 (source
792 (origin
793 (method url-fetch)
794 (uri (tegaki-release-uri name version "zip"))
795 (sha256
796 (base32
797 "1m6yk6a57vs9wg5y50qciwi1ahhmklp2mgsjysbj4mnyzv6yhcr2"))
798 (modules remove-pre-compiled-files-modules)
799 (snippet (remove-pre-compiled-files "model"))))
800 (license lgpl2.1))) ; all files
801
802(define-public tegaki-wagomu-japanese
803 (package
804 (inherit tegaki-zinnia-japanese)
805 (name "tegaki-wagomu-japanese")
806 (version "0.3")
807 (source
808 (origin
809 (method url-fetch)
810 (uri (tegaki-release-uri name version "zip"))
811 (sha256
812 (base32
813 "0flj5id8xwsn7csrrzqz9prdikswnwm2wms0as2vzdpxzph1az4k"))
814 (modules remove-pre-compiled-files-modules)
815 (snippet (remove-pre-compiled-files "model"))))
816 (license lgpl2.1))) ; all files
817
818(define-public tegaki-wagomu-japanese-kyoiku
819 (package
820 (inherit tegaki-zinnia-japanese)
821 (name "tegaki-wagomu-japanese-kyoiku")
822 (version "0.3")
823 (source
824 (origin
825 (method url-fetch)
826 (uri (tegaki-release-uri name version "zip"))
827 (sha256
828 (base32
829 "0v8crfh8rdf6ndp16g52s5jlrrlwh73xp38zjn5i9dlacx8kfqg1"))
830 (modules remove-pre-compiled-files-modules)
831 (snippet (remove-pre-compiled-files "model"))))
832 (license lgpl2.1))) ; all files
833
834(define-public tegaki-wagomu-japanese-joyo
835 (package
836 (inherit tegaki-zinnia-japanese)
837 (name "tegaki-wagomu-japanese-joyo")
838 (version "0.3")
839 (source
840 (origin
841 (method url-fetch)
842 (uri (tegaki-release-uri name version "zip"))
843 (sha256
844 (base32
845 "0wk8shpr963zp328g991qs6abpnacq4242003m687z2d6yp7nph2"))
846 (modules remove-pre-compiled-files-modules)
847 (snippet (remove-pre-compiled-files "model"))))
848 (license lgpl2.1))) ; all files
849
850(define-public tegaki-wagomu-simplified-chinese
851 (package
852 (inherit tegaki-zinnia-japanese)
853 (name "tegaki-wagomu-simplified-chinese")
854 (version "0.3")
855 (source
856 (origin
857 (method url-fetch)
858 (uri (tegaki-release-uri name version "zip"))
859 (sha256
860 (base32
861 "0wqprynigqxqxv128i1smh81gxvmjj056d9qpznxa3n9f5ymlbj6"))
862 (modules remove-pre-compiled-files-modules)
863 (snippet (remove-pre-compiled-files "model"))))
864 (license lgpl2.1))) ; all files
865
866;;; Upstream does not provide the source for tegaki-wagomu-traditional-chinese.
867;;; Therefore, we use the source for tegaki-zinnia-traditional-chinese and
868;;; patch the Makefile accordingly.
869(define-public tegaki-wagomu-traditional-chinese
870 (package
871 (inherit tegaki-zinnia-traditional-chinese)
872 (name "tegaki-wagomu-traditional-chinese")
873 (arguments
874 (substitute-keyword-arguments
875 (package-arguments tegaki-zinnia-traditional-chinese)
876 ((#:phases phases '%standard-phases)
877 `(modify-phases ,phases
878 (replace 'configure
879 (lambda args
880 (let ((configure (assq-ref ,phases 'configure)))
881 (apply configure args))
882 (substitute* "Makefile"
883 (("zinnia") "wagomu"))
884 #t))))))
885 (license lgpl2.1))) ; all files
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index a543df3fe8b..be187886874 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -349,10 +349,10 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
349 "linux-" version ".tar.xz")) 349 "linux-" version ".tar.xz"))
350 (sha256 hash))) 350 (sha256 hash)))
351 351
352(define-public linux-libre-5.2-version "5.2.13") 352(define-public linux-libre-5.2-version "5.2.15")
353(define-public linux-libre-5.2-pristine-source 353(define-public linux-libre-5.2-pristine-source
354 (let ((version linux-libre-5.2-version) 354 (let ((version linux-libre-5.2-version)
355 (hash (base32 "12hpph3iynr22mfwz7745lp01waf2kg579hr56d4pvhx4iahzdhp"))) 355 (hash (base32 "0jhc70r2rygm91qifjagg1jgbpjwyyq6m8g1n5iv81l1v84i0mpb")))
356 (make-linux-libre-source version 356 (make-linux-libre-source version
357 (%upstream-linux-source version hash) 357 (%upstream-linux-source version hash)
358 deblob-scripts-5.2))) 358 deblob-scripts-5.2)))
@@ -3838,7 +3838,7 @@ and copy/paste text in the console and in xterm.")
3838(define-public btrfs-progs 3838(define-public btrfs-progs
3839 (package 3839 (package
3840 (name "btrfs-progs") 3840 (name "btrfs-progs")
3841 (version "5.2.1") 3841 (version "5.2.2")
3842 (source (origin 3842 (source (origin
3843 (method url-fetch) 3843 (method url-fetch)
3844 (uri (string-append "mirror://kernel.org/linux/kernel/" 3844 (uri (string-append "mirror://kernel.org/linux/kernel/"
@@ -3846,7 +3846,7 @@ and copy/paste text in the console and in xterm.")
3846 "btrfs-progs-v" version ".tar.xz")) 3846 "btrfs-progs-v" version ".tar.xz"))
3847 (sha256 3847 (sha256
3848 (base32 3848 (base32
3849 "0crjv3i20nyj2dagfw6q7byshscpn6j7wlqch3apkzzzk00lmb1n")))) 3849 "1imivxjppi8zl27gn472pwpk8bg5dijkbyi340by31vhy7dj24w2"))))
3850 (build-system gnu-build-system) 3850 (build-system gnu-build-system)
3851 (outputs '("out" 3851 (outputs '("out"
3852 "static")) ; static versions of the binaries in "out" 3852 "static")) ; static versions of the binaries in "out"
@@ -4455,18 +4455,18 @@ cpufreq sub-system is enabled or not.")
4455(define-public haveged 4455(define-public haveged
4456 (package 4456 (package
4457 (name "haveged") 4457 (name "haveged")
4458 (version "1.9.4") 4458 (version "1.9.6")
4459 (source 4459 (source
4460 (origin 4460 (origin
4461 (method git-fetch) 4461 (method git-fetch)
4462 (uri (git-reference 4462 (uri (git-reference
4463 (url "https://github.com/jirka-h/haveged.git") 4463 (url "https://github.com/jirka-h/haveged.git")
4464 (commit version))) 4464 (commit (string-append "v" version))))
4465 (file-name (git-file-name name version)) 4465 (file-name (git-file-name name version))
4466 (sha256 4466 (sha256
4467 (base32 "1hrwzjd4byq4fdrg8svww3d8x449k80jxxrjy9v6jvzhfv19rvxr")))) 4467 (base32 "11kr19n2f87izsj341lv5amhd1wc2ckfmqr9pq5fxix8pkbs94rh"))))
4468 (build-system gnu-build-system) 4468 (build-system gnu-build-system)
4469 (home-page "http://www.issihosts.com/haveged") 4469 (home-page "https://www.issihosts.com/haveged")
4470 (synopsis "Entropy source for the Linux random number generator") 4470 (synopsis "Entropy source for the Linux random number generator")
4471 (description 4471 (description
4472 "haveged generates an unpredictable stream of random numbers for use by 4472 "haveged generates an unpredictable stream of random numbers for use by
@@ -4475,10 +4475,10 @@ standard mechanisms for filling the entropy pool may not be sufficient for
4475systems with high needs or limited user interaction, such as headless servers. 4475systems with high needs or limited user interaction, such as headless servers.
4476 4476
4477@command{haveged} runs as a privileged daemon, harvesting randomness from the 4477@command{haveged} runs as a privileged daemon, harvesting randomness from the
4478indirect effects of hardware events on hidden processor state using the HArdware 4478indirect effects of hardware events on hidden processor state using the
4479Volatile Entropy Gathering and Expansion (@dfn{HAVEGE}) algorithm. It tunes 4479@acronym{HAVEGE, HArdware Volatile Entropy Gathering and Expansion} algorithm.
4480itself to its environment and provides the same built-in test suite for the 4480It tunes itself to its environment and provides the same built-in test suite
4481output stream as used on certified hardware security devices. 4481for the output stream as used on certified hardware security devices.
4482 4482
4483The quality of the randomness produced by this algorithm has not been proven. 4483The quality of the randomness produced by this algorithm has not been proven.
4484It is recommended to run it together with another entropy source like rngd, and 4484It is recommended to run it together with another entropy source like rngd, and
@@ -5140,14 +5140,14 @@ re-use code and to avoid re-inventing the wheel.")
5140(define-public libnftnl 5140(define-public libnftnl
5141 (package 5141 (package
5142 (name "libnftnl") 5142 (name "libnftnl")
5143 (version "1.1.3") 5143 (version "1.1.4")
5144 (source 5144 (source
5145 (origin 5145 (origin
5146 (method url-fetch) 5146 (method url-fetch)
5147 (uri (string-append "mirror://netfilter.org/libnftnl/" 5147 (uri (string-append "mirror://netfilter.org/libnftnl/"
5148 "libnftnl-" version ".tar.bz2")) 5148 "libnftnl-" version ".tar.bz2"))
5149 (sha256 5149 (sha256
5150 (base32 "03xszkcpqk3s1rqc6vh7g5j13kh3d3yjnvjhk5scds3an39rgp92")))) 5150 (base32 "087dfc2n4saf2k68hyi4byvgz5grwpw5kfjvmkpn3wmd8y1riiy8"))))
5151 (build-system gnu-build-system) 5151 (build-system gnu-build-system)
5152 (native-inputs 5152 (native-inputs
5153 `(("pkg-config" ,pkg-config))) 5153 `(("pkg-config" ,pkg-config)))
@@ -5164,7 +5164,7 @@ used by nftables.")
5164(define-public nftables 5164(define-public nftables
5165 (package 5165 (package
5166 (name "nftables") 5166 (name "nftables")
5167 (version "0.9.0") 5167 (version "0.9.2")
5168 (source 5168 (source
5169 (origin 5169 (origin
5170 (method url-fetch) 5170 (method url-fetch)
@@ -5172,7 +5172,7 @@ used by nftables.")
5172 "/files/nftables-" version ".tar.bz2")) 5172 "/files/nftables-" version ".tar.bz2"))
5173 (sha256 5173 (sha256
5174 (base32 5174 (base32
5175 "14bygs6vg2v448cw5r4pxqi8an29hw0m9vab8hpmgjmrzjsq30dd")))) 5175 "1x8kalbggjq44j4916i6vyv1rb20dlh1dcsf9xvzqsry2j063djw"))))
5176 (build-system gnu-build-system) 5176 (build-system gnu-build-system)
5177 (arguments `(#:configure-flags 5177 (arguments `(#:configure-flags
5178 '("--disable-man-doc"))) ; FIXME: Needs docbook2x. 5178 '("--disable-man-doc"))) ; FIXME: Needs docbook2x.
@@ -5874,15 +5874,15 @@ the superuser to make device nodes.")
5874(define-public fakeroot 5874(define-public fakeroot
5875 (package 5875 (package
5876 (name "fakeroot") 5876 (name "fakeroot")
5877 (version "1.23") 5877 (version "1.24")
5878 (source (origin 5878 (source (origin
5879 (method url-fetch) 5879 (method url-fetch)
5880 (uri (string-append "http://ftp.debian.org/debian/pool/main/f/" 5880 (uri (string-append "https://deb.debian.org/debian/pool/main/f/"
5881 "fakeroot/fakeroot_" version ".orig.tar.xz")) 5881 "fakeroot/fakeroot_" version ".orig.tar.gz"))
5882 (file-name (string-append name "-" version ".tar.gz")) 5882 (file-name (string-append name "-" version ".tar.gz"))
5883 (sha256 5883 (sha256
5884 (base32 5884 (base32
5885 "1xpl0s2yjyjwlf832b6kbkaa5921liybaar13k7n45ckd9lxd700")))) 5885 "1vb6f93hjyqnwx8dc8mm3dgma7axgqk8s7sdsjs8l2rpc0qmn11f"))))
5886 (build-system gnu-build-system) 5886 (build-system gnu-build-system)
5887 (arguments 5887 (arguments
5888 `(#:phases 5888 `(#:phases
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 65fc1a58cd8..0c8ad1e2fa5 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -6861,3 +6861,76 @@ extension-points via the concept of hooks.")
6861 6861
6862(define-public ecl-cl-hooks 6862(define-public ecl-cl-hooks
6863 (sbcl-package->ecl-package sbcl-cl-hooks)) 6863 (sbcl-package->ecl-package sbcl-cl-hooks))
6864
6865(define-public sbcl-s-sysdeps
6866 (let ((commit "d28246b5dffef9e73a0e0e6cfbc4e878006fe34d")
6867 (revision "1"))
6868 (package
6869 (name "sbcl-s-sysdeps")
6870 (build-system asdf-build-system/sbcl)
6871 (version (git-version "1" revision commit))
6872 (home-page "https://github.com/svenvc/s-sysdeps")
6873 (source
6874 (origin
6875 (method git-fetch)
6876 (uri (git-reference
6877 (url home-page)
6878 (commit commit)))
6879 (file-name (git-file-name name version))
6880 (sha256
6881 (base32
6882 "14b69b81yrxmjlvmm3lfxk04x5v7hqz4fql121334wh72czznfh9"))))
6883 (synopsis "Common Lisp abstraction layer over platform dependent functionality")
6884 (description "@code{s-sysdeps} is an abstraction layer over platform
6885dependent functionality. This simple package is used as a building block in a
6886number of other open source projects.
6887
6888@code{s-sysdeps} abstracts:
6889
6890@itemize
6891@item managing processes,
6892@item implementing a standard TCP/IP server,
6893@item opening a client TCP/IP socket stream,
6894@item working with process locks.
6895@end itemize\n")
6896 (license license:llgpl))))
6897
6898(define-public cl-s-sysdeps
6899 (sbcl-package->cl-source-package sbcl-s-sysdeps))
6900
6901(define-public ecl-s-sysdeps
6902 (sbcl-package->ecl-package sbcl-s-sysdeps))
6903
6904(define-public sbcl-cl-prevalence
6905 (let ((commit "c163c227ed85d430b82cb1e3502f72d4f88e3cfa")
6906 (revision "1"))
6907 (package
6908 (name "sbcl-cl-prevalence")
6909 (build-system asdf-build-system/sbcl)
6910 (version (git-version "5" revision commit))
6911 (home-page "https://github.com/40ants/cl-prevalence")
6912 (source
6913 (origin
6914 (method git-fetch)
6915 (uri (git-reference
6916 (url home-page)
6917 (commit commit)))
6918 (file-name (git-file-name name version))
6919 (sha256
6920 (base32
6921 "1i9zj1q2ahgwch56an21yzbgkynz0kab9fyxkq9mg8p3xrv38jjn"))))
6922 (inputs
6923 `(("s-sysdeps" ,sbcl-s-sysdeps)
6924 ("s-xml" ,sbcl-s-xml)))
6925 (synopsis "Implementation of object prevalence for Common Lisp")
6926 (description "This Common Lisp library implements object prevalence (see
6927@url{https://en.wikipedia.org/wiki/System_prevalence}). It allows
6928for (de)serializing to and from s-exps as well as XML. Serialization of arbitrary
6929classes and cyclic data structures are supported.")
6930 (license license:llgpl))))
6931
6932(define-public cl-prevalence
6933 (sbcl-package->cl-source-package sbcl-cl-prevalence))
6934
6935(define-public ecl-cl-prevalence
6936 (sbcl-package->ecl-package sbcl-cl-prevalence))
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index ff62d3b362a..075decc61a4 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -4,7 +4,7 @@
4;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> 4;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
5;;; Copyright © 2014 Andreas Enge <andreas@enge.fr> 5;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
6;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> 6;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
7;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> 7;;; Copyright © 2016, 2019 Ricardo Wurmus <rekado@elephly.net>
8;;; Copyright © 2016 doncatnip <gnopap@gmail.com> 8;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
9;;; Copyright © 2016, 2017, 2019 Clément Lassieur <clement@lassieur.org> 9;;; Copyright © 2016, 2017, 2019 Clément Lassieur <clement@lassieur.org>
10;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org> 10;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org>
@@ -39,6 +39,7 @@
39 #:use-module (gnu packages tls) 39 #:use-module (gnu packages tls)
40 #:use-module (gnu packages xml) 40 #:use-module (gnu packages xml)
41 #:use-module (gnu packages glib) 41 #:use-module (gnu packages glib)
42 #:use-module (gnu packages libevent)
42 #:use-module (gnu packages libffi) 43 #:use-module (gnu packages libffi)
43 #:use-module (gnu packages pkg-config) 44 #:use-module (gnu packages pkg-config)
44 #:use-module (gnu packages xorg) 45 #:use-module (gnu packages xorg)
@@ -450,6 +451,69 @@ Grammars (PEGs).")
450(define-public lua5.2-lpeg 451(define-public lua5.2-lpeg
451 (make-lua-lpeg "lua5.2-lpeg" lua-5.2)) 452 (make-lua-lpeg "lua5.2-lpeg" lua-5.2))
452 453
454(define (make-lua-luv name lua)
455 (package
456 (name name)
457 (version "1.30.1-0")
458 (source (origin
459 ;; The release tarball includes the sources of libuv but does
460 ;; not include the pkg-config files.
461 (method git-fetch)
462 (uri (git-reference
463 (url "https://github.com/luvit/luv.git")
464 (commit version)))
465 (file-name (git-file-name name version))
466 (sha256
467 (base32
468 "1lfzzyphpim28kw33k7zylcyxnf40ckhdg6hbqyzb5hszdf2hbka"))))
469 (build-system cmake-build-system)
470 (arguments
471 `(#:tests? #f ; there are none
472 #:configure-flags
473 '("-DWITH_LUA_ENGINE=Lua"
474 "-DWITH_SHARED_LIBUV=On"
475 "-DBUILD_MODULE=Off"
476 "-DBUILD_SHARED_LIBS=On"
477 "-DLUA_BUILD_TYPE=System")
478 #:phases
479 (modify-phases %standard-phases
480 (add-after 'unpack 'copy-lua-compat
481 (lambda* (#:key inputs #:allow-other-keys)
482 (copy-recursively (assoc-ref inputs "lua-compat")
483 "lua-compat")
484 (setenv "CPATH"
485 (string-append (getcwd) "/lua-compat:"
486 (or (getenv "CPATH") "")))
487 #t)))))
488 (inputs
489 `(("lua" ,lua)
490 ("libuv" ,libuv)))
491 (native-inputs
492 `(("lua-compat"
493 ,(origin
494 (method git-fetch)
495 (uri (git-reference
496 (url "https://github.com/keplerproject/lua-compat-5.3.git")
497 (commit "daebe77a2f498817713df37f0bb316db1d82222f")))
498 (file-name "lua-compat-5.3-checkout")
499 (sha256
500 (base32
501 "02a14nvn7aggg1yikj9h3dcf8aqjbxlws1bfvqbpfxv9d5phnrpz"))))))
502 (home-page "https://github.com/luvit/luv/")
503 (synopsis "Libuv bindings for Lua")
504 (description
505 "This library makes libuv available to Lua scripts.")
506 (license license:asl2.0)))
507
508(define-public lua-luv
509 (make-lua-luv "lua-luv" lua))
510
511(define-public lua5.1-luv
512 (make-lua-luv "lua5.1-luv" lua-5.1))
513
514(define-public lua5.2-luv
515 (make-lua-luv "lua5.2-luv" lua-5.2))
516
453;; Lua 5.3 is not supported. 517;; Lua 5.3 is not supported.
454(define (make-lua-bitop name lua) 518(define (make-lua-bitop name lua)
455 (package 519 (package
diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
index e72f5b82d9e..e5487d3ae42 100644
--- a/gnu/packages/lxqt.scm
+++ b/gnu/packages/lxqt.scm
@@ -1177,7 +1177,8 @@ processes currently in existence, much like code{top} or code{ps}.")
1177 (base32 "0v1vvi8vf9y8nv8y0gzffaqji53s75ab5jypksih0ndcws8ryww4")))) 1177 (base32 "0v1vvi8vf9y8nv8y0gzffaqji53s75ab5jypksih0ndcws8ryww4"))))
1178 (build-system cmake-build-system) 1178 (build-system cmake-build-system)
1179 (inputs 1179 (inputs
1180 `(("qtbase" ,qtbase))) 1180 `(("qtbase" ,qtbase)
1181 ("utf8proc" ,utf8proc)))
1181 (native-inputs 1182 (native-inputs
1182 `(("lxqt-build-tools" ,lxqt-build-tools) 1183 `(("lxqt-build-tools" ,lxqt-build-tools)
1183 ("qttools" ,qttools))) 1184 ("qttools" ,qttools)))
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 16d3af3831b..e44ec66cb54 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -1726,11 +1726,16 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
1726 (version "2.16.0") 1726 (version "2.16.0")
1727 (source 1727 (source
1728 (origin 1728 (origin
1729 (method url-fetch) 1729 (method git-fetch)
1730 (uri (string-append "http://gmsh.info/src/gmsh-" 1730 (uri (git-reference
1731 version "-source.tgz")) 1731 (url "https://gitlab.onelab.info/gmsh/gmsh.git")
1732 (commit
1733 (string-append "gmsh_"
1734 (string-map (lambda (x) (if (eq? x #\.) #\_ x))
1735 version)))))
1736 (file-name (git-file-name name version))
1732 (sha256 1737 (sha256
1733 (base32 "1slf0bfkwrcgn6296wb4qhbk4ahz6i4wfb10hnim08x05vrylag8")) 1738 (base32 "08rq4jajwmlpivnm9yifz2jhaivnz065lnk0h2zv773nwl9wf162"))
1734 (modules '((guix build utils))) 1739 (modules '((guix build utils)))
1735 (snippet 1740 (snippet
1736 ;; Remove non-free METIS code 1741 ;; Remove non-free METIS code
@@ -1756,7 +1761,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
1756 `(#:configure-flags `("-DENABLE_METIS:BOOL=OFF" 1761 `(#:configure-flags `("-DENABLE_METIS:BOOL=OFF"
1757 "-DENABLE_BUILD_SHARED:BOOL=ON" 1762 "-DENABLE_BUILD_SHARED:BOOL=ON"
1758 "-DENABLE_BUILD_DYNAMIC:BOOL=ON"))) 1763 "-DENABLE_BUILD_DYNAMIC:BOOL=ON")))
1759 (home-page "http://www.geuz.org/gmsh/") 1764 (home-page "http://gmsh.info/")
1760 (synopsis "3D finite element grid generator") 1765 (synopsis "3D finite element grid generator")
1761 (description "Gmsh is a 3D finite element grid generator with a built-in 1766 (description "Gmsh is a 3D finite element grid generator with a built-in
1762CAD engine and post-processor. Its design goal is to provide a fast, light 1767CAD engine and post-processor. Its design goal is to provide a fast, light
@@ -3100,6 +3105,10 @@ parts of it.")
3100 3105
3101(define-public openblas 3106(define-public openblas
3102 (package 3107 (package
3108 ;; TODO: Incorporate 'openblas/fixed-num-threads' changes on the next
3109 ;; rebuild cycle.
3110 (replacement openblas/fixed-num-threads)
3111
3103 (name "openblas") 3112 (name "openblas")
3104 (version "0.3.6") 3113 (version "0.3.6")
3105 (source 3114 (source
@@ -3170,7 +3179,7 @@ parts of it.")
3170 (license license:bsd-3))) 3179 (license license:bsd-3)))
3171 3180
3172(define-public openblas-ilp64 3181(define-public openblas-ilp64
3173 (package (inherit openblas) 3182 (package/inherit openblas
3174 (name "openblas-ilp64") 3183 (name "openblas-ilp64")
3175 (supported-systems '("x86_64-linux" "aarch64-linux" "mips64el-linux")) 3184 (supported-systems '("x86_64-linux" "aarch64-linux" "mips64el-linux"))
3176 (arguments 3185 (arguments
@@ -3181,6 +3190,24 @@ parts of it.")
3181 (synopsis "Optimized BLAS library based on GotoBLAS (ILP64 version)") 3190 (synopsis "Optimized BLAS library based on GotoBLAS (ILP64 version)")
3182 (license license:bsd-3))) 3191 (license license:bsd-3)))
3183 3192
3193(define openblas/fixed-num-threads
3194 ;; TODO: Move that to 'openblas' proper on the next rebuild cycle.
3195 (package
3196 (inherit openblas)
3197 (version (match (string-split (package-version openblas) #\.)
3198 ((numbers ... (= string-length len))
3199 (string-join (append numbers
3200 (list (make-string len #\a)))
3201 "."))))
3202 (arguments
3203 (substitute-keyword-arguments (package-arguments openblas)
3204 ((#:make-flags flags ''())
3205 ;; This is the maximum number of threads OpenBLAS will ever use (that
3206 ;; is, if $OPENBLAS_NUM_THREADS is greater than that, then NUM_THREADS
3207 ;; is used.) If we don't set it, the makefile sets it to the number
3208 ;; of cores of the build machine, which is obviously wrong.
3209 `(cons "NUM_THREADS=128" ,flags))))))
3210
3184(define* (make-blis implementation #:optional substitutable?) 3211(define* (make-blis implementation #:optional substitutable?)
3185 "Return a BLIS package with the given IMPLEMENTATION (see config/ in the 3212 "Return a BLIS package with the given IMPLEMENTATION (see config/ in the
3186source tree for a list of implementations.) 3213source tree for a list of implementations.)
@@ -3837,8 +3864,8 @@ set.")
3837 `(("doc++" ,doc++) 3864 `(("doc++" ,doc++)
3838 ("netpbm" ,netpbm) 3865 ("netpbm" ,netpbm)
3839 ("perl" ,perl) ; needed to run 'ppmquant' during tests 3866 ("perl" ,perl) ; needed to run 'ppmquant' during tests
3840 ("texlive" ,(texlive-union (list texlive-generic-xypic 3867 ("texlive" ,(texlive-union (list texlive-xypic
3841 texlive-fonts-xypic 3868 texlive-cm
3842 texlive-latex-hyperref 3869 texlive-latex-hyperref
3843 texlive-bibtex))) 3870 texlive-bibtex)))
3844 ("ghostscript" ,ghostscript))) 3871 ("ghostscript" ,ghostscript)))
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 7bdd122f2b8..e1cb736b82f 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -1,5 +1,5 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2017,2018 Jan Nieuwenhuizen <janneke@gnu.org> 2;;; Copyright © 2017, 2018, 2019 Jan Nieuwenhuizen <janneke@gnu.org>
3;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> 3;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
4;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> 4;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
5;;; 5;;;
@@ -62,14 +62,14 @@ extensive examples, including parsers for the Javascript and C99 languages.")
62(define-public nyacc 62(define-public nyacc
63 (package 63 (package
64 (inherit nyacc-0.86) 64 (inherit nyacc-0.86)
65 (version "0.94.0") 65 (version "0.99.0")
66 (source (origin 66 (source (origin
67 (method url-fetch) 67 (method url-fetch)
68 (uri (string-append "mirror://savannah/nyacc/nyacc-" 68 (uri (string-append "mirror://savannah/nyacc/nyacc-"
69 version ".tar.gz")) 69 version ".tar.gz"))
70 (sha256 70 (sha256
71 (base32 71 (base32
72 "12qnzwm1n3j8z7hbr9hy2wka9a1aasm2rvnpnvdxkjcsbdzj8fn4")) 72 "0hl5qxx19i4x1r0839sxm19ziqq65g4hy97yik81cc2yb9yvgyv3"))
73 (modules '((guix build utils))) 73 (modules '((guix build utils)))
74 (snippet 74 (snippet
75 '(begin 75 '(begin
@@ -93,22 +93,19 @@ extensive examples, including parsers for the Javascript and C99 languages.")
93(define-public mes 93(define-public mes
94 (package 94 (package
95 (name "mes") 95 (name "mes")
96 (version "0.19") 96 (version "0.20")
97 (source (origin 97 (source (origin
98 (method url-fetch) 98 (method url-fetch)
99 (uri (string-append "mirror://gnu/mes/" 99 (uri (string-append "mirror://gnu/mes/"
100 "mes-" version ".tar.gz")) 100 "mes-" version ".tar.gz"))
101 (sha256 101 (sha256
102 (base32 102 (base32
103 "15h4yhaywdc0djpjlin2jz1kzahpqxfki0r0aav1qm9nxxmnp1l0")))) 103 "04pajp8v31na34ls4730ig5f6miiplhdvkmsb9ls1b8bbmw2vb4n"))))
104 (build-system gnu-build-system) 104 (build-system gnu-build-system)
105 (supported-systems '("i686-linux" "x86_64-linux")) 105 (supported-systems '("i686-linux" "x86_64-linux"))
106 (propagated-inputs 106 (propagated-inputs
107 `(("mescc-tools" ,mescc-tools) 107 `(("mescc-tools" ,mescc-tools)
108 108 ("nyacc" ,nyacc)))
109 ;; XXX: MesCC appears to enter an infinite loop (?) while building
110 ;; crt1.o when we switch to nyacc 0.94.
111 ("nyacc" ,nyacc-0.86)))
112 (native-inputs 109 (native-inputs
113 `(("guile" ,guile-2.2) 110 `(("guile" ,guile-2.2)
114 ,@(let ((target-system (or (%current-target-system) 111 ,@(let ((target-system (or (%current-target-system)
@@ -168,3 +165,19 @@ linker, the blood-elf symbol table generator, the kaem shell, exec_enable and
168get_machine.") 165get_machine.")
169 (home-page "https://savannah.nongnu.org/projects/mescc-tools") 166 (home-page "https://savannah.nongnu.org/projects/mescc-tools")
170 (license gpl3+)))) 167 (license gpl3+))))
168
169(define-public mescc-tools-0.6.1
170 (package
171 (inherit mescc-tools)
172 (name "mescc-tools")
173 (version "0.6.1")
174 (source (origin
175 (method url-fetch)
176 (uri (string-append
177 "http://git.savannah.nongnu.org/cgit/mescc-tools.git/snapshot/"
178 name "-Release_" version
179 ".tar.gz"))
180 (file-name (string-append name "-" version ".tar.gz"))
181 (sha256
182 (base32
183 "06jpvq6xfjzn2al6b4rdwd3zv3h4cvilc4n9gqcnjr9cr6wjpw2n"))))))
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index db6c42f6b11..2b30308861b 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -22,6 +22,7 @@
22;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com> 22;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com>
23;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si> 23;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
24;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org> 24;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
25;;; Copyright © 2019 raingloom <raingloom@protonmail.com>
25;;; 26;;;
26;;; This file is part of GNU Guix. 27;;; This file is part of GNU Guix.
27;;; 28;;;
@@ -2137,7 +2138,7 @@ capabilities, custom envelopes, effects, etc.")
2137(define-public yoshimi 2138(define-public yoshimi
2138 (package 2139 (package
2139 (name "yoshimi") 2140 (name "yoshimi")
2140 (version "1.6.0") 2141 (version "1.6.0.1")
2141 (source (origin 2142 (source (origin
2142 (method url-fetch) 2143 (method url-fetch)
2143 (uri (string-append "mirror://sourceforge/yoshimi/" 2144 (uri (string-append "mirror://sourceforge/yoshimi/"
@@ -2145,10 +2146,10 @@ capabilities, custom envelopes, effects, etc.")
2145 "/yoshimi-" version ".tar.bz2")) 2146 "/yoshimi-" version ".tar.bz2"))
2146 (sha256 2147 (sha256
2147 (base32 2148 (base32
2148 "0bcc5spnq73yp1fmm367d1mxcswqkmzs3cnpb4cxr513ir98sa50")))) 2149 "140f2k4akj39pny8c7i794q125415gyvmy4rday0il5ncp3glik4"))))
2149 (build-system cmake-build-system) 2150 (build-system cmake-build-system)
2150 (arguments 2151 (arguments
2151 `(#:tests? #f ; there are no tests 2152 `(#:tests? #f ; there are no tests
2152 #:configure-flags 2153 #:configure-flags
2153 (list (string-append "-DCMAKE_INSTALL_DATAROOTDIR=" 2154 (list (string-append "-DCMAKE_INSTALL_DATAROOTDIR="
2154 (assoc-ref %outputs "out") "/share")) 2155 (assoc-ref %outputs "out") "/share"))
@@ -4521,3 +4522,65 @@ discard bad quality ones.
4521controller.") 4522controller.")
4522 (home-page "https://github.com/charlesfleche/lpd8editor") 4523 (home-page "https://github.com/charlesfleche/lpd8editor")
4523 (license license:expat))) 4524 (license license:expat)))
4525
4526(define-public fmit
4527 (package
4528 (name "fmit")
4529 (version "1.2.6")
4530 (source (origin
4531 (method git-fetch)
4532 (uri (git-reference
4533 (url "https://github.com/gillesdegottex/fmit/")
4534 (commit (string-append "v" version))))
4535 (file-name (git-file-name name version))
4536 (sha256
4537 (base32
4538 "03nzkig5mw2rqwhwmg0qvc5cnk9bwh2wp13jh0mdrr935w0587mz"))))
4539 (build-system gnu-build-system)
4540 (arguments
4541 '(#:phases
4542 (modify-phases %standard-phases
4543 (delete 'configure)
4544 (add-before 'build 'qmake
4545 (lambda _
4546 (let ((out (assoc-ref %outputs "out")))
4547 (invoke "qmake"
4548 "fmit.pro"
4549 (string-append "PREFIX=" out)
4550 (string-append "PREFIXSHORTCUT=" out)
4551 "CONFIG+=acs_qt acs_alsa acs_jack acs_portaudio"))))
4552 (add-after 'install 'wrap-executable
4553 (lambda* (#:key inputs outputs #:allow-other-keys)
4554 (let ((out (assoc-ref outputs "out")))
4555 (wrap-program (string-append out "/bin/fmit")
4556 `("QT_PLUGIN_PATH" ":" prefix
4557 ,(map (lambda (label)
4558 (string-append (assoc-ref inputs label)
4559 "/lib/qt5/plugins"))
4560 '("qtbase" "qtmultimedia" "qtsvg")))
4561 `("QML2_IMPORT_PATH" ":" prefix
4562 ,(map (lambda (label)
4563 (string-append (assoc-ref inputs label)
4564 "/lib/qt5/qml"))
4565 '("qtmultimedia"))))
4566 #t))))))
4567 (inputs
4568 `(("alsa-lib" ,alsa-lib)
4569 ("fftw" ,fftw)
4570 ("jack" ,jack-1)
4571 ("portaudio" ,portaudio)
4572 ("qtbase" ,qtbase)
4573 ("qtmultimedia" ,qtmultimedia)
4574 ("qtsvg" ,qtsvg)))
4575 (native-inputs
4576 `(("gettext" ,gnu-gettext)
4577 ("hicolor-icon-theme" ,hicolor-icon-theme)
4578 ("itstool" ,itstool)
4579 ("qttools" ,qttools)))
4580 (synopsis "Musical instrument tuner")
4581 (description "FMIT is a graphical utility for tuning musical instruments,
4582with error and volume history, and advanced features.")
4583 (home-page "https://gillesdegottex.github.io/fmit/")
4584 ;; Most of the code is under GPL2+, but some abstract or helper classes
4585 ;; are under LGPL2.1.
4586 (license (list license:gpl2+ license:lgpl2.1))))
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index ee7d65fc06b..bfa901a84e8 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -284,7 +284,7 @@ transparently check connection attempts against an access control list.")
284 (base32 284 (base32
285 "0qzp80ky4y2k7k1ya09v9gkivvfbz2km813snrb8jhnn634bbmzb")))) 285 "0qzp80ky4y2k7k1ya09v9gkivvfbz2km813snrb8jhnn634bbmzb"))))
286 (build-system gnu-build-system) 286 (build-system gnu-build-system)
287 (home-page "http://zeromq.org") 287 (home-page "https://zeromq.org")
288 (synopsis "Library for message-based applications") 288 (synopsis "Library for message-based applications")
289 (description 289 (description
290 "The 0MQ lightweight messaging kernel is a library which extends the 290 "The 0MQ lightweight messaging kernel is a library which extends the
@@ -1968,14 +1968,14 @@ displays the results in real time.")
1968(define-public strongswan 1968(define-public strongswan
1969 (package 1969 (package
1970 (name "strongswan") 1970 (name "strongswan")
1971 (version "5.8.0") 1971 (version "5.8.1")
1972 (source 1972 (source
1973 (origin 1973 (origin
1974 (method url-fetch) 1974 (method url-fetch)
1975 (uri (string-append "https://download.strongswan.org/strongswan-" 1975 (uri (string-append "https://download.strongswan.org/strongswan-"
1976 version ".tar.bz2")) 1976 version ".tar.bz2"))
1977 (sha256 1977 (sha256
1978 (base32 "0cq9m86ydd2i0awxkv4a256f4926p2f9pzlisyskl9fngl6f3c8m")))) 1978 (base32 "034rd6kr1bmnvj8rg2kcxdjb0cgj3dn9310mmm94j1awxan71byr"))))
1979 (build-system gnu-build-system) 1979 (build-system gnu-build-system)
1980 (arguments 1980 (arguments
1981 `(#:phases 1981 `(#:phases
@@ -1998,7 +1998,7 @@ displays the results in real time.")
1998 #t))) 1998 #t)))
1999 #:configure-flags 1999 #:configure-flags
2000 (list 2000 (list
2001 ;; Disable bsd-4 licensed plugins 2001 ;; Disable bsd-4 licensed plugins.
2002 "--disable-des" 2002 "--disable-des"
2003 "--disable-blowfish"))) 2003 "--disable-blowfish")))
2004 (inputs 2004 (inputs
diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm
index 419b6d7321d..6942ecec2f1 100644
--- a/gnu/packages/ntp.scm
+++ b/gnu/packages/ntp.scm
@@ -5,6 +5,7 @@
5;;; Copyright © 2015, 2018 Ludovic Courtès <ludo@gnu.org> 5;;; Copyright © 2015, 2018 Ludovic Courtès <ludo@gnu.org>
6;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> 6;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
7;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> 7;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
8;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
8;;; 9;;;
9;;; This file is part of GNU Guix. 10;;; This file is part of GNU Guix.
10;;; 11;;;
@@ -108,8 +109,11 @@ computers over a network.")
108 "0fn12i4kzsi0zkr4qp3dp9bycmirnfapajqvdfx02zhr4hanj0kv")))) 109 "0fn12i4kzsi0zkr4qp3dp9bycmirnfapajqvdfx02zhr4hanj0kv"))))
109 (build-system gnu-build-system) 110 (build-system gnu-build-system)
110 (arguments 111 (arguments
111 '(#:configure-flags '("--with-privsep-user=ntpd" 112 '(#:configure-flags `( "--with-privsep-user=ntpd"
112 "--localstatedir=/var") 113 "--localstatedir=/var"
114 ,(string-append "--with-cacert="
115 (assoc-ref %build-inputs "libressl")
116 "/etc/ssl/cert.pem"))
113 #:phases 117 #:phases
114 (modify-phases %standard-phases 118 (modify-phases %standard-phases
115 (add-after 'unpack 'modify-install-locations 119 (add-after 'unpack 'modify-install-locations
diff --git a/gnu/packages/ocr.scm b/gnu/packages/ocr.scm
index 2808359ca2a..1266e7e419a 100644
--- a/gnu/packages/ocr.scm
+++ b/gnu/packages/ocr.scm
@@ -2,6 +2,7 @@
2;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> 2;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
3;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> 3;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
4;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> 4;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
5;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com>
5;;; 6;;;
6;;; This file is part of GNU Guix. 7;;; This file is part of GNU Guix.
7;;; 8;;;
@@ -22,8 +23,11 @@
22 #:use-module ((guix licenses) #:prefix license:) 23 #:use-module ((guix licenses) #:prefix license:)
23 #:use-module (guix packages) 24 #:use-module (guix packages)
24 #:use-module (guix download) 25 #:use-module (guix download)
26 #:use-module (guix git-download)
25 #:use-module (guix build-system gnu) 27 #:use-module (guix build-system gnu)
28 #:use-module (guix build-system python)
26 #:use-module (gnu packages compression) 29 #:use-module (gnu packages compression)
30 #:use-module (gnu packages python)
27 #:use-module (gnu packages image)) 31 #:use-module (gnu packages image))
28 32
29(define-public ocrad 33(define-public ocrad
@@ -76,3 +80,74 @@ positional information and page layout analysis. Several image formats are
76supported through the Leptonica library. It can also detect whether text is 80supported through the Leptonica library. It can also detect whether text is
77monospaced or proportional.") 81monospaced or proportional.")
78 (license license:asl2.0))) 82 (license license:asl2.0)))
83
84(define-public zinnia
85 (let* ((commit "581faa8f6f15e4a7b21964be3a5ec36265c80e5b")
86 (revision "1")
87 ;; version copied from 'configure.in'
88 (version (git-version "0.07" revision commit)))
89 (package
90 (name "zinnia")
91 (version version)
92 (source
93 (origin
94 (method git-fetch)
95 (uri (git-reference
96 (url "https://github.com/taku910/zinnia.git")
97 (commit commit)))
98 (sha256
99 (base32
100 "1izjy5qw6swg0rs2ym2i72zndb90mwrfbd1iv8xbpwckbm4899lg"))
101 (file-name (git-file-name name version))
102 (modules '((guix build utils)
103 (ice-9 ftw)
104 (srfi srfi-26)))
105 (snippet ; remove unnecessary files with potentially different license
106 '(begin
107 (for-each delete-file-recursively
108 (scandir "."
109 (negate (cut member <> '("zinnia"
110 "." "..")))))
111 #t))))
112 (build-system gnu-build-system)
113 (arguments
114 `(#:phases
115 (modify-phases %standard-phases
116 (replace 'bootstrap
117 (lambda _
118 (chdir "zinnia")
119 (for-each make-file-writable
120 '("config.log" "config.status"))
121 #t)))))
122 (home-page "https://taku910.github.io/zinnia/")
123 (synopsis "Online hand recognition system with machine learning")
124 (description
125 "Zinnia is a simple, customizable and portable online hand recognition
126system based on Support Vector Machines. Zinnia simply receives user pen
127strokes as a sequence of coordinate data and outputs n-best characters sorted
128by SVM confidence. To keep portability, Zinnia doesn't have any rendering
129functionality. In addition to recognition, Zinnia provides training module
130that allows us to create any hand-written recognition systems with low-cost.")
131 (license (list license:bsd-3 ; all files except...
132 (license:non-copyleft ; some autotools related files
133 "file://zinnia/aclocal.m4")
134 license:x11 ; 'install-sh'
135 license:public-domain))))) ; 'install-sh'
136
137;;; python 2 bindings, license under the same terms as zinnia
138(define-public python2-zinnia
139 (package
140 (inherit zinnia)
141 (name "python2-zinnia")
142 (build-system python-build-system)
143 (arguments
144 `(#:python ,python-2 ; CObject API is used, it was removed in Python 3.2
145 #:tests? #f ; avoid circular dependency on tegaki-zinnia-japanese
146 #:phases
147 (modify-phases %standard-phases
148 (add-after 'unpack 'chdir
149 (lambda _
150 (chdir "zinnia/python")
151 #t)))))
152 (inputs
153 `(("zinnia" ,zinnia)))))
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 57589d852c5..d396f001ef1 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -31,6 +31,7 @@
31(define-module (gnu packages package-management) 31(define-module (gnu packages package-management)
32 #:use-module (gnu packages) 32 #:use-module (gnu packages)
33 #:use-module (gnu packages acl) 33 #:use-module (gnu packages acl)
34 #:use-module (gnu packages admin)
34 #:use-module (gnu packages attr) 35 #:use-module (gnu packages attr)
35 #:use-module (gnu packages avahi) 36 #:use-module (gnu packages avahi)
36 #:use-module (gnu packages autotools) 37 #:use-module (gnu packages autotools)
@@ -39,6 +40,7 @@
39 #:use-module (gnu packages bdw-gc) 40 #:use-module (gnu packages bdw-gc)
40 #:use-module (gnu packages bison) 41 #:use-module (gnu packages bison)
41 #:use-module (gnu packages bootstrap) ;for 'bootstrap-guile-origin' 42 #:use-module (gnu packages bootstrap) ;for 'bootstrap-guile-origin'
43 #:use-module (gnu packages cdrom)
42 #:use-module (gnu packages check) 44 #:use-module (gnu packages check)
43 #:use-module (gnu packages compression) 45 #:use-module (gnu packages compression)
44 #:use-module (gnu packages cpio) 46 #:use-module (gnu packages cpio)
@@ -48,6 +50,7 @@
48 #:use-module (gnu packages docbook) 50 #:use-module (gnu packages docbook)
49 #:use-module (gnu packages file) 51 #:use-module (gnu packages file)
50 #:use-module (gnu packages gettext) 52 #:use-module (gnu packages gettext)
53 #:use-module (gnu packages ghostscript)
51 #:use-module (gnu packages glib) 54 #:use-module (gnu packages glib)
52 #:use-module (gnu packages gnome) 55 #:use-module (gnu packages gnome)
53 #:use-module (gnu packages gnupg) 56 #:use-module (gnu packages gnupg)
@@ -55,11 +58,19 @@
55 #:use-module (gnu packages gtk) 58 #:use-module (gnu packages gtk)
56 #:use-module (gnu packages guile) 59 #:use-module (gnu packages guile)
57 #:use-module (gnu packages guile-xyz) 60 #:use-module (gnu packages guile-xyz)
61 #:use-module (gnu packages haskell)
62 #:use-module (gnu packages image)
63 #:use-module (gnu packages imagemagick)
64 #:use-module (gnu packages java)
58 #:use-module (gnu packages linux) 65 #:use-module (gnu packages linux)
59 #:use-module (gnu packages lisp) 66 #:use-module (gnu packages lisp)
67 #:use-module (gnu packages llvm)
60 #:use-module (gnu packages man) 68 #:use-module (gnu packages man)
69 #:use-module (gnu packages mono)
70 #:use-module (gnu packages nettle)
61 #:use-module (gnu packages nss) 71 #:use-module (gnu packages nss)
62 #:use-module (gnu packages patchutils) 72 #:use-module (gnu packages patchutils)
73 #:use-module (gnu packages pdf)
63 #:use-module (gnu packages perl) 74 #:use-module (gnu packages perl)
64 #:use-module (gnu packages perl-check) 75 #:use-module (gnu packages perl-check)
65 #:use-module (gnu packages pkg-config) 76 #:use-module (gnu packages pkg-config)
@@ -71,8 +82,10 @@
71 #:use-module (gnu packages sqlite) 82 #:use-module (gnu packages sqlite)
72 #:use-module (gnu packages ssh) 83 #:use-module (gnu packages ssh)
73 #:use-module (gnu packages texinfo) 84 #:use-module (gnu packages texinfo)
85 #:use-module (gnu packages textutils)
74 #:use-module (gnu packages time) 86 #:use-module (gnu packages time)
75 #:use-module (gnu packages tls) 87 #:use-module (gnu packages tls)
88 #:use-module (gnu packages video)
76 #:use-module (gnu packages vim) 89 #:use-module (gnu packages vim)
77 #:use-module (gnu packages virtualization) 90 #:use-module (gnu packages virtualization)
78 #:use-module (gnu packages web) 91 #:use-module (gnu packages web)
@@ -110,8 +123,8 @@
110 ;; Note: the 'update-guix-package.scm' script expects this definition to 123 ;; Note: the 'update-guix-package.scm' script expects this definition to
111 ;; start precisely like this. 124 ;; start precisely like this.
112 (let ((version "1.0.1") 125 (let ((version "1.0.1")
113 (commit "c902458863d1d341ffd74970b75e69c2bb848183") 126 (commit "0ed97e69805253656df929a6ad678016aa81f08a")
114 (revision 4)) 127 (revision 6))
115 (package 128 (package
116 (name "guix") 129 (name "guix")
117 130
@@ -127,7 +140,7 @@
127 (commit commit))) 140 (commit commit)))
128 (sha256 141 (sha256
129 (base32 142 (base32
130 "0w93qjgy9n0qqyij12s7hm7fl4wb6h99bmfril4cqf4ynckpdvbb")) 143 "1h2qlbbdqi72jslx17gp2cak5494nbm8j44rz57lnplnfcn6iwaw"))
131 (file-name (string-append "guix-" version "-checkout")))) 144 (file-name (string-append "guix-" version "-checkout"))))
132 (build-system gnu-build-system) 145 (build-system gnu-build-system)
133 (arguments 146 (arguments
@@ -342,6 +355,19 @@ the Nix package manager.")
342 #f) 355 #f)
343 ((#:phases phases '%standard-phases) 356 ((#:phases phases '%standard-phases)
344 `(modify-phases ,phases 357 `(modify-phases ,phases
358 (add-after 'unpack 'change-default-guix
359 (lambda _
360 ;; We need to tell 'guix-daemon' which 'guix' command to use.
361 ;; Here we use a questionable hack where we hard-code root's
362 ;; current guix, which could be wrong (XXX). Note that scripts
363 ;; like 'guix perform-download' do not run as root so we assume
364 ;; that they have access to /var/guix/profiles/per-user/root.
365 (substitute* "nix/libstore/globals.cc"
366 (("guixProgram = (.*)nixBinDir + \"/guix\"" _ before)
367 (string-append "guixProgram = " before
368 "/var/guix/profiles/per-user/root\
369/current-guix/bin/guix")))
370 #t))
345 (replace 'build 371 (replace 'build
346 (lambda _ 372 (lambda _
347 (invoke "make" "nix/libstore/schema.sql.hh") 373 (invoke "make" "nix/libstore/schema.sql.hh")
@@ -351,19 +377,7 @@ the Nix package manager.")
351 (delete 'copy-bootstrap-guile) 377 (delete 'copy-bootstrap-guile)
352 (replace 'install 378 (replace 'install
353 (lambda* (#:key outputs #:allow-other-keys) 379 (lambda* (#:key outputs #:allow-other-keys)
354 (invoke "make" "install-binPROGRAMS" 380 (invoke "make" "install-binPROGRAMS")))
355 "install-nodist_pkglibexecSCRIPTS")
356
357 ;; We need to tell 'guix-daemon' which 'guix' command to use.
358 ;; Here we use a questionable hack where we hard-code root's
359 ;; current guix, which could be wrong (XXX). Note that scripts
360 ;; like 'guix perform-download' do not run as root so we assume
361 ;; that they have access to /var/guix/profiles/per-user/root.
362 (let ((out (assoc-ref outputs "out")))
363 (substitute* (find-files (string-append out "/libexec"))
364 (("exec \".*/bin/guix\"")
365 "exec \"${GUIX:-/var/guix/profiles/per-user/root/current-guix/bin/guix}\""))
366 #t)))
367 (delete 'wrap-program))))))) 381 (delete 'wrap-program)))))))
368 382
369(define-public guile2.0-guix 383(define-public guile2.0-guix
@@ -544,7 +558,7 @@ transactions from C or Python.")
544 (license license:gpl2+))) 558 (license license:gpl2+)))
545 559
546(define-public diffoscope 560(define-public diffoscope
547 (let ((version "122")) 561 (let ((version "123"))
548 (package 562 (package
549 (name "diffoscope") 563 (name "diffoscope")
550 (version version) 564 (version version)
@@ -556,7 +570,7 @@ transactions from C or Python.")
556 (file-name (git-file-name name version)) 570 (file-name (git-file-name name version))
557 (sha256 571 (sha256
558 (base32 572 (base32
559 "1pwddknk8qyv88ba63why8vbnlc14b47434lv4ijx49m7ya3zfvg")))) 573 "11bxms5rkhi0v4pxx29v4qgvhp3fmf0fkzci6gn5xcv4fl1zy4wj"))))
560 (build-system python-build-system) 574 (build-system python-build-system)
561 (arguments 575 (arguments
562 `(#:phases (modify-phases %standard-phases 576 `(#:phases (modify-phases %standard-phases
@@ -573,6 +587,13 @@ transactions from C or Python.")
573 (lambda _ 587 (lambda _
574 (delete-file "tests/comparators/test_berkeley_db.py") 588 (delete-file "tests/comparators/test_berkeley_db.py")
575 #t)) 589 #t))
590 ;; Test is dynamically generated and may have false
591 ;; negatives with different ocaml versions. Further
592 ;; background in: https://bugs.debian.org/939386
593 (add-after 'unpack 'remove-ocaml-test
594 (lambda _
595 (delete-file "tests/comparators/test_ocaml.py")
596 #t))
576 (add-after 'unpack 'embed-tool-references 597 (add-after 'unpack 'embed-tool-references
577 (lambda* (#:key inputs #:allow-other-keys) 598 (lambda* (#:key inputs #:allow-other-keys)
578 (substitute* "diffoscope/comparators/utils/compare.py" 599 (substitute* "diffoscope/comparators/utils/compare.py"
@@ -592,10 +613,9 @@ transactions from C or Python.")
592 #t)) 613 #t))
593 (add-before 'check 'writable-test-data 614 (add-before 'check 'writable-test-data
594 (lambda _ 615 (lambda _
595 ;; tests/comparators/test_elf.py needs write access to 616 ;; tests may need needs write access to tests
596 ;; test data 617 ;; directory
597 (make-file-writable 618 (for-each make-file-writable (find-files "tests"))
598 "tests/data/ignore_readelf_errors_expected_diff")
599 #t)) 619 #t))
600 (add-before 'check 'delete-failing-test 620 (add-before 'check 'delete-failing-test
601 (lambda _ 621 (lambda _
@@ -612,7 +632,43 @@ transactions from C or Python.")
612 ("xxd" ,xxd))) 632 ("xxd" ,xxd)))
613 ;; Below are modules used for tests. 633 ;; Below are modules used for tests.
614 (native-inputs `(("python-pytest" ,python-pytest) 634 (native-inputs `(("python-pytest" ,python-pytest)
615 ("python-chardet" ,python-chardet))) 635 ("python-chardet" ,python-chardet)
636 ;; test suite skips tests when tool is missing
637 ("bdb" ,bdb)
638 ("binutils" ,binutils)
639 ("bzip2" ,bzip2)
640 ("cdrtools" ,cdrtools)
641 ("colord" ,colord)
642 ("cpio" ,cpio)
643 ("docx2txt" ,docx2txt)
644 ("e2fsprogs" ,e2fsprogs)
645 ("ffmpeg" ,ffmpeg)
646 ("gettext" ,gettext-minimal)
647 ("ghc" ,ghc)
648 ("ghostscript" ,ghostscript)
649 ("giflib:bin" ,giflib "bin")
650 ("gnumeric" ,gnumeric)
651 ("gnupg" ,gnupg)
652 ("imagemagick" ,imagemagick)
653 ("libarchive" ,libarchive)
654 ("llvm" ,llvm)
655 ("lz4" ,lz4)
656 ("mono" ,mono)
657 ("odt2txt" ,odt2txt)
658 ;; no unversioned openjdk available
659 ("openjdk:jdk" ,openjdk12 "jdk")
660 ("openssh" ,openssh)
661 ("pgpdump" ,pgpdump)
662 ("poppler" ,poppler)
663 ("rpm" ,rpm)
664 ("sng" ,sng)
665 ("sqlite" ,sqlite)
666 ("squashfs-tools" ,squashfs-tools)
667 ("tcpdump" ,tcpdump)
668 ("unzip" ,unzip)
669 ("xxd" ,xxd)
670 ("xz" ,xz)
671 ("zip" ,(@ (gnu packages compression) zip))))
616 (home-page "https://diffoscope.org/") 672 (home-page "https://diffoscope.org/")
617 (synopsis "Compare files, archives, and directories in depth") 673 (synopsis "Compare files, archives, and directories in depth")
618 (description 674 (description
diff --git a/gnu/packages/patches/cmake-curl-certificates.patch b/gnu/packages/patches/cmake-curl-certificates.patch
new file mode 100644
index 00000000000..36252083f80
--- /dev/null
+++ b/gnu/packages/patches/cmake-curl-certificates.patch
@@ -0,0 +1,40 @@
1By default commands such as "ctest" would not look for certificates
2at all: <https://issues.guix.gnu.org/issue/37371>.
3
4This changes CMake such that commands honor SSL_CERT_FILE and SSL_CERT_DIR
5as well as /etc/ssl/certs.
6
7--- cmake-3.13.1/Source/cmCurl.cxx 2019-09-10 17:27:36.926907260 +0200
8+++ cmake-3.13.1/Source/cmCurl.cxx 2019-09-10 17:52:35.475903919 +0200
9@@ -4,11 +4,8 @@
10
11 #include "cmThirdParty.h"
12
13-#if !defined(CMAKE_USE_SYSTEM_CURL) && !defined(_WIN32) && \
14- !defined(__APPLE__) && !defined(CURL_CA_BUNDLE) && !defined(CURL_CA_PATH)
15 # define CMAKE_FIND_CAFILE
16 # include "cmSystemTools.h"
17-#endif
18
19 // curl versions before 7.21.5 did not provide this error code
20 #if defined(LIBCURL_VERSION_NUM) && LIBCURL_VERSION_NUM < 0x071505
21@@ -29,6 +26,19 @@ std::string cmCurlSetCAInfo(::CURL* curl
22 ::CURLcode res = ::curl_easy_setopt(curl, CURLOPT_CAINFO, cafile);
23 check_curl_result(res, "Unable to set TLS/SSL Verify CAINFO: ");
24 }
25+
26+ /* Honor the usual environment variables. */
27+ else if (cmSystemTools::GetEnv("SSL_CERT_FILE", e)) {
28+ ::CURLcode res =
29+ ::curl_easy_setopt(curl, CURLOPT_CAINFO, e.c_str());
30+ check_curl_result(res, "Unable to set TLS/SSL Verify CAINFO: ");
31+ }
32+ else if (cmSystemTools::GetEnv("SSL_CERT_DIR", e)) {
33+ ::CURLcode res =
34+ ::curl_easy_setopt(curl, CURLOPT_CAPATH, e.c_str());
35+ check_curl_result(res, "Unable to set TLS/SSL Verify CAINFO: ");
36+ }
37+
38 #ifdef CMAKE_FIND_CAFILE
39 # define CMAKE_CAFILE_FEDORA "/etc/pki/tls/certs/ca-bundle.crt"
40 else if (cmSystemTools::FileExists(CMAKE_CAFILE_FEDORA, true)) {
diff --git a/gnu/packages/patches/tipp10-fix-compiling.patch b/gnu/packages/patches/tipp10-fix-compiling.patch
index 4c206d4d837..3a34a98b224 100644
--- a/gnu/packages/patches/tipp10-fix-compiling.patch
+++ b/gnu/packages/patches/tipp10-fix-compiling.patch
@@ -204,8 +204,7 @@ https://sources.debian.net/data/main/t/tipp10/2.1.0-2/debian/patches/0001-FixCom
204 Name=TIPP10 204 Name=TIPP10
205 Comment=Touch Typing Tutor 205 Comment=Touch Typing Tutor
206 Comment[de]=10-Finger-Schreibtrainer 206 Comment[de]=10-Finger-Schreibtrainer
207-Exec=tipp10 207 Exec=tipp10
208+Exec=/usr/bin/tipp10
209 Icon=tipp10.png 208 Icon=tipp10.png
210 Terminal=false 209 Terminal=false
211 Type=Application 210 Type=Application
diff --git a/gnu/packages/patches/weechat-python.patch b/gnu/packages/patches/weechat-python.patch
deleted file mode 100644
index 8182636ecba..00000000000
--- a/gnu/packages/patches/weechat-python.patch
+++ /dev/null
@@ -1,40 +0,0 @@
1Get Python LDFLAGS from 'pkg-config'.
2
3The other approach is more complex and gets it wrong: it returns
4"-L/path/to/python/lib/python-2.7.10/lib/python2.7/config -lpython -lwhatever";
5since that config/ sub-directory contains libpython2.7.a, we end up
6statically linking Python in Weechat's python.so, which we do not want.
7
8--- weechat-1.3/configure.ac 2015-08-16 08:27:07.000000000 +0200
9+++ weechat-1.3/configure.ac 2015-11-29 18:18:52.975197048 +0100
10@@ -535,29 +535,7 @@ if test "x$enable_python" = "xyes" ; the
11 if test -r "$PYTHON_INCLUDE/Python.h"; then
12 PYTHON_CFLAGS="-I$PYTHON_INCLUDE"
13 AC_MSG_RESULT(found)
14- PYTHON_LIB=`$PYTHON -c "import sys, distutils.sysconfig; sys.stdout.write(distutils.sysconfig.get_config_var('LIBPL'))"`
15- PYTHON_LFLAGS="-lpython$PYTHON_VERSION "`$PYTHON -c "import sys, distutils.sysconfig; sys.stdout.write(distutils.sysconfig.get_config_var('LIBS')+' '+distutils.sysconfig.get_config_var('SYSLIBS')+' '+distutils.sysconfig.get_config_var('LINKFORSHARED'))"`
16- AC_MSG_CHECKING(for Python library)
17- if test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.so"; then
18- PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS"
19- AC_MSG_RESULT(found)
20- elif test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.a"; then
21- PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS"
22- AC_MSG_RESULT(found)
23- elif test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.dll.a"; then
24- PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS"
25- AC_MSG_RESULT(found)
26- elif test -r "$PYTHON_SYSPREFIX/lib/libpython$PYTHON_VERSION.so"; then
27- PYTHON_LFLAGS="-L$PYTHON_SYSPREFIX/lib/ $PYTHON_LFLAGS"
28- AC_MSG_RESULT(found)
29- else
30- AC_MSG_WARN([
31-*** Python library couldn't be found on your system.
32-*** Try to install it with your software package manager.
33-*** WeeChat will be built without Python support.])
34- enable_python="no"
35- not_found="$not_found python"
36- fi
37+ PYTHON_LFLAGS=`pkg-config python2 --libs`
38 else
39 AC_MSG_WARN([
40 *** Python header files couldn't be found on your system.
diff --git a/gnu/packages/perl-compression.scm b/gnu/packages/perl-compression.scm
index ea714922627..d09e68e294c 100644
--- a/gnu/packages/perl-compression.scm
+++ b/gnu/packages/perl-compression.scm
@@ -133,7 +133,7 @@ type by using either Perl modules, or command-line tools on your system.")
133(define-public perl-archive-zip 133(define-public perl-archive-zip
134 (package 134 (package
135 (name "perl-archive-zip") 135 (name "perl-archive-zip")
136 (version "1.64") 136 (version "1.65")
137 (source 137 (source
138 (origin 138 (origin
139 (method url-fetch) 139 (method url-fetch)
@@ -141,8 +141,7 @@ type by using either Perl modules, or command-line tools on your system.")
141 "mirror://cpan/authors/id/P/PH/PHRED/Archive-Zip-" 141 "mirror://cpan/authors/id/P/PH/PHRED/Archive-Zip-"
142 version ".tar.gz")) 142 version ".tar.gz"))
143 (sha256 143 (sha256
144 (base32 144 (base32 "116vcg8x7n92i7cn3bx0xck69mz9vjy0il9i8p7p7lk40kz7jcbl"))))
145 "0zfinh8nx3rxzscp57vq3w8hihpdb0zs67vvalykcf402kr88pyy"))))
146 (build-system perl-build-system) 145 (build-system perl-build-system)
147 (native-inputs 146 (native-inputs
148 ;; For tests. 147 ;; For tests.
diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 676dae54304..b8aaef9b77b 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -2,6 +2,7 @@
2;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> 2;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
3;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> 3;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
4;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> 4;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
5;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
5;;; 6;;;
6;;; This file is part of GNU Guix. 7;;; This file is part of GNU Guix.
7;;; 8;;;
@@ -226,11 +227,27 @@ testing framework.")
226 (base32 227 (base32
227 "03w2zz3crblj1p6i8nq17946hbn3zqp9z7cfnifw47hi4a4fww12")))) 228 "03w2zz3crblj1p6i8nq17946hbn3zqp9z7cfnifw47hi4a4fww12"))))
228 (build-system python-build-system) 229 (build-system python-build-system)
229 (arguments '(#:tests? #f)) ; one test fails; can't find virtualenv 230 (arguments
231 `(#:phases
232 (modify-phases %standard-phases
233 ;; Reference the virtualenv executable directly, to avoid the need
234 ;; for PYTHONPATH, which gets cleared when instantiating a new
235 ;; virtualenv with pytest-virtualenv.
236 (add-after 'unpack 'patch-virtualenv-executable
237 (lambda* (#:key inputs #:allow-other-keys)
238 (let* ((virtualenv (assoc-ref inputs "python-virtualenv"))
239 (virtualenv-bin (string-append virtualenv
240 "/bin/virtualenv")))
241 (substitute* "pytest_virtualenv.py"
242 (("^DEFAULT_VIRTUALENV_FIXTURE_EXECUTABLE.*$")
243 (format #f "DEFAULT_VIRTUALENV_FIXTURE_EXECUTABLE = '~a'"
244 virtualenv-bin)))
245 #t))))))
230 (propagated-inputs 246 (propagated-inputs
231 `(("python-virtualenv" ,python-virtualenv) 247 `(("python-pytest-shutil" ,python-pytest-shutil)
232 ("python-pytest-shutil" ,python-pytest-shutil)
233 ("python-pytest-fixture-config" ,python-pytest-fixture-config))) 248 ("python-pytest-fixture-config" ,python-pytest-fixture-config)))
249 (inputs
250 `(("python-virtualenv" ,python-virtualenv)))
234 (native-inputs 251 (native-inputs
235 `(("python-mock" ,python-mock) 252 `(("python-mock" ,python-mock)
236 ("python-pytest" ,python-pytest) 253 ("python-pytest" ,python-pytest)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 296879f5341..eef2079c196 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -3004,38 +3004,44 @@ Language (TOML) configuration files.")
3004Server (PLS).") 3004Server (PLS).")
3005 (license license:expat))) 3005 (license license:expat)))
3006 3006
3007;; XXX: We must use a non-release version since the latest release version
3008;; requires python-jedi version < 0.15.
3007(define-public python-language-server 3009(define-public python-language-server
3008 (package 3010 (let ((commit "c3cab77a85b1de4af1aec1bafea6a7320d6baec5")
3009 (name "python-language-server") 3011 (revision "1"))
3010 (version "0.26.1") 3012 (package
3011 (source 3013 (name "python-language-server")
3012 (origin 3014 (version (git-version "0.28.3" revision commit))
3013 (method url-fetch) 3015 (source
3014 (uri (pypi-uri "python-language-server" version)) 3016 (origin
3015 (sha256 3017 (method git-fetch)
3016 (base32 3018 (uri (git-reference
3017 "1vs9ckfmm534n1hq3m871916wsjvi5h4gyj6wlzg13ck6506lx0s")))) 3019 (url "https://github.com/palantir/python-language-server.git")
3018 (build-system python-build-system) 3020 (commit commit)))
3019 (propagated-inputs 3021 (sha256
3020 `(("python-pluggy" ,python-pluggy) 3022 (base32
3021 ("python-jsonrpc-server" ,python-jsonrpc-server) 3023 "1q0xdwgln09sh58j0ryygj92hfgdhwcs57zjvqihya23jr5v0bz4"))))
3022 ("python-jedi" ,python-jedi) 3024 (build-system python-build-system)
3023 ("python-yapf" ,python-yapf) 3025 (propagated-inputs
3024 ("python-pyflakes" ,python-pyflakes) 3026 `(("python-pluggy" ,python-pluggy)
3025 ("python-pydocstyle" ,python-pydocstyle) 3027 ("python-jsonrpc-server" ,python-jsonrpc-server)
3026 ("python-pycodestyle" ,python-pycodestyle) 3028 ("python-jedi" ,python-jedi)
3027 ("python-mccabe" ,python-mccabe) 3029 ("python-yapf" ,python-yapf)
3028 ("python-rope" ,python-rope) 3030 ("python-pyflakes" ,python-pyflakes)
3029 ("python-autopep8" ,python-autopep8) 3031 ("python-pydocstyle" ,python-pydocstyle)
3030 ("python-pylint" ,python-pylint))) 3032 ("python-pycodestyle" ,python-pycodestyle)
3031 (home-page "https://github.com/palantir/python-language-server") 3033 ("python-mccabe" ,python-mccabe)
3032 (synopsis "Python implementation of the Language Server Protocol") 3034 ("python-rope" ,python-rope)
3033 (description 3035 ("python-autopep8" ,python-autopep8)
3034 "The Python Language Server (pyls) is an implementation of the Python 3 3036 ("python-pylint" ,python-pylint)))
3037 (home-page "https://github.com/palantir/python-language-server")
3038 (synopsis "Python implementation of the Language Server Protocol")
3039 (description
3040 "The Python Language Server (pyls) is an implementation of the Python 3
3035language specification for the Language Server Protocol (LSP). This tool is 3041language specification for the Language Server Protocol (LSP). This tool is
3036used in text editing environments to provide a complete and integrated 3042used in text editing environments to provide a complete and integrated
3037feature-set for programming Python effectively.") 3043feature-set for programming Python effectively.")
3038 (license license:expat))) 3044 (license license:expat))))
3039 3045
3040(define-public python-black 3046(define-public python-black
3041 (package 3047 (package
@@ -3848,14 +3854,14 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc.
3848(define-public python-matplotlib 3854(define-public python-matplotlib
3849 (package 3855 (package
3850 (name "python-matplotlib") 3856 (name "python-matplotlib")
3851 (version "2.2.3") 3857 (version "3.1.1")
3852 (source 3858 (source
3853 (origin 3859 (origin
3854 (method url-fetch) 3860 (method url-fetch)
3855 (uri (pypi-uri "matplotlib" version)) 3861 (uri (pypi-uri "matplotlib" version))
3856 (sha256 3862 (sha256
3857 (base32 3863 (base32
3858 "1rcc7x9ig3hpchkc4cwdvym3y451w74275fxr455zkfagrsvymbk")))) 3864 "14qc109dibp32xfd9lah54djc0rc76fhbsj9cwyb328lzqmd5sqz"))))
3859 (build-system python-build-system) 3865 (build-system python-build-system)
3860 (propagated-inputs ; the following packages are all needed at run time 3866 (propagated-inputs ; the following packages are all needed at run time
3861 `(("python-cycler" ,python-cycler) 3867 `(("python-cycler" ,python-cycler)
@@ -3872,7 +3878,7 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc.
3872 ;; From version 1.4.0 'matplotlib' makes use of 'cairocffi' instead of 3878 ;; From version 1.4.0 'matplotlib' makes use of 'cairocffi' instead of
3873 ;; 'pycairo'. However, 'pygobject' makes use of a 'pycairo' 'context' 3879 ;; 'pycairo'. However, 'pygobject' makes use of a 'pycairo' 'context'
3874 ;; object. For this reason we need to import both libraries. 3880 ;; object. For this reason we need to import both libraries.
3875 ;; https://pythonhosted.org/cairocffi/cffi_api.html#converting-pycairo 3881 ;; https://cairocffi.readthedocs.io/en/stable/cffi_api.html#converting-pycairo-wrappers-to-cairocffi
3876 ("python-pycairo" ,python-pycairo) 3882 ("python-pycairo" ,python-pycairo)
3877 ("python-cairocffi" ,python-cairocffi))) 3883 ("python-cairocffi" ,python-cairocffi)))
3878 (inputs 3884 (inputs
@@ -3887,11 +3893,59 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc.
3887 ("tk" ,tk))) 3893 ("tk" ,tk)))
3888 (native-inputs 3894 (native-inputs
3889 `(("pkg-config" ,pkg-config) 3895 `(("pkg-config" ,pkg-config)
3890 ("python-nose" ,python-nose) 3896 ("python-pytest" ,python-pytest)
3891 ("python-mock" ,python-mock))) 3897 ("python-mock" ,python-mock)
3898 ("unzip" ,unzip)
3899 ("jquery-ui"
3900 ,(origin
3901 (method url-fetch)
3902 (uri "https://jqueryui.com/resources/download/jquery-ui-1.12.1.zip")
3903 (sha256
3904 (base32
3905 "0kb21xf38diqgxcdi1z3s9ssq36pldvyqxy56hn6pcva6rs3c8zq"))))))
3892 (arguments 3906 (arguments
3893 `(#:phases 3907 `(#:phases
3894 (modify-phases %standard-phases 3908 (modify-phases %standard-phases
3909 ;; XXX We disable all image comparison tests because we're using a
3910 ;; newer version of FreeType than matplotlib expects. This leads to
3911 ;; minor differences throughout the tests.
3912 (add-after 'unpack 'fix-and-disable-failing-tests
3913 (lambda _
3914 (substitute* (append (find-files "lib/matplotlib/tests/"
3915 "test_.*\\.py$")
3916 (find-files "lib/mpl_toolkits/tests"
3917 "test_.*\\.py$"))
3918 (("^from matplotlib" match)
3919 (string-append "import pytest\n" match))
3920 (("( *)@image_comparison" match indent)
3921 (string-append indent
3922 "@pytest.mark.skip(reason=\"unknown minor image differences\")\n"
3923 match)))
3924 (substitute* "lib/matplotlib/tests/test_animation.py"
3925 (("/bin/sh") (which "sh")))
3926 (for-each delete-file
3927 ;; test_normal_axes, test_get_tightbbox_polar
3928 '("lib/matplotlib/tests/test_axes.py"
3929 ;; test_outward_ticks
3930 "lib/matplotlib/tests/test_tightlayout.py"
3931 ;; Fontconfig returns no fonts.
3932 "lib/matplotlib/tests/test_font_manager.py"))
3933 #t))
3934 (add-before 'install 'install-jquery-ui
3935 (lambda* (#:key outputs inputs #:allow-other-keys)
3936 (let ((dir (string-append (assoc-ref outputs "out")
3937 "/lib/python3.7/site-packages/matplotlib/backends/web_backend/")))
3938 (mkdir-p dir)
3939 (invoke "unzip"
3940 (assoc-ref inputs "jquery-ui")
3941 "-d" dir))
3942 #t))
3943 (delete 'check)
3944 (add-after 'install 'check
3945 (lambda* (#:key outputs inputs #:allow-other-keys)
3946 (add-installed-pythonpath inputs outputs)
3947 (invoke "python" "tests.py" "-v"
3948 "-m" "not network")))
3895 (add-before 'build 'configure-environment 3949 (add-before 'build 'configure-environment
3896 (lambda* (#:key outputs inputs #:allow-other-keys) 3950 (lambda* (#:key outputs inputs #:allow-other-keys)
3897 (let ((cairo (assoc-ref inputs "cairo"))) 3951 (let ((cairo (assoc-ref inputs "cairo")))
@@ -3903,8 +3957,8 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc.
3903 (lambda (port) 3957 (lambda (port)
3904 (format port "[directories]~% 3958 (format port "[directories]~%
3905basedirlist = ~a,~a~% 3959basedirlist = ~a,~a~%
3906 [rc_options]~% 3960[packages]~%
3907backend = TkAgg~%" 3961tests = True~%"
3908 (assoc-ref inputs "tcl") 3962 (assoc-ref inputs "tcl")
3909 (assoc-ref inputs "tk"))))) 3963 (assoc-ref inputs "tk")))))
3910 #t))))) 3964 #t)))))
@@ -3923,6 +3977,14 @@ toolkits.")
3923 (let ((matplotlib (package-with-python2 3977 (let ((matplotlib (package-with-python2
3924 (strip-python2-variant python-matplotlib)))) 3978 (strip-python2-variant python-matplotlib))))
3925 (package (inherit matplotlib) 3979 (package (inherit matplotlib)
3980 (version "2.2.3")
3981 (source
3982 (origin
3983 (method url-fetch)
3984 (uri (pypi-uri "matplotlib" version))
3985 (sha256
3986 (base32
3987 "1rcc7x9ig3hpchkc4cwdvym3y451w74275fxr455zkfagrsvymbk"))))
3926 ;; Make sure to use special packages for Python 2 instead 3988 ;; Make sure to use special packages for Python 2 instead
3927 ;; of those automatically rewritten by package-with-python2. 3989 ;; of those automatically rewritten by package-with-python2.
3928 (propagated-inputs 3990 (propagated-inputs
@@ -3946,6 +4008,7 @@ toolkits.")
3946 `(("python-matplotlib" ,python-matplotlib) 4008 `(("python-matplotlib" ,python-matplotlib)
3947 ("python-colorspacious" ,python-colorspacious) 4009 ("python-colorspacious" ,python-colorspacious)
3948 ("python-sphinx" ,python-sphinx) 4010 ("python-sphinx" ,python-sphinx)
4011 ("python-sphinx-copybutton" ,python-sphinx-copybutton)
3949 ("python-sphinx-gallery" ,python-sphinx-gallery) 4012 ("python-sphinx-gallery" ,python-sphinx-gallery)
3950 ("python-numpydoc" ,python-numpydoc) 4013 ("python-numpydoc" ,python-numpydoc)
3951 ("python-ipython" ,python-ipython) 4014 ("python-ipython" ,python-ipython)
@@ -3972,6 +4035,9 @@ toolkits.")
3972 `(#:tests? #f ; we're only generating documentation 4035 `(#:tests? #f ; we're only generating documentation
3973 #:phases 4036 #:phases
3974 (modify-phases %standard-phases 4037 (modify-phases %standard-phases
4038 ;; The tests in python-matplotlib are run after the install phase, so
4039 ;; we need to delete the extra phase here.
4040 (delete 'check)
3975 (replace 'build 4041 (replace 'build
3976 (lambda _ 4042 (lambda _
3977 (chdir "doc") 4043 (chdir "doc")
@@ -4020,7 +4086,12 @@ toolkits.")
4020 (license (package-license python-matplotlib)))) 4086 (license (package-license python-matplotlib))))
4021 4087
4022(define-public python2-matplotlib-documentation 4088(define-public python2-matplotlib-documentation
4023 (package-with-python2 python-matplotlib-documentation)) 4089 (let ((parent (package-with-python2 python-matplotlib-documentation)))
4090 (package
4091 (inherit parent)
4092 (native-inputs
4093 (alist-delete "python-sphinx-copybutton"
4094 (package-native-inputs parent))))))
4024 4095
4025(define-public python-matplotlib-venn 4096(define-public python-matplotlib-venn
4026 (package 4097 (package
@@ -5014,7 +5085,8 @@ releases.")
5014 (outputs '("out" "doc")) 5085 (outputs '("out" "doc"))
5015 (build-system python-build-system) 5086 (build-system python-build-system)
5016 (propagated-inputs 5087 (propagated-inputs
5017 `(("python-appdirs" ,python-appdirs))) 5088 `(("python-appdirs" ,python-appdirs)
5089 ("python-importlib-metadata" ,python-importlib-metadata)))
5018 (native-inputs 5090 (native-inputs
5019 `(("python-setuptools-scm" ,python-setuptools-scm) 5091 `(("python-setuptools-scm" ,python-setuptools-scm)
5020 ("python-sphinx" ,python-sphinx) 5092 ("python-sphinx" ,python-sphinx)
@@ -5447,6 +5519,13 @@ computing.")
5447 (arguments 5519 (arguments
5448 `(#:phases 5520 `(#:phases
5449 (modify-phases %standard-phases 5521 (modify-phases %standard-phases
5522 (add-after 'unpack 'make-docs-reproducible
5523 (lambda _
5524 (substitute* "IPython/sphinxext/ipython_directive.py"
5525 ((".*import datetime") "")
5526 ((".*datetime.datetime.now\\(\\)") "")
5527 (("%timeit") "# %timeit"))
5528 #t))
5450 ;; Tests can only be run after the library has been installed and not 5529 ;; Tests can only be run after the library has been installed and not
5451 ;; within the source directory. 5530 ;; within the source directory.
5452 (delete 'check) 5531 (delete 'check)
@@ -7500,17 +7579,31 @@ serve the same purpose: provide Python bindings for libmagic.")))
7500 (package 7579 (package
7501 (name "python-debian") 7580 (name "python-debian")
7502 (home-page "https://salsa.debian.org/python-debian-team/python-debian") 7581 (home-page "https://salsa.debian.org/python-debian-team/python-debian")
7503 (version "0.1.28") 7582 (version "0.1.36")
7504 (source 7583 (source
7505 (origin 7584 (origin
7506 (method url-fetch) 7585 ;; Use git-fetch, as pypi doesn't include test suite.
7507 (uri (pypi-uri name version)) 7586 (method git-fetch)
7587 (uri (git-reference
7588 (url home-page)
7589 (commit version)))
7590 (file-name (git-file-name name version))
7508 (sha256 7591 (sha256
7509 (base32 7592 (base32
7510 "0i15f0xzx679sd0ldq2sls9pnnps9fv6vhqvnv9dzf4qhma42i0y")))) 7593 "0qy6x28bj6yfikhjww932v5xq4mf5bm1iczl7acy4c7zm6mwhqfa"))))
7511 (build-system python-build-system) 7594 (build-system python-build-system)
7595 (arguments
7596 `(#:phases (modify-phases %standard-phases
7597 (add-after 'unpack 'remove-debian-specific-tests
7598 ;; python-apt, apt and dpkg are not yet available in guix,
7599 ;; and these tests heavily depend on them.
7600 (lambda _
7601 (delete-file "lib/debian/tests/test_deb822.py")
7602 (delete-file "lib/debian/tests/test_debfile.py")
7603 #t)))))
7512 (propagated-inputs 7604 (propagated-inputs
7513 `(("python-six" ,python-six))) 7605 `(("python-six" ,python-six)
7606 ("python-chardet" ,python-chardet)))
7514 (synopsis "Debian package related modules") 7607 (synopsis "Debian package related modules")
7515 (description 7608 (description
7516 ;; XXX: Use @enumerate instead of @itemize to work around 7609 ;; XXX: Use @enumerate instead of @itemize to work around
@@ -10554,25 +10647,29 @@ characters, mouse support, and auto suggestions.")
10554(define-public python-jedi 10647(define-public python-jedi
10555 (package 10648 (package
10556 (name "python-jedi") 10649 (name "python-jedi")
10557 (version "0.13.3") 10650 (version "0.15.1")
10558 (source 10651 (source
10559 (origin 10652 (origin
10560 (method url-fetch) 10653 (method url-fetch)
10561 (uri (pypi-uri "jedi" version)) 10654 (uri (pypi-uri "jedi" version))
10562 (sha256 10655 (sha256
10563 (base32 10656 (base32
10564 "0nsrjlb57njqppxmi8wjsb1dkad7qa7svx67jbkhixq66lz61c1b")))) 10657 "0bp4pxhsynaarbvzblsn5x32lzp29svy3sxfy8i6m5iwz9s9r1ds"))))
10565 (build-system python-build-system) 10658 (build-system python-build-system)
10566 (arguments 10659 (arguments
10567 `( ;; Many tests are failing with Python 3.7.x as of version 0.13.3 (see: 10660 `(#:phases
10568 ;; https://github.com/davidhalter/jedi/issues/1263)
10569 #:tests? #f
10570 #:phases
10571 (modify-phases %standard-phases 10661 (modify-phases %standard-phases
10662 (add-after 'unpack 'disable-file-completion-test
10663 ;; A single parameterized test currently fail (see:
10664 ;; https://github.com/davidhalter/jedi/issues/1395). Remove it.
10665 (lambda _
10666 (substitute* "test/test_api/test_completion.py"
10667 ((".*'example.py', 'rb\"' \\+ join\\('\\.\\.'.*") ""))
10668 #t))
10572 (replace 'check 10669 (replace 'check
10573 (lambda* (#:key tests? #:allow-other-keys) 10670 (lambda _
10574 (when tests? 10671 (setenv "HOME" "/tmp")
10575 (invoke "py.test" "-vv"))))))) 10672 (invoke "python" "-m" "pytest"))))))
10576 (native-inputs 10673 (native-inputs
10577 `(("python-pytest" ,python-pytest) 10674 `(("python-pytest" ,python-pytest)
10578 ("python-docopt" ,python-docopt))) 10675 ("python-docopt" ,python-docopt)))
@@ -10590,11 +10687,7 @@ well.")
10590 (license license:expat))) 10687 (license license:expat)))
10591 10688
10592(define-public python2-jedi 10689(define-public python2-jedi
10593 (let ((base (package-with-python2 (strip-python2-variant python-jedi)))) 10690 (package-with-python2 python-jedi))
10594 (package
10595 (inherit base)
10596 (arguments (substitute-keyword-arguments (package-arguments base)
10597 ((#:tests? _) #t))))))
10598 10691
10599(define-public ptpython 10692(define-public ptpython
10600 (package 10693 (package
@@ -14729,17 +14822,21 @@ time-based (TOTP) passwords.")
14729(define-public python-parso 14822(define-public python-parso
14730 (package 14823 (package
14731 (name "python-parso") 14824 (name "python-parso")
14732 (version "0.3.1") 14825 (version "0.5.1")
14733 (source 14826 (source
14734 (origin 14827 (origin
14735 (method url-fetch) 14828 (method url-fetch)
14736 (uri (pypi-uri "parso" version)) 14829 (uri (pypi-uri "parso" version))
14737 (sha256 14830 (sha256
14738 (base32 14831 (base32
14739 "18p89iwcm8mnf380f92g9w0bhx5km8wxp392vvjcq4y1ld1llw1m")))) 14832 "171a9ivhxwsd52h1cgsz40zgzpgzscn7yqb7sdjhy8m1lzj0wsv6"))))
14740 (native-inputs 14833 (native-inputs
14741 `(("python-pytest" ,python-pytest))) 14834 `(("python-pytest" ,python-pytest)))
14742 (build-system python-build-system) 14835 (build-system python-build-system)
14836 (arguments
14837 `(#:phases (modify-phases %standard-phases
14838 (replace 'check
14839 (lambda _ (invoke "pytest" "-vv"))))))
14743 (home-page "https://github.com/davidhalter/parso") 14840 (home-page "https://github.com/davidhalter/parso")
14744 (synopsis "Python Parser") 14841 (synopsis "Python Parser")
14745 (description "Parso is a Python parser that supports error recovery and 14842 (description "Parso is a Python parser that supports error recovery and
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 9fec18287ea..644c9d76667 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -509,7 +509,7 @@ instead of @command{python3}.")))
509(define-public micropython 509(define-public micropython
510 (package 510 (package
511 (name "micropython") 511 (name "micropython")
512 (version "1.10") 512 (version "1.11")
513 (source 513 (source
514 (origin 514 (origin
515 (method url-fetch) 515 (method url-fetch)
@@ -518,7 +518,7 @@ instead of @command{python3}.")))
518 "/micropython-" version ".tar.gz")) 518 "/micropython-" version ".tar.gz"))
519 (sha256 519 (sha256
520 (base32 520 (base32
521 "1g1zjip3rkx6bp16qi1bag72wivnbh56fcsl3nffanrx4j5f4z90")) 521 "0px3xhw16rl0l7qifq7jw1gq92wzlnhd17dmszv9m2c3wbzs9p9f"))
522 (modules '((guix build utils))) 522 (modules '((guix build utils)))
523 (snippet 523 (snippet
524 '(begin 524 '(begin
@@ -532,7 +532,7 @@ instead of @command{python3}.")))
532 (arguments 532 (arguments
533 `(#:phases 533 `(#:phases
534 (modify-phases %standard-phases 534 (modify-phases %standard-phases
535 (add-before 'build 'preprare-build 535 (add-before 'build 'prepare-build
536 (lambda _ 536 (lambda _
537 (chdir "ports/unix") 537 (chdir "ports/unix")
538 ;; see: https://github.com/micropython/micropython/pull/4246 538 ;; see: https://github.com/micropython/micropython/pull/4246
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 1f3fb29aba3..7d736c7c279 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -17,6 +17,7 @@
17;;; Copyright © 2019 Mikhail Kirillov <w96k.ru@gmail.com> 17;;; Copyright © 2019 Mikhail Kirillov <w96k.ru@gmail.com>
18;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> 18;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
19;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com> 19;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
20;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca>
20;;; 21;;;
21;;; This file is part of GNU Guix. 22;;; This file is part of GNU Guix.
22;;; 23;;;
@@ -670,6 +671,35 @@ RSpec tests.")
670 (home-page "https://github.com/dblock/rspec-rerun") 671 (home-page "https://github.com/dblock/rspec-rerun")
671 (license license:expat))) 672 (license license:expat)))
672 673
674(define-public ruby-rspec-wait
675 (package
676 (name "ruby-rspec-wait")
677 (version "0.0.9")
678 (source
679 (origin
680 (method url-fetch)
681 (uri (rubygems-uri "rspec-wait" version))
682 (sha256
683 (base32
684 "0gvj1bp5ccx001dyvcgk2j49s5sl6vs9fdaqqb08z3bd1554hsww"))))
685 (build-system ruby-build-system)
686 (arguments
687 '(#:phases
688 (modify-phases %standard-phases
689 (replace 'check
690 (lambda _
691 (invoke "rake" "spec"))))))
692 (native-inputs
693 `(("bundler" ,bundler)))
694 (propagated-inputs
695 `(("ruby-rspec" ,ruby-rspec)))
696 (home-page "https://github.com/laserlemon/rspec-wait")
697 (synopsis "Wait for conditions in RSpec")
698 (description
699 "RSpec::Wait strives to make it easier to test asynchronous or slow
700interactions.")
701 (license license:expat)))
702
673(define-public ruby-rspec 703(define-public ruby-rspec
674 (package 704 (package
675 (name "ruby-rspec") 705 (name "ruby-rspec")
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index f7542ea759b..6630332692d 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -5,6 +5,7 @@
5;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> 5;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
6;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> 6;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
7;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> 7;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
8;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca>
8;;; 9;;;
9;;; This file is part of GNU Guix. 10;;; This file is part of GNU Guix.
10;;; 11;;;
@@ -22,21 +23,107 @@
22;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. 23;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
23 24
24(define-module (gnu packages shellutils) 25(define-module (gnu packages shellutils)
25 #:use-module (gnu packages base)
26 #:use-module (gnu packages golang)
27 #:use-module (gnu packages python)
28 #:use-module ((guix licenses) #:prefix license:) 26 #:use-module ((guix licenses) #:prefix license:)
27 #:use-module (guix utils)
29 #:use-module (guix packages) 28 #:use-module (guix packages)
30 #:use-module (guix download) 29 #:use-module (guix download)
31 #:use-module (guix git-download) 30 #:use-module (guix git-download)
31 #:use-module (guix build-system gnu)
32 #:use-module (guix build-system go)
33 #:use-module (guix build-system python)
32 #:use-module (gnu packages autotools) 34 #:use-module (gnu packages autotools)
35 #:use-module (gnu packages base)
36 #:use-module (gnu packages golang)
33 #:use-module (gnu packages ncurses) 37 #:use-module (gnu packages ncurses)
34 #:use-module (gnu packages readline)
35 #:use-module (gnu packages pkg-config) 38 #:use-module (gnu packages pkg-config)
36 #:use-module (guix utils) 39 #:use-module (gnu packages python)
37 #:use-module (guix build-system gnu) 40 #:use-module (gnu packages readline)
38 #:use-module (guix build-system go) 41 #:use-module (gnu packages ruby)
39 #:use-module (guix build-system python)) 42 #:use-module (gnu packages shells)
43 #:use-module (gnu packages tmux))
44
45(define-public zsh-autosuggestions
46 (package
47 (name "zsh-autosuggestions")
48 (version "0.6.3")
49 (source (origin
50 (method git-fetch)
51 (uri (git-reference
52 (url "https://github.com/zsh-users/zsh-autosuggestions.git")
53 (commit (string-append "v" version))))
54 (file-name (git-file-name name version))
55 (sha256
56 (base32
57 "1h8h2mz9wpjpymgl2p7pc146c1jgb3dggpvzwm9ln3in336wl95c"))))
58 (build-system gnu-build-system)
59 (native-inputs
60 `(("ruby" ,ruby)
61 ("ruby-byebug" ,ruby-byebug)
62 ("ruby-pry" ,ruby-pry)
63 ("ruby-rspec" ,ruby-rspec)
64 ("ruby-rspec-wait" ,ruby-rspec-wait)
65 ("tmux" ,tmux)
66 ("zsh" ,zsh)))
67 (arguments
68 '(#:phases
69 (modify-phases %standard-phases
70 (delete 'configure)
71 (replace 'check ; Tests use ruby's bundler; instead execute rspec directly.
72 (lambda _
73 (setenv "TMUX_TMPDIR" (getenv "TMPDIR"))
74 (setenv "SHELL" (which "zsh"))
75 (invoke "rspec")))
76 (replace 'install
77 (lambda* (#:key outputs #:allow-other-keys)
78 (let* ((out (assoc-ref outputs "out"))
79 (zsh-plugins
80 (string-append out "/share/zsh/plugins/zsh-autosuggestions")))
81 (invoke "make" "all")
82 (install-file "zsh-autosuggestions.zsh" zsh-plugins)
83 #t))))))
84 (home-page "https://github.com/zsh-users/zsh-autosuggestions")
85 (synopsis "Fish-like autosuggestions for zsh")
86 (description
87 "Fish-like fast/unobtrusive autosuggestions for zsh. It suggests commands
88as you type.")
89 (license license:expat)))
90
91(define-public sh-z
92 (package
93 (name "sh-z")
94 (version "1.11")
95 (source (origin
96 (method git-fetch)
97 (uri (git-reference
98 (url "https://github.com/rupa/z.git")
99 (commit (string-append "v" version))))
100 (file-name (git-file-name name version))
101 (sha256
102 (base32
103 "13zbgkj6y0qhvn5jpkrqbd4jjxjr789k228iwma5hjfh1nx7ghyb"))))
104 (build-system gnu-build-system)
105 (arguments
106 `(#:tests? #f ; No tests provided
107 #:phases
108 (modify-phases %standard-phases
109 (delete 'configure)
110 (delete 'build)
111 (replace 'install
112 (lambda* (#:key outputs #:allow-other-keys)
113 (let* ((out (assoc-ref outputs "out"))
114 (man (string-append out "/share/man/man1"))
115 (bin (string-append out "/bin")))
116 (install-file "z.sh" bin)
117 (chmod (string-append bin "/z.sh") #o755)
118 (install-file "z.1" man)
119 #t))))))
120 (synopsis "Jump about directories")
121 (description
122 "Tracks your most used directories, based on ``frecency''. After a short
123learning phase, z will take you to the most ``frecent'' directory that matches
124all of the regexes given on the command line in order.")
125 (home-page "https://github.com/rupa/z")
126 (license license:expat)))
40 127
41(define-public envstore 128(define-public envstore
42 (package 129 (package
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index 5ec769388a3..9bd1e8d4214 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -1,6 +1,6 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2014 David Thompson <davet@gnu.org> 2;;; Copyright © 2014 David Thompson <davet@gnu.org>
3;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> 3;;; Copyright © 2015, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
4;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name> 4;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
5;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> 5;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
6;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com> 6;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
@@ -163,6 +163,25 @@ sources.")
163Apple help books.") 163Apple help books.")
164 (license license:bsd-2))) 164 (license license:bsd-2)))
165 165
166(define-public python-sphinx-copybutton
167 (package
168 (name "python-sphinx-copybutton")
169 (version "0.2.5")
170 (source
171 (origin
172 (method url-fetch)
173 (uri (pypi-uri "sphinx-copybutton" version))
174 (sha256
175 (base32
176 "1bk006nv5s9ym6v67cxd4d2wvd8wm6czqi21mqcs33risygksncl"))))
177 (build-system python-build-system)
178 (home-page "https://github.com/choldgraf/sphinx-copybutton")
179 (synopsis "Sphinx extension to add \"copy\" buttons to code blocks")
180 (description
181 "This package provides a small sphinx extension to add \"copy\" buttons
182to code blocks.")
183 (license license:expat)))
184
166(define-public python-sphinxcontrib-devhelp 185(define-public python-sphinxcontrib-devhelp
167 (package 186 (package
168 (name "python-sphinxcontrib-devhelp") 187 (name "python-sphinxcontrib-devhelp")
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 143df3e63e4..2ffe0a10d60 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -49,6 +49,7 @@
49 #:use-module (gnu packages curl) 49 #:use-module (gnu packages curl)
50 #:use-module (gnu packages emacs) 50 #:use-module (gnu packages emacs)
51 #:use-module (gnu packages emacs-xyz) 51 #:use-module (gnu packages emacs-xyz)
52 #:use-module (gnu packages fontutils)
52 #:use-module (gnu packages gcc) 53 #:use-module (gnu packages gcc)
53 #:use-module (gnu packages gtk) 54 #:use-module (gnu packages gtk)
54 #:use-module (gnu packages gettext) 55 #:use-module (gnu packages gettext)
@@ -1199,23 +1200,24 @@ agnes cluster diagrams.")
1199(define-public r-gdtools 1200(define-public r-gdtools
1200 (package 1201 (package
1201 (name "r-gdtools") 1202 (name "r-gdtools")
1202 (version "0.1.9") 1203 (version "0.2.0")
1203 (source 1204 (source
1204 (origin 1205 (origin
1205 (method url-fetch) 1206 (method url-fetch)
1206 (uri (cran-uri "gdtools" version)) 1207 (uri (cran-uri "gdtools" version))
1207 (sha256 1208 (sha256
1208 (base32 1209 (base32
1209 "0w4fihf52q5qxxk0lg36x6yvjjl8vw66y60ncdjs5fvnxqn5z2vb")))) 1210 "1mvpkp8cj30fwd4bwlz96x3cff7yzfbfz7iswmf77zl0a6122inh"))))
1210 (build-system r-build-system) 1211 (build-system r-build-system)
1211 (native-inputs 1212 (native-inputs
1212 `(("pkg-config" ,pkg-config))) 1213 `(("pkg-config" ,pkg-config)))
1213 (inputs 1214 (inputs
1214 `(("cairo" ,cairo) 1215 `(("cairo" ,cairo)
1216 ("freetype2" ,freetype)
1215 ("zlib" ,zlib))) 1217 ("zlib" ,zlib)))
1216 (propagated-inputs 1218 (propagated-inputs
1217 `(("r-rcpp" ,r-rcpp) 1219 `(("r-rcpp" ,r-rcpp)
1218 ("r-withr" ,r-withr))) 1220 ("r-systemfonts" ,r-systemfonts)))
1219 (home-page "https://cran.r-project.org/web/packages/gdtools") 1221 (home-page "https://cran.r-project.org/web/packages/gdtools")
1220 (synopsis "Utilities for graphical rendering") 1222 (synopsis "Utilities for graphical rendering")
1221 (description 1223 (description
@@ -2436,18 +2438,24 @@ informative error messages when it's not available.")
2436(define-public r-devtools 2438(define-public r-devtools
2437 (package 2439 (package
2438 (name "r-devtools") 2440 (name "r-devtools")
2439 (version "2.1.0") 2441 (version "2.2.0")
2440 (source (origin 2442 (source (origin
2441 (method url-fetch) 2443 (method url-fetch)
2442 (uri (cran-uri "devtools" version)) 2444 (uri (cran-uri "devtools" version))
2443 (sha256 2445 (sha256
2444 (base32 2446 (base32
2445 "0393v7nr22gr5g9afgrhq4ab3lwbqy6fd3shnmlhdpqam5357xy1")))) 2447 "05fag25mkqy13yja8x32aqr9c0ah9rbm8cfjcsmy1dv5h4j8cxa1"))))
2446 (build-system r-build-system) 2448 (build-system r-build-system)
2447 (propagated-inputs 2449 (propagated-inputs
2448 `(("r-callr" ,r-callr) 2450 `(("r-callr" ,r-callr)
2449 ("r-cli" ,r-cli) 2451 ("r-cli" ,r-cli)
2452 ("r-covr" ,r-covr)
2453 ("r-crayon" ,r-crayon)
2454 ("r-desc" ,r-desc)
2450 ("r-digest" ,r-digest) 2455 ("r-digest" ,r-digest)
2456 ("r-dt" ,r-dt)
2457 ("r-ellipsis" ,r-ellipsis)
2458 ("r-glue" ,r-glue)
2451 ("r-git2r" ,r-git2r) 2459 ("r-git2r" ,r-git2r)
2452 ("r-httr" ,r-httr) 2460 ("r-httr" ,r-httr)
2453 ("r-jsonlite" ,r-jsonlite) 2461 ("r-jsonlite" ,r-jsonlite)
@@ -2458,6 +2466,7 @@ informative error messages when it's not available.")
2458 ("r-roxygen2" ,r-roxygen2) 2466 ("r-roxygen2" ,r-roxygen2)
2459 ("r-remotes" ,r-remotes) 2467 ("r-remotes" ,r-remotes)
2460 ("r-rstudioapi" ,r-rstudioapi) 2468 ("r-rstudioapi" ,r-rstudioapi)
2469 ("r-rversions" ,r-rversions)
2461 ("r-sessioninfo" ,r-sessioninfo) 2470 ("r-sessioninfo" ,r-sessioninfo)
2462 ("r-testthat" ,r-testthat) 2471 ("r-testthat" ,r-testthat)
2463 ("r-usethis" ,r-usethis) 2472 ("r-usethis" ,r-usethis)
@@ -2598,13 +2607,13 @@ well as additional utilities such as panel and axis annotation functions.")
2598(define-public r-rcpparmadillo 2607(define-public r-rcpparmadillo
2599 (package 2608 (package
2600 (name "r-rcpparmadillo") 2609 (name "r-rcpparmadillo")
2601 (version "0.9.600.4.0") 2610 (version "0.9.700.2.0")
2602 (source (origin 2611 (source (origin
2603 (method url-fetch) 2612 (method url-fetch)
2604 (uri (cran-uri "RcppArmadillo" version)) 2613 (uri (cran-uri "RcppArmadillo" version))
2605 (sha256 2614 (sha256
2606 (base32 2615 (base32
2607 "07jg2667xyhmp1fbcdi5nnhmkk81da76s9rlswfq4k2sjsmbfmr0")))) 2616 "0g25w32dnqrvhnri8x4yxqawxd8qhn7w3m8d29nxxy0gybx3y8x9"))))
2608 (properties `((upstream-name . "RcppArmadillo"))) 2617 (properties `((upstream-name . "RcppArmadillo")))
2609 (build-system r-build-system) 2618 (build-system r-build-system)
2610 ;; All needed for vignettes 2619 ;; All needed for vignettes
@@ -3645,13 +3654,13 @@ t-probabilities, quantiles, random deviates and densities.")
3645(define-public r-matrixstats 3654(define-public r-matrixstats
3646 (package 3655 (package
3647 (name "r-matrixstats") 3656 (name "r-matrixstats")
3648 (version "0.54.0") 3657 (version "0.55.0")
3649 (source (origin 3658 (source (origin
3650 (method url-fetch) 3659 (method url-fetch)
3651 (uri (cran-uri "matrixStats" version)) 3660 (uri (cran-uri "matrixStats" version))
3652 (sha256 3661 (sha256
3653 (base32 3662 (base32
3654 "0vx00ldsg2zvdrjn49jxczk2c9iaabgvzgpdka5j02ihh7hv83cg")))) 3663 "06fvx0rlaz80k0lkqq2n7v0309xpz7h7ss0m9kgyikp4xs8bvmhn"))))
3655 (properties `((upstream-name . "matrixStats"))) 3664 (properties `((upstream-name . "matrixStats")))
3656 (build-system r-build-system) 3665 (build-system r-build-system)
3657 (native-inputs 3666 (native-inputs
@@ -3748,25 +3757,28 @@ selection.")
3748(define-public r-tidyr 3757(define-public r-tidyr
3749 (package 3758 (package
3750 (name "r-tidyr") 3759 (name "r-tidyr")
3751 (version "0.8.3") 3760 (version "1.0.0")
3752 (source 3761 (source
3753 (origin 3762 (origin
3754 (method url-fetch) 3763 (method url-fetch)
3755 (uri (cran-uri "tidyr" version)) 3764 (uri (cran-uri "tidyr" version))
3756 (sha256 3765 (sha256
3757 (base32 3766 (base32
3758 "0dyc4b03wi65bk7j0ma0y188syh37h57wgxji82i0h8j6pn593x1")))) 3767 "1403j0xd93l0r7qj738ryd5zc79hbcghrzybib3c3hrnaq5s78cj"))))
3759 (build-system r-build-system) 3768 (build-system r-build-system)
3760 (propagated-inputs 3769 (propagated-inputs
3761 `(("r-dplyr" ,r-dplyr) 3770 `(("r-dplyr" ,r-dplyr)
3771 ("r-ellipsis" ,r-ellipsis)
3762 ("r-magrittr" ,r-magrittr) 3772 ("r-magrittr" ,r-magrittr)
3763 ("r-glue" ,r-glue) 3773 ("r-glue" ,r-glue)
3774 ("r-lifecycle" ,r-lifecycle)
3764 ("r-purrr" ,r-purrr) 3775 ("r-purrr" ,r-purrr)
3765 ("r-rlang" ,r-rlang) 3776 ("r-rlang" ,r-rlang)
3766 ("r-tidyselect" ,r-tidyselect) 3777 ("r-tidyselect" ,r-tidyselect)
3767 ("r-rcpp" ,r-rcpp) 3778 ("r-rcpp" ,r-rcpp)
3768 ("r-stringi" ,r-stringi) 3779 ("r-stringi" ,r-stringi)
3769 ("r-tibble" ,r-tibble))) 3780 ("r-tibble" ,r-tibble)
3781 ("r-vctrs" ,r-vctrs)))
3770 (home-page "https://github.com/hadley/tidyr") 3782 (home-page "https://github.com/hadley/tidyr")
3771 (synopsis "Tidy data with `spread()` and `gather()` functions") 3783 (synopsis "Tidy data with `spread()` and `gather()` functions")
3772 (description 3784 (description
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index 427bc445984..f0055cc0ccd 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -724,3 +724,31 @@ as -1, to be used instead of U+FFFD.
724It is a front end for ii-like chat programs. It uses @code{tail -f} to get the 724It is a front end for ii-like chat programs. It uses @code{tail -f} to get the
725chat output in the background.") 725chat output in the background.")
726 (license license:isc)))) 726 (license license:isc))))
727
728(define-public scron
729 (package
730 (name "scron")
731 (version "0.4")
732 (source
733 (origin
734 (method url-fetch)
735 (uri (string-append "https://dl.2f30.org/releases/"
736 name "-" version ".tar.gz"))
737 (sha256
738 (base32
739 "066fwa55kqcgfrsqgxh94sqbkxfsr691360xg4ljxr4i75d25s2a"))))
740 (build-system gnu-build-system)
741 (arguments
742 `(#:tests? #f ; No tests
743 #:make-flags (list "CC=gcc"
744 (string-append "PREFIX=" %output))
745 #:phases
746 (modify-phases %standard-phases
747 (delete 'configure)))) ; No configure script
748 (home-page "https://git.2f30.org/scron/")
749 (synopsis "Simple cron daemon")
750 (description
751 "Schedule commands to be run at specified dates and times.
752Single daemon and configuration file. Log to stdout or syslog. No mail
753support.")
754 (license license:expat)))
diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm
index e281f435549..0c840a1a1d4 100644
--- a/gnu/packages/sync.scm
+++ b/gnu/packages/sync.scm
@@ -264,14 +264,14 @@ over the Internet in an HTTP and CDN friendly way;
264(define-public rclone 264(define-public rclone
265 (package 265 (package
266 (name "rclone") 266 (name "rclone")
267 (version "1.49.1") 267 (version "1.49.2")
268 (source 268 (source
269 (origin 269 (origin
270 (method url-fetch) 270 (method url-fetch)
271 (uri (string-append "https://github.com/rclone/rclone/releases/download/" 271 (uri (string-append "https://github.com/rclone/rclone/releases/download/"
272 "v" version "/rclone-v" version ".tar.gz")) 272 "v" version "/rclone-v" version ".tar.gz"))
273 (sha256 273 (sha256
274 (base32 "1d0qvj7fn5bx3zqlf6hzn1922nrmy4x341n760m1b6h9az32mc5x")))) 274 (base32 "1q8lf85hg2havb1xsal75r19ck166rh19lffpd3i43zgblc6gs8j"))))
275 ;; FIXME: Rclone bundles some libraries Guix already provides. Need to 275 ;; FIXME: Rclone bundles some libraries Guix already provides. Need to
276 ;; un-bundle them. 276 ;; un-bundle them.
277 (build-system go-build-system) 277 (build-system go-build-system)
diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index f0117eead3e..98ed77289a7 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -7,7 +7,7 @@
7;;; Copyright © 2016, 2017 José Miguel Sánchez García <jmi2k@openmailbox.org> 7;;; Copyright © 2016, 2017 José Miguel Sánchez García <jmi2k@openmailbox.org>
8;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> 8;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
9;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net> 9;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
10;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> 10;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
11;;; Copyright © 2017 Petter <petter@mykolab.ch> 11;;; Copyright © 2017 Petter <petter@mykolab.ch>
12;;; Copyright © 2018 Hartmut Goebel <h.goebel@crazy-compilers.com> 12;;; Copyright © 2018 Hartmut Goebel <h.goebel@crazy-compilers.com>
13;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> 13;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
@@ -460,7 +460,7 @@ should be thread-safe.")
460(define-public libvterm 460(define-public libvterm
461 (package 461 (package
462 (name "libvterm") 462 (name "libvterm")
463 (version "0+bzr681") 463 (version "0.1")
464 (source 464 (source
465 (origin 465 (origin
466 (method url-fetch) 466 (method url-fetch)
@@ -468,12 +468,13 @@ should be thread-safe.")
468 "libvterm-" version ".tar.gz")) 468 "libvterm-" version ".tar.gz"))
469 (sha256 469 (sha256
470 (base32 470 (base32
471 "1s56c8p1qz6frkcri0hg4qyydv2wcccj6n2xmz1dwcdqn38ldsmb")))) 471 "1pcxjhvdwhr2f3lyzf2rv1vp3l62bgkjm1ybhj82qf8yly7ca6g4"))))
472 (build-system gnu-build-system) 472 (build-system gnu-build-system)
473 (arguments 473 (arguments
474 `(#:make-flags 474 `(#:make-flags
475 (list "CC=gcc" 475 (list "CC=gcc"
476 (string-append "PREFIX=" (assoc-ref %outputs "out"))) 476 (string-append "PREFIX=" (assoc-ref %outputs "out")))
477 #:tests? #f ; XXX: some tests fail in this release
477 #:test-target "test" 478 #:test-target "test"
478 #:phases 479 #:phases
479 (modify-phases %standard-phases 480 (modify-phases %standard-phases
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 28459917c88..e67b0505f39 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -6827,17 +6827,14 @@ titles.")
6827 "/fonts/afm/public/xypic/" 6827 "/fonts/afm/public/xypic/"
6828 "/fonts/tfm/public/xypic/" 6828 "/fonts/tfm/public/xypic/"
6829 "/fonts/type1/public/xypic/" 6829 "/fonts/type1/public/xypic/"
6830 6830 "/tex/generic/xypic/")
6831 ;;"/tex/generic/xypic/" ; I guess these are generated
6832 )
6833 (base32 6831 (base32
6834 "0sqkkvjzzsiazvh8803qqyrcv4is3m1qs9x9v2m35jjikbqc08y8")))) 6832 "09b51bbm189xh7039h5n8nmab5nn2bybhh26qjn08763m80zdhjg")
6833 #:trivial? #t)))
6835 (package 6834 (package
6836 (inherit template) 6835 (inherit template)
6837 (arguments 6836 (arguments
6838 (substitute-keyword-arguments (package-arguments template) 6837 (substitute-keyword-arguments (package-arguments template)
6839 ((#:tex-directory _ #t)
6840 "tex/generic/xypic")
6841 ((#:phases phases) 6838 ((#:phases phases)
6842 `(modify-phases ,phases 6839 `(modify-phases ,phases
6843 (delete 'reset-gzip-timestamps))))) 6840 (delete 'reset-gzip-timestamps)))))
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 388f164428f..9ce01e66eae 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -13,7 +13,7 @@
13;;; Copyright © 2017,2019 Hartmut Goebel <h.goebel@crazy-compilers.com> 13;;; Copyright © 2017,2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
14;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net> 14;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
15;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> 15;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
16;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> 16;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
17;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> 17;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
18;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com> 18;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com>
19;;; Copyright © 2019 Yoshinori Arai <kumagusu08@gmail.com> 19;;; Copyright © 2019 Yoshinori Arai <kumagusu08@gmail.com>
@@ -89,23 +89,22 @@ to DOS format and vice versa.")
89(define-public recode 89(define-public recode
90 (package 90 (package
91 (name "recode") 91 (name "recode")
92 (version "3.7.1") 92 (version "3.7.5")
93 (source 93 (source
94 (origin 94 (origin
95 (method url-fetch) 95 (method url-fetch)
96 (uri (string-append "https://github.com/rrthomas/recode/releases/" 96 (uri (string-append "https://github.com/rrthomas/recode/releases/"
97 "download/v" version "/" name "-" version ".tar.gz")) 97 "download/v" version "/recode-" version ".tar.gz"))
98 (sha256 98 (sha256
99 (base32 99 (base32 "1sl99dfx2b76paq86wv3a0lcy66f1hylf6iy04rzwxj7ccwpsk30"))
100 "0215hfj0rhlh0grg91qfx75pp6z09bpv8211qdxqihniw7y9a4fs"))
101 (modules '((guix build utils))) 100 (modules '((guix build utils)))
102 (snippet '(begin 101 (snippet '(begin
103 (delete-file "tests/Recode.c") 102 (delete-file "tests/Recode.c")
104 #t)))) 103 #t))))
105 (build-system gnu-build-system) 104 (build-system gnu-build-system)
106 (native-inputs 105 (native-inputs
107 `(("python" ,python-2) 106 `(("python" ,python)
108 ("python2-cython" ,python2-cython))) 107 ("python-cython" ,python-cython)))
109 (home-page "https://github.com/rrthomas/recode") 108 (home-page "https://github.com/rrthomas/recode")
110 (synopsis "Text encoding converter") 109 (synopsis "Text encoding converter")
111 (description "The Recode library converts files between character sets and 110 (description "The Recode library converts files between character sets and
@@ -879,6 +878,44 @@ indentation.
879 (home-page "http://docx2txt.sourceforge.net") 878 (home-page "http://docx2txt.sourceforge.net")
880 (license license:gpl3+))) 879 (license license:gpl3+)))
881 880
881(define-public odt2txt
882 (package
883 (name "odt2txt")
884 (version "0.5")
885 (source
886 (origin
887 (method git-fetch)
888 (uri (git-reference
889 (url "https://github.com/dstosberg/odt2txt/")
890 (commit (string-append "v" version))))
891 (file-name (git-file-name name version))
892 (sha256
893 (base32
894 "0im3kzvhxkjlx57w6h13mc9584c74ma1dyymgvpq2y61av3gc35v"))))
895 (build-system gnu-build-system)
896 (arguments
897 `(#:tests? #f ; no make check
898 #:make-flags (list "CC=gcc"
899 (string-append "DESTDIR=" (assoc-ref %outputs "out")))
900 #:phases
901 (modify-phases %standard-phases
902 ;; no configure script
903 (delete 'configure))))
904 (inputs
905 `(("zlib" ,zlib)))
906 (home-page "https://github.com/dstosberg/odt2txt/")
907 (synopsis "Converter from OpenDocument Text to plain text")
908 (description "odt2txt is a command-line tool which extracts the text out
909of OpenDocument Texts, as produced by OpenOffice.org, KOffice, StarOffice and
910others.
911
912odt2txt can also extract text from some file formats similar to OpenDocument
913Text, such as OpenOffice.org XML (*.sxw), which was used by OpenOffice.org
914version 1.x and older StarOffice versions. To a lesser extent, odt2txt may be
915useful to extract content from OpenDocument spreadsheets (*.ods) and
916OpenDocument presentations (*.odp).")
917 (license license:gpl2)))
918
882(define-public opencc 919(define-public opencc
883 (package 920 (package
884 (name "opencc") 921 (name "opencc")
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index d896908a124..6689375da64 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -271,6 +271,7 @@ required structures.")
271 (package 271 (package
272 (name "openssl") 272 (name "openssl")
273 (version "1.1.1c") 273 (version "1.1.1c")
274 (replacement openssl-1.1.1d)
274 (source (origin 275 (source (origin
275 (method url-fetch) 276 (method url-fetch)
276 (uri (list (string-append "https://www.openssl.org/source/openssl-" 277 (uri (list (string-append "https://www.openssl.org/source/openssl-"
@@ -372,6 +373,24 @@ required structures.")
372 (license license:openssl) 373 (license license:openssl)
373 (home-page "https://www.openssl.org/"))) 374 (home-page "https://www.openssl.org/")))
374 375
376(define openssl-1.1.1d
377 (package/inherit
378 openssl
379 (version "1.1.1d")
380 (source (origin
381 (method url-fetch)
382 (uri (list (string-append "https://www.openssl.org/source/openssl-"
383 version ".tar.gz")
384 (string-append "ftp://ftp.openssl.org/source/"
385 "openssl-" version ".tar.gz")
386 (string-append "ftp://ftp.openssl.org/source/old/"
387 (string-trim-right version char-set:letter)
388 "/openssl-" version ".tar.gz")))
389 (patches (search-patches "openssl-1.1-c-rehash-in.patch"))
390 (sha256
391 (base32
392 "1whinyw402z3b9xlb3qaxv4b9sk4w1bgh9k0y8df1z4x3yy92fhy"))))))
393
375(define-public openssl-1.0 394(define-public openssl-1.0
376 (package 395 (package
377 (inherit openssl) 396 (inherit openssl)
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 4fb2d76c337..b6c32fabdbb 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1492,7 +1492,7 @@ access to mpv's powerful playback capabilities.")
1492(define-public youtube-dl 1492(define-public youtube-dl
1493 (package 1493 (package
1494 (name "youtube-dl") 1494 (name "youtube-dl")
1495 (version "2019.08.13") 1495 (version "2019.09.12")
1496 (source (origin 1496 (source (origin
1497 (method url-fetch) 1497 (method url-fetch)
1498 (uri (string-append "https://github.com/rg3/youtube-dl/releases/" 1498 (uri (string-append "https://github.com/rg3/youtube-dl/releases/"
@@ -1500,7 +1500,7 @@ access to mpv's powerful playback capabilities.")
1500 version ".tar.gz")) 1500 version ".tar.gz"))
1501 (sha256 1501 (sha256
1502 (base32 1502 (base32
1503 "0b94hrhbqa7jhn91pxsbphg2ylwkpkknb2y4v4sczp7rjvgmjgdj")))) 1503 "0wmc0rl4l08hnz3agh69ld1pcmjs7czg0d2k7mnnlxhwlwi38w56"))))
1504 (build-system python-build-system) 1504 (build-system python-build-system)
1505 (arguments 1505 (arguments
1506 ;; The problem here is that the directory for the man page and completion 1506 ;; The problem here is that the directory for the man page and completion
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 8ebdbb9a353..b1f47bd0105 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -735,7 +735,7 @@ are detected, the user is notified.")))
735(define-public neovim 735(define-public neovim
736 (package 736 (package
737 (name "neovim") 737 (name "neovim")
738 (version "0.3.7") 738 (version "0.4.2")
739 (source 739 (source
740 (origin 740 (origin
741 (method git-fetch) 741 (method git-fetch)
@@ -745,7 +745,7 @@ are detected, the user is notified.")))
745 (file-name (git-file-name name version)) 745 (file-name (git-file-name name version))
746 (sha256 746 (sha256
747 (base32 747 (base32
748 "1j6w5jvq5v7kf7diad91qs1acr427nidnk9s24yyrz0hwdd1c2lh")))) 748 "13w446plvgl219lhj29jyimhiqvs1y1byrz4qpdmxgyddmx9xqss"))))
749 (build-system cmake-build-system) 749 (build-system cmake-build-system)
750 (arguments 750 (arguments
751 `(#:modules ((srfi srfi-26) 751 `(#:modules ((srfi srfi-26)
@@ -754,13 +754,6 @@ are detected, the user is notified.")))
754 #:configure-flags '("-DPREFER_LUA:BOOL=YES") 754 #:configure-flags '("-DPREFER_LUA:BOOL=YES")
755 #:phases 755 #:phases
756 (modify-phases %standard-phases 756 (modify-phases %standard-phases
757 ;; TODO: remove 'patch-tic on update
758 ;; see: https://github.com/neovim/neovim/issues/9687
759 (add-after 'unpack 'patch-tic
760 (lambda _
761 (substitute* "src/nvim/tui/tui.c"
762 (("value != NULL") "value != NULL && value != (char *)-1"))
763 #t))
764 (add-after 'unpack 'set-lua-paths 757 (add-after 'unpack 'set-lua-paths
765 (lambda* (#:key inputs #:allow-other-keys) 758 (lambda* (#:key inputs #:allow-other-keys)
766 (let* ((lua-version "5.1") 759 (let* ((lua-version "5.1")
@@ -774,6 +767,7 @@ are detected, the user is notified.")))
774 (string-append path "/?.lua;" path "/?/?.lua")))) 767 (string-append path "/?.lua;" path "/?/?.lua"))))
775 (lua-inputs (map (cute assoc-ref %build-inputs <>) 768 (lua-inputs (map (cute assoc-ref %build-inputs <>)
776 '("lua" 769 '("lua"
770 "lua-luv"
777 "lua-lpeg" 771 "lua-lpeg"
778 "lua-bitop" 772 "lua-bitop"
779 "lua-libmpack")))) 773 "lua-libmpack"))))
@@ -791,6 +785,7 @@ are detected, the user is notified.")))
791 ("jemalloc" ,jemalloc) 785 ("jemalloc" ,jemalloc)
792 ("libiconv" ,libiconv) 786 ("libiconv" ,libiconv)
793 ("lua" ,lua-5.1) 787 ("lua" ,lua-5.1)
788 ("lua-luv" ,lua5.1-luv)
794 ("lua-lpeg" ,lua5.1-lpeg) 789 ("lua-lpeg" ,lua5.1-lpeg)
795 ("lua-bitop" ,lua5.1-bitop) 790 ("lua-bitop" ,lua5.1-bitop)
796 ("lua-libmpack" ,lua5.1-libmpack))) 791 ("lua-libmpack" ,lua5.1-libmpack)))
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 2e5b1ce16ed..e1ac2189be1 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -411,7 +411,10 @@ manage system or application containers.")
411 (build-system gnu-build-system) 411 (build-system gnu-build-system)
412 (arguments 412 (arguments
413 `(#:configure-flags 413 `(#:configure-flags
414 (list "--with-polkit" 414 (list "--with-qemu"
415 "--with-qemu-user=nobody"
416 "--with-qemu-group=kvm"
417 "--with-polkit"
415 (string-append "--docdir=" (assoc-ref %outputs "out") "/share/doc/" 418 (string-append "--docdir=" (assoc-ref %outputs "out") "/share/doc/"
416 ,name "-" ,version) 419 ,name "-" ,version)
417 "--sysconfdir=/etc" 420 "--sysconfdir=/etc"
@@ -450,23 +453,13 @@ manage system or application containers.")
450 (apply invoke "make" "install" 453 (apply invoke "make" "install"
451 "sysconfdir=/tmp/etc" 454 "sysconfdir=/tmp/etc"
452 "localstatedir=/tmp/var" 455 "localstatedir=/tmp/var"
453 make-flags))) 456 make-flags))))))
454 (add-after 'install 'wrap-libvirtd
455 (lambda* (#:key inputs outputs #:allow-other-keys)
456 (let ((out (assoc-ref outputs "out")))
457 (wrap-program (string-append out "/sbin/libvirtd")
458 `("PATH" = (,(string-append (assoc-ref inputs "iproute")
459 "/sbin")
460 ,(string-append (assoc-ref inputs "qemu")
461 "/bin"))))
462 #t))))))
463 (inputs 457 (inputs
464 `(("libxml2" ,libxml2) 458 `(("libxml2" ,libxml2)
465 ("eudev" ,eudev) 459 ("eudev" ,eudev)
466 ("libpciaccess" ,libpciaccess) 460 ("libpciaccess" ,libpciaccess)
467 ("gnutls" ,gnutls) 461 ("gnutls" ,gnutls)
468 ("dbus" ,dbus) 462 ("dbus" ,dbus)
469 ("qemu" ,qemu)
470 ("libpcap" ,libpcap) 463 ("libpcap" ,libpcap)
471 ("libnl" ,libnl) 464 ("libnl" ,libnl)
472 ("libtirpc" ,libtirpc) ;for <rpc/rpc.h> 465 ("libtirpc" ,libtirpc) ;for <rpc/rpc.h>
diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index 3c6db64ad78..bc875b1c99d 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -239,13 +239,13 @@ the user specifically asks to proxy, so the @dfn{VPN} interface no longer
239(define-public openconnect 239(define-public openconnect
240 (package 240 (package
241 (name "openconnect") 241 (name "openconnect")
242 (version "8.04") 242 (version "8.05")
243 (source (origin 243 (source (origin
244 (method url-fetch) 244 (method url-fetch)
245 (uri (string-append "ftp://ftp.infradead.org/pub/openconnect/" 245 (uri (string-append "ftp://ftp.infradead.org/pub/openconnect/"
246 "openconnect-" version ".tar.gz")) 246 "openconnect-" version ".tar.gz"))
247 (sha256 247 (sha256
248 (base32 "07zqcl2ykdc4mgix9sbv4jgpg7cybifxfgrycvf99ckq7xp9r5wq")))) 248 (base32 "14i9q727c2zc9xhzp1a9hz3gzb5lwgsslbhircm84dnbs192jp1k"))))
249 (build-system gnu-build-system) 249 (build-system gnu-build-system)
250 (propagated-inputs 250 (propagated-inputs
251 `(("libxml2" ,libxml2) 251 `(("libxml2" ,libxml2)
@@ -452,14 +452,14 @@ The peer-to-peer VPN implements a Layer 2 (Ethernet) network between the peers
452(define-public wireguard 452(define-public wireguard
453 (package 453 (package
454 (name "wireguard") 454 (name "wireguard")
455 (version "0.0.20190702") 455 (version "0.0.20190913")
456 (source (origin 456 (source (origin
457 (method url-fetch) 457 (method url-fetch)
458 (uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/" 458 (uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/"
459 "WireGuard-" version ".tar.xz")) 459 "WireGuard-" version ".tar.xz"))
460 (sha256 460 (sha256
461 (base32 461 (base32
462 "1b5s1ncwqxdgb0c6cd07x4ynnj6cpbiqp4bxqir7mm5bf6y124qs")))) 462 "06452jfibwar4sh7wf2k2k1a5qk5q703gxqqq5ymj6rdblc2fwwr"))))
463 (build-system gnu-build-system) 463 (build-system gnu-build-system)
464 (outputs '("out" ; The WireGuard userspace tools 464 (outputs '("out" ; The WireGuard userspace tools
465 "kernel-patch")) ; A patch to build Linux with WireGuard support 465 "kernel-patch")) ; A patch to build Linux with WireGuard support
diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index 9111a93be5b..479ec9425d6 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -1,6 +1,6 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com> 2;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
3;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> 3;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
4;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> 4;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
5;;; 5;;;
6;;; This file is part of GNU Guix. 6;;; This file is part of GNU Guix.
@@ -52,7 +52,7 @@
52 (sha256 52 (sha256
53 (base32 53 (base32
54 "0m56smanfcczjfif4yfcqhjj4d4sc088kwg6dgia8fwdsjavdm4d")) 54 "0m56smanfcczjfif4yfcqhjj4d4sc088kwg6dgia8fwdsjavdm4d"))
55 (file-name (string-append name "-" version "-checkout")))) 55 (file-name (git-file-name name version))))
56 (build-system cmake-build-system) 56 (build-system cmake-build-system)
57 (arguments 57 (arguments
58 `(#:tests? #f ;; No tests 58 `(#:tests? #f ;; No tests
diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index 745b08f90bc..bfc0976f0ed 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -93,14 +93,14 @@ older or slower computers and embedded systems.")
93(define-public links 93(define-public links
94 (package 94 (package
95 (name "links") 95 (name "links")
96 (version "2.19") 96 (version "2.20.1")
97 (source (origin 97 (source (origin
98 (method url-fetch) 98 (method url-fetch)
99 (uri (string-append "http://links.twibright.com/download/" 99 (uri (string-append "http://links.twibright.com/download/"
100 "links-" version ".tar.bz2")) 100 "links-" version ".tar.bz2"))
101 (sha256 101 (sha256
102 (base32 102 (base32
103 "02ls11c02p7xvsdjyb43rrzr850i1yly003r812z0w5vv5yqqxbh")))) 103 "0184g59cxxhg9dqg5gv66f30f1wg8sx957pp5rs7b8icnwnafa5v"))))
104 (build-system gnu-build-system) 104 (build-system gnu-build-system)
105 (arguments 105 (arguments
106 `(#:phases 106 `(#:phases
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 591ae2cb748..f7730f39922 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -6389,7 +6389,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.")
6389 (method url-fetch) 6389 (method url-fetch)
6390 (uri (string-append "https://github.com/nghttp2/nghttp2/" 6390 (uri (string-append "https://github.com/nghttp2/nghttp2/"
6391 "releases/download/v" version "/" 6391 "releases/download/v" version "/"
6392 name "-" version ".tar.xz")) 6392 "nghttp2-" version ".tar.xz"))
6393 (sha256 6393 (sha256
6394 (base32 6394 (base32
6395 "0j0lk37k8k3f61r9nw647hg4b22z1753l36n3xrp9x01civ614b7")))) 6395 "0j0lk37k8k3f61r9nw647hg4b22z1753l36n3xrp9x01civ614b7"))))
@@ -6602,7 +6602,7 @@ Anonip can also be uses as a Python module in your own Python application.")
6602(define-public poussetaches 6602(define-public poussetaches
6603 (package 6603 (package
6604 (name "poussetaches") 6604 (name "poussetaches")
6605 (version "0.0.1") 6605 (version "0.0.2")
6606 (source 6606 (source
6607 (origin 6607 (origin
6608 (method git-fetch) 6608 (method git-fetch)
@@ -6612,7 +6612,7 @@ Anonip can also be uses as a Python module in your own Python application.")
6612 (file-name (git-file-name name version)) 6612 (file-name (git-file-name name version))
6613 (sha256 6613 (sha256
6614 (base32 6614 (base32
6615 "07106kfcz3a39jvrv3mlqqxlihsmdhgkrjnqznyjsij9absgvdv6")))) 6615 "0kckcwvqklavd855np9aq5js6mg84isrlwchr504yigwma0sm7hm"))))
6616 (build-system go-build-system) 6616 (build-system go-build-system)
6617 (propagated-inputs 6617 (propagated-inputs
6618 `(("go-github-com-robfig-cron" ,go-github-com-robfig-cron) 6618 `(("go-github-com-robfig-cron" ,go-github-com-robfig-cron)
diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
index 76ceed5ff7c..1501ea27465 100644
--- a/gnu/packages/wget.scm
+++ b/gnu/packages/wget.scm
@@ -21,15 +21,13 @@
21;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. 21;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
22 22
23(define-module (gnu packages wget) 23(define-module (gnu packages wget)
24 #:use-module (guix licenses) 24 #:use-module ((guix licenses) #:prefix license:)
25 #:use-module (gnu packages) 25 #:use-module (gnu packages)
26 #:use-module (gnu packages autotools)
27 #:use-module (gnu packages base) 26 #:use-module (gnu packages base)
28 #:use-module (gnu packages compression) 27 #:use-module (gnu packages compression)
29 #:use-module (gnu packages documentation) 28 #:use-module (gnu packages documentation)
30 #:use-module (gnu packages flex)
31 #:use-module (gnu packages gettext)
32 #:use-module (gnu packages gnunet) 29 #:use-module (gnu packages gnunet)
30 #:use-module (gnu packages gnupg)
33 #:use-module (gnu packages libidn) 31 #:use-module (gnu packages libidn)
34 #:use-module (gnu packages pcre) 32 #:use-module (gnu packages pcre)
35 #:use-module (gnu packages perl) 33 #:use-module (gnu packages perl)
@@ -40,7 +38,6 @@
40 #:use-module (gnu packages xdisorg) 38 #:use-module (gnu packages xdisorg)
41 #:use-module (guix packages) 39 #:use-module (guix packages)
42 #:use-module (guix download) 40 #:use-module (guix download)
43 #:use-module (guix git-download)
44 #:use-module (guix build-system gnu)) 41 #:use-module (guix build-system gnu))
45 42
46(define-public wget 43(define-public wget
@@ -74,7 +71,7 @@
74HTTPS and FTP protocols. It can resume interrupted downloads, use file name 71HTTPS and FTP protocols. It can resume interrupted downloads, use file name
75wild cards, supports proxies and cookies, and it can convert absolute links 72wild cards, supports proxies and cookies, and it can convert absolute links
76in downloaded documents to relative links.") 73in downloaded documents to relative links.")
77 (license gpl3+))) ; some files are under GPLv2+ 74 (license license:gpl3+))) ; some files are under GPLv2+
78 75
79(define-public wgetpaste 76(define-public wgetpaste
80 (package 77 (package
@@ -136,68 +133,47 @@ in downloaded documents to relative links.")
136 (description 133 (description
137 "@code{wgetpaste} is an extremely simple command-line interface to various 134 "@code{wgetpaste} is an extremely simple command-line interface to various
138online pastebin services.") 135online pastebin services.")
139 (license public-domain))) 136 (license license:public-domain)))
140 137
141(define-public wget2 138(define-public wget2
142 (package 139 (package
143 (name "wget2") 140 (name "wget2")
144 (version "1.99.1") 141 (version "1.99.2")
145 (source 142 (source
146 (origin 143 (origin
147 (method git-fetch) 144 (method url-fetch)
148 (uri (git-reference 145 (uri (string-append "mirror://gnu/wget/wget2-" version ".tar.gz"))
149 (url "https://gitlab.com/gnuwget/wget2.git")
150 (commit (string-append name "-" version))
151 (recursive? #t))) ;; Needed for 'gnulib' git submodule.
152 (file-name (string-append name "-" version "-checkout"))
153 (sha256 146 (sha256
154 (base32 147 (base32
155 "15wxsnjhc6bzk7f60i1djmsarh1w31gwi5h2gh9k19ncwypfj5dm")))) 148 "0qv55f4bablrlhc8bnic8g3mkk1kq44c4cphrk5jmv92z9aqzi6b"))))
156 (build-system gnu-build-system) 149 (build-system gnu-build-system)
157 (arguments 150 (arguments
158 `(#:phases 151 `(#:phases
159 (modify-phases %standard-phases 152 (modify-phases %standard-phases
160 (add-after 'unpack 'skip-network-test 153 (add-after 'unpack 'skip-network-tests
161 (lambda _ 154 (lambda _
162 (substitute* "tests/Makefile.am" 155 (substitute* "tests/Makefile.in"
163 (("test-auth-digest\\$\\(EXEEXT)") "")) 156 (("test-gpg-verify-no-file\\$\\(EXEEXT)") "")
164 #t)) 157 (("test-gpg-valid\\$\\(EXEEXT)") "")
165 (replace 'bootstrap 158 (("test-gpg-styles\\$\\(EXEEXT)") ""))
166 (lambda _ 159 #t)))
167 ;; Make sure all the files are writable so that ./bootstrap 160 #:configure-flags '("--enable-static=no")))
168 ;; can proceed.
169 (for-each (lambda (file)
170 (chmod file #o755))
171 (find-files "."))
172 (patch-shebang "./gnulib/gnulib-tool.py")
173 ;; Remove unnecessary inputs from bootstrap.conf
174 (substitute* "bootstrap.conf"
175 (("flex.*") "")
176 (("makeinfo.*") "")
177 (("lzip.*") "")
178 (("rsync.*") ""))
179 (invoke "sh" "./bootstrap"
180 "--gnulib-srcdir=gnulib"
181 "--no-git"))))))
182 (inputs 161 (inputs
183 `(("gnutls" ,gnutls/dane) 162 `(("bzip2" ,bzip2)
163 ("gnutls" ,gnutls/dane)
164 ("gpgme" ,gpgme)
184 ("libiconv" ,libiconv) 165 ("libiconv" ,libiconv)
185 ("libidn2" ,libidn2) 166 ("libidn2" ,libidn2)
186 ("libmicrohttpd" ,libmicrohttpd) 167 ("libmicrohttpd" ,libmicrohttpd)
187 ("libpsl" ,libpsl) 168 ("libpsl" ,libpsl)
188 ("pcre2" ,pcre2))) 169 ("pcre2" ,pcre2)
170 ("zlib" ,zlib)))
189 ;; TODO: Add libbrotlidec, libnghttp2. 171 ;; TODO: Add libbrotlidec, libnghttp2.
190 (native-inputs 172 (native-inputs
191 `(("autoconf" ,autoconf) 173 `(("pkg-config" ,pkg-config)))
192 ("automake" ,automake)
193 ("flex" ,flex)
194 ("gettext" ,gettext-minimal)
195 ("libtool" ,libtool)
196 ("pkg-config" ,pkg-config)
197 ("python" ,python-2)))
198 (home-page "https://gitlab.com/gnuwget/wget2") 174 (home-page "https://gitlab.com/gnuwget/wget2")
199 (synopsis "Successor of GNU Wget") 175 (synopsis "Successor of GNU Wget")
200 (description "GNU Wget2 is the successor of GNU Wget, a file and recursive 176 (description "GNU Wget2 is the successor of GNU Wget, a file and recursive
201website downloader. Designed and written from scratch it wraps around libwget, 177website downloader. Designed and written from scratch it wraps around libwget,
202that provides the basic functions needed by a web client.") 178that provides the basic functions needed by a web client.")
203 (license (list gpl3+ lgpl3+)))) 179 (license (list license:gpl3+ license:lgpl3+))))
diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm
index 3a5def50b1c..d1c27a65a7d 100644
--- a/gnu/packages/wine.scm
+++ b/gnu/packages/wine.scm
@@ -318,7 +318,7 @@ integrate Windows applications into your desktop.")
318(define-public wine-staging-patchset-data 318(define-public wine-staging-patchset-data
319 (package 319 (package
320 (name "wine-staging-patchset-data") 320 (name "wine-staging-patchset-data")
321 (version "4.15") 321 (version "4.16")
322 (source 322 (source
323 (origin 323 (origin
324 (method git-fetch) 324 (method git-fetch)
@@ -328,7 +328,7 @@ integrate Windows applications into your desktop.")
328 (file-name (git-file-name name version)) 328 (file-name (git-file-name name version))
329 (sha256 329 (sha256
330 (base32 330 (base32
331 "13g40h2ybcl6vab4zbl1ksqfqyly5hzxssza9dv8r5pmp8x54hgr")))) 331 "0zkvwl6rxr6xcqk4a3h43cak67w6bcyqqnajz6azif07ir3z1c61"))))
332 (build-system trivial-build-system) 332 (build-system trivial-build-system)
333 (native-inputs 333 (native-inputs
334 `(("bash" ,bash) 334 `(("bash" ,bash)
@@ -374,7 +374,7 @@ integrate Windows applications into your desktop.")
374 (file-name (string-append name "-" version ".tar.xz")) 374 (file-name (string-append name "-" version ".tar.xz"))
375 (sha256 375 (sha256
376 (base32 376 (base32
377 "0bfh4vd99zwj7f4108zvs80dfvmmnnsap7i6gmf21jgcly3paygq")))) 377 "17qxbddv23ibbayw1ai984m0dlq63cgplms2jhsc09incjhafywd"))))
378 (inputs `(("autoconf" ,autoconf) ; for autoreconf 378 (inputs `(("autoconf" ,autoconf) ; for autoreconf
379 ("faudio" ,faudio) 379 ("faudio" ,faudio)
380 ("ffmpeg" ,ffmpeg) 380 ("ffmpeg" ,ffmpeg)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index a4ae1c2ddab..275a7665317 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -21,6 +21,7 @@
21;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com> 21;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
22;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com> 22;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com>
23;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com> 23;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
24;;; Copyright © 2019 Kyle Andrews <kyle.c.andrews@gmail.com>
24;;; 25;;;
25;;; This file is part of GNU Guix. 26;;; This file is part of GNU Guix.
26;;; 27;;;
@@ -127,6 +128,86 @@
127the leaves of a full binary tree.") 128the leaves of a full binary tree.")
128 (license license:bsd-2))) 129 (license license:bsd-2)))
129 130
131(define-public herbstluftwm
132 (package
133 (name "herbstluftwm")
134 (version "0.7.2")
135 (source
136 (origin
137 (method url-fetch)
138 (uri (string-append "https://herbstluftwm.org/tarballs/herbstluftwm-"
139 version ".tar.gz"))
140 (sha256
141 (base32
142 "1kc18aj9j3nfz6fj4qxg9s3gg4jvn6kzi3ii24hfm0vqdpy17xnz"))
143 (file-name (string-append "herbstluftwm-" version ".tar.gz"))))
144 (build-system gnu-build-system)
145 (inputs
146 `(("dzen" ,dzen)
147 ("dmenu" ,dmenu)
148 ("glib" ,glib)
149 ("glibmm" ,glibmm)
150 ("xterm" ,xterm)
151 ("xsetroot" ,xsetroot)
152 ("libx11" ,libx11)
153 ("libxext" ,libxext)
154 ("libxinerama" ,libxinerama)))
155 (native-inputs
156 `(("pkg-config" ,pkg-config)))
157 (arguments
158 '(#:phases
159 (modify-phases %standard-phases
160 (delete 'configure)
161 (delete 'check)
162 (add-after 'install 'install-xsession
163 (lambda* (#:key outputs #:allow-other-keys)
164 (let* ((out (assoc-ref outputs "out"))
165 (xsessions (string-append out "/share/xsessions")))
166 (mkdir-p xsessions)
167 (call-with-output-file
168 (string-append xsessions "/herbstluftwm.desktop")
169 (lambda (port)
170 (format port "~
171 [Desktop Entry]~@
172 Name=herbstluftwm~@
173 Comment=Manual tiling window manager~@
174 Exec=~a/bin/herbstluftwm~@
175 Type=XSession~%" out)))
176 #t))))
177 #:tests? #f
178 #:make-flags
179 (let ((out (assoc-ref %outputs "out")))
180 (list "CC=gcc"
181 (string-append "PREFIX=''")
182 (string-append "DESTDIR=" out)
183 (string-append "BASHCOMPLETIONDIR=" out
184 "/etc/bash_completion.d")))))
185 (synopsis "Tiling window manager for X11")
186 (description "herbstluftwm is a manual tiling window manager for X11 using
187Xlib and GLib. Its main features are:
188
189@itemize
190@item
191The layout is based on splitting frames into subframes which can be split
192again or can be filled with windows (similar to i3 or musca).
193
194@item
195Tags (or workspaces or virtual desktops or …) can be added/removed at runtime.
196Each tag contains an own layout.
197
198@item
199Exactly one tag is viewed on each monitor. The tags are monitor independent
200(similar to Xmonad).
201
202@item
203It is configured at runtime via IPC calls from @command{herbstclient}. So the
204configuration file is just a script which is run on startup (similar to wmii
205or musca).
206
207@end itemize")
208 (home-page "https://herbstluftwm.org")
209 (license license:bsd-2)))
210
130(define-public i3status 211(define-public i3status
131 (package 212 (package
132 (name "i3status") 213 (name "i3status")
@@ -270,42 +351,30 @@ Despite the name it should work with any X11 window manager.")
270 (license license:bsd-3))) 351 (license license:bsd-3)))
271 352
272(define-public i3blocks 353(define-public i3blocks
273 (let ((commit "ec050e79ad8489a6f8deb37d4c20ab10729c25c3") 354 (package
274 (revision "2")) 355 (name "i3blocks")
275 (package 356 (version "1.5")
276 (name "i3blocks") 357 (source (origin
277 (version (string-append "1.4-" revision "." 358 (method git-fetch)
278 (string-take commit 7))) 359 (uri (git-reference
279 (source (origin 360 (url "https://github.com/vivien/i3blocks.git")
280 (method git-fetch) 361 (commit version)))
281 (uri (git-reference 362 (sha256
282 (url "https://github.com/vivien/i3blocks.git") 363 (base32
283 (commit commit))) 364 "0v8mwnm8qzpv6xnqvrk43s4b9iyld4naqzbaxk4ldq1qkhai0wsv"))
284 (sha256 365 (file-name (git-file-name name version))))
285 (base32 366 (build-system gnu-build-system)
286 "1fx4230lmqa5rpzph68dwnpcjfaaqv5gfkradcr85hd1z8d1qp1b")) 367 (native-inputs
287 (file-name (git-file-name name version)))) 368 `(("autoconf" ,autoconf)
288 (build-system gnu-build-system) 369 ("automake" ,automake)
289 (arguments 370 ("pkg-config" ,pkg-config)))
290 `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) 371 (home-page "https://github.com/vivien/i3blocks")
291 #:phases (modify-phases %standard-phases 372 (synopsis "Minimalist scheduler for status bar scripts")
292 (add-after 'install 'install-doc 373 (description "i3blocks executes your command lines and generates a
293 (lambda* (#:key outputs #:allow-other-keys)
294 (let* ((out (assoc-ref outputs "out"))
295 (man1 (string-append out "/share/man/man1")))
296 (install-file "docs/i3blocks.1" man1)
297 #t))))))
298 (native-inputs
299 `(("autoconf" ,autoconf)
300 ("automake" ,automake)
301 ("pkg-config" ,pkg-config)))
302 (home-page "https://github.com/vivien/i3blocks")
303 (synopsis "Minimalist scheduler for status bar scripts")
304 (description "i3blocks executes your command lines and generates a
305status line from their output. The generated line is meant to be displayed by 374status line from their output. The generated line is meant to be displayed by
306the i3 window manager through its i3bar component, as an alternative to 375the i3 window manager through its i3bar component, as an alternative to
307i3status.") 376i3status.")
308 (license license:gpl3+)))) 377 (license license:gpl3+)))
309 378
310(define-public perl-anyevent-i3 379(define-public perl-anyevent-i3
311 (package 380 (package
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index 0487c24b680..c71285c7bd7 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -9,6 +9,7 @@
9;;; Copyright © 2017 ng0 <ng0@n0.is> 9;;; Copyright © 2017 ng0 <ng0@n0.is>
10;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> 10;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
11;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com> 11;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
12;;; Copyright © 2019 L p R n d n <guix@lprndn.info>
12;;; 13;;;
13;;; This file is part of GNU Guix. 14;;; This file is part of GNU Guix.
14;;; 15;;;
@@ -283,11 +284,14 @@ merging features essential for loading menus modified with menu editors.")
283 (inputs 284 (inputs
284 `(("dbus" ,dbus) 285 `(("dbus" ,dbus)
285 ("gdk-pixbuf" ,gdk-pixbuf) 286 ("gdk-pixbuf" ,gdk-pixbuf)
287 ("cairo" ,cairo) ;; Needed for pdf thumbnails (poppler-glibc.pc)
286 ("freetype" ,freetype) 288 ("freetype" ,freetype)
287 ("libjpeg" ,libjpeg) 289 ("libjpeg" ,libjpeg)
288 ("libgsf" ,libgsf) 290 ("libgsf" ,libgsf)
289 ("poppler" ,poppler) 291 ("poppler" ,poppler)
290 ("gstreamer" ,gstreamer))) 292 ;; FIXME Provide gstreamer and gstreamer-tag to get video thumbnails
293 ;; ("gstreamer" ,gstreamer)
294 ))
291 (home-page "https://www.xfce.org/") 295 (home-page "https://www.xfce.org/")
292 (synopsis "D-Bus service for applications to request thumbnails") 296 (synopsis "D-Bus service for applications to request thumbnails")
293 (description 297 (description
@@ -638,7 +642,7 @@ like appearance, display, keyboard and mouse settings.")
638(define-public thunar 642(define-public thunar
639 (package 643 (package
640 (name "thunar") 644 (name "thunar")
641 (version "1.8.7") 645 (version "1.8.9")
642 (source (origin 646 (source (origin
643 (method url-fetch) 647 (method url-fetch)
644 (uri (string-append "http://archive.xfce.org/src/xfce/" 648 (uri (string-append "http://archive.xfce.org/src/xfce/"
@@ -646,7 +650,7 @@ like appearance, display, keyboard and mouse settings.")
646 "Thunar-" version ".tar.bz2")) 650 "Thunar-" version ".tar.bz2"))
647 (sha256 651 (sha256
648 (base32 652 (base32
649 "0afkp528mwwa2m18m39mvw53qgaijyynrw9wwwiyxgjiczq3l0ry")))) 653 "1fah2d7v3a7fp28xa5wv896rap1iad9q9y04qchca09mq1x8wxbs"))))
650 (build-system gnu-build-system) 654 (build-system gnu-build-system)
651 (native-inputs 655 (native-inputs
652 `(("pkg-config" ,pkg-config) 656 `(("pkg-config" ,pkg-config)
@@ -670,7 +674,7 @@ fast.")
670(define-public thunar-volman 674(define-public thunar-volman
671 (package 675 (package
672 (name "thunar-volman") 676 (name "thunar-volman")
673 (version "0.9.3") 677 (version "0.9.5")
674 (source 678 (source
675 (origin 679 (origin
676 (method url-fetch) 680 (method url-fetch)
@@ -678,7 +682,7 @@ fast.")
678 (version-major+minor version) "/" 682 (version-major+minor version) "/"
679 "thunar-volman-" version ".tar.bz2")) 683 "thunar-volman-" version ".tar.bz2"))
680 (sha256 684 (sha256
681 (base32 "1sfmz40164rg77hclrkrgnbk8cb7f325qqi7lz2hh3wbvf8r0c19")))) 685 (base32 "0dqqkbhn43hhmhqyx1fnmawpvysdjzw6ln4ryf629wil6dlwd9vy"))))
682 (build-system gnu-build-system) 686 (build-system gnu-build-system)
683 (native-inputs 687 (native-inputs
684 `(("pkg-config" ,pkg-config) 688 `(("pkg-config" ,pkg-config)
@@ -907,7 +911,7 @@ inhibit interface which allows applications to prevent automatic sleep.")
907(define-public ristretto 911(define-public ristretto
908 (package 912 (package
909 (name "ristretto") 913 (name "ristretto")
910 (version "0.8.4") 914 (version "0.10.0")
911 (source (origin 915 (source (origin
912 (method url-fetch) 916 (method url-fetch)
913 (uri (string-append "http://archive.xfce.org/src/apps/ristretto/" 917 (uri (string-append "http://archive.xfce.org/src/apps/ristretto/"
@@ -915,14 +919,14 @@ inhibit interface which allows applications to prevent automatic sleep.")
915 "ristretto-" version ".tar.bz2")) 919 "ristretto-" version ".tar.bz2"))
916 (sha256 920 (sha256
917 (base32 921 (base32
918 "18nf01djwnbjc91bdlv3p0h6pwcq1kfnjgp6yaxhxv4kdi9f82rs")))) 922 "0sa75m1w6yvv4xvzrwqiif6vnqgi29hjrixrh87nxss58bbms8hn"))))
919 (build-system gnu-build-system) 923 (build-system gnu-build-system)
920 (native-inputs 924 (native-inputs
921 `(("intltool" ,intltool) 925 `(("intltool" ,intltool)
922 ("pkg-config" ,pkg-config))) 926 ("pkg-config" ,pkg-config)))
923 (inputs 927 (inputs
924 `(("desktop-file-utils" ,desktop-file-utils) 928 `(("desktop-file-utils" ,desktop-file-utils)
925 ("gtk+" ,gtk+-2) 929 ("gtk+" ,gtk+)
926 ("libexif" ,libexif) 930 ("libexif" ,libexif)
927 ("libxfce4ui" ,libxfce4ui) 931 ("libxfce4ui" ,libxfce4ui)
928 ("librsvg" ,librsvg) 932 ("librsvg" ,librsvg)
@@ -978,6 +982,14 @@ memory usage graphically, and it can display processes as a tree.")
978 (sha256 982 (sha256
979 (base32 983 (base32
980 "0qlhvnl2m33vfxqlbkic2nmfpwyd4mq230jzhs48cg78392amy9w")))) 984 "0qlhvnl2m33vfxqlbkic2nmfpwyd4mq230jzhs48cg78392amy9w"))))
985 (arguments
986 `(#:phases
987 (modify-phases %standard-phases
988 (add-after 'unpack 'fix-build-with-libical3
989 (lambda* _
990 (substitute* "src/ical-code.c" ;; .is_utc not available in libical3
991 ((".*\\.is_utc.*$") ""))
992 #t)))))
981 (build-system gnu-build-system) 993 (build-system gnu-build-system)
982 (native-inputs 994 (native-inputs
983 `(("intltool" ,intltool) 995 `(("intltool" ,intltool)
@@ -1068,7 +1080,7 @@ of data to either CD/DVD/BD.")
1068(define-public mousepad 1080(define-public mousepad
1069 (package 1081 (package
1070 (name "mousepad") 1082 (name "mousepad")
1071 (version "0.4.1") 1083 (version "0.4.2")
1072 (source (origin 1084 (source (origin
1073 (method url-fetch) 1085 (method url-fetch)
1074 (uri (string-append "http://archive.xfce.org/src/apps/mousepad/" 1086 (uri (string-append "http://archive.xfce.org/src/apps/mousepad/"
@@ -1076,11 +1088,10 @@ of data to either CD/DVD/BD.")
1076 version ".tar.bz2")) 1088 version ".tar.bz2"))
1077 (sha256 1089 (sha256
1078 (base32 1090 (base32
1079 "12si6fvhp68wz4scr339c23jxqq5ywn5nf4w55jld5lxjadkg9rr")))) 1091 "1myy7954r1a30dk7inwy7kwki7zvfbnnsc3a8swk72vzrbgjmh44"))))
1080 (build-system gnu-build-system) 1092 (build-system gnu-build-system)
1081 (arguments 1093 (arguments
1082 '(#:configure-flags '("--enable-gtk3" 1094 '(#:configure-flags '(;; Use the GSettings keyfile backend rather than
1083 ;; Use the GSettings keyfile backend rather than
1084 ;; DConf. 1095 ;; DConf.
1085 "--enable-keyfile-settings") 1096 "--enable-keyfile-settings")
1086 #:phases 1097 #:phases
@@ -1100,7 +1111,8 @@ of data to either CD/DVD/BD.")
1100 ("pkg-config" ,pkg-config))) 1111 ("pkg-config" ,pkg-config)))
1101 (inputs 1112 (inputs
1102 `(("gtk+" ,gtk+) 1113 `(("gtk+" ,gtk+)
1103 ("gtksourceview" ,gtksourceview-3))) 1114 ("gtksourceview" ,gtksourceview-3)
1115 ("xfconf" ,xfconf)))
1104 (home-page "https://git.xfce.org/apps/mousepad/") 1116 (home-page "https://git.xfce.org/apps/mousepad/")
1105 (synopsis "Simple text editor for Xfce") 1117 (synopsis "Simple text editor for Xfce")
1106 (description 1118 (description
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index dcb7278f0f6..25716ef152f 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -8,6 +8,7 @@
8;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> 8;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
9;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> 9;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
10;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> 10;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
11;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
11;;; Copyright © 2019 John Soo <jsoo1@asu.edu> 12;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
12;;; 13;;;
13;;; This file is part of GNU Guix. 14;;; This file is part of GNU Guix.
@@ -41,9 +42,9 @@
41 #:use-module (gnu packages admin) 42 #:use-module (gnu packages admin)
42 #:use-module ((gnu packages linux) 43 #:use-module ((gnu packages linux)
43 #:select (alsa-utils crda eudev e2fsprogs fuse gpm kbd lvm2 rng-tools)) 44 #:select (alsa-utils crda eudev e2fsprogs fuse gpm kbd lvm2 rng-tools))
44 #:use-module ((gnu packages base)
45 #:select (canonical-package glibc glibc-utf8-locales))
46 #:use-module (gnu packages bash) 45 #:use-module (gnu packages bash)
46 #:use-module ((gnu packages base)
47 #:select (canonical-package coreutils glibc glibc-utf8-locales))
47 #:use-module (gnu packages package-management) 48 #:use-module (gnu packages package-management)
48 #:use-module ((gnu packages gnupg) #:select (guile-gcrypt)) 49 #:use-module ((gnu packages gnupg) #:select (guile-gcrypt))
49 #:use-module (gnu packages linux) 50 #:use-module (gnu packages linux)
@@ -2425,6 +2426,8 @@ to handle."
2425 2426
2426 (service special-files-service-type 2427 (service special-files-service-type
2427 `(("/bin/sh" ,(file-append (canonical-package bash) 2428 `(("/bin/sh" ,(file-append (canonical-package bash)
2428 "/bin/sh")))))) 2429 "/bin/sh"))
2430 ("/usr/bin/env" ,(file-append (canonical-package coreutils)
2431 "/bin/env"))))))
2429 2432
2430;;; base.scm ends here 2433;;; base.scm ends here
diff --git a/gnu/services/certbot.scm b/gnu/services/certbot.scm
index ae34ad17bb7..0d3be033838 100644
--- a/gnu/services/certbot.scm
+++ b/gnu/services/certbot.scm
@@ -99,6 +99,7 @@
99 "--manual" 99 "--manual"
100 (string-append "--preferred-challenges=" challenge) 100 (string-append "--preferred-challenges=" challenge)
101 "--cert-name" name 101 "--cert-name" name
102 "--manual-public-ip-logging-ok"
102 "-d" (string-join domains ",")) 103 "-d" (string-join domains ","))
103 (if rsa-key-size `("--rsa-key-size" ,rsa-key-size) '()) 104 (if rsa-key-size `("--rsa-key-size" ,rsa-key-size) '())
104 (if authentication-hook 105 (if authentication-hook
diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm
index 376b4ccc4e2..c775242f998 100644
--- a/gnu/services/networking.scm
+++ b/gnu/services/networking.scm
@@ -51,6 +51,7 @@
51 #:use-module (guix records) 51 #:use-module (guix records)
52 #:use-module (guix modules) 52 #:use-module (guix modules)
53 #:use-module (guix deprecation) 53 #:use-module (guix deprecation)
54 #:use-module (rnrs enums)
54 #:use-module (srfi srfi-1) 55 #:use-module (srfi srfi-1)
55 #:use-module (srfi srfi-9) 56 #:use-module (srfi srfi-9)
56 #:use-module (srfi srfi-26) 57 #:use-module (srfi srfi-26)
@@ -72,13 +73,22 @@
72 dhcpd-configuration-pid-file 73 dhcpd-configuration-pid-file
73 dhcpd-configuration-interfaces 74 dhcpd-configuration-interfaces
74 75
75 %ntp-servers
76
77 ntp-configuration 76 ntp-configuration
78 ntp-configuration? 77 ntp-configuration?
78 ntp-configuration-ntp
79 ntp-configuration-servers
80 ntp-allow-large-adjustment?
81
82 %ntp-servers
83 ntp-server
84 ntp-server-type
85 ntp-server-address
86 ntp-server-options
87
79 ntp-service 88 ntp-service
80 ntp-service-type 89 ntp-service-type
81 90
91 %openntpd-servers
82 openntpd-configuration 92 openntpd-configuration
83 openntpd-configuration? 93 openntpd-configuration?
84 openntpd-service-type 94 openntpd-service-type
@@ -292,30 +302,86 @@ Protocol (DHCP) client, on all the non-loopback network interfaces."
292 (list (service-extension shepherd-root-service-type dhcpd-shepherd-service) 302 (list (service-extension shepherd-root-service-type dhcpd-shepherd-service)
293 (service-extension activation-service-type dhcpd-activation))))) 303 (service-extension activation-service-type dhcpd-activation)))))
294 304
295(define %ntp-servers
296 ;; Default set of NTP servers. These URLs are managed by the NTP Pool project.
297 ;; Within Guix, Leo Famulari <leo@famulari.name> is the administrative contact
298 ;; for this NTP pool "zone".
299 '("0.guix.pool.ntp.org"
300 "1.guix.pool.ntp.org"
301 "2.guix.pool.ntp.org"
302 "3.guix.pool.ntp.org"))
303
304 305
305;;; 306;;;
306;;; NTP. 307;;; NTP.
307;;; 308;;;
308 309
309;; TODO: Export. 310(define ntp-server-types (make-enumeration
311 '(pool
312 server
313 peer
314 broadcast
315 manycastclient)))
316
317(define-record-type* <ntp-server>
318 ntp-server make-ntp-server
319 ntp-server?
320 ;; The type can be one of the symbols of the NTP-SERVER-TYPE? enumeration.
321 (type ntp-server-type
322 (default 'server))
323 (address ntp-server-address) ; a string
324 ;; The list of options can contain single option names or tuples in the form
325 ;; '(name value).
326 (options ntp-server-options
327 (default '())))
328
329(define (ntp-server->string ntp-server)
330 ;; Serialize the NTP server object as a string, ready to use in the NTP
331 ;; configuration file.
332 (define (flatten lst)
333 (reverse
334 (let loop ((x lst)
335 (res '()))
336 (if (list? x)
337 (fold loop res x)
338 (cons (format #f "~s" x) res)))))
339
340 (match ntp-server
341 (($ <ntp-server> type address options)
342 ;; XXX: It'd be neater if fields were validated at the syntax level (for
343 ;; static ones at least). Perhaps the Guix record type could support a
344 ;; predicate property on a field?
345 (unless (enum-set-member? type ntp-server-types)
346 (error "Invalid NTP server type" type))
347 (string-join (cons* (symbol->string type)
348 address
349 (flatten options))))))
350
351(define %ntp-servers
352 ;; Default set of NTP servers. These URLs are managed by the NTP Pool project.
353 ;; Within Guix, Leo Famulari <leo@famulari.name> is the administrative contact
354 ;; for this NTP pool "zone".
355 (list
356 (ntp-server
357 (type 'pool)
358 (address "0.guix.pool.ntp.org")
359 (options '("iburst"))))) ;as recommended in the ntpd manual
360
310(define-record-type* <ntp-configuration> 361(define-record-type* <ntp-configuration>
311 ntp-configuration make-ntp-configuration 362 ntp-configuration make-ntp-configuration
312 ntp-configuration? 363 ntp-configuration?
313 (ntp ntp-configuration-ntp 364 (ntp ntp-configuration-ntp
314 (default ntp)) 365 (default ntp))
315 (servers ntp-configuration-servers 366 (servers %ntp-configuration-servers ;list of <ntp-server> objects
316 (default %ntp-servers)) 367 (default %ntp-servers))
317 (allow-large-adjustment? ntp-allow-large-adjustment? 368 (allow-large-adjustment? ntp-allow-large-adjustment?
318 (default #f))) 369 (default #t))) ;as recommended in the ntpd manual
370
371(define (ntp-configuration-servers ntp-configuration)
372 ;; A wrapper to support the deprecated form of this field.
373 (let ((ntp-servers (%ntp-configuration-servers ntp-configuration)))
374 (match ntp-servers
375 (((? string?) (? string?) ...)
376 (format (current-error-port) "warning: Defining NTP servers as strings is \
377deprecated. Please use <ntp-server> records instead.\n")
378 (map (lambda (addr)
379 (ntp-server
380 (type 'server)
381 (address addr)
382 (options '()))) ntp-servers))
383 ((($ <ntp-server>) ($ <ntp-server>) ...)
384 ntp-servers))))
319 385
320(define ntp-shepherd-service 386(define ntp-shepherd-service
321 (match-lambda 387 (match-lambda
@@ -324,18 +390,21 @@ Protocol (DHCP) client, on all the non-loopback network interfaces."
324 ;; TODO: Add authentication support. 390 ;; TODO: Add authentication support.
325 (define config 391 (define config
326 (string-append "driftfile /var/run/ntpd/ntp.drift\n" 392 (string-append "driftfile /var/run/ntpd/ntp.drift\n"
327 (string-join (map (cut string-append "server " <>) 393 (string-join (map ntp-server->string servers)
328 servers)
329 "\n") 394 "\n")
330 " 395 "
331# Disable status queries as a workaround for CVE-2013-5211: 396# Disable status queries as a workaround for CVE-2013-5211:
332# <http://support.ntp.org/bin/view/Main/SecurityNotice#DRDoS_Amplification_Attack_using>. 397# <http://support.ntp.org/bin/view/Main/SecurityNotice#DRDoS_Amplification_Attack_using>.
333restrict default kod nomodify notrap nopeer noquery 398restrict default kod nomodify notrap nopeer noquery limited
334restrict -6 default kod nomodify notrap nopeer noquery 399restrict -6 default kod nomodify notrap nopeer noquery limited
335 400
336# Yet, allow use of the local 'ntpq'. 401# Yet, allow use of the local 'ntpq'.
337restrict 127.0.0.1 402restrict 127.0.0.1
338restrict -6 ::1\n")) 403restrict -6 ::1
404
405# This is required to use servers from a pool directive when using the 'nopeer'
406# option by default, as documented in the 'ntp.conf' manual.
407restrict source notrap nomodify noquery\n"))
339 408
340 (define ntpd.conf 409 (define ntpd.conf
341 (plain-file "ntpd.conf" config)) 410 (plain-file "ntpd.conf" config))
@@ -409,6 +478,9 @@ make an initial adjustment of more than 1,000 seconds."
409;;; OpenNTPD. 478;;; OpenNTPD.
410;;; 479;;;
411 480
481(define %openntpd-servers
482 (map ntp-server-address %ntp-servers))
483
412(define-record-type* <openntpd-configuration> 484(define-record-type* <openntpd-configuration>
413 openntpd-configuration make-openntpd-configuration 485 openntpd-configuration make-openntpd-configuration
414 openntpd-configuration? 486 openntpd-configuration?
@@ -422,9 +494,9 @@ make an initial adjustment of more than 1,000 seconds."
422 (sensor openntpd-sensor 494 (sensor openntpd-sensor
423 (default '())) 495 (default '()))
424 (server openntpd-server 496 (server openntpd-server
425 (default %ntp-servers))
426 (servers openntpd-servers
427 (default '())) 497 (default '()))
498 (servers openntpd-servers
499 (default %openntpd-servers))
428 (constraint-from openntpd-constraint-from 500 (constraint-from openntpd-constraint-from
429 (default '())) 501 (default '()))
430 (constraints-from openntpd-constraints-from 502 (constraints-from openntpd-constraints-from
@@ -432,45 +504,58 @@ make an initial adjustment of more than 1,000 seconds."
432 (allow-large-adjustment? openntpd-allow-large-adjustment? 504 (allow-large-adjustment? openntpd-allow-large-adjustment?
433 (default #f))) ; upstream default 505 (default #f))) ; upstream default
434 506
435(define (openntpd-shepherd-service config) 507(define (openntpd-configuration->string config)
508
509 (define (quote-field? name)
510 (member name '("constraints from")))
511
436 (match-record config <openntpd-configuration> 512 (match-record config <openntpd-configuration>
437 (openntpd listen-on query-from sensor server servers constraint-from 513 (listen-on query-from sensor server servers constraint-from
438 constraints-from allow-large-adjustment?) 514 constraints-from)
439 (let () 515 (string-append
440 (define config 516 (string-join
441 (string-join 517 (concatenate
442 (filter-map 518 (filter-map (lambda (field values)
443 (lambda (field value) 519 (match values
444 (string-join 520 (() #f) ;discard entry with filter-map
445 (map (cut string-append field <> "\n") 521 ((val ...) ;validate value type
446 value))) 522 (map (lambda (value)
447 '("listen on " "query from " "sensor " "server " "servers " 523 (if (quote-field? field)
448 "constraint from ") 524 (format #f "~a \"~a\"" field value)
449 (list listen-on query-from sensor server servers constraint-from)) 525 (format #f "~a ~a" field value)))
450 ;; The 'constraints from' field needs to be enclosed in double quotes. 526 values))))
451 (string-join 527 ;; The entry names.
452 (map (cut string-append "constraints from \"" <> "\"\n") 528 '("listen on" "query from" "sensor" "server" "servers"
453 constraints-from)))) 529 "constraint from" "constraints from")
454 530 ;; The corresponding entry values.
455 (define ntpd.conf 531 (list listen-on query-from sensor server servers
456 (plain-file "ntpd.conf" config)) 532 constraint-from constraints-from)))
457 533 "\n")
458 (list (shepherd-service 534 "\n"))) ;add a trailing newline
459 (provision '(ntpd)) 535
460 (documentation "Run the Network Time Protocol (NTP) daemon.") 536(define (openntpd-shepherd-service config)
461 (requirement '(user-processes networking)) 537 (let ((openntpd (openntpd-configuration-openntpd config))
462 (start #~(make-forkexec-constructor 538 (allow-large-adjustment? (openntpd-allow-large-adjustment? config)))
463 (list (string-append #$openntpd "/sbin/ntpd") 539
464 "-f" #$ntpd.conf 540 (define ntpd.conf
465 "-d" ;; don't daemonize 541 (plain-file "ntpd.conf" (openntpd-configuration->string config)))
466 #$@(if allow-large-adjustment? 542
467 '("-s") 543 (list (shepherd-service
468 '())) 544 (provision '(ntpd))
469 ;; When ntpd is daemonized it repeatedly tries to respawn 545 (documentation "Run the Network Time Protocol (NTP) daemon.")
470 ;; while running, leading shepherd to disable it. To 546 (requirement '(user-processes networking))
471 ;; prevent spamming stderr, redirect output to logfile. 547 (start #~(make-forkexec-constructor
472 #:log-file "/var/log/ntpd")) 548 (list (string-append #$openntpd "/sbin/ntpd")
473 (stop #~(make-kill-destructor))))))) 549 "-f" #$ntpd.conf
550 "-d" ;; don't daemonize
551 #$@(if allow-large-adjustment?
552 '("-s")
553 '()))
554 ;; When ntpd is daemonized it repeatedly tries to respawn
555 ;; while running, leading shepherd to disable it. To
556 ;; prevent spamming stderr, redirect output to logfile.
557 #:log-file "/var/log/ntpd"))
558 (stop #~(make-kill-destructor))))))
474 559
475(define (openntpd-service-activation config) 560(define (openntpd-service-activation config)
476 "Return the activation gexp for CONFIG." 561 "Return the activation gexp for CONFIG."
diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm
index 705ed84d067..3eecd2c0857 100644
--- a/gnu/services/virtualization.scm
+++ b/gnu/services/virtualization.scm
@@ -432,7 +432,10 @@ potential infinite waits blocking libvirt."))
432 (provision '(libvirtd)) 432 (provision '(libvirtd))
433 (start #~(make-forkexec-constructor 433 (start #~(make-forkexec-constructor
434 (list (string-append #$libvirt "/sbin/libvirtd") 434 (list (string-append #$libvirt "/sbin/libvirtd")
435 "-f" #$config-file))) 435 "-f" #$config-file)
436 #:environment-variables
437 ;; For finding qemu binaries.
438 '("PATH=/run/current-system/profile/bin")))
436 (stop #~(make-kill-destructor)))))) 439 (stop #~(make-kill-destructor))))))
437 440
438(define libvirt-service-type 441(define libvirt-service-type
@@ -442,8 +445,10 @@ potential infinite waits blocking libvirt."))
442 (service-extension polkit-service-type 445 (service-extension polkit-service-type
443 (compose list libvirt-configuration-libvirt)) 446 (compose list libvirt-configuration-libvirt))
444 (service-extension profile-service-type 447 (service-extension profile-service-type
445 (compose list 448 (lambda (config)
446 libvirt-configuration-libvirt)) 449 (list
450 (libvirt-configuration-libvirt config)
451 qemu)))
447 (service-extension activation-service-type 452 (service-extension activation-service-type
448 %libvirt-activation) 453 %libvirt-activation)
449 (service-extension shepherd-root-service-type 454 (service-extension shepherd-root-service-type
diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm
index d11b36f25da..6cf6ccc53eb 100644
--- a/gnu/system/file-systems.scm
+++ b/gnu/system/file-systems.scm
@@ -508,7 +508,7 @@ a bind mount."
508 ;; symlink to a file in a tmpfs which, for an unknown reason, 508 ;; symlink to a file in a tmpfs which, for an unknown reason,
509 ;; cannot be bind mounted read-only within the container. 509 ;; cannot be bind mounted read-only within the container.
510 (writable? (string=? file "/etc/resolv.conf")))) 510 (writable? (string=? file "/etc/resolv.conf"))))
511 %network-configuration-files)) 511 (cons "/var/run/nscd" %network-configuration-files)))
512 512
513(define (file-system-type-predicate type) 513(define (file-system-type-predicate type)
514 "Return a predicate that, when passed a file system, returns #t if that file 514 "Return a predicate that, when passed a file system, returns #t if that file
diff --git a/gnu/system/linux-container.scm b/gnu/system/linux-container.scm
index 6273cee3d30..c6124cd223b 100644
--- a/gnu/system/linux-container.scm
+++ b/gnu/system/linux-container.scm
@@ -30,6 +30,7 @@
30 #:use-module (gnu build linux-container) 30 #:use-module (gnu build linux-container)
31 #:use-module (gnu services) 31 #:use-module (gnu services)
32 #:use-module (gnu services base) 32 #:use-module (gnu services base)
33 #:use-module (gnu services networking)
33 #:use-module (gnu services shepherd) 34 #:use-module (gnu services shepherd)
34 #:use-module (gnu system) 35 #:use-module (gnu system)
35 #:use-module (gnu system file-systems) 36 #:use-module (gnu system file-systems)
@@ -109,7 +110,11 @@ containerized OS. EXTRA-FILE-SYSTEMS is a list of file systems to add to OS."
109 ;; Remove nscd service if network is shared with the host. 110 ;; Remove nscd service if network is shared with the host.
110 (if shared-network? 111 (if shared-network?
111 (list nscd-service-type 112 (list nscd-service-type
112 static-networking-service-type) 113 static-networking-service-type
114 dhcp-client-service-type
115 network-manager-service-type
116 connman-service-type
117 wicd-service-type)
113 (list)))) 118 (list))))
114 119
115 (operating-system 120 (operating-system
@@ -147,13 +152,6 @@ containerized OS. EXTRA-FILE-SYSTEMS is a list of file systems to add to OS."
147 "Return a derivation of a script that runs OS as a Linux container. 152 "Return a derivation of a script that runs OS as a Linux container.
148MAPPINGS is a list of <file-system> objects that specify the files/directories 153MAPPINGS is a list of <file-system> objects that specify the files/directories
149that will be shared with the host system." 154that will be shared with the host system."
150 (define nscd-run-directory "/var/run/nscd")
151
152 (define nscd-mapping
153 (file-system-mapping
154 (source nscd-run-directory)
155 (target nscd-run-directory)))
156
157 (define (mountable-file-system? file-system) 155 (define (mountable-file-system? file-system)
158 ;; Return #t if FILE-SYSTEM should be mounted in the container. 156 ;; Return #t if FILE-SYSTEM should be mounted in the container.
159 (and (not (string=? "/" (file-system-mount-point file-system))) 157 (and (not (string=? "/" (file-system-mount-point file-system)))
@@ -168,28 +166,42 @@ that will be shared with the host system."
168 os (cons %store-mapping mappings) 166 os (cons %store-mapping mappings)
169 #:shared-network? shared-network? 167 #:shared-network? shared-network?
170 #:extra-file-systems %container-file-systems)) 168 #:extra-file-systems %container-file-systems))
171 (nscd-os (containerized-operating-system 169 (specs (os-file-system-specs os)))
172 os (cons* nscd-mapping %store-mapping mappings)
173 #:shared-network? shared-network?
174 #:extra-file-systems %container-file-systems))
175 (specs (os-file-system-specs os))
176 (nscd-specs (os-file-system-specs nscd-os)))
177 170
178 (define script 171 (define script
179 (with-imported-modules (source-module-closure 172 (with-imported-modules (source-module-closure
180 '((guix build utils) 173 '((guix build utils)
181 (gnu build linux-container))) 174 (gnu build linux-container)
175 (guix i18n)
176 (guix diagnostics)))
182 #~(begin 177 #~(begin
183 (use-modules (gnu build linux-container) 178 (use-modules (gnu build linux-container)
184 (gnu system file-systems) ;spec->file-system 179 (gnu system file-systems) ;spec->file-system
185 (guix build utils)) 180 (guix build utils)
186 181 (guix i18n)
187 (call-with-container 182 (guix diagnostics)
188 (map spec->file-system 183 (srfi srfi-1))
189 (if (and #$shared-network? 184
190 (file-exists? #$nscd-run-directory)) 185 (define file-systems
191 '#$nscd-specs 186 (filter-map (lambda (spec)
192 '#$specs)) 187 (let* ((fs (spec->file-system spec))
188 (flags (file-system-flags fs)))
189 (and (or (not (memq 'bind-mount flags))
190 (file-exists? (file-system-device fs)))
191 fs)))
192 '#$specs))
193
194 (define (explain pid)
195 ;; XXX: We can't quite call 'bindtextdomain' so there's actually
196 ;; no i18n.
197 (info (G_ "system container is running as PID ~a~%") pid)
198 ;; XXX: Should we recommend 'guix container exec'? It's more
199 ;; verbose and doesn't bring much.
200 (info (G_ "Run 'sudo nsenter -a -t ~a' to get a shell into it.~%")
201 pid)
202 (newline (guix-warning-port)))
203
204 (call-with-container file-systems
193 (lambda () 205 (lambda ()
194 (setenv "HOME" "/root") 206 (setenv "HOME" "/root")
195 (setenv "TMPDIR" "/tmp") 207 (setenv "TMPDIR" "/tmp")
@@ -203,7 +215,8 @@ that will be shared with the host system."
203 #:host-uids 65536 215 #:host-uids 65536
204 #:namespaces (if #$shared-network? 216 #:namespaces (if #$shared-network?
205 (delq 'net %namespaces) 217 (delq 'net %namespaces)
206 %namespaces))))) 218 %namespaces)
219 #:process-spawned-hook explain))))
207 220
208 (gexp->script "run-container" script))) 221 (gexp->script "run-container" script)))
209 222