summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk8
-rw-r--r--gnu/packages/admin.scm4
-rw-r--r--gnu/packages/assembly.scm59
-rw-r--r--gnu/packages/astronomy.scm11
-rw-r--r--gnu/packages/audio.scm4
-rw-r--r--gnu/packages/aux-files/linux-libre/4.20-arm.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/4.20-arm64.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/4.20-i686.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/4.20-x86_64.conf3
-rw-r--r--gnu/packages/bioconductor.scm89
-rw-r--r--gnu/packages/bioinformatics.scm157
-rw-r--r--gnu/packages/bittorrent.scm1
-rw-r--r--gnu/packages/compression.scm280
-rw-r--r--gnu/packages/cran.scm1743
-rw-r--r--gnu/packages/crypto.scm126
-rw-r--r--gnu/packages/django.scm4
-rw-r--r--gnu/packages/dns.scm4
-rw-r--r--gnu/packages/docker.scm320
-rw-r--r--gnu/packages/emacs.scm168
-rw-r--r--gnu/packages/firmware.scm4
-rw-r--r--gnu/packages/freedesktop.scm12
-rw-r--r--gnu/packages/games.scm12
-rw-r--r--gnu/packages/gnome.scm12
-rw-r--r--gnu/packages/gnupg.scm4
-rw-r--r--gnu/packages/graphics.scm46
-rw-r--r--gnu/packages/guile.scm30
-rw-r--r--gnu/packages/irc.scm16
-rw-r--r--gnu/packages/java-compression.scm308
-rw-r--r--gnu/packages/java.scm1
-rw-r--r--gnu/packages/kde-frameworks.scm4
-rw-r--r--gnu/packages/libreoffice.scm59
-rw-r--r--gnu/packages/linux.scm21
-rw-r--r--gnu/packages/maths.scm6
-rw-r--r--gnu/packages/networking.scm95
-rw-r--r--gnu/packages/package-management.scm39
-rw-r--r--gnu/packages/password-utils.scm62
-rw-r--r--gnu/packages/patches/aria2-CVE-2019-3500.patch55
-rw-r--r--gnu/packages/patches/docker-engine-test-noinstall.patch23
-rw-r--r--gnu/packages/patches/docker-fix-tests.patch28
-rw-r--r--gnu/packages/patches/kinit-kdeinit-libpath.patch2
-rw-r--r--gnu/packages/pdf.scm4
-rw-r--r--gnu/packages/photo.scm4
-rw-r--r--gnu/packages/python.scm57
-rw-r--r--gnu/packages/regex.scm4
-rw-r--r--gnu/packages/statistics.scm126
-rw-r--r--gnu/packages/tex.scm150
-rw-r--r--gnu/packages/upnp.scm4
-rw-r--r--gnu/packages/version-control.scm4
-rw-r--r--gnu/packages/video.scm33
-rw-r--r--gnu/packages/virtualization.scm28
-rw-r--r--gnu/packages/web.scm18
-rw-r--r--gnu/packages/wine.scm138
-rw-r--r--gnu/packages/xdisorg.scm14
-rw-r--r--gnu/services/base.scm21
-rw-r--r--gnu/services/docker.scm102
-rw-r--r--gnu/services/mcron.scm6
-rw-r--r--gnu/services/messaging.scm10
-rw-r--r--gnu/services/networking.scm20
-rw-r--r--gnu/services/xorg.scm37
-rw-r--r--gnu/system/install.scm3
-rw-r--r--gnu/tests/base.scm5
-rw-r--r--gnu/tests/docker.scm99
-rw-r--r--gnu/tests/networking.scm2
63 files changed, 3737 insertions, 981 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index e4c5561de5..f4de1a44a4 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1,5 +1,5 @@
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 # Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Andreas Enge <andreas@enge.fr>
 # Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
 # Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
@@ -241,6 +241,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/irc.scm  			\
   %D%/packages/iso-codes.scm			\
   %D%/packages/java.scm				\
+  %D%/packages/java-compression.scm		\
   %D%/packages/javascript.scm			\
   %D%/packages/jemalloc.scm			\
   %D%/packages/jrnl.scm				\
@@ -483,6 +484,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/services/desktop.scm			\
   %D%/services/dict.scm				\
   %D%/services/dns.scm				\
+  %D%/services/docker.scm			\
   %D%/services/authentication.scm		\
   %D%/services/games.scm			\
   %D%/services/kerberos.scm			\
@@ -541,6 +543,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/tests/databases.scm			\
   %D%/tests/desktop.scm				\
   %D%/tests/dict.scm				\
+  %D%/tests/docker.scm				\
   %D%/tests/monitoring.scm                      \
   %D%/tests/nfs.scm				\
   %D%/tests/install.scm				\
@@ -588,6 +591,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch	\
   %D%/packages/patches/ao-cad-aarch64-support.patch		\
   %D%/packages/patches/apr-skip-getservbyname-test.patch	\
+  %D%/packages/patches/aria2-CVE-2019-3500.patch		\
   %D%/packages/patches/aspell-default-dict-dir.patch		\
   %D%/packages/patches/ath9k-htc-firmware-binutils.patch	\
   %D%/packages/patches/ath9k-htc-firmware-gcc.patch		\
@@ -661,6 +665,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch	\
   %D%/packages/patches/doc++-include-directives.patch		\
   %D%/packages/patches/doc++-segfault-fix.patch			\
+  %D%/packages/patches/docker-engine-test-noinstall.patch	\
+  %D%/packages/patches/docker-fix-tests.patch			\
   %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch	\
   %D%/packages/patches/doxygen-test.patch			\
   %D%/packages/patches/dropbear-CVE-2018-15599.patch		\
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index fa5fa3ab86..5ad3f6d873 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -986,7 +986,7 @@ system administrator.")
 (define-public sudo
   (package
     (name "sudo")
-    (version "1.8.26")
+    (version "1.8.27")
     (source (origin
               (method url-fetch)
               (uri
@@ -996,7 +996,7 @@ system administrator.")
                                     version ".tar.gz")))
               (sha256
                (base32
-                "1qpyyfga8rs02p3186sns8qvh2bzwa48ka845nrcqh83dyd23nj0"))
+                "1h1f7v9pv0rzp14cxzv8kaa8mdd717fbqv83l7c5dvvi8jwnisvv"))
               (modules '((guix build utils)))
               (snippet
                '(begin
diff --git a/gnu/packages/assembly.scm b/gnu/packages/assembly.scm
index 813eea466f..9b8ef562d3 100644
--- a/gnu/packages/assembly.scm
+++ b/gnu/packages/assembly.scm
@@ -64,7 +64,7 @@
          (add-after 'install 'install-info
            (lambda _
              (invoke "make" "install_doc"))))))
-    (home-page "http://www.nasm.us/")
+    (home-page "https://www.nasm.us/")
     (synopsis "80x86 and x86-64 assembler")
     (description
      "NASM, the Netwide Assembler, is an 80x86 and x86-64 assembler designed
@@ -74,7 +74,7 @@ Windows32 and Windows64.  It will also output plain binary files.  Its syntax
 is designed to be simple and easy to understand, similar to Intel's but less
 complex.  It supports all currently known x86 architectural extensions, and
 has strong support for macros.")
-    (license license:bsd-3)))
+    (license license:bsd-2)))
 
 (define-public yasm
   (package
@@ -140,18 +140,17 @@ to the clients.")
          "02wqkqxpn3p0iwcagsm92qd9cdfcnbx8a09qg03b3pjppp30hmp6"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f ;;no tests
-       #:strip-binaries? #f ;; fasm has no sections
+     `(#:tests? #f ; No tests exist
+       #:strip-binaries? #f ; fasm has no sections
        #:phases
        (modify-phases %standard-phases
-         (delete 'configure) ;;no configure script used
+         (delete 'configure) ; no "configure" script exists
          (replace 'build
            (lambda _
-             ;;source code are in this directory
              (chdir "source/Linux/")
              (if (string=? ,(%current-system) "x86_64-linux")
-                 ;;use pre-compiled binaries in top-level directory to build
-                 ;;itself
+                 ;; Use pre-compiled binaries in top-level directory to build
+                 ;; fasm.
                  (invoke "../../fasm.x64" "fasm.asm")
                  (invoke "../../fasm" "fasm.asm"))))
          (replace 'install
@@ -159,12 +158,48 @@ to the clients.")
              (let ((out (assoc-ref %outputs "out")))
                (install-file "fasm" (string-append out "/bin")))
              #t)))))
-    ;;support only intel x86 family processors
     (supported-systems '("x86_64-linux" "i686-linux"))
     (synopsis "Assembler for x86 processors")
     (description
-     "FASM is a assembler that supports x86, and IA-64 Intel architectures.
-It does multiple passes to optimize machine code.It have macro abilities and
-focus on operating system portability.")
+     "FASM is an assembler that supports x86 and IA-64 Intel architectures.
+It does multiple passes to optimize machine code.  It has macro abilities and
+focuses on operating system portability.")
     (home-page "https://flatassembler.net/")
     (license license:bsd-2)))
+
+(define-public dev86
+  (package
+    (name "dev86")
+    (version "0.16.21")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "http://v3.sk/~lkundrak/dev86/Dev86src-"
+                                 version ".tar.gz"))
+             (sha256
+              (base32
+               "154dyr2ph4n0kwi8yx0n78j128kw29rk9r9f7s2gddzrdl712jr3"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:parallel-build? #f ; They use submakes wrong
+       #:make-flags (list "CC=gcc"
+                          (string-append "PREFIX="
+                                         (assoc-ref %outputs "out")))
+       #:system "i686-linux" ; Standalone ld86 had problems otherwise
+       #:tests? #f ; No tests exist
+       #:phases
+       (modify-phases %standard-phases
+        (delete 'configure)
+        (add-before 'install 'mkdir
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let ((out (assoc-ref outputs "out")))
+              (mkdir-p (string-append out "/bin"))
+              (mkdir-p (string-append out "/man/man1"))
+              #t))))))
+    (synopsis "Intel 8086 (primarily 16-bit) assembler, C compiler and
+linker")
+    (description "This package provides a Intel 8086 (primarily 16-bit)
+assembler, a C compiler and a linker.  The assembler uses Intel syntax
+(also Intel order of operands).")
+    (home-page "https://github.com/jbruchon/dev86")
+    (supported-systems '("i686-linux" "x86_64-linux"))
+    (license license:gpl2+)))
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 7e6a56c545..2813062e95 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -131,7 +131,7 @@ programs for the manipulation and analysis of astronomical data.")
 (define-public stellarium
   (package
     (name "stellarium")
-    (version "0.18.1")
+    (version "0.18.3")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://github.com/Stellarium/" name
@@ -139,7 +139,7 @@ programs for the manipulation and analysis of astronomical data.")
                                  "/" name "-" version ".tar.gz"))
              (sha256
               (base32
-               "0vjkwrjy22b4wdjkafm63pmb0fck14ffnylpq8xr91ywycw4blrq"))))
+               "1mm8rjcb8j56m3kfigpix5vxviw1616kvl9ws2s3s5gdyngljrc3"))))
     (build-system cmake-build-system)
     (inputs
      `(("qtbase" ,qtbase)
@@ -161,6 +161,13 @@ programs for the manipulation and analysis of astronomical data.")
                                 (assoc-ref %build-inputs "qtserialport")
                                 "/include/qt5"))
        #:phases (modify-phases %standard-phases
+                  ;; Skip a test that assumes Stellarium is "installed":
+                  ;; https://bugs.gentoo.org/674472
+                  (add-after 'unpack 'patch-tests
+                    (lambda _
+                      (substitute* "src/tests/testEphemeris.cpp"
+                        (("ifndef Q_OS_WIN") "if 0"))
+                      #t))
                   (add-before 'check 'set-offscreen-display
                     (lambda _
                       ;; make Qt render "offscreen", required for tests
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 0b24806d92..80aacc5664 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -1152,7 +1152,7 @@ follower.")
 (define-public fluidsynth
   (package
     (name "fluidsynth")
-    (version "2.0.2")
+    (version "2.0.3")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1161,7 +1161,7 @@ follower.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "02vs5sfsyh1dl7wlcvgs4w3x0qcmsl7vi000qgp99ynwh3wjb274"))))
+                "00f6bhw4ddrinb5flvg5y53rcvnf4km23a6nbvnswmpq13568v78"))))
     (build-system cmake-build-system)
     (arguments
      '(#:tests? #f                      ; no check target
diff --git a/gnu/packages/aux-files/linux-libre/4.20-arm.conf b/gnu/packages/aux-files/linux-libre/4.20-arm.conf
index 309e832844..514a6d4748 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-arm.conf
+++ b/gnu/packages/aux-files/linux-libre/4.20-arm.conf
@@ -94,7 +94,8 @@ CONFIG_TASKSTATS=y
 CONFIG_TASK_DELAY_ACCT=y
 CONFIG_TASK_XACCT=y
 CONFIG_TASK_IO_ACCOUNTING=y
-# CONFIG_PSI is not set
+CONFIG_PSI=y
+# CONFIG_PSI_DEFAULT_DISABLED is not set
 CONFIG_CPU_ISOLATION=y
 
 #
diff --git a/gnu/packages/aux-files/linux-libre/4.20-arm64.conf b/gnu/packages/aux-files/linux-libre/4.20-arm64.conf
index 9a756c16e5..9e71cadf0c 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/4.20-arm64.conf
@@ -86,7 +86,8 @@ CONFIG_TASKSTATS=y
 CONFIG_TASK_DELAY_ACCT=y
 CONFIG_TASK_XACCT=y
 CONFIG_TASK_IO_ACCOUNTING=y
-# CONFIG_PSI is not set
+CONFIG_PSI=y
+# CONFIG_PSI_DEFAULT_DISABLED is not set
 CONFIG_CPU_ISOLATION=y
 
 #
diff --git a/gnu/packages/aux-files/linux-libre/4.20-i686.conf b/gnu/packages/aux-files/linux-libre/4.20-i686.conf
index 930ea6ddd7..c3ed028442 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-i686.conf
+++ b/gnu/packages/aux-files/linux-libre/4.20-i686.conf
@@ -99,7 +99,8 @@ CONFIG_TASKSTATS=y
 CONFIG_TASK_DELAY_ACCT=y
 CONFIG_TASK_XACCT=y
 CONFIG_TASK_IO_ACCOUNTING=y
-# CONFIG_PSI is not set
+CONFIG_PSI=y
+# CONFIG_PSI_DEFAULT_DISABLED is not set
 CONFIG_CPU_ISOLATION=y
 
 #
diff --git a/gnu/packages/aux-files/linux-libre/4.20-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.20-x86_64.conf
index d9ea8ebb59..4918e6bdf2 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/4.20-x86_64.conf
@@ -101,7 +101,8 @@ CONFIG_TASKSTATS=y
 CONFIG_TASK_DELAY_ACCT=y
 CONFIG_TASK_XACCT=y
 CONFIG_TASK_IO_ACCOUNTING=y
-# CONFIG_PSI is not set
+CONFIG_PSI=y
+# CONFIG_PSI_DEFAULT_DISABLED is not set
 CONFIG_CPU_ISOLATION=y
 
 #
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index e7f11dead3..37ac94128b 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
@@ -197,6 +197,36 @@ default."  )
 genomes and gene ID formats, largely based on the UCSC table browser.")
     (license license:lgpl2.0+)))
 
+(define-public r-txdb-mmusculus-ucsc-mm9-knowngene
+  (package
+    (name "r-txdb-mmusculus-ucsc-mm9-knowngene")
+    (version "3.2.2")
+    (source (origin
+              (method url-fetch)
+              ;; We cannot use bioconductor-uri here because this tarball is
+              ;; located under "data/annotation/" instead of "bioc/".
+              (uri (string-append "https://bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib"
+                                  "/TxDb.Mmusculus.UCSC.mm9.knownGene_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "16bjxy00363hf91ik2mqlqls86i07gia72qh92xc3l1ncch61mx2"))))
+    (properties
+     `((upstream-name . "TxDb.Mmusculus.UCSC.mm9.knownGene")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-genomicfeatures" ,r-genomicfeatures)
+       ("r-annotationdbi" ,r-annotationdbi)))
+    (home-page
+     "https://bioconductor.org/packages/TxDb.Mmusculus.UCSC.mm9.knownGene/")
+    (synopsis "Annotation package for mouse genome in TxDb format")
+    (description
+     "This package provides an annotation database of Mouse genome data.  It
+is derived from the UCSC mm9 genome and based on the \"knownGene\" track.  The
+database is exposed as a @code{TxDb} object.")
+    (license license:artistic2.0)))
+
 
 (define-public r-hpar
   (package
@@ -411,14 +441,14 @@ determining dependencies between variables, code improvement suggestions.")
 (define-public r-chippeakanno
   (package
     (name "r-chippeakanno")
-    (version "3.16.0")
+    (version "3.16.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "ChIPpeakAnno" version))
        (sha256
         (base32
-         "09fhh1355diip3v3c0skmp1336vclipkm5nv02qvp5902v4262y3"))))
+         "1x98d8iwrxjwdz1s5cnvi6flynw9gdkmara9gwf205qxgmy7j3a3"))))
     (properties `((upstream-name . "ChIPpeakAnno")))
     (build-system r-build-system)
     (propagated-inputs
@@ -778,14 +808,14 @@ trees and clusters to other programs.")
 (define-public r-goseq
   (package
     (name "r-goseq")
-    (version "1.34.0")
+    (version "1.34.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "goseq" version))
        (sha256
         (base32
-         "1401x0jn5f8hqc12r3gd1wammp1nxir3is1k5ldd03ln97x00i7a"))))
+         "1j87j98cajcjqabv6rb6zmcqxsqxxhbb3w60w1iink4rhsh8m3mn"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-annotationdbi" ,r-annotationdbi)
@@ -804,14 +834,14 @@ defined categories which are over/under represented in RNA-seq data.")
 (define-public r-glimma
   (package
     (name "r-glimma")
-    (version "1.10.0")
+    (version "1.10.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "Glimma" version))
        (sha256
         (base32
-         "0cbsi6g8k1whkh21jxfn22sj7wry2g3rshiracf5nyvrl2fnl947"))))
+         "1ihrww55sa7ipi1rpp0rmn081sbqdwdmm5mz30zfrjr1xxqcdbcv"))))
     (properties `((upstream-name . "Glimma")))
     (build-system r-build-system)
     (propagated-inputs
@@ -831,14 +861,14 @@ information.")
 (define-public r-rots
   (package
     (name "r-rots")
-    (version "1.10.0")
+    (version "1.10.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "ROTS" version))
        (sha256
         (base32
-         "137c06g5w7mjw3b1mly7b7n9iix4fcy23c7a9ym9iz8dazwhzwn5"))))
+         "1d5ggkk47xybcaizfy756qimbf2falg9cld46mhqjp3xfbfvzsg6"))))
     (properties `((upstream-name . "ROTS")))
     (build-system r-build-system)
     (propagated-inputs
@@ -852,33 +882,64 @@ information.")
 in omics data.")
     (license license:gpl2+)))
 
+(define-public r-plgem
+  (package
+    (name "r-plgem")
+    (version "1.54.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (bioconductor-uri "plgem" version))
+       (sha256
+        (base32
+         "1330635db3p8xm5y8fwrk1l37r6bgypsq70s3rx954i775zp6szg"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-biobase" ,r-biobase)
+       ("r-mass" ,r-mass)))
+    (home-page "http://www.genopolis.it")
+    (synopsis "Detect differential expression in microarray and proteomics datasets")
+    (description
+     "The Power Law Global Error Model (PLGEM) has been shown to faithfully
+model the variance-versus-mean dependence that exists in a variety of
+genome-wide datasets, including microarray and proteomics data.  The use of
+PLGEM has been shown to improve the detection of differentially expressed
+genes or proteins in these datasets.")
+    (license license:gpl2)))
+
 (define-public r-inspect
   (package
     (name "r-inspect")
-    (version "1.12.0")
+    (version "1.12.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "INSPEcT" version))
        (sha256
         (base32
-         "0b671x5v2wyq5np2flq2m1fnjz32f303yjlw64a1inwc9k2w2pz2"))))
+         "07q5msw9rnamx957mbiawnv3p9kr5ahwawzvv9xzla7d3lkk62xp"))))
     (properties `((upstream-name . "INSPEcT")))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-biobase" ,r-biobase)
        ("r-biocgenerics" ,r-biocgenerics)
        ("r-biocparallel" ,r-biocparallel)
+       ("r-deseq2" ,r-deseq2)
        ("r-desolve" ,r-desolve)
        ("r-genomicalignments" ,r-genomicalignments)
        ("r-genomicfeatures" ,r-genomicfeatures)
        ("r-genomicranges" ,r-genomicranges)
        ("r-iranges" ,r-iranges)
+       ("r-plgem" ,r-plgem)
        ("r-preprocesscore" ,r-preprocesscore)
        ("r-proc" ,r-proc)
        ("r-rootsolve" ,r-rootsolve)
        ("r-rsamtools" ,r-rsamtools)
-       ("r-s4vectors" ,r-s4vectors)))
+       ("r-s4vectors" ,r-s4vectors)
+       ("r-shiny" ,r-shiny)
+       ("r-summarizedexperiment" ,r-summarizedexperiment)
+       ("r-txdb-mmusculus-ucsc-mm9-knowngene"
+        ,r-txdb-mmusculus-ucsc-mm9-knowngene)))
     (home-page "https://bioconductor.org/packages/INSPEcT")
     (synopsis "Analysis of 4sU-seq and RNA-seq time-course data")
     (description
@@ -918,14 +979,14 @@ demultiplexed, i.e. assigned to their original reference barcode.")
 (define-public r-ruvseq
   (package
     (name "r-ruvseq")
-    (version "1.16.0")
+    (version "1.16.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "RUVSeq" version))
        (sha256
         (base32
-         "0xb3bj3n06cb9xddkv77a8svhg4fl1azlfmibwrm9mq9464kgf0m"))))
+         "0qk7q3ab7k133divfkp54zsmvsmb9p8r09pkh2caswrzrn8achzv"))))
     (properties `((upstream-name . "RUVSeq")))
     (build-system r-build-system)
     (propagated-inputs
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 58ba2f05d6..42f5c3b80d 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -78,6 +78,7 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages java)
+  #:use-module (gnu packages java-compression)
   #:use-module (gnu packages jemalloc)
   #:use-module (gnu packages dlang)
   #:use-module (gnu packages linux)
@@ -6472,14 +6473,14 @@ high-throughput sequencing experiments.")
 (define-public r-deseq2
   (package
     (name "r-deseq2")
-    (version "1.22.1")
+    (version "1.22.2")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "DESeq2" version))
        (sha256
         (base32
-         "1b2bmvcsfzvks47d7w46zplcwz0kgcdhx5xmx3x9lp2gvx2p84r5"))))
+         "0n5ah84mxn87p45drzy0wh2yknmzj1q5i6gv0v9vgg1lj7awb91r"))))
     (properties `((upstream-name . "DESeq2")))
     (build-system r-build-system)
     (propagated-inputs
@@ -6509,14 +6510,14 @@ distribution.")
 (define-public r-dexseq
   (package
     (name "r-dexseq")
-    (version "1.28.0")
+    (version "1.28.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "DEXSeq" version))
        (sha256
         (base32
-         "0jh1640cnzpk8x3155cqc8dvrs1rciw3d6nv2k70baw96bhrynp8"))))
+         "0g5w9bn2nb3m670hkcsnhfvvkza2318z9irlhhwhb3n8rdzlsdym"))))
     (properties `((upstream-name . "DEXSeq")))
     (build-system r-build-system)
     (propagated-inputs
@@ -6582,14 +6583,14 @@ databases.  Packages produced are intended to be used with AnnotationDbi.")
 (define-public r-rbgl
   (package
     (name "r-rbgl")
-    (version "1.58.0")
+    (version "1.58.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "RBGL" version))
        (sha256
         (base32
-         "0jy95m38c4qp0a12097hhm2gg63k96k6ydhb11dy379h3ziapcar"))))
+         "1l5x2icv9di1lr3gqfi0vjnyd9xc3l77yc42ippqd4cadj3d1pzf"))))
     (properties `((upstream-name . "RBGL")))
     (build-system r-build-system)
     (propagated-inputs `(("r-graph" ,r-graph)))
@@ -6734,14 +6735,14 @@ ungapped alignment formats.")
 (define-public r-systempiper
   (package
     (name "r-systempiper")
-    (version "1.16.0")
+    (version "1.16.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "systemPipeR" version))
        (sha256
         (base32
-         "0l26q8zjdmzg84g7f25gv9z60sykybahlpg5bg9bmpbg5lzcsx04"))))
+         "0qzydz87rld2nhwzbfgrw5jfgh8maa9y54mjx9c4285m11qj2shq"))))
     (properties `((upstream-name . "systemPipeR")))
     (build-system r-build-system)
     (propagated-inputs
@@ -7133,13 +7134,13 @@ Bioconductor, CRAN, and Github.")
 (define-public r-biocviews
   (package
     (name "r-biocviews")
-    (version "1.50.5")
+    (version "1.50.10")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "biocViews" version))
               (sha256
                (base32
-                "0rc1n89n04ylvy9gvsgvizcs77bh70jg1nkjjsjs7rqbr3zzdysz"))))
+                "06ms82pyc5rxbd9crfvqjxcwpafv0c627i83v80d12925mrc51h8"))))
     (properties
      `((upstream-name . "biocViews")))
     (build-system r-build-system)
@@ -7160,13 +7161,13 @@ also known as views, in a controlled vocabulary.")
 (define-public r-bookdown
   (package
     (name "r-bookdown")
-    (version "0.7")
+    (version "0.9")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "bookdown" version))
               (sha256
                (base32
-                "1b3fw1f41zph5yw3kynb47aijq53vhaa6mnnvxly72zamyzdf95q"))))
+                "0vg1s1w0l9pm95asqb21yf39mfk1nc9rdhmlys9xwr7p7i7rsz32"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-htmltools" ,r-htmltools)
@@ -7434,13 +7435,13 @@ names in their natural, rather than lexicographic, order.")
 (define-public r-edger
   (package
     (name "r-edger")
-    (version "3.24.0")
+    (version "3.24.3")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "edgeR" version))
               (sha256
                (base32
-                "0ihihgzrgb4q3xc8xkzp1v76ndgihrj4gas00fa25vggfs1v6hvg"))))
+                "15yimsbsxmxhlsfmgw5j7fd8qn08zz4xqxrir1c6n2dc103y22xg"))))
     (properties `((upstream-name . "edgeR")))
     (build-system r-build-system)
     (propagated-inputs
@@ -7462,13 +7463,13 @@ CAGE.")
 (define-public r-variantannotation
   (package
     (name "r-variantannotation")
-    (version "1.28.1")
+    (version "1.28.8")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "VariantAnnotation" version))
               (sha256
                (base32
-                "0gvah258mkaafhbna81zwknx8qr3lidbcx5qvwk39q3yswr9mi49"))))
+                "0gf36lr9xy3zmcc4rxs5bi2ccrrc7b6wqp6p3cvnclgif4i0l66k"))))
     (properties
      `((upstream-name . "VariantAnnotation")))
     (inputs
@@ -7500,13 +7501,13 @@ coding changes and predict coding outcomes.")
 (define-public r-limma
   (package
     (name "r-limma")
-    (version "3.38.2")
+    (version "3.38.3")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "limma" version))
               (sha256
                (base32
-                "1wkh362rmn24q7bkinb6nx62a31wl3r3myg5l326gx65wpwdnx97"))))
+                "08va8jggmv61wym955mnb1n31mgikrmjys7dl1kp5hp3yia8jg7l"))))
     (build-system r-build-system)
     (home-page "http://bioinf.wehi.edu.au/limma")
     (synopsis "Package for linear models for microarray and RNA-seq data")
@@ -7666,13 +7667,13 @@ powerful online queries from gene annotation to database mining.")
 (define-public r-biocparallel
   (package
     (name "r-biocparallel")
-    (version "1.16.0")
+    (version "1.16.5")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "BiocParallel" version))
               (sha256
                (base32
-                "0g16cy0vjapqkb188z63r1b6y96m9g8vx0a3v2qavzxc177k0cja"))))
+                "1164dk0fajb2vrkfpcjs11055qf1cs4vvbnq0aqdaaf2p4lyx41l"))))
     (properties
      `((upstream-name . "BiocParallel")))
     (build-system r-build-system)
@@ -7691,13 +7692,13 @@ objects.")
 (define-public r-biostrings
   (package
     (name "r-biostrings")
-    (version "2.50.1")
+    (version "2.50.2")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "Biostrings" version))
               (sha256
                (base32
-                "1qyv1ps7vy6gy78pm2rcikg0bgf1mv7falahjp3pkwqq1272hrl8"))))
+                "16cqqc8i6gb0jcz0lizfqqxsq7g0yb0ll2s9qzmb45brp07dg8f7"))))
     (properties
      `((upstream-name . "Biostrings")))
     (build-system r-build-system)
@@ -7823,13 +7824,13 @@ samples.")
 (define-public r-genomicalignments
   (package
     (name "r-genomicalignments")
-    (version "1.18.0")
+    (version "1.18.1")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "GenomicAlignments" version))
               (sha256
                (base32
-                "0a3zhwripfw2508fvgx3wzqa8nq8vnslg97a911znpwvxh53jl24"))))
+                "1maslav2r34wjyzh2nlwa862in1ir7i5xk57nw2nlfh5gqy112jd"))))
     (properties
      `((upstream-name . "GenomicAlignments")))
     (build-system r-build-system)
@@ -7856,13 +7857,13 @@ alignments.")
 (define-public r-rtracklayer
   (package
     (name "r-rtracklayer")
-    (version "1.42.0")
+    (version "1.42.1")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "rtracklayer" version))
               (sha256
                (base32
-                "0a4mhd926w9slkfil5xgngjsfdj024a4w57w2bm3d4r0pj8y5da7"))))
+                "1ycmcxvgvszvjv75hlmg0i6pq8i7r8720vgmfayb905s9l6j82x6"))))
     (build-system r-build-system)
     (arguments
      `(#:phases
@@ -8953,13 +8954,13 @@ kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.")
 (define-public r-tximport
   (package
     (name "r-tximport")
-    (version "1.10.0")
+    (version "1.10.1")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "tximport" version))
               (sha256
                (base32
-                "0za2js8hqjgz8ria09cglynffj4w9vrzg85nmn1xgpvmc1xk813h"))))
+                "16wp09dm0cpb4mc00nmglfb8ica7qb4a55vm8ajgzyagbpfdd44l"))))
     (build-system r-build-system)
     (home-page "https://bioconductor.org/packages/tximport")
     (synopsis "Import and summarize transcript-level estimates for gene-level analysis")
@@ -8975,13 +8976,13 @@ of gene-level counts.")
 (define-public r-rhdf5
   (package
     (name "r-rhdf5")
-    (version "2.26.0")
+    (version "2.26.2")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "rhdf5" version))
               (sha256
                (base32
-                "0xmpkfdsmgl79ffffj7cf9fx3zxki2rk0xn25k778kr3s0sbmhis"))))
+                "10zkw3k13wmvyif417gplyf6rwp2gpkjasw97lhwv2f9i32rry9l"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-rhdf5lib" ,r-rhdf5lib)))
@@ -9360,14 +9361,14 @@ GenomicRanges Bioconductor package.")
 (define-public r-copywriter
   (package
     (name "r-copywriter")
-    (version "2.14.0")
+    (version "2.14.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "CopywriteR" version))
        (sha256
         (base32
-         "0aamxafdk98n7s92jyqs65d6ljpnc2463vanvsw80p44qn6l6awn"))))
+         "1hbiw0m9hmx4na9v502pxf8y5wvxzr68r4d3fqr2755gxx86qck6"))))
     (properties `((upstream-name . "CopywriteR")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9400,13 +9401,13 @@ number detection tools.")
 (define-public r-methylkit
   (package
     (name "r-methylkit")
-    (version "1.8.0")
+    (version "1.8.1")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "methylKit" version))
               (sha256
                (base32
-                "0mz6lil1wax931incnw5byx0v9i8ryhwq9mv0nv8s48ai33ch3x6"))))
+                "1zcfwy7i10aqgnf7r0c41hakb5aai3s3n9y8pc6a98vimz51ly2z"))))
     (properties `((upstream-name . "methylKit")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9446,14 +9447,14 @@ TAB-Seq.")
 (define-public r-sva
   (package
     (name "r-sva")
-    (version "3.30.0")
+    (version "3.30.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "sva" version))
        (sha256
         (base32
-         "1xf0hlrqjxl0y3x13mrkxghiv39fd9v2g8gq3qzbf1wj7il6bph3"))))
+         "0czja4c5jxa0g3fspi90nyajqmvzb29my4ykv2wi66h43f5dlwhq"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-genefilter" ,r-genefilter)
@@ -9476,14 +9477,14 @@ unmodeled, or latent sources of noise.")
 (define-public r-seqminer
   (package
     (name "r-seqminer")
-    (version "6.1")
+    (version "7.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "seqminer" version))
        (sha256
         (base32
-         "15yhg4vfc7jg1jnqb3371j00pgbmbyc9l1xx63hq1l3p34lazq2l"))))
+         "1jydcpkw4rwfp983j83kipvsvr10as9pb49zzn3c2v09k1gh3ymy"))))
     (build-system r-build-system)
     (inputs
      `(("zlib" ,zlib)))
@@ -9576,14 +9577,14 @@ proteomics packages.")
 (define-public r-mzr
   (package
     (name "r-mzr")
-    (version "2.16.0")
+    (version "2.16.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "mzR" version))
        (sha256
         (base32
-         "0li1y6p95ljiva4lvfmql9sipn4dq42sknbh60b36ycjppnf8lj5"))
+         "0mlwg646k49klxrznckzfv54a9mz6irj42fqpaaa0xjm6cw2lwaa"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -9714,14 +9715,14 @@ and specific in detecting differential transcription.")
 (define-public r-mzid
   (package
     (name "r-mzid")
-    (version "1.20.0")
+    (version "1.20.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "mzID" version))
        (sha256
         (base32
-         "08jbq223viwknsmsi30hyxyxslvmb0l4wx3vmqlkl6qk4vfmxzjz"))))
+         "15yd4bdxprw3kg7zj2k652y3yr3si781iw28jqvnkm0gsc23rd0c"))))
     (properties `((upstream-name . "mzID")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9774,14 +9775,14 @@ structure (pcaRes) to provide a common interface to the PCA results.")
 (define-public r-msnbase
   (package
     (name "r-msnbase")
-    (version "2.8.1")
+    (version "2.8.3")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "MSnbase" version))
        (sha256
         (base32
-         "0y658anh06vnvbkfs7r8q40gqgyqr2r8kj7jlpnp33fy1lvp1nv7"))))
+         "1kl1d7byphnfpmbl5fzbgs68dxskhpsdyx7ka51bpfn0nv3pp492"))))
     (properties `((upstream-name . "MSnbase")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9817,14 +9818,14 @@ of mass spectrometry based proteomics data.")
 (define-public r-msnid
   (package
     (name "r-msnid")
-    (version "1.16.0")
+    (version "1.16.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "MSnID" version))
        (sha256
         (base32
-         "0hgq4argllhh5hvxqi8vkf1blc3nibsslhx4zsv2mcv4yj75bv4n"))))
+         "077n6ljcnnl7q4w0qj8v46vm4sjk9vzzfqf7wsc6lz0wmyzqdng3"))))
     (properties `((upstream-name . "MSnID")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9946,14 +9947,14 @@ classes.")
 (define-public r-deseq
   (package
     (name "r-deseq")
-    (version "1.34.0")
+    (version "1.34.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "DESeq" version))
        (sha256
         (base32
-         "1klv1xrh3173srywr6dnq6i7m9djn4gc9aflr1p3a6yjlqcq6fya"))))
+         "0bpiixczbhlyaiinpbl6xrpmv72k2bq76bxnw06gl35m4pgs94p2"))))
     (properties `((upstream-name . "DESeq")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9977,14 +9978,14 @@ distribution.")
 (define-public r-edaseq
   (package
     (name "r-edaseq")
-    (version "2.16.0")
+    (version "2.16.3")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "EDASeq" version))
        (sha256
         (base32
-         "1gjqzn1kg9qwyz2gwjyy9xzzr1lnc7xd5zwdyvzkadz97gckzxwf"))))
+         "0559ph606ps2g9bwbl0a2knkcs5w581n9igngpjxvk5p56k24gb5"))))
     (properties `((upstream-name . "EDASeq")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9992,6 +9993,7 @@ distribution.")
        ("r-aroma-light" ,r-aroma-light)
        ("r-biobase" ,r-biobase)
        ("r-biocgenerics" ,r-biocgenerics)
+       ("r-biocmanager" ,r-biocmanager)
        ("r-biomart" ,r-biomart)
        ("r-biostrings" ,r-biostrings)
        ("r-deseq" ,r-deseq)
@@ -10039,14 +10041,14 @@ Shiny-based display methods for Bioconductor objects.")
 (define-public r-annotationhub
   (package
     (name "r-annotationhub")
-    (version "2.14.1")
+    (version "2.14.2")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "AnnotationHub" version))
        (sha256
         (base32
-         "00288x3na0izpmbcvsqac1br1qwry86vwc2slj1l47crdfb7za6c"))))
+         "17fgrvcnbii9siv5rq5j09bxhqffx47f6jf10418qvr7hh61ic1g"))))
     (properties `((upstream-name . "AnnotationHub")))
     (build-system r-build-system)
     (propagated-inputs
@@ -10128,14 +10130,14 @@ microarrays or GRanges for sequencing data.")
 (define-public r-gage
   (package
     (name "r-gage")
-    (version "2.32.0")
+    (version "2.32.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "gage" version))
        (sha256
         (base32
-         "07b098wvryxf0zd423nk6h52s3gyngwjcx2vplqybpbpgl8h2931"))))
+         "02g796sb1800ff0f1mq9f2m5wwzpf8pnfzajs49i68dhq2hm01a8"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-annotationdbi" ,r-annotationdbi)
@@ -10220,14 +10222,14 @@ self-defined annotation graphics.")
 (define-public r-dirichletmultinomial
   (package
     (name "r-dirichletmultinomial")
-    (version "1.24.0")
+    (version "1.24.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "DirichletMultinomial" version))
        (sha256
         (base32
-         "19bzn0a5jal1xv0ad6wikxc7wrk582hczqamlln0vb2ffwkj1z3f"))))
+         "0vazfjzqy78p5g7dnv30lbqbj4bhq4zafd2wh6gdwy2il1fd78xa"))))
     (properties
      `((upstream-name . "DirichletMultinomial")))
     (build-system r-build-system)
@@ -10249,14 +10251,14 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2):
 (define-public r-ensembldb
   (package
     (name "r-ensembldb")
-    (version "2.6.2")
+    (version "2.6.3")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "ensembldb" version))
        (sha256
         (base32
-         "0hdz1f34v7sas2v4225icwl3wd4sf17ykpd5dkbx1hc7wcy4w3np"))))
+         "0kzdsfk6mdwlp57sw4j2cf7lx5nc67v5j0xr3iag9kzmgikaq1lb"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-annotationdbi" ,r-annotationdbi)
@@ -10324,14 +10326,14 @@ the fact that each of these packages implements a select methods.")
 (define-public r-biovizbase
   (package
     (name "r-biovizbase")
-    (version "1.30.0")
+    (version "1.30.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "biovizBase" version))
        (sha256
         (base32
-         "0v54mcn3rnnfx8dmcrms5z3rgq19n3hp4r23azlgzwq6hjw7cccx"))))
+         "0v5gvcx180qn5487i1dph9abadw3ggqwp5yzy41jswzbdc8q6sbm"))))
     (properties `((upstream-name . "biovizBase")))
     (build-system r-build-system)
     (propagated-inputs
@@ -10661,14 +10663,14 @@ family of feature/genome hypotheses.")
 (define-public r-gviz
   (package
     (name "r-gviz")
-    (version "1.26.0")
+    (version "1.26.4")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "Gviz" version))
        (sha256
         (base32
-         "05zk9hf30afg6rjg97lzn5v8xij90v8zm09y9vcz0asmc3c8xs0a"))))
+         "0jvcivgw0ahv2rjadxmrww76xambhf7silczmh38nn4yn4qw6w9y"))))
     (properties `((upstream-name . "Gviz")))
     (build-system r-build-system)
     (propagated-inputs
@@ -10822,14 +10824,14 @@ provided.")
 (define-public r-qvalue
   (package
     (name "r-qvalue")
-    (version "2.14.0")
+    (version "2.14.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "qvalue" version))
        (sha256
         (base32
-         "03qxshqwwq1rj23p6pjrz08jm3ziikvy9badi4mz2rcwy2nz783a"))))
+         "0kxavzm1j2mk26qicmjm90nxx4w5h3dxighzks7wzihay3k8cysc"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-ggplot2" ,r-ggplot2)
@@ -10851,14 +10853,14 @@ problems in genomics, brain imaging, astrophysics, and data mining.")
 (define-public r-hdf5array
   (package
     (name "r-hdf5array")
-    (version "1.10.0")
+    (version "1.10.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "HDF5Array" version))
        (sha256
         (base32
-         "1w7ad8cfsbh5xx82m3l4lc0vbmj9lcsqxxpiy3ana2ycgn1bqv3g"))))
+         "1qwdsygcadl58qj598hfyvs8hp0hqcl9ghnhknahrlhmb7k2bd2d"))))
     (properties `((upstream-name . "HDF5Array")))
     (build-system r-build-system)
     (propagated-inputs
@@ -10877,14 +10879,14 @@ block processing.")
 (define-public r-rhdf5lib
   (package
     (name "r-rhdf5lib")
-    (version "1.4.0")
+    (version "1.4.2")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "Rhdf5lib" version))
        (sha256
         (base32
-         "01gpz780g850ql20b2ql6pvr678ydk4nq4sn5iiih94a4crb9lz1"))
+         "06bxd3wz8lrvh2hzvmjpdv4lvzj5lz9353bw5b3zb98cb8w9r2j5"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -10977,14 +10979,14 @@ matrices.")
 (define-public r-singlecellexperiment
   (package
     (name "r-singlecellexperiment")
-    (version "1.4.0")
+    (version "1.4.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "SingleCellExperiment" version))
        (sha256
         (base32
-         "19r4r7djrn46qlijkj1g926vcklxzcrxjlxv6cg43m9j9jgfs3dj"))))
+         "12139kk9cqgzpm6f3cwdsq31gj5lxamz2q939dy9fa0fa54gdaq4"))))
     (properties
      `((upstream-name . "SingleCellExperiment")))
     (build-system r-build-system)
@@ -11004,13 +11006,13 @@ libraries.")
 (define-public r-scater
   (package
     (name "r-scater")
-    (version "1.10.0")
+    (version "1.10.1")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "scater" version))
               (sha256
                (base32
-                "1kwa9n70c5j0xcj6nkmlkzjr63cnj78mp8nhg58n07fq1ijm4ns3"))))
+                "0rijhy7g5qmcn927y1wyd63la1fhyar9fv1hccsqd23jd98yc55a"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-beachmat" ,r-beachmat)
@@ -11040,14 +11042,14 @@ quality control.")
 (define-public r-scran
   (package
     (name "r-scran")
-    (version "1.10.1")
+    (version "1.10.2")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "scran" version))
        (sha256
         (base32
-         "1viyzrwfm9vccsf54c6g7k1dn7skkfx4ml1jy12q67wa20sx8l03"))))
+         "07mgilr3gq3lnrm1fjm9zhz4w7970bjhsykln1drqy9gkzj5sn7g"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-beachmat" ,r-beachmat)
@@ -14217,12 +14219,7 @@ absolute GSEA.")
        #:phases
        (modify-phases %standard-phases
          (delete 'configure)
-         (replace 'build
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (substitute* "JAMM.sh"
-               (("^sPath=.*")
-                (string-append "")))
-             #t))
+         (delete 'build)
          (replace 'install
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm
index e834ba3d2a..ee094a4814 100644
--- a/gnu/packages/bittorrent.scm
+++ b/gnu/packages/bittorrent.scm
@@ -264,6 +264,7 @@ maintained upstream.")
               (uri (string-append "https://github.com/tatsuhiro-t/aria2/"
                                   "releases/download/release-" version "/"
                                   name "-" version ".tar.xz"))
+              (patches (search-patches "aria2-CVE-2019-3500.patch"))
               (sha256
                (base32
                 "18vpgr430vxlwbcc3598rr1srfmwypls6wp1m4wf21hncc1ahi1s"))))
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index b6fe79303a..1c1276dc82 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -45,7 +45,6 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
-  #:use-module (guix build-system ant)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
@@ -59,7 +58,6 @@
   #:use-module (gnu packages check)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages file)
-  #:use-module (gnu packages java)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages perl-check)
@@ -1265,7 +1263,7 @@ for most inputs, but the resulting compressed files are anywhere from 20% to
 100% bigger.")
     (license license:asl2.0)))
 
-(define bitshuffle-for-snappy
+(define-public bitshuffle-for-snappy
   (package
     (inherit bitshuffle)
     (name "bitshuffle-for-snappy")
@@ -1302,245 +1300,6 @@ install: libbitshuffle.so
     (inputs '())
     (native-inputs '())))
 
-(define-public java-snappy
-  (package
-    (name "java-snappy")
-    (version "1.1.7.2")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://github.com/xerial/snappy-java/archive/"
-                                  version ".tar.gz"))
-              (file-name (string-append name "-" version ".tar.gz"))
-              (sha256
-               (base32
-                "1p557vdv006ysgxbpp83krmq0066k46108vyiyka69w8i4i8rbbm"))))
-    (build-system ant-build-system)
-    (arguments
-     `(#:jar-name "snappy.jar"
-       #:source-dir "src/main/java"
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'build 'remove-binaries
-           (lambda _
-             (delete-file "lib/org/xerial/snappy/OSInfo.class")
-             (delete-file-recursively "src/main/resources/org/xerial/snappy/native")
-             #t))
-         (add-before 'build 'build-jni
-           (lambda _
-             ;; Rebuild one of the binaries we removed earlier
-             (invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
-                      "-d" "lib")
-             ;; Link to the dynamic bitshuffle and snappy, not the static ones
-             (substitute* "Makefile.common"
-               (("-shared")
-                "-shared -lbitshuffle -lsnappy"))
-             (substitute* "Makefile"
-               ;; Don't try to use git, don't download bitshuffle source
-               ;; and don't build it.
-               (("\\$\\(SNAPPY_GIT_UNPACKED\\) ")
-                "")
-               ((": \\$\\(SNAPPY_GIT_UNPACKED\\)")
-                ":")
-               (("\\$\\(BITSHUFFLE_UNPACKED\\) ")
-                "")
-               ((": \\$\\(SNAPPY_SOURCE_CONFIGURED\\)") ":")
-               ;; What we actually want to build
-               (("SNAPPY_OBJ:=.*")
-                "SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/, \
-                 SnappyNative.o BitShuffleNative.o)\n")
-               ;; Since we removed the directory structure in "native" during
-               ;; the previous phase, we need to recreate it.
-               (("NAME\\): \\$\\(SNAPPY_OBJ\\)")
-                "NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
-             ;; Finally we can run the Makefile to build the dynamic library.
-             ;; Use the -nocmake target to avoid a dependency on cmake,
-             ;; which in turn requires the "git_unpacked" directory.
-             (invoke "make" "native-nocmake")))
-         ;; Once we have built the shared library, we need to place it in the
-         ;; "build" directory so it can be added to the jar file.
-         (add-after 'build-jni 'copy-jni
-           (lambda _
-             (copy-recursively "src/main/resources/org/xerial/snappy/native"
-                               "build/classes/org/xerial/snappy/native")
-             #t))
-         (add-before 'check 'fix-failing
-           (lambda _
-             (with-directory-excursion "src/test/java/org/xerial/snappy"
-               ;; This package assumes maven build, which puts results in "target".
-               ;; We put them in "build" instead, so fix that.
-               (substitute* "SnappyLoaderTest.java"
-                 (("target/classes") "build/classes"))
-               ;; This requires Hadoop, which is not in Guix yet.
-               (delete-file "SnappyHadoopCompatibleOutputStreamTest.java"))
-             #t)))))
-    (inputs
-     `(("osgi-framework" ,java-osgi-framework)))
-    (propagated-inputs
-     `(("bitshuffle" ,bitshuffle-for-snappy)
-       ("snappy" ,snappy)))
-    (native-inputs
-     `(("junit" ,java-junit)
-       ("hamcrest" ,java-hamcrest-core)
-       ("xerial-core" ,java-xerial-core)
-       ("classworlds" ,java-plexus-classworlds)
-       ("commons-lang" ,java-commons-lang)
-       ("commons-io" ,java-commons-io)
-       ("perl" ,perl)))
-    (home-page "https://github.com/xerial/snappy-java")
-    (synopsis "Compression/decompression algorithm in Java")
-    (description "Snappy-java is a Java port of snappy, a fast C++
-compressor/decompressor.")
-    (license license:asl2.0)))
-
-(define-public java-snappy-1
-  (package
-    (inherit java-snappy)
-    (version "1.0.3-rc3")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://github.com/xerial/snappy-java/archive/"
-                                  "snappy-java-" version ".tar.gz"))
-              (sha256
-               (base32
-                "08hsxlqidiqck0q57fshwyv3ynyxy18vmhrai9fyc8mz17m7gsa3"))))
-    (arguments
-     `(#:jar-name "snappy.jar"
-       #:source-dir "src/main/java"
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'build 'remove-binaries
-           (lambda _
-             (delete-file "lib/org/xerial/snappy/OSInfo.class")
-             (delete-file-recursively "src/main/resources/org/xerial/snappy/native")
-             #t))
-         (add-before 'build 'build-jni
-           (lambda _
-             ;; Rebuild one of the binaries we removed earlier
-             (invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
-                      "-d" "lib")
-             ;; Link to the dynamic snappy, not the static ones
-             (substitute* "Makefile.common"
-               (("-shared") "-shared -lsnappy"))
-             (substitute* "Makefile"
-               ;; Don't download the sources here.
-               (("\\$\\(SNAPPY_UNPACKED\\) ") "")
-               ((": \\$\\(SNAPPY_UNPACKED\\) ") ":")
-               ;; What we actually want to build
-               (("SNAPPY_OBJ:=.*")
-                "SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/, SnappyNative.o)\n")
-               ;; Since we removed the directory structure in "native" during
-               ;; the previous phase, we need to recreate it.
-               (("NAME\\): \\$\\(SNAPPY_OBJ\\)")
-                "NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
-             ;; Finally we can run the Makefile to build the dynamic library.
-             (invoke "make" "native")))
-         ;; Once we have built the shared library, we need to place it in the
-         ;; "build" directory so it can be added to the jar file.
-         (add-after 'build-jni 'copy-jni
-           (lambda _
-             (copy-recursively "src/main/resources/org/xerial/snappy/native"
-                               "build/classes/org/xerial/snappy/native")
-             #t))
-         (add-before 'check 'fix-tests
-           (lambda _
-             (mkdir-p "src/test/resources/org/xerial/snappy/")
-             (copy-recursively "src/test/java/org/xerial/snappy/testdata"
-                               "src/test/resources/org/xerial/snappy/testdata")
-             (install-file "src/test/java/org/xerial/snappy/alice29.txt"
-                           "src/test/resources/org/xerial/snappy/")
-             #t)))))))
-
-(define-public java-iq80-snappy
-  (package
-    (name "java-iq80-snappy")
-    (version "0.4")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://github.com/dain/snappy/archive/snappy-"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "0rb3zhci7w9wzd65lfnk7p3ip0n6gb58a9qpx8n7r0231gahyamf"))))
-    (build-system ant-build-system)
-    (arguments
-     `(#:jar-name "iq80-snappy.jar"
-       #:source-dir "src/main/java"
-       #:test-dir "src/test"
-       #:jdk ,icedtea-8
-       #:phases
-       (modify-phases %standard-phases
-         (replace 'check
-           (lambda _
-             (define (test class)
-               (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
-                                                   ":build/classes"
-                                                   ":build/test-classes")
-                       "-Dtest.resources.dir=src/test/resources"
-                       "org.testng.TestNG" "-testclass"
-                       class))
-             (invoke "ant" "compile-tests")
-             (test "org.iq80.snappy.SnappyFramedStreamTest")
-             (test "org.iq80.snappy.SnappyStreamTest")
-             #t))
-         (add-before 'build 'remove-hadoop-dependency
-           (lambda _
-             ;; We don't have hadoop
-             (delete-file "src/main/java/org/iq80/snappy/HadoopSnappyCodec.java")
-             (delete-file "src/test/java/org/iq80/snappy/TestHadoopSnappyCodec.java")
-             #t)))))
-    (home-page "https://github.com/dain/snappy")
-    (native-inputs
-     `(("guava" ,java-guava)
-       ("java-snappy" ,java-snappy)
-       ("hamcrest" ,java-hamcrest-core)
-       ("testng" ,java-testng)))
-    (synopsis "Java port of the Snappy (de)compressor")
-    (description
-     "Iq80-snappy is a port of the Snappy compressor and decompressor rewritten
-in pure Java.  This compression code produces a byte-for-byte exact copy of the
-output created by the original C++ code, and is extremely fast.")
-    (license license:asl2.0)))
-
-(define-public java-jbzip2
-  (package
-    (name "java-jbzip2")
-    (version "0.9.1")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://storage.googleapis.com/"
-                                  "google-code-archive-source/v2/"
-                                  "code.google.com/jbzip2/"
-                                  "source-archive.zip"))
-              (file-name (string-append name "-" version ".zip"))
-              (sha256
-               (base32
-                "0ncmhlqmrfmj96nqf6p77b9ws35lcfsvpfxzwxi2asissc83z1l3"))))
-    (build-system ant-build-system)
-    (native-inputs
-     `(("unzip" ,unzip)
-       ("java-junit" ,java-junit)))
-    (arguments
-     `(#:tests? #f                      ; no tests
-       #:jar-name "jbzip2.jar"
-       #:source-dir "tags/release-0.9.1/src"
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'fix-encoding-problems
-           (lambda _
-             ;; Some of the files we're patching are
-             ;; ISO-8859-1-encoded, so choose it as the default
-             ;; encoding so the byte encoding is preserved.
-             (with-fluids ((%default-port-encoding #f))
-               (substitute* "tags/release-0.9.1/src/org/itadaki/bzip2/HuffmanAllocator.java"
-                 (("Milidi.") "Milidiu")))
-             #t)))))
-    (home-page "https://code.google.com/archive/p/jbzip2/")
-    (synopsis "Java bzip2 compression/decompression library")
-    (description "Jbzip2 is a Java bzip2 compression/decompression library.
-It can be used as a replacement for the Apache @code{CBZip2InputStream} /
-@code{CBZip2OutputStream} classes.")
-    (license license:expat)))
-
 (define-public p7zip
   (package
     (name "p7zip")
@@ -2099,43 +1858,6 @@ without having to worry how it does so, or use different interfaces for each
 type by using either Perl modules, or command-line tools on your system.")
     (license license:perl-license)))
 
-(define-public java-tukaani-xz
-  (package
-    (name "java-tukaani-xz")
-    (version "1.6")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://tukaani.org/xz/xz-java-" version ".zip"))
-              (sha256
-               (base32
-                "1z3p1ri1gvl07inxn0agx44ck8n7wrzfmvkz8nbq3njn8r9wba8x"))))
-    (build-system ant-build-system)
-    (arguments
-     `(#:tests? #f; no tests
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'chdir
-           (lambda _
-             ;; Our build system enters the first directory in the archive, but
-             ;; the package is not contained in a subdirectory
-             (chdir "..")
-             #t))
-         (replace 'install
-           (lambda* (#:key outputs #:allow-other-keys)
-             ;; Do we want to install *Demo.jar?
-             (install-file "build/jar/xz.jar"
-                           (string-append
-                             (assoc-ref outputs "out")
-                             "/share/java/xz.jar"))
-             #t)))))
-    (native-inputs
-     `(("unzip" ,unzip)))
-    (home-page "https://tukaani.org")
-    (synopsis "XZ in Java")
-    (description "Tukaani-xz is an implementation of xz compression/decompression
-algorithms in Java.")
-    (license license:public-domain)))
-
 (define-public lunzip
   (package
     (name "lunzip")
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 847e3ccacb..09cb2a1d02 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -42,8 +42,10 @@
   #:use-module (gnu packages databases)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages gcc)
+  #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages graph)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages haskell)
   #:use-module (gnu packages image)
@@ -52,6 +54,7 @@
   #:use-module (gnu packages machine-learning)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages mpi)
+  #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
@@ -63,14 +66,14 @@
 (define-public r-clipr
   (package
     (name "r-clipr")
-    (version "0.4.1")
+    (version "0.5.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "clipr" version))
        (sha256
         (base32
-         "061x84ildc7g1p91yw5iyj8lpqdf4hqv36as85lw8c6qv9ywbsqv"))))
+         "1grx0lyww1cxmdvsr44wmbhz9i6zmiwxbchb97gxrfi9gy5kyc7x"))))
     (build-system r-build-system)
     (home-page "https://github.com/mdlincoln/clipr")
     (synopsis "Read and write from the system clipboard")
@@ -210,18 +213,17 @@ such as copy/paste from an R session.")
 (define-public r-callr
   (package
     (name "r-callr")
-    (version "3.0.0")
+    (version "3.1.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "callr" version))
        (sha256
         (base32
-         "1rxbxy6kn7dj90z9hpppr9cnpvnxzknba2dwrdp0lrk5dh462qz3"))))
+         "15l1qfa3aigba2ghgr2gwcjjy7anagrwg8khsd36fymwkmqj5g69"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-base64enc" ,r-base64enc)
-       ("r-r6" ,r-r6)
+     `(("r-r6" ,r-r6)
        ("r-processx" ,r-processx)))
     (home-page "https://github.com/r-lib/callr#readme")
     (synopsis "Call R from R")
@@ -234,17 +236,18 @@ that.")
 (define-public r-readxl
   (package
     (name "r-readxl")
-    (version "1.1.0")
+    (version "1.2.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "readxl" version))
        (sha256
         (base32
-         "05ii8knrg4jji6h7bv6bfpn279b6x52yrskdx5rv7b0hcpy22gdn"))))
+         "1mwm389skl4ahcwsmhvx31pjkrn6y9igpnhsczwg6yza886q7j19"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-cellranger" ,r-cellranger)
+       ("r-progress" ,r-progress)
        ("r-rcpp" ,r-rcpp)
        ("r-tibble" ,r-tibble)))
     (home-page "https://readxl.tidyverse.org")
@@ -287,13 +290,13 @@ into a pipeline of data manipulation and visualisation.")
 (define-public r-httpuv
   (package
     (name "r-httpuv")
-    (version "1.4.5")
+    (version "1.4.5.1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "httpuv" version))
               (sha256
                (base32
-                "1ddpcarzf694h0gy5pdz7l5glqfv4hr9dmxb4vw7yqd0bga174gi"))))
+                "0mqd40jckdpkjw1jjd860cdwkb03l6dkh931maijfdaqr1w9hwvn"))))
     (build-system r-build-system)
     (native-inputs
      `(("r-rcpp" ,r-rcpp)
@@ -317,13 +320,13 @@ particularly easy to create complete web applications using httpuv alone.")
 (define-public r-jsonlite
   (package
     (name "r-jsonlite")
-    (version "1.5")
+    (version "1.6")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "jsonlite" version))
               (sha256
                (base32
-                "00lfg464jhf7k01bal9pcjvbdf5cxk6xi2h46hccp1x3h883g434"))))
+                "0lyvhnr6n57h3a89bvipii7x17nvfaycm9j5j50bfrlr48jv9ic8"))))
     (build-system r-build-system)
     (home-page "http://arxiv.org/abs/1403.2805")
     (synopsis "Robust, high performance JSON parser and generator for R")
@@ -422,14 +425,14 @@ applications.")
 (define-public r-htmltable
   (package
     (name "r-htmltable")
-    (version "1.12")
+    (version "1.13.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "htmlTable" version))
        (sha256
         (base32
-         "1n5136vb7mi4rxl5jgwdmdhn4mwv2pcqyw2mrj406ih4hy6hpxa2"))))
+         "1l44b33xgj2698k6nz17r8fl0ink14ryzng803apm9d6bnv357v8"))))
     (properties `((upstream-name . "htmlTable")))
     (build-system r-build-system)
     (propagated-inputs
@@ -455,13 +458,13 @@ LaTeX.")
 (define-public r-curl
   (package
     (name "r-curl")
-    (version "3.2")
+    (version "3.3")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "curl" version))
               (sha256
                (base32
-                "15hmy71310hnf9yqvz0icx4cq939gv6iqaifzlfdh2ia8akawdhn"))))
+                "1gd5i25anzi28lg1f8p7g63z9d46xi0qaw4lxpml5p0f52lvkc0c"))))
     (build-system r-build-system)
     (arguments
      `(#:phases
@@ -478,7 +481,10 @@ LaTeX.")
                (("#ifdef _WIN32") "#if 1"))
              #t)))))
     (inputs
-     `(("libcurl" ,curl)))
+     `(("libcurl" ,curl)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
     (home-page "https://github.com/jeroenooms/curl")
     (synopsis "HTTP client for R")
     (description
@@ -782,14 +788,14 @@ work well on small screens.")
 (define-public r-feather
   (package
     (name "r-feather")
-    (version "0.3.1")
+    (version "0.3.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "feather" version))
        (sha256
         (base32
-         "1q6dbkfnkpnabq8lb6bm9ma44cfcghx2lm23pyk3vg7943wrn1pi"))))
+         "138vnlwhkwayyim4rbx6rnf91kzhfij6v2f91ppx2174ky5611h6"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-hms" ,r-hms)
@@ -923,14 +929,14 @@ including functions for geolocation and routing.")
 (define-public r-haven
   (package
     (name "r-haven")
-    (version "1.1.2")
+    (version "2.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "haven" version))
        (sha256
         (base32
-         "0pp8xjf5lzqg1wr8cwxj4njx99vxwlflwjrd7jvyzwlfpwh7n1qa"))))
+         "12qh8nba1dxlsmcihrx126wmjyj8n511k17vqj10lfgvpwq2sydy"))))
     (build-system r-build-system)
     (inputs
      `(("zlib" ,zlib)))
@@ -1141,13 +1147,13 @@ print, summary, plot, update, etc.
 (define-public r-ps
   (package
     (name "r-ps")
-    (version "1.2.1")
+    (version "1.3.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ps" version))
        (sha256
-        (base32 "1zxylcb0nr4qb5v6j199mc2pfgf2bpf00jrw47jajmv59qb0fwmx"))))
+        (base32 "1lcq7r0q4jb8x6k023zr2ydj2dg925bqqbkhx1phpnyjrk897498"))))
     (build-system r-build-system)
     (home-page "http://ps.r-lib.org")
     (synopsis "List, query, and manipulate system processes")
@@ -1367,14 +1373,14 @@ validation and filtering on the values, making options invisible or private.")
 (define-public r-circlize
   (package
     (name "r-circlize")
-    (version "0.4.4")
+    (version "0.4.5")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "circlize" version))
        (sha256
         (base32
-         "1l28maiqi549z191srncxgabx5fnvf0lld7smzwfd3vr5cx8nqww"))))
+         "0qhn9jzw7gd0jp9rmqrlbmy5ql6hjsa68pkp0acfz1h215dl8ah9"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-colorspace" ,r-colorspace)
@@ -1397,14 +1403,14 @@ multi-dimensional data.")
 (define-public r-powerlaw
   (package
     (name "r-powerlaw")
-    (version "0.70.1")
+    (version "0.70.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "poweRlaw" version))
        (sha256
         (base32
-         "04sr0nhdd1v915m0zf5gasznzgi08ykcy20kkwdw0l5mvvdbic8m"))))
+         "1asr6ikr7hmj78jyg8r1gwvcjg14addkxdiz92nh06lv71a183r4"))))
     (properties `((upstream-name . "poweRlaw")))
     (build-system r-build-system)
     (propagated-inputs
@@ -1734,13 +1740,13 @@ matrices.")
 (define-public r-rmpi
   (package
     (name "r-rmpi")
-    (version "0.6-7")
+    (version "0.6-9")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "Rmpi" version))
               (sha256
                (base32
-                "1b62gs7w1xqadqd7ir41jnxlcf14gcqfxd0915kn9ckdlsdrh0sw"))))
+                "1rhycla98hxgnnxlxxldr1x51djak7c2jjvlrv3jcsvgwp1ymqdj"))))
     (properties `((upstream-name . "Rmpi")))
     (build-system r-build-system)
     (arguments
@@ -2165,14 +2171,14 @@ available in a vignette.")
 (define-public r-lava
   (package
     (name "r-lava")
-    (version "1.6.3")
+    (version "1.6.4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "lava" version))
        (sha256
         (base32
-         "0cayjspry3r2lcbvl77v5v52b2zarri3b8xsf87pw5a3jn9anxcf"))))
+         "0627cjlg55kzbzcy82w6wykmw2i57qhgfcabn2zy3ydfdswyxij1"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-numderiv" ,r-numderiv)
@@ -2247,7 +2253,9 @@ the Kaplan-Meier and Aalen-Johansen methods.")
          "0ssy2qriiy6zdawriqcbl67qiq68ipml3frq7aqlq70r2fqyyw48"))))
     (properties `((upstream-name . "dimRed")))
     (build-system r-build-system)
-    (propagated-inputs `(("r-drr" ,r-drr)))
+    (propagated-inputs
+     `(("r-drr" ,r-drr)
+       ("r-magrittr" ,r-magrittr)))
     (home-page "https://github.com/gdkrmr/dimRed")
     (synopsis "Framework for dimensionality reduction")
     (description
@@ -2303,14 +2311,14 @@ dimensioned arrays.")
 (define-public r-rmysql
   (package
     (name "r-rmysql")
-    (version "0.10.15")
+    (version "0.10.16")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "RMySQL" version))
        (sha256
         (base32
-         "0bmc7w5fnkjaf333sgc0hskiy332m9gmfaxg0yzkjxscpizdw43n"))))
+         "1gh4b730g2v78jg5iln8fkz808ri2vhnhnw43wzkkjpy53jh48sp"))))
     (properties `((upstream-name . "RMySQL")))
     (build-system r-build-system)
     (native-inputs
@@ -2329,6 +2337,32 @@ is being phased out.  A modern MySQL client based on Rcpp is available from
 the RMariaDB package.")
     (license license:gpl2)))
 
+(define-public r-rpostgresql
+  (package
+    (name "r-rpostgresql")
+    (version "0.6-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "RPostgreSQL" version))
+       (sha256
+        (base32
+         "1mdhw5821v2h7hpa53v10wz53k4i90r0vb6a3dia5gq8f9j1h088"))))
+    (properties `((upstream-name . "RPostgreSQL")))
+    (build-system r-build-system)
+    (inputs
+     `(("postgresql" ,postgresql)))
+    (propagated-inputs
+     `(("r-dbi" ,r-dbi)))
+    (home-page "https://github.com/tomoakin/RPostgreSQL")
+    (synopsis "R interface to the PostgreSQL database system")
+    (description
+     "This package provides a Database Interface (DBI) compliant driver for R
+to access PostgreSQL database systems.")
+    ;; The whole package is released under GPL version 2.  It includes code
+    ;; under the PostgreSQL license.
+    (license license:gpl2)))
+
 (define-public r-geometry
   (package
     (name "r-geometry")
@@ -2362,14 +2396,14 @@ Delaunay triangulation and convex hull computation.")
 (define-public r-ddalpha
   (package
     (name "r-ddalpha")
-    (version "1.3.4")
+    (version "1.3.8")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ddalpha" version))
        (sha256
         (base32
-         "16cn0bhbaz9l9k4y79sv2d4f7pvs7dyka273y89igs5jvr99kfj1"))))
+         "0gi0hl14ghgf65zxsvgzh9z6xx1nyi49cpx192lmwrwqn3dy7ba0"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-bh" ,r-bh)
@@ -2500,21 +2534,42 @@ displays of path diagrams, factor analysis and structural equation models are
 created using basic graphics.")
     (license license:gpl2+)))
 
+(define-public r-generics
+  (package
+    (name "r-generics")
+    (version "0.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "generics" version))
+       (sha256
+        (base32
+         "0xk1xhpy7gpv3pvaygzhpfdxj72zmb38pb4nscfyg2ff36vx3cvi"))))
+    (build-system r-build-system)
+    (home-page "https://github.com/r-lib/generics")
+    (synopsis "Common S3 generics not provided by base R methods")
+    (description
+     "In order to reduce potential package dependencies and conflicts,
+generics provides a number of commonly used S3 generics that are not provided
+by base R methods related to model fitting.")
+    (license license:gpl2)))
+
 (define-public r-broom
   (package
     (name "r-broom")
-    (version "0.5.0")
+    (version "0.5.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "broom" version))
        (sha256
         (base32
-         "1r3831vq0fd5sh5841xr844sghg88z7ws91hg4jgnzbbkxfjp4ag"))))
+         "0bmf38yvwalqf5j5yrr48nsk5k3n75s0gwcw621hp5lgrgvnp7ns"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-backports" ,r-backports)
        ("r-dplyr" ,r-dplyr)
+       ("r-generics" ,r-generics)
        ("r-nlme" ,r-nlme)
        ("r-purrr" ,r-purrr)
        ("r-reshape2" ,r-reshape2)
@@ -2562,7 +2617,8 @@ provides a one-row summary of model-level statistics.")
        ("r-rlang" ,r-rlang)
        ("r-tibble" ,r-tibble)
        ("r-tidyselect" ,r-tidyselect)
-       ("r-timedate" ,r-timedate)))
+       ("r-timedate" ,r-timedate)
+       ("r-withr" ,r-withr)))
     (home-page "https://github.com/topepo/recipes")
     (synopsis "Preprocessing tools to create design matrices")
     (description
@@ -2770,14 +2826,14 @@ clustered data.")
 (define-public r-mitml
   (package
     (name "r-mitml")
-    (version "0.3-6")
+    (version "0.3-7")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "mitml" version))
        (sha256
         (base32
-         "1pkqv4qazih3byws5z6629pp232n8ra56lip7502727b0b4bsndw"))))
+         "0yqyxkyi1kmv5k63wxj5kkg5g8igk1axk2csb4xhj6wz0p89dxy6"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-haven" ,r-haven)
@@ -3052,14 +3108,14 @@ where possible.")
 (define-public r-laeken
   (package
     (name "r-laeken")
-    (version "0.4.6")
+    (version "0.5.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "laeken" version))
        (sha256
         (base32
-         "1rhkv1kk508pwln1d325iq4fink2ncssps0ypxi52j9d7wk78la6"))))
+         "1g9r3y7b0gl91hijk9awa8rjk97mqpkxinzq2cgmx0m38ng9ylpa"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-boot" ,r-boot)
@@ -3295,21 +3351,18 @@ constants, and control debugging of packages via environment variables.")
 (define-public r-processx
   (package
     (name "r-processx")
-    (version "3.2.0")
+    (version "3.2.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "processx" version))
        (sha256
         (base32
-         "1pzx4ap4xa07gf9zkd6hacdsnb9sp3kb60a7v7ljl0ywrcpn1fn4"))))
+         "1skjyi767avc3safajlj3ikk9lf11zzyjybdcmx8m9y59rf319ql"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-assertthat" ,r-assertthat)
-       ("r-crayon" ,r-crayon)
-       ("r-ps" ,r-ps)
-       ("r-r6" ,r-r6)
-       ("r-testthat" ,r-testthat)))
+     `(("r-ps" ,r-ps)
+       ("r-r6" ,r-r6)))
     (home-page "https://github.com/r-lib/processx3")
     (synopsis "Execute and control system processes")
     (description
@@ -3366,14 +3419,14 @@ available.")
 (define-public r-gclus
   (package
     (name "r-gclus")
-    (version "1.3.1")
+    (version "1.3.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "gclus" version))
        (sha256
         (base32
-         "02ba6zj9bjwrzykamjp40ajynx9xjx9h2i85n0ym0r5lcki4x6fn"))))
+         "1cz0g0i972955hhaji30rx8448x7f3as7z1sww9i5h86ybgirilw"))))
     (build-system r-build-system)
     (propagated-inputs `(("r-cluster" ,r-cluster)))
     (home-page "https://cran.r-project.org/web/packages/gclus/")
@@ -3485,14 +3538,14 @@ display.")
 (define-public r-pillar
   (package
     (name "r-pillar")
-    (version "1.3.0")
+    (version "1.3.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "pillar" version))
        (sha256
         (base32
-         "1q6arybmfqxhp5zqj1fri5pb8v7ywcv7bmgf81rrmgl892p4bn5f"))))
+         "1xnbb9sr5wn9dmp6m7cr4z7i6pmjvyabnfcx6x7i7mvdjmgvaf5k"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-cli" ,r-cli)
@@ -3530,14 +3583,14 @@ terminals.")
 (define-public r-tinytex
   (package
     (name "r-tinytex")
-    (version "0.9")
+    (version "0.10")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "tinytex" version))
        (sha256
         (base32
-         "08w5hyq3ysh631d5whgcfv1bb007cdc0bjhb83vwmhazs6rgvyjy"))))
+         "02bz8zaka5j51zin976n5nmk19a0390d0gwgj4zrbh48hl313rqm"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-xfun" ,r-xfun)))
@@ -3599,14 +3652,14 @@ supports arbitrary vertex/edge/graph attributes.")
 (define-public r-statnet-common
   (package
     (name "r-statnet-common")
-    (version "4.1.4")
+    (version "4.2.0")
     (source
       (origin
         (method url-fetch)
         (uri (cran-uri "statnet.common" version))
         (sha256
           (base32
-            "14dydm4c4dzc4v6ldxpn04q551nczzfablwibrd8lzgja8x9ksic"))))
+            "0q942g6kqmqxfss1cxb3yg8y5r1k1h5cyy99s1cfisrn6hqc6xhi"))))
     (properties
       `((upstream-name . "statnet.common")))
     (build-system r-build-system)
@@ -3799,14 +3852,14 @@ financial trading strategies.")
 (define-public r-tseries
   (package
     (name "r-tseries")
-    (version "0.10-45")
+    (version "0.10-46")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "tseries" version))
        (sha256
         (base32
-         "14s1glh5zzdvdl05a2z7ymhgf962svxf8xircghg5sc649lb33n0"))))
+         "08kjw0bfj5gfcrxpblwqxwna8a5g9gnr7ya61qb02r263pyhm50j"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-quadprog" ,r-quadprog)
@@ -3943,14 +3996,14 @@ applied econometric analysis.")
 (define-public r-cubature
   (package
     (name "r-cubature")
-    (version "1.4-1")
+    (version "2.0.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "cubature" version))
        (sha256
         (base32
-         "10jl5l3xnigiq95829ssq69xbim97k851187dghc30awszcx4clh"))))
+         "0wvs80i4axj7pdcy9gjl08qzjbcjkldha94xy4gdxc34vgmh7gvr"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-rcpp" ,r-rcpp)))
@@ -4233,14 +4286,14 @@ files.")
 (define-public r-shinyace
   (package
     (name "r-shinyace")
-    (version "0.3.2")
+    (version "0.3.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "shinyAce" version))
        (sha256
         (base32
-         "1fbk5i6w6cpam8s3acf4bgdp8hajn4digjjix3i6i4q3p2rvn6zx"))))
+         "02q6wqw349nlyf3mbf18cxif1xv9cal5qzccrdlnv73szqn9jk7j"))))
     (properties `((upstream-name . "shinyAce")))
     (build-system r-build-system)
     (propagated-inputs
@@ -4502,14 +4555,14 @@ multivariate plot methods.")
 (define-public r-fnn
   (package
     (name "r-fnn")
-    (version "1.1.2.1")
+    (version "1.1.2.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "FNN" version))
        (sha256
         (base32
-         "1n61jrcmakqif8f827x4qnlhm2jqpj5fgjj65c4p0kdd8lzw8pqp"))))
+         "09k3k0h9ikbwq6225l7gd0nhimbji722680cr66c8n7zpvxn06mm"))))
     (properties `((upstream-name . "FNN")))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/FNN")
@@ -4620,14 +4673,14 @@ evaluated by the @dfn{Akaike Information Criterion} (AIC).")
 (define-public r-arules
   (package
     (name "r-arules")
-    (version "1.6-1")
+    (version "1.6-2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "arules" version))
        (sha256
         (base32
-         "0glfqgxr87900kigmkby2ff7qrjvd6aq595q85y056i5ckjcp615"))))
+         "0vnss6akk3564kbci3h5rq8ylpckz77cgmflly3gn6fki66f7g96"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-matrix" ,r-matrix)))
@@ -4760,14 +4813,14 @@ dependency on Java.")
 (define-public r-rio
   (package
     (name "r-rio")
-    (version "0.5.10")
+    (version "0.5.16")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "rio" version))
        (sha256
         (base32
-         "158xg3vj0glk3fslwi6fywwmfym2b6kn3fdmjligdfy5lf68khix"))))
+         "0rfl56fdawlhc98451a9lcb6a6m56kw0i7dvd5hx58z025d8vsyk"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-curl" ,r-curl)
@@ -5492,14 +5545,14 @@ to help insert or delete content at a specific location in the document.")
 (define-public r-abn
   (package
     (name "r-abn")
-    (version "1.2")
+    (version "1.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "abn" version))
        (sha256
         (base32
-         "00k0razgdb5y5f62622fm7rxkcxrxg470nyyb02dvpfp60254kvs"))))
+         "1q9hzpxwg835711kxwygd0l2awal6f015f8s6fprwz7graz1wbbm"))))
     (build-system r-build-system)
     (inputs
      `(("gsl" ,gsl)))
@@ -5620,14 +5673,14 @@ parse and convert strings into cases like snake or camel among others.")
 (define-public r-prediction
   (package
     (name "r-prediction")
-    (version "0.3.6")
+    (version "0.3.6.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "prediction" version))
        (sha256
         (base32
-         "19d7312f5lkqfglfvlgssnvyw7gl161s0xradcry44r1i6qp05j1"))))
+         "1znxpacd79fjkf84w3493p1vmafanqfxsspwpwpkmda323bsxj0n"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-data-table" ,r-data-table)))
@@ -5644,14 +5697,14 @@ other add-on packages.")
 (define-public r-sjlabelled
   (package
     (name "r-sjlabelled")
-    (version "1.0.14")
+    (version "1.0.16")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "sjlabelled" version))
        (sha256
         (base32
-         "0ayfzhm9bwjfaarq5z0gvn9kapjwj3532azgin97nr5fnjdhvgaw"))))
+         "1zi1ncna16zl9hcy7mzara4kjxqkgwcw9ncp388ss353wwc9y2nc"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-broom" ,r-broom)
@@ -5661,9 +5714,7 @@ other add-on packages.")
        ("r-prediction" ,r-prediction)
        ("r-purrr" ,r-purrr)
        ("r-rlang" ,r-rlang)
-       ("r-snakecase" ,r-snakecase)
-       ("r-tibble" ,r-tibble)
-       ("r-tidyselect" ,r-tidyselect)))
+       ("r-snakecase" ,r-snakecase)))
     (home-page "https://github.com/strengejacke/sjlabelled")
     (synopsis "Labelled data utility functions")
     (description
@@ -5677,14 +5728,14 @@ vice versa), or to deal with multiple declared missing values.")
 (define-public r-sjmisc
   (package
     (name "r-sjmisc")
-    (version "2.7.6")
+    (version "2.7.7")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "sjmisc" version))
        (sha256
         (base32
-         "1jhrigikjpkdar3jxvi7qhqsg6lgjkjqhqll9vaay98b88rfc2im"))))
+         "0xm9pmq17maivmjsygwx3bdjd71hf829qbx735hyxa69z9dhp24q"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-broom" ,r-broom)
@@ -5790,14 +5841,14 @@ documents.")
 (define-public r-writexl
   (package
     (name "r-writexl")
-    (version "1.0")
+    (version "1.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "writexl" version))
        (sha256
         (base32
-         "0r2v12dc4zqmr1agp6vbw0fc48i278018684x84psjjqfmnv14cf"))))
+         "0w4wnpl3yhaqp63p32bk60xrbmd7xd11kxifjbzrghi7d4483a46"))))
     (build-system r-build-system)
     (inputs `(("zlib" ,zlib)))
     (home-page "https://github.com/ropensci/writexl")
@@ -5887,14 +5938,14 @@ support for default values, positional argument support, etc.")
 (define-public r-findpython
   (package
     (name "r-findpython")
-    (version "1.0.3")
+    (version "1.0.4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "findpython" version))
        (sha256
         (base32
-         "1y08jk2ffmkf9zpwiz2xymjhfwqvls9vzsnq62v278ghw9d571jl"))))
+         "1zfcdcp4d48d2pzf5n59kqrfk2z9nnyzkx5j00gfmgfkadnv93x5"))))
     (build-system r-build-system)
     (home-page "https://github.com/trevorld/findpython")
     (synopsis "Functions to find an acceptable Python binary")
@@ -5907,21 +5958,21 @@ matches version and feature constraints.")
 (define-public r-argparse
   (package
     (name "r-argparse")
-    (version "1.1.1")
+    (version "2.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "argparse" version))
        (sha256
         (base32
-         "0fzrbj87b274vf96azdnsjxk2nf45d5wy58vzmlah4b4h7q4j524"))))
+         "1qrp7hc8sm6ryw0zws76al865ansig1xbx8ljxz4wabh60msrz3i"))))
     (build-system r-build-system)
     (inputs `(("python" ,python)))
     (propagated-inputs
      `(("r-findpython" ,r-findpython)
        ("r-getopt" ,r-getopt)
        ("r-jsonlite" ,r-jsonlite)
-       ("r-proto" ,r-proto)))
+       ("r-r6" ,r-r6)))
     (home-page "https://github.com/trevorld/argparse")
     (synopsis "Command line optional and positional argument parser")
     (description
@@ -6012,14 +6063,14 @@ Group (Non-)Overlap considerations.")
 (define-public r-refgenome
   (package
     (name "r-refgenome")
-    (version "1.7.3")
+    (version "1.7.3.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "refGenome" version))
        (sha256
         (base32
-         "15p0ra2p1pwhy5ixbhsz1g79c5sc2aap4i4c8kil0m2syg9y45sn"))))
+         "1s4lxv5pqk6d0f0a9iclgv88yl346fwvzgraxh0gwpbym1yhh787"))))
     (properties `((upstream-name . "refGenome")))
     (build-system r-build-system)
     (propagated-inputs
@@ -6168,13 +6219,13 @@ the analyzed items.")
 (define-public r-slam
   (package
     (name "r-slam")
-    (version "0.1-43")
+    (version "0.1-44")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "slam" version))
        (sha256
-        (base32 "0hy4qzngcgafxxr6ld7n9a9wy979ji998gpcc32vidwyab66dj5h"))))
+        (base32 "11n956kid70931z0qyiql3v7nac1cfkamq44kzf9wl670pf8b033"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/slam/")
     (synopsis "Sparse lightweight arrays and matrices")
@@ -7266,14 +7317,14 @@ Hothorn, Westfall, 2010, CRC Press).")
 (define-public r-emmeans
   (package
     (name "r-emmeans")
-    (version "1.3.0")
+    (version "1.3.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "emmeans" version))
        (sha256
         (base32
-         "0kdyy4qp332c4yyvp1cnh48h6ks6ffir5rjcv0py0vm3m8c3hh61"))))
+         "1sf7gmdb7aqhdpx489vg693ivc5677n4yjx27ixv8v7pjh8mlwwx"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-estimability" ,r-estimability)
@@ -7398,14 +7449,14 @@ detection, parallelism through BLAS and parallel user templates.")
 (define-public r-sjstats
   (package
     (name "r-sjstats")
-    (version "0.17.2")
+    (version "0.17.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "sjstats" version))
        (sha256
         (base32
-         "0c7g35vn7r9rylhp0gj1yfslg7jybwrhpqpp7vdcd90xfccih24r"))))
+         "02na2pzxp88yp52h7vs959fgydiddmns39m9x4i0vz8fp016bdf8"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-bayesplot" ,r-bayesplot)
@@ -7444,14 +7495,14 @@ models.")
 (define-public r-glmmtmb
   (package
     (name "r-glmmtmb")
-    (version "0.2.2.0")
+    (version "0.2.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "glmmTMB" version))
        (sha256
         (base32
-         "1clpkjlmsjmn3m1z5jqv8cgw6bvpqsy4nx6k947r0jya017ny5y5"))))
+         "035hkywa37bz555fv6znxd4hfcs5w884365wfnwk4jx5vann4vvb"))))
     (properties `((upstream-name . "glmmTMB")))
     (build-system r-build-system)
     (propagated-inputs
@@ -7461,7 +7512,7 @@ models.")
        ("r-rcppeigen" ,r-rcppeigen)
        ("r-tmb" ,r-tmb)))
     (native-inputs
-     `(("r-knitr" ,r-knitr)))
+     `(("r-knitr" ,r-knitr))) ; for vignettes
     (home-page "https://github.com/glmmTMB")
     (synopsis "Generalized linear mixed models")
     (description
@@ -7476,14 +7527,14 @@ differentiation.")
 (define-public r-ggeffects
   (package
     (name "r-ggeffects")
-    (version "0.7.0")
+    (version "0.8.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ggeffects" version))
        (sha256
         (base32
-         "070c3fxmzajq2fy816s5pfqdyjlnzkabj97z7fcsva4h5rnqi9d6"))))
+         "152xyadj5m171z7dlzzy40y1fp2l9v46525dlw2al3qr0b7zpm61"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-crayon" ,r-crayon)
@@ -7515,14 +7566,14 @@ results using @code{ggplot2}.")
 (define-public r-sjplot
   (package
     (name "r-sjplot")
-    (version "2.6.1")
+    (version "2.6.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "sjPlot" version))
        (sha256
         (base32
-         "13qvw2s3r96qfi8kfsn76m050ccnmckl31a9qv94xws8da99v2fk"))))
+         "0x9pbchmz4qf4c9bi52dhhgv1phfj03q1hnxic8vndl6xwib63cy"))))
     (properties `((upstream-name . "sjPlot")))
     (build-system r-build-system)
     (propagated-inputs
@@ -7978,14 +8029,14 @@ the interfaces between R and C++.")
 (define-public r-mvabund
   (package
     (name "r-mvabund")
-    (version "3.13.1")
+    (version "4.0.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "mvabund" version))
        (sha256
         (base32
-         "1z8bj9zbc8h7w1xki9sc2p2rq6lv8gbcmiy9819z54d7lx1i9cnj"))))
+         "0la935gsiryfc0zixxr1dqj0av271x96pqxbi3bp6dksbw5gm68k"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-mass" ,r-mass)
@@ -8874,3 +8925,1485 @@ Furthermore, functions are available for fast singular value decomposition,
 for computing the pseudoinverse, and for checking the rank and positive
 definiteness of a matrix.")
     (license license:gpl3+)))
+
+(define-public r-rspectra
+  (package
+    (name "r-rspectra")
+    (version "0.13-1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "RSpectra" version))
+       (sha256
+        (base32
+         "1sw80chwyyjzf5px278l6xmp94yhwrlj5xh8d3wlw3dnvdkycca7"))))
+    (properties `((upstream-name . "RSpectra")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-matrix" ,r-matrix)
+       ("r-rcpp" ,r-rcpp)
+       ("r-rcppeigen" ,r-rcppeigen)))
+    (home-page "https://github.com/yixuan/RSpectra")
+    (synopsis "Solvers for large-scale Eigenvalue and SVD problems")
+    (description
+     "This package provides an R interface to the Spectra library for
+large-scale eigenvalue and SVD problems.  It is typically used to compute a
+few eigenvalues/vectors of an n by n matrix, e.g., the k largest eigenvalues,
+which is usually more efficient than @code{eigen()} if k << n.")
+    ;; MPL 2 or later.
+    (license license:mpl2.0)))
+
+(define-public r-vbsr
+  (package
+    (name "r-vbsr")
+    (version "0.0.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "vbsr" version))
+       (sha256
+        (base32
+         "1avskbxxyinjjdga4rnghcfvd4sypv4m39ysfaij5avvmi89bx3b"))))
+    (build-system r-build-system)
+    (home-page "https://cran.r-project.org/web/packages/vbsr")
+    (synopsis "Variational Bayes spike regression regularized linear models")
+    (description
+     "This package provides an efficient algorithm for solving ultra-sparse
+regularized regression models using a variational Bayes algorithm with a spike
+prior.  The algorithm is solved on a path, with coordinate updates, and is
+capable of generating very sparse models.  Very general model
+diagnostics for controlling type-1 errors are also provided.")
+    (license license:gpl2)))
+
+(define-public r-flare
+  (package
+    (name "r-flare")
+    (version "1.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "flare" version))
+       (sha256
+        (base32
+         "0ygif9a7a99qwv0b488wymmmncp6f5ww9yz13s4qs6p8yf37x1r1"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-igraph" ,r-igraph)
+       ("r-lattice" ,r-lattice)
+       ("r-mass" ,r-mass)
+       ("r-matrix" ,r-matrix)))
+    (home-page "https://cran.r-project.org/web/packages/flare")
+    (synopsis "Family of Lasso regression implementations")
+    (description
+     "This packages provides implementations of a family of Lasso variants
+including Dantzig Selector, LAD Lasso, SQRT Lasso, Lq Lasso for estimating
+high dimensional sparse linear models.")
+    (license license:gpl2)))
+
+(define-public r-lassopv
+  (package
+    (name "r-lassopv")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "lassopv" version))
+       (sha256
+        (base32
+         "0yawnjw063jypk3riy9xab9cmliv6c9dnabi18670khd3gzb2r9z"))))
+    (build-system r-build-system)
+    (propagated-inputs `(("r-lars" ,r-lars)))
+    (home-page "https://github.com/lingfeiwang/lassopv")
+    (synopsis "Non-parametric p-value estimation for predictors in Lasso")
+    (description
+     "This package enables you to estimate the p-values for predictors x
+against target variable y in Lasso regression, using the regularization
+strength when each predictor enters the active set of regularization path for
+the first time as the statistic.")
+    (license license:gpl3)))
+
+(define-public r-splitstackshape
+  (package
+    (name "r-splitstackshape")
+    (version "1.4.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "splitstackshape" version))
+       (sha256
+        (base32
+         "03w6h64ga4zqilffdway4l38l5cbman4yrspkzhbigds12aqz25r"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-data-table" ,r-data-table)))
+    (home-page "https://github.com/mrdwab/splitstackshape")
+    (synopsis "Stack and reshape datasets after splitting concatenated values")
+    (description
+     "Online data collection tools like Google Forms often export
+multiple-response questions with data concatenated in cells.  The
+@code{concat.split} (cSplit) family of functions provided by this package
+splits such data into separate cells.  This package also includes functions to
+stack groups of columns and to reshape wide data, even when the data are
+\"unbalanced\"---something which @code{reshape} (from base R) does not handle,
+and which @code{melt} and @code{dcast} from @code{reshape2} do not easily
+handle.")
+    (license license:gpl3)))
+
+(define-public r-tfmpvalue
+  (package
+    (name "r-tfmpvalue")
+    (version "0.0.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "TFMPvalue" version))
+       (sha256
+        (base32
+         "0h9qkl15k8v17v3g9bdnfwvh2s04ywjgg5y0xn2077dmywlja1bd"))))
+    (properties `((upstream-name . "TFMPvalue")))
+    (build-system r-build-system)
+    (propagated-inputs `(("r-rcpp" ,r-rcpp)))
+    (home-page "https://github.com/ge11232002/TFMPvalue")
+    (synopsis "P-value computation for position weight matrices")
+    (description
+     "In putative @dfn{Transcription Factor Binding Sites} (TFBSs)
+identification from sequence/alignments, we are interested in the significance
+of certain match scores.  TFMPvalue provides the accurate calculation of a
+p-value with a score threshold for position weight matrices, or the score with
+a given p-value.  It is an interface to code originally made available by
+Helene Touzet and Jean-Stephane Varre, 2007, Algorithms Mol Biol:2, 15.
+Touzet and Varre (2007).")
+    (license license:gpl2)))
+
+(define-public r-rnifti
+  (package
+    (name "r-rnifti")
+    (version "0.10.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "RNifti" version))
+       (sha256
+        (base32
+         "07sfzps4yg5zdhbxh6i4rbjvbjvvf2d8i9jcf64ywbmi557sw1zv"))))
+    (properties `((upstream-name . "RNifti")))
+    (build-system r-build-system)
+    (propagated-inputs `(("r-rcpp" ,r-rcpp)))
+    (home-page "https://github.com/jonclayden/RNifti")
+    (synopsis "Fast R and C++ access to NIfTI images")
+    (description
+     "This package provides very fast read and write access to images stored
+in the NIfTI-1 and ANALYZE-7.5 formats, with seamless synchronisation between
+compiled C and interpreted R code.  It also provides a C/C++ API that can be
+used by other packages.")
+    (license license:gpl2)))
+
+(define-public r-shades
+  (package
+    (name "r-shades")
+    (version "1.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "shades" version))
+       (sha256
+        (base32
+         "0v0xp9l1zyq4iysmkrbdwk4r1rksjj8p5c1726yrcgyg55mj59nv"))))
+    (build-system r-build-system)
+    (home-page "https://github.com/jonclayden/shades")
+    (synopsis "Simple color manipulation")
+    (description
+     "This package provides functions for easily manipulating colors,
+creating color scales and calculating color distances.")
+    (license license:bsd-3)))
+
+(define-public r-ore
+  (package
+    (name "r-ore")
+    (version "1.6.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "ore" version))
+       (sha256
+        (base32
+         "1l1ziljgm5gwjhvjq42wi5vcwbxlaj5dl9w8bhz0wh8vx4ajj07m"))))
+    (build-system r-build-system)
+    (home-page "https://github.com/jonclayden/ore")
+    (synopsis "R interface to the Onigmo regular expression library")
+    (description
+     "This package provides an alternative to R's built-in functionality for
+handling regular expressions, based on the Onigmo library.  It offers
+first-class compiled regex objects, partial matching and function-based
+substitutions, amongst other features.")
+    (license license:bsd-3)))
+
+(define-public r-reportr
+  (package
+    (name "r-reportr")
+    (version "1.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "reportr" version))
+       (sha256
+        (base32
+         "0zynplxqvbmf23cm2rsz3wz2jx6mv55z94mn1k44ny3lx625cnpw"))))
+    (build-system r-build-system)
+    (propagated-inputs `(("r-ore" ,r-ore)))
+    (home-page "https://github.com/jonclayden/reportr")
+    (synopsis "General message and error reporting system")
+    (description
+     "This package provides a system for reporting messages, which offers
+certain useful features over the standard R system, such as the incorporation
+of output consolidation, message filtering, assertions, expression
+substitution, automatic generation of stack traces for debugging, and
+conditional reporting based on the current \"output level\".")
+    (license license:gpl2)))
+
+(define-public r-tractor-base
+  (package
+    (name "r-tractor-base")
+    (version "3.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "tractor.base" version))
+       (sha256
+        (base32
+         "0i62dwra0yh565ryz75byfgqv22bqwz7138zs48w46yj2h8q9hyj"))))
+    (properties `((upstream-name . "tractor.base")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-ore" ,r-ore)
+       ("r-reportr" ,r-reportr)
+       ("r-rnifti" ,r-rnifti)
+       ("r-shades" ,r-shades)))
+    (home-page "http://www.tractor-mri.org.uk")
+    (synopsis "Read, manipulate and visualize magnetic resonance images")
+    (description
+     "This package provides functions for working with magnetic resonance
+images.  It supports reading and writing of popular file formats (DICOM,
+Analyze, NIfTI-1, NIfTI-2, MGH); interactive and non-interactive
+visualization; flexible image manipulation; metadata and sparse image
+handling.")
+    (license license:gpl2)))
+
+(define-public r-grimport
+  (package
+    (name "r-grimport")
+    (version "0.9-1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "grImport" version))
+       (sha256
+        (base32
+         "19d05ygpiv47lfzhfih35pdfll0axbrgd6p86l59mmg2d0j0s8bd"))))
+    (properties `((upstream-name . "grImport")))
+    (build-system r-build-system)
+    (inputs
+     `(("ghostscript" ,ghostscript)))
+    (propagated-inputs
+     `(("r-xml" ,r-xml)))
+    (home-page "https://cran.r-project.org/web/packages/grImport")
+    (synopsis "Convert, import, and draw PostScript pictures")
+    (description
+     "This package provides functions for converting, importing, and drawing
+PostScript pictures in R plots.")
+    (license license:gpl2+)))
+
+(define-public r-kohonen
+  (package
+    (name "r-kohonen")
+    (version "3.0.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "kohonen" version))
+       (sha256
+        (base32
+         "1zbfqa1qdlry8w6xhypkiknc5gn98v1ijhlsfka8zjg8ajhqgn1q"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-mass" ,r-mass)
+       ("r-rcpp" ,r-rcpp)))
+    (home-page "https://cran.r-project.org/web/packages/kohonen")
+    (synopsis "Supervised and unsupervised self-organising maps")
+    (description
+     "This package provides functions to train @dfn{self-organising
+maps} (SOMs).  Also interrogation of the maps and prediction using trained
+maps are supported.  The name of the package refers to Teuvo Kohonen, the
+inventor of the SOM.")
+    (license license:gpl2+)))
+
+(define-public r-nnls
+  (package
+    (name "r-nnls")
+    (version "1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "nnls" version))
+       (sha256
+        (base32
+         "07vcrrxvswrvfiha6f3ikn640yg0m2b4yd9lkmim1g0jmsmpfp8f"))))
+    (build-system r-build-system)
+    (native-inputs `(("gfortran" ,gfortran)))
+    (home-page "https://cran.r-project.org/web/packages/nnls")
+    (synopsis "Lawson-Hanson algorithm for non-negative least squares")
+    (description
+     "This package provides an R interface to the Lawson-Hanson implementation
+of an algorithm for @dfn{non-negative least squares} (NNLS).  It also allows
+the combination of non-negative and non-positive constraints.")
+    (license license:gpl2+)))
+
+(define-public r-iso
+  (package
+    (name "r-iso")
+    (version "0.0-17")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "Iso" version))
+       (sha256
+        (base32
+         "0lljc99sdzdqj6d56qbsggibr6pkdwkh821bj70ianikyvmdc1y0"))))
+    (properties `((upstream-name . "Iso")))
+    (build-system r-build-system)
+    (native-inputs `(("gfortran" ,gfortran)))
+    (home-page "http://www.stat.auckland.ac.nz/~rolf/")
+    (synopsis "Functions to perform isotonic regression")
+    (description
+     "This package provides support for linear order and unimodal
+order (univariate) isotonic regression and bivariate isotonic regression with
+linear order on both variables.")
+    (license license:gpl2+)))
+
+(define-public r-chemometricswithr
+  (package
+    (name "r-chemometricswithr")
+    (version "0.1.13")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "ChemometricsWithR" version))
+       (sha256
+        (base32
+         "166va1g3m1wv21qkmw4wpz0bsrclh3jih8smxphdc13l9pqgclpq"))))
+    (properties
+     `((upstream-name . "ChemometricsWithR")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-devtools" ,r-devtools)
+       ("r-kohonen" ,r-kohonen)
+       ("r-mass" ,r-mass)
+       ("r-pls" ,r-pls)))
+    (home-page "https://github.com/rwehrens/CWR")
+    (synopsis "Chemometrics with R")
+    (description
+     "This package provides functions and scripts used in the book
+\"Chemometrics with R - Multivariate Data Analysis in the Natural Sciences and
+Life Sciences\" by Ron Wehrens, Springer (2011).")
+    (license license:gpl2+)))
+
+(define-public r-als
+  (package
+    (name "r-als")
+    (version "0.0.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "ALS" version))
+       (sha256
+        (base32
+         "1swrn39vy50fazkpf97r7c542gkj6mlvy8gmcxllg7mf2mqx546a"))))
+    (properties `((upstream-name . "ALS")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-iso" ,r-iso)
+       ("r-nnls" ,r-nnls)))
+    (home-page "https://cran.r-project.org/web/packages/ALS")
+    (synopsis "Multivariate curve resolution alternating least squares")
+    (description
+     "Alternating least squares is often used to resolve components
+contributing to data with a bilinear structure; the basic technique may be
+extended to alternating constrained least squares.  This package provides an
+implementation of @dfn{multivariate curve resolution alternating least
+squares} (MCR-ALS).
+
+Commonly applied constraints include unimodality, non-negativity, and
+normalization of components.  Several data matrices may be decomposed
+simultaneously by assuming that one of the two matrices in the bilinear
+decomposition is shared between datasets.")
+    (license license:gpl2+)))
+
+(define-public r-strucchange
+  (package
+    (name "r-strucchange")
+    (version "1.5-1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "strucchange" version))
+       (sha256
+        (base32
+         "0cdgvl6kphm2i59bmnppn1y3kv65ml111bk7yzpcx7vv8wh2w3kl"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-sandwich" ,r-sandwich)
+       ("r-zoo" ,r-zoo)))
+    (home-page "https://cran.r-project.org/web/packages/strucchange")
+    (synopsis "Testing, monitoring, and dating structural changes")
+    (description
+     "This package provides tools for testing, monitoring and dating
+structural changes in (linear) regression models.  It features tests/methods
+from the generalized fluctuation test framework as well as from the F
+test (Chow test) framework.  This includes methods to fit, plot and test
+fluctuation processes (e.g., CUSUM, MOSUM, recursive/moving estimates) and F
+statistics, respectively.  It is possible to monitor incoming data online
+using fluctuation processes.  Finally, the breakpoints in regression models
+with structural changes can be estimated together with confidence intervals.
+Emphasis is always given to methods for visualizing the data.")
+    ;; Either of these two GPL versions
+    (license (list license:gpl2 license:gpl3))))
+
+(define-public r-pixmap
+  (package
+    (name "r-pixmap")
+    (version "0.4-11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "pixmap" version))
+       (sha256
+        (base32
+         "04klxp6jndw1bp6z40v20fbmdmdpfca2g0czmmmgbkark9s1183g"))))
+    (build-system r-build-system)
+    (home-page "https://cran.r-project.org/web/packages/pixmap")
+    (synopsis "Tools for bitmap images")
+    (description
+     "This package provides functions for importing, exporting, plotting and
+other manipulations of bitmapped images.")
+    (license license:gpl2)))
+
+(define-public r-rapidjsonr
+  (package
+    (name "r-rapidjsonr")
+    (version "1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "rapidjsonr" version))
+       (sha256
+        (base32
+         "0h4phjjhykbb45rg5b1xn48vqxdcvcngbm0416ds8in7j469wbwd"))))
+    (build-system r-build-system)
+    (home-page "https://cran.r-project.org/web/packages/rapidjsonr")
+    (synopsis "JSON parser")
+    (description
+     "This package provides JSON parsing capability through the Rapidjson
+library.")
+    (license license:expat)))
+
+(define-public r-ontologyindex
+  (package
+    (name "r-ontologyindex")
+    (version "2.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "ontologyIndex" version))
+       (sha256
+        (base32
+         "127hlf0z5fmbgnq4p9h8nvn6p72d2fpcn846zzb99s213421jnry"))))
+    (properties `((upstream-name . "ontologyIndex")))
+    (build-system r-build-system)
+    (home-page "https://cran.r-project.org/web/packages/ontologyIndex")
+    (synopsis "Functions for processing ontologies in R")
+    (description
+     "This package provides functions for reading ontologies into R as lists
+and manipulating sets of ontological terms.")
+    (license license:gpl2+)))
+
+(define-public r-bigrquery
+  (package
+    (name "r-bigrquery")
+    (version "1.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "bigrquery" version))
+       (sha256
+        (base32
+         "0z7wsqxla1pg2454l35kkfaz2s9hppwvpz1pds286ddldbbmyzis"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertthat" ,r-assertthat)
+       ("r-curl" ,r-curl)
+       ("r-dbi" ,r-dbi)
+       ("r-glue" ,r-glue)
+       ("r-httr" ,r-httr)
+       ("r-jsonlite" ,r-jsonlite)
+       ("r-prettyunits" ,r-prettyunits)
+       ("r-progress" ,r-progress)
+       ("r-rapidjsonr" ,r-rapidjsonr)
+       ("r-rcpp" ,r-rcpp)
+       ("r-tibble" ,r-tibble)))
+    (home-page "https://github.com/rstats-db/bigrquery")
+    (synopsis "R interface to Google's BigQuery API")
+    (description
+     "This package provides an R interface to Google's BigQuery database.")
+    (license license:gpl3)))
+
+(define-public r-gmp
+  (package
+    (name "r-gmp")
+    (version "0.5-13.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "gmp" version))
+       (sha256
+        (base32
+         "1xd6jjra4niqv1kps91y348lwgvy73p2faxaia4gfzdnrpw7wsxf"))))
+    (build-system r-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'set-CC
+           (lambda _ (setenv "CC" "gcc") #t)))))
+    (inputs `(("gmp" ,gmp)))
+    (home-page "https://cran.r-project.org/web/packages/gmp")
+    (synopsis "Multiple precision arithmetic")
+    (description
+     "This package supports multiple precision arithmetic (big integers and
+rationals, prime number tests, matrix computation), \"arithmetic without
+limitations\" using the GNU Multiple Precision library.")
+    ;; Any version of the GPL.
+    (license license:gpl3+)))
+
+(define-public r-rmpfr
+  (package
+    (name "r-rmpfr")
+    (version "0.7-1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "Rmpfr" version))
+       (sha256
+        (base32
+         "0172px5ryi7i0gyyin9z2bzif8vnj292gk0s1w5p3c12g9hj2c4v"))))
+    (properties `((upstream-name . "Rmpfr")))
+    (build-system r-build-system)
+    (inputs
+     `(("mpfr" ,mpfr)))
+    (propagated-inputs
+     `(("r-gmp" ,r-gmp)))
+    (home-page "http://rmpfr.r-forge.r-project.org/")
+    (synopsis "R bindings to the MPFR library")
+    (description
+     "This package supports arithmetic (via S4 classes and methods) for
+arbitrary precision floating point numbers, including transcendental
+functions.  To this end, the package interfaces with the @dfn{Multiple
+Precision Floating-Point Reliable} (MPFR) library.")
+    (license license:gpl2+)))
+
+(define-public r-assertive-base
+  (package
+    (name "r-assertive-base")
+    (version "0.0-7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.base" version))
+       (sha256
+        (base32
+         "1xs3ysvj0z57c58jw57pckq2rynia6ks4rmjmc02alczhk54wbgh"))))
+    (properties
+     `((upstream-name . "assertive.base")))
+    (build-system r-build-system)
+    (home-page "https://bitbucket.org/richierocks/assertive.base")
+    (synopsis "Core of the assertive package")
+    (description
+     "This package provides a minimal set of predicates and assertions used by
+the assertive package.  This is mainly for use by other package developers who
+want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-properties
+  (package
+    (name "r-assertive-properties")
+    (version "0.0-4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.properties" version))
+       (sha256
+        (base32
+         "0sqs54acs9qk9kvm32rxzfbzxz1l8mjahpfnw7r30z2brgz661jw"))))
+    (properties
+     `((upstream-name . "assertive.properties")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)))
+    (home-page "https://bitbucket.org/richierocks/assertive.properties")
+    (synopsis "Assertions to check properties of variables")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of variables, such as length, names and attributes.  This is
+mainly for use by other package developers who want to include run-time
+testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-numbers
+  (package
+    (name "r-assertive-numbers")
+    (version "0.0-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.numbers" version))
+       (sha256
+        (base32
+         "0jc3ss64j4m7bjydhagwwmka5n7c72vpw4kfcch0m5jvkq5qrqds"))))
+    (properties
+     `((upstream-name . "assertive.numbers")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)))
+    (home-page "https://bitbucket.org/richierocks/assertive.numbers")
+    (synopsis "Assertions to check properties of numbers")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of numbers.  This is mainly for use by other package developers
+who want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-sets
+  (package
+    (name "r-assertive-sets")
+    (version "0.0-3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.sets" version))
+       (sha256
+        (base32
+         "1cqvh2syvh5b6d85h601zjmsdbbf3h8q98ids4dfl4frdshpasc7"))))
+    (properties
+     `((upstream-name . "assertive.sets")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)))
+    (home-page "https://bitbucket.org/richierocks/assertive.sets")
+    (synopsis "Assertions to check properties of sets")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of sets.  This is mainly for use by other package developers
+who want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-matrices
+  (package
+    (name "r-assertive-matrices")
+    (version "0.0-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.matrices" version))
+       (sha256
+        (base32
+         "16sykzcndv6y2d43x6v9n7m95kv76364h39kh10w4z0xw6ksfqil"))))
+    (properties
+     `((upstream-name . "assertive.matrices")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)))
+    (home-page "https://bitbucket.org/richierocks/assertive.matrices")
+    (synopsis "Assertions to check properties of matrices")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of matrices.  This is mainly for use by other package
+developers who want to include run-time testing features in their own
+packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-models
+  (package
+    (name "r-assertive-models")
+    (version "0.0-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.models" version))
+       (sha256
+        (base32
+         "0bn4j4v5qvb2d672cgri61p8d9v258pmz35y3lvm6b9mdxwdi9mr"))))
+    (properties
+     `((upstream-name . "assertive.models")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)))
+    (home-page "https://bitbucket.org/richierocks/assertive.models")
+    (synopsis "Assertions to check properties of models")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of models.  This is mainly for use by other package developers
+who want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-reflection
+  (package
+    (name "r-assertive-reflection")
+    (version "0.0-4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.reflection" version))
+       (sha256
+        (base32
+         "19zmsbn00crfqm0kwd9ys5gv87xs3gi6wmlikrz9xiwzm7hp4dhj"))))
+    (properties
+     `((upstream-name . "assertive.reflection")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)))
+    (home-page "https://bitbucket.org/richierocks/assertive.reflection")
+    (synopsis "Assertions for checking the state of R")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the state and capabilities of R, the operating system it is running on, and
+the IDE being used.  This is mainly for use by other package developers who
+want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-types
+  (package
+    (name "r-assertive-types")
+    (version "0.0-3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.types" version))
+       (sha256
+        (base32
+         "0zxq1jfrzgw95ll7alvm0xnk7aihjdksngq4ya2whyvfjbmv4vdb"))))
+    (properties
+     `((upstream-name . "assertive.types")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-properties" ,r-assertive-properties)
+       ("r-codetools" ,r-codetools)))
+    (home-page "https://bitbucket.org/richierocks/assertive.types")
+    (synopsis "Assertions to check types of variables")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the types of variables.  This is mainly for use by other package developers
+who want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-files
+  (package
+    (name "r-assertive-files")
+    (version "0.0-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.files" version))
+       (sha256
+        (base32
+         "02pfz8j5vwcj5kl6zca46894li7lxwnlrr29j922f14ay6kdssmy"))))
+    (properties
+     `((upstream-name . "assertive.files")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-numbers" ,r-assertive-numbers)))
+    (home-page "https://bitbucket.org/richierocks/assertive.files")
+    (synopsis "Assertions to check properties of files")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of files and connections.  This is mainly for use by other
+package developers who want to include run-time testing features in their own
+packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-code
+  (package
+    (name "r-assertive-code")
+    (version "0.0-3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.code" version))
+       (sha256
+        (base32
+         "1qhbp668zfvhqs8avkhg9amp4zyazz6dsy4fc6kpdmw3sv8yi07g"))))
+    (properties
+     `((upstream-name . "assertive.code")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-properties" ,r-assertive-properties)
+       ("r-assertive-types" ,r-assertive-types)))
+    (home-page "https://bitbucket.org/richierocks/assertive.code")
+    (synopsis "Assertions to check properties of code")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of code.  This is mainly for use by other package developers
+who want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-datetimes
+  (package
+    (name "r-assertive-datetimes")
+    (version "0.0-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.datetimes" version))
+       (sha256
+        (base32
+         "00a98fx8p3pr3ckayh8wmxmm4rz01s67wah9697m92yci6pv3m78"))))
+    (properties
+     `((upstream-name . "assertive.datetimes")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-types" ,r-assertive-types)))
+    (home-page "https://bitbucket.org/richierocks/assertive.datetimes")
+    (synopsis "Assertions to check properties of dates and times")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of dates and times.  This is mainly for use by other package
+developers who want to include run-time testing features in their own
+packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-strings
+  (package
+    (name "r-assertive-strings")
+    (version "0.0-3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.strings" version))
+       (sha256
+        (base32
+         "0n6jrk88670g4ym0r8ii40a08a90z1xadj8wcryk8h0nl04dchfm"))))
+    (properties
+     `((upstream-name . "assertive.strings")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-types" ,r-assertive-types)
+       ("r-stringi" ,r-stringi)))
+    (home-page "https://bitbucket.org/richierocks/assertive.strings")
+    (synopsis "Assertions to check properties of strings")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of strings.  This is mainly for use by other package developers
+who want to include run-time testing features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-data-us
+  (package
+    (name "r-assertive-data-us")
+    (version "0.0-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.data.us" version))
+       (sha256
+        (base32
+         "1bgspn0sccmp9z7s7djvdvprgxlyc5vrxznp4zfjb79kwvgn83hq"))))
+    (properties
+     `((upstream-name . "assertive.data.us")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-strings" ,r-assertive-strings)))
+    (home-page "https://bitbucket.org/richierocks/assertive.data.us")
+    (synopsis "Assertions to check properties of strings")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of US-specific complex data types.  This is mainly for use by
+other package developers who want to include run-time testing features in
+their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-data-uk
+  (package
+    (name "r-assertive-data-uk")
+    (version "0.0-2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.data.uk" version))
+       (sha256
+        (base32
+         "1fzjvhwp7mwkqqix29khvs6zcrc82n6j4czvzzb473vyjyvdlj5b"))))
+    (properties
+     `((upstream-name . "assertive.data.uk")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-strings" ,r-assertive-strings)))
+    (home-page "https://bitbucket.org/richierocks/assertive.data.uk")
+    (synopsis "Assertions to check properties of strings")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of UK-specific complex data types.  This is mainly for use by
+other package developers who want to include run-time testing features in
+their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive-data
+  (package
+    (name "r-assertive-data")
+    (version "0.0-3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive.data" version))
+       (sha256
+        (base32
+         "00cvg2g36mdl8plrzx40m63qd55742mddqrchwy9n3c7mm4gn02s"))))
+    (properties
+     `((upstream-name . "assertive.data")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-strings" ,r-assertive-strings)))
+    (home-page "https://bitbucket.org/richierocks/assertive.data")
+    (synopsis "Assertions to check properties of data")
+    (description
+     "This package provides a set of predicates and assertions for checking
+the properties of (country independent) complex data types.  This is mainly
+for use by other package developers who want to include run-time testing
+features in their own packages.")
+    (license license:gpl3+)))
+
+(define-public r-assertive
+  (package
+    (name "r-assertive")
+    (version "0.3-5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "assertive" version))
+       (sha256
+        (base32
+         "0blbbhlxcb5ffdxqxi62xs33ljiawh6s22a0pyvbbh79jf46rzr3"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-assertive-base" ,r-assertive-base)
+       ("r-assertive-code" ,r-assertive-code)
+       ("r-assertive-data" ,r-assertive-data)
+       ("r-assertive-data-uk" ,r-assertive-data-uk)
+       ("r-assertive-data-us" ,r-assertive-data-us)
+       ("r-assertive-datetimes" ,r-assertive-datetimes)
+       ("r-assertive-files" ,r-assertive-files)
+       ("r-assertive-matrices" ,r-assertive-matrices)
+       ("r-assertive-models" ,r-assertive-models)
+       ("r-assertive-numbers" ,r-assertive-numbers)
+       ("r-assertive-properties" ,r-assertive-properties)
+       ("r-assertive-reflection" ,r-assertive-reflection)
+       ("r-assertive-sets" ,r-assertive-sets)
+       ("r-assertive-strings" ,r-assertive-strings)
+       ("r-assertive-types" ,r-assertive-types)
+       ("r-knitr" ,r-knitr)))
+    (home-page "https://bitbucket.org/richierocks/assertive")
+    (synopsis "Readable check functions to ensure code integrity")
+    (description
+     "This package provides lots of predicates (@code{is_*} functions) to
+check the state of your variables, and assertions (@code{assert_*} functions)
+to throw errors if they aren't in the right form.")
+    (license license:gpl3+)))
+
+(define-public r-dotcall64
+  (package
+    (name "r-dotcall64")
+    (version "1.0-0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "dotCall64" version))
+       (sha256
+        (base32
+         "1b8p7m3w0m7bp977c6jz74xkd611cxg11j49yza59k5fp338scb9"))))
+    (properties `((upstream-name . "dotCall64")))
+    (build-system r-build-system)
+    (native-inputs `(("gfortran" ,gfortran)))
+    (home-page "https://git.math.uzh.ch/reinhard.furrer/dotCall64")
+    (synopsis "Enhanced foreign function interface supporting long vectors")
+    (description
+     "This package provides @code{.C64()}, an enhanced version of @code{.C()}
+and @code{.Fortran()} from the R foreign function interface.  @code{.C64()}
+supports long vectors, arguments of type 64-bit integer, and provides a
+mechanism to avoid unnecessary copies of read-only and write-only arguments.
+This makes it a convenient and fast interface to C/C++ and Fortran code.")
+    (license license:gpl2+)))
+
+(define-public r-spam
+  (package
+    (name "r-spam")
+    (version "2.2-1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "spam" version))
+       (sha256
+        (base32
+         "04bfwwna013hrbl4k6w1cdiz5bkc83jlasivriyn5l9gkj2qskr2"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-dotcall64" ,r-dotcall64)))
+    (native-inputs `(("gfortran" ,gfortran)))
+    (home-page "https://www.math.uzh.ch/pages/spam/")
+    (synopsis "Sparse matrix algebra")
+    (description
+     "This package provides a set of functions for sparse matrix algebra.
+Differences with other sparse matrix packages are:
+
+@enumerate
+@item it only supports (essentially) one sparse matrix format;
+@item it is based on transparent and simple structure(s);
+@item it is tailored for MCMC calculations within G(M)RF;
+@item and it is fast and scalable (with the extension package @code{spam64}).
+@end enumerate\n")
+    ;; Either of these licenses
+    (license (list license:bsd-3 license:lgpl2.0))))
+
+(define-public r-fields
+  (package
+    (name "r-fields")
+    (version "9.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "fields" version))
+       (sha256
+        (base32
+         "1v7z48a8jmdcil28rj8c3455k6rssr5v9qi6dyhhpbb193bj8121"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-maps" ,r-maps)
+       ("r-spam" ,r-spam)))
+    (native-inputs
+     `(("gfortran" ,gfortran)))
+    (home-page "http://www.image.ucar.edu/fields")
+    (synopsis "Tools for spatial data")
+    (description
+     "This is a package for curve, surface and function fitting with an
+emphasis on splines, spatial data and spatial statistics.  The major methods
+include cubic, and thin plate splines, Kriging, and compactly supported
+covariance functions for large data sets.")
+    (license license:gpl2+)))
+
+(define-public r-spatialextremes
+  (package
+    (name "r-spatialextremes")
+    (version "2.0-7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "SpatialExtremes" version))
+       (sha256
+        (base32
+         "1y0h1pcfqp9ynxsr3yrfbihlwm25ypyb88jmm5k2g7xvm8h9g050"))))
+    (properties
+     `((upstream-name . "SpatialExtremes")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-fields" ,r-fields)
+       ("r-maps" ,r-maps)))
+    (home-page "http://spatialextremes.r-forge.r-project.org/")
+    (synopsis "Modelling spatial extremes")
+    (description
+     "This package provides tools for the statistical modelling of spatial
+extremes using max-stable processes, copula or Bayesian hierarchical models.
+More precisely, this package allows (conditional) simulations from various
+parametric max-stable models, analysis of the extremal spatial dependence, the
+fitting of such processes using composite likelihoods or least square (simple
+max-stable processes only), model checking and selection and prediction.")
+    (license license:gpl2+)))
+
+(define-public r-drc
+  (package
+    (name "r-drc")
+    (version "3.0-1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "drc" version))
+       (sha256
+        (base32
+         "0c8xn8ripzq270hy8d16fcnx02l02alddznd7fqwk3jyi6113h1y"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-car" ,r-car)
+       ("r-gtools" ,r-gtools)
+       ("r-mass" ,r-mass)
+       ("r-multcomp" ,r-multcomp)
+       ("r-plotrix" ,r-plotrix)
+       ("r-scales" ,r-scales)))
+    (home-page "https://cran.r-project.org/web/packages/drc")
+    (synopsis "Analysis of dose-response curves")
+    (description
+     "This package provides a suite of flexible and versatile model fitting
+and after-fitting functions for the analysis of dose-response data.")
+    (license license:gpl2+)))
+
+(define-public r-rmeta
+  (package
+    (name "r-rmeta")
+    (version "3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "rmeta" version))
+       (sha256
+        (base32
+         "0vkbnxp579v8zmcv1isdbzj5swpr6fq17zwparxcvzswjc2x9ydr"))))
+    (build-system r-build-system)
+    (home-page "https://cran.r-project.org/web/packages/rmeta")
+    (synopsis "Tools for meta-analysis")
+    (description
+     "This package provides functions for simple fixed and random effects
+meta-analysis for two-sample comparisons and cumulative meta-analyses.  It
+draws standard summary plots, funnel plots, and computes summaries and tests
+for association and heterogeneity.")
+    (license license:gpl2)))
+
+(define-public r-bootstrap
+  (package
+    (name "r-bootstrap")
+    (version "2017.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "bootstrap" version))
+       (sha256
+        (base32
+         "08lmsy7k8wsgv89yc904c6fidcymr1ma2ry4fl0p69p21v4iiwa4"))))
+    (build-system r-build-system)
+    (native-inputs `(("gfortran" ,gfortran)))
+    (home-page "https://cran.r-project.org/web/packages/bootstrap")
+    (synopsis "Functions for the book \"An Introduction to the Bootstrap\"")
+    (description
+     "This package provides software and data for the book \"An Introduction
+to the Bootstrap\" by B. Efron and R. Tibshirani, 1993, Chapman and Hall.
+This package is primarily provided for projects already based on it, and for
+support of the book.  New projects should preferentially use the recommended
+package \"boot\".")
+    (license license:bsd-3)))
+
+(define-public r-survivalroc
+  (package
+    (name "r-survivalroc")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "survivalROC" version))
+       (sha256
+        (base32
+         "0wnd65ff5w679hxa1zrpfrx9qg47q21pjxppsga6m3h4iq1yfj8l"))))
+    (properties `((upstream-name . "survivalROC")))
+    (build-system r-build-system)
+    (home-page "https://cran.r-project.org/web/packages/survivalROC")
+    (synopsis "Time-dependent ROC curve estimation from censored survival data")
+    (description
+     "Compute time-dependent ROC curve from censored survival data using
+Kaplan-Meier (KM) or Nearest Neighbor Estimation (NNE) method of Heagerty,
+Lumley & Pepe (Biometrics, Vol 56 No 2, 2000, PP 337-344)")
+    (license license:gpl2+)))
+
+(define-public r-longitudinal
+  (package
+    (name "r-longitudinal")
+    (version "1.1.12")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "longitudinal" version))
+       (sha256
+        (base32
+         "1d83ws28nxi3kw5lgd5n5y7865djq7ky72fw3ddi1fkkhg1r9y6l"))))
+    (build-system r-build-system)
+    (propagated-inputs `(("r-corpcor" ,r-corpcor)))
+    (home-page "http://strimmerlab.org/software/longitudinal/")
+    (synopsis "Analysis of multiple time course data")
+    (description
+     "This package contains general data structures and functions for
+longitudinal data with multiple variables, repeated measurements, and
+irregularly spaced time points.  It also implements a shrinkage estimator of
+dynamical correlation and dynamical covariance.")
+    (license license:gpl3+)))
+
+(define-public r-genenet
+  (package
+    (name "r-genenet")
+    (version "1.2.13")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "GeneNet" version))
+       (sha256
+        (base32
+         "0w52apk0nnr8nsskf26ff7ana8xiksr8wqmkjxzwhzgg7fncm61p"))))
+    (properties `((upstream-name . "GeneNet")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-corpcor" ,r-corpcor)
+       ("r-fdrtool" ,r-fdrtool)
+       ("r-longitudinal" ,r-longitudinal)))
+    (home-page "http://strimmerlab.org/software/genenet/")
+    (synopsis "Modeling and inferring gene networks")
+    (description
+     "This package analyzes gene expression (time series) data with focus on
+the inference of gene networks.  In particular, GeneNet implements the methods
+of Schaefer and Strimmer (2005a,b,c) and Opgen-Rhein and Strimmer (2006, 2007)
+for learning large-scale gene association networks (including assignment of
+putative directions).")
+    (license license:gpl3+)))
+
+(define-public r-rbamtools
+  (package
+    (name "r-rbamtools")
+    (version "2.16.11.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "rbamtools" version))
+       (sha256
+        (base32
+         "0gzkb1xyrkriv45wq8gv7qfwjslnvwkfkk5jjc4wg5kmm0ydpdzj"))))
+    (build-system r-build-system)
+    (inputs `(("zlib" ,zlib)))
+    (propagated-inputs
+     `(("r-refgenome" ,r-refgenome)))
+    (home-page "https://cran.r-project.org/web/packages/rbamtools")
+    (synopsis "Read and write BAM (binary alignment) files")
+    (description
+     "This package provides an R interface to functions of the SAMtools
+library.")
+    (license license:artistic2.0)))
+
+(define-public r-protviz
+  (package
+    (name "r-protviz")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "protViz" version))
+       (sha256
+        (base32
+         "150i2q4nakz28f39kmhrchz4qsr8ax6y02512md94k8hq4hamxg1"))))
+    (properties `((upstream-name . "protViz")))
+    (build-system r-build-system)
+    (inputs
+     `(("perl" ,perl)
+       ("python-2" ,python-2)))
+    (propagated-inputs `(("r-rcpp" ,r-rcpp)))
+    (home-page "https://github.com/protViz/protViz/")
+    (synopsis "Visualizing and analyzing mass spectrometry data in proteomics")
+    (description
+     "This package helps with quality checks, visualizations and analysis of
+mass spectrometry data, coming from proteomics experiments.  The package is
+developed, tested and used at the Functional Genomics Center Zurich, where it
+is used mainly for prototyping, teaching, and having fun with proteomics data.
+But it can also be used to do data analysis for small scale data sets.")
+    (license license:gpl3)))
+
+(define-public r-cmprsk
+  (package
+    (name "r-cmprsk")
+    (version "2.2-7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "cmprsk" version))
+       (sha256
+        (base32
+         "1imr3wpnj4g57n2x4ryahl4lk8lvq9y2r7319zv3k82mznha8bcm"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-survival" ,r-survival)))
+    (native-inputs
+     `(("gfortran" ,gfortran)))
+    (home-page "https://cran.r-project.org/web/packages/cmprsk")
+    (synopsis "Subdistribution analysis of competing risks")
+    (description
+     "This package provides tool for estimation, testing and regression
+modeling of subdistribution functions in competing risks, as described in
+Gray (1988), A class of K-sample tests for comparing the cumulative incidence
+of a competing risk, Ann. Stat. 16:1141-1154, and Fine JP and Gray RJ (1999),
+A proportional hazards model for the subdistribution of a competing risk,
+JASA, 94:496-509.")
+    (license license:gpl2+)))
+
+(define-public r-etm
+  (package
+    (name "r-etm")
+    (version "1.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "etm" version))
+       (sha256
+        (base32
+         "0ws103b3pmli0z4xbyfxkly2wnnnxnnwc0r66qjjqjrlvm7pffl1"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-data-table" ,r-data-table)
+       ("r-lattice" ,r-lattice)
+       ("r-rcpp" ,r-rcpp)
+       ("r-rcpparmadillo" ,r-rcpparmadillo)
+       ("r-survival" ,r-survival)))
+    (home-page "https://cran.r-project.org/web/packages/etm")
+    (synopsis "Empirical transition matrix")
+    (description
+     "The @dfn{empirical transition matrix} (etm) package permits to estimate
+the matrix of transition probabilities for any time-inhomogeneous multistate
+model with finite state space using the Aalen-Johansen estimator.")
+    (license license:expat)))
+
+(define-public r-epi
+  (package
+    (name "r-epi")
+    (version "2.32")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "Epi" version))
+       (sha256
+        (base32
+         "14n24xlm7pwdc54w2hlpjhfal1zpzm87rv3rjfckiz47d3w7dwqm"))))
+    (properties `((upstream-name . "Epi")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-cmprsk" ,r-cmprsk)
+       ("r-data-table" ,r-data-table)
+       ("r-etm" ,r-etm)
+       ("r-mass" ,r-mass)
+       ("r-matrix" ,r-matrix)
+       ("r-mgcv" ,r-mgcv)
+       ("r-numderiv" ,r-numderiv)
+       ("r-plyr" ,r-plyr)
+       ("r-survival" ,r-survival)
+       ("r-zoo" ,r-zoo)))
+    (home-page "http://BendixCarstensen.com/Epi/")
+    (synopsis "Statistical analysis in epidemiology")
+    (description
+     "This package provides functions for demographic and epidemiological
+analysis in the Lexis diagram, i.e. register and cohort follow-up data, in
+particular representation, manipulation and simulation of multistate data -
+the Lexis suite of functions, which includes interfaces to the @code{mstate},
+@code{etm} and @code{cmprsk} packages.  It also contains functions for
+Age-Period-Cohort and Lee-Carter modeling and a function for interval censored
+data and some useful functions for tabulation and plotting, as well as a
+number of epidemiological data sets.")
+    (license license:gpl2)))
+
+(define-public r-ppls
+  (package
+    (name "r-ppls")
+    (version "1.6-1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "ppls" version))
+       (sha256
+        (base32
+         "1zyrisy3c4cz896j1bjh61sf57wdl9p8ywdq268cl819szfq78mx"))))
+    (build-system r-build-system)
+    (propagated-inputs `(("r-mass" ,r-mass)))
+    (home-page "https://cran.r-project.org/web/packages/ppls")
+    (synopsis "Penalized partial least squares")
+    (description
+     "This package contains linear and nonlinear regression methods based on
+partial least squares and penalization techniques.  Model parameters are
+selected via cross-validation, and confidence intervals ans tests for the
+regression coefficients can be conducted via jackknifing.")
+    (license license:gpl2+)))
+
+(define-public r-huge
+  (package
+    (name "r-huge")
+    (version "1.2.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "huge" version))
+       (sha256
+        (base32
+         "134d951x42vy9dcmf155fbvik2934nh6qm2w5jlx3x2c6cf7faq4"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-igraph" ,r-igraph)
+       ("r-lattice" ,r-lattice)
+       ("r-mass" ,r-mass)
+       ("r-matrix" ,r-matrix)))
+    (home-page "https://cran.r-project.org/web/packages/huge")
+    (synopsis "High-dimensional undirected graph estimation")
+    (description
+     "This package provides a general framework for high-dimensional
+undirected graph estimation.  It integrates data preprocessing, neighborhood
+screening, graph estimation, and model selection techniques into a pipeline.")
+    (license license:gpl2)))
+
+(define-public r-parcor
+  (package
+    (name "r-parcor")
+    (version "0.2-6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "parcor" version))
+       (sha256
+        (base32
+         "0vgs6k92vdr0cmb8cwbv2ff6qavw30agskfd8bfh17hsskrisvx0"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-epi" ,r-epi)
+       ("r-genenet" ,r-genenet)
+       ("r-glmnet" ,r-glmnet)
+       ("r-mass" ,r-mass)
+       ("r-ppls" ,r-ppls)))
+    (home-page "https://cran.r-project.org/web/packages/parcor")
+    (synopsis "Regularized estimation of partial correlation matrices")
+    (description
+     "This package estimates the matrix of partial correlations based on
+different regularized regression methods: lasso, adaptive lasso, PLS, and
+Ridge Regression.  In addition, the package provides model selection for
+lasso, adaptive lasso and Ridge regression based on cross-validation.")
+    (license license:gpl2+)))
+
+(define-public r-mcmc
+  (package
+    (name "r-mcmc")
+    (version "0.9-5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "mcmc" version))
+       (sha256
+        (base32
+         "1i3rahph8pbhi5dsyjnkazqklg4lhh3azlyvx4kvabx50q0awxn6"))))
+    (build-system r-build-system)
+    (home-page "http://www.stat.umn.edu/geyer/mcmc/")
+    (synopsis "Markov chain Monte Carlo")
+    (description
+     "This package simulates continuous distributions of random vectors using
+@dfn{Markov chain Monte Carlo} (MCMC).  Users specify the distribution by an R
+function that evaluates the log unnormalized density.  Algorithms are random
+walk Metropolis algorithm (function @code{metrop}), simulated
+tempering (function @code{temper}), and morphometric random walk
+Metropolis (function @code{morph.metrop}), which achieves geometric ergodicity
+by change of variable.")
+    (license license:expat)))
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index e8062f0e1f..0a507aead6 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -11,6 +11,8 @@
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2018 Nicolò Balzarotti <nicolo@nixo.xyz>
+;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
+;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -71,7 +73,7 @@
 (define-public libsodium
   (package
     (name "libsodium")
-    (version "1.0.16")
+    (version "1.0.17")
     (source (origin
             (method url-fetch)
             (uri (list (string-append
@@ -82,7 +84,7 @@
                         "releases/old/libsodium-" version ".tar.gz")))
             (sha256
              (base32
-              "0cq5pn7qcib7q70mm1lgjwj75xdxix27v0xl1xl0kvxww7hwgbgf"))))
+              "1cf2d9v1gylz1qcy2zappbf526qfmph6gd6fnn3w2b347vixmhqc"))))
     (build-system gnu-build-system)
     (synopsis "Portable NaCl-based crypto library")
     (description
@@ -164,53 +166,6 @@ OpenBSD tool of the same name.")
                                           "See base64.c in the distribution for
                                            the license from IBM.")))))
 
-(define-public opendht
-  (package
-    (name "opendht")
-    (version "0.6.1")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/savoirfairelinux/opendht.git")
-                    (commit version)))
-              (file-name (git-file-name name version))
-              (modules '((guix build utils)))
-              (snippet
-               '(begin
-                  (delete-file-recursively "src/argon2")
-                  (substitute* "src/Makefile.am"
-                    (("./argon2/libargon2.la") "")
-                    (("SUBDIRS = argon2") ""))
-                  (substitute* "src/crypto.cpp"
-                    (("argon2/argon2.h") "argon2.h"))
-                  (substitute* "configure.ac"
-                    (("src/argon2/Makefile") ""))
-                  #t))
-              (sha256
-               (base32
-                "1akk613f18rc8kqs0cxdm34iq7wwc9kffhgp5rng09arwlw8gw3w"))))
-    (build-system gnu-build-system)
-    (inputs
-     `(("gnutls" ,gnutls)
-       ("nettle" ,nettle)
-       ("readline" ,readline)
-       ("argon2" ,argon2)))
-    (propagated-inputs
-     `(("msgpack" ,msgpack)))           ;included in several installed headers
-    (native-inputs
-     `(("autoconf" ,autoconf)
-       ("pkg-config" ,pkg-config)
-       ("automake" ,automake)
-       ("libtool" ,libtool)))
-    (arguments
-     `(#:configure-flags '("--disable-tools" "--disable-python")))
-    (home-page "https://github.com/savoirfairelinux/opendht/")
-    (synopsis "Distributed Hash Table (DHT) library")
-    (description "OpenDHT is a Distributed Hash Table (DHT) library.  It may
-be used to manage peer-to-peer network connections as needed for real time
-communication.")
-    (license license:gpl3)))
-
 (define-public encfs
   (package
     (name "encfs")
@@ -632,7 +587,7 @@ data on your platform, so the seed itself will be as random as possible.
 (define-public crypto++
   (package
     (name "crypto++")
-    (version "6.0.0")
+    (version "8.0.0")
     (source (origin
               (method url-fetch/zipbomb)
               (uri (string-append "https://cryptopp.com/cryptopp"
@@ -640,11 +595,14 @@ data on your platform, so the seed itself will be as random as possible.
                                   ".zip"))
               (sha256
                (base32
-                "1nidm6xbdza5cbgf5md2zznmaq692rfyjasycwipl6rzdfwjvb34"))))
+                "0b5qrsm4jhy4nzxgrm13nixhvbswr242plx1jw6r4sw492rqkzdv"))))
     (build-system gnu-build-system)
     (arguments
      `(#:make-flags
-       (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+       (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+             ;; Override "/sbin/ldconfig" with simply "echo" since
+             ;; we don't need ldconfig(8).
+             "LDCONF=echo")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'disable-native-optimisation
@@ -654,7 +612,28 @@ data on your platform, so the seed itself will be as random as possible.
              (substitute* "GNUmakefile"
                ((" -march=native") ""))
              #t))
-         (delete 'configure))))
+         (delete 'configure)
+         (add-after 'build 'build-shared
+           (lambda _
+             ;; By default, only the static library is built.
+             (invoke "make" "shared")))
+         (add-after 'install 'install-pkg-config
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (pkg-dir (string-append out "/lib/pkgconfig")))
+               (mkdir-p pkg-dir)
+               (with-output-to-file (string-append pkg-dir "/libcrypto++.pc")
+                 (lambda _
+                   (display
+                    (string-append
+                     "prefix=" out "\n"
+                     "libdir=" out "/lib\n"
+                     "includedir=" out "/include\n\n"
+                     "Name: libcrypto++-" ,version "\n"
+                     "Description: Class library of cryptographic schemes"
+                     "Version: " ,version "\n"
+                     "Libs: -L${libdir} -lcryptopp\n"
+                     "Cflags: -I${includedir}\n"))))))))))
     (native-inputs
      `(("unzip" ,unzip)))
     (home-page "https://cryptopp.com/")
@@ -881,3 +860,44 @@ GnuPG or encrypted filesystems.  Enchive has no external dependencies and is
 trivial to build for local use.  Portability is emphasized over performance.")
     (home-page "https://github.com/skeeto/enchive")
     (license license:unlicense)))
+
+(define-public libsecp256k1
+  (let ((commit "e34ceb333b1c0e6f4115ecbb80c632ac1042fa49"))
+    (package
+      (name "libsecp256k1")
+      (version (git-version "20181126" "1" commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/bitcoin-core/secp256k1")
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "0as78s179hcr3ysk3fw98k5wzabgnwri7vkkc17wg31lyz6ids6c"))
+                (file-name (git-file-name name version))))
+      (build-system gnu-build-system)
+      (native-inputs
+       `(("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ("libtool" ,libtool)))
+      ;; WARNING: This package might need additional configure flags to run properly.
+      ;; See https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/libsecp256k1.
+      (synopsis "C library for EC operations on curve secp256k1")
+      (description
+       "Optimized C library for EC operations on curve secp256k1.
+
+This library is a work in progress and is being used to research best
+practices.  Use at your own risk.
+
+Features:
+
+@itemize
+@item secp256k1 ECDSA signing/verification and key generation.
+@item Adding/multiplying private/public keys.
+@item Serialization/parsing of private keys, public keys, signatures.
+@item Constant time, constant memory access signing and pubkey generation.
+@item Derandomized DSA (via RFC6979 or with a caller provided function.)
+@item Very efficient implementation.
+@end itemize\n")
+      (home-page "https://github.com/bitcoin-core/secp256k1")
+      (license license:unlicense))))
diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index ea2e65a588..63570bfd48 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -37,13 +37,13 @@
 (define-public python-django
   (package
     (name "python-django")
-    (version "1.11.17")
+    (version "1.11.18")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "Django" version))
               (sha256
                (base32
-                "10xlpm21ll8mgz5py41sz9vrd603qv7an736agbqxkxlyikfx1x7"))))
+                "19b6f020als9hr4q1im5282yn2b1hzf586n9kjrlkrslq7da3k3k"))))
     (build-system python-build-system)
     (arguments
      '(#:modules ((srfi srfi-1)
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 2ebc3d8dad..09f0194bf7 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -106,7 +106,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
 (define-public isc-bind
   (package
     (name "bind")
-    (version "9.12.2-P2")
+    (version "9.12.3-P1")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -114,7 +114,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
                     version ".tar.gz"))
               (sha256
                (base32
-                "0gk9vwqlbdmn10m21f2awvmiccfbadvcwi8zsgm91awbx4k7h0l7"))))
+                "0wzdbn6ig851354cjdys5q3gvqcvl2gmmih1gzr8ldl7sy4r7dvc"))))
     (build-system gnu-build-system)
     (outputs `("out" "utils"))
     (inputs
diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm
index d928c4e61e..23695a0c06 100644
--- a/gnu/packages/docker.scm
+++ b/gnu/packages/docker.scm
@@ -23,17 +23,25 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix build-system gnu)
   #:use-module (guix build-system go)
   #:use-module (guix build-system python)
   #:use-module (guix utils)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages glib)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-web)
+  #:use-module (gnu packages version-control)
   #:use-module (gnu packages virtualization))
 
+(define %docker-version "18.09.0")
+
 (define-public python-docker-py
   (package
     (name "python-docker-py")
@@ -188,6 +196,11 @@ Python without keeping their credentials in a Docker configuration file.")
                (string-append "DefaultCommand = \""
                               (assoc-ref inputs "runc")
                               "/sbin/runc\"\n")))
+            (substitute* "vendor/github.com/containerd/continuity/testutil/loopback/loopback_linux.go"
+             (("exec\\.Command\\(\"losetup\"") ; )
+              (string-append "exec.Command(\""
+                             (assoc-ref inputs "util-linux")
+                             "/sbin/losetup\""))) ;)
              #t))
          (replace 'build
            (lambda* (#:key (make-flags '()) #:allow-other-keys)
@@ -200,7 +213,8 @@ Python without keeping their credentials in a Docker configuration file.")
     (inputs
      `(("btrfs-progs" ,btrfs-progs)
        ("libseccomp" ,libseccomp)
-       ("runc" ,runc)))
+       ("runc" ,runc)
+       ("util-linux" ,util-linux)))
     (native-inputs
      `(("go" ,go)
        ("pkg-config" ,pkg-config)))
@@ -210,3 +224,307 @@ It includes image transfer and storage, container execution and supervision,
 network attachments.")
     (home-page "http://containerd.io/")
     (license license:asl2.0)))
+
+(define-public docker
+  (package
+    (name "docker")
+    (version %docker-version)
+    (source
+     (origin
+      (method git-fetch)
+      (uri (git-reference
+            (url "https://github.com/docker/engine.git")
+            (commit (string-append "v" version))))
+      (file-name (git-file-name name version))
+      (sha256
+       (base32
+        "1liqbx58grqih6m8hz9y20y5waflv19pv15l3wl64skap2bsn21c"))
+      (patches
+       (search-patches "docker-engine-test-noinstall.patch"
+                       "docker-fix-tests.patch"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:modules
+       ((guix build gnu-build-system)
+        ((guix build go-build-system) #:prefix go:)
+        (guix build utils))
+       #:imported-modules
+       (,@%gnu-build-system-modules
+        (guix build go-build-system))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-paths
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "builder/builder-next/executor_unix.go"
+              (("CommandCandidates:.*runc.*")
+               (string-append "CommandCandidates: []string{\""
+                              (assoc-ref inputs "runc")
+                              "/sbin/runc\"},\n")))
+             (substitute* "vendor/github.com/containerd/go-runc/runc.go"
+              (("DefaultCommand = .*")
+               (string-append "DefaultCommand = \""
+                              (assoc-ref inputs "runc")
+                              "/sbin/runc\"\n")))
+             (substitute* "vendor/github.com/containerd/containerd/runtime/v1/linux/runtime.go"
+              (("defaultRuntime[ \t]*=.*")
+               (string-append "defaultRuntime = \""
+                              (assoc-ref inputs "runc")
+                              "/sbin/runc\"\n"))
+              (("defaultShim[ \t]*=.*")
+               (string-append "defaultShim = \""
+                              (assoc-ref inputs "containerd")
+                              "/bin/containerd-shim\"\n")))
+             (substitute* "daemon/daemon_unix.go"
+              (("DefaultShimBinary = .*")
+               (string-append "DefaultShimBinary = \""
+                              (assoc-ref inputs "containerd")
+                              "/bin/containerd-shim\"\n"))
+              (("DefaultRuntimeBinary = .*")
+               (string-append "DefaultRuntimeBinary = \""
+                              (assoc-ref inputs "runc")
+                              "/sbin/runc\"\n"))
+              (("DefaultRuntimeName = .*")
+               (string-append "DefaultRuntimeName = \""
+                              (assoc-ref inputs "runc")
+                              "/sbin/runc\"\n")))
+             (substitute* "daemon/config/config.go"
+              (("StockRuntimeName = .*")
+               (string-append "StockRuntimeName = \""
+                              (assoc-ref inputs "runc")
+                              "/sbin/runc\"\n")))
+             (substitute* "vendor/github.com/moby/buildkit/executor/runcexecutor/executor.go"
+              (("var defaultCommandCandidates = .*")
+               (string-append "var defaultCommandCandidates = []string{\""
+                              (assoc-ref inputs "runc") "/sbin/runc\"}")))
+             (let ((source-files (filter (lambda (name)
+                                    (not (string-contains name "test")))
+                                  (find-files "." "\\.go$"))))
+               (let-syntax ((substitute-LookPath
+                             (lambda (x)
+                               (syntax-case x ()
+                                 ((substitute-LookPath source-text package
+                                                       relative-path)
+                                  #`(substitute* source-files
+                                     ((#,(string-append "exec\\.LookPath\\(\""
+                                                        (syntax->datum
+                                                         #'source-text)
+                                                        "\")"))
+                                      (string-append "\""
+                                                     (assoc-ref inputs package)
+                                                     relative-path
+                                                     "\", error(nil)")))))))
+                            (substitute-Command
+                             (lambda (x)
+                               (syntax-case x ()
+                                 ((substitute-LookPath source-text package
+                                                       relative-path)
+                                  #`(substitute* source-files
+                                     ((#,(string-append "exec\\.Command\\(\""
+                                                        (syntax->datum
+                                                         #'source-text)
+                                                        "\"")) ; )
+                                      (string-append "exec.Command(\""
+                                                     (assoc-ref inputs package)
+                                                     relative-path
+                                                     "\"")))))))) ; )
+                 (substitute-LookPath "ps" "procps" "/bin/ps")
+                 (substitute-LookPath "mkfs.xfs" "xfsprogs" "/bin/mkfs.xfs")
+                 (substitute-LookPath "lvmdiskscan" "lvm2" "/sbin/lvmdiskscan")
+                 (substitute-LookPath "pvdisplay" "lvm2" "/sbin/pvdisplay")
+                 (substitute-LookPath "blkid" "util-linux" "/sbin/blkid")
+                 (substitute-LookPath "unpigz" "pigz" "/bin/unpigz")
+                 (substitute-LookPath "iptables" "iptables" "/sbin/iptables")
+                 (substitute-LookPath "ip" "iproute2" "/sbin/ip")
+                 (substitute-Command "modprobe" "kmod" "/bin/modprobe")
+                 (substitute-Command "pvcreate" "lvm2" "/sbin/pvcreate")
+                 (substitute-Command "vgcreate" "lvm2" "/sbin/vgcreate")
+                 (substitute-Command "lvcreate" "lvm2" "/sbin/lvcreate")
+                 (substitute-Command "lvconvert" "lvm2" "/sbin/lvconvert")
+                 (substitute-Command "lvchange" "lvm2" "/sbin/lvchange")
+                 (substitute-Command "mkfs.xfs" "xfsprogs" "/sbin/mkfs.xfs")
+                 (substitute-Command "xfs_growfs" "xfsprogs" "/sbin/xfs_growfs")
+                 (substitute-Command "mkfs.ext4" "e2fsprogs" "/sbin/mkfs.ext4")
+                 (substitute-Command "tune2fs" "e2fsprogs" "/sbin/tune2fs")
+                 (substitute-Command "blkid" "util-linux" "/sbin/blkid")
+                 (substitute-Command "resize2fs" "e2fsprogs" "/sbin/resize2fs")
+; docker-mountfrom ??
+; docker
+; docker-untar ??
+; docker-applyLayer ??
+; /usr/bin/uname
+; grep
+; apparmor_parser
+                 (substitute-Command "ps" "procps" "/bin/ps")
+                 (substitute-Command "losetup" "util-linux" "/sbin/losetup")
+                 (substitute-Command "uname" "coreutils" "/bin/uname")
+                 (substitute-Command "dbus-launch" "dbus" "/bin/dbus-launch")
+                 (substitute-Command "git" "git" "/bin/git"))
+               ;; Make compilation fail when, in future versions, Docker
+               ;; invokes other programs we don't know about and thus don't
+               ;; substitute.
+               (substitute* source-files
+                ;; Search for Java in PATH.
+                (("\\<exec\\.Command\\(\"java\"") ; )
+                 "xxec.Command(\"java\"") ; )
+                ;; Search for AUFS in PATH (mainline Linux doesn't support it).
+                (("\\<exec\\.Command\\(\"auplink\"") ; )
+                 "xxec.Command(\"auplink\"") ; )
+                ;; Fail on other unsubstituted commands.
+                (("\\<exec\\.Command\\(\"([a-zA-Z0-9][a-zA-Z0-9_-]*)\""
+                  _ executable) ; )
+                 (string-append "exec.Guix_doesnt_want_Command(\""
+                                executable "\"")) ;)
+                (("\\<xxec\\.Command")
+                 "exec.Command")
+                ;; Search for ZFS in PATH.
+                (("\\<LookPath\\(\"zfs\"\\)") "LooxPath(\"zfs\")")
+                ;; Fail on other unsubstituted LookPaths.
+                (("\\<LookPath\\(\"") "Guix_doesnt_want_LookPath\\(\"") ; ))
+                (("\\<LooxPath") "LookPath")))
+             #t))
+         (add-after 'patch-paths 'delete-failing-tests
+           (lambda _
+             ;; Needs internet access.
+             (delete-file "builder/remotecontext/git/gitutils_test.go")
+             ;; Permission denied.
+             (delete-file "daemon/graphdriver/devmapper/devmapper_test.go")
+             ;; Operation not permitted (idtools.MkdirAllAndChown).
+             (delete-file "daemon/graphdriver/vfs/vfs_test.go")
+             ;; Timeouts after 5 min.
+             (delete-file "plugin/manager_linux_test.go")
+             ;; Operation not permitted.
+             (delete-file "daemon/graphdriver/overlay/overlay_test.go")
+             (delete-file "daemon/graphdriver/overlay2/overlay_test.go")
+             #t))
+         (replace 'configure
+           (lambda _
+             (setenv "DOCKER_GITCOMMIT" (string-append "v" ,%docker-version))
+             ;; Automatically use bundled dependencies.
+             ;; TODO: Unbundle - see file "vendor.conf".
+             (setenv "AUTO_GOPATH" "1")
+             ;; Respectively, strip the symbol table and debug
+             ;; information, and the DWARF symbol table.
+             (setenv "LDFLAGS" "-s -w")
+             ;; Make build faster
+             (setenv "GOCACHE" "/tmp")
+             #t))
+         (add-before 'build 'setup-environment
+           (assoc-ref go:%standard-phases 'setup-environment))
+         (replace 'build
+           (lambda _
+             ;; Our LD doesn't like the statically linked relocatable things
+             ;; that go produces, so install the dynamic version of
+             ;; dockerd instead.
+             (invoke "hack/make.sh" "dynbinary")))
+         (replace 'check
+           (lambda _
+             ;; The build process generated a file because the environment
+             ;; variable "AUTO_GOPATH" was set.  Use it.
+             (setenv "GOPATH" (string-append (getcwd) "/.gopath"))
+             ;; ".gopath/src/github.com/docker/docker" is a link to the current
+             ;; directory and chdir would canonicalize to that.
+             ;; But go needs to have the uncanonicalized directory name, so
+             ;; store that.
+             (setenv "PWD" (string-append (getcwd)
+                            "/.gopath/src/github.com/docker/docker"))
+             (with-directory-excursion ".gopath/src/github.com/docker/docker"
+               (invoke "hack/test/unit"))
+             (setenv "PWD" #f)
+             #t))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (out-bin (string-append out "/bin")))
+               (install-file "bundles/dynbinary-daemon/dockerd" out-bin)
+               (install-file "bundles/dynbinary-daemon/dockerd-dev" out-bin)
+               #t))))))
+    (inputs
+     `(("btrfs-progs" ,btrfs-progs)
+       ("containerd" ,containerd) ; for containerd-shim
+       ("coreutils" ,coreutils)
+       ("dbus" ,dbus)
+       ("e2fsprogs" ,e2fsprogs)
+       ("git" ,git)
+       ("iproute2" ,iproute)
+       ("iptables" ,iptables)
+       ("kmod" ,kmod)
+       ("libseccomp" ,libseccomp)
+       ("pigz" ,pigz)
+       ("procps" ,procps)
+       ("runc" ,runc)
+       ("util-linux" ,util-linux)
+       ("lvm2" ,lvm2)
+       ("xfsprogs" ,xfsprogs)))
+    (native-inputs
+     `(("eudev" ,eudev) ; TODO: Should be propagated by lvm2 (.pc -> .pc)
+       ("go" ,go)
+       ("pkg-config" ,pkg-config)))
+    (synopsis "Docker container component library, and daemon")
+    (description "This package provides a framework to assemble specialized
+container systems.  It includes components for orchestration, image
+management, secret management, configuration management, networking,
+provisioning etc.")
+    (home-page "https://mobyproject.org/")
+    (license license:asl2.0)))
+
+(define-public docker-cli
+  (package
+    (name "docker-cli")
+    (version %docker-version)
+    (source
+     (origin
+      (method git-fetch)
+      (uri (git-reference
+            (url "https://github.com/docker/cli.git")
+            (commit (string-append "v" version))))
+      (file-name (git-file-name name version))
+      (sha256
+       (base32
+        "1ivisys20kphvbqlazc3bsg7pk0ykj9gjx5d4yg439x4n13jxwvb"))))
+    (build-system go-build-system)
+    (arguments
+     `(#:import-path "github.com/docker/cli"
+       ;; TODO: Tests require a running Docker daemon.
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'setup-environment-2
+           (lambda _
+             ;; Respectively, strip the symbol table and debug
+             ;; information, and the DWARF symbol table.
+             (setenv "LDFLAGS" "-s -w")
+
+             ;; Make build reproducible.
+             (setenv "BUILDTIME" "1970-01-01 00:00:01.000000000+00:00")
+             (symlink "src/github.com/docker/cli/scripts" "./scripts")
+             (symlink "src/github.com/docker/cli/docker.Makefile" "./docker.Makefile")
+             #t))
+         (replace 'build
+           (lambda _
+             (invoke "./scripts/build/dynbinary")))
+         (replace 'check
+           (lambda* (#:key make-flags tests? #:allow-other-keys)
+             (setenv "PATH" (string-append (getcwd) "/build:" (getenv "PATH")))
+             (if tests?
+                 ;; Use the newly-built docker client for the tests.
+                 (with-directory-excursion "src/github.com/docker/cli"
+                   ;; TODO: Run test-e2e as well?
+                   (apply invoke "make" "-f" "docker.Makefile" "test-unit"
+                          (or make-flags '())))
+                 #t)))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (out-bin (string-append out "/bin")))
+               (chdir "build")
+               (install-file (readlink "docker") out-bin)
+               (install-file "docker" out-bin)
+               #t))))))
+    (native-inputs
+     `(("go" ,go)
+       ("libltdl" ,libltdl)
+       ("pkg-config" ,pkg-config)))
+    (synopsis "Command line interface to Docker")
+    (description "This package provides a command line interface to Docker.")
+    (home-page "http://www.docker.com/")
+    (license license:asl2.0)))
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 5308d1f1a4..899a37452f 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -428,16 +428,16 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
 (define-public emacs-with-editor
   (package
     (name "emacs-with-editor")
-    (version "2.7.3")
+    (version "2.8.0")
     (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    "https://github.com/magit/with-editor/archive/v"
-                    version ".tar.gz"))
-              (file-name (string-append name "-" version ".tar.gz"))
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/magit/with-editor.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
               (sha256
                (base32
-                "1ln2s0kckzkv50qmr6x1kb2j30cfjii0vs6lpghg7ff4lav8jqgh"))))
+                "1bbzvxnjpxqyvi808isld025b3pcidn4r2xf8hnk9bmzcfdvdr6q"))))
     (build-system emacs-build-system)
     (propagated-inputs
      `(("emacs-dash" ,emacs-dash)))
@@ -592,7 +592,7 @@ support for Git-SVN.")
 (define-public emacs-magit-popup
   (package
     (name "emacs-magit-popup")
-    (version "2.12.4")
+    (version "2.12.5")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -601,7 +601,7 @@ support for Git-SVN.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "08952nzn0cb6gxscqyiljk4fq2zxjvr3ism0lvgw0gs9hl5phiwx"))))
+                "13riknyqr6vxqll80sfhvz165flvdz367rbd0pr5slb01bnfsi2i"))))
     (build-system emacs-build-system)
     (arguments
      `(#:phases
@@ -622,6 +622,58 @@ these arguments.  The prototypical use is for the command to call an external
 process, passing on the arguments as command line arguments.")
     (license license:gpl3+)))
 
+(define-public emacs-treepy
+  (package
+    (name "emacs-treepy")
+    (version "0.1.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/volrath/treepy.el.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "04zwm6gx9pxfvgfkizx6pvb1ql8pqxjyzqp8flz0432x0gq5nlxk"))))
+    (build-system emacs-build-system)
+    (home-page
+     "https://github.com/volrath/treepy.el")
+    (synopsis "Tree traversal tools")
+    (description
+     "Generic tools for recursive and iterative tree traversal based on
+clojure.walk and clojure.zip respectively.")
+    (license license:gpl3+)))
+
+(define-public emacs-graphql
+  (package
+   (name "emacs-graphql")
+   (version "0.1.1")
+   (source (origin
+             (modules '((guix build utils)))
+             ;; Remove examples file with references to external packages as
+             ;; they do not exist at compilation time.
+             (snippet
+              '(begin (delete-file "examples.el")
+                 #t))
+             (method git-fetch)
+             (uri (git-reference
+                   (url "https://github.com/vermiculus/graphql.el.git")
+                   (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0sp0skc1rnhi39szfbq1i99pdgd3bhn4c15cff05iqhjy2d4hniw"))))
+   (build-system emacs-build-system)
+   (home-page
+    "https://github.com/vermiculus/graphql.el")
+   (synopsis "GraphQL utilities")
+   (description
+    "GraphQL.el provides a generally-applicable domain-specific language for
+creating and executing GraphQL queries against your favorite web services.
+GraphQL is a data query language and runtime designed and used to request and
+deliver data to mobile and web apps.")
+   (license license:gpl3+)))
+
 (define-public emacs-ghub
   (package
     (name "emacs-ghub")
@@ -1435,6 +1487,18 @@ environment set through Direnv.")
         (base32
          "1qa7lcrcmf76sf6dy8sxbg4adq7rg59fm0n5848w3qxgsr0h45fg"))))
     (build-system emacs-build-system)
+    (inputs
+     `(("global" ,global)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'configure
+           (lambda* (#:key inputs #:allow-other-keys)
+             (chmod "ggtags.el" #o644)
+             (emacs-substitute-variables "ggtags.el"
+               ("ggtags-executable-directory"
+                (string-append (assoc-ref inputs "global") "/bin")))
+             #t)))))
     (home-page "https://github.com/leoliu/ggtags")
     (synopsis "Frontend to the GNU Global source code tagging system")
     (description "@code{ggtags} provides a frontend to the GNU Global source
@@ -2836,9 +2900,16 @@ These are distributed in separate files and can be used individually.")
                 "0nhjrnlmss535jbshjjd30vydbr8py21vkx4p294w6d8vg2rssf8"))
               (file-name (string-append name "-" version ".tar.gz"))))
     (build-system emacs-build-system)
-    (arguments '())
-    (propagated-inputs
-     `(("emacs-irony-mode-server" ,emacs-irony-mode-server)))
+    (inputs `(("server" ,emacs-irony-mode-server)))
+    (arguments `(#:phases
+                 (modify-phases %standard-phases
+                   (add-after 'unpack 'configure
+                        (lambda* (#:key inputs #:allow-other-keys)
+                          (chmod "irony.el" #o644)
+                          (emacs-substitute-variables "irony.el"
+                            ("irony-server-install-prefix"
+                             (assoc-ref inputs "server")))
+                          #t)))))
     (synopsis "C/C++/ObjC Code completion and syntax checks for Emacs")
     (description "Irony-mode provides Clang-assisted syntax checking and
 completion for C, C++, and ObjC in GNU Emacs.  Using @code{libclang} it can
@@ -2853,7 +2924,6 @@ described on the homepage.")
     (name "emacs-irony-mode-server")
     (inputs
      `(("clang" ,clang)))
-    (propagated-inputs '())
     (arguments
      `(#:phases
        (modify-phases %standard-phases
@@ -8765,16 +8835,16 @@ object has been freed.")
 (define-public emacs-emacsql
   (package
     (name "emacs-emacsql")
-    (version "2.0.3")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (string-append "https://github.com/skeeto/emacsql/archive/"
-                           version ".tar.gz"))
-       (file-name (string-append name "-" version ".tar.gz"))
-       (sha256
-        (base32
-         "04hfjdgl1zc7jysgjc7d7d3xqpr7q1q9gsmzffjd91ii3hpqjgx6"))))
+    (version "3.0.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/skeeto/emacsql.git")
+                    (commit (string-append version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1c84gxr1majqj4b59wgdy3lzm3ap66w9qsrnkx8hdbk9895ak81g"))))
     (build-system emacs-build-system)
     (arguments
      `(#:modules ((guix build emacs-build-system)
@@ -8809,8 +8879,6 @@ object has been freed.")
              (let ((file "emacsql-sqlite.el"))
                (chmod file #o644)
                (emacs-substitute-sexps file
-                 ;; Avoid interactive prompts.
-                 ("(defvar emacsql-sqlite-user-prompted" 't)
                  ;; Make sure Emacs looks for ‘GCC’ binary in the right place.
                  ("(executable-find" (which "gcc"))
                  ;; Make sure Emacs looks for ‘emacsql-sqlite’ binary
@@ -8846,16 +8914,17 @@ object @code{nil} corresponds 1:1 with @code{NULL} in the database.")
 (define-public emacs-closql
   (package
     (name "emacs-closql")
-    (version "0.5.1")
+    (version "1.0.0")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append "https://github.com/emacscollective/closql/archive/"
-                           "v" version ".tar.gz"))
-       (file-name (string-append name "-" version ".tar.gz"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/emacscollective/closql.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
        (sha256
         (base32
-         "0wa6r0kgbb7f19039p5f3di4dvrvxfgpd8bkam94fca7jvzj536c"))))
+         "0cy44d1fxkvah6fhjkn3mp6gzzrjmws1c4c20ayrma74y9xich3v"))))
     (build-system emacs-build-system)
     (propagated-inputs
      `(("emacs-emacsql" ,emacs-emacsql)))
@@ -9336,11 +9405,11 @@ navigate and display hierarchy structures.")
       (license license:gpl3+))))
 
 (define-public emacs-md4rd
-  (let ((commit "be0fc4951b2d1f5194ffa1fcaac706dbac560500")
+  (let ((commit "c55512c2f7680db2a1e73db6bdf93adecaf40fec")
         (revision "1"))
     (package
       (name "emacs-md4rd")
-      (version (string-append "0.0.1" "-" revision "."
+      (version (string-append "0.0.2" "-" revision "."
                               (string-take commit 7)))
       (source (origin
                 (method git-fetch)
@@ -9350,7 +9419,7 @@ navigate and display hierarchy structures.")
                 (file-name (string-append name "-" version "-checkout"))
                 (sha256
                  (base32
-                  "1i93shx5x192gd7cl2r6gvcvhhwyi1k08abi5w3izv1hn3pmksgq"))))
+                  "0mvv1mvsrpkrmikcpfqf2zbawnzgq33j6zjdrlv48mcw57xb2ak9"))))
       (propagated-inputs
        `(("emacs-hierarchy" ,emacs-hierarchy)
          ("emacs-request" ,emacs-request)
@@ -12841,3 +12910,34 @@ other frame parameters.")
       (description "Emacs major mode for editing Arduino sketches.")
       (home-page "https://github.com/bookest/arduino-mode")
       (license license:gpl3+))))
+
+(define-public emacs-general
+  (let ((commit "675050199b5a30d54a24b58a367db32c0bdc47f5"))
+    (package
+      (name "emacs-general")
+      (version (git-version "0" "0" commit))
+      (home-page "https://github.com/noctuid/general.el")
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url (string-append home-page ".git"))
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "175yyhzk57yk1sskxh3d2jzhrh2waiibbcfsll167qxr117yji5h"))
+                (file-name (git-file-name name version))))
+      (build-system emacs-build-system)
+      (synopsis "More convenient key definitions in emacs")
+      (description "@code{general.el} provides a more convenient method for
+binding keys in emacs (for both evil and non-evil users).  Like
+@code{use-package}, which provides a convenient, unified interface for
+managing packages, @code{general.el} is intended to provide a convenient,
+unified interface for key definitions.  While this package does implement some
+completely new functionality (such as the ability to make vim-style
+keybindings under non-prefix keys with an optional timeout), its primary
+purpose is to build on existing functionality to make key definition more
+clear and concise.  @code{general-define-key} is user-extensible and supports
+defining multiple keys in multiple keymaps at once, implicitly wrapping key
+strings with (@code{kbd ...}), using named prefix key sequences (like the
+leader key in vim), and much more.")
+      (license license:gpl3+))))
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 0f2d32bbd9..0f3e1009ac 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -186,14 +186,14 @@ by the b43-open driver of Linux-libre.")
 (define-public seabios
   (package
     (name "seabios")
-    (version "1.11.0")
+    (version "1.12.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://www.seabios.org/downloads/"
                                   "seabios-" version ".tar.gz"))
               (sha256
                (base32
-                "1xwvp77djxbxbxg82hzj26pv6zka3556vkdcp09hnfwapcp46av2"))))
+                "0jx7pnsc2s4a7wbvvwqig6x8wmkw7f2sz0pbgj4jfp77cpjvh5yz"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("python-2" ,python-2)))
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 536895cba8..6204e217da 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -530,7 +530,7 @@ multiplexer to the KMS/DRM Linux kernel devices.")
 (define-public exempi
   (package
     (name "exempi")
-    (version "2.4.5")
+    (version "2.5.0")
     (source (origin
              (method url-fetch)
              (uri (string-append
@@ -538,7 +538,7 @@ multiplexer to the KMS/DRM Linux kernel devices.")
                    name "-" version ".tar.bz2"))
              (sha256
               (base32
-               "07i29xmg8bqriviaf4vi1mwha4lrw85kfla29cfym14fp3z8aqa0"))))
+               "06vi7dc2gappwqm3xpfyy5ihxq14bmvj3bd47yk482jlq0jgr0nw"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags (list (string-append "--with-boost="
@@ -732,7 +732,7 @@ interfaces, based on the useradd, usermod and userdel commands.")
 (define-public libmbim
   (package
     (name "libmbim")
-    (version "1.16.2")
+    (version "1.18.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -740,7 +740,7 @@ interfaces, based on the useradd, usermod and userdel commands.")
                     name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0qmjvjbgs9m8qsaiq5arikzglgaas9hh1968bi7sy3905kp4yjgb"))))
+                "10mjjy860aakfd3h1yaj9l1jw816amrpwmyqlx37j21xv0l03x3c"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-mkenums
@@ -763,7 +763,7 @@ which speak the Mobile Interface Broadband Model (MBIM) protocol.")
 (define-public libqmi
   (package
     (name "libqmi")
-    (version "1.20.2")
+    (version "1.22.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -771,7 +771,7 @@ which speak the Mobile Interface Broadband Model (MBIM) protocol.")
                     name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0i6aw8jyxv84d5x8lj2g9lb8xxf1dyad8n3q0kw164pyig55jd67"))))
+                "05xamy608mhvmw9zbnv9n8w3xpk96n10v5mixnvpnqgih6s9ih91"))))
     (build-system gnu-build-system)
     (inputs
      `(("libgudev" ,libgudev)))
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 423c977de5..c8a2c41667 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -3473,7 +3473,7 @@ the GNU GPL.")
 (define-public tintin++
   (package
     (name "tintin++")
-    (version "2.01.4")
+    (version "2.01.5")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/tintin"
@@ -3481,7 +3481,7 @@ the GNU GPL.")
                                   "/tintin" "-" version ".tar.gz"))
               (sha256
                (base32
-                "1g7bh8xs1ml0iyraps3a3dzaycci922y7fk5j0wyr4ssyjzsy8nx"))))
+                "0pnnbcm96xbj69358568rpvp164rjmcvhnnzs7nvj062pi2hqcxx"))))
     (inputs
      `(("gnutls" ,gnutls)
        ("pcre" ,pcre)
@@ -3500,10 +3500,10 @@ the GNU GPL.")
     (home-page "http://tintin.sourceforge.net/")
     (synopsis "MUD client")
     (description
-     "TinTin++ is a MUD client which supports MCCP (Mud Client Compression Protocol),
-MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used by MUDs,
-as well as those required to login via telnet on Linux / Mac OS X servers, and an
-auto mapper with a VT100 map display.")
+     "TinTin++ is a MUD client which supports MCCP (Mud Client Compression
+Protocol), MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET
+options used by MUDs, as well as those required to login via telnet on
+Linux / Mac OS X servers, and an auto mapper with a VT100 map display.")
     (license license:gpl2+)))
 
 (define-public laby
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index eb009213fb..2978792266 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -396,7 +396,7 @@ access the common Google services, and has full asynchronous support.")
 (define-public libgxps
   (package
     (name "libgxps")
-    (version "0.3.0")
+    (version "0.3.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -404,7 +404,7 @@ access the common Google services, and has full asynchronous support.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1bhgrpb6ndlp11qwr95g9piklmjcsca7bi04f8gy9ziipm1i6as1"))))
+                "157s4c9gjjss6yd7qp7n4q6s72gz1k4ilsx4xjvp357azk49z4qs"))))
     (build-system meson-build-system)
     (native-inputs
      `(("gobject-introspection" ,gobject-introspection)
@@ -2614,9 +2614,9 @@ and the GLib main loop, to integrate well with GNOME applications.")
                             (assoc-ref %outputs "doc")
                             "/share/gtk-doc/html"))))
     (native-inputs
-     `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
        ("gobject-introspection" ,gobject-introspection)
-       ("intltool" ,intltool)
        ("pkg-config" ,pkg-config)
        ("vala" ,vala)
        ("xsltproc" ,libxslt)))
@@ -4413,7 +4413,7 @@ classes for commonly used data structures.")
 (define-public gexiv2
   (package
     (name "gexiv2")
-    (version "0.10.8")
+    (version "0.10.10")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4421,7 +4421,7 @@ classes for commonly used data structures.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0088m7p044n741ly1m6i7w25z513h9wpgyw0rmx5f0sy3vyjiic1"))))
+                "1qbcwq89g4r67k1dj4laqj441pj4195c8hzhxn8vc6mmg8adg6kx"))))
     (build-system meson-build-system)
     (native-inputs
      `(("glib" ,glib "bin")
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 4eec697a90..d905de2a0c 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -137,7 +137,7 @@ generation.")
 (define-public libassuan
   (package
     (name "libassuan")
-    (version "2.5.1")
+    (version "2.5.2")
     (source
      (origin
       (method url-fetch)
@@ -145,7 +145,7 @@ generation.")
                           version ".tar.bz2"))
       (sha256
        (base32
-        "0jb4nb4nrjr949gd3lw8lh4v5d6qigxaq6xwy24w5apjnhvnrya7"))))
+        "1rw8nw6fx6ppxga6m4cqcp898lnlzf7vn3s5c2lzfxg3fzr1nswq"))))
     (build-system gnu-build-system)
     (propagated-inputs
      `(("libgpg-error" ,libgpg-error)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 6e184d3334..73620bb2d4 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -76,17 +76,20 @@
   #:use-module (guix utils))
 
 (define-public blender
+  (let ((revision "0")
+        (commit "3c3d80ea22af15e13237f978181a881b90c41e7c"))
   (package
     (name "blender")
-    (version "2.79b")
+    (version (git-version "2.80-beta" revision commit))
     (source (origin
-              (method url-fetch)
-              (uri (string-append "https://download.blender.org/source/"
-                                  "blender-" version ".tar.gz"))
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://git.blender.org/blender.git")
+                     (commit commit)))
+              (file-name (git-file-name name version))
               (sha256
                (base32
-                "1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c"))
-              (patches (search-patches "blender-newer-ffmpeg.patch"))))
+                "1hhn8pf3a5556mxyrb2ggsiy6q0h75hnkdpcgq9b6vg284jl2l4q"))))
     (build-system cmake-build-system)
     (arguments
       (let ((python-version (version-major+minor (package-version python))))
@@ -98,29 +101,30 @@
                "-DWITH_CYCLES=ON"
                "-DWITH_DOC_MANPAGE=ON"
                "-DWITH_FFTW3=ON"
-               "-DWITH_GAMEENGINE=ON"
                "-DWITH_IMAGE_OPENJPEG=ON"
                "-DWITH_INPUT_NDOF=ON"
                "-DWITH_INSTALL_PORTABLE=OFF"
                "-DWITH_JACK=ON"
                "-DWITH_MOD_OCEANSIM=ON"
-               "-DWITH_PLAYER=ON"
                "-DWITH_PYTHON_INSTALL=OFF"
-               "-DWITH_PYTHON_INSTALL=OFF"
-               "-DWITH_SYSTEM_OPENJPEG=ON"
                (string-append "-DPYTHON_LIBRARY=python" ,python-version "m")
                (string-append "-DPYTHON_LIBPATH=" (assoc-ref %build-inputs "python")
                               "/lib")
                (string-append "-DPYTHON_INCLUDE_DIR=" (assoc-ref %build-inputs "python")
                               "/include/python" ,python-version "m")
-               (string-append "-DPYTHON_VERSION=" ,python-version))
+               (string-append "-DPYTHON_VERSION=" ,python-version)
+               (string-append "-DPYTHON_NUMPY_PATH="
+                              (assoc-ref %build-inputs "python-numpy")
+                              "/lib/python" ,python-version "/site-packages/"))
          #:phases
          (modify-phases %standard-phases
-           (add-after 'unpack 'fix-broken-import
-             (lambda _
-               (substitute* "release/scripts/addons/io_scene_fbx/json2fbx.py"
-                 (("import encode_bin") "from . import encode_bin"))
-               #t))
+           ;; XXX This file doesn't exist in the Git sources but will probably
+           ;; exist in the eventual 2.80 source tarball.
+;           (add-after 'unpack 'fix-broken-import
+;             (lambda _
+;               (substitute* "release/scripts/addons/io_scene_fbx/json2fbx.py"
+;                 (("import encode_bin") "from . import encode_bin"))
+;               #t))
            (add-after 'set-paths 'add-ilmbase-include-path
              (lambda* (#:key inputs #:allow-other-keys)
                ;; OpenEXR propagates ilmbase, but its include files do not appear
@@ -138,7 +142,7 @@
        ("openimageio" ,openimageio)
        ("openexr" ,openexr)
        ("ilmbase" ,ilmbase)
-       ("openjpeg" ,openjpeg-1)
+       ("openjpeg" ,openjpeg)
        ("libjpeg" ,libjpeg)
        ("libpng" ,libpng)
        ("libtiff" ,libtiff)
@@ -150,6 +154,7 @@
        ("glew" ,glew)
        ("openal" ,openal)
        ("python" ,python)
+       ("python-numpy" ,python-numpy)
        ("zlib" ,zlib)))
     (home-page "https://blender.org/")
     (synopsis "3D graphics creation suite")
@@ -157,8 +162,11 @@
      "Blender is a 3D graphics creation suite.  It supports the entirety of
 the 3D pipeline—modeling, rigging, animation, simulation, rendering,
 compositing and motion tracking, even video editing and game creation.  The
-application can be customized via its API for Python scripting.")
-    (license license:gpl2+)))
+application can be customized via its API for Python scripting.
+
+WARNING: This package offers a beta build of Blender, because the stable release
+no longer works in Guix. See @uref{https://issues.guix.info/issue/33882}.")
+    (license license:gpl2+))))
 
 (define-public assimp
   (package
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 07b568ee7c..e14c23a1d2 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -40,39 +40,39 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages)
   #:use-module (gnu packages aspell)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages bdw-gc)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages ed)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages gawk)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages gl)
   #:use-module (gnu packages gperf)
   #:use-module (gnu packages hurd)
+  #:use-module (gnu packages image)
   #:use-module (gnu packages libffi)
-  #:use-module (gnu packages autotools)
-  #:use-module (gnu packages flex)
   #:use-module (gnu packages libunistring)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages m4)
+  #:use-module (gnu packages man)
+  #:use-module (gnu packages maths)
   #:use-module (gnu packages multiprecision)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages networking)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages readline)
-  #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages ed)
-  #:use-module (gnu packages base)
+  #:use-module (gnu packages sdl)
+  #:use-module (gnu packages slang)
   #:use-module (gnu packages texinfo)
-  #:use-module (gnu packages man)
-  #:use-module (gnu packages gettext)
-  #:use-module (gnu packages databases)
-  #:use-module (gnu packages python)
   #:use-module (gnu packages tls)
-  #:use-module (gnu packages gl)
-  #:use-module (gnu packages sdl)
-  #:use-module (gnu packages maths)
-  #:use-module (gnu packages image)
   #:use-module (gnu packages version-control)
-  #:use-module (gnu packages slang)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xorg)
-  #:use-module (gnu packages networking)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index ba31d36b9e..ec1c4aae9f 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -126,15 +126,15 @@ irssi, but graphical.")
 (define-public irssi
   (package
     (name "irssi")
-    (version "1.1.1")
+    (version "1.1.2")
     (source (origin
-             (method url-fetch)
-             (uri (string-append "https://github.com/irssi/irssi/"
-                                 "releases/download/" version "/irssi-"
-                                 version ".tar.xz"))
-             (sha256
-              (base32
-               "1gx1flfh4a09nb3b5pvf0ygnbl7rry3l4gph8wij29dsl7khfj3q"))))
+              (method url-fetch)
+              (uri (string-append "https://github.com/irssi/irssi/"
+                                  "releases/download/" version "/irssi-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "0clppwqhllrmqjg1dd47v9v1qiqx7cf9afm81bm1pscllf4jpk2w"))))
     (build-system gnu-build-system)
     (arguments
      `(#:phases
diff --git a/gnu/packages/java-compression.scm b/gnu/packages/java-compression.scm
new file mode 100644
index 0000000000..8cebfc65a5
--- /dev/null
+++ b/gnu/packages/java-compression.scm
@@ -0,0 +1,308 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2017, 2018 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages java-compression)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix utils)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system ant)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages java)
+  #:use-module (gnu packages perl))
+
+(define-public java-snappy
+  (package
+    (name "java-snappy")
+    (version "1.1.7.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/xerial/snappy-java/archive/"
+                                  version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1p557vdv006ysgxbpp83krmq0066k46108vyiyka69w8i4i8rbbm"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "snappy.jar"
+       #:source-dir "src/main/java"
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'remove-binaries
+           (lambda _
+             (delete-file "lib/org/xerial/snappy/OSInfo.class")
+             (delete-file-recursively "src/main/resources/org/xerial/snappy/native")
+             #t))
+         (add-before 'build 'build-jni
+           (lambda _
+             ;; Rebuild one of the binaries we removed earlier
+             (invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
+                      "-d" "lib")
+             ;; Link to the dynamic bitshuffle and snappy, not the static ones
+             (substitute* "Makefile.common"
+               (("-shared")
+                "-shared -lbitshuffle -lsnappy"))
+             (substitute* "Makefile"
+               ;; Don't try to use git, don't download bitshuffle source
+               ;; and don't build it.
+               (("\\$\\(SNAPPY_GIT_UNPACKED\\) ")
+                "")
+               ((": \\$\\(SNAPPY_GIT_UNPACKED\\)")
+                ":")
+               (("\\$\\(BITSHUFFLE_UNPACKED\\) ")
+                "")
+               ((": \\$\\(SNAPPY_SOURCE_CONFIGURED\\)") ":")
+               ;; What we actually want to build
+               (("SNAPPY_OBJ:=.*")
+                "SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/, \
+                 SnappyNative.o BitShuffleNative.o)\n")
+               ;; Since we removed the directory structure in "native" during
+               ;; the previous phase, we need to recreate it.
+               (("NAME\\): \\$\\(SNAPPY_OBJ\\)")
+                "NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
+             ;; Finally we can run the Makefile to build the dynamic library.
+             ;; Use the -nocmake target to avoid a dependency on cmake,
+             ;; which in turn requires the "git_unpacked" directory.
+             (invoke "make" "native-nocmake")))
+         ;; Once we have built the shared library, we need to place it in the
+         ;; "build" directory so it can be added to the jar file.
+         (add-after 'build-jni 'copy-jni
+           (lambda _
+             (copy-recursively "src/main/resources/org/xerial/snappy/native"
+                               "build/classes/org/xerial/snappy/native")
+             #t))
+         (add-before 'check 'fix-failing
+           (lambda _
+             (with-directory-excursion "src/test/java/org/xerial/snappy"
+               ;; This package assumes maven build, which puts results in "target".
+               ;; We put them in "build" instead, so fix that.
+               (substitute* "SnappyLoaderTest.java"
+                 (("target/classes") "build/classes"))
+               ;; This requires Hadoop, which is not in Guix yet.
+               (delete-file "SnappyHadoopCompatibleOutputStreamTest.java"))
+             #t)))))
+    (inputs
+     `(("osgi-framework" ,java-osgi-framework)))
+    (propagated-inputs
+     `(("bitshuffle" ,bitshuffle-for-snappy)
+       ("snappy" ,snappy)))
+    (native-inputs
+     `(("junit" ,java-junit)
+       ("hamcrest" ,java-hamcrest-core)
+       ("xerial-core" ,java-xerial-core)
+       ("classworlds" ,java-plexus-classworlds)
+       ("commons-lang" ,java-commons-lang)
+       ("commons-io" ,java-commons-io)
+       ("perl" ,perl)))
+    (home-page "https://github.com/xerial/snappy-java")
+    (synopsis "Compression/decompression algorithm in Java")
+    (description "Snappy-java is a Java port of snappy, a fast C++
+compressor/decompressor.")
+    (license license:asl2.0)))
+
+(define-public java-snappy-1
+  (package
+    (inherit java-snappy)
+    (version "1.0.3-rc3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/xerial/snappy-java/archive/"
+                                  "snappy-java-" version ".tar.gz"))
+              (sha256
+               (base32
+                "08hsxlqidiqck0q57fshwyv3ynyxy18vmhrai9fyc8mz17m7gsa3"))))
+    (arguments
+     `(#:jar-name "snappy.jar"
+       #:source-dir "src/main/java"
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'remove-binaries
+           (lambda _
+             (delete-file "lib/org/xerial/snappy/OSInfo.class")
+             (delete-file-recursively "src/main/resources/org/xerial/snappy/native")
+             #t))
+         (add-before 'build 'build-jni
+           (lambda _
+             ;; Rebuild one of the binaries we removed earlier
+             (invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
+                      "-d" "lib")
+             ;; Link to the dynamic snappy, not the static ones
+             (substitute* "Makefile.common"
+               (("-shared") "-shared -lsnappy"))
+             (substitute* "Makefile"
+               ;; Don't download the sources here.
+               (("\\$\\(SNAPPY_UNPACKED\\) ") "")
+               ((": \\$\\(SNAPPY_UNPACKED\\) ") ":")
+               ;; What we actually want to build
+               (("SNAPPY_OBJ:=.*")
+                "SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/, SnappyNative.o)\n")
+               ;; Since we removed the directory structure in "native" during
+               ;; the previous phase, we need to recreate it.
+               (("NAME\\): \\$\\(SNAPPY_OBJ\\)")
+                "NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
+             ;; Finally we can run the Makefile to build the dynamic library.
+             (invoke "make" "native")))
+         ;; Once we have built the shared library, we need to place it in the
+         ;; "build" directory so it can be added to the jar file.
+         (add-after 'build-jni 'copy-jni
+           (lambda _
+             (copy-recursively "src/main/resources/org/xerial/snappy/native"
+                               "build/classes/org/xerial/snappy/native")
+             #t))
+         (add-before 'check 'fix-tests
+           (lambda _
+             (mkdir-p "src/test/resources/org/xerial/snappy/")
+             (copy-recursively "src/test/java/org/xerial/snappy/testdata"
+                               "src/test/resources/org/xerial/snappy/testdata")
+             (install-file "src/test/java/org/xerial/snappy/alice29.txt"
+                           "src/test/resources/org/xerial/snappy/")
+             #t)))))))
+
+(define-public java-iq80-snappy
+  (package
+    (name "java-iq80-snappy")
+    (version "0.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/dain/snappy/archive/snappy-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0rb3zhci7w9wzd65lfnk7p3ip0n6gb58a9qpx8n7r0231gahyamf"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "iq80-snappy.jar"
+       #:source-dir "src/main/java"
+       #:test-dir "src/test"
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (define (test class)
+               (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
+                                                   ":build/classes"
+                                                   ":build/test-classes")
+                       "-Dtest.resources.dir=src/test/resources"
+                       "org.testng.TestNG" "-testclass"
+                       class))
+             (invoke "ant" "compile-tests")
+             (test "org.iq80.snappy.SnappyFramedStreamTest")
+             (test "org.iq80.snappy.SnappyStreamTest")
+             #t))
+         (add-before 'build 'remove-hadoop-dependency
+           (lambda _
+             ;; We don't have hadoop
+             (delete-file "src/main/java/org/iq80/snappy/HadoopSnappyCodec.java")
+             (delete-file "src/test/java/org/iq80/snappy/TestHadoopSnappyCodec.java")
+             #t)))))
+    (home-page "https://github.com/dain/snappy")
+    (native-inputs
+     `(("guava" ,java-guava)
+       ("java-snappy" ,java-snappy)
+       ("hamcrest" ,java-hamcrest-core)
+       ("testng" ,java-testng)))
+    (synopsis "Java port of the Snappy (de)compressor")
+    (description
+     "Iq80-snappy is a port of the Snappy compressor and decompressor rewritten
+in pure Java.  This compression code produces a byte-for-byte exact copy of the
+output created by the original C++ code, and is extremely fast.")
+    (license license:asl2.0)))
+
+(define-public java-jbzip2
+  (package
+    (name "java-jbzip2")
+    (version "0.9.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://storage.googleapis.com/"
+                                  "google-code-archive-source/v2/"
+                                  "code.google.com/jbzip2/"
+                                  "source-archive.zip"))
+              (file-name (string-append name "-" version ".zip"))
+              (sha256
+               (base32
+                "0ncmhlqmrfmj96nqf6p77b9ws35lcfsvpfxzwxi2asissc83z1l3"))))
+    (build-system ant-build-system)
+    (native-inputs
+     `(("unzip" ,unzip)
+       ("java-junit" ,java-junit)))
+    (arguments
+     `(#:tests? #f                      ; no tests
+       #:jar-name "jbzip2.jar"
+       #:source-dir "tags/release-0.9.1/src"
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-encoding-problems
+           (lambda _
+             ;; Some of the files we're patching are
+             ;; ISO-8859-1-encoded, so choose it as the default
+             ;; encoding so the byte encoding is preserved.
+             (with-fluids ((%default-port-encoding #f))
+               (substitute* "tags/release-0.9.1/src/org/itadaki/bzip2/HuffmanAllocator.java"
+                 (("Milidi.") "Milidiu")))
+             #t)))))
+    (home-page "https://code.google.com/archive/p/jbzip2/")
+    (synopsis "Java bzip2 compression/decompression library")
+    (description "Jbzip2 is a Java bzip2 compression/decompression library.
+It can be used as a replacement for the Apache @code{CBZip2InputStream} /
+@code{CBZip2OutputStream} classes.")
+    (license license:expat)))
+
+(define-public java-tukaani-xz
+  (package
+    (name "java-tukaani-xz")
+    (version "1.6")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://tukaani.org/xz/xz-java-" version ".zip"))
+              (sha256
+               (base32
+                "1z3p1ri1gvl07inxn0agx44ck8n7wrzfmvkz8nbq3njn8r9wba8x"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:tests? #f; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'chdir
+           (lambda _
+             ;; Our build system enters the first directory in the archive, but
+             ;; the package is not contained in a subdirectory
+             (chdir "..")
+             #t))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Do we want to install *Demo.jar?
+             (install-file "build/jar/xz.jar"
+                           (string-append
+                             (assoc-ref outputs "out")
+                             "/share/java/xz.jar"))
+             #t)))))
+    (native-inputs
+     `(("unzip" ,unzip)))
+    (home-page "https://tukaani.org")
+    (synopsis "XZ in Java")
+    (description "Tukaani-xz is an implementation of xz compression/decompression
+algorithms in Java.")
+    (license license:public-domain)))
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index c607cbbcc5..163c296278 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -60,6 +60,7 @@
   #:use-module (gnu packages guile)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages java-compression)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages linux) ;alsa
   #:use-module (gnu packages maths)
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 0d14c8f887..fff98bd16d 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -2556,6 +2556,10 @@ in applications using the KDE Frameworks.")
                (("GUIX_PKGS_KF5_PARTS") (assoc-ref inputs "kparts"))
                (("GUIX_PKGS_KF5_PLASMA") (assoc-ref inputs "plasma-framework")))
              #t)))))
+    (native-search-paths
+     (list (search-path-specification
+            (variable "KDEINIT5_LIBRARY_PATH")
+            (files '("lib/")))))
     (native-inputs
      `(("extra-cmake-modules" ,extra-cmake-modules)
        ("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index c88bf72c78..1a41c3e0ba 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
 ;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Jonathan Brielmaier <jonathan.brielmaier@web.de>
@@ -287,15 +287,15 @@ working with graphics in the WPG (WordPerfect Graphics) format.")
 (define-public libcmis
   (package
     (name "libcmis")
-    (version "0.5.1")
+    (version "0.5.2")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "https://github.com/tdf/libcmis/releases/download/v"
-                          version "/libcmis-" version ".tar.gz"))
+                          version "/libcmis-" version ".tar.xz"))
       (sha256
        (base32
-        "03kvl8ywsv5qrxblf0m6955mmvl5q2zpb6vj51vs7ayvxhidzjva"))))
+        "18h0a2gsfxvlv03nlcfvw9bzsflq5sin9agq6za103hr0ab8vcfp"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("cppunit" ,cppunit)
@@ -313,22 +313,10 @@ working with graphics in the WPG (WordPerfect Graphics) format.")
           ;; FIXME: Man pages generation requires docbook-to-man; reenable
           ;; it once this is available.
           "--without-man"
-          ;; avoid triggering configure errors by simple inclusion of
-          ;; boost headers
-          "--disable-werror"
           ;; During configure, the boost headers are found, but linking
           ;; fails without the following flag.
           (string-append "--with-boost="
-                         (assoc-ref %build-inputs "boost")))
-        #:phases (modify-phases %standard-phases
-                   (add-before 'build 'fix-boost-include
-                     (lambda _
-                       ;; This library moved in Boost and the compatibility
-                       ;; redirect is no longer available since version 1.68.0.
-                       (substitute* "src/libcmis/xml-utils.cxx"
-                         (("boost/uuid/sha1.hpp")
-                          "boost/uuid/detail/sha1.hpp"))
-                       #t)))))
+                         (assoc-ref %build-inputs "boost")))))
     (home-page "https://github.com/tdf/libcmis")
     (synopsis "CMIS client library")
     (description "LibCMIS is a C++ client library for the CMIS interface.  It
@@ -370,14 +358,14 @@ AbiWord documents.")
 (define-public libcdr
   (package
     (name "libcdr")
-    (version "0.1.4")
+    (version "0.1.5")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
+      (uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
                           name "-" version ".tar.xz"))
       (sha256 (base32
-               "0vd6likgk51j46llybkx4wq3674xzrhp0k82220pkx9x1aqfi9z7"))))
+               "0j1skr11jwvafn0l6p37v3i4lqc8wcn489g8f7c4mqwbk94mrkka"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("cppunit" ,cppunit)
@@ -390,9 +378,6 @@ AbiWord documents.")
        ("zlib" ,zlib)))
     (inputs
      `(("boost" ,boost)))
-    (arguments
-     ;; avoid triggering a build failure due to warnings
-     `(#:configure-flags '("--disable-werror")))
     (home-page "https://wiki.documentfoundation.org/DLP/Libraries/libcdr")
     (synopsis "Library for parsing the CorelDRAW format")
     (description "Libcdr is a library that parses the file format of
@@ -402,39 +387,31 @@ CorelDRAW documents of all versions.")
 (define-public libetonyek
   (package
     (name "libetonyek")
-    (version "0.1.8")
+    (version "0.1.9")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
                           name "-" version ".tar.xz"))
       (sha256 (base32
-               "0bfq9rwm040xhh7b3v0gsdavwvnrz4hkwnhpggarxk70mr3j7jcx"))))
+               "0jhsbdimiyijdqriy0zzkjjgc4wi6fjimhdg4mdybrlwg7l7f5p6"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:configure-flags '("--with-mdds=1.4")
-       #:phases (modify-phases %standard-phases
-                  (add-before 'configure 'support-mdds-1.4
-                    (lambda _
-                      ;; This package already works fine with mdds 1.4, but the
-                      ;; configure check is too strict.  Taken from upstream.
-                      (substitute* "configure"
-                        (("mdds=1\\.2") "mdds=1.4")
-                        (("mdds=\"1\\.2\"") "mdds=\"1.4\""))
-                      #t)))))
+     `(#:configure-flags '("--with-mdds=1.4")))
     (native-inputs
      `(("cppunit" ,cppunit)
        ("doxygen" ,doxygen)
-       ("glm" ,glm)
        ("gperf" ,gperf)
-       ("liblangtag" ,liblangtag)
-       ("mdds" ,mdds)
        ("pkg-config" ,pkg-config)))
     (propagated-inputs ; in Requires or Requires.private field of .pkg
-     `(("librevenge" ,librevenge)
-       ("libxml2" ,libxml2)))
+     `(("liblangtag" ,liblangtag)
+       ("librevenge" ,librevenge)
+       ("libxml2" ,libxml2)
+       ("zlib" ,zlib)))
     (inputs
-     `(("boost" ,boost)))
+     `(("boost" ,boost)
+       ("glm" ,glm)
+       ("mdds" ,mdds)))
     (home-page "https://wiki.documentfoundation.org/DLP/Libraries/libetonyek")
     (synopsis "Library for parsing the Apple Keynote format")
     (description "Libetonyek is a library that parses the file format of
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index ce35a199e5..03b4f91522 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2018 Brendan Tildesley <brendan.tildesley@openmailbox.org>
 ;;; Copyright © 2018 Manuel Graf <graf@init.at>
 ;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -412,8 +413,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
 It has been modified to remove all non-free binary blobs.")
     (license license:gpl2)))
 
-(define %linux-libre-version "4.20")
-(define %linux-libre-hash "07ss8nx95f4pqzzjy382fy5hk7anjm3hpbb3mzl1x8fzfq05q3dq")
+(define %linux-libre-version "4.20.1")
+(define %linux-libre-hash "10b1cgx7246lxwml66bzzc57sk5bbh7mjxc9zv6qncwh0xhsjv5n")
 
 (define %linux-libre-4.20-patches
   (list %boot-logo-patch
@@ -426,8 +427,8 @@ It has been modified to remove all non-free binary blobs.")
                     #:patches %linux-libre-4.20-patches
                     #:configuration-file kernel-config))
 
-(define %linux-libre-4.19-version "4.19.13")
-(define %linux-libre-4.19-hash "0ac0ywy542fiwdiab2z12rbjn9zw8vjbzkbpmpk9nfic2mcyrg8r")
+(define %linux-libre-4.19-version "4.19.14")
+(define %linux-libre-4.19-hash "12ihsp3k8gznc1hjvlpy8jdb27ijr3zsvn8wcgr5za18pg5ncjl9")
 
 (define %linux-libre-4.19-patches
   (list %boot-logo-patch
@@ -440,8 +441,8 @@ It has been modified to remove all non-free binary blobs.")
                     #:patches %linux-libre-4.19-patches
                     #:configuration-file kernel-config))
 
-(define %linux-libre-4.14-version "4.14.91")
-(define %linux-libre-4.14-hash "1xr4q6hqjg4fjcd1w8qi2x9a11ms9wvascy9b1p6czblg9j9dd6a")
+(define %linux-libre-4.14-version "4.14.92")
+(define %linux-libre-4.14-hash "09s479krcjzgp53s5i6h7ld1mdagjci6lqvkv8mc1nj0ja8niiq3")
 
 (define-public linux-libre-4.14
   (make-linux-libre %linux-libre-4.14-version
@@ -450,8 +451,8 @@ It has been modified to remove all non-free binary blobs.")
                     #:configuration-file kernel-config))
 
 (define-public linux-libre-4.9
-  (make-linux-libre "4.9.148"
-                    "0yrjgvdzbcp750j4fhlxi4ia1v0fqh0y3p99wnbpfvg17j01lbjl"
+  (make-linux-libre "4.9.149"
+                    "1qw1hahqiai8xbv769pdfnx3yan3rl2zh00fmi1nx0khan6i5as3"
                     '("x86_64-linux" "i686-linux")
                     #:configuration-file kernel-config))
 
@@ -790,7 +791,7 @@ slabtop, and skill.")
 (define-public e2fsprogs
   (package
     (name "e2fsprogs")
-    (version "1.44.3")
+    (version "1.44.5")
     (source (origin
              (method url-fetch)
              (uri (string-append
@@ -799,7 +800,7 @@ slabtop, and skill.")
                    name "-" version ".tar.xz"))
              (sha256
               (base32
-               "1djb9qnid1j0vvna2bhq4jsz2ig1xckbx7h4d86cr0gl61yrz2ax"))))
+               "1ff56h6h1h17sj2zvlddv5c88nmbx46p1fcbh6b0s5k9kl3b6pms"))))
     (build-system gnu-build-system)
     (inputs `(("util-linux" ,util-linux)))
     (native-inputs `(("pkg-config" ,pkg-config)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 395acea2cc..e370038b9c 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2014 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2014 Mathieu Lirzin <mathieu.lirzin@openmailbox.org>
-;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
@@ -2179,12 +2179,12 @@ programming problems.")
 (define-public r-pracma
   (package
     (name "r-pracma")
-    (version "2.1.8")
+    (version "2.2.2")
     (source (origin
       (method url-fetch)
       (uri (cran-uri "pracma" version))
       (sha256
-        (base32 "0m8ladhrfyxwybblkcdgg4xv1mk5kibmwarpj2k0c2y34zzcix4z"))))
+        (base32 "18zhni05gwnxbphl6bmjjxmsgg5wwnnkwlb4g971cqyw3dsd83ki"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/pracma/")
     (synopsis "Practical numerical math functions")
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 3b0714865d..65148bb000 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -82,6 +82,8 @@
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages kerberos)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages nettle)
+  #:use-module (gnu packages password-utils)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages perl-check)
@@ -90,6 +92,7 @@
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages serialization)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages tls)
@@ -2271,3 +2274,95 @@ allow all other machines, without direct access to that network, to be relayed
 through the machine the Dante server is running on.  The external network will
 never see any machines other than the one Dante is running on.")
     (license (license:non-copyleft "file://LICENSE"))))
+
+(define-public restbed
+  (let ((commit "6eb385fa9051203f28bf96cc1844bbb5a9a6481f"))
+    (package
+      (name "restbed")
+      (version (git-version "4.6" "1" commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/Corvusoft/restbed/")
+               (commit commit)))
+         (file-name (string-append name "-" version ".tar.gz"))
+         (sha256
+          (base32 "0k60i5drklqqrb4khb25fzkgz9y0sncxf1sp6lh2bm1m0gh0661n"))))
+      (build-system cmake-build-system)
+      (inputs
+       `(("asio" ,asio)
+         ("catch" ,catch-framework)
+         ("openssl" ,openssl)))
+      (arguments
+       `(#:tests? #f
+         #:configure-flags
+         '("-DBUILD_TESTS=NO"
+           "-DBUILD_EXAMPLES=NO"
+           "-DBUILD_SSL=NO"
+           "-DBUILD_SHARED=NO")
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'apply-patches-and-fix-paths
+             (lambda* (#:key inputs #:allow-other-keys)
+               (let ((asio (assoc-ref inputs "asio"))
+                     (catch (assoc-ref inputs "catch"))
+                     (openssl (assoc-ref inputs "openssl")))
+                 (substitute* "cmake/Findasio.cmake"
+                   (("(find_path\\( asio_INCLUDE asio\\.hpp HINTS ).*$" all begin)
+                    (string-append begin " \"" asio "/include\" )")))
+                 (substitute* "cmake/Findcatch.cmake"
+                   (("(find_path\\( catch_INCLUDE catch\\.hpp HINTS ).*$" all begin)
+                    (string-append begin " \"" catch "/include\" )")))
+                 (substitute* "cmake/Findopenssl.cmake"
+                   (("(find_library\\( ssl_LIBRARY ssl ssleay32 HINTS ).*$" all begin)
+                    (string-append begin " \"" openssl "/lib\" )"))
+                   (("(find_library\\( crypto_LIBRARY crypto libeay32 HINTS ).*$" all begin)
+                    (string-append begin " \"" openssl "/lib\" )"))
+                   (("(find_path\\( ssl_INCLUDE openssl/ssl\\.h HINTS ).*$" all begin)
+                    (string-append begin " \"" openssl "/include\" )")))))))))
+      (synopsis "Asynchronous RESTful functionality to C++11 applications")
+      (description "Restbed is a comprehensive and consistent programming
+model for building applications that require seamless and secure
+communication over HTTP.")
+      (home-page "https://github.com/Corvusoft/restbed")
+      (license license:agpl3+))))
+
+(define-public opendht
+  (package
+    (name "opendht")
+    (version "1.8.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/savoirfairelinux/opendht.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0vninb5mak27wigajslyvr05vq7wbrwqhbr4wzl2nmqcb20wmlq2"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("gnutls" ,gnutls)
+       ("nettle" ,nettle)
+       ("readline" ,readline)
+       ("jsoncpp" ,jsoncpp)
+       ("restbed" ,restbed)))
+    (propagated-inputs
+     `(("argon2" ,argon2)               ; TODO: Needed for the pkg-config .pc file to work?
+       ("msgpack" ,msgpack)))           ;included in several installed headers
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("pkg-config" ,pkg-config)
+       ("automake" ,automake)
+       ("libtool" ,libtool)))
+    (arguments
+     `(#:configure-flags '("--disable-tools"
+                           "--disable-python"
+                           "--with-argon2")))
+    (home-page "https://github.com/savoirfairelinux/opendht/")
+    (synopsis "Distributed Hash Table (DHT) library")
+    (description "OpenDHT is a Distributed Hash Table (DHT) library.  It may
+be used to manage peer-to-peer network connections as needed for real time
+communication.")
+    (license license:gpl3+)))
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 85c95a75e9..8eb4e2eefe 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
 ;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
@@ -362,36 +362,23 @@ the Nix package manager.")
            (delete 'wrap-program)))))))
 
 (define-public guile2.0-guix
-  (package
-    (inherit guix)
-    (name "guile2.0-guix")
-    (inputs
-     `(("guile" ,guile-2.0)
-       ,@(alist-delete "guile" (package-inputs guix))))
-    (propagated-inputs
-     `(("gnutls" ,gnutls/guile-2.0)
-       ("guile-gcrypt" ,guile2.0-gcrypt)
-       ("guile-json" ,guile2.0-json)
-       ("guile-sqlite3" ,guile2.0-sqlite3)
-       ("guile-ssh" ,guile2.0-ssh)
-       ("guile-git" ,guile2.0-git)))))
+  (deprecated-package "guile2.0-guix" guix))
 
 (define-public guix-minimal
   ;; A version of Guix which is built with the minimal set of dependencies, as
   ;; outlined in the README "Requirements" section.  Intended as a CI job, so
   ;; marked as hidden.
-  (let ((guix guile2.0-guix))
-    (hidden-package
-     (package
-       (inherit guix)
-       (name "guix-minimal")
-       (inputs
-        `(("guile" ,guile-2.0.13)
-          ,@(alist-delete "guile" (package-inputs guix))))
-       (propagated-inputs
-        (fold alist-delete
-              (package-propagated-inputs guix)
-              '("guile-ssh")))))))
+  (hidden-package
+   (package
+     (inherit guix)
+     (name "guix-minimal")
+     (inputs
+      `(("guile" ,guile-2.2)
+        ,@(alist-delete "guile" (package-inputs guix))))
+     (propagated-inputs
+      (fold alist-delete
+            (package-propagated-inputs guix)
+            '("guile-ssh"))))))
 
 (define (source-file? file stat)
   "Return true if FILE is likely a source file, false if it is a typical
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 357ef86d56..f10fc76e9d 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -21,6 +21,7 @@
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
+;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -42,6 +43,7 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix packages)
   #:use-module (gnu packages)
   #:use-module (gnu packages admin)
@@ -51,7 +53,9 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages crypto)
   #:use-module (gnu packages curl)
+  #:use-module (gnu packages file)
   #:use-module (gnu packages freedesktop)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gnuzilla)
@@ -72,6 +76,7 @@
   #:use-module (gnu packages tls)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages version-control)
+  #:use-module (gnu packages wxwidgets)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages xml)
@@ -168,6 +173,59 @@ algorithms AES or Twofish.")
     (license license:gpl3)
     (properties `((superseded . ,keepassxc)))))
 
+(define-public pwsafe
+  (package
+    (name "pwsafe")
+    (version "3.48.0")
+    (home-page "https://www.pwsafe.org/" )
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/pwsafe/pwsafe.git")
+             (commit version)))
+       (sha256 (base32 "0hxv23yh76liggxbjn4m132z15sklra8ms341xgzl4n5vjx30ihi"))
+       (file-name (string-append name "-" version "-checkout"))))
+    (build-system cmake-build-system)
+    (native-inputs `(("gettext" ,gettext-minimal)
+                     ("perl" ,perl)
+                     ("zip" ,zip)))
+    (inputs `(("curl" ,curl)
+              ("file" ,file)
+              ("gtest" ,googletest)
+              ("libuuid" ,util-linux)
+              ("libxt" ,libxt)
+              ("libxtst" ,libxtst)
+              ("openssl" ,openssl)
+              ("qrencode" ,qrencode)
+              ("wxwidgets" ,wxwidgets)
+              ("xerces-c" ,xerces-c)))
+    (arguments '(#:configure-flags (list "-DNO_GTEST=YES")
+                 #:phases (modify-phases %standard-phases
+                            (add-after 'unpack 'add-gtest
+                              (lambda* (#:key inputs #:allow-other-keys)
+                                (chmod "CMakeLists.txt" #o644)
+                                (let ((cmake-port (open-file "CMakeLists.txt"
+                                                             "a")))
+                                  (display "find_package(GTest)
+add_subdirectory(src/test)\n" cmake-port)
+                                  (close cmake-port)
+                                  #t)))
+                            (add-after 'add-gtest 'patch-executables
+                              (lambda* (#:key inputs #:allow-other-keys)
+                                (chmod "src/test/OSTest.cpp" #o644)
+                                (substitute* "src/os/unix/media.cpp"
+                                  (("/usr/bin/file")
+                                   (string-append (assoc-ref inputs "file")
+                                                  "/bin/file")))
+                                #t)))))
+    (synopsis "Password safe with automatic input and key generation")
+    (description "pwsafe is a password manager originally designed by Bruce
+Schneier.  It offers a simple UI to manage passwords for different services.
+There are other programs that support the file format on different
+platforms.")
+    (license license:artistic2.0)))
+
 (define-public shroud
   (package
     (name "shroud")
@@ -705,7 +763,7 @@ your online accounts makes it necessary.")
 (define-public hashcat
   (package
     (name "hashcat")
-    (version "4.1.0")
+    (version "5.1.0")
     (source
      (origin
        (method url-fetch)
@@ -713,7 +771,7 @@ your online accounts makes it necessary.")
                            version ".tar.gz"))
        (sha256
         (base32
-         "170i2y32ykgzb1qf1wz3klwn31c09bviz4x3bnrwia65adqrj8xx"))))
+         "0f73y4cg8c7a6q7x34qvpfi4g3lw6j9bnn0a13g43aqyiskflfr8"))))
     (native-inputs
      `(("opencl-headers" ,opencl-headers)))
     (build-system gnu-build-system)
diff --git a/gnu/packages/patches/aria2-CVE-2019-3500.patch b/gnu/packages/patches/aria2-CVE-2019-3500.patch
new file mode 100644
index 0000000000..891c9047ba
--- /dev/null
+++ b/gnu/packages/patches/aria2-CVE-2019-3500.patch
@@ -0,0 +1,55 @@
+Fix CVE-2019-3500:
+
+https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3500
+https://github.com/aria2/aria2/issues/1329
+
+Patch copied from upstream source repository:
+
+https://github.com/aria2/aria2/commit/37368130ca7de5491a75fd18a20c5c5cc641824a
+
+From 37368130ca7de5491a75fd18a20c5c5cc641824a Mon Sep 17 00:00:00 2001
+From: Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>
+Date: Sat, 5 Jan 2019 09:32:40 +0900
+Subject: [PATCH] Mask headers
+
+---
+ src/HttpConnection.cc | 18 ++++++++++++------
+ 1 file changed, 12 insertions(+), 6 deletions(-)
+
+diff --git a/src/HttpConnection.cc b/src/HttpConnection.cc
+index 77cb9d27a..be5b97723 100644
+--- a/src/HttpConnection.cc
++++ b/src/HttpConnection.cc
+@@ -102,11 +102,17 @@ std::string HttpConnection::eraseConfidentialInfo(const std::string& request)
+   std::string result;
+   std::string line;
+   while (getline(istr, line)) {
+-    if (util::startsWith(line, "Authorization: Basic")) {
+-      result += "Authorization: Basic ********\n";
++    if (util::istartsWith(line, "Authorization: ")) {
++      result += "Authorization: <snip>\n";
+     }
+-    else if (util::startsWith(line, "Proxy-Authorization: Basic")) {
+-      result += "Proxy-Authorization: Basic ********\n";
++    else if (util::istartsWith(line, "Proxy-Authorization: ")) {
++      result += "Proxy-Authorization: <snip>\n";
++    }
++    else if (util::istartsWith(line, "Cookie: ")) {
++      result += "Cookie: <snip>\n";
++    }
++    else if (util::istartsWith(line, "Set-Cookie: ")) {
++      result += "Set-Cookie: <snip>\n";
+     }
+     else {
+       result += line;
+@@ -154,8 +160,8 @@ std::unique_ptr<HttpResponse> HttpConnection::receiveResponse()
+   const auto& proc = outstandingHttpRequests_.front()->getHttpHeaderProcessor();
+   if (proc->parse(socketRecvBuffer_->getBuffer(),
+                   socketRecvBuffer_->getBufferLength())) {
+-    A2_LOG_INFO(
+-        fmt(MSG_RECEIVE_RESPONSE, cuid_, proc->getHeaderString().c_str()));
++    A2_LOG_INFO(fmt(MSG_RECEIVE_RESPONSE, cuid_,
++                    eraseConfidentialInfo(proc->getHeaderString()).c_str()));
+     auto result = proc->getResult();
+     if (result->getStatusCode() / 100 == 1) {
+       socketRecvBuffer_->drain(proc->getLastBytesProcessed());
diff --git a/gnu/packages/patches/docker-engine-test-noinstall.patch b/gnu/packages/patches/docker-engine-test-noinstall.patch
new file mode 100644
index 0000000000..85d56a3465
--- /dev/null
+++ b/gnu/packages/patches/docker-engine-test-noinstall.patch
@@ -0,0 +1,23 @@
+Last-Update: 2018-06-18
+Forwarded: not-needed
+Author: Dmitry Smirnov <onlyjob@debian.org>
+Description: prevents test-time installation that causes FTBFS.
+~~~~
+ go test net: open /usr/lib/go-1.10/pkg/linux_amd64/net.a: permission denied
+~~~~
+
+--- a/hack/test/unit
++++ b/hack/test/unit
+@@ -18,12 +18,8 @@
+ 
+ exclude_paths="/vendor/|/integration"
+ pkg_list=$(go list $TESTDIRS | grep -vE "($exclude_paths)")
+ 
+-# install test dependencies once before running tests for each package. This
+-# significantly reduces the runtime.
+-go test -i "${BUILDFLAGS[@]}" $pkg_list
+-
+ for pkg in $pkg_list; do
+     go test "${BUILDFLAGS[@]}" \
+         -cover \
+         -coverprofile=profile.out \
diff --git a/gnu/packages/patches/docker-fix-tests.patch b/gnu/packages/patches/docker-fix-tests.patch
new file mode 100644
index 0000000000..3e3e318e25
--- /dev/null
+++ b/gnu/packages/patches/docker-fix-tests.patch
@@ -0,0 +1,28 @@
+Author: Danny Milosavljevic <dannym@scratchpost.org>
+The socket name ended up too long inside the container.
+Use a shorter one.
+--- a/pkg/authorization/authz_unix_test.go	2019-01-10 01:55:02.997985947 +0100
++++ b/pkg/authorization/authz_unix_test.go	2019-01-10 02:03:21.177439757 +0100
+@@ -24,7 +24,7 @@
+ )
+ 
+ const (
+-	pluginAddress = "authz-test-plugin.sock"
++	pluginAddress = "/tmp/authz-test-plugin.sock"
+ )
+ 
+ func TestAuthZRequestPluginError(t *testing.T) {
+@@ -263,12 +263,7 @@
+ 
+ // createTestPlugin creates a new sample authorization plugin
+ func createTestPlugin(t *testing.T) *authorizationPlugin {
+-	pwd, err := os.Getwd()
+-	if err != nil {
+-		t.Fatal(err)
+-	}
+-
+-	client, err := plugins.NewClient("unix:///"+path.Join(pwd, pluginAddress), &tlsconfig.Options{InsecureSkipVerify: true})
++	client, err := plugins.NewClient("unix:///"+path.Join("/", pluginAddress), &tlsconfig.Options{InsecureSkipVerify: true})
+ 	if err != nil {
+ 		t.Fatalf("Failed to create client %v", err)
+ 	}
diff --git a/gnu/packages/patches/kinit-kdeinit-libpath.patch b/gnu/packages/patches/kinit-kdeinit-libpath.patch
index 89cf1a941d..6382e8804b 100644
--- a/gnu/packages/patches/kinit-kdeinit-libpath.patch
+++ b/gnu/packages/patches/kinit-kdeinit-libpath.patch
@@ -23,7 +23,7 @@ pkgs/development/libraries/kde-frameworks/kinit/kinit-libpath.patch
 -                    l.load();
 -                }
 +                // Try to load the library relative to the active profiles.
-+                QByteArrayList profiles = qgetenv("LIBRARY_PATH").split(':');
++                QByteArrayList profiles = qgetenv("KDEINIT5_LIBRARY_PATH").split(':');
 +                for (const QByteArray &profile: profiles) {
 +                    if (!profile.isEmpty()) {
 +                        l.setFileName(QFile::decodeName(profile) + QStringLiteral("/") + libpath);
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 4902f56f78..5572146fa9 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -774,7 +774,7 @@ vector formats.")
 (define-public impressive
   (package
     (name "impressive")
-    (version "0.11.1")
+    (version "0.12.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -782,7 +782,7 @@ vector formats.")
                     version "/Impressive-" version ".tar.gz"))
               (sha256
                (base32
-                "0b3rmy6acp2vmf5nill3aknxvr9a5aawk1vnphkah61anxp62gsr"))))
+                "0zaqq3yvd296mfr5bxpj2hqlk7vrb0rsbgd4dc1l5ag46giqvivx"))))
     (build-system python-build-system)
 
     ;; TODO: Add dependency on pdftk.
diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index 07047f4cf3..5b6114e051 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -131,14 +131,14 @@ data as produced by digital cameras.")
 (define-public libgphoto2
   (package
     (name "libgphoto2")
-    (version "2.5.21")
+    (version "2.5.22")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/gphoto/libgphoto/"
                                   version "/libgphoto2-" version ".tar.bz2"))
               (sha256
                (base32
-                "1ccb8idjkv19p9zxg6hh8y6vbgs8flpnh550lq6a8cmga8d2nmy5"))))
+                "0n6f6nagys775ib483nka1sbclhkm1dz3n5z3lgaz1m9m5x35mqm"))))
     (build-system gnu-build-system)
     (native-inputs `(("pkg-config" ,pkg-config)))
     (inputs
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 5a32681643..86ff4f2044 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -3344,20 +3344,38 @@ color scales, and color space conversion easy.  It has support for:
 (define-public python-pygit2
   (package
     (name "python-pygit2")
-    (version "0.26.4")
+    (version "0.27.3")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "pygit2" version))
        (sha256
         (base32
-         "145k3fsd21274swia7mcc7n3kzlbd47xmg55mxsjdb5d9b7fr858"))))
+         "046ahvsb7a20sgvscqfm3cb32sp3sii4gim9vz7zzrkf7yz16xlv"))))
     (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         ;; Remove after the next update. See:
+         ;; https://github.com/libgit2/pygit2/pull/851
+         (add-after 'unpack 'compile-with-cffi
+           (lambda _
+             (substitute* "setup.py"
+               (("install_requires")
+                "setup_requires=['cffi'],\n      install_requires"))
+             #t))
+         (add-after 'unpack 'fix-dependency-versioning
+           (lambda _
+             (substitute* "setup.py"
+               (("<") "<="))
+             #t)))))
     (propagated-inputs
      `(("python-six" ,python-six)
        ("python-cffi" ,python-cffi)
        ("libgit2" ,libgit2)
        ("python-tox" ,python-tox)))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
     (home-page "https://github.com/libgit2/pygit2")
     (synopsis "Python bindings for libgit2")
     (description "Pygit2 is a set of Python bindings to the libgit2 shared
@@ -4057,17 +4075,17 @@ the OleFileIO module from PIL, the Python Image Library.")
 (define-public python-pillow
   (package
     (name "python-pillow")
-    (version "5.2.0")
+    (version "5.4.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "Pillow" version))
        (sha256
         (base32
-         "1ary9mj2ddllq3lkxgn6aac7qxqiwbcg2pacrl94py58ql9x9czq"))))
+         "0qrkcjszym7ixffg5zphhp8a07w8w11yyc2ylcbdrhwm771z316m"))))
     (build-system python-build-system)
     (native-inputs
-     `(("python-pytest"       ,python-pytest)))
+     `(("python-pytest" ,python-pytest)))
     (inputs
      `(("freetype" ,freetype)
        ("lcms"     ,lcms)
@@ -4079,19 +4097,22 @@ the OleFileIO module from PIL, the Python Image Library.")
     (propagated-inputs
      `(("python-olefile" ,python-olefile)))
     (arguments
-     `(#:phases (modify-phases %standard-phases
-                  (add-after
-                   'install 'check-installed
-                   (lambda* (#:key outputs inputs #:allow-other-keys)
-                     (begin
-                       (setenv "HOME" (getcwd))
-                       ;; Make installed package available for running the
-                       ;; tests
-                       (add-installed-pythonpath inputs outputs)
-                       (invoke "python" "selftest.py" "--installed")
-                       (invoke "python" "-m" "pytest" "-vv"))))
-                 (delete 'check))))
-    (home-page "https://pypi.python.org/pypi/Pillow")
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-ldconfig
+           (lambda _
+             (substitute* "setup.py"
+               (("\\['/sbin/ldconfig', '-p'\\]") "['true']"))))
+         (delete 'check) ; We must run checks after python-pillow is installed.
+         (add-after 'install 'check-installed
+           (lambda* (#:key outputs inputs #:allow-other-keys)
+             (begin
+               (setenv "HOME" (getcwd))
+               ;; Make installed package available for running the tests.
+               (add-installed-pythonpath inputs outputs)
+               (invoke "python" "selftest.py" "--installed")
+               (invoke "python" "-m" "pytest" "-vv")))))))
+    (home-page "https://python-pillow.org")
     (synopsis "Fork of the Python Imaging Library")
     (description
      "The Python Imaging Library adds image processing capabilities to your
diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm
index 08501aef6f..f526d1c237 100644
--- a/gnu/packages/regex.scm
+++ b/gnu/packages/regex.scm
@@ -30,7 +30,7 @@
 (define-public re2
    (package
      (name "re2")
-     (version "2018-12-01")
+     (version "2019-01-01")
      (home-page "https://github.com/google/re2")
      (source (origin
                (method git-fetch)
@@ -38,7 +38,7 @@
                (file-name (git-file-name name version))
                (sha256
                 (base32
-                 "181fq0idwzgfmmpyhmqdxi37rbynzgf1b8s99aaka9kqs9ffwj22"))))
+                 "0wys8bbhj8ppgmgp3842qjmnvkynnzxrm8d7c3a3qyq3p6grqa29"))))
      (build-system gnu-build-system)
      (arguments
       `(#:modules ((guix build gnu-build-system)
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index e78e8d199d..23ac6832fe 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Vicente Vera Parra <vicentemvp@gmail.com>
 ;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
@@ -398,14 +398,14 @@ Applied Statistics with S\" (4th edition, 2002) by Venables and Ripley.")
 (define-public r-class
   (package
     (name "r-class")
-    (version "7.3-14")
+    (version "7.3-15")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "class" version))
        (sha256
         (base32
-         "173b8a16lh1i0zjmr784l0xr0azp9v8bgslh12hfdswbq7dpdf0q"))))
+         "1x1hqz8xyhbpq4krsh02glqnlzcch25agkmn4a3da9n723b37gzn"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-mass" ,r-mass)))
@@ -442,14 +442,14 @@ Hubert, based on Kaufman and Rousseeuw (1990) \"Finding Groups in Data\".")
 (define-public r-codetools
   (package
     (name "r-codetools")
-    (version "0.2-15")
+    (version "0.2-16")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "codetools" version))
        (sha256
         (base32
-         "0h7sjmvvsi35041jp47cxhsqzgf1y8jrw6fxii7n26i8g7nrh1sf"))))
+         "00bmhzqprqfn3w6ghx7sakai6s7il8gbksfiawj8in5mbhbncypn"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/codetools")
     (synopsis "Code analysis tools for R")
@@ -570,14 +570,14 @@ nonlinear mixed-effects models.")
 (define-public r-mgcv
   (package
    (name "r-mgcv")
-   (version "1.8-25")
+   (version "1.8-26")
    (source
     (origin
      (method url-fetch)
      (uri (cran-uri "mgcv" version))
      (sha256
       (base32
-       "1y2rq6v45pr2wcxihhgmingcdvcsilim2cvskrlb7k2n00qg6v2q"))))
+       "02bsz455fr5hyhpmgcrd266qafs2wbz3ygdipxg9gfazbdvq2v4q"))))
    (build-system r-build-system)
    (propagated-inputs
     `(("r-matrix" ,r-matrix)
@@ -652,14 +652,14 @@ analysis.")
 (define-public r-survival
   (package
     (name "r-survival")
-    (version "2.43-1")
+    (version "2.43-3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "survival" version))
        (sha256
         (base32
-         "0220fjsq4ycx1n5zc5h39wdbj5j6xr8rzqbcixx2p25akzdn7kqk"))))
+         "0ldrjja1dj4n1ic0lbggm7jvk52sl5h85i8m23nrgndi60acsv4r"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-matrix" ,r-matrix)))
@@ -811,14 +811,14 @@ non-estimable cases correctly.")
 (define-public r-pheatmap
   (package
     (name "r-pheatmap")
-    (version "1.0.10")
+    (version "1.0.12")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "pheatmap" version))
        (sha256
         (base32
-         "1jzxs5hwbz3r0z2pp09i7fd14sndxnrbm3zibaac3kny4nzydzf7"))))
+         "1hdh74az3vyzz6dqa311rhxdm74n46lyr03p862kn80p0kp9d7ap"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-gtable" ,r-gtable)
@@ -1269,13 +1269,13 @@ R/DBMS implementations.")
 (define-public r-bh
   (package
     (name "r-bh")
-    (version "1.66.0-1")
+    (version "1.69.0-1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "BH" version))
               (sha256
                (base32
-                "14kab6wp0c27d8x4jqyf065p4bj210s9b67c0bfsfjnp29aypn8p"))))
+                "18mckfwxxv8m8rzaz03mg2h6vhaj7y131h6yasfg0s73nxj47zd0"))))
     (build-system r-build-system)
     (home-page "https://github.com/eddelbuettel/bh")
     (synopsis "R package providing subset of Boost headers")
@@ -1364,13 +1364,13 @@ data derived from /etc/mime.types in UNIX-type systems.")
 (define-public r-markdown
   (package
     (name "r-markdown")
-    (version "0.8")
+    (version "0.9")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "markdown" version))
               (sha256
                (base32
-                "1vcgsh2m2f5kfgappgg71nbf04ff0j1sbk668krjs3r2n89dk3sk"))))
+                "08xzs4bcf12jxp0276m6xqvq8kcgg5qp6fxrvsz6r9x73jjccs1h"))))
     (build-system r-build-system)
     ;; Skip check phase because the tests require the r-knitr package to be
     ;; installed. This prevents installation failures. Knitr normally
@@ -1408,19 +1408,20 @@ emitter (http://pyyaml.org/wiki/LibYAML) for R.")
 (define-public r-knitr
   (package
     (name "r-knitr")
-    (version "1.20")
+    (version "1.21")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "knitr" version))
               (sha256
                (base32
-                "1408dm25cxahk2clff8hlajaqdj5v1gs40nm3q6rf0ghd82hj93v"))))
+                "0xzymi4gkilqaa5b2ay9zk1advavzkwxf7mb064bqfb09y8rak0j"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-evaluate" ,r-evaluate)
        ("r-highr" ,r-highr)
        ("r-markdown" ,r-markdown)
        ("r-stringr" ,r-stringr)
+       ("r-xfun" ,r-xfun)
        ("r-yaml" ,r-yaml)))
     (home-page "http://yihui.name/knitr/")
     (synopsis "General-purpose package for dynamic report generation in R")
@@ -1611,13 +1612,13 @@ defined in different packages.")
 (define-public r-rlang
   (package
     (name "r-rlang")
-    (version "0.3.0.1")
+    (version "0.3.1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "rlang" version))
               (sha256
                (base32
-                "0j7kp6h25wbkvpzr7dpc0zgdpjiwsjjlgprj3mv7bgfalfq1si99"))))
+                "0lbi66bavca866k26dnpkxj3l106xr4a6khcsfn8i3i8w8mpnhih"))))
     (build-system r-build-system)
     (home-page "http://rlang.tidyverse.org")
     (synopsis "Functions for base types, core R and Tidyverse features")
@@ -1629,20 +1630,22 @@ like tidy evaluation.")
 (define-public r-tibble
   (package
     (name "r-tibble")
-    (version "1.4.2")
+    (version "2.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "tibble" version))
        (sha256
         (base32
-         "05svbjkm1xqv56ybjgsqqg2pp8nn6hams1yxcr8aanbhzx9h6rqi"))))
+         "1flrvmgc77c8s0brgyha6cdz2883h6bcb2mvqi49b429x5i2vb85"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-rlang" ,r-rlang)
-       ("r-cli" ,r-cli)
+     `(("r-cli" ,r-cli)
        ("r-crayon" ,r-crayon)
-       ("r-pillar" ,r-pillar)))
+       ("r-fansi" ,r-fansi)
+       ("r-pkgconfig" ,r-pkgconfig)
+       ("r-pillar" ,r-pillar)
+       ("r-rlang" ,r-rlang)))
     (home-page "https://github.com/hadley/tibble")
     (synopsis "Simple data frames")
     (description
@@ -1690,14 +1693,14 @@ database.")
 (define-public r-dbplyr
   (package
     (name "r-dbplyr")
-    (version "1.2.2")
+    (version "1.3.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "dbplyr" version))
        (sha256
         (base32
-         "0j5w6a1qim972kv4vmvinp3j50yr4idmm9cd3w7y3zsz0nq0nhcx"))))
+         "07p23vyvi7s4abldhkyir05kcf7xnfc18igfryq12j67xd0jql0m"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-assertthat" ,r-assertthat)
@@ -2072,14 +2075,14 @@ limited to R.")
 (define-public r-backports
   (package
     (name "r-backports")
-    (version "1.1.2")
+    (version "1.1.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "backports" version))
        (sha256
         (base32
-         "0mml9h3xagi7144pyb3jj9zbh9qzns7izkhdg7df20v7bikr6nz8"))))
+         "1hac46xaawnqajlsfb5k7pfkc2ya9h76s5qv9ycj3jafh93d26z4"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/backports")
     (synopsis "Reimplementations of functions introduced since R 3.0.0")
@@ -2095,14 +2098,14 @@ R version.")
 (define-public r-checkmate
   (package
     (name "r-checkmate")
-    (version "1.8.5")
+    (version "1.9.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "checkmate" version))
        (sha256
         (base32
-         "1q6igk50lq4fp5d3imgcn1j063h3gsp214ra4nlf534hf4wjlkg9"))))
+         "00bjlc910y4paddvpz68pl3qyvjxlwqgyh39wpfkq43p99gvnj37"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-backports" ,r-backports)))
@@ -2237,14 +2240,14 @@ other packages.")
 (define-public r-commonmark
   (package
     (name "r-commonmark")
-    (version "1.6")
+    (version "1.7")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "commonmark" version))
        (sha256
         (base32
-         "1xymqncf8byqxzpx64zlp6vbx7gry572jkr2ax0zlavr8bli861x"))))
+         "024iz1qp2kv6iz6y69ir0jk3qhjps86rhkzlcmhqsxx97rx7cjni"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/commonmark")
     (synopsis "CommonMark and Github Markdown Rendering in R")
@@ -2321,13 +2324,13 @@ integers.")
 (define-public r-httr
   (package
     (name "r-httr")
-    (version "1.3.1")
+    (version "1.4.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "httr" version))
               (sha256
                (base32
-                "0n7jz2digbgv48rbr9vmzv4vmf4rahl9jjy31izs7sxj4rs4s4r2"))))
+                "0j6vknwyvkjpjsxwch4q02aik4dnm3h4l0wc7dgzc555bm1g2cyn"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-curl" ,r-curl)
@@ -2347,19 +2350,19 @@ functions make it easy to control additional request components.")
 (define-public r-git2r
   (package
     (name "r-git2r")
-    (version "0.23.0")
+    (version "0.24.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "git2r" version))
               (sha256
                (base32
-                "01250jz255fnyy2ap90nskvzhd8nhlmbhwgpvb43mk1fax077lrz"))))
+                "0vfc25z4j53pc49cnp3zjwzjb72kvc0aq96wgyg10xpgvhl3z0gg"))))
     (build-system r-build-system)
     ;; This R package contains modified sources of libgit2.  This modified
     ;; version of libgit2 is built as the package is built.  Hence libgit2 is
     ;; not among the inputs of this package.
     (inputs
-     `(("libssh2" ,libssh2)
+     `(("libssh2" ,libssh2) ; for SSH transport
        ("openssl" ,openssl)
        ("zlib" ,zlib)))
     (native-inputs
@@ -2375,13 +2378,13 @@ pure C implementation of the Git core methods.")
 (define-public r-rstudioapi
   (package
     (name "r-rstudioapi")
-    (version "0.8")
+    (version "0.9.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "rstudioapi" version))
               (sha256
                (base32
-                "0d6r0in13k0rcyr6asanwy0a9dv4lizq6l2w913rr222pq6vrrck"))))
+                "0gn1pvaxfh2gh2ikvxcr8f6k97ygcfr68iz6dhwlq4z71a1s4jai"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/rstudioapi")
     (synopsis "Safely access the RStudio API")
@@ -2467,16 +2470,18 @@ time-of-day values, based on the @code{difftime} class.")
 (define-public r-readr
   (package
     (name "r-readr")
-    (version "1.1.1")
+    (version "1.3.1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "readr" version))
               (sha256
                (base32
-                "1cvw5wdcqk88cp5fyv678mnmp66l3whcd2yh33p2qvx0168bja8s"))))
+                "1wz496rw0ah433p755n3xac8gh7yzid4xgdjzd1a7wmpkgilvy9k"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-rcpp" ,r-rcpp)
+     `(("r-clipr" ,r-clipr)
+       ("r-crayon" ,r-crayon)
+       ("r-rcpp" ,r-rcpp)
        ("r-hms" ,r-hms)
        ("r-tibble" ,r-tibble)
        ("r-r6" ,r-r6)
@@ -2550,13 +2555,13 @@ well as additional utilities such as panel and axis annotation functions.")
 (define-public r-rcpparmadillo
   (package
     (name "r-rcpparmadillo")
-    (version "0.9.200.4.0")
+    (version "0.9.200.5.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "RcppArmadillo" version))
               (sha256
                (base32
-                "1ayvpyi4hgaqrhx1kqi640iillc2byj4kam7vydlgqmdrzpgrfvz"))))
+                "09041jnalh7352kj6lv4d0xr9c0mvf8p860q5c8m13mp214x5x7k"))))
     (properties `((upstream-name . "RcppArmadillo")))
     (build-system r-build-system)
     (native-inputs
@@ -2644,14 +2649,14 @@ certain criterion, e.g., it contains a certain regular file.")
 (define-public r-rmarkdown
   (package
     (name "r-rmarkdown")
-    (version "1.10")
+    (version "1.11")
     (source
       (origin
         (method url-fetch)
         (uri (cran-uri "rmarkdown" version))
         (sha256
           (base32
-            "0mh2f3k98w7pgz0ri34149s4kx5y0kfm27nwq64k0qwxd16hwd9r"))))
+            "0yyjbh891mdqzpjkblz8510ng71i7mxmyiqr69x3rwlwk2vakk79"))))
     (properties `((upstream-name . "rmarkdown")))
     (build-system r-build-system)
     (propagated-inputs
@@ -2661,7 +2666,6 @@ certain criterion, e.g., it contains a certain regular file.")
        ("r-jsonlite" ,r-jsonlite)
        ("r-knitr" ,r-knitr)
        ("r-mime" ,r-mime)
-       ("r-rprojroot" ,r-rprojroot)
        ("r-stringr" ,r-stringr)
        ("r-tinytex" ,r-tinytex)
        ("r-yaml" ,r-yaml)
@@ -4105,14 +4109,14 @@ existing packages provide.")
 (define-public r-sfsmisc
   (package
     (name "r-sfsmisc")
-    (version "1.1-2")
+    (version "1.1-3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "sfsmisc" version))
        (sha256
         (base32
-         "0cgq2h11ngkzd6p34k6mqjnvlvc5vj4lnqrl64k05lb391j391w0"))))
+         "1y25nnw09qfm66523w1z4q766lv15a6ykvsq30r154n7m7aggvsq"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/sfsmisc")
     (synopsis "Utilities from \"Seminar fuer Statistik\" ETH Zurich")
@@ -4446,13 +4450,13 @@ dispersion modeling and Tweedie power-law families.")
 (define-public r-rann
   (package
     (name "r-rann")
-    (version "2.6")
+    (version "2.6.1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "RANN" version))
               (sha256
                (base32
-                "1r6rivh9ba4gwnzryip0aiwsbm46zma7nvd9z5y456p2dgzp9lii"))))
+                "10kid40w9w7vkz2hpcfkdpxr4afxzms5dzvfwr0sl5xynzgw76dj"))))
     (properties
      `((upstream-name . "RANN")))
     (build-system r-build-system)
@@ -4515,14 +4519,14 @@ Farebrother's algorithm or Liu et al.'s algorithm.")
 (define-public r-cowplot
   (package
     (name "r-cowplot")
-    (version "0.9.3")
+    (version "0.9.4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "cowplot" version))
        (sha256
         (base32
-         "1jrx1h0blkk577y4cvnjk7xccn7qmjiv2bnpgqlsjvjhsxglf41y"))))
+         "0yvalwalvyddyqk0q66y8361nxlh2cvp3ssazax9g5q89lghjmzv"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-ggplot2" ,r-ggplot2)
@@ -4813,14 +4817,14 @@ analysis} (PCA) by projection pursuit.")
 (define-public r-rrcov
   (package
     (name "r-rrcov")
-    (version "1.4-4")
+    (version "1.4-7")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "rrcov" version))
        (sha256
         (base32
-         "0wn5h8vi0zyk5ah898m37ysz4kiih6y792nb9zdvhvd8r07f0sc5"))))
+         "14zjyqcdiqx6js99nx5s8hmyx564ixy2d8s6i7wa50xmx368rl6b"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-cluster" ,r-cluster)
@@ -5019,14 +5023,14 @@ based on an interface to Fortran implementations by M. J. D. Powell.")
 (define-public r-rcppeigen
   (package
     (name "r-rcppeigen")
-    (version "0.3.3.4.0")
+    (version "0.3.3.5.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "RcppEigen" version))
        (sha256
         (base32
-         "1m6ssq6lvi36ggf26y4hhq996583pxxdb978jnn1x6r9gdb0q0hi"))))
+         "01bz41c29591ybzqn4z88ss036ai3anh9figryvmfpqcfwbszip5"))))
     (properties `((upstream-name . "RcppEigen")))
     (build-system r-build-system)
     (propagated-inputs
@@ -5089,14 +5093,14 @@ using modular prediction and response module classes.")
 (define-public r-quantreg
   (package
     (name "r-quantreg")
-    (version "5.36")
+    (version "5.38")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "quantreg" version))
        (sha256
         (base32
-         "023gdzahxp582rpabilpxbl3wyjrgjjnnrhcv9xhrqdfiq5l2yza"))))
+         "1vvvnk291f0dccg04l3nsnk585gq75sk0b2vdbrqv3lczvv18nw1"))))
     (build-system r-build-system)
     (native-inputs
      `(("gfortran" ,gfortran)))
@@ -5251,14 +5255,14 @@ to Applied regression, Second Edition, Sage, 2011.")
 (define-public r-caret
   (package
     (name "r-caret")
-    (version "6.0-80")
+    (version "6.0-81")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "caret" version))
        (sha256
         (base32
-         "0xhdhazzfh0hiqv2hgxglj9ffd2p4ls8acqn2sjn0ndx6158f187"))))
+         "1fibrskjzq2f06b8gbrfp3263svfc5s5apsjwaqdg9qzs7sy7fpc"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-foreach" ,r-foreach)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 78a589ca65..40d80b4727 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -259,7 +259,7 @@ This package contains the binaries.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0fcy2hpapbj01ncpjj3v39yhr0jjxb6rm13qaxjjw66s3vydxls1"))))
+                "1ky6wc173jhf0b33lhyb4r3bx1d4bmiqkn6y1hxn92kwjdzl42p7"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -290,7 +290,7 @@ This package contains the binaries.")
            (file-name (string-append "dvips-font-maps-" version "-checkout"))
            (sha256
             (base32
-             "09hply3nmy24ilnc6cl8q70jcqxvq6bwri572kms008ini3h9vqh"))))
+             "0nxvfbb5vsvakiw0iviicghdc2sxk05cj056ilqnpa62fffc36a6"))))
        ("dvips-base-enc"
         ,(origin
            (method svn-fetch)
@@ -326,7 +326,7 @@ to PostScript.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0ivrhp6jz31pl4z841g4ws41lmvdiwz4sslmhf02inlib79gz6r2"))))
+                "0r1v16jyfpz6dwqsgm6b9jcj4kf2pkzc9hg07s6fx9g8ba8qglih"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -365,7 +365,7 @@ out to date by @code{unicode-letters.tex}. ")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1l9wgv99qq0ysvlxqpj4g8bl0dywbzra4g8m2kmpg2fb0i0hczap"))))
+                "03yj1di9py92drp6gpfva6q69vk2iixr79r7cp7ja570s3pr0m33"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -436,7 +436,7 @@ to adapt the plain e-TeX source file to work with XeTeX and LuaTeX.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0ghizcz7ps16dzfqf66wwg5i181assc6qsm0g7g5dbmp909931vi"))))
+                "1alnn9cd60m2c12vym9f9q22ap1ngywxpkjl9dk472why44g1dmy"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -545,7 +545,7 @@ build fonts using the Metafont system.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0cssbzcx15221dynp5sii72qh4l18mwkr14n8w1xb19j8pbaqasz"))))
+                "05rbn7z30xawd3n6w7c3ijp2yc67ga220jgqmkla9pd9wx185rzq"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -579,7 +579,7 @@ documents.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "045k5b9rdmbxpy1a3006l1x96z1rd18vg3cwrvnld9bqybw5qz44"))))
+                "0vfjhidr9pha613h8mfhnpcpvld6ahdfb449918fpsfs93cppkyj"))))
     (build-system gnu-build-system)
     (arguments
      `(#:modules ((guix build gnu-build-system)
@@ -920,7 +920,7 @@ individual symbols defined in @code{amssymb.sty}.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0mjgl3gscn3ps29yjambz1j9fg81ynnncb96vpprwx4xsijhsns0"))))
+                "1xknlb3gcw6jjqh97bhghxi594bzpj1zfzzfsrr9pvr9s1bx7dnf"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -965,7 +965,7 @@ book).")
                 (file-name (string-append name "-" version "-checkout"))
                 (sha256
                  (base32
-                  "1h9pir2hz6i9avc4lrl733p3zf4rpkg8537x1zdbhs91hvhikw9k"))))
+                  "17bqrzzjz16k52sc7ydl4vw7ddy2z3g0p1xsk2c35h1ynq9h3wwm"))))
       (build-system gnu-build-system)
       (arguments
        `(#:modules ((guix build gnu-build-system)
@@ -1086,7 +1086,7 @@ book).")
                         "1cfwdg2rhbayl3w0x1xqd36d45zbc96f029myp13s7cb6kbmbppv"))
          ("texlive-generic-config"
           ,(texlive-dir "tex/generic/config/"
-                        "19vj088p4kkp6xll0141m4kl6ssgdzhs3g10i232khb07aqiag8s"))
+                        "1v90iihy112q93zdpblpdk8zv8rf99fgslsg06s1sxm27zjm9nap"))
          ("texlive-latex-base-support-files"
           ,(origin
              (method svn-fetch)
@@ -1098,7 +1098,7 @@ book).")
              (file-name (string-append name "-" version "-checkout"))
              (sha256
               (base32
-               "16bs9pi3nq407xhg59glklqv43v102cg3yim6k3zcri5d9nkbv3a"))))
+               "18wy8dlcw8adl6jzqwbg54pdwlhs8hilnfvqbw6ikj6y3zhqkj7q"))))
          ("texlive-tex-plain" ,texlive-tex-plain)
          ("texlive-fonts-cm" ,texlive-fonts-cm)
          ("texlive-fonts-latex" ,texlive-fonts-latex)
@@ -1237,7 +1237,7 @@ verbatim source).")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "07azyn0b1s49vbdlr6dmygrminxp72ndl24j1091hiiccvrjq3xc"))))
+                "0nlfhn55ax89rcvpkrl9570671b62kcr4c9l5ch3w5zw9vmi00dz"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "latex/graphics"
@@ -1286,7 +1286,7 @@ verbatim source).")
                                      "-checkout"))
            (sha256
             (base32
-             "0gi4qv6378nl84s8n1yx3hjqvv7r4lza7hpbymbl5rzwgw8qrnyb"))))))
+             "17zpcgrfsr29g1dkz9np1qi63kjv7gb12rg979c6dai6qksbr3vq"))))))
     (home-page "https://www.ctan.org/pkg/latex-graphics")
     (synopsis "LaTeX standard graphics bundle")
     (description
@@ -1362,7 +1362,7 @@ pdf and HTML backends.  The package is distributed with the @code{backref} and
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0aswvsxgsn709xmvpcg50d2xl7vcy1ckdxb9c1cligqqfjjvviqf"))))
+                "1m9fg8ddhpsl1212igr9a9fmj012lv780aghjn6fpidg2wqrffmn"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "latex/oberdiek"
@@ -1393,7 +1393,7 @@ arrows; record information about document class(es) used; and many more.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "052a0pch2k5zls5jlay9xxcf93rw3i60a2x28y3ip3rhbsv3xgiz"))))
+                "0vj7h1fgf1396h4qjdc2m07y08i54gbbfrxl8y327cn3r1n093s6"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "latex/tools"
@@ -1459,7 +1459,7 @@ of file names.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0r0wfk594j8wkdqhh21haimwsfq8x5jch4ldm21hkzk5dnmvpbg6"))))
+                "0p3fsxap1ilwjz356aq4s5ygwvdscis8bh93g8klf8mhrd8cr2jy"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "latex/l3kernel"))
@@ -1483,7 +1483,7 @@ that the LaTeX3 conventions can be used with regular LaTeX 2e packages.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "16jplkvzdysfssijq9l051nsks65c2nrarsl17k8gjhc28yznj8y"))))
+                "0pyx0hffiyss363vv7fkrcdiaf7p099xnq0mngzqc7v8v9q849hs"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "latex/l3packages"
@@ -1538,11 +1538,10 @@ programming tools and kernel sup­port.  Packages provided in this release are:
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1rx43y5xmjqvc27pjdnmqwp4pcw3czcfd6nfpmzc1gnqfl1hlc0q"))))
+                "1p0mkn6iywl0k4m9cx3hnhylpi499inisff3f72pcf349baqsnvq"))))
     (build-system texlive-build-system)
     (arguments
-     '(#:tex-directory "latex/fontspec"
-       #:build-targets '("fontspec.dtx")))
+     '(#:tex-directory "latex/fontspec"))
     (inputs
      `(("texlive-latex-l3kernel" ,texlive-latex-l3kernel)))
     (home-page "https://www.ctan.org/pkg/fontspec")
@@ -1602,7 +1601,7 @@ this bundle for use independent of ConTeXt.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "178ywjpdlv78qmfzqdyn6gy14620zjsn2q9wap76fbr9s4hw6dba"))))
+                "0arvk7gn32mshnfdad5qkgf3i1arxq77k3vq7wnpm4nwnrzclxal"))))
     (build-system texlive-build-system)
     (arguments '(#:tex-directory "latex/amsmath"))
     (home-page "https://www.ctan.org/pkg/amsmath")
@@ -1631,7 +1630,7 @@ definitions.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0jmcr37mcdi7drczppvr6lmz5d5yd9m67ii79gp2nglg1xpw934j"))))
+                "0c2j9xh4qpi0x1vvcxdjxq6say0zhyr569fryi5cmhp8bclh4kca"))))
     (build-system texlive-build-system)
     (arguments
      `(#:tex-directory "latex/amscls"))
@@ -1655,7 +1654,7 @@ distribution.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1n3i5adsyy7jw0imnzrm2i8wkf73i3mjk9h3ic8cb9cd19i4r9r3"))))
+                "0yhlfiz3fjc8jd46f1zrjj4jig48l8rrzh8cmd8ammml8z9a01z6"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "generic/babel"
@@ -1712,7 +1711,7 @@ for Canadian and USA text.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1mdhl35hwas68ki56qqngzar37dwv4mm64l2canihr255bz34lbv"))))
+                "083xbwg7hrnlv47fkwvz8yjb830bhxx7y0mq7z7nz2f96y2ldr6b"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "latex/cyrillic"))
@@ -1946,6 +1945,13 @@ ipsum\" text, see the @code{lipsum} package).")
          (add-after 'unpack 'remove-generated-file
            (lambda _
              (delete-file "dinbrief.drv")
+             #t))
+         (add-after 'unpack 'fix-encoding-error
+           (lambda _
+             (with-fluids ((%default-port-encoding "ISO-8859-1"))
+               (substitute* "dinbrief.dtx"
+                 (("zur Verf.+ung. In der Pr\"aambel")
+                  "zur Verf\"ung. In der Pr\"aambel")))
              #t)))))
     (home-page "https://www.ctan.org/pkg/dinbrief")
     (synopsis "German letter DIN style")
@@ -2016,7 +2022,7 @@ define a new author interface to creating new environments.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0pvmhsd4xmpil0m3c7qcgwilbk266mlkzv03g0jr8r3zd8jxlyzq"))))
+                "1ib5xdwcj5wk23wgk41m2hdcjr1dzrs4l3wwnpink9mlapz12wjs"))))
     (build-system texlive-build-system)
     (arguments '(#:tex-directory "latex/eqparbox"))
     (home-page "https://www.ctan.org/pkg/eqparbox")
@@ -2114,7 +2120,7 @@ but non-expandable ones.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "11gvvjvmdfs9b7mm19yf80zwkx49jqcbq6g8qb9y5ns1r1qvnixp"))))
+                "157pplavvm2z97b3jl4x41w11k6q9wgy074mfg0dwmsx5lm328jy"))))
     (build-system texlive-build-system)
     (arguments '(#:tex-directory "latex/ifplatform"))
     (home-page "https://www.ctan.org/pkg/ifplatform")
@@ -2178,34 +2184,70 @@ with a user specified LaTeX construction, properly aligned, scaled, and/or
 rotated.")
     (license (license:fsf-free "file://psfrag.dtx"))))
 
+(define-public texlive-latex-xkeyval
+  (package
+    (name "texlive-latex-xkeyval")
+    (version (number->string %texlive-revision))
+    (source (origin
+              (method svn-fetch)
+              (uri (texlive-ref "latex" "xkeyval"))
+              (file-name (string-append name "-" version "-checkout"))
+              (sha256
+               (base32
+                "0wancavix39j240pd8m9cgmwsijwx6jd6n54v8wg0x2rk5m44myp"))))
+    (build-system texlive-build-system)
+    (arguments '(#:tex-directory "latex/xkeyval"))
+    (home-page "https://www.ctan.org/pkg/xkeyval")
+    (synopsis "Macros for defining and setting keys")
+    (description
+     "This package is an extension of the @code{keyval} package and offers
+more flexible macros for defining and setting keys.  The package provides a
+pointer and a preset system.  Furthermore, it supplies macros to allow class
+and package options to contain options of the @code{key=value} form.  A LaTeX
+kernel patch is provided to avoid premature expansions of macros in class or
+package options.  A specialized system for setting @code{PSTricks} keys is
+provided by the @code{pst-xkey} package.")
+    (license license:lppl1.3+)))
+
 (define-public texlive-latex-pstool
   (package
     (name "texlive-latex-pstool")
     (version (number->string %texlive-revision))
     (source (origin
               (method svn-fetch)
-              (uri (texlive-ref "latex" "pstool"))
+              (uri (svn-reference
+                    (url (string-append "svn://www.tug.org/texlive/tags/"
+                                        %texlive-tag "/Master/texmf-dist/"
+                                        "/tex/latex/pstool"))
+                    (revision %texlive-revision)))
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1kwlk1x67lad4xb7gpkxqgdlxwpi6nvq1r9wika7m92abmyf18h3"))))
-    (build-system texlive-build-system)
+                "1h816jain8c9nky75kk8pmmwj5b4yf9dpqvdvi2l6jhfj5iqkzr8"))))
+    (build-system trivial-build-system)
     (arguments
-     '(#:tex-directory "latex/pstool"
-       #:tex-format "latex"))
-    (inputs
-     `(("texlive-fonts-cm" ,texlive-fonts-cm)
-       ("texlive-latex-filecontents" ,texlive-latex-filecontents)))
+     `(#:modules ((guix build utils))
+       #:builder
+       (begin
+         (use-modules (guix build utils))
+         (let ((target (string-append (assoc-ref %outputs "out")
+                                      "/share/texmf-dist/tex/latex/pstool")))
+           (mkdir-p target)
+           (copy-recursively (assoc-ref %build-inputs "source") target)
+           #t))))
     (propagated-inputs
-     `(("texlive-latex-bigfoot" ,texlive-latex-bigfoot)
+     `(("texlive-latex-bigfoot" ,texlive-latex-bigfoot) ; for suffix
        ("texlive-latex-filemod" ,texlive-latex-filemod)
        ("texlive-latex-graphics" ,texlive-latex-graphics)
        ("texlive-latex-ifplatform" ,texlive-latex-ifplatform)
+       ("texlive-latex-l3kernel" ,texlive-latex-l3kernel) ; for expl3
        ("texlive-latex-oberdiek" ,texlive-latex-oberdiek)
        ("texlive-latex-psfrag" ,texlive-latex-psfrag)
-       ("texlive-latex-trimspaces" ,texlive-latex-trimspaces)))
+       ("texlive-latex-tools" ,texlive-latex-tools) ; for shellesc
+       ("texlive-latex-trimspaces" ,texlive-latex-trimspaces)
+       ("texlive-latex-xkeyval" ,texlive-latex-xkeyval)))
     (home-page "https://www.ctan.org/pkg/pstool")
-    (synopsis "Process PostScript graphisc within pdfLaTeX documents")
+    (synopsis "Process PostScript graphics within pdfLaTeX documents")
     (description
      "This is a package for processing PostScript graphics with @code{psfrag}
 labels within pdfLaTeX documents.  Every graphic is compiled individually,
@@ -2360,7 +2402,7 @@ hyperlink to the target of the DOI.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0016bscnpima9krrg2569mva78xzwnygzlvg87dznsm6gf8g589v"))))
+                "1agmq6bf8wzcd77n20ng8bl4kh69cg5f6sjniii7bcw4llhd3nc8"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -2542,7 +2584,7 @@ BibLaTeX, and is considered experimental.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1r2kfcwclg33yk5z8mvlagwxj7nr1mc3w4bdpmhrwv6dn8mrbvw8"))))
+                "0yw6bjfgsli3s1dldsgb7mkr7lnk329cgdjbgs8z2xn59pmmdsn4"))))
     (build-system texlive-build-system)
     (arguments '(#:tex-directory "latex/geometry"))
     (home-page "https://www.ctan.org/pkg/geometry")
@@ -2591,7 +2633,7 @@ array environments; verbatim handling; and syntax diagrams.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "09mvszd5qgqg4cfglpj5qxyzjz190ppb9p8gnsnjydwp1akvhayf"))))
+                "03ma58z3ypsbp7zgkzb1ylpn2ygr27cxzkf042ns0rif4g8s491f"))))
     (build-system texlive-build-system)
     (arguments '(#:tex-directory "latex/polyglossia"))
     (home-page "https://www.ctan.org/pkg/polyglossia")
@@ -2637,7 +2679,7 @@ situations where longtable has problems.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "09zj2w3lx0y6i2syfjjgizahf86z301dw8p37ln6syfhqhzqdz46"))))
+                "06cf821y1j7jdg93pb41ayigrfwgn0y49d7w1025zlijjxi6bvjp"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -2754,7 +2796,7 @@ command.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1ik4m8pzfsn1grlda6fniqqfwmgj7rfxwg63jdw0p0qv002vc7ik"))))
+                "05x15ilynqrl448h8l6qiraygamdldlngz89a2bw7kg74fym14ch"))))
     (build-system texlive-build-system)
     (arguments '(#:tex-directory "latex/changebar"))
     (home-page "https://www.ctan.org/pkg/changebar")
@@ -2870,7 +2912,7 @@ floats, center, flushleft, and flushright, lists, and pages.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "04h430agf8aj7ziwyb46xpk95c605rjk1wzhr63m6ylipihidlgw"))))
+                "1xsnzx7vgdfh9zh2m7bjz6bgdpxsgb1kyc19p50vhs34x5nbgsnr"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -3288,7 +3330,7 @@ entry at the \"natural\" width of its text.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0m29q9qdb00558b7g2i7iw6w62n5s46yx81j8m99qkv77magk4fm"))))
+                "1rpx4ibjncj5416rg19v0xjbj3z9avhfdfn2gzp8r8sz9vz25c6g"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -3354,7 +3396,7 @@ designed class) helps alleviate this untidiness.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "06p5smfq66559ppdnmkl3hp8534x84ywbscimsiir4gllpya3i9h"))))
+                "0s4izcah7im67889qz4d26pcfpasmm35sj1rw4ragkkdk3rlbbbd"))))
     (build-system texlive-build-system)
     (arguments '(#:tex-directory "latex/pdfpages"))
     (home-page "https://www.ctan.org/pkg/pdfpages")
@@ -3768,7 +3810,7 @@ OT2 encoded fonts, CM bright shaped fonts and Concrete shaped fonts.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "03nvjddffiz796wll6axzmgfvynyciy2mqamv20qx252w71vwkwd"))))
+                "0sf18pc6chgy26p9bxxn44xcqhzjrfb53jxjr2y7l3jb6xllhblq"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -3948,7 +3990,7 @@ package of that name now exists.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0j6fff6q0ca96nwfdgay2jm55792z4q9aa0rczmiw2qccyg5n2dv"))))
+                "1hpsk4yp08qvbl43kqiv0hhwxv3gcqqxcpahyv6ch2b38pbj4bh6"))))
     (build-system texlive-build-system)
     (arguments
      '(#:tex-directory "latex/preview"
@@ -4035,7 +4077,7 @@ e-TeX.")
            (file-name (string-append name "-map-" version "-checkout"))
            (sha256
             (base32
-             "197z9kx3bpnz58f5xrn5szyvmb3fxqq12y5sc4dw4jnm3xll8ji2"))))))
+             "18jvcm0vwpg6wwzijvnb92xx78la45kkh71k6l44425krp2vnwm0"))))))
     (home-page "https://www.ctan.org/pkg/pdftex")
     (synopsis "TeX extension for direct creation of PDF")
     (description
@@ -4515,7 +4557,7 @@ required: automatic sectioning and pagination, spell checking and so forth.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "01ysky8h8s6q12dxfahkzwhbkc9j5wl50xzcczy0cbjx9f6aj9kv"))))
+                "0lhb2h5hxjq9alpk4r3gvg21pwyifs4ah6hqzp92k55mkp1xv73j"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -4555,7 +4597,7 @@ specification.  It replaces the now obsolete @code{movie15} package.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "12kkl7n534j0p4frwyrlw22dc3ik50kxv97cxp4xpmji13m0hxpf"))))
+                "0zp00jg058djx8xp0xqwas92y3j97clkyd8z6pqr890yqy06myqb"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -4785,7 +4827,7 @@ produce either PostScript or PDF output.")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1g8qg796hc6s092islnybaxs115ldsqwp2vxkk3gpy6vh7wc9r50"))))
+                "0nqwf0sr4mf3v9gqa6apv6ml2xhcdwax0vgyf12a672g7rpdyvgm"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils)
@@ -4845,7 +4887,7 @@ typearea (which are the main parts of the bundle).")
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1k50z6ixgwwzy84mi0dr5vcjah5p7wvgq66y45bilm91a4m8sgla"))))
+                "0hs28fc0v2l92ad9las9b8xcckyrdrwmyhcx1yzmbr6s7s6nvsx8"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -5111,7 +5153,7 @@ TeX).")
        (file-name (string-append name "-" version "-checkout"))
        (sha256
         (base32
-         "1gk9q22fcb2fa1ql6cf9yw505x6a6axdzzfxbsya7nkrph860af8"))))
+         "0hnbs0s1znbn32hfcsyijl39z81sdb00jf092a4blqz421qs2mbv"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
@@ -5215,7 +5257,7 @@ for use with LaTeX is available in @code{freenfss}, part of
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "0zwl0cg6pka13i26dpqh137391f3j9sk69cpvwrm4ivsa0rqnw6g"))))
+                "0rlx4qqijms1n64gjx475kvip8l322fh7v17zkmwp1l1g0w3vlyz"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils))
diff --git a/gnu/packages/upnp.scm b/gnu/packages/upnp.scm
index 24b17111e9..e7da5b30c0 100644
--- a/gnu/packages/upnp.scm
+++ b/gnu/packages/upnp.scm
@@ -125,7 +125,7 @@ over IRC, instant messaging, network games, and most server software.")
 (define-public libupnp
   (package
     (name "libupnp")
-    (version "1.6.24")
+    (version "1.6.25")
     (source
      (origin
       (method url-fetch)
@@ -133,7 +133,7 @@ over IRC, instant messaging, network games, and most server software.")
                           version "/" name "-" version ".tar.bz2"))
       (sha256
        (base32
-        "15ngi1i7cvsv7g15fb9bkswvi99d1plz52x5qgjn4h5vyfddg0vx"))))
+        "0hzsd7rvfa87b4hxg9yj4xhdfxx9sp09r9sqdl3mqhvmcyw018y5"))))
     (build-system gnu-build-system)
     (arguments
      ;; The tests require a network device capable of multicasting which is
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 2eaf0c69f4..b62562902d 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -524,7 +524,7 @@ everything from small to very large projects with speed and efficiency.")
 (define-public libgit2
   (package
     (name "libgit2")
-    (version "0.26.8")
+    (version "0.27.7")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/libgit2/libgit2/"
@@ -532,7 +532,7 @@ everything from small to very large projects with speed and efficiency.")
               (file-name (string-append name "-" version ".tar.gz"))
               (sha256
                (base32
-                "15kp4sq72kh762bm7dgspyrk0a6siarvll3k7nrhs0xy77idf80g"))
+                "0c95pbv7hwclwmn51nqnh1lb0cajpcdb24pbdzcir6vmhfj3am0s"))
               (patches (search-patches "libgit2-mtime-0.patch"
                                        "libgit2-oom-test.patch"))
 
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index e355255bfc..3f3d232df2 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -21,7 +21,7 @@
 ;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com>
 ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
-;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
@@ -704,6 +704,7 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).")
        ("libbluray" ,libbluray)
        ("libcaca" ,libcaca)
        ("libcdio-paranoia" ,libcdio-paranoia)
+       ("libdrm" ,libdrm)
        ("libtheora" ,libtheora)
        ("libva" ,libva)
        ("libvdpau" ,libvdpau)
@@ -805,6 +806,7 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).")
          "--enable-libx265"
          "--enable-openal"
          "--enable-opengl"
+         "--enable-libdrm"
 
          "--enable-runtime-cpudetect"
 
@@ -3267,3 +3269,32 @@ transitions, and effects and then export your film to many common formats.")
     (description "dav1d is a new AV1 cross-platform decoder, and focused on
 speed and correctness.")
     (license license:bsd-2)))
+
+(define-public wlstream
+  (let ((commit "182076a94562b128c3a97ecc53cc68905ea86838")
+        (revision "1"))
+    (package
+      (name "wlstream")
+      (version (git-version "0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/atomnuker/wlstream.git")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "01qbcgfl3g9kfwn1jf1z9pdj3bvf5lmg71d1vwkcllc2az24bjqp"))))
+      (build-system meson-build-system)
+      (native-inputs `(("libdrm" ,libdrm)
+                       ("pkg-config" ,pkg-config)))
+      (inputs `(("ffmpeg" ,ffmpeg)
+                ("pulseaudio" ,pulseaudio)
+                ("wayland" ,wayland)
+                ("wayland-protocols" ,wayland-protocols)))
+      (home-page "https://github.com/atomnuker/wlstream")
+      (synopsis "Screen capture tool for Wayland sessions")
+      (description "Wlstream is a screen capture tool for recording audio and
+video from a Wayland session.")
+      (license license:lgpl2.1+))))
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 57c5c34da1..9b82535aa7 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1074,3 +1075,30 @@ and the user can specify exactly what parts of the filesystem should be visible
 in the sandbox.  Any such directories specified is mounted nodev by default,
 and can be made readonly.")
     (license license:lgpl2.0+)))
+
+(define-public bochs
+  (package
+    (name "bochs")
+    (version "2.6.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://sourceforge.net/projects/bochs/files/bochs/"
+                           version "/bochs-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1379cq4cnfprhw8mgh60i0q9j8fz8d7n3d5fnn2g9fdiv5znfnzf"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f)) ; No tests exist
+    (inputs
+     `(("libxrandr" ,libxrandr)))
+    (home-page "http://bochs.sourceforge.net/")
+    (synopsis "Emulator for x86 PC")
+    (description
+     "Bochs is an emulator which can emulate Intel x86 CPU, common I/O
+devices, and a custom BIOS.  It can also be compiled to emulate many different
+x86 CPUs, from early 386 to the most recent x86-64 Intel and AMD processors.
+Bochs can run most Operating Systems inside the emulation including Linux,
+DOS or Microsoft Windows.")
+    (license license:lgpl2.0+)))
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 5df1816fac..c94fd4f0c0 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -122,14 +122,14 @@
 (define-public httpd
   (package
     (name "httpd")
-    (version "2.4.35")
+    (version "2.4.37")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://apache/httpd/httpd-"
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "0mlvwsm7hmpc7db6lfc2nx3v4cll3qljjxhjhgsw6aniskywc1r6"))))
+               "09npb7vlz5sizgj0nvl0bqxj9zig29ipkp07fgmw5ykjcxfdr61l"))))
     (build-system gnu-build-system)
     (native-inputs `(("pcre" ,pcre "bin")))       ;for 'pcre-config'
     (inputs `(("apr" ,apr)
@@ -5068,15 +5068,16 @@ into your tests.  It automatically starts up a HTTP server in a separate thread
 (define-public http-parser
   (package
     (name "http-parser")
-    (version "2.8.1")
+    (version "2.9.0")
+    (home-page "https://github.com/nodejs/http-parser")
     (source (origin
-              (method url-fetch)
-              (uri (string-append "https://github.com/nodejs/http-parser/"
-                                  "archive/v" version ".tar.gz"))
-              (file-name (string-append name "-" version ".tar.gz"))
+              (method git-fetch)
+              (uri (git-reference (url home-page)
+                                  (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
               (sha256
                (base32
-                "15ids8k2f0xhnnxh4m85w2f78pg5ndiwrpl24kyssznnp1l5yqai"))))
+                "1qa3rh9x4as2fc2p0y2hah83iqs7jr5106a8anv317359dgf3ssj"))))
     (build-system gnu-build-system)
     (arguments
      `(#:test-target "test"
@@ -5087,7 +5088,6 @@ into your tests.  It automatically starts up a HTTP server in a separate thread
        #:phases
        (modify-phases %standard-phases
          (delete 'configure))))
-    (home-page "https://github.com/nodejs/http-parser")
     (synopsis "HTTP request/response parser for C")
     (description "This is a parser for HTTP messages written in C.  It parses
 both requests and responses.  The parser is designed to be used in
diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm
index 17e0b853e0..b0cba94c00 100644
--- a/gnu/packages/wine.scm
+++ b/gnu/packages/wine.scm
@@ -224,48 +224,48 @@ integrate Windows applications into your desktop.")
 
 (define-public wine-staging-patchset-data
   (package
-   (name "wine-staging-patchset-data")
-   (version "4.0-rc5")
-   (source
-    (origin
-      (method git-fetch)
-      (uri (git-reference
-            (url "https://github.com/wine-staging/wine-staging")
-            (commit (string-append "v" version))))
-      (file-name (git-file-name name version))
-      (sha256
-       (base32
-        "0smp6ngs77vk1yg0saavhhn7kmi9ri8y8gc3vcgg837ycwg5i5qb"))))
-   (build-system trivial-build-system)
-   (native-inputs
-    `(("bash" ,bash)
-      ("coreutils" ,coreutils)))
-   (arguments
-    `(#:modules ((guix build utils))
-      #:builder
-      (begin
-        (use-modules (guix build utils))
-        (let* ((build-directory ,(string-append name "-" version))
-               (source (assoc-ref %build-inputs "source"))
-               (bash (assoc-ref %build-inputs "bash"))
-               (coreutils (assoc-ref %build-inputs "coreutils"))
-               (out (assoc-ref %outputs "out"))
-               (wine-staging (string-append out "/share/wine-staging")))
-          (copy-recursively source build-directory)
-          (with-directory-excursion build-directory
-            (substitute* "patches/patchinstall.sh"
-              (("/bin/sh")
-               (string-append bash "/bin/sh")))
-            (substitute* "patches/gitapply.sh"
-              (("/usr/bin/env")
-               (string-append coreutils "/bin/env"))))
-          (copy-recursively build-directory wine-staging)
-          #t))))
-   (home-page "https://github.com/wine-staging")
-   (synopsis "Patchset for Wine")
-   (description
-    "wine-staging-patchset-data contains the patchset to build Wine-Staging.")
-   (license license:lgpl2.1+)))
+    (name "wine-staging-patchset-data")
+    (version "4.0-rc5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/wine-staging/wine-staging")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0smp6ngs77vk1yg0saavhhn7kmi9ri8y8gc3vcgg837ycwg5i5qb"))))
+    (build-system trivial-build-system)
+    (native-inputs
+     `(("bash" ,bash)
+       ("coreutils" ,coreutils)))
+    (arguments
+     `(#:modules ((guix build utils))
+       #:builder
+       (begin
+         (use-modules (guix build utils))
+         (let* ((build-directory ,(string-append name "-" version))
+                (source (assoc-ref %build-inputs "source"))
+                (bash (assoc-ref %build-inputs "bash"))
+                (coreutils (assoc-ref %build-inputs "coreutils"))
+                (out (assoc-ref %outputs "out"))
+                (wine-staging (string-append out "/share/wine-staging")))
+           (copy-recursively source build-directory)
+           (with-directory-excursion build-directory
+             (substitute* "patches/patchinstall.sh"
+               (("/bin/sh")
+                (string-append bash "/bin/sh")))
+             (substitute* "patches/gitapply.sh"
+               (("/usr/bin/env")
+                (string-append coreutils "/bin/env"))))
+           (copy-recursively build-directory wine-staging)
+           #t))))
+    (home-page "https://github.com/wine-staging")
+    (synopsis "Patchset for Wine")
+    (description
+     "wine-staging-patchset-data contains the patchset to build Wine-Staging.")
+    (license license:lgpl2.1+)))
 
 (define-public wine-staging
   (package
@@ -286,6 +286,7 @@ integrate Windows applications into your desktop.")
               ("ffmpeg" ,ffmpeg)
               ("gtk+" ,gtk+)
               ("libva" ,libva)
+              ("mesa" ,mesa)
               ("python" ,python)
               ("sdl2" ,sdl2)
               ("util-linux" ,util-linux) ; for hexdump
@@ -296,6 +297,27 @@ integrate Windows applications into your desktop.")
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         ;; Explicitely set the 32-bit version of vulkan-loader when installing
+         ;; to i686-linux or x86_64-linux.
+         ;; TODO: Add more JSON files as they become available in Mesa.
+         ,@(match (%current-system)
+             ((or "i686-linux" "x86_64-linux")
+              `((add-after 'install 'wrap-executable
+                  (lambda* (#:key inputs outputs #:allow-other-keys)
+                    (let* ((out (assoc-ref outputs "out"))
+                           (icd (string-append out "/share/vulkan/icd.d")))
+                      (mkdir-p icd)
+                      (copy-file (string-append (assoc-ref inputs "mesa")
+                                 "/share/vulkan/icd.d/radeon_icd.i686.json")
+                                 (string-append icd "/radeon_icd.i686.json"))
+                      (wrap-program (string-append out "/bin/wine-preloader")
+                                    `("VK_ICD_FILENAMES" ":" =
+                                      (,(string-append icd
+                                        "/radeon_icd.i686.json"))))
+                      #t)))))
+             (_
+              `())
+             )
          (add-before 'configure 'patch-source-wine-staging
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((source (assoc-ref %build-inputs "source"))
@@ -344,6 +366,34 @@ integrated into the main branch.")
              (string-append "libdir=" %output "/lib/wine64"))
        #:phases
        (modify-phases %standard-phases
+         ;; Explicitely set both the 64-bit and 32-bit versions of vulkan-loader
+         ;; when installing to x86_64-linux so both are available.
+         ;; TODO: Add more JSON files as they become available in Mesa.
+         ,@(match (%current-system)
+           ((or "x86_64-linux")
+             `((add-after 'copy-wine32-binaries 'wrap-executable
+               (lambda* (#:key inputs outputs #:allow-other-keys)
+                 (let* ((out (assoc-ref outputs "out")))
+                   (wrap-program (string-append out "/bin/wine-preloader")
+                                 `("VK_ICD_FILENAMES" ":" =
+                                   (,(string-append (assoc-ref inputs "mesa")
+                                     "/share/vulkan/icd.d/radeon_icd.x86_64.json" ":"
+                                     (assoc-ref inputs "mesa")
+                                     "/share/vulkan/icd.d/intel_icd.x86_64.json" ":"
+                                     (assoc-ref inputs "wine-staging")
+                                     "/share/vulkan/icd.d/radeon_icd.i686.json"))))
+                   (wrap-program (string-append out "/bin/wine64-preloader")
+                                 `("VK_ICD_FILENAMES" ":" =
+                                   (,(string-append (assoc-ref inputs "mesa")
+                                     "/share/vulkan/icd.d/radeon_icd.x86_64.json"
+                                     ":" (assoc-ref inputs "mesa")
+                                     "/share/vulkan/icd.d/intel_icd.x86_64.json"
+                                     ":" (assoc-ref inputs "wine-staging")
+                                     "/share/vulkan/icd.d/radeon_icd.i686.json"))))
+                   #t)))))
+           (_
+            `())
+           )
          (add-before 'configure 'patch-source-wine-staging
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((source (assoc-ref %build-inputs "source"))
@@ -359,7 +409,9 @@ integrated into the main branch.")
                ;; Copy the 32-bit binaries needed for WoW64.
                (copy-file (string-append wine32 "/bin/wine")
                           (string-append out "/bin/wine"))
-               (copy-file (string-append wine32 "/bin/wine-preloader")
+               ;; Copy the real 32-bit wine-preloader instead of the wrapped
+               ;; version.
+               (copy-file (string-append wine32 "/bin/.wine-preloader-real")
                           (string-append out "/bin/wine-preloader"))
                #t)))
          (add-after 'compress-documentation 'copy-wine32-manpage
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 993a2e59e4..4b758838e8 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -990,7 +990,7 @@ color temperature should be set to match the lamps in your room.")
 (define-public xscreensaver
   (package
     (name "xscreensaver")
-    (version "5.40")
+    (version "5.42")
     (source
      (origin
        (method url-fetch)
@@ -999,7 +999,7 @@ color temperature should be set to match the lamps in your room.")
                        version ".tar.gz"))
        (sha256
         (base32
-         "1q2sr7h6ps6d3hk8895g12rrcqiihjl7py1ly077ikv4866r181h"))))
+         "1qfbsnj7201d03vf0b2lzxmlcq4kvkvzp48r5gcgsjr17c1sl7a4"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f  ; no check target
@@ -1013,7 +1013,9 @@ color temperature should be set to match the lamps in your room.")
              #t)))
        #:configure-flags '("--with-pam" "--with-proc-interrupts"
                            "--without-readdisplay")
-       #:make-flags (list (string-append "AD_DIR="
+       ;; FIXME: Remove CFLAGS once our default compiler is GCC6 or later.
+       #:make-flags (list "CFLAGS=-std=c99"
+                          (string-append "AD_DIR="
                                          (assoc-ref %outputs "out")
                                          "/usr/lib/X11/app-defaults"))))
     (native-inputs
@@ -1105,7 +1107,7 @@ connectivity of the X server running on a particular @code{DISPLAY}.")
 (define-public rofi
   (package
     (name "rofi")
-    (version "1.5.1")
+    (version "1.5.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/DaveDavenport/rofi/"
@@ -1113,7 +1115,7 @@ connectivity of the X server running on a particular @code{DISPLAY}.")
                                   version "/rofi-" version ".tar.xz"))
               (sha256
                (base32
-                "0wx118banbwfqdwc5y44fkp3hxg97gj3vma16528slhy408hkg7i"))))
+                "17faa0rj8vqidrijwx9jrq0c29003n8v3izvc66yssfljgb8kcpj"))))
     (build-system gnu-build-system)
     (inputs
      `(("pango" ,pango)
@@ -1611,7 +1613,7 @@ colors on all monitors attached to an XRandR-capable X11 display server.")
     (synopsis "Set the color temperature of the screen")
     (description "@code{sct} is a lightweight utility to set the color
 temperature of the screen.")
-    (license license:bsd-3)))
+    (license (license:non-copyleft "file://sct.c")))) ; "OpenBSD" license
 
 (define-public wl-clipboard
   (package
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 67bdaef18c..8395a856fc 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
@@ -25,6 +25,7 @@
 
 (define-module (gnu services base)
   #:use-module (guix store)
+  #:use-module (guix deprecation)
   #:use-module (gnu services)
   #:use-module (gnu services shepherd)
   #:use-module (gnu system pam)
@@ -614,8 +615,9 @@ file systems, as well as corresponding @file{/etc/fstab} entries.")))
 generator (RNG) with the value recorded when the system was last shut
 down.")))
 
-(define (urandom-seed-service)                    ;deprecated
-  (service urandom-seed-service-type #f))
+(define-deprecated (urandom-seed-service)
+  urandom-seed-service-type
+  (service urandom-seed-service-type))
 
 
 ;;;
@@ -1686,7 +1688,9 @@ failed to register public key '~a': ~a~%" key status)))))))
    (description
     "Run the build daemon of GNU@tie{}Guix, aka. @command{guix-daemon}.")))
 
-(define* (guix-service #:optional (config %default-guix-configuration))
+(define-deprecated (guix-service #:optional
+                                 (config %default-guix-configuration))
+  guix-service-type
   "Return a service that runs the Guix build daemon according to
 @var{config}."
   (service guix-service-type config))
@@ -1787,7 +1791,9 @@ failed to register public key '~a': ~a~%" key status)))))))
                  "Add a Shepherd service running @command{guix publish}, a
 command that allows you to share pre-built binaries with others over HTTP.")))
 
-(define* (guix-publish-service #:key (guix guix) (port 80) (host "localhost"))
+(define-deprecated (guix-publish-service #:key (guix guix)
+                                         (port 80) (host "localhost"))
+  guix-publish-service-type
   "Return a service that runs @command{guix publish} listening on @var{host}
 and @var{port} (@pxref{Invoking guix publish}).
 
@@ -2078,8 +2084,9 @@ command-line options.  GPM allows users to use the mouse in the console,
 notably to select, copy, and paste text.  The default options use the
 @code{ps2} protocol, which works for both USB and PS/2 mice.")))
 
-(define* (gpm-service #:key (gpm gpm)             ;deprecated
-                      (options %default-gpm-options))
+(define-deprecated (gpm-service #:key (gpm gpm)
+                                (options %default-gpm-options))
+  gpm-service-type
   "Run @var{gpm}, the general-purpose mouse daemon, with the given
 command-line @var{options}.  GPM allows users to use the mouse in the console,
 notably to select, copy, and paste text.  The default value of @var{options}
diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm
new file mode 100644
index 0000000000..09fe3cc1c3
--- /dev/null
+++ b/gnu/services/docker.scm
@@ -0,0 +1,102 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu services docker)
+  #:use-module (gnu services)
+  #:use-module (gnu services configuration)
+  #:use-module (gnu services base)
+  #:use-module (gnu services dbus)
+  #:use-module (gnu services shepherd)
+  #:use-module (gnu system shadow)
+  #:use-module (gnu packages docker)
+  #:use-module (guix records)
+  #:use-module (guix gexp)
+  #:use-module (guix packages)
+
+  #:export (docker-configuration
+            docker-service-type))
+
+(define-configuration docker-configuration
+  (docker
+   (package docker)
+   "Docker daemon package.")
+  (containerd
+   (package containerd)
+   "containerd package."))
+
+(define %docker-accounts
+  (list (user-group (name "docker") (system? #t))))
+
+(define (%containerd-activation config)
+  (let ((state-dir "/var/lib/containerd"))
+    #~(begin
+        (use-modules (guix build utils))
+        (mkdir-p #$state-dir))))
+
+(define (%docker-activation config)
+  (%containerd-activation config)
+  (let ((state-dir "/var/lib/docker"))
+    #~(begin
+        (use-modules (guix build utils))
+        (mkdir-p #$state-dir))))
+
+(define (containerd-shepherd-service config)
+  (let* ((package (docker-configuration-containerd config)))
+    (shepherd-service
+           (documentation "containerd daemon.")
+           (provision '(containerd))
+           (start #~(make-forkexec-constructor
+                     (list (string-append #$package "/bin/containerd"))
+                     #:log-file "/var/log/containerd.log"))
+           (stop #~(make-kill-destructor)))))
+
+(define (docker-shepherd-service config)
+  (let* ((docker (docker-configuration-docker config)))
+    (shepherd-service
+           (documentation "Docker daemon.")
+           (provision '(dockerd))
+           (requirement '(containerd
+                          file-system-/sys/fs/cgroup/blkio
+                          file-system-/sys/fs/cgroup/cpu
+                          file-system-/sys/fs/cgroup/cpuset
+                          file-system-/sys/fs/cgroup/devices
+                          file-system-/sys/fs/cgroup/memory
+                          ; TODO: file-system-/sys/fs/cgroup/pids
+                          ))
+           (start #~(make-forkexec-constructor
+                     (list (string-append #$docker "/bin/dockerd")
+                           "-p" "/var/run/docker.pid")
+                     #:pid-file "/var/run/docker.pid"
+                     #:log-file "/var/log/docker.log"))
+           (stop #~(make-kill-destructor)))))
+
+(define docker-service-type
+  (service-type (name 'docker)
+                (description "Provide capability to run Docker application
+bundles in Docker containers.")
+                (extensions
+                 (list
+                  (service-extension activation-service-type
+                                     %docker-activation)
+                  (service-extension shepherd-root-service-type
+                                     (lambda (config)
+                                       (list (containerd-shepherd-service config)
+                                             (docker-shepherd-service config))))
+                  (service-extension account-service-type
+                                     (const %docker-accounts))))
+                (default-value (docker-configuration))))
diff --git a/gnu/services/mcron.scm b/gnu/services/mcron.scm
index 120b663e3e..e4b652b3d4 100644
--- a/gnu/services/mcron.scm
+++ b/gnu/services/mcron.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -21,6 +21,7 @@
   #:use-module (gnu services base)
   #:use-module (gnu services shepherd)
   #:autoload   (gnu packages guile) (mcron)
+  #:use-module (guix deprecation)
   #:use-module (guix records)
   #:use-module (guix gexp)
   #:use-module (srfi srfi-1)
@@ -142,7 +143,8 @@ files."
                                          jobs)))))
                 (default-value (mcron-configuration)))) ;empty job list
 
-(define* (mcron-service jobs #:optional (mcron mcron))
+(define-deprecated (mcron-service jobs #:optional (mcron mcron))
+  mcron-service-type
   "Return an mcron service running @var{mcron} that schedules @var{jobs}, a
 list of gexps denoting mcron job specifications.
 
diff --git a/gnu/services/messaging.scm b/gnu/services/messaging.scm
index 92f86a1b83..e70f1b70ef 100644
--- a/gnu/services/messaging.scm
+++ b/gnu/services/messaging.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
-;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -32,6 +32,7 @@
   #:use-module (guix modules)
   #:use-module (guix records)
   #:use-module (guix packages)
+  #:use-module (guix deprecation)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-35)
   #:use-module (ice-9 match)
@@ -882,9 +883,10 @@ string, you could instantiate a prosody service like this:
                  "Run @url{http://bitlbee.org,BitlBee}, a daemon that acts as
 a gateway between IRC and chat networks.")))
 
-(define* (bitlbee-service #:key (bitlbee bitlbee) ;deprecated
-                          (interface "127.0.0.1") (port 6667)
-                          (extra-settings ""))
+(define-deprecated (bitlbee-service #:key (bitlbee bitlbee)
+                                    (interface "127.0.0.1") (port 6667)
+                                    (extra-settings ""))
+  bitlbee-service-type
   "Return a service that runs @url{http://bitlbee.org,BitlBee}, a daemon that
 acts as a gateway between IRC and chat networks.
 
diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm
index bfa6e297e6..cab129e0c3 100644
--- a/gnu/services/networking.scm
+++ b/gnu/services/networking.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
@@ -45,6 +45,7 @@
   #:use-module (guix gexp)
   #:use-module (guix records)
   #:use-module (guix modules)
+  #:use-module (guix deprecation)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-9)
   #:use-module (srfi srfi-26)
@@ -206,7 +207,8 @@ fe80::1%lo0 apps.facebook.com\n")
       (stop #~(make-kill-destructor))))
    isc-dhcp))
 
-(define* (dhcp-client-service #:key (dhcp isc-dhcp)) ;deprecated
+(define-deprecated (dhcp-client-service #:key (dhcp isc-dhcp))
+  dhcp-client-service-type
   "Return a service that runs @var{dhcp}, a Dynamic Host Configuration
 Protocol (DHCP) client, on all the non-loopback network interfaces."
   (service dhcp-client-service-type dhcp))
@@ -374,9 +376,10 @@ daemon of the @uref{http://www.ntp.org, Network Time Foundation}.  The daemon
 will keep the system clock synchronized with that of the given servers.")
                 (default-value (ntp-configuration))))
 
-(define* (ntp-service #:key (ntp ntp)             ;deprecated
-                      (servers %ntp-servers)
-                      allow-large-adjustment?)
+(define-deprecated (ntp-service #:key (ntp ntp)
+                                (servers %ntp-servers)
+                                allow-large-adjustment?)
+  ntp-service-type
   "Return a service that runs the daemon from @var{ntp}, the
 @uref{http://www.ntp.org, Network Time Protocol package}.  The daemon will
 keep the system clock synchronized with that of @var{servers}.
@@ -752,9 +755,10 @@ HiddenServicePort ~a ~a~%"
                  "Run the @uref{https://torproject.org, Tor} anonymous
 networking daemon.")))
 
-(define* (tor-service #:optional
-                      (config-file (plain-file "empty" ""))
-                      #:key (tor tor))
+(define-deprecated (tor-service #:optional
+                                (config-file (plain-file "empty" ""))
+                                #:key (tor tor))
+  tor-service-type
   "Return a service to run the @uref{https://torproject.org, Tor} anonymous
 networking daemon.
 
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index b3c24746d1..2f91619219 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
-;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2018 Timothy Sample <samplet@ngyro.com>
 ;;;
@@ -40,6 +40,7 @@
   #:use-module (guix packages)
   #:use-module (guix derivations)
   #:use-module (guix records)
+  #:use-module (guix deprecation)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-9)
   #:use-module (srfi srfi-26)
@@ -521,14 +522,15 @@ reboot_cmd " shepherd "/sbin/reboot\n"
                                           (const (list xterm)))))
                 (default-value (slim-configuration))))
 
-(define* (slim-service #:key (slim slim)          ;deprecated
-                       (allow-empty-passwords? #t) auto-login?
-                       (default-user "")
-                       (theme %default-slim-theme)
-                       (theme-name %default-slim-theme-name)
-                       (xauth xauth) (shepherd shepherd)
-                       (auto-login-session #f)
-                       (startx (xorg-start-command)))
+(define-deprecated (slim-service #:key (slim slim)
+                                 (allow-empty-passwords? #t) auto-login?
+                                 (default-user "")
+                                 (theme %default-slim-theme)
+                                 (theme-name %default-slim-theme-name)
+                                 (xauth xauth) (shepherd shepherd)
+                                 (auto-login-session #f)
+                                 (startx (xorg-start-command)))
+  slim-service-type
   "Return a service that spawns the SLiM graphical login manager, which in
 turn starts the X display server with @var{startx}, a command as returned by
 @code{xorg-start-command}.
@@ -628,7 +630,8 @@ makes the good ol' XlockMore usable."
   (allow-empty-passwords? gdm-configuration-allow-empty-passwords? (default #t))
   (auto-login? gdm-configuration-auto-login? (default #f))
   (default-user gdm-configuration-default-user (default #f))
-  (x-server gdm-configuration-x-server))
+  (x-server gdm-configuration-x-server
+            (default (xorg-wrapper))))
 
 (define (gdm-etc-service config)
   (define gdm-configuration-file
@@ -719,14 +722,20 @@ makes the good ol' XlockMore usable."
                        (service-extension etc-service-type
                                           gdm-etc-service)
                        (service-extension dbus-root-service-type
-                                          (compose list gdm-configuration-gdm))))))
+                                          (compose list
+                                                   gdm-configuration-gdm))))
+                (default-value (gdm-configuration))
+                (description
+                 "Run the GNOME Desktop Manager (GDM), a program that allows
+you to log in in a graphical session, whether or not you use GNOME.")))
 
 ;; This service isn't working yet; it gets as far as starting to run the
 ;; greeter from gnome-shell but doesn't get any further.  It is here because
 ;; it doesn't hurt anyone and perhaps it inspires someone to fix it :)
-(define* (gdm-service #:key (gdm gdm)
-                       (allow-empty-passwords? #t)
-                       (x-server (xorg-wrapper)))
+(define-deprecated (gdm-service #:key (gdm gdm)
+                                (allow-empty-passwords? #t)
+                                (x-server (xorg-wrapper)))
+  gdm-service-type
   "Return a service that spawns the GDM graphical login manager, which in turn
 starts the X display server with @var{X}, a command as returned by
 @code{xorg-wrapper}.
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index c345ba0626..19a6f6a038 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -253,7 +253,8 @@ You have been warned.  Thanks for being so brave.\x1b[0m
           ;; The build daemon.  Register the official server keys as trusted.
           ;; This allows the installation process to use substitutes by
           ;; default.
-          (guix-service (guix-configuration (authorize-key? #t)))
+          (service guix-service-type
+                   (guix-configuration (authorize-key? #t)))
 
           ;; Start udev so that useful device nodes are available.
           ;; Use device-mapper rules for cryptsetup & co; enable the CRDA for
diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm
index 8d4e218a8f..2b20aac1dc 100644
--- a/gnu/tests/base.scm
+++ b/gnu/tests/base.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -627,7 +627,8 @@ non-ASCII names from /tmp.")
         (job3 #~(job next-second-from             ;to test $PATH
                      "touch witness-touch")))
     (simple-operating-system
-     (mcron-service (list job1 job2 job3)))))
+     (service mcron-service-type
+              (mcron-configuration (jobs (list job1 job2 job3)))))))
 
 (define (run-mcron-test name)
   (define os
diff --git a/gnu/tests/docker.scm b/gnu/tests/docker.scm
new file mode 100644
index 0000000000..453ed4893d
--- /dev/null
+++ b/gnu/tests/docker.scm
@@ -0,0 +1,99 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2019 Danny Milosavljevic <dannym@scratchpost.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu tests docker)
+  #:use-module (gnu tests)
+  #:use-module (gnu system)
+  #:use-module (gnu system file-systems)
+  #:use-module (gnu system vm)
+  #:use-module (gnu services)
+  #:use-module (gnu services dbus)
+  #:use-module (gnu services networking)
+  #:use-module (gnu services docker)
+  #:use-module (gnu services desktop)
+  #:use-module (gnu packages docker)
+  #:use-module (guix gexp)
+  #:use-module (guix store)
+  #:export (%test-docker))
+
+(define %docker-os
+  (simple-operating-system
+   (service dhcp-client-service-type)
+   (dbus-service)
+   (polkit-service)
+   (service elogind-service-type)
+   (service docker-service-type)))
+
+(define (run-docker-test)
+  "Run tests in %DOCKER-OS."
+  (define os
+    (marionette-operating-system
+     %docker-os
+     #:imported-modules '((gnu services herd)
+                          (guix combinators))))
+
+  (define vm
+    (virtual-machine
+     (operating-system os)
+     (memory-size 500)
+     (disk-image-size (* 250 (expt 2 20)))
+     (port-forwardings '())))
+
+  (define test
+    (with-imported-modules '((gnu build marionette))
+      #~(begin
+          (use-modules (srfi srfi-11) (srfi srfi-64)
+                       (gnu build marionette))
+
+          (define marionette
+            (make-marionette (list #$vm)))
+
+          (mkdir #$output)
+          (chdir #$output)
+
+          (test-begin "docker")
+
+          (test-assert "service running"
+            (marionette-eval
+             '(begin
+                (use-modules (gnu services herd))
+                (match (start-service 'dockerd)
+                  (#f #f)
+                  (('service response-parts ...)
+                   (match (assq-ref response-parts 'running)
+                     ((pid) (number? pid))))))
+             marionette))
+
+          (test-eq "fetch version"
+            0
+            (marionette-eval
+             `(begin
+                (system* ,(string-append #$docker-cli "/bin/docker")
+                         "version"))
+             marionette))
+
+          (test-end)
+          (exit (= (test-runner-fail-count (test-runner-current)) 0)))))
+
+  (gexp->derivation "docker-test" test))
+
+(define %test-docker
+  (system-test
+   (name "docker")
+   (description "Connect to the running Docker service.")
+   (value (run-docker-test))))
diff --git a/gnu/tests/networking.scm b/gnu/tests/networking.scm
index 9f12a4ae8d..a97b29bc4b 100644
--- a/gnu/tests/networking.scm
+++ b/gnu/tests/networking.scm
@@ -351,7 +351,7 @@ subnet 192.168.1.0 netmask 255.255.255.0 {
 
 (define %tor-os
   (simple-operating-system
-   (tor-service)))
+   (service tor-service-type)))
 
 (define %tor-os/unix-socks-socket
   (simple-operating-system