summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/artwork.scm4
-rw-r--r--gnu/build/accounts.scm561
-rw-r--r--gnu/build/activation.scm274
-rw-r--r--gnu/build/install.scm3
-rw-r--r--gnu/build/linux-modules.scm29
-rw-r--r--gnu/local.mk9
-rw-r--r--gnu/packages/admin.scm11
-rw-r--r--gnu/packages/aux-files/linux-libre/5.0-arm.conf (renamed from gnu/packages/aux-files/linux-libre/4.20-arm.conf)296
-rw-r--r--gnu/packages/aux-files/linux-libre/5.0-arm64.conf (renamed from gnu/packages/aux-files/linux-libre/4.20-arm64.conf)418
-rw-r--r--gnu/packages/aux-files/linux-libre/5.0-i686.conf (renamed from gnu/packages/aux-files/linux-libre/4.20-i686.conf)342
-rw-r--r--gnu/packages/aux-files/linux-libre/5.0-x86_64.conf (renamed from gnu/packages/aux-files/linux-libre/4.20-x86_64.conf)330
-rw-r--r--gnu/packages/benchmark.scm27
-rw-r--r--gnu/packages/bioconductor.scm476
-rw-r--r--gnu/packages/bioinformatics.scm685
-rw-r--r--gnu/packages/bootloaders.scm8
-rw-r--r--gnu/packages/code.scm6
-rw-r--r--gnu/packages/compression.scm10
-rw-r--r--gnu/packages/cran.scm365
-rw-r--r--gnu/packages/cups.scm6
-rw-r--r--gnu/packages/emacs-xyz.scm4
-rw-r--r--gnu/packages/emacs.scm6
-rw-r--r--gnu/packages/embedded.scm6
-rw-r--r--gnu/packages/engineering.scm47
-rw-r--r--gnu/packages/finance.scm8
-rw-r--r--gnu/packages/fonts.scm53
-rw-r--r--gnu/packages/fontutils.scm4
-rw-r--r--gnu/packages/freedesktop.scm4
-rw-r--r--gnu/packages/games.scm192
-rw-r--r--gnu/packages/geo.scm4
-rw-r--r--gnu/packages/gimp.scm4
-rw-r--r--gnu/packages/gl.scm7
-rw-r--r--gnu/packages/glib.scm4
-rw-r--r--gnu/packages/gnome.scm752
-rw-r--r--gnu/packages/gnunet.scm16
-rw-r--r--gnu/packages/golang.scm4
-rw-r--r--gnu/packages/graph.scm6
-rw-r--r--gnu/packages/gtk.scm70
-rw-r--r--gnu/packages/guile-xyz.scm97
-rw-r--r--gnu/packages/hyperledger.scm93
-rw-r--r--gnu/packages/ibus.scm10
-rw-r--r--gnu/packages/java.scm64
-rw-r--r--gnu/packages/linux.scm210
-rw-r--r--gnu/packages/machine-learning.scm23
-rw-r--r--gnu/packages/mail.scm210
-rw-r--r--gnu/packages/man.scm29
-rw-r--r--gnu/packages/maths.scm21
-rw-r--r--gnu/packages/mpd.scm4
-rw-r--r--gnu/packages/music.scm50
-rw-r--r--gnu/packages/networking.scm3
-rw-r--r--gnu/packages/package-management.scm8
-rw-r--r--gnu/packages/patches/blast+-fix-makefile.patch15
-rw-r--r--gnu/packages/patches/gcr-disable-failing-tests.patch126
-rw-r--r--gnu/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch31
-rw-r--r--gnu/packages/patches/gnome-todo-libical-compat.patch17
-rw-r--r--gnu/packages/patches/rust-1.30-gdb-llvm.patch89
-rw-r--r--gnu/packages/patches/valgrind-glibc-compat.patch18
-rw-r--r--gnu/packages/perl.scm26
-rw-r--r--gnu/packages/php.scm11
-rw-r--r--gnu/packages/python-xyz.scm17
-rw-r--r--gnu/packages/ruby.scm227
-rw-r--r--gnu/packages/rust.scm83
-rw-r--r--gnu/packages/scanner.scm28
-rw-r--r--gnu/packages/search.scm6
-rw-r--r--gnu/packages/statistics.scm125
-rw-r--r--gnu/packages/syncthing.scm4
-rw-r--r--gnu/packages/terminals.scm7
-rw-r--r--gnu/packages/tex.scm74
-rw-r--r--gnu/packages/uml.scm7
-rw-r--r--gnu/packages/valgrind.scm23
-rw-r--r--gnu/packages/version-control.scm4
-rw-r--r--gnu/packages/video.scm103
-rw-r--r--gnu/packages/vim.scm7
-rw-r--r--gnu/packages/virtualization.scm12
-rw-r--r--gnu/packages/vpn.scm8
-rw-r--r--gnu/packages/vulkan.scm292
-rw-r--r--gnu/packages/wget.scm90
-rw-r--r--gnu/packages/wm.scm33
-rw-r--r--gnu/packages/xdisorg.scm57
-rw-r--r--gnu/packages/xorg.scm12
-rw-r--r--gnu/services/dbus.scm8
-rw-r--r--gnu/system/accounts.scm109
-rw-r--r--gnu/system/shadow.scm96
-rw-r--r--gnu/tests/base.scm6
83 files changed, 5054 insertions, 2590 deletions
diff --git a/gnu/artwork.scm b/gnu/artwork.scm
index 021aaa570b..b95f5cbf8a 100644
--- a/gnu/artwork.scm
+++ b/gnu/artwork.scm
@@ -29,7 +29,7 @@
 ;;; Code:
 
 (define %artwork-repository
-  (let ((commit "e951905f79dcc92fba9cd05d9190afa3ee2d1d50"))
+  (let ((commit "b975164c19c9c0f5d91e5731ec1683e7510c1326"))
     (origin
       (method git-fetch)
       (uri (git-reference
@@ -39,6 +39,6 @@
                                 "-checkout"))
       (sha256
        (base32
-        "1d79ackvs3bqk43ff91457qmdb6g4nwfknzs3dyrhni1ynk1i976")))))
+        "1fad7az077q9ds3jhp00jfsr8rfw4ws042wmnai52k7jv4kbxwyf")))))
 
 ;;; artwork.scm ends here
diff --git a/gnu/build/accounts.scm b/gnu/build/accounts.scm
new file mode 100644
index 0000000000..6b44ab610b
--- /dev/null
+++ b/gnu/build/accounts.scm
@@ -0,0 +1,561 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.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 build accounts)
+  #:use-module (guix records)
+  #:use-module (guix combinators)
+  #:use-module (gnu system accounts)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-11)
+  #:use-module (srfi srfi-19)
+  #:use-module (srfi srfi-26)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 vlist)
+  #:use-module (ice-9 rdelim)
+  #:export (password-entry
+            password-entry?
+            password-entry-name
+            password-entry-uid
+            password-entry-gid
+            password-entry-real-name
+            password-entry-directory
+            password-entry-shell
+
+            shadow-entry
+            shadow-entry?
+            shadow-entry-name
+            shadow-entry-minimum-change-period
+            shadow-entry-maximum-change-period
+            shadow-entry-change-warning-time
+            shadow-entry-maximum-inactivity
+            shadow-entry-expiration
+
+            group-entry
+            group-entry?
+            group-entry-name
+            group-entry-gid
+            group-entry-members
+
+            write-group
+            write-passwd
+            write-shadow
+            read-group
+            read-passwd
+            read-shadow
+
+            %id-min
+            %id-max
+            %system-id-min
+            %system-id-max
+
+            user+group-databases))
+
+;;; Commentary:
+;;;
+;;; This modules provides functionality equivalent to the C library's
+;;; <shadow.h>, <pwd.h>, and <grp.h> routines, as well as a subset of the
+;;; functionality of the Shadow command-line tools.  It can parse and write
+;;; /etc/passwd, /etc/shadow, and /etc/group.  It can also take care of UID
+;;; and GID allocation in a way similar to what 'useradd' does.
+;;;
+;;; The benefit is twofold: less code is involved, and the ID allocation
+;;; strategy and state preservation is made explicit.
+;;;
+;;; Code:
+
+
+;;;
+;;; Machinery to define user and group databases.
+;;;
+
+(define-syntax serialize-field
+  (syntax-rules (serialization)
+    ((_ entry (field get (serialization ->string string->) _ ...))
+     (->string (get entry)))
+    ((_ entry (field get _ ...))
+     (get entry))))
+
+(define-syntax deserialize-field
+  (syntax-rules (serialization)
+    ((_ str (field get (serialization ->string string->) _ ...))
+     (string-> str))
+    ((_ str (field get _ ...))
+     str)))
+
+(define-syntax let/fields
+  (syntax-rules ()
+    ((_ (((name get attributes ...) rest ...) lst) body ...)
+     (let ((l lst))
+       (let ((name (deserialize-field (car l)
+                                      (name get attributes ...))))
+         (let/fields ((rest ...) (cdr l)) body ...))))
+    ((_ (() lst) body ...)
+     (begin body ...))))
+
+(define-syntax define-database-entry
+  (syntax-rules (serialization)
+    "Define a record data type, as per 'define-record-type*', with additional
+information on how to serialize and deserialize the whole database as well as
+each field."
+    ((_ <record> record make-record record?
+        (serialization separator entry->string string->entry)
+        fields ...)
+     (let-syntax ((field-name
+                   (syntax-rules ()
+                     ((_ (name _ (... ...))) name))))
+       (define-record-type* <record> record make-record
+         record?
+         fields ...)
+
+       (define (entry->string entry)
+         (string-join (list (serialize-field entry fields) ...)
+                      (string separator)))
+
+       (define (string->entry str)
+         (let/fields ((fields ...) (string-split str #\:))
+                     (make-record (field-name fields) ...)))))))
+
+
+(define number->string*
+  (match-lambda
+    ((? number? number) (number->string number))
+    (_ "")))
+
+(define (false-if-string=? false-string)
+  (lambda (str)
+    (if (string=? str false-string)
+        #f
+        str)))
+
+(define (string-if-false str)
+  (lambda (obj)
+    (if (not obj) str obj)))
+
+(define (comma-separated->list str)
+  (string-tokenize str (char-set-complement (char-set #\,))))
+
+(define (list->comma-separated lst)
+  (string-join lst ","))
+
+
+;;;
+;;; Database definitions.
+;;;
+
+(define-database-entry <password-entry>           ;<pwd.h>
+  password-entry make-password-entry
+  password-entry?
+  (serialization #\: password-entry->string string->password-entry)
+
+  (name       password-entry-name)
+  (password   password-entry-password
+              (serialization (const "x") (const #f))
+              (default "x"))
+  (uid        password-entry-uid
+              (serialization number->string string->number))
+  (gid        password-entry-gid
+              (serialization number->string string->number))
+  (real-name  password-entry-real-name
+              (default ""))
+  (directory  password-entry-directory)
+  (shell      password-entry-shell
+              (default "/bin/sh")))
+
+(define-database-entry <shadow-entry>             ;<shadow.h>
+  shadow-entry make-shadow-entry
+  shadow-entry?
+  (serialization #\: shadow-entry->string string->shadow-entry)
+
+  (name                  shadow-entry-name)       ;string
+  (password              shadow-entry-password    ;string | #f
+                         (serialization (string-if-false "!")
+                                        (false-if-string=? "!"))
+                         (default #f))
+  (last-change           shadow-entry-last-change ;days since 1970-01-01
+                         (serialization number->string* string->number)
+                         (default 0))
+  (minimum-change-period shadow-entry-minimum-change-period
+                         (serialization number->string* string->number)
+                         (default #f))            ;days | #f
+  (maximum-change-period shadow-entry-maximum-change-period
+                         (serialization number->string* string->number)
+                         (default #f))            ;days | #f
+  (change-warning-time   shadow-entry-change-warning-time
+                         (serialization number->string* string->number)
+                         (default #f))            ;days | #f
+  (maximum-inactivity    shadow-entry-maximum-inactivity
+                         (serialization number->string* string->number)
+                         (default #f))             ;days | #f
+  (expiration            shadow-entry-expiration
+                         (serialization number->string* string->number)
+                         (default #f))            ;days since 1970-01-01 | #f
+  (flags                 shadow-entry-flags       ;"reserved"
+                         (serialization number->string* string->number)
+                         (default #f)))
+
+(define-database-entry <group-entry>              ;<grp.h>
+  group-entry make-group-entry
+  group-entry?
+  (serialization #\: group-entry->string string->group-entry)
+
+  (name            group-entry-name)
+  (password        group-entry-password
+                   (serialization (string-if-false "x")
+                                  (false-if-string=? "x"))
+                   (default #f))
+  (gid             group-entry-gid
+                   (serialization number->string string->number))
+  (members         group-entry-members
+                   (serialization list->comma-separated comma-separated->list)
+                   (default '())))
+
+(define (database-writer file mode entry->string)
+  (lambda* (entries #:optional (file-or-port file))
+    "Write ENTRIES to FILE-OR-PORT.  When FILE-OR-PORT is a file name, write
+to it atomically and set the appropriate permissions."
+    (define (write-entries port)
+      (for-each (lambda (entry)
+                  (display (entry->string entry) port)
+                  (newline port))
+                entries))
+
+    (if (port? file-or-port)
+        (write-entries file-or-port)
+        (let* ((template (string-append file-or-port ".XXXXXX"))
+               (port     (mkstemp! template)))
+          (dynamic-wind
+            (const #t)
+            (lambda ()
+              (chmod port mode)
+              (write-entries port)
+              (rename-file template file-or-port))
+            (lambda ()
+              (close-port port)
+              (when (file-exists? template)
+                (delete-file template))))))))
+
+(define write-passwd
+  (database-writer "/etc/passwd" #o644 password-entry->string))
+(define write-shadow
+  (database-writer "/etc/shadow" #o600 shadow-entry->string))
+(define write-group
+  (database-writer "/etc/group" #o644 group-entry->string))
+
+(define (database-reader file string->entry)
+  (lambda* (#:optional (file-or-port file))
+    (define (read-entries port)
+      (let loop ((entries '()))
+        (match (read-line port)
+          ((? eof-object?)
+           (reverse entries))
+          (line
+           (loop (cons (string->entry line) entries))))))
+
+    (if (port? file-or-port)
+        (read-entries file-or-port)
+        (call-with-input-file file-or-port
+          read-entries))))
+
+(define read-passwd
+  (database-reader "/etc/passwd" string->password-entry))
+(define read-shadow
+  (database-reader "/etc/shadow" string->shadow-entry))
+(define read-group
+  (database-reader "/etc/group" string->group-entry))
+
+
+;;;
+;;; Building databases.
+;;;
+
+(define-record-type* <allocation>
+  allocation make-allocation
+  allocation?
+  (ids            allocation-ids (default vlist-null))
+  (next-id        allocation-next-id (default %id-min))
+  (next-system-id allocation-next-system-id (default %system-id-max)))
+
+;; Trick to avoid name clashes...
+(define-syntax %allocation (identifier-syntax allocation))
+
+;; Minimum and maximum UIDs and GIDs (from find_new_uid.c and find_new_gid.c
+;; in Shadow.)
+(define %id-min 1000)
+(define %id-max 60000)
+
+(define %system-id-min 100)
+(define %system-id-max 999)
+
+(define (system-id? id)
+  (and (> id %system-id-min)
+       (<= id %system-id-max)))
+
+(define (user-id? id)
+  (and (>= id %id-min)
+       (< id %id-max)))
+
+(define* (allocate-id assignment #:key system?)
+  "Return two values: a newly allocated ID, and an updated <allocation> record
+based on ASSIGNMENT.  If SYSTEM? is true, return a system ID."
+  (define next
+    ;; Return the next available ID, looping if necessary.
+    (if system?
+        (lambda (id)
+          (let ((next-id (- id 1)))
+            (if (< next-id %system-id-min)
+                %system-id-max
+                next-id)))
+        (lambda (id)
+          (let ((next-id (+ id 1)))
+            (if (>= next-id %id-max)
+                %id-min
+                next-id)))))
+
+  (let loop ((id (if system?
+                     (allocation-next-system-id assignment)
+                     (allocation-next-id assignment))))
+    (if (vhash-assv id (allocation-ids assignment))
+        (loop (next id))
+        (let ((taken (vhash-consv id #t (allocation-ids assignment))))
+          (values (if system?
+                      (allocation (inherit assignment)
+                                  (next-system-id (next id))
+                                  (ids taken))
+                      (allocation (inherit assignment)
+                                  (next-id (next id))
+                                  (ids taken)))
+                  id)))))
+
+(define* (reserve-ids allocation ids #:key (skip? #t))
+  "Mark the numbers listed in IDS as reserved in ALLOCATION.  When SKIP? is
+true, start allocation after the highest (or lowest, depending on whether it's
+a system ID allocation) number among IDS."
+  (%allocation
+   (inherit allocation)
+   (next-id (if skip?
+                (+ (reduce max
+                           (- (allocation-next-id allocation) 1)
+                           (filter user-id? ids))
+                   1)
+                (allocation-next-id allocation)))
+   (next-system-id
+    (if skip?
+        (- (reduce min
+                   (+ 1 (allocation-next-system-id allocation))
+                   (filter system-id? ids))
+           1)
+        (allocation-next-system-id allocation)))
+   (ids (fold (cut vhash-consv <> #t <>)
+              (allocation-ids allocation)
+              ids))))
+
+(define (allocated? allocation id)
+  "Return true if ID is already allocated as part of ALLOCATION."
+  (->bool (vhash-assv id (allocation-ids allocation))))
+
+(define (lookup-procedure lst key)
+  "Return a lookup procedure for the elements of LST, calling KEY to obtain
+the key of each element."
+  (let ((table (fold (lambda (obj table)
+                       (vhash-cons (key obj) obj table))
+                     vlist-null
+                     lst)))
+    (lambda (key)
+      (match (vhash-assoc key table)
+        (#f #f)
+        ((_ . value) value)))))
+
+(define* (allocate-groups groups members
+                          #:optional (current-groups '()))
+  "Return a list of group entries for GROUPS, a list of <user-group>.  Members
+for each group are taken from MEMBERS, a vhash that maps group names to member
+names.  GIDs and passwords found in CURRENT-GROUPS, a list of group entries,
+are reused."
+  (define gids
+    ;; Mark all the currently-used GIDs and the explicitly requested GIDs as
+    ;; reserved.
+    (reserve-ids (reserve-ids (allocation)
+                              (map group-entry-gid current-groups))
+                 (filter-map user-group-id groups)
+                 #:skip? #f))
+
+  (define previous-entry
+    (lookup-procedure current-groups group-entry-name))
+
+  (reverse
+   (fold2 (lambda (group result allocation)
+            (let ((name         (user-group-name group))
+                  (password     (user-group-password group))
+                  (requested-id (user-group-id group))
+                  (system?      (user-group-system? group)))
+              (let*-values (((previous)
+                             (previous-entry name))
+                            ((allocation id)
+                             (cond
+                              ((number? requested-id)
+                               (values (reserve-ids allocation
+                                                    (list requested-id))
+                                       requested-id))
+                              (previous
+                               (values allocation
+                                       (group-entry-gid previous)))
+                              (else
+                               (allocate-id allocation
+                                            #:system? system?)))))
+                (values (cons (group-entry
+                               (name name)
+                               (password
+                                (if previous
+                                    (group-entry-password previous)
+                                    password))
+                               (gid id)
+                               (members (vhash-fold* cons '() name members)))
+                              result)
+                        allocation))))
+          '()
+          gids
+          groups)))
+
+(define* (allocate-passwd users groups #:optional (current-passwd '()))
+  "Return a list of password entries for USERS, a list of <user-account>.
+Take GIDs from GROUPS, a list of group entries.  Reuse UIDs from
+CURRENT-PASSWD, a list of password entries, when possible; otherwise allocate
+new UIDs."
+  (define uids
+    (reserve-ids (reserve-ids (allocation)
+                              (map password-entry-uid current-passwd))
+                 (filter-map user-account-uid users)
+                 #:skip? #f))
+
+  (define previous-entry
+    (lookup-procedure current-passwd password-entry-name))
+
+  (define (group-id name)
+    (or (any (lambda (entry)
+               (and (string=? (group-entry-name entry) name)
+                    (group-entry-gid entry)))
+             groups)
+        (error "group not found" name)))
+
+  (reverse
+   (fold2 (lambda (user result allocation)
+            (let ((name         (user-account-name user))
+                  (requested-id (user-account-uid user))
+                  (group        (user-account-group user))
+                  (real-name    (user-account-comment user))
+                  (directory    (user-account-home-directory user))
+                  (shell        (user-account-shell user))
+                  (system?      (user-account-system? user)))
+              (let*-values (((previous)
+                             (previous-entry name))
+                            ((allocation id)
+                             (cond
+                              ((number? requested-id)
+                               (values (reserve-ids allocation
+                                                    (list requested-id))
+                                       requested-id))
+                              (previous
+                               (values allocation
+                                       (password-entry-uid previous)))
+                              (else
+                               (allocate-id allocation
+                                            #:system? system?)))))
+                (values (cons (password-entry
+                               (name name)
+                               (uid id)
+                               (directory directory)
+                               (gid (if (number? group) group (group-id group)))
+                               (real-name (if previous
+                                              (password-entry-real-name previous)
+                                              real-name))
+                               (shell (if previous
+                                          (password-entry-shell previous)
+                                          shell)))
+                              result)
+                        allocation))))
+          '()
+          uids
+          users)))
+
+(define* (days-since-epoch #:optional (current-time current-time))
+  "Return the number of days elapsed since the 1st of January, 1970."
+  (let* ((now   (current-time time-utc))
+         (epoch (make-time time-utc 0 0))
+         (diff  (time-difference now epoch)))
+    (quotient (time-second diff) (* 24 3600))))
+
+(define* (passwd->shadow users passwd #:optional (current-shadow '())
+                         #:key (current-time current-time))
+  "Return a list of shadow entries for the password entries listed in PASSWD.
+Reuse shadow entries from CURRENT-SHADOW when they exist, and take the initial
+password from USERS."
+  (define previous-entry
+    (lookup-procedure current-shadow shadow-entry-name))
+
+  (define now
+    (days-since-epoch current-time))
+
+  (map (lambda (user passwd)
+         (or (previous-entry (password-entry-name passwd))
+             (shadow-entry (name (password-entry-name passwd))
+                           (password (user-account-password user))
+                           (last-change now))))
+       users passwd))
+
+(define (empty-if-not-found thunk)
+  "Call THUNK and return the empty list if that throws to ENOENT."
+  (catch 'system-error
+    thunk
+    (lambda args
+      (if (= ENOENT (system-error-errno args))
+          '()
+          (apply throw args)))))
+
+(define* (user+group-databases users groups
+                               #:key
+                               (current-passwd
+                                (empty-if-not-found read-passwd))
+                               (current-groups
+                                (empty-if-not-found read-group))
+                               (current-shadow
+                                (empty-if-not-found read-shadow))
+                               (current-time current-time))
+  "Return three values: the list of group entries, the list of password
+entries, and the list of shadow entries corresponding to USERS and GROUPS.
+Preserve stateful bits from CURRENT-PASSWD, CURRENT-GROUPS, and
+CURRENT-SHADOW: UIDs, GIDs, passwords, user shells, etc."
+  (define members
+    ;; Map group name to user names.
+    (fold (lambda (user members)
+            (fold (cute vhash-cons <> (user-account-name user) <>)
+                  members
+                  (user-account-supplementary-groups user)))
+          vlist-null
+          users))
+
+  (define group-entries
+    (allocate-groups groups members current-groups))
+
+  (define passwd-entries
+    (allocate-passwd users group-entries current-passwd))
+
+  (define shadow-entries
+    (passwd->shadow users passwd-entries current-shadow
+                    #:current-time current-time))
+
+  (values group-entries passwd-entries shadow-entries))
diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm
index d516f5bdc9..cfdf17df0f 100644
--- a/gnu/build/activation.scm
+++ b/gnu/build/activation.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>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -18,11 +18,15 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu build activation)
+  #:use-module (gnu system accounts)
+  #:use-module (gnu build accounts)
   #:use-module (gnu build linux-boot)
   #:use-module (guix build utils)
   #:use-module (ice-9 ftw)
   #:use-module (ice-9 match)
+  #:use-module (ice-9 vlist)
   #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-11)
   #:use-module (srfi srfi-26)
   #:export (activate-users+groups
             activate-user-home
@@ -42,35 +46,6 @@
 ;;;
 ;;; Code:
 
-(define (enumerate thunk)
-  "Return the list of values returned by THUNK until it returned #f."
-  (let loop ((entry  (thunk))
-             (result '()))
-    (if (not entry)
-        (reverse result)
-        (loop (thunk) (cons entry result)))))
-
-(define (current-users)
-  "Return the passwd entries for all the currently defined user accounts."
-  (setpw)
-  (enumerate getpwent))
-
-(define (current-groups)
-  "Return the group entries for all the currently defined user groups."
-  (setgr)
-  (enumerate getgrent))
-
-(define* (add-group name #:key gid password system?
-                    (log-port (current-error-port)))
-  "Add NAME as a user group, with the given numeric GID if specified."
-  ;; Use 'groupadd' from the Shadow package.
-  (format log-port "adding group '~a'...~%" name)
-  (let ((args `(,@(if gid `("-g" ,(number->string gid)) '())
-                ,@(if password `("-p" ,password) '())
-                ,@(if system? `("--system") '())
-                ,name)))
-    (zero? (apply system* "groupadd" args))))
-
 (define %skeleton-directory
   ;; Directory containing skeleton files for new accounts.
   ;; Note: keep the trailing '/' so that 'scandir' enters it.
@@ -116,191 +91,82 @@ owner-writable in HOME."
                     (make-file-writable target))))
               files)))
 
-(define* (add-user name group
-                   #:key uid comment home create-home?
-                   shell password system?
-                   (supplementary-groups '())
-                   (log-port (current-error-port)))
-  "Create an account for user NAME part of GROUP, with the specified
-properties.  Return #t on success."
-  (format log-port "adding user '~a'...~%" name)
-
-  (if (and uid (zero? uid))
-
-      ;; 'useradd' fails with "Cannot determine your user name" if the root
-      ;; account doesn't exist.  Thus, for bootstrapping purposes, create that
-      ;; one manually.
-      (let ((home (or home "/root")))
-        (call-with-output-file "/etc/shadow"
-          (cut format <> "~a::::::::~%" name))
-        (call-with-output-file "/etc/passwd"
-          (cut format <> "~a:x:~a:~a:~a:~a:~a~%"
-               name "0" "0" comment home shell))
-        (chmod "/etc/shadow" #o600)
-        (copy-account-skeletons home)
-        (chmod home #o700)
-        #t)
-
-      ;; Use 'useradd' from the Shadow package.
-      (let ((args `(,@(if uid `("-u" ,(number->string uid)) '())
-                    "-g" ,(if (number? group) (number->string group) group)
-                    ,@(if (pair? supplementary-groups)
-                          `("-G" ,(string-join supplementary-groups ","))
-                          '())
-                    ,@(if comment `("-c" ,comment) '())
-                    ,@(if home `("-d" ,home) '())
-
-                    ;; Home directories of non-system accounts are created by
-                    ;; 'activate-user-home'.
-                    ,@(if (and home create-home? system?
-                               (not (file-exists? home)))
-                          '("--create-home")
-                          '())
-
-                    ,@(if shell `("-s" ,shell) '())
-                    ,@(if password `("-p" ,password) '())
-                    ,@(if system? '("--system") '())
-                    ,name)))
-        (and (zero? (apply system* "useradd" args))
-             (begin
-               ;; Since /etc/skel is a link to a directory in the store where
-               ;; all files have the writable bit cleared, and since 'useradd'
-               ;; preserves permissions when it copies them, explicitly make
-               ;; them writable.
-               (make-skeletons-writable home)
-               #t)))))
-
-(define* (modify-user name group
-                      #:key uid comment home create-home?
-                      shell password system?
-                      (supplementary-groups '())
-                      (log-port (current-error-port)))
-  "Modify user account NAME to have all the given settings."
-  ;; Use 'usermod' from the Shadow package.
-  (let ((args `(,@(if uid `("-u" ,(number->string uid)) '())
-                "-g" ,(if (number? group) (number->string group) group)
-                ,@(if (pair? supplementary-groups)
-                      `("-G" ,(string-join supplementary-groups ","))
-                      '())
-                ,@(if comment `("-c" ,comment) '())
-                ;; Don't use '--move-home'.
-                ,@(if home `("-d" ,home) '())
-                ,@(if shell `("-s" ,shell) '())
-                ,name)))
-    (zero? (apply system* "usermod" args))))
-
-(define* (delete-user name #:key (log-port (current-error-port)))
-  "Remove user account NAME.  Return #t on success.  This may fail if NAME is
-logged in."
-  (format log-port "deleting user '~a'...~%" name)
-  (zero? (system* "userdel" name)))
-
-(define* (delete-group name #:key (log-port (current-error-port)))
-  "Remove group NAME.  Return #t on success."
-  (format log-port "deleting group '~a'...~%" name)
-  (zero? (system* "groupdel" name)))
-
-(define* (ensure-user name group
-                      #:key uid comment home create-home?
-                      shell password system?
-                      (supplementary-groups '())
-                      (log-port (current-error-port))
-                      #:rest rest)
-  "Make sure user NAME exists and has the relevant settings."
-  (if (false-if-exception (getpwnam name))
-      (apply modify-user name group rest)
-      (apply add-user name group rest)))
+(define (duplicates lst)
+  "Return elements from LST present more than once in LST."
+  (let loop ((lst lst)
+             (seen vlist-null)
+             (result '()))
+    (match lst
+      (()
+       (reverse result))
+      ((head . tail)
+       (loop tail
+             (vhash-cons head #t seen)
+             (if (vhash-assoc head seen)
+                 (cons head result)
+                 result))))))
 
 (define (activate-users+groups users groups)
-  "Make sure the accounts listed in USERS and the user groups listed in GROUPS
-are all available.
-
-Each item in USERS is a list of all the characteristics of a user account;
-each item in GROUPS is a tuple with the group name, group password or #f, and
-numeric gid or #f."
-  (define (touch file)
-    (close-port (open-file file "a0b")))
-
-  (define activate-user
-    (match-lambda
-     ((name uid group supplementary-groups comment home create-home?
-       shell password system?)
-      (let ((profile-dir (string-append "/var/guix/profiles/per-user/"
-                                        name)))
-        (ensure-user name group
-                     #:uid uid
-                     #:system? system?
-                     #:supplementary-groups supplementary-groups
-                     #:comment comment
-                     #:home home
-                     #:create-home? create-home?
-
-                     #:shell shell
-                     #:password password)
-
-        (unless system?
-          ;; Create the profile directory for the new account.
-          (let ((pw (getpwnam name)))
-            (mkdir-p profile-dir)
-            (chown profile-dir (passwd:uid pw) (passwd:gid pw))))))))
-
-  ;; 'groupadd' aborts if the file doesn't already exist.
-  (touch "/etc/group")
+  "Make sure USERS (a list of user account records) and GROUPS (a list of user
+group records) are all available."
+  (define (make-home-directory user)
+    (let ((home (user-account-home-directory user))
+          (pwd  (getpwnam (user-account-name user))))
+      (mkdir-p home)
+
+      ;; Always set ownership and permissions for home directories of system
+      ;; accounts.  If a service needs looser permissions on its home
+      ;; directories, it can always chmod it in an activation snippet.
+      (chown home (passwd:uid pwd) (passwd:gid pwd))
+      (chmod home #o700)))
+
+  (define system-accounts
+    (filter (lambda (user)
+              (and (user-account-system? user)
+                   (user-account-create-home-directory? user)))
+            users))
 
   ;; Allow home directories to be created under /var/lib.
   (mkdir-p "/var/lib")
 
-  ;; Create the root account so we can use 'useradd' and 'groupadd'.
-  (activate-user (find (match-lambda
-                        ((name (? zero?) _ ...) #t)
-                        (_ #f))
-                       users))
-
-  ;; Then create the groups.
-  (for-each (match-lambda
-             ((name password gid system?)
-              (unless (false-if-exception (getgrnam name))
-                (add-group name
-                           #:gid gid #:password password
-                           #:system? system?))))
-            groups)
-
-  ;; Create the other user accounts.
-  (for-each activate-user users)
-
-  ;; Finally, delete extra user accounts and groups.
-  (for-each delete-user
-            (lset-difference string=?
-                             (map passwd:name (current-users))
-                             (match users
-                               (((names . _) ...)
-                                names))))
-  (for-each delete-group
-            (lset-difference string=?
-                             (map group:name (current-groups))
-                             (match groups
-                               (((names . _) ...)
-                                names)))))
+  (let-values (((groups passwd shadow)
+                (user+group-databases users groups)))
+    (write-group groups)
+    (write-passwd passwd)
+    (write-shadow shadow)
+
+    ;; Home directories of non-system accounts are created by
+    ;; 'activate-user-home'.
+    (for-each make-home-directory system-accounts)
+
+    ;; Turn shared home directories, such as /var/empty, into root-owned,
+    ;; read-only places.
+    (for-each (lambda (directory)
+                (chown directory 0 0)
+                (chmod directory #o555))
+              (duplicates (map user-account-home-directory system-accounts)))))
 
 (define (activate-user-home users)
   "Create and populate the home directory of USERS, a list of tuples, unless
 they already exist."
   (define ensure-user-home
-    (match-lambda
-      ((name uid group supplementary-groups comment home create-home?
-             shell password system?)
-       ;; The home directories of system accounts are created during
-       ;; activation, not here.
-       (unless (or (not home) (not create-home?) system?
-                   (directory-exists? home))
-         (let* ((pw  (getpwnam name))
-                (uid (passwd:uid pw))
-                (gid (passwd:gid pw)))
-           (mkdir-p home)
-           (chown home uid gid)
-           (chmod home #o700)
-           (copy-account-skeletons home
-                                   #:uid uid #:gid gid))))))
+    (lambda (user)
+      (let ((name         (user-account-name user))
+            (home         (user-account-home-directory user))
+            (create-home? (user-account-create-home-directory? user))
+            (system?      (user-account-system? user)))
+        ;; The home directories of system accounts are created during
+        ;; activation, not here.
+        (unless (or (not home) (not create-home?) system?
+                    (directory-exists? home))
+          (let* ((pw  (getpwnam name))
+                 (uid (passwd:uid pw))
+                 (gid (passwd:gid pw)))
+            (mkdir-p home)
+            (chown home uid gid)
+            (chmod home #o700)
+            (copy-account-skeletons home
+                                    #:uid uid #:gid gid))))))
 
   (for-each ensure-user-home users))
 
diff --git a/gnu/build/install.scm b/gnu/build/install.scm
index c9ebe124fe..c0d4d44091 100644
--- a/gnu/build/install.scm
+++ b/gnu/build/install.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 © 2016 Chris Marusich <cmmarusich@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -117,7 +117,6 @@ STORE."
     (directory "/var/tmp" 0 0 #o1777)
     (directory "/var/lock" 0 0 #o1777)
 
-    (directory "/root" 0 0)                       ; an exception
     (directory "/home" 0 0)))
 
 (define (populate-root-file-system system target)
diff --git a/gnu/build/linux-modules.scm b/gnu/build/linux-modules.scm
index d69bcbf5a2..d99d1f01a4 100644
--- a/gnu/build/linux-modules.scm
+++ b/gnu/build/linux-modules.scm
@@ -25,6 +25,7 @@
   #:use-module (rnrs io ports)
   #:use-module (rnrs bytevectors)
   #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-11)
   #:use-module (srfi srfi-26)
   #:use-module (ice-9 vlist)
   #:use-module (ice-9 match)
@@ -105,7 +106,8 @@ contains module names, not actual file names."
   (char-set-complement (char-set #\space #\tab)))
 
 (define (module-soft-dependencies file)
-  "Return a list of (cons section soft-dependency) of module FILE."
+  "Return the list of modules that can be preloaded, and then the list of
+modules that can be postloaded, of the soft dependencies of module FILE."
   ;; TEXT: "pre: baz blubb foo post: bax bar"
   (define (parse-softdep text)
     (let loop ((value '())
@@ -120,13 +122,24 @@ contains module names, not actual file names."
         value))))
 
   ;; Note: Multiple 'softdep sections are allowed.
-  (let ((info (modinfo-section-contents file)))
-    (concatenate
-     (filter-map (match-lambda
-                  (('softdep . value)
-                   (parse-softdep value))
-                  (_ #f))
-                 (modinfo-section-contents file)))))
+  (let* ((info (modinfo-section-contents file))
+         (entries (concatenate
+                   (filter-map (match-lambda
+                                (('softdep . value)
+                                 (parse-softdep value))
+                                (_ #f))
+                               (modinfo-section-contents file)))))
+    (let-values (((pres posts)
+                  (partition (match-lambda
+                              (("pre" . _) #t)
+                              (("post" . _) #f))
+                             entries)))
+      (values (map (match-lambda
+                    ((_ . value) value))
+                   pres)
+              (map (match-lambda
+                    ((_ . value) value))
+                   posts)))))
 
 (define (module-aliases file)
   "Return the list of aliases of module FILE."
diff --git a/gnu/local.mk b/gnu/local.mk
index e6830f0ecd..47996dcd5b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -236,6 +236,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/hexedit.scm			\
   %D%/packages/hugs.scm				\
   %D%/packages/hurd.scm				\
+  %D%/packages/hyperledger.scm			\
   %D%/packages/ibus.scm				\
   %D%/packages/icu4c.scm			\
   %D%/packages/idris.scm			\
@@ -532,6 +533,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/services/xorg.scm				\
 						\
   %D%/system.scm				\
+  %D%/system/accounts.scm			\
   %D%/system/file-systems.scm			\
   %D%/system/install.scm			\
   %D%/system/linux-container.scm		\
@@ -544,6 +546,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/system/uuid.scm				\
   %D%/system/vm.scm				\
 						\
+  %D%/build/accounts.scm			\
   %D%/build/activation.scm			\
   %D%/build/bootloader.scm			\
   %D%/build/cross-toolchain.scm			\
@@ -668,7 +671,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/binutils-boot-2.20.1a.patch		\
   %D%/packages/patches/biber-fix-encoding-write.patch		\
   %D%/packages/patches/binutils-loongson-workaround.patch	\
-  %D%/packages/patches/blast+-fix-makefile.patch		\
   %D%/packages/patches/boost-fix-icu-build.patch		\
   %D%/packages/patches/byobu-writable-status.patch		\
   %D%/packages/patches/calibre-no-updates-dialog.patch		\
@@ -795,8 +797,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/gcc-6-source-date-epoch-1.patch		\
   %D%/packages/patches/gcc-6-source-date-epoch-2.patch		\
   %D%/packages/patches/gcc-8-strmov-store-file-names.patch	\
-  %D%/packages/patches/gcr-disable-failing-tests.patch		\
-  %D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch	\
   %D%/packages/patches/gd-CVE-2018-5711.patch			\
   %D%/packages/patches/gd-CVE-2018-1000222.patch		\
   %D%/packages/patches/gd-CVE-2019-6977.patch			\
@@ -845,7 +845,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/gmp-arm-asm-nothumb.patch		\
   %D%/packages/patches/gmp-faulty-test.patch			\
   %D%/packages/patches/gnome-shell-theme.patch			\
-  %D%/packages/patches/gnome-todo-libical-compat.patch		\
   %D%/packages/patches/gnome-tweak-tool-search-paths.patch	\
   %D%/packages/patches/gnucash-fix-test-transaction-failure.patch \
   %D%/packages/patches/gnutls-skip-trust-store-test.patch	\
@@ -1228,6 +1227,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch \
   %D%/packages/patches/rust-bootstrap-stage0-test.patch		\
   %D%/packages/patches/rust-coresimd-doctest.patch		\
+  %D%/packages/patches/rust-1.30-gdb-llvm.patch			\
   %D%/packages/patches/rust-reproducible-builds.patch		 \
   %D%/packages/patches/rxvt-unicode-escape-sequences.patch	\
   %D%/packages/patches/scalapack-blacs-mpi-deprecations.patch	\
@@ -1309,7 +1309,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/upower-builddir.patch			\
   %D%/packages/patches/upx-fix-CVE-2017-15056.patch		\
   %D%/packages/patches/valgrind-enable-arm.patch		\
-  %D%/packages/patches/valgrind-glibc-compat.patch		\
   %D%/packages/patches/vboot-utils-fix-format-load-address.patch	\
   %D%/packages/patches/vboot-utils-fix-tests-show-contents.patch	\
   %D%/packages/patches/vboot-utils-skip-test-workbuf.patch	\
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index f425c2947c..e26bf030cc 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -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 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Eric Bavier <bavier@member.fsf.org>
@@ -1143,7 +1143,9 @@ WLAN driver.
 This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
 
     ;; In practice, this is linked against Readline, which makes it GPLv3+.
-    (license license:bsd-3)))
+    (license license:bsd-3)
+
+    (properties `((cpe-name . "wpa_supplicant")))))
 
 (define-public wpa-supplicant
   (package (inherit wpa-supplicant-minimal)
@@ -2917,7 +2919,7 @@ Logitech Unifying Receiver.")
 (define-public lynis
   (package
     (name "lynis")
-    (version "2.7.1")
+    (version "2.7.2")
     (source
      (origin
        (method git-fetch)
@@ -2926,8 +2928,7 @@ Logitech Unifying Receiver.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32
-         "1nv2dqd2k2n8mcdr6xl5g713xxkgvja6487by1wn4k0b416jij9i"))
+        (base32 "0dbbfk47dpxx7zpb98n4w3ls3z5di57qnr2nsgxjvp49gk9j3f6k"))
        (modules '((guix build utils)))
        (snippet
         '(begin
diff --git a/gnu/packages/aux-files/linux-libre/4.20-arm.conf b/gnu/packages/aux-files/linux-libre/5.0-arm.conf
index 514a6d4748..c9dc41013e 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-arm.conf
+++ b/gnu/packages/aux-files/linux-libre/5.0-arm.conf
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 4.20.0-gnu Kernel Configuration
+# Linux/arm 5.0.0-gnu Kernel Configuration
 #
 
 #
@@ -9,6 +9,7 @@
 CONFIG_CC_IS_GCC=y
 CONFIG_GCC_VERSION=70400
 CONFIG_CLANG_VERSION=0
+CONFIG_CC_HAS_ASM_GOTO=y
 CONFIG_IRQ_WORK=y
 CONFIG_BUILDTIME_EXTABLE_SORT=y
 
@@ -41,8 +42,6 @@ CONFIG_CROSS_MEMORY_ATTACH=y
 CONFIG_AUDIT=y
 CONFIG_HAVE_ARCH_AUDITSYSCALL=y
 CONFIG_AUDITSYSCALL=y
-CONFIG_AUDIT_WATCH=y
-CONFIG_AUDIT_TREE=y
 
 #
 # IRQ subsystem
@@ -51,6 +50,7 @@ CONFIG_GENERIC_IRQ_PROBE=y
 CONFIG_GENERIC_IRQ_SHOW=y
 CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
 CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
+CONFIG_GENERIC_IRQ_MIGRATION=y
 CONFIG_HARDIRQS_SW_RESEND=y
 CONFIG_GENERIC_IRQ_CHIP=y
 CONFIG_IRQ_DOMAIN=y
@@ -217,7 +217,6 @@ CONFIG_ARM=y
 CONFIG_ARM_HAS_SG_CHAIN=y
 CONFIG_ARM_DMA_USE_IOMMU=y
 CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
-CONFIG_MIGHT_HAVE_PCI=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 CONFIG_HAVE_PROC_CPU=y
 CONFIG_NO_IOPORT_MAP=y
@@ -365,6 +364,7 @@ CONFIG_SOC_IMX6Q=y
 # Cortex-A/Cortex-M asymmetric multiprocessing platforms
 #
 # CONFIG_SOC_IMX7D is not set
+# CONFIG_SOC_IMX7ULP is not set
 # CONFIG_SOC_VF610 is not set
 # CONFIG_ARCH_KEYSTONE is not set
 # CONFIG_ARCH_MEDIATEK is not set
@@ -427,6 +427,7 @@ CONFIG_MACH_OMAP3_PANDORA=y
 # CONFIG_OMAP5_ERRATA_801819 is not set
 # CONFIG_ARCH_SIRF is not set
 # CONFIG_ARCH_QCOM is not set
+# CONFIG_ARCH_RDA is not set
 # CONFIG_ARCH_REALVIEW is not set
 CONFIG_ARCH_ROCKCHIP=y
 # CONFIG_ARCH_S5PV210 is not set
@@ -537,77 +538,6 @@ CONFIG_ARM_ERRATA_773022=y
 #
 # Bus support
 #
-CONFIG_PCI=y
-CONFIG_PCI_DOMAINS=y
-CONFIG_PCI_DOMAINS_GENERIC=y
-CONFIG_PCI_SYSCALL=y
-CONFIG_PCIEPORTBUS=y
-CONFIG_PCIEAER=y
-CONFIG_PCIEAER_INJECT=m
-# CONFIG_PCIE_ECRC is not set
-CONFIG_PCIEASPM=y
-# CONFIG_PCIEASPM_DEBUG is not set
-CONFIG_PCIEASPM_DEFAULT=y
-# CONFIG_PCIEASPM_POWERSAVE is not set
-# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-# CONFIG_PCIEASPM_PERFORMANCE is not set
-CONFIG_PCIE_PME=y
-CONFIG_PCIE_DPC=y
-CONFIG_PCIE_PTM=y
-CONFIG_PCI_MSI=y
-CONFIG_PCI_MSI_IRQ_DOMAIN=y
-CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_DEBUG is not set
-CONFIG_PCI_STUB=m
-CONFIG_PCI_ECAM=y
-CONFIG_PCI_BRIDGE_EMUL=y
-# CONFIG_PCI_IOV is not set
-# CONFIG_PCI_PRI is not set
-# CONFIG_PCI_PASID is not set
-CONFIG_PCI_LABEL=y
-# CONFIG_HOTPLUG_PCI is not set
-
-#
-# PCI controller drivers
-#
-CONFIG_PCI_MVEBU=y
-
-#
-# Cadence PCIe controllers support
-#
-# CONFIG_PCIE_CADENCE_HOST is not set
-# CONFIG_PCI_FTPCI100 is not set
-CONFIG_PCI_TEGRA=y
-CONFIG_PCI_HOST_COMMON=y
-CONFIG_PCI_HOST_GENERIC=y
-# CONFIG_PCIE_XILINX is not set
-# CONFIG_PCI_V3_SEMI is not set
-# CONFIG_PCIE_ALTERA is not set
-CONFIG_PCIE_ROCKCHIP=y
-CONFIG_PCIE_ROCKCHIP_HOST=m
-
-#
-# DesignWare PCI Core Support
-#
-CONFIG_PCIE_DW=y
-CONFIG_PCIE_DW_HOST=y
-CONFIG_PCI_DRA7XX=y
-CONFIG_PCI_DRA7XX_HOST=y
-# CONFIG_PCIE_DW_PLAT_HOST is not set
-CONFIG_PCI_IMX6=y
-# CONFIG_PCI_LAYERSCAPE is not set
-# CONFIG_PCIE_ARMADA_8K is not set
-
-#
-# PCI Endpoint
-#
-# CONFIG_PCI_ENDPOINT is not set
-
-#
-# PCI switch controller drivers
-#
-# CONFIG_PCI_SW_SWITCHTEC is not set
-# CONFIG_PCCARD is not set
 
 #
 # Kernel Features
@@ -661,6 +591,7 @@ CONFIG_PARAVIRT=y
 # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
 CONFIG_XEN_DOM0=y
 CONFIG_XEN=y
+CONFIG_STACKPROTECTOR_PER_TASK=y
 
 #
 # Boot options
@@ -766,6 +697,7 @@ CONFIG_PM_GENERIC_DOMAINS=y
 CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
 CONFIG_PM_GENERIC_DOMAINS_OF=y
 CONFIG_CPU_PM=y
+CONFIG_ENERGY_MODEL=y
 CONFIG_ARCH_SUSPEND_POSSIBLE=y
 CONFIG_ARM_CPU_SUSPEND=y
 CONFIG_ARCH_HIBERNATION_POSSIBLE=y
@@ -781,6 +713,7 @@ CONFIG_ARM_SCMI_POWER_DOMAIN=m
 CONFIG_DMIID=y
 CONFIG_DMI_SYSFS=y
 CONFIG_RASPBERRYPI_FIRMWARE=y
+# CONFIG_INTEL_STRATIX10_SERVICE is not set
 CONFIG_HAVE_ARM_SMCCC=y
 # CONFIG_GOOGLE_FIRMWARE is not set
 
@@ -881,6 +814,7 @@ CONFIG_GCC_PLUGIN_STRUCTLEAK=y
 CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL=y
 # CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE is not set
 # CONFIG_GCC_PLUGIN_RANDSTRUCT is not set
+CONFIG_GCC_PLUGIN_ARM_SSP_PER_TASK=y
 CONFIG_RT_MUTEXES=y
 CONFIG_BASE_SMALL=0
 CONFIG_MODULES=y
@@ -905,7 +839,6 @@ CONFIG_BLK_DEV_THROTTLING=y
 # CONFIG_BLK_CMDLINE_PARSER is not set
 CONFIG_BLK_WBT=y
 # CONFIG_BLK_CGROUP_IOLATENCY is not set
-# CONFIG_BLK_WBT_SQ is not set
 CONFIG_BLK_WBT_MQ=y
 CONFIG_BLK_DEBUG_FS=y
 # CONFIG_BLK_SED_OPAL is not set
@@ -941,14 +874,6 @@ CONFIG_BLK_PM=y
 #
 # IO Schedulers
 #
-CONFIG_IOSCHED_NOOP=y
-CONFIG_IOSCHED_DEADLINE=y
-CONFIG_IOSCHED_CFQ=y
-CONFIG_CFQ_GROUP_IOSCHED=y
-# CONFIG_DEFAULT_DEADLINE is not set
-CONFIG_DEFAULT_CFQ=y
-# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="cfq"
 CONFIG_MQ_IOSCHED_DEADLINE=y
 CONFIG_MQ_IOSCHED_KYBER=m
 CONFIG_IOSCHED_BFQ=m
@@ -1014,6 +939,7 @@ CONFIG_FRAME_VECTOR=y
 CONFIG_NET=y
 CONFIG_NET_INGRESS=y
 CONFIG_NET_EGRESS=y
+CONFIG_SKB_EXTENSIONS=y
 
 #
 # Networking options
@@ -1177,9 +1103,6 @@ CONFIG_NF_CT_NETLINK_HELPER=m
 CONFIG_NETFILTER_NETLINK_GLUE_CT=y
 CONFIG_NF_NAT=m
 CONFIG_NF_NAT_NEEDED=y
-CONFIG_NF_NAT_PROTO_DCCP=y
-CONFIG_NF_NAT_PROTO_UDPLITE=y
-CONFIG_NF_NAT_PROTO_SCTP=y
 CONFIG_NF_NAT_AMANDA=m
 CONFIG_NF_NAT_FTP=m
 CONFIG_NF_NAT_IRC=m
@@ -1385,7 +1308,6 @@ CONFIG_NF_REJECT_IPV4=m
 CONFIG_NF_NAT_IPV4=m
 CONFIG_NF_NAT_MASQUERADE_IPV4=y
 CONFIG_NF_NAT_SNMP_BASIC=m
-CONFIG_NF_NAT_PROTO_GRE=m
 CONFIG_NF_NAT_PPTP=m
 CONFIG_NF_NAT_H323=m
 CONFIG_IP_NF_IPTABLES=m
@@ -1866,6 +1788,80 @@ CONFIG_HAVE_EBPF_JIT=y
 #
 CONFIG_ARM_AMBA=y
 CONFIG_TEGRA_AHB=y
+CONFIG_HAVE_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCI_DOMAINS_GENERIC=y
+CONFIG_PCI_SYSCALL=y
+CONFIG_PCIEPORTBUS=y
+CONFIG_PCIEAER=y
+CONFIG_PCIEAER_INJECT=m
+# CONFIG_PCIE_ECRC is not set
+CONFIG_PCIEASPM=y
+# CONFIG_PCIEASPM_DEBUG is not set
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+CONFIG_PCIE_DPC=y
+CONFIG_PCIE_PTM=y
+CONFIG_PCI_MSI=y
+CONFIG_PCI_MSI_IRQ_DOMAIN=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_STUB=m
+CONFIG_PCI_ECAM=y
+CONFIG_PCI_BRIDGE_EMUL=y
+# CONFIG_PCI_IOV is not set
+# CONFIG_PCI_PRI is not set
+# CONFIG_PCI_PASID is not set
+CONFIG_PCI_LABEL=y
+# CONFIG_HOTPLUG_PCI is not set
+
+#
+# PCI controller drivers
+#
+CONFIG_PCI_MVEBU=y
+
+#
+# Cadence PCIe controllers support
+#
+# CONFIG_PCIE_CADENCE_HOST is not set
+# CONFIG_PCI_FTPCI100 is not set
+CONFIG_PCI_TEGRA=y
+CONFIG_PCI_HOST_COMMON=y
+CONFIG_PCI_HOST_GENERIC=y
+# CONFIG_PCIE_XILINX is not set
+# CONFIG_PCI_V3_SEMI is not set
+# CONFIG_PCIE_ALTERA is not set
+CONFIG_PCIE_ROCKCHIP=y
+CONFIG_PCIE_ROCKCHIP_HOST=m
+
+#
+# DesignWare PCI Core Support
+#
+CONFIG_PCIE_DW=y
+CONFIG_PCIE_DW_HOST=y
+CONFIG_PCI_DRA7XX=y
+CONFIG_PCI_DRA7XX_HOST=y
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+CONFIG_PCI_IMX6=y
+# CONFIG_PCI_LAYERSCAPE is not set
+# CONFIG_PCIE_ARMADA_8K is not set
+# CONFIG_PCI_MESON is not set
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+
+#
+# PCI switch controller drivers
+#
+# CONFIG_PCI_SW_SWITCHTEC is not set
+# CONFIG_PCCARD is not set
+# CONFIG_RAPIDIO is not set
 
 #
 # Generic Driver Options
@@ -1937,7 +1933,6 @@ CONFIG_PROC_EVENTS=y
 CONFIG_GNSS=m
 CONFIG_MTD=y
 # CONFIG_MTD_TESTS is not set
-# CONFIG_MTD_REDBOOT_PARTS is not set
 # CONFIG_MTD_CMDLINE_PARTS is not set
 # CONFIG_MTD_AFS_PARTS is not set
 CONFIG_MTD_OF_PARTS=m
@@ -1946,6 +1941,7 @@ CONFIG_MTD_AR7_PARTS=m
 #
 # Partition parsers
 #
+# CONFIG_MTD_REDBOOT_PARTS is not set
 
 #
 # User Modules And Translation Layers
@@ -2112,10 +2108,12 @@ CONFIG_BLK_DEV_NVME=y
 CONFIG_NVME_FABRICS=m
 CONFIG_NVME_RDMA=m
 # CONFIG_NVME_FC is not set
+# CONFIG_NVME_TCP is not set
 CONFIG_NVME_TARGET=m
 # CONFIG_NVME_TARGET_LOOP is not set
 CONFIG_NVME_TARGET_RDMA=m
 # CONFIG_NVME_TARGET_FC is not set
+# CONFIG_NVME_TARGET_TCP is not set
 
 #
 # Misc devices
@@ -2147,6 +2145,7 @@ CONFIG_SRAM_EXEC=y
 CONFIG_VEXPRESS_SYSCFG=y
 # CONFIG_PCI_ENDPOINT_TEST is not set
 CONFIG_MISC_RTSX=m
+# CONFIG_PVPANIC is not set
 CONFIG_C2PORT=m
 
 #
@@ -2208,6 +2207,7 @@ CONFIG_ALTERA_STAPL=m
 # VOP Driver
 #
 # CONFIG_ECHO is not set
+CONFIG_MISC_ALCOR_PCI=m
 CONFIG_MISC_RTSX_PCI=m
 CONFIG_MISC_RTSX_USB=m
 CONFIG_HAVE_IDE=y
@@ -2221,7 +2221,6 @@ CONFIG_RAID_ATTRS=m
 CONFIG_SCSI=m
 CONFIG_SCSI_DMA=y
 CONFIG_SCSI_NETLINK=y
-# CONFIG_SCSI_MQ_DEFAULT is not set
 # CONFIG_SCSI_PROC_FS is not set
 
 #
@@ -2569,7 +2568,7 @@ CONFIG_NET_DSA_BCM_SF2=m
 # CONFIG_NET_DSA_LANTIQ_GSWIP is not set
 # CONFIG_NET_DSA_MT7530 is not set
 CONFIG_NET_DSA_MV88E6060=m
-# CONFIG_MICROCHIP_KSZ is not set
+# CONFIG_NET_DSA_MICROCHIP_KSZ9477 is not set
 CONFIG_NET_DSA_MV88E6XXX=m
 CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y
 # CONFIG_NET_DSA_MV88E6XXX_PTP is not set
@@ -2986,6 +2985,7 @@ CONFIG_USB_IPHETH=m
 CONFIG_USB_SIERRA_NET=m
 CONFIG_USB_VL600=m
 CONFIG_USB_NET_CH9200=m
+CONFIG_USB_NET_AQC111=m
 CONFIG_WLAN=y
 # CONFIG_WIRELESS_WDS is not set
 CONFIG_WLAN_VENDOR_ADMTEK=y
@@ -3217,9 +3217,10 @@ CONFIG_WLAN_VENDOR_ZYDAS=y
 CONFIG_ZD1211RW=m
 # CONFIG_ZD1211RW_DEBUG is not set
 CONFIG_WLAN_VENDOR_QUANTENNA=y
-# CONFIG_QTNFMAC_PEARL_PCIE is not set
+# CONFIG_QTNFMAC_PCIE is not set
 CONFIG_MAC80211_HWSIM=m
 CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_VIRT_WIFI=m
 
 #
 # WiMAX Wireless Broadband devices
@@ -3388,6 +3389,7 @@ CONFIG_TOUCHSCREEN_INEXIO=m
 CONFIG_TOUCHSCREEN_MK712=m
 CONFIG_TOUCHSCREEN_PENMOUNT=m
 # CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
+CONFIG_TOUCHSCREEN_RASPBERRYPI_FW=m
 CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
 CONFIG_TOUCHSCREEN_TOUCHWIN=m
 CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m
@@ -3504,6 +3506,7 @@ CONFIG_SERIO_ALTERA_PS2=m
 # CONFIG_SERIO_PS2MULT is not set
 # CONFIG_SERIO_ARC_PS2 is not set
 # CONFIG_SERIO_APBPS2 is not set
+CONFIG_SERIO_OLPC_APSP=m
 CONFIG_SERIO_SUN4I_PS2=m
 CONFIG_SERIO_GPIO_PS2=m
 # CONFIG_USERIO is not set
@@ -3595,6 +3598,7 @@ CONFIG_SERIAL_RP2_NR_UARTS=32
 CONFIG_SERIAL_MCTRL_GPIO=y
 # CONFIG_SERIAL_DEV_BUS is not set
 CONFIG_TTY_PRINTK=m
+CONFIG_TTY_PRINTK_LEVEL=6
 # CONFIG_PRINTER is not set
 # CONFIG_PPDEV is not set
 CONFIG_HVC_DRIVER=y
@@ -3728,6 +3732,7 @@ CONFIG_I2C_CROS_EC_TUNNEL=m
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
 # CONFIG_I2C_DEBUG_BUS is not set
+# CONFIG_I3C is not set
 CONFIG_SPI=y
 # CONFIG_SPI_DEBUG is not set
 CONFIG_SPI_MASTER=y
@@ -3762,6 +3767,7 @@ CONFIG_SPI_ROCKCHIP=m
 # CONFIG_SPI_SC18IS602 is not set
 CONFIG_SPI_SUN4I=m
 CONFIG_SPI_SUN6I=m
+CONFIG_SPI_MXIC=m
 CONFIG_SPI_TEGRA114=m
 CONFIG_SPI_TEGRA20_SFLASH=m
 # CONFIG_SPI_TEGRA20_SLINK is not set
@@ -3831,6 +3837,7 @@ CONFIG_PINCTRL_SINGLE=y
 # CONFIG_PINCTRL_SX150X is not set
 CONFIG_PINCTRL_PALMAS=y
 CONFIG_PINCTRL_RK805=m
+# CONFIG_PINCTRL_OCELOT is not set
 CONFIG_PINCTRL_BCM2835=y
 CONFIG_PINCTRL_IMX=y
 CONFIG_PINCTRL_IMX51=y
@@ -3882,6 +3889,7 @@ CONFIG_GPIO_GENERIC=y
 # CONFIG_GPIO_74XX_MMIO is not set
 # CONFIG_GPIO_ALTERA is not set
 CONFIG_GPIO_RASPBERRYPI_EXP=m
+CONFIG_GPIO_CADENCE=m
 # CONFIG_GPIO_DWAPB is not set
 # CONFIG_GPIO_EXAR is not set
 # CONFIG_GPIO_FTGPIO010 is not set
@@ -3895,6 +3903,7 @@ CONFIG_GPIO_MVEBU=y
 CONFIG_GPIO_MXC=y
 CONFIG_GPIO_OMAP=y
 CONFIG_GPIO_PL061=y
+# CONFIG_GPIO_SAMA5D2_PIOBU is not set
 # CONFIG_GPIO_SYSCON is not set
 CONFIG_GPIO_TEGRA=y
 # CONFIG_GPIO_TS4800 is not set
@@ -4134,6 +4143,7 @@ CONFIG_SENSORS_NCT6775=m
 # CONFIG_SENSORS_NCT7802 is not set
 # CONFIG_SENSORS_NCT7904 is not set
 # CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_OCC_P8_I2C is not set
 # CONFIG_SENSORS_PCF8591 is not set
 # CONFIG_PMBUS is not set
 CONFIG_SENSORS_PWM_FAN=m
@@ -4210,10 +4220,6 @@ CONFIG_ROCKCHIP_THERMAL=m
 CONFIG_ARMADA_THERMAL=y
 
 #
-# ACPI INT340X thermal drivers
-#
-
-#
 # Broadcom thermal drivers
 #
 CONFIG_BCM2835_THERMAL=m
@@ -4322,7 +4328,6 @@ CONFIG_MFD_CORE=y
 CONFIG_MFD_AS3722=y
 # CONFIG_PMIC_ADP5520 is not set
 # CONFIG_MFD_AAT2870_CORE is not set
-# CONFIG_MFD_AT91_USART is not set
 # CONFIG_MFD_ATMEL_FLEXCOM is not set
 # CONFIG_MFD_ATMEL_HLCDC is not set
 # CONFIG_MFD_BCM590XX is not set
@@ -4477,6 +4482,7 @@ CONFIG_REGULATOR_MAX77686=m
 CONFIG_REGULATOR_MC13XXX_CORE=m
 CONFIG_REGULATOR_MC13783=m
 CONFIG_REGULATOR_MC13892=m
+# CONFIG_REGULATOR_MCP16502 is not set
 # CONFIG_REGULATOR_MT6311 is not set
 CONFIG_REGULATOR_PALMAS=y
 CONFIG_REGULATOR_PBIAS=m
@@ -4537,6 +4543,7 @@ CONFIG_IR_PWM_TX=m
 CONFIG_IR_SUNXI=m
 # CONFIG_IR_SERIAL is not set
 # CONFIG_IR_SIR is not set
+CONFIG_RC_XBOX_DVD=m
 CONFIG_MEDIA_SUPPORT=y
 
 #
@@ -4556,7 +4563,6 @@ CONFIG_VIDEO_V4L2_SUBDEV_API=y
 CONFIG_VIDEO_V4L2=y
 # CONFIG_VIDEO_ADV_DEBUG is not set
 # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-# CONFIG_VIDEO_PCI_SKELETON is not set
 CONFIG_VIDEO_TUNER=m
 CONFIG_V4L2_MEM2MEM_DEV=m
 CONFIG_V4L2_FWNODE=m
@@ -4817,12 +4823,14 @@ CONFIG_VIDEO_CAFE_CCIC=m
 CONFIG_VIDEO_CADENCE=y
 CONFIG_VIDEO_CADENCE_CSI2RX=m
 CONFIG_VIDEO_CADENCE_CSI2TX=m
+CONFIG_VIDEO_ASPEED=m
 # CONFIG_VIDEO_MUX is not set
 CONFIG_VIDEO_OMAP3=m
 # CONFIG_VIDEO_OMAP3_DEBUG is not set
 # CONFIG_SOC_CAMERA is not set
 # CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS is not set
 # CONFIG_VIDEO_XILINX is not set
+CONFIG_VIDEO_SUN6I_CSI=m
 # CONFIG_VIDEO_TI_CAL is not set
 CONFIG_V4L_MEM2MEM_DRIVERS=y
 # CONFIG_VIDEO_CODA is not set
@@ -5323,6 +5331,16 @@ CONFIG_DRM_TILCDC=m
 CONFIG_DRM_QXL=m
 CONFIG_DRM_BOCHS=m
 CONFIG_DRM_VIRTIO_GPU=m
+CONFIG_DRM_MSM=m
+# CONFIG_DRM_MSM_REGISTER_LOGGING is not set
+# CONFIG_DRM_MSM_GPU_SUDO is not set
+CONFIG_DRM_MSM_DSI=y
+CONFIG_DRM_MSM_DSI_PLL=y
+CONFIG_DRM_MSM_DSI_28NM_PHY=y
+CONFIG_DRM_MSM_DSI_20NM_PHY=y
+CONFIG_DRM_MSM_DSI_28NM_8960_PHY=y
+CONFIG_DRM_MSM_DSI_14NM_PHY=y
+CONFIG_DRM_MSM_DSI_10NM_PHY=y
 # CONFIG_DRM_FSL_DCU is not set
 # CONFIG_DRM_TEGRA is not set
 # CONFIG_DRM_STM is not set
@@ -5340,10 +5358,12 @@ CONFIG_DRM_PANEL_ILITEK_ILI9881C=m
 # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
 # CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
 # CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
 # CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
 CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
 # CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
@@ -5351,6 +5371,7 @@ CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
 # CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
 # CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
 # CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
+# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
 CONFIG_DRM_BRIDGE=y
 CONFIG_DRM_PANEL_BRIDGE=y
 
@@ -5378,6 +5399,7 @@ CONFIG_DRM_DW_HDMI=m
 # CONFIG_DRM_DW_HDMI_AHB_AUDIO is not set
 # CONFIG_DRM_DW_HDMI_I2S_AUDIO is not set
 CONFIG_DRM_DW_HDMI_CEC=m
+CONFIG_DRM_DW_MIPI_DSI=m
 # CONFIG_DRM_STI is not set
 CONFIG_DRM_IMX=m
 # CONFIG_DRM_IMX_PARALLEL_DISPLAY is not set
@@ -5422,7 +5444,7 @@ CONFIG_FB_SYS_IMAGEBLIT=y
 CONFIG_FB_SYS_FOPS=y
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_SVGALIB=m
-CONFIG_FB_BACKLIGHT=y
+CONFIG_FB_BACKLIGHT=m
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_FB_TILEBLITTING=y
 
@@ -5681,8 +5703,6 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
 # CONFIG_SND_SOC_AMD_ACP is not set
 # CONFIG_SND_ATMEL_SOC is not set
 CONFIG_SND_BCM2835_SOC_I2S=m
-# CONFIG_SND_EDMA_SOC is not set
-CONFIG_SND_DAVINCI_SOC_MCASP=m
 # CONFIG_SND_DESIGNWARE_I2S is not set
 
 #
@@ -5714,17 +5734,6 @@ CONFIG_SND_SOC_IMX_SPDIF=m
 CONFIG_SND_SOC_IMX_MC13783=m
 # CONFIG_SND_SOC_FSL_ASOC_CARD is not set
 # CONFIG_SND_I2S_HI6210_I2S is not set
-CONFIG_SND_OMAP_SOC=m
-CONFIG_SND_SDMA_SOC=m
-CONFIG_SND_OMAP_SOC_DMIC=m
-CONFIG_SND_OMAP_SOC_MCBSP=m
-CONFIG_SND_OMAP_SOC_MCPDM=m
-# CONFIG_SND_OMAP_SOC_HDMI_AUDIO is not set
-CONFIG_SND_OMAP_SOC_RX51=m
-CONFIG_SND_OMAP_SOC_AM3517EVM=m
-CONFIG_SND_OMAP_SOC_OMAP_TWL4030=m
-CONFIG_SND_OMAP_SOC_OMAP_ABE_TWL6040=m
-CONFIG_SND_OMAP_SOC_OMAP3_PANDORA=m
 # CONFIG_SND_KIRKWOOD_SOC is not set
 # CONFIG_SND_SOC_IMG is not set
 CONFIG_SND_SOC_ROCKCHIP=m
@@ -5765,6 +5774,30 @@ CONFIG_SND_SOC_TEGRA_ALC5632=m
 CONFIG_SND_SOC_TEGRA_MAX98090=m
 CONFIG_SND_SOC_TEGRA_RT5677=m
 # CONFIG_SND_SOC_TEGRA_SGTL5000 is not set
+
+#
+# Audio support for Texas Instruments SoCs
+#
+CONFIG_SND_SOC_TI_EDMA_PCM=m
+CONFIG_SND_SOC_TI_SDMA_PCM=m
+
+#
+# Texas Instruments DAI support for:
+#
+CONFIG_SND_SOC_DAVINCI_MCASP=m
+CONFIG_SND_SOC_OMAP_DMIC=m
+CONFIG_SND_SOC_OMAP_MCBSP=m
+CONFIG_SND_SOC_OMAP_MCPDM=m
+
+#
+# Audio support for boards with Texas Instruments SoCs
+#
+CONFIG_SND_SOC_NOKIA_RX51=m
+CONFIG_SND_SOC_OMAP3_PANDORA=m
+CONFIG_SND_SOC_OMAP3_TWL4030=m
+CONFIG_SND_SOC_OMAP_ABE_TWL6040=m
+CONFIG_SND_SOC_OMAP_HDMI=m
+# CONFIG_SND_SOC_XILINX_I2S is not set
 # CONFIG_SND_SOC_XTFPGA_I2S is not set
 # CONFIG_ZX_TDM is not set
 CONFIG_SND_SOC_I2C_AND_SPI=m
@@ -5778,6 +5811,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=m
 # CONFIG_SND_SOC_ADAU1761_SPI is not set
 # CONFIG_SND_SOC_ADAU7002 is not set
 # CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
 # CONFIG_SND_SOC_AK4458 is not set
 # CONFIG_SND_SOC_AK4554 is not set
 # CONFIG_SND_SOC_AK4613 is not set
@@ -6404,6 +6438,7 @@ CONFIG_USB_G_NOKIA=m
 # CONFIG_USB_G_DBGP is not set
 # CONFIG_USB_G_WEBCAM is not set
 # CONFIG_TYPEC is not set
+CONFIG_USB_ROLE_SWITCH=m
 CONFIG_USB_LED_TRIG=y
 CONFIG_USB_ULPI_BUS=m
 CONFIG_UWB=m
@@ -6444,6 +6479,7 @@ CONFIG_MMC_SDHCI_PXAV3=m
 CONFIG_MMC_SDHCI_IPROC=m
 CONFIG_MMC_OMAP=m
 CONFIG_MMC_OMAP_HS=m
+CONFIG_MMC_ALCOR=m
 # CONFIG_MMC_MXC is not set
 CONFIG_MMC_TIFM_SD=m
 CONFIG_MMC_MVSDIO=m
@@ -6471,6 +6507,7 @@ CONFIG_MMC_BCM2835=m
 # CONFIG_MMC_MTK is not set
 # CONFIG_MMC_SDHCI_XENON is not set
 # CONFIG_MMC_SDHCI_OMAP is not set
+CONFIG_MMC_SDHCI_AM654=m
 CONFIG_MEMSTICK=m
 # CONFIG_MEMSTICK_DEBUG is not set
 
@@ -6562,6 +6599,7 @@ CONFIG_LEDS_TRIGGER_CAMERA=m
 CONFIG_LEDS_TRIGGER_PANIC=y
 # CONFIG_LEDS_TRIGGER_NETDEV is not set
 # CONFIG_LEDS_TRIGGER_PATTERN is not set
+# CONFIG_LEDS_TRIGGER_AUDIO is not set
 CONFIG_ACCESSIBILITY=y
 CONFIG_A11Y_BRAILLE_CONSOLE=y
 CONFIG_INFINIBAND=m
@@ -6890,7 +6928,6 @@ CONFIG_RTLWIFI_DEBUG_ST=y
 #
 # Resolver to digital converters
 #
-# CONFIG_AD2S90 is not set
 # CONFIG_AD2S1210 is not set
 # CONFIG_FB_SM750 is not set
 # CONFIG_FB_XGI is not set
@@ -6919,7 +6956,6 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m
 # CONFIG_STAGING_BOARD is not set
 # CONFIG_LTE_GDM724X is not set
 # CONFIG_FIREWIRE_SERIAL is not set
-# CONFIG_MTD_SPINAND_MT29F is not set
 # CONFIG_GS_FPGABOOT is not set
 # CONFIG_UNISYSSPAR is not set
 # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
@@ -6987,6 +7023,8 @@ CONFIG_CLK_TWL6040=m
 CONFIG_COMMON_CLK_PALMAS=m
 # CONFIG_COMMON_CLK_PWM is not set
 # CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_BD718XX is not set
+CONFIG_MXC_CLK=y
 CONFIG_MVEBU_CLK_COMMON=y
 CONFIG_MVEBU_CLK_CPU=y
 CONFIG_MVEBU_CLK_COREDIV=y
@@ -7165,6 +7203,7 @@ CONFIG_OMAP_GPMC=y
 # CONFIG_OMAP_GPMC_DEBUG is not set
 CONFIG_TI_EMIF_SRAM=m
 CONFIG_MVEBU_DEVBUS=y
+CONFIG_PL353_SMC=y
 CONFIG_SAMSUNG_MC=y
 CONFIG_EXYNOS_SROM=y
 CONFIG_TEGRA_MC=y
@@ -7221,6 +7260,7 @@ CONFIG_MMA8452=m
 #
 # Analog to digital converters
 #
+# CONFIG_AD7124 is not set
 # CONFIG_AD7266 is not set
 # CONFIG_AD7291 is not set
 # CONFIG_AD7298 is not set
@@ -7230,6 +7270,7 @@ CONFIG_MMA8452=m
 # CONFIG_AD7793 is not set
 # CONFIG_AD7887 is not set
 # CONFIG_AD7923 is not set
+# CONFIG_AD7949 is not set
 # CONFIG_AD799X is not set
 CONFIG_AXP20X_ADC=m
 CONFIG_AXP288_ADC=m
@@ -7344,6 +7385,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m
 # CONFIG_MCP4922 is not set
 # CONFIG_TI_DAC082S085 is not set
 # CONFIG_TI_DAC5571 is not set
+# CONFIG_TI_DAC7311 is not set
 # CONFIG_VF610_DAC is not set
 
 #
@@ -7453,6 +7495,7 @@ CONFIG_SENSORS_TSL2563=m
 # CONFIG_TSL4531 is not set
 # CONFIG_US5182D is not set
 # CONFIG_VCNL4000 is not set
+# CONFIG_VCNL4035 is not set
 # CONFIG_VEML6070 is not set
 # CONFIG_VL6180 is not set
 # CONFIG_ZOPT2201 is not set
@@ -7471,6 +7514,8 @@ CONFIG_HID_SENSOR_MAGNETOMETER_3D=m
 # CONFIG_IIO_ST_MAGN_3AXIS is not set
 # CONFIG_SENSORS_HMC5843_I2C is not set
 # CONFIG_SENSORS_HMC5843_SPI is not set
+# CONFIG_SENSORS_RM3100_I2C is not set
+# CONFIG_SENSORS_RM3100_SPI is not set
 
 #
 # Multiplexers
@@ -7499,6 +7544,7 @@ CONFIG_HID_SENSOR_DEVICE_ROTATION=m
 # CONFIG_MCP4018 is not set
 # CONFIG_MCP4131 is not set
 # CONFIG_MCP4531 is not set
+# CONFIG_MCP41010 is not set
 # CONFIG_TPL0102 is not set
 
 #
@@ -7542,6 +7588,7 @@ CONFIG_HID_SENSOR_PRESS=m
 #
 # Resolver to digital converters
 #
+# CONFIG_AD2S90 is not set
 # CONFIG_AD2S1200 is not set
 
 #
@@ -7589,14 +7636,17 @@ CONFIG_ARM_GIC_V3=y
 CONFIG_ARM_GIC_V3_ITS=y
 CONFIG_ARM_GIC_V3_ITS_PCI=y
 CONFIG_ARMADA_370_XP_IRQ=y
+CONFIG_MADERA_IRQ=m
 CONFIG_OMAP_IRQCHIP=y
 # CONFIG_TS4800_IRQ is not set
 CONFIG_IRQ_CROSSBAR=y
 CONFIG_PARTITION_PERCPU=y
+CONFIG_IMX_IRQSTEER=y
 # CONFIG_IPACK_BUS is not set
 CONFIG_ARCH_HAS_RESET_CONTROLLER=y
 CONFIG_RESET_CONTROLLER=y
 CONFIG_RESET_SIMPLE=y
+CONFIG_RESET_SOCFPGA=y
 CONFIG_RESET_SUNXI=y
 # CONFIG_RESET_TI_SYSCON is not set
 # CONFIG_FMC is not set
@@ -7609,6 +7659,8 @@ CONFIG_PHY_SUN4I_USB=m
 CONFIG_PHY_SUN9I_USB=m
 # CONFIG_BCM_KONA_USB2_PHY is not set
 # CONFIG_PHY_CADENCE_DP is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+# CONFIG_PHY_FSL_IMX8MQ_USB is not set
 CONFIG_ARMADA375_USBCLUSTER_PHY=y
 CONFIG_PHY_MVEBU_CP110_COMPHY=m
 # CONFIG_PHY_PXA_28NM_HSIC is not set
@@ -7641,6 +7693,7 @@ CONFIG_OMAP_USB2=m
 CONFIG_TI_PIPE3=m
 CONFIG_PHY_TUSB1210=m
 CONFIG_TWL4030_USB=m
+CONFIG_PHY_TI_GMII_SEL=m
 # CONFIG_POWERCAP is not set
 # CONFIG_MCB is not set
 
@@ -8072,6 +8125,7 @@ CONFIG_IMA_DEFAULT_HASH="sha256"
 # CONFIG_IMA_WRITE_POLICY is not set
 # CONFIG_IMA_READ_POLICY is not set
 CONFIG_IMA_APPRAISE=y
+# CONFIG_IMA_ARCH_POLICY is not set
 # CONFIG_IMA_APPRAISE_BUILD_POLICY is not set
 CONFIG_IMA_APPRAISE_BOOTPARAM=y
 CONFIG_IMA_TRUSTED_KEYRING=y
@@ -8154,6 +8208,8 @@ CONFIG_CRYPTO_OFB=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 # CONFIG_CRYPTO_KEYWRAP is not set
+CONFIG_CRYPTO_NHPOLY1305=m
+CONFIG_CRYPTO_ADIANTUM=m
 
 #
 # Hash modes
@@ -8183,6 +8239,7 @@ CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_SHA512=m
 # CONFIG_CRYPTO_SHA3 is not set
 # CONFIG_CRYPTO_SM3 is not set
+CONFIG_CRYPTO_STREEBOG=m
 CONFIG_CRYPTO_TGR192=m
 CONFIG_CRYPTO_WP512=m
 
@@ -8236,6 +8293,7 @@ CONFIG_CRYPTO_USER_API_HASH=m
 CONFIG_CRYPTO_USER_API_SKCIPHER=m
 CONFIG_CRYPTO_USER_API_RNG=m
 CONFIG_CRYPTO_USER_API_AEAD=m
+# CONFIG_CRYPTO_STATS is not set
 CONFIG_CRYPTO_HASH_INFO=y
 CONFIG_CRYPTO_HW=y
 CONFIG_CRYPTO_DEV_MARVELL_CESA=m
@@ -8274,6 +8332,7 @@ CONFIG_BINARY_PRINTF=y
 # Library routines
 #
 CONFIG_RAID6_PQ=m
+CONFIG_RAID6_PQ_BENCHMARK=y
 CONFIG_BITREVERSE=y
 CONFIG_HAVE_ARCH_BITREVERSE=y
 CONFIG_RATIONAL=y
@@ -8298,7 +8357,7 @@ CONFIG_CRC64=m
 CONFIG_CRC7=m
 CONFIG_LIBCRC32C=m
 CONFIG_CRC8=m
-CONFIG_XXHASH=m
+CONFIG_XXHASH=y
 CONFIG_AUDIT_GENERIC=y
 # CONFIG_RANDOM32_SELFTEST is not set
 CONFIG_ZLIB_INFLATE=y
@@ -8340,9 +8399,9 @@ CONFIG_NEED_SG_DMA_LENGTH=y
 CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_ARCH_DMA_ADDR_T_64BIT=y
 CONFIG_HAVE_GENERIC_DMA_COHERENT=y
-CONFIG_DMA_DIRECT_OPS=y
 CONFIG_DMA_VIRT_OPS=y
 CONFIG_SWIOTLB=y
+CONFIG_DMA_REMAP=y
 CONFIG_SGL_ALLOC=y
 CONFIG_CHECK_SIGNATURE=y
 CONFIG_CPU_RMAP=y
@@ -8366,7 +8425,6 @@ CONFIG_FONT_8x8=y
 CONFIG_FONT_8x16=y
 CONFIG_SG_SPLIT=y
 CONFIG_SG_POOL=y
-CONFIG_ARCH_HAS_SG_CHAIN=y
 CONFIG_SBITMAP=y
 # CONFIG_STRING_SELFTEST is not set
 
@@ -8430,6 +8488,8 @@ CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
 CONFIG_DEBUG_MEMORY_INIT=y
 # CONFIG_DEBUG_PER_CPU_MAPS is not set
 # CONFIG_DEBUG_HIGHMEM is not set
+CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_KASAN_STACK=1
 CONFIG_ARCH_HAS_KCOV=y
 CONFIG_CC_HAS_SANCOV_TRACE_PC=y
 # CONFIG_KCOV is not set
@@ -8533,6 +8593,7 @@ CONFIG_BLK_DEV_IO_TRACE=y
 CONFIG_KPROBE_EVENTS=y
 CONFIG_UPROBE_EVENTS=y
 CONFIG_BPF_EVENTS=y
+CONFIG_DYNAMIC_EVENTS=y
 CONFIG_PROBE_EVENTS=y
 CONFIG_DYNAMIC_FTRACE=y
 CONFIG_DYNAMIC_FTRACE_WITH_REGS=y
@@ -8595,7 +8656,6 @@ CONFIG_UNWINDER_FRAME_POINTER=y
 # CONFIG_UNWINDER_ARM is not set
 # CONFIG_DEBUG_USER is not set
 # CONFIG_DEBUG_LL is not set
-CONFIG_DEBUG_IMX_UART_PORT=1
 CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
 CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
 # CONFIG_ARM_KPROBES_TEST is not set
diff --git a/gnu/packages/aux-files/linux-libre/4.20-arm64.conf b/gnu/packages/aux-files/linux-libre/5.0-arm64.conf
index 3833e3e363..e6309efa19 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.0-arm64.conf
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm64 4.20.0-gnu Kernel Configuration
+# Linux/arm64 5.0.0-gnu Kernel Configuration
 #
 
 #
@@ -9,6 +9,7 @@
 CONFIG_CC_IS_GCC=y
 CONFIG_GCC_VERSION=70400
 CONFIG_CLANG_VERSION=0
+CONFIG_CC_HAS_ASM_GOTO=y
 CONFIG_IRQ_WORK=y
 CONFIG_BUILDTIME_EXTABLE_SORT=y
 CONFIG_THREAD_INFO_IN_TASK=y
@@ -32,8 +33,6 @@ CONFIG_CROSS_MEMORY_ATTACH=y
 CONFIG_AUDIT=y
 CONFIG_HAVE_ARCH_AUDITSYSCALL=y
 CONFIG_AUDITSYSCALL=y
-CONFIG_AUDIT_WATCH=y
-CONFIG_AUDIT_TREE=y
 
 #
 # IRQ subsystem
@@ -235,6 +234,7 @@ CONFIG_GENERIC_CSUM=y
 CONFIG_GENERIC_CALIBRATE_DELAY=y
 CONFIG_ZONE_DMA32=y
 CONFIG_HAVE_GENERIC_GUP=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 CONFIG_SMP=y
 CONFIG_KERNEL_MODE_NEON=y
 CONFIG_FIX_EARLYCON_MEM=y
@@ -260,6 +260,7 @@ CONFIG_ARCH_HISI=y
 # CONFIG_ARCH_MEDIATEK is not set
 CONFIG_ARCH_MESON=y
 CONFIG_ARCH_MVEBU=y
+CONFIG_ARCH_MXC=y
 CONFIG_ARCH_QCOM=y
 # CONFIG_ARCH_REALTEK is not set
 # CONFIG_ARCH_RENESAS is not set
@@ -278,96 +279,13 @@ CONFIG_ARCH_XGENE=y
 # CONFIG_ARCH_ZYNQMP is not set
 
 #
-# Bus support
-#
-CONFIG_PCI=y
-CONFIG_PCI_DOMAINS=y
-CONFIG_PCI_DOMAINS_GENERIC=y
-CONFIG_PCI_SYSCALL=y
-CONFIG_PCIEPORTBUS=y
-CONFIG_HOTPLUG_PCI_PCIE=y
-CONFIG_PCIEAER=y
-CONFIG_PCIEAER_INJECT=m
-# CONFIG_PCIE_ECRC is not set
-CONFIG_PCIEASPM=y
-# CONFIG_PCIEASPM_DEBUG is not set
-CONFIG_PCIEASPM_DEFAULT=y
-# CONFIG_PCIEASPM_POWERSAVE is not set
-# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-# CONFIG_PCIEASPM_PERFORMANCE is not set
-CONFIG_PCIE_PME=y
-CONFIG_PCIE_DPC=y
-CONFIG_PCIE_PTM=y
-CONFIG_PCI_MSI=y
-CONFIG_PCI_MSI_IRQ_DOMAIN=y
-CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_DEBUG is not set
-CONFIG_PCI_REALLOC_ENABLE_AUTO=y
-CONFIG_PCI_STUB=m
-# CONFIG_PCI_PF_STUB is not set
-CONFIG_PCI_ATS=y
-CONFIG_PCI_ECAM=y
-CONFIG_PCI_BRIDGE_EMUL=y
-CONFIG_PCI_IOV=y
-# CONFIG_PCI_PRI is not set
-# CONFIG_PCI_PASID is not set
-CONFIG_PCI_LABEL=y
-CONFIG_HOTPLUG_PCI=y
-CONFIG_HOTPLUG_PCI_ACPI=y
-CONFIG_HOTPLUG_PCI_ACPI_IBM=m
-CONFIG_HOTPLUG_PCI_CPCI=y
-CONFIG_HOTPLUG_PCI_SHPC=y
-
-#
-# PCI controller drivers
-#
-CONFIG_PCI_AARDVARK=y
-
-#
-# Cadence PCIe controllers support
-#
-# CONFIG_PCIE_CADENCE_HOST is not set
-# CONFIG_PCI_FTPCI100 is not set
-CONFIG_PCI_TEGRA=y
-CONFIG_PCI_HOST_COMMON=y
-CONFIG_PCI_HOST_GENERIC=y
-# CONFIG_PCIE_XILINX is not set
-CONFIG_PCI_XGENE=y
-CONFIG_PCI_XGENE_MSI=y
-CONFIG_PCI_HOST_THUNDER_PEM=y
-CONFIG_PCI_HOST_THUNDER_ECAM=y
-CONFIG_PCIE_ROCKCHIP=y
-CONFIG_PCIE_ROCKCHIP_HOST=m
-
-#
-# DesignWare PCI Core Support
-#
-CONFIG_PCIE_DW=y
-CONFIG_PCIE_DW_HOST=y
-# CONFIG_PCIE_DW_PLAT_HOST is not set
-CONFIG_PCI_HISI=y
-CONFIG_PCIE_QCOM=y
-CONFIG_PCIE_ARMADA_8K=y
-CONFIG_PCIE_KIRIN=y
-# CONFIG_PCIE_HISI_STB is not set
-
-#
-# PCI Endpoint
-#
-# CONFIG_PCI_ENDPOINT is not set
-
-#
-# PCI switch controller drivers
-#
-# CONFIG_PCI_SW_SWITCHTEC is not set
-
-#
 # Kernel Features
 #
 
 #
 # ARM errata workarounds via the alternatives framework
 #
+CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
 CONFIG_ARM64_ERRATUM_826319=y
 CONFIG_ARM64_ERRATUM_827319=y
 CONFIG_ARM64_ERRATUM_824069=y
@@ -375,9 +293,10 @@ CONFIG_ARM64_ERRATUM_819472=y
 CONFIG_ARM64_ERRATUM_832075=y
 CONFIG_ARM64_ERRATUM_834220=y
 CONFIG_ARM64_ERRATUM_845719=y
-# CONFIG_ARM64_ERRATUM_843419 is not set
+CONFIG_ARM64_ERRATUM_843419=y
 CONFIG_ARM64_ERRATUM_1024718=y
 CONFIG_ARM64_ERRATUM_1188873=y
+CONFIG_ARM64_ERRATUM_1165522=y
 CONFIG_ARM64_ERRATUM_1286807=y
 CONFIG_CAVIUM_ERRATUM_22375=y
 CONFIG_CAVIUM_ERRATUM_23144=y
@@ -429,6 +348,8 @@ CONFIG_SECCOMP=y
 CONFIG_PARAVIRT=y
 # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
 CONFIG_KEXEC=y
+CONFIG_KEXEC_FILE=y
+# CONFIG_KEXEC_VERIFY_SIG is not set
 CONFIG_CRASH_DUMP=y
 CONFIG_XEN_DOM0=y
 CONFIG_XEN=y
@@ -437,6 +358,7 @@ CONFIG_UNMAP_KERNEL_AT_EL0=y
 CONFIG_HARDEN_BRANCH_PREDICTOR=y
 CONFIG_HARDEN_EL2_VECTORS=y
 CONFIG_ARM64_SSBD=y
+CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
 CONFIG_ARMV8_DEPRECATED=y
 CONFIG_SWP_EMULATION=y
 CONFIG_CP15_BARRIER_EMULATION=y
@@ -458,6 +380,11 @@ CONFIG_ARM64_UAO=y
 CONFIG_ARM64_PMEM=y
 CONFIG_ARM64_RAS_EXTN=y
 CONFIG_ARM64_CNP=y
+
+#
+# ARMv8.3 architectural features
+#
+CONFIG_ARM64_PTR_AUTH=y
 CONFIG_ARM64_SVE=y
 CONFIG_ARM64_MODULE_PLTS=y
 CONFIG_RELOCATABLE=y
@@ -501,6 +428,7 @@ CONFIG_PM_GENERIC_DOMAINS=y
 CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
 CONFIG_PM_GENERIC_DOMAINS_OF=y
 CONFIG_CPU_PM=y
+CONFIG_ENERGY_MODEL=y
 CONFIG_ARCH_HIBERNATION_POSSIBLE=y
 CONFIG_ARCH_HIBERNATION_HEADER=y
 CONFIG_ARCH_SUSPEND_POSSIBLE=y
@@ -550,6 +478,7 @@ CONFIG_CPUFREQ_DT=m
 CONFIG_CPUFREQ_DT_PLATDEV=y
 CONFIG_ACPI_CPPC_CPUFREQ=m
 # CONFIG_ARM_ARMADA_37XX_CPUFREQ is not set
+# CONFIG_ARM_QCOM_CPUFREQ_HW is not set
 CONFIG_ARM_SCMI_CPUFREQ=m
 CONFIG_ARM_TEGRA20_CPUFREQ=y
 CONFIG_ARM_TEGRA124_CPUFREQ=m
@@ -570,6 +499,7 @@ CONFIG_DMIID=y
 CONFIG_DMI_SYSFS=y
 CONFIG_RASPBERRYPI_FIRMWARE=y
 # CONFIG_FW_CFG_SYSFS is not set
+# CONFIG_INTEL_STRATIX10_SERVICE is not set
 CONFIG_QCOM_SCM=y
 CONFIG_QCOM_SCM_64=y
 # CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
@@ -591,6 +521,8 @@ CONFIG_EFI_ARMSTUB_DTB_LOADER=y
 # CONFIG_EFI_CAPSULE_LOADER is not set
 # CONFIG_EFI_TEST is not set
 # CONFIG_RESET_ATTACK_MITIGATION is not set
+CONFIG_IMX_SCU=y
+CONFIG_IMX_SCU_PD=y
 CONFIG_MESON_SM=y
 
 #
@@ -627,6 +559,7 @@ CONFIG_ACPI_CONTAINER=y
 # CONFIG_ACPI_BGRT is not set
 CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y
 CONFIG_ACPI_NFIT=y
+# CONFIG_NFIT_SECURITY_DEBUG is not set
 CONFIG_HAVE_ACPI_APEI=y
 # CONFIG_ACPI_APEI is not set
 # CONFIG_PMIC_OPREGION is not set
@@ -674,6 +607,7 @@ CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
 CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
 # CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set
 # CONFIG_CRYPTO_CHACHA20_NEON is not set
+CONFIG_CRYPTO_NHPOLY1305_NEON=m
 # CONFIG_CRYPTO_AES_ARM64_BS is not set
 
 #
@@ -785,7 +719,6 @@ CONFIG_BLK_DEV_THROTTLING=y
 # CONFIG_BLK_CMDLINE_PARSER is not set
 CONFIG_BLK_WBT=y
 # CONFIG_BLK_CGROUP_IOLATENCY is not set
-# CONFIG_BLK_WBT_SQ is not set
 CONFIG_BLK_WBT_MQ=y
 CONFIG_BLK_DEBUG_FS=y
 CONFIG_BLK_SED_OPAL=y
@@ -822,14 +755,6 @@ CONFIG_BLK_PM=y
 #
 # IO Schedulers
 #
-CONFIG_IOSCHED_NOOP=y
-CONFIG_IOSCHED_DEADLINE=y
-CONFIG_IOSCHED_CFQ=y
-CONFIG_CFQ_GROUP_IOSCHED=y
-# CONFIG_DEFAULT_DEADLINE is not set
-CONFIG_DEFAULT_CFQ=y
-# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="cfq"
 CONFIG_MQ_IOSCHED_DEADLINE=y
 CONFIG_MQ_IOSCHED_KYBER=m
 CONFIG_IOSCHED_BFQ=m
@@ -923,6 +848,7 @@ CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
 CONFIG_SPARSEMEM_VMEMMAP=y
 CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
 CONFIG_MEMORY_ISOLATION=y
+# CONFIG_MEMORY_HOTPLUG is not set
 CONFIG_SPLIT_PTLOCK_CPUS=4
 CONFIG_MEMORY_BALLOON=y
 CONFIG_BALLOON_COMPACTION=y
@@ -963,6 +889,7 @@ CONFIG_NET=y
 CONFIG_COMPAT_NETLINK_MESSAGES=y
 CONFIG_NET_INGRESS=y
 CONFIG_NET_EGRESS=y
+CONFIG_SKB_EXTENSIONS=y
 
 #
 # Networking options
@@ -1128,9 +1055,6 @@ CONFIG_NF_CT_NETLINK_HELPER=m
 CONFIG_NETFILTER_NETLINK_GLUE_CT=y
 CONFIG_NF_NAT=m
 CONFIG_NF_NAT_NEEDED=y
-CONFIG_NF_NAT_PROTO_DCCP=y
-CONFIG_NF_NAT_PROTO_UDPLITE=y
-CONFIG_NF_NAT_PROTO_SCTP=y
 CONFIG_NF_NAT_AMANDA=m
 CONFIG_NF_NAT_FTP=m
 CONFIG_NF_NAT_IRC=m
@@ -1333,7 +1257,6 @@ CONFIG_NF_REJECT_IPV4=m
 CONFIG_NF_NAT_IPV4=m
 CONFIG_NF_NAT_MASQUERADE_IPV4=y
 CONFIG_NF_NAT_SNMP_BASIC=m
-CONFIG_NF_NAT_PROTO_GRE=m
 CONFIG_NF_NAT_PPTP=m
 CONFIG_NF_NAT_H323=m
 CONFIG_IP_NF_IPTABLES=m
@@ -1651,6 +1574,7 @@ CONFIG_CAN_VCAN=m
 CONFIG_CAN_SLCAN=m
 CONFIG_CAN_DEV=m
 CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_FLEXCAN=m
 # CONFIG_CAN_GRCAN is not set
 # CONFIG_CAN_XILINXCAN is not set
 # CONFIG_CAN_C_CAN is not set
@@ -1824,6 +1748,90 @@ CONFIG_HAVE_EBPF_JIT=y
 #
 CONFIG_ARM_AMBA=y
 CONFIG_TEGRA_AHB=y
+CONFIG_HAVE_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCI_DOMAINS_GENERIC=y
+CONFIG_PCI_SYSCALL=y
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=y
+CONFIG_PCIEAER=y
+CONFIG_PCIEAER_INJECT=m
+# CONFIG_PCIE_ECRC is not set
+CONFIG_PCIEASPM=y
+# CONFIG_PCIEASPM_DEBUG is not set
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+CONFIG_PCIE_DPC=y
+CONFIG_PCIE_PTM=y
+CONFIG_PCI_MSI=y
+CONFIG_PCI_MSI_IRQ_DOMAIN=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
+CONFIG_PCI_STUB=m
+# CONFIG_PCI_PF_STUB is not set
+CONFIG_PCI_ATS=y
+CONFIG_PCI_ECAM=y
+CONFIG_PCI_BRIDGE_EMUL=y
+CONFIG_PCI_IOV=y
+# CONFIG_PCI_PRI is not set
+# CONFIG_PCI_PASID is not set
+CONFIG_PCI_LABEL=y
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_ACPI=y
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+CONFIG_HOTPLUG_PCI_CPCI=y
+CONFIG_HOTPLUG_PCI_SHPC=y
+
+#
+# PCI controller drivers
+#
+CONFIG_PCI_AARDVARK=y
+
+#
+# Cadence PCIe controllers support
+#
+# CONFIG_PCIE_CADENCE_HOST is not set
+# CONFIG_PCI_FTPCI100 is not set
+CONFIG_PCI_TEGRA=y
+CONFIG_PCI_HOST_COMMON=y
+CONFIG_PCI_HOST_GENERIC=y
+# CONFIG_PCIE_XILINX is not set
+CONFIG_PCI_XGENE=y
+CONFIG_PCI_XGENE_MSI=y
+CONFIG_PCI_HOST_THUNDER_PEM=y
+CONFIG_PCI_HOST_THUNDER_ECAM=y
+CONFIG_PCIE_ROCKCHIP=y
+CONFIG_PCIE_ROCKCHIP_HOST=m
+
+#
+# DesignWare PCI Core Support
+#
+CONFIG_PCIE_DW=y
+CONFIG_PCIE_DW_HOST=y
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+CONFIG_PCI_HISI=y
+CONFIG_PCIE_QCOM=y
+CONFIG_PCIE_ARMADA_8K=y
+CONFIG_PCIE_KIRIN=y
+# CONFIG_PCIE_HISI_STB is not set
+# CONFIG_PCI_MESON is not set
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+
+#
+# PCI switch controller drivers
+#
+# CONFIG_PCI_SW_SWITCHTEC is not set
+# CONFIG_PCCARD is not set
+# CONFIG_RAPIDIO is not set
 
 #
 # Generic Driver Options
@@ -1877,6 +1885,7 @@ CONFIG_GENERIC_ARCH_TOPOLOGY=y
 #
 # CONFIG_BRCMSTB_GISB_ARB is not set
 # CONFIG_HISILICON_LPC is not set
+# CONFIG_IMX_WEIM is not set
 CONFIG_QCOM_EBI2=y
 # CONFIG_SIMPLE_PM_BUS is not set
 CONFIG_SUN50I_DE2_BUS=y
@@ -1892,7 +1901,6 @@ CONFIG_GNSS_SIRF_SERIAL=m
 CONFIG_GNSS_UBX_SERIAL=m
 CONFIG_MTD=m
 # CONFIG_MTD_TESTS is not set
-# CONFIG_MTD_REDBOOT_PARTS is not set
 # CONFIG_MTD_CMDLINE_PARTS is not set
 # CONFIG_MTD_AFS_PARTS is not set
 CONFIG_MTD_OF_PARTS=m
@@ -1901,6 +1909,7 @@ CONFIG_MTD_AR7_PARTS=m
 #
 # Partition parsers
 #
+# CONFIG_MTD_REDBOOT_PARTS is not set
 
 #
 # User Modules And Translation Layers
@@ -1937,7 +1946,6 @@ CONFIG_MTD_RAM=m
 #
 # CONFIG_MTD_COMPLEX_MAPPINGS is not set
 # CONFIG_MTD_PHYSMAP is not set
-# CONFIG_MTD_PHYSMAP_OF is not set
 CONFIG_MTD_INTEL_VR_NOR=m
 CONFIG_MTD_PLATRAM=m
 
@@ -1978,6 +1986,7 @@ CONFIG_MTD_SPI_NOR=m
 # CONFIG_MTD_MT81xx_NOR is not set
 CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
 # CONFIG_SPI_CADENCE_QUADSPI is not set
+CONFIG_SPI_FSL_QUADSPI=m
 CONFIG_SPI_HISI_SFC=m
 CONFIG_MTD_UBI=m
 CONFIG_MTD_UBI_WL_THRESHOLD=4096
@@ -2046,11 +2055,13 @@ CONFIG_NVME_MULTIPATH=y
 CONFIG_NVME_FABRICS=m
 CONFIG_NVME_RDMA=m
 CONFIG_NVME_FC=m
+CONFIG_NVME_TCP=m
 CONFIG_NVME_TARGET=m
 # CONFIG_NVME_TARGET_LOOP is not set
 CONFIG_NVME_TARGET_RDMA=m
 CONFIG_NVME_TARGET_FC=m
 # CONFIG_NVME_TARGET_FCLOOP is not set
+CONFIG_NVME_TARGET_TCP=m
 
 #
 # Misc devices
@@ -2082,6 +2093,7 @@ CONFIG_SRAM=y
 CONFIG_VEXPRESS_SYSCFG=y
 # CONFIG_PCI_ENDPOINT_TEST is not set
 CONFIG_MISC_RTSX=m
+CONFIG_PVPANIC=m
 CONFIG_C2PORT=m
 
 #
@@ -2143,6 +2155,7 @@ CONFIG_ALTERA_STAPL=m
 #
 # CONFIG_GENWQE is not set
 # CONFIG_ECHO is not set
+CONFIG_MISC_ALCOR_PCI=m
 CONFIG_MISC_RTSX_PCI=m
 CONFIG_MISC_RTSX_USB=m
 
@@ -2154,7 +2167,6 @@ CONFIG_RAID_ATTRS=m
 CONFIG_SCSI=m
 CONFIG_SCSI_DMA=y
 CONFIG_SCSI_NETLINK=y
-# CONFIG_SCSI_MQ_DEFAULT is not set
 # CONFIG_SCSI_PROC_FS is not set
 
 #
@@ -2271,7 +2283,6 @@ CONFIG_SCSI_PM8001=m
 CONFIG_SCSI_BFA_FC=m
 CONFIG_SCSI_VIRTIO=m
 CONFIG_SCSI_CHELSIO_FCOE=m
-CONFIG_SCSI_LOWLEVEL_PCMCIA=y
 CONFIG_SCSI_DH=y
 CONFIG_SCSI_DH_RDAC=m
 CONFIG_SCSI_DH_HP_SW=m
@@ -2294,6 +2305,7 @@ CONFIG_SATA_PMP=y
 CONFIG_SATA_AHCI=m
 CONFIG_SATA_MOBILE_LPM_POLICY=0
 CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_AHCI_IMX=m
 # CONFIG_AHCI_CEVA is not set
 CONFIG_AHCI_MVEBU=m
 # CONFIG_AHCI_SUNXI is not set
@@ -2344,6 +2356,7 @@ CONFIG_PATA_CMD64X=m
 # CONFIG_PATA_HPT37X is not set
 # CONFIG_PATA_HPT3X2N is not set
 # CONFIG_PATA_HPT3X3 is not set
+# CONFIG_PATA_IMX is not set
 CONFIG_PATA_IT8213=m
 CONFIG_PATA_IT821X=m
 CONFIG_PATA_JMICRON=m
@@ -2517,7 +2530,7 @@ CONFIG_ATM_SOLOS=m
 # CONFIG_NET_DSA_LANTIQ_GSWIP is not set
 # CONFIG_NET_DSA_MT7530 is not set
 CONFIG_NET_DSA_MV88E6060=m
-# CONFIG_MICROCHIP_KSZ is not set
+# CONFIG_NET_DSA_MICROCHIP_KSZ9477 is not set
 CONFIG_NET_DSA_MV88E6XXX=m
 CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y
 # CONFIG_NET_DSA_MV88E6XXX_PTP is not set
@@ -2627,6 +2640,11 @@ CONFIG_BE2NET_LANCER=y
 CONFIG_BE2NET_SKYHAWK=y
 CONFIG_NET_VENDOR_EZCHIP=y
 # CONFIG_EZCHIP_NPS_MANAGEMENT_ENET is not set
+CONFIG_NET_VENDOR_FREESCALE=y
+CONFIG_FEC=m
+CONFIG_FSL_PQ_MDIO=m
+CONFIG_FSL_XGMAC_MDIO=m
+CONFIG_GIANFAR=m
 CONFIG_NET_VENDOR_HISILICON=y
 CONFIG_HIX5HD2_GMAC=m
 CONFIG_HISI_FEMAC=m
@@ -2944,6 +2962,7 @@ CONFIG_USB_IPHETH=m
 CONFIG_USB_SIERRA_NET=m
 CONFIG_USB_VL600=m
 CONFIG_USB_NET_CH9200=m
+CONFIG_USB_NET_AQC111=m
 CONFIG_WLAN=y
 # CONFIG_WIRELESS_WDS is not set
 CONFIG_WLAN_VENDOR_ADMTEK=y
@@ -3177,9 +3196,11 @@ CONFIG_WLAN_VENDOR_ZYDAS=y
 CONFIG_ZD1211RW=m
 # CONFIG_ZD1211RW_DEBUG is not set
 CONFIG_WLAN_VENDOR_QUANTENNA=y
-# CONFIG_QTNFMAC_PEARL_PCIE is not set
+CONFIG_QTNFMAC=m
+CONFIG_QTNFMAC_PCIE=m
 CONFIG_MAC80211_HWSIM=m
 CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_VIRT_WIFI=m
 
 #
 # WiMAX Wireless Broadband devices
@@ -3251,6 +3272,7 @@ CONFIG_KEYBOARD_LM8323=m
 CONFIG_KEYBOARD_MAX7359=m
 # CONFIG_KEYBOARD_MCS is not set
 # CONFIG_KEYBOARD_MPR121 is not set
+CONFIG_KEYBOARD_IMX=m
 # CONFIG_KEYBOARD_NEWTON is not set
 CONFIG_KEYBOARD_TEGRA=m
 CONFIG_KEYBOARD_OPENCORES=m
@@ -3360,6 +3382,7 @@ CONFIG_SERIO_ALTERA_PS2=m
 # CONFIG_SERIO_PS2MULT is not set
 # CONFIG_SERIO_ARC_PS2 is not set
 # CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_OLPC_APSP is not set
 # CONFIG_SERIO_SUN4I_PS2 is not set
 # CONFIG_SERIO_GPIO_PS2 is not set
 # CONFIG_USERIO is not set
@@ -3423,6 +3446,7 @@ CONFIG_SERIAL_MESON_CONSOLE=y
 CONFIG_SERIAL_TEGRA=y
 # CONFIG_SERIAL_MAX3100 is not set
 # CONFIG_SERIAL_MAX310X is not set
+CONFIG_SERIAL_IMX=m
 # CONFIG_SERIAL_UARTLITE is not set
 CONFIG_SERIAL_CORE=y
 CONFIG_SERIAL_CORE_CONSOLE=y
@@ -3443,8 +3467,10 @@ CONFIG_SERIAL_RP2_NR_UARTS=32
 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
 CONFIG_SERIAL_MVEBU_UART=y
 CONFIG_SERIAL_MVEBU_CONSOLE=y
+CONFIG_SERIAL_MCTRL_GPIO=m
 CONFIG_SERIAL_DEV_BUS=m
 CONFIG_TTY_PRINTK=m
+CONFIG_TTY_PRINTK_LEVEL=6
 # CONFIG_PRINTER is not set
 # CONFIG_PPDEV is not set
 CONFIG_HVC_DRIVER=y
@@ -3466,16 +3492,13 @@ CONFIG_HW_RANDOM=m
 CONFIG_HW_RANDOM_BCM2835=m
 # CONFIG_HW_RANDOM_OMAP is not set
 CONFIG_HW_RANDOM_VIRTIO=m
+CONFIG_HW_RANDOM_IMX_RNGC=m
 CONFIG_HW_RANDOM_HISI=m
 CONFIG_HW_RANDOM_XGENE=m
 CONFIG_HW_RANDOM_MESON=m
 CONFIG_HW_RANDOM_CAVIUM=m
 # CONFIG_R3964 is not set
 # CONFIG_APPLICOM is not set
-
-#
-# PCMCIA character devices
-#
 # CONFIG_RAW_DRIVER is not set
 # CONFIG_TCG_TPM is not set
 CONFIG_DEVPORT=y
@@ -3550,6 +3573,8 @@ CONFIG_I2C_DESIGNWARE_PLATFORM=m
 # CONFIG_I2C_DESIGNWARE_PCI is not set
 # CONFIG_I2C_EMEV2 is not set
 # CONFIG_I2C_GPIO is not set
+CONFIG_I2C_IMX=m
+CONFIG_I2C_IMX_LPI2C=m
 CONFIG_I2C_MESON=m
 CONFIG_I2C_MV64XXX=m
 # CONFIG_I2C_NOMADIK is not set
@@ -3590,6 +3615,9 @@ CONFIG_I2C_XGENE_SLIMPRO=m
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
 # CONFIG_I2C_DEBUG_BUS is not set
+CONFIG_I3C=m
+CONFIG_CDNS_I3C_MASTER=m
+CONFIG_DW_I3C_MASTER=m
 CONFIG_SPI=y
 # CONFIG_SPI_DEBUG is not set
 CONFIG_SPI_MASTER=y
@@ -3607,7 +3635,9 @@ CONFIG_SPI_BITBANG=m
 CONFIG_SPI_BUTTERFLY=m
 # CONFIG_SPI_CADENCE is not set
 # CONFIG_SPI_DESIGNWARE is not set
+CONFIG_SPI_FSL_LPSPI=m
 # CONFIG_SPI_GPIO is not set
+CONFIG_SPI_IMX=m
 CONFIG_SPI_LM70_LLP=m
 # CONFIG_SPI_FSL_SPI is not set
 # CONFIG_SPI_MESON_SPICC is not set
@@ -3623,6 +3653,7 @@ CONFIG_SPI_QUP=m
 # CONFIG_SPI_SC18IS602 is not set
 # CONFIG_SPI_SUN4I is not set
 # CONFIG_SPI_SUN6I is not set
+# CONFIG_SPI_MXIC is not set
 CONFIG_SPI_TEGRA114=m
 CONFIG_SPI_TEGRA20_SFLASH=m
 CONFIG_SPI_TEGRA20_SLINK=m
@@ -3661,6 +3692,7 @@ CONFIG_PPS_CLIENT_PARPORT=m
 # PTP clock support
 #
 CONFIG_PTP_1588_CLOCK=y
+CONFIG_PTP_1588_CLOCK_QORIQ=m
 
 #
 # Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
@@ -3680,7 +3712,12 @@ CONFIG_PINCTRL_SINGLE=y
 # CONFIG_PINCTRL_SX150X is not set
 CONFIG_PINCTRL_MAX77620=y
 # CONFIG_PINCTRL_RK805 is not set
+# CONFIG_PINCTRL_OCELOT is not set
 CONFIG_PINCTRL_BCM2835=y
+CONFIG_PINCTRL_IMX=y
+CONFIG_PINCTRL_IMX_SCU=y
+CONFIG_PINCTRL_IMX8MQ=y
+CONFIG_PINCTRL_IMX8QXP=y
 CONFIG_PINCTRL_MVEBU=y
 CONFIG_PINCTRL_ARMADA_AP806=y
 CONFIG_PINCTRL_ARMADA_CP110=y
@@ -3740,6 +3777,7 @@ CONFIG_GPIO_GENERIC=y
 # CONFIG_GPIO_ALTERA is not set
 # CONFIG_GPIO_AMDPT is not set
 CONFIG_GPIO_RASPBERRYPI_EXP=m
+CONFIG_GPIO_CADENCE=m
 # CONFIG_GPIO_DWAPB is not set
 # CONFIG_GPIO_EXAR is not set
 # CONFIG_GPIO_FTGPIO010 is not set
@@ -3749,7 +3787,9 @@ CONFIG_GPIO_GENERIC_PLATFORM=y
 CONFIG_GPIO_MB86S7X=m
 # CONFIG_GPIO_MOCKUP is not set
 CONFIG_GPIO_MVEBU=y
+CONFIG_GPIO_MXC=y
 CONFIG_GPIO_PL061=y
+# CONFIG_GPIO_SAMA5D2_PIOBU is not set
 # CONFIG_GPIO_SYSCON is not set
 CONFIG_GPIO_TEGRA=y
 # CONFIG_GPIO_THUNDERX is not set
@@ -3806,6 +3846,7 @@ CONFIG_W1_CON=y
 # CONFIG_W1_MASTER_MATROX is not set
 CONFIG_W1_MASTER_DS2490=m
 CONFIG_W1_MASTER_DS2482=m
+CONFIG_W1_MASTER_MXC=m
 # CONFIG_W1_MASTER_DS1WM is not set
 CONFIG_W1_MASTER_GPIO=m
 
@@ -3980,6 +4021,7 @@ CONFIG_SENSORS_NCT6775=m
 # CONFIG_SENSORS_NCT7802 is not set
 # CONFIG_SENSORS_NCT7904 is not set
 # CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_OCC_P8_I2C is not set
 # CONFIG_SENSORS_PCF8591 is not set
 # CONFIG_PMBUS is not set
 # CONFIG_SENSORS_PWM_FAN is not set
@@ -4057,16 +4099,13 @@ CONFIG_CPU_THERMAL=y
 # CONFIG_DEVFREQ_THERMAL is not set
 # CONFIG_THERMAL_EMULATION is not set
 CONFIG_HISI_THERMAL=m
+CONFIG_IMX_THERMAL=m
 # CONFIG_MAX77620_THERMAL is not set
 # CONFIG_QORIQ_THERMAL is not set
 # CONFIG_ROCKCHIP_THERMAL is not set
 CONFIG_ARMADA_THERMAL=m
 
 #
-# ACPI INT340X thermal drivers
-#
-
-#
 # Broadcom thermal drivers
 #
 CONFIG_BCM2835_THERMAL=m
@@ -4076,13 +4115,13 @@ CONFIG_BCM2835_THERMAL=m
 #
 CONFIG_TEGRA_SOCTHERM=y
 # CONFIG_TEGRA_BPMP_THERMAL is not set
-CONFIG_QCOM_SPMI_TEMP_ALARM=m
 # CONFIG_GENERIC_ADC_THERMAL is not set
 
 #
 # Qualcomm thermal drivers
 #
 CONFIG_QCOM_TSENS=m
+CONFIG_QCOM_SPMI_TEMP_ALARM=m
 CONFIG_WATCHDOG=y
 CONFIG_WATCHDOG_CORE=y
 # CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -4105,10 +4144,12 @@ CONFIG_DW_WATCHDOG=m
 CONFIG_SUNXI_WATCHDOG=m
 # CONFIG_MAX63XX_WATCHDOG is not set
 # CONFIG_MAX77620_WATCHDOG is not set
+CONFIG_IMX2_WDT=m
 CONFIG_TEGRA_WATCHDOG=m
 CONFIG_QCOM_WDT=m
 CONFIG_MESON_GXBB_WATCHDOG=m
 CONFIG_MESON_WATCHDOG=m
+CONFIG_PM8916_WATCHDOG=m
 # CONFIG_ALIM7101_WDT is not set
 # CONFIG_I6300ESB_WDT is not set
 CONFIG_BCM2835_WDT=m
@@ -4163,7 +4204,6 @@ CONFIG_MFD_CORE=y
 # CONFIG_MFD_AS3722 is not set
 # CONFIG_PMIC_ADP5520 is not set
 # CONFIG_MFD_AAT2870_CORE is not set
-# CONFIG_MFD_AT91_USART is not set
 # CONFIG_MFD_ATMEL_FLEXCOM is not set
 # CONFIG_MFD_ATMEL_HLCDC is not set
 # CONFIG_MFD_BCM590XX is not set
@@ -4300,6 +4340,7 @@ CONFIG_REGULATOR_MAX77620=m
 # CONFIG_REGULATOR_MAX8660 is not set
 # CONFIG_REGULATOR_MAX8952 is not set
 # CONFIG_REGULATOR_MAX8973 is not set
+# CONFIG_REGULATOR_MCP16502 is not set
 # CONFIG_REGULATOR_MT6311 is not set
 # CONFIG_REGULATOR_PFUZE100 is not set
 # CONFIG_REGULATOR_PV88060 is not set
@@ -4358,6 +4399,7 @@ CONFIG_RC_LOOPBACK=m
 # CONFIG_IR_SUNXI is not set
 # CONFIG_IR_SERIAL is not set
 # CONFIG_IR_SIR is not set
+CONFIG_RC_XBOX_DVD=m
 CONFIG_MEDIA_SUPPORT=m
 
 #
@@ -4377,7 +4419,6 @@ CONFIG_VIDEO_DEV=m
 CONFIG_VIDEO_V4L2=m
 # CONFIG_VIDEO_ADV_DEBUG is not set
 # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-# CONFIG_VIDEO_PCI_SKELETON is not set
 CONFIG_VIDEO_TUNER=m
 CONFIG_V4L2_MEM2MEM_DEV=m
 CONFIG_V4L2_FWNODE=m
@@ -4636,8 +4677,11 @@ CONFIG_DVB_NETUP_UNIDVB=m
 CONFIG_V4L_PLATFORM_DRIVERS=y
 CONFIG_VIDEO_CAFE_CCIC=m
 CONFIG_VIDEO_CADENCE=y
+# CONFIG_VIDEO_ASPEED is not set
 # CONFIG_SOC_CAMERA is not set
 CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_CODA=m
+CONFIG_VIDEO_IMX_PXP=m
 # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
 # CONFIG_VIDEO_SH_VEU is not set
 # CONFIG_VIDEO_ROCKCHIP_RGA is not set
@@ -5048,6 +5092,7 @@ CONFIG_DRM_AMDGPU_USERPTR=y
 #
 CONFIG_DRM_AMD_DC=y
 # CONFIG_DEBUG_KERNEL_DC is not set
+# CONFIG_HSA_AMD is not set
 
 #
 # AMD Library routines
@@ -5101,10 +5146,12 @@ CONFIG_DRM_PANEL_SIMPLE=m
 # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
 # CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
 # CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
 # CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
 # CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
 # CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
 # CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
@@ -5112,6 +5159,7 @@ CONFIG_DRM_PANEL_SIMPLE=m
 # CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
 # CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
 # CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
+# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
 CONFIG_DRM_BRIDGE=y
 CONFIG_DRM_PANEL_BRIDGE=y
 
@@ -5143,6 +5191,8 @@ CONFIG_DRM_DW_HDMI=m
 # CONFIG_DRM_DW_HDMI_CEC is not set
 CONFIG_DRM_VC4=m
 # CONFIG_DRM_VC4_HDMI_CEC is not set
+CONFIG_DRM_ETNAVIV=m
+CONFIG_DRM_ETNAVIV_THERMAL=y
 # CONFIG_DRM_ARCPGU is not set
 CONFIG_DRM_HISI_HIBMC=m
 CONFIG_DRM_HISI_KIRIN=m
@@ -5179,7 +5229,6 @@ CONFIG_FB_SYS_IMAGEBLIT=y
 CONFIG_FB_SYS_FOPS=y
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_SVGALIB=m
-CONFIG_FB_BACKLIGHT=y
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_FB_TILEBLITTING=y
 
@@ -5189,6 +5238,7 @@ CONFIG_FB_TILEBLITTING=y
 # CONFIG_FB_CIRRUS is not set
 # CONFIG_FB_PM2 is not set
 CONFIG_FB_ARMCLCD=y
+CONFIG_FB_IMX=m
 # CONFIG_FB_CYBER2000 is not set
 # CONFIG_FB_ASILIANT is not set
 # CONFIG_FB_IMSTT is not set
@@ -5227,11 +5277,25 @@ CONFIG_XEN_FBDEV_FRONTEND=y
 CONFIG_FB_MB862XX=m
 CONFIG_FB_MB862XX_PCI_GDC=y
 CONFIG_FB_MB862XX_I2C=y
+# CONFIG_FB_MX3 is not set
+# CONFIG_FB_MXS is not set
 CONFIG_FB_SIMPLE=y
 # CONFIG_FB_SSD1307 is not set
 # CONFIG_FB_SM712 is not set
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
-# CONFIG_LCD_CLASS_DEVICE is not set
+CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_LCD_L4F00242T03=m
+CONFIG_LCD_LMS283GF05=m
+CONFIG_LCD_LTV350QV=m
+CONFIG_LCD_ILI922X=m
+CONFIG_LCD_ILI9320=m
+CONFIG_LCD_TDO24M=m
+CONFIG_LCD_VGG2432A4=m
+CONFIG_LCD_PLATFORM=m
+CONFIG_LCD_AMS369FG06=m
+CONFIG_LCD_LMS501KF03=m
+CONFIG_LCD_HX8357=m
+CONFIG_LCD_OTM3225A=m
 CONFIG_BACKLIGHT_CLASS_DEVICE=y
 CONFIG_BACKLIGHT_GENERIC=m
 CONFIG_BACKLIGHT_PWM=m
@@ -5272,6 +5336,7 @@ CONFIG_SND_DMAENGINE_PCM=m
 CONFIG_SND_HWDEP=m
 CONFIG_SND_SEQ_DEVICE=m
 CONFIG_SND_RAWMIDI=m
+CONFIG_SND_COMPRESS_OFFLOAD=m
 CONFIG_SND_JACK=y
 CONFIG_SND_JACK_INPUT_DEV=y
 CONFIG_SND_OSSEMUL=y
@@ -5419,6 +5484,7 @@ CONFIG_SND_FIREWIRE_TASCAM=m
 # CONFIG_SND_FIREFACE is not set
 CONFIG_SND_SOC=m
 CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
+CONFIG_SND_SOC_COMPRESS=y
 # CONFIG_SND_SOC_AMD_ACP is not set
 # CONFIG_SND_ATMEL_SOC is not set
 CONFIG_SND_BCM2835_SOC_I2S=m
@@ -5432,11 +5498,21 @@ CONFIG_SND_BCM2835_SOC_I2S=m
 # Common SoC Audio options for Freescale CPUs:
 #
 # CONFIG_SND_SOC_FSL_ASRC is not set
-# CONFIG_SND_SOC_FSL_SAI is not set
-# CONFIG_SND_SOC_FSL_SSI is not set
-# CONFIG_SND_SOC_FSL_SPDIF is not set
-# CONFIG_SND_SOC_FSL_ESAI is not set
-# CONFIG_SND_SOC_IMX_AUDMUX is not set
+CONFIG_SND_SOC_FSL_SAI=m
+CONFIG_SND_SOC_FSL_SSI=m
+CONFIG_SND_SOC_FSL_SPDIF=m
+CONFIG_SND_SOC_FSL_ESAI=m
+CONFIG_SND_SOC_IMX_PCM_DMA=m
+CONFIG_SND_SOC_IMX_AUDMUX=m
+CONFIG_SND_IMX_SOC=m
+
+#
+# SoC Audio support for Freescale i.MX boards:
+#
+CONFIG_SND_SOC_IMX_ES8328=m
+CONFIG_SND_SOC_IMX_SGTL5000=m
+CONFIG_SND_SOC_IMX_SPDIF=m
+CONFIG_SND_SOC_FSL_ASOC_CARD=m
 CONFIG_SND_I2S_HI6210_I2S=m
 # CONFIG_SND_KIRKWOOD_SOC is not set
 # CONFIG_SND_SOC_IMG is not set
@@ -5450,6 +5526,7 @@ CONFIG_SND_I2S_HI6210_I2S=m
 # CONFIG_SND_MESON_AXG_TDMOUT is not set
 # CONFIG_SND_MESON_AXG_SOUND_CARD is not set
 # CONFIG_SND_MESON_AXG_SPDIFOUT is not set
+# CONFIG_SND_MESON_AXG_SPDIFIN is not set
 # CONFIG_SND_MESON_AXG_PDM is not set
 CONFIG_SND_SOC_QCOM=m
 CONFIG_SND_SOC_LPASS_CPU=m
@@ -5500,6 +5577,7 @@ CONFIG_SND_SOC_TEGRA_ALC5632=m
 CONFIG_SND_SOC_TEGRA_MAX98090=m
 CONFIG_SND_SOC_TEGRA_RT5677=m
 # CONFIG_SND_SOC_TEGRA_SGTL5000 is not set
+CONFIG_SND_SOC_XILINX_I2S=m
 # CONFIG_SND_SOC_XTFPGA_I2S is not set
 # CONFIG_ZX_TDM is not set
 CONFIG_SND_SOC_I2C_AND_SPI=m
@@ -5513,6 +5591,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=m
 # CONFIG_SND_SOC_ADAU1761_SPI is not set
 # CONFIG_SND_SOC_ADAU7002 is not set
 # CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
 # CONFIG_SND_SOC_AK4458 is not set
 # CONFIG_SND_SOC_AK4554 is not set
 # CONFIG_SND_SOC_AK4613 is not set
@@ -5545,8 +5624,9 @@ CONFIG_SND_SOC_HDMI_CODEC=m
 # CONFIG_SND_SOC_ES7134 is not set
 # CONFIG_SND_SOC_ES7241 is not set
 # CONFIG_SND_SOC_ES8316 is not set
-# CONFIG_SND_SOC_ES8328_I2C is not set
-# CONFIG_SND_SOC_ES8328_SPI is not set
+CONFIG_SND_SOC_ES8328=m
+CONFIG_SND_SOC_ES8328_I2C=m
+CONFIG_SND_SOC_ES8328_SPI=m
 # CONFIG_SND_SOC_GTM601 is not set
 # CONFIG_SND_SOC_INNO_RK3036 is not set
 # CONFIG_SND_SOC_MAX98088 is not set
@@ -5574,9 +5654,10 @@ CONFIG_SND_SOC_RL6231=m
 # CONFIG_SND_SOC_RT5616 is not set
 # CONFIG_SND_SOC_RT5631 is not set
 CONFIG_SND_SOC_RT5640=m
+CONFIG_SND_SOC_RT5663=m
 CONFIG_SND_SOC_RT5677=m
 CONFIG_SND_SOC_RT5677_SPI=m
-# CONFIG_SND_SOC_SGTL5000 is not set
+CONFIG_SND_SOC_SGTL5000=m
 # CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
 # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set
 # CONFIG_SND_SOC_SPDIF is not set
@@ -5721,6 +5802,7 @@ CONFIG_HID_PETALYNX=m
 CONFIG_HID_PICOLCD=m
 CONFIG_HID_PICOLCD_FB=y
 CONFIG_HID_PICOLCD_BACKLIGHT=y
+# CONFIG_HID_PICOLCD_LCD is not set
 CONFIG_HID_PICOLCD_LEDS=y
 CONFIG_HID_PICOLCD_CIR=y
 CONFIG_HID_PLANTRONICS=m
@@ -5810,6 +5892,7 @@ CONFIG_USB_EHCI_HCD=m
 CONFIG_USB_EHCI_ROOT_HUB_TT=y
 CONFIG_USB_EHCI_TT_NEWSCHED=y
 CONFIG_USB_EHCI_PCI=m
+CONFIG_USB_EHCI_MXC=m
 CONFIG_USB_EHCI_HCD_ORION=m
 CONFIG_USB_EHCI_TEGRA=m
 CONFIG_USB_EHCI_HCD_PLATFORM=m
@@ -6026,6 +6109,7 @@ CONFIG_USB_PHY=y
 CONFIG_NOP_USB_XCEIV=m
 # CONFIG_USB_GPIO_VBUS is not set
 # CONFIG_USB_ISP1301 is not set
+CONFIG_USB_MXS_PHY=m
 CONFIG_USB_TEGRA_PHY=m
 CONFIG_USB_ULPI=y
 CONFIG_USB_ULPI_VIEWPORT=y
@@ -6040,6 +6124,7 @@ CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
 #
 # USB Peripheral Controller
 #
+CONFIG_USB_FSL_USB2=m
 # CONFIG_USB_FOTG210_UDC is not set
 # CONFIG_USB_GR_UDC is not set
 # CONFIG_USB_R8A66597 is not set
@@ -6123,6 +6208,7 @@ CONFIG_USB_G_SERIAL=m
 # CONFIG_USB_G_DBGP is not set
 # CONFIG_USB_G_WEBCAM is not set
 # CONFIG_TYPEC is not set
+CONFIG_USB_ROLE_SWITCH=m
 CONFIG_USB_LED_TRIG=y
 CONFIG_USB_ULPI_BUS=m
 CONFIG_UWB=m
@@ -6153,15 +6239,19 @@ CONFIG_MMC_SDHCI_ACPI=m
 CONFIG_MMC_SDHCI_PLTFM=m
 CONFIG_MMC_SDHCI_OF_ARASAN=m
 # CONFIG_MMC_SDHCI_OF_AT91 is not set
+CONFIG_MMC_SDHCI_OF_ESDHC=m
 # CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
 # CONFIG_MMC_SDHCI_CADENCE is not set
+CONFIG_MMC_SDHCI_ESDHC_IMX=m
 CONFIG_MMC_SDHCI_TEGRA=m
 # CONFIG_MMC_SDHCI_PXAV3 is not set
 CONFIG_MMC_SDHCI_F_SDH30=m
 CONFIG_MMC_SDHCI_IPROC=m
 CONFIG_MMC_MESON_GX=m
 # CONFIG_MMC_MESON_MX_SDIO is not set
+CONFIG_MMC_ALCOR=m
 CONFIG_MMC_SDHCI_MSM=m
+CONFIG_MMC_MXC=m
 CONFIG_MMC_TIFM_SD=m
 CONFIG_MMC_SPI=m
 CONFIG_MMC_CB710=m
@@ -6186,6 +6276,7 @@ CONFIG_MMC_BCM2835=m
 # CONFIG_MMC_MTK is not set
 CONFIG_MMC_SDHCI_XENON=m
 # CONFIG_MMC_SDHCI_OMAP is not set
+CONFIG_MMC_SDHCI_AM654=m
 CONFIG_MEMSTICK=m
 # CONFIG_MEMSTICK_DEBUG is not set
 
@@ -6273,6 +6364,7 @@ CONFIG_LEDS_TRIGGER_CAMERA=m
 CONFIG_LEDS_TRIGGER_PANIC=y
 # CONFIG_LEDS_TRIGGER_NETDEV is not set
 # CONFIG_LEDS_TRIGGER_PATTERN is not set
+CONFIG_LEDS_TRIGGER_AUDIO=m
 CONFIG_ACCESSIBILITY=y
 CONFIG_A11Y_BRAILLE_CONSOLE=y
 CONFIG_INFINIBAND=m
@@ -6414,6 +6506,7 @@ CONFIG_RTC_DRV_EFI=y
 #
 # on-CPU RTC drivers
 #
+CONFIG_RTC_DRV_IMXDI=m
 # CONFIG_RTC_DRV_PL030 is not set
 CONFIG_RTC_DRV_PL031=y
 CONFIG_RTC_DRV_SUN6I=y
@@ -6422,7 +6515,10 @@ CONFIG_RTC_DRV_ARMADA38X=m
 # CONFIG_RTC_DRV_FTRTC010 is not set
 CONFIG_RTC_DRV_PM8XXX=m
 CONFIG_RTC_DRV_TEGRA=y
+CONFIG_RTC_DRV_MXC=m
+CONFIG_RTC_DRV_MXC_V2=m
 # CONFIG_RTC_DRV_SNVS is not set
+CONFIG_RTC_DRV_IMX_SC=m
 CONFIG_RTC_DRV_XGENE=y
 # CONFIG_RTC_DRV_R7301 is not set
 
@@ -6448,10 +6544,15 @@ CONFIG_DMA_BCM2835=y
 CONFIG_DMA_SUN6I=m
 # CONFIG_DW_AXI_DMAC is not set
 # CONFIG_FSL_EDMA is not set
+CONFIG_IMX_DMA=m
+CONFIG_IMX_SDMA=m
 # CONFIG_INTEL_IDMA64 is not set
 CONFIG_K3_DMA=m
 CONFIG_MV_XOR=y
 CONFIG_MV_XOR_V2=y
+# CONFIG_MXS_DMA is not set
+CONFIG_MX3_IPU=y
+CONFIG_MX3_IPU_IRQS=4
 CONFIG_PL330_DMA=m
 CONFIG_TEGRA20_APB_DMA=y
 CONFIG_TEGRA210_ADMA=y
@@ -6597,7 +6698,6 @@ CONFIG_88EU_AP_MODE=y
 #
 # Resolver to digital converters
 #
-# CONFIG_AD2S90 is not set
 # CONFIG_AD2S1210 is not set
 # CONFIG_FB_SM750 is not set
 # CONFIG_FB_XGI is not set
@@ -6692,6 +6792,7 @@ CONFIG_COMMON_CLK_SCMI=m
 CONFIG_COMMON_CLK_XGENE=y
 # CONFIG_COMMON_CLK_PWM is not set
 # CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_BD718XX is not set
 CONFIG_COMMON_CLK_HI3516CV300=y
 CONFIG_COMMON_CLK_HI3519=y
 CONFIG_COMMON_CLK_HI3660=y
@@ -6701,6 +6802,10 @@ CONFIG_COMMON_CLK_HI6220=y
 CONFIG_RESET_HISI=y
 CONFIG_STUB_CLK_HI6220=y
 # CONFIG_STUB_CLK_HI3660 is not set
+CONFIG_MXC_CLK=y
+CONFIG_MXC_CLK_SCU=y
+CONFIG_CLK_IMX8MQ=y
+CONFIG_CLK_IMX8QXP=y
 CONFIG_COMMON_CLK_AMLOGIC=y
 CONFIG_COMMON_CLK_AMLOGIC_AUDIO=y
 CONFIG_COMMON_CLK_MESON_AO=y
@@ -6741,8 +6846,10 @@ CONFIG_MSM_MMCC_8996=y
 # CONFIG_SDM_CAMCC_845 is not set
 # CONFIG_SDM_GCC_660 is not set
 CONFIG_SDM_GCC_845=m
+CONFIG_SDM_GPUCC_845=m
 CONFIG_SDM_VIDEOCC_845=m
 CONFIG_SDM_DISPCC_845=m
+CONFIG_SDM_LPASSCC_845=m
 # CONFIG_SPMI_PMIC_CLKDIV is not set
 # CONFIG_QCOM_HFPLL is not set
 # CONFIG_KPSS_XCC is not set
@@ -6775,6 +6882,7 @@ CONFIG_ARM_TIMER_SP804=y
 CONFIG_CLKSRC_VERSATILE=y
 CONFIG_MAILBOX=y
 # CONFIG_ARM_MHU is not set
+CONFIG_IMX_MBOX=m
 # CONFIG_PLATFORM_MHU is not set
 # CONFIG_PL320_MBOX is not set
 # CONFIG_ROCKCHIP_MBOX is not set
@@ -6830,7 +6938,8 @@ CONFIG_RPMSG_QCOM_GLINK_RPM=m
 #
 # Amlogic SoC drivers
 #
-# CONFIG_MESON_CANVAS is not set
+CONFIG_MESON_CANVAS=m
+CONFIG_MESON_CLK_MEASURE=y
 CONFIG_MESON_GX_SOCINFO=y
 CONFIG_MESON_GX_PM_DOMAINS=y
 CONFIG_MESON_MX_SOCINFO=y
@@ -6844,6 +6953,7 @@ CONFIG_RASPBERRYPI_POWER=y
 #
 # NXP/Freescale QorIQ SoC drivers
 #
+CONFIG_FSL_GUTS=y
 
 #
 # i.MX SoC drivers
@@ -6962,6 +7072,8 @@ CONFIG_HID_SENSOR_ACCEL_3D=m
 #
 # Analog to digital converters
 #
+CONFIG_AD_SIGMA_DELTA=m
+CONFIG_AD7124=m
 # CONFIG_AD7266 is not set
 # CONFIG_AD7291 is not set
 # CONFIG_AD7298 is not set
@@ -6971,6 +7083,7 @@ CONFIG_HID_SENSOR_ACCEL_3D=m
 # CONFIG_AD7793 is not set
 # CONFIG_AD7887 is not set
 # CONFIG_AD7923 is not set
+# CONFIG_AD7949 is not set
 # CONFIG_AD799X is not set
 CONFIG_AXP20X_ADC=m
 CONFIG_AXP288_ADC=m
@@ -6979,6 +7092,7 @@ CONFIG_AXP288_ADC=m
 # CONFIG_HI8435 is not set
 # CONFIG_HX711 is not set
 # CONFIG_INA2XX_ADC is not set
+CONFIG_IMX7D_ADC=m
 # CONFIG_LTC2471 is not set
 # CONFIG_LTC2485 is not set
 # CONFIG_LTC2497 is not set
@@ -7080,6 +7194,7 @@ CONFIG_AD5446=m
 # CONFIG_MCP4922 is not set
 # CONFIG_TI_DAC082S085 is not set
 # CONFIG_TI_DAC5571 is not set
+# CONFIG_TI_DAC7311 is not set
 # CONFIG_VF610_DAC is not set
 
 #
@@ -7190,6 +7305,7 @@ CONFIG_HID_SENSOR_PROX=m
 # CONFIG_TSL4531 is not set
 # CONFIG_US5182D is not set
 # CONFIG_VCNL4000 is not set
+# CONFIG_VCNL4035 is not set
 # CONFIG_VEML6070 is not set
 # CONFIG_VL6180 is not set
 # CONFIG_ZOPT2201 is not set
@@ -7208,6 +7324,8 @@ CONFIG_HID_SENSOR_MAGNETOMETER_3D=m
 # CONFIG_IIO_ST_MAGN_3AXIS is not set
 # CONFIG_SENSORS_HMC5843_I2C is not set
 # CONFIG_SENSORS_HMC5843_SPI is not set
+# CONFIG_SENSORS_RM3100_I2C is not set
+# CONFIG_SENSORS_RM3100_SPI is not set
 
 #
 # Multiplexers
@@ -7236,6 +7354,7 @@ CONFIG_HID_SENSOR_DEVICE_ROTATION=m
 # CONFIG_MCP4018 is not set
 # CONFIG_MCP4131 is not set
 # CONFIG_MCP4531 is not set
+# CONFIG_MCP41010 is not set
 # CONFIG_TPL0102 is not set
 
 #
@@ -7279,6 +7398,7 @@ CONFIG_HID_SENSOR_PRESS=m
 #
 # Resolver to digital converters
 #
+# CONFIG_AD2S90 is not set
 # CONFIG_AD2S1200 is not set
 
 #
@@ -7300,6 +7420,7 @@ CONFIG_PWM_BCM2835=m
 # CONFIG_PWM_CROS_EC is not set
 # CONFIG_PWM_FSL_FTM is not set
 # CONFIG_PWM_HIBVT is not set
+CONFIG_PWM_IMX=m
 CONFIG_PWM_MESON=m
 # CONFIG_PWM_PCA9685 is not set
 CONFIG_PWM_ROCKCHIP=m
@@ -7317,6 +7438,7 @@ CONFIG_ARM_GIC_V3=y
 CONFIG_ARM_GIC_V3_ITS=y
 CONFIG_ARM_GIC_V3_ITS_PCI=y
 CONFIG_HISILICON_IRQ_MBIGEN=y
+CONFIG_MADERA_IRQ=m
 CONFIG_MVEBU_GICP=y
 CONFIG_MVEBU_ICU=y
 CONFIG_MVEBU_ODMI=y
@@ -7326,6 +7448,7 @@ CONFIG_PARTITION_PERCPU=y
 CONFIG_QCOM_IRQ_COMBINER=y
 CONFIG_MESON_IRQ_GPIO=y
 # CONFIG_QCOM_PDC is not set
+CONFIG_IMX_IRQSTEER=y
 # CONFIG_IPACK_BUS is not set
 CONFIG_ARCH_HAS_RESET_CONTROLLER=y
 CONFIG_RESET_CONTROLLER=y
@@ -7353,6 +7476,8 @@ CONFIG_PHY_MESON_GXL_USB2=y
 CONFIG_PHY_MESON_GXL_USB3=y
 # CONFIG_BCM_KONA_USB2_PHY is not set
 # CONFIG_PHY_CADENCE_DP is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+CONFIG_PHY_FSL_IMX8MQ_USB=m
 CONFIG_PHY_HI6220_USB=m
 # CONFIG_PHY_HISTB_COMBPHY is not set
 # CONFIG_PHY_HISI_INNO_USB2 is not set
@@ -7394,6 +7519,7 @@ CONFIG_ARM_PMU_ACPI=y
 # CONFIG_HISI_PMU is not set
 # CONFIG_QCOM_L2_PMU is not set
 # CONFIG_QCOM_L3_PMU is not set
+CONFIG_THUNDERX2_PMU=m
 # CONFIG_XGENE_PMU is not set
 # CONFIG_ARM_SPE_PMU is not set
 CONFIG_RAS=y
@@ -7413,6 +7539,7 @@ CONFIG_DAX_DRIVER=y
 CONFIG_DAX=y
 CONFIG_DEV_DAX=m
 CONFIG_NVMEM=y
+CONFIG_NVMEM_IMX_IIM=m
 CONFIG_QCOM_QFPROM=m
 # CONFIG_ROCKCHIP_EFUSE is not set
 CONFIG_NVMEM_SUNXI_SID=m
@@ -7920,6 +8047,8 @@ CONFIG_CRYPTO_OFB=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 # CONFIG_CRYPTO_KEYWRAP is not set
+CONFIG_CRYPTO_NHPOLY1305=m
+CONFIG_CRYPTO_ADIANTUM=m
 
 #
 # Hash modes
@@ -7949,6 +8078,7 @@ CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_SHA3=m
 # CONFIG_CRYPTO_SM3 is not set
+CONFIG_CRYPTO_STREEBOG=m
 CONFIG_CRYPTO_TGR192=m
 CONFIG_CRYPTO_WP512=m
 
@@ -8002,10 +8132,26 @@ CONFIG_CRYPTO_USER_API_HASH=m
 CONFIG_CRYPTO_USER_API_SKCIPHER=m
 CONFIG_CRYPTO_USER_API_RNG=m
 CONFIG_CRYPTO_USER_API_AEAD=m
+# CONFIG_CRYPTO_STATS is not set
 CONFIG_CRYPTO_HASH_INFO=y
 CONFIG_CRYPTO_HW=y
 CONFIG_CRYPTO_DEV_MARVELL_CESA=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_COMMON=m
+CONFIG_CRYPTO_DEV_FSL_CAAM=m
+# CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set
+CONFIG_CRYPTO_DEV_FSL_CAAM_JR=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9
+# CONFIG_CRYPTO_DEV_FSL_CAAM_INTC is not set
+CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_PKC_API=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API_DESC=m
+CONFIG_CRYPTO_DEV_SAHARA=m
+CONFIG_CRYPTO_DEV_MXC_SCC=m
 # CONFIG_CRYPTO_DEV_CCP is not set
+# CONFIG_CRYPTO_DEV_MXS_DCP is not set
 CONFIG_CRYPTO_DEV_CPT=m
 CONFIG_CAVIUM_CPT=m
 CONFIG_CRYPTO_DEV_NITROX=m
@@ -8042,6 +8188,7 @@ CONFIG_BINARY_PRINTF=y
 # Library routines
 #
 CONFIG_RAID6_PQ=m
+CONFIG_RAID6_PQ_BENCHMARK=y
 CONFIG_BITREVERSE=y
 CONFIG_HAVE_ARCH_BITREVERSE=y
 CONFIG_RATIONAL=y
@@ -8049,6 +8196,7 @@ CONFIG_GENERIC_STRNCPY_FROM_USER=y
 CONFIG_GENERIC_STRNLEN_USER=y
 CONFIG_GENERIC_NET_UTILS=y
 CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_STMP_DEVICE=y
 CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
 CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
 # CONFIG_INDIRECT_PIO is not set
@@ -8067,7 +8215,7 @@ CONFIG_CRC64=m
 CONFIG_CRC7=m
 CONFIG_LIBCRC32C=m
 CONFIG_CRC8=m
-CONFIG_XXHASH=m
+CONFIG_XXHASH=y
 CONFIG_AUDIT_GENERIC=y
 CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
 CONFIG_AUDIT_COMPAT_GENERIC=y
@@ -8118,9 +8266,10 @@ CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
 CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
 CONFIG_ARCH_HAS_DMA_COHERENT_TO_PFN=y
 CONFIG_ARCH_HAS_DMA_MMAP_PGPROT=y
-CONFIG_DMA_DIRECT_OPS=y
 CONFIG_DMA_VIRT_OPS=y
 CONFIG_SWIOTLB=y
+CONFIG_DMA_REMAP=y
+CONFIG_DMA_DIRECT_REMAP=y
 CONFIG_SGL_ALLOC=y
 CONFIG_CHECK_SIGNATURE=y
 CONFIG_CPU_RMAP=y
@@ -8144,7 +8293,6 @@ CONFIG_FONT_8x8=y
 CONFIG_FONT_8x16=y
 CONFIG_SG_SPLIT=y
 CONFIG_SG_POOL=y
-CONFIG_ARCH_HAS_SG_CHAIN=y
 CONFIG_ARCH_HAS_PMEM_API=y
 CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y
 CONFIG_SBITMAP=y
@@ -8212,7 +8360,10 @@ CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
 CONFIG_DEBUG_MEMORY_INIT=y
 # CONFIG_DEBUG_PER_CPU_MAPS is not set
 CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
 # CONFIG_KASAN is not set
+CONFIG_KASAN_STACK=1
 CONFIG_ARCH_HAS_KCOV=y
 CONFIG_CC_HAS_SANCOV_TRACE_PC=y
 # CONFIG_KCOV is not set
@@ -8315,6 +8466,7 @@ CONFIG_BLK_DEV_IO_TRACE=y
 CONFIG_KPROBE_EVENTS=y
 CONFIG_UPROBE_EVENTS=y
 CONFIG_BPF_EVENTS=y
+CONFIG_DYNAMIC_EVENTS=y
 CONFIG_PROBE_EVENTS=y
 CONFIG_DYNAMIC_FTRACE=y
 # CONFIG_FUNCTION_PROFILER is not set
diff --git a/gnu/packages/aux-files/linux-libre/4.20-i686.conf b/gnu/packages/aux-files/linux-libre/5.0-i686.conf
index c3ed028442..97e8f2a5e9 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-i686.conf
+++ b/gnu/packages/aux-files/linux-libre/5.0-i686.conf
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.20.0-gnu Kernel Configuration
+# Linux/x86 5.0.0-gnu Kernel Configuration
 #
 
 #
@@ -9,6 +9,7 @@
 CONFIG_CC_IS_GCC=y
 CONFIG_GCC_VERSION=70400
 CONFIG_CLANG_VERSION=0
+CONFIG_CC_HAS_ASM_GOTO=y
 CONFIG_IRQ_WORK=y
 CONFIG_BUILDTIME_EXTABLE_SORT=y
 CONFIG_THREAD_INFO_IN_TASK=y
@@ -44,8 +45,6 @@ CONFIG_USELIB=y
 CONFIG_AUDIT=y
 CONFIG_HAVE_ARCH_AUDITSYSCALL=y
 CONFIG_AUDITSYSCALL=y
-CONFIG_AUDIT_WATCH=y
-CONFIG_AUDIT_TREE=y
 
 #
 # IRQ subsystem
@@ -272,7 +271,7 @@ CONFIG_X86_FEATURE_NAMES=y
 CONFIG_X86_MPPARSE=y
 # CONFIG_GOLDFISH is not set
 CONFIG_RETPOLINE=y
-# CONFIG_INTEL_RDT is not set
+# CONFIG_X86_CPU_RESCTRL is not set
 # CONFIG_X86_BIGSMP is not set
 CONFIG_X86_EXTENDED_PLATFORM=y
 # CONFIG_X86_GOLDFISH is not set
@@ -302,6 +301,7 @@ CONFIG_XEN_SAVE_RESTORE=y
 # CONFIG_XEN_DEBUG_FS is not set
 CONFIG_XEN_PVH=y
 CONFIG_KVM_GUEST=y
+CONFIG_PVH=y
 CONFIG_KVM_DEBUG_FS=y
 # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
 CONFIG_PARAVIRT_CLOCK=y
@@ -473,6 +473,7 @@ CONFIG_PM_TRACE=y
 CONFIG_PM_TRACE_RTC=y
 CONFIG_PM_CLK=y
 CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
+# CONFIG_ENERGY_MODEL is not set
 CONFIG_ARCH_SUPPORTS_ACPI=y
 CONFIG_ACPI=y
 CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
@@ -595,7 +596,6 @@ CONFIG_INTEL_IDLE=y
 #
 # Bus options (PCI etc.)
 #
-CONFIG_PCI=y
 # CONFIG_PCI_GOBIOS is not set
 # CONFIG_PCI_GOMMCONFIG is not set
 # CONFIG_PCI_GODIRECT is not set
@@ -604,121 +604,16 @@ CONFIG_PCI_BIOS=y
 CONFIG_PCI_DIRECT=y
 CONFIG_PCI_MMCONFIG=y
 CONFIG_PCI_XEN=y
-CONFIG_PCI_DOMAINS=y
 # CONFIG_PCI_CNB20LE_QUIRK is not set
-CONFIG_PCIEPORTBUS=y
-CONFIG_HOTPLUG_PCI_PCIE=y
-CONFIG_PCIEAER=y
-# CONFIG_PCIEAER_INJECT is not set
-# CONFIG_PCIE_ECRC is not set
-CONFIG_PCIEASPM=y
-CONFIG_PCIEASPM_DEBUG=y
-CONFIG_PCIEASPM_DEFAULT=y
-# CONFIG_PCIEASPM_POWERSAVE is not set
-# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-# CONFIG_PCIEASPM_PERFORMANCE is not set
-CONFIG_PCIE_PME=y
-CONFIG_PCIE_DPC=y
-CONFIG_PCIE_PTM=y
-CONFIG_PCI_MSI=y
-CONFIG_PCI_MSI_IRQ_DOMAIN=y
-CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_DEBUG is not set
-CONFIG_PCI_REALLOC_ENABLE_AUTO=y
-CONFIG_PCI_STUB=m
-# CONFIG_PCI_PF_STUB is not set
-CONFIG_XEN_PCIDEV_FRONTEND=m
-CONFIG_PCI_ATS=y
-CONFIG_PCI_LOCKLESS_CONFIG=y
-CONFIG_PCI_IOV=y
-CONFIG_PCI_PRI=y
-CONFIG_PCI_PASID=y
-CONFIG_PCI_LABEL=y
-CONFIG_HOTPLUG_PCI=y
-CONFIG_HOTPLUG_PCI_COMPAQ=m
-CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=y
-CONFIG_HOTPLUG_PCI_IBM=m
-CONFIG_HOTPLUG_PCI_ACPI=y
-CONFIG_HOTPLUG_PCI_ACPI_IBM=m
-CONFIG_HOTPLUG_PCI_CPCI=y
-CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
-CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
-CONFIG_HOTPLUG_PCI_SHPC=y
-
-#
-# PCI controller drivers
-#
-
-#
-# Cadence PCIe controllers support
-#
-
-#
-# DesignWare PCI Core Support
-#
-# CONFIG_PCIE_DW_PLAT_HOST is not set
-
-#
-# PCI Endpoint
-#
-# CONFIG_PCI_ENDPOINT is not set
-
-#
-# PCI switch controller drivers
-#
-CONFIG_PCI_SW_SWITCHTEC=m
 # CONFIG_ISA_BUS is not set
 CONFIG_ISA_DMA_API=y
 CONFIG_ISA=y
-CONFIG_EISA=y
-CONFIG_EISA_VLB_PRIMING=y
-CONFIG_EISA_PCI_EISA=y
-CONFIG_EISA_VIRTUAL_ROOT=y
-CONFIG_EISA_NAMES=y
 CONFIG_SCx200=m
 CONFIG_SCx200HR_TIMER=m
 CONFIG_ALIX=y
 CONFIG_NET5501=y
 CONFIG_GEOS=y
 CONFIG_AMD_NB=y
-CONFIG_PCCARD=m
-CONFIG_PCMCIA=m
-CONFIG_PCMCIA_LOAD_CIS=y
-CONFIG_CARDBUS=y
-
-#
-# PC-card bridges
-#
-CONFIG_YENTA=m
-CONFIG_YENTA_O2=y
-CONFIG_YENTA_RICOH=y
-CONFIG_YENTA_TI=y
-CONFIG_YENTA_ENE_TUNE=y
-CONFIG_YENTA_TOSHIBA=y
-CONFIG_PD6729=m
-CONFIG_I82092=m
-CONFIG_I82365=m
-CONFIG_TCIC=m
-CONFIG_PCMCIA_PROBE=y
-CONFIG_PCCARD_NONSTATIC=y
-CONFIG_RAPIDIO=y
-CONFIG_RAPIDIO_TSI721=m
-CONFIG_RAPIDIO_DISC_TIMEOUT=30
-# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set
-CONFIG_RAPIDIO_DMA_ENGINE=y
-# CONFIG_RAPIDIO_DEBUG is not set
-CONFIG_RAPIDIO_ENUM_BASIC=m
-CONFIG_RAPIDIO_CHMAN=m
-CONFIG_RAPIDIO_MPORT_CDEV=m
-
-#
-# RapidIO Switch drivers
-#
-CONFIG_RAPIDIO_TSI57X=m
-CONFIG_RAPIDIO_CPS_XX=m
-CONFIG_RAPIDIO_TSI568=m
-CONFIG_RAPIDIO_CPS_GEN2=m
-CONFIG_RAPIDIO_RXS_GEN3=m
 # CONFIG_X86_SYSFB is not set
 
 #
@@ -851,6 +746,7 @@ CONFIG_STACKPROTECTOR=y
 CONFIG_STACKPROTECTOR_STRONG=y
 CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOVE_PMD=y
 CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
 CONFIG_HAVE_ARCH_HUGE_VMAP=y
 CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
@@ -913,7 +809,6 @@ CONFIG_BLK_DEV_THROTTLING=y
 CONFIG_BLK_CMDLINE_PARSER=y
 CONFIG_BLK_WBT=y
 # CONFIG_BLK_CGROUP_IOLATENCY is not set
-# CONFIG_BLK_WBT_SQ is not set
 CONFIG_BLK_WBT_MQ=y
 CONFIG_BLK_DEBUG_FS=y
 CONFIG_BLK_DEBUG_FS_ZONED=y
@@ -951,14 +846,6 @@ CONFIG_BLK_PM=y
 #
 # IO Schedulers
 #
-CONFIG_IOSCHED_NOOP=y
-CONFIG_IOSCHED_DEADLINE=y
-CONFIG_IOSCHED_CFQ=y
-CONFIG_CFQ_GROUP_IOSCHED=y
-CONFIG_DEFAULT_DEADLINE=y
-# CONFIG_DEFAULT_CFQ is not set
-# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="deadline"
 CONFIG_MQ_IOSCHED_DEADLINE=m
 CONFIG_MQ_IOSCHED_KYBER=m
 CONFIG_IOSCHED_BFQ=m
@@ -1047,6 +934,7 @@ CONFIG_ARCH_HAS_PTE_SPECIAL=y
 CONFIG_NET=y
 CONFIG_NET_INGRESS=y
 CONFIG_NET_EGRESS=y
+CONFIG_SKB_EXTENSIONS=y
 
 #
 # Networking options
@@ -1215,9 +1103,6 @@ CONFIG_NF_CT_NETLINK_HELPER=m
 CONFIG_NETFILTER_NETLINK_GLUE_CT=y
 CONFIG_NF_NAT=m
 CONFIG_NF_NAT_NEEDED=y
-CONFIG_NF_NAT_PROTO_DCCP=y
-CONFIG_NF_NAT_PROTO_UDPLITE=y
-CONFIG_NF_NAT_PROTO_SCTP=y
 CONFIG_NF_NAT_AMANDA=m
 CONFIG_NF_NAT_FTP=m
 CONFIG_NF_NAT_IRC=m
@@ -1423,7 +1308,6 @@ CONFIG_NF_REJECT_IPV4=m
 CONFIG_NF_NAT_IPV4=m
 CONFIG_NF_NAT_MASQUERADE_IPV4=y
 CONFIG_NF_NAT_SNMP_BASIC=m
-CONFIG_NF_NAT_PROTO_GRE=m
 CONFIG_NF_NAT_PPTP=m
 CONFIG_NF_NAT_H323=m
 CONFIG_IP_NF_IPTABLES=m
@@ -1566,6 +1450,7 @@ CONFIG_NET_DSA_TAG_DSA=y
 CONFIG_NET_DSA_TAG_EDSA=y
 CONFIG_NET_DSA_TAG_GSWIP=y
 CONFIG_NET_DSA_TAG_KSZ=y
+CONFIG_NET_DSA_TAG_KSZ9477=y
 CONFIG_NET_DSA_TAG_LAN9303=y
 CONFIG_NET_DSA_TAG_MTK=y
 CONFIG_NET_DSA_TAG_TRAILER=y
@@ -1996,6 +1881,115 @@ CONFIG_HAVE_EBPF_JIT=y
 #
 # Device Drivers
 #
+CONFIG_HAVE_EISA=y
+CONFIG_EISA=y
+CONFIG_EISA_VLB_PRIMING=y
+CONFIG_EISA_PCI_EISA=y
+CONFIG_EISA_VIRTUAL_ROOT=y
+CONFIG_EISA_NAMES=y
+CONFIG_HAVE_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=y
+CONFIG_PCIEAER=y
+# CONFIG_PCIEAER_INJECT is not set
+# CONFIG_PCIE_ECRC is not set
+CONFIG_PCIEASPM=y
+CONFIG_PCIEASPM_DEBUG=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+CONFIG_PCIE_DPC=y
+CONFIG_PCIE_PTM=y
+CONFIG_PCI_MSI=y
+CONFIG_PCI_MSI_IRQ_DOMAIN=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
+CONFIG_PCI_STUB=m
+# CONFIG_PCI_PF_STUB is not set
+CONFIG_XEN_PCIDEV_FRONTEND=m
+CONFIG_PCI_ATS=y
+CONFIG_PCI_LOCKLESS_CONFIG=y
+CONFIG_PCI_IOV=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+CONFIG_PCI_LABEL=y
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_COMPAQ=m
+CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=y
+CONFIG_HOTPLUG_PCI_IBM=m
+CONFIG_HOTPLUG_PCI_ACPI=y
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+CONFIG_HOTPLUG_PCI_CPCI=y
+CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
+CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
+CONFIG_HOTPLUG_PCI_SHPC=y
+
+#
+# PCI controller drivers
+#
+
+#
+# Cadence PCIe controllers support
+#
+
+#
+# DesignWare PCI Core Support
+#
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+# CONFIG_PCI_MESON is not set
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+
+#
+# PCI switch controller drivers
+#
+CONFIG_PCI_SW_SWITCHTEC=m
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_PCMCIA_LOAD_CIS=y
+CONFIG_CARDBUS=y
+
+#
+# PC-card bridges
+#
+CONFIG_YENTA=m
+CONFIG_YENTA_O2=y
+CONFIG_YENTA_RICOH=y
+CONFIG_YENTA_TI=y
+CONFIG_YENTA_ENE_TUNE=y
+CONFIG_YENTA_TOSHIBA=y
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_I82365=m
+CONFIG_TCIC=m
+CONFIG_PCMCIA_PROBE=y
+CONFIG_PCCARD_NONSTATIC=y
+CONFIG_RAPIDIO=y
+CONFIG_RAPIDIO_TSI721=m
+CONFIG_RAPIDIO_DISC_TIMEOUT=30
+# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set
+CONFIG_RAPIDIO_DMA_ENGINE=y
+# CONFIG_RAPIDIO_DEBUG is not set
+CONFIG_RAPIDIO_ENUM_BASIC=m
+CONFIG_RAPIDIO_CHMAN=m
+CONFIG_RAPIDIO_MPORT_CDEV=m
+
+#
+# RapidIO Switch drivers
+#
+CONFIG_RAPIDIO_TSI57X=m
+CONFIG_RAPIDIO_CPS_XX=m
+CONFIG_RAPIDIO_TSI568=m
+CONFIG_RAPIDIO_CPS_GEN2=m
+CONFIG_RAPIDIO_RXS_GEN3=m
 
 #
 # Generic Driver Options
@@ -2046,16 +2040,16 @@ CONFIG_GNSS_SIRF_SERIAL=m
 CONFIG_GNSS_UBX_SERIAL=m
 CONFIG_MTD=m
 # CONFIG_MTD_TESTS is not set
-CONFIG_MTD_REDBOOT_PARTS=m
-CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
-# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
-# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
 CONFIG_MTD_CMDLINE_PARTS=m
 CONFIG_MTD_AR7_PARTS=m
 
 #
 # Partition parsers
 #
+CONFIG_MTD_REDBOOT_PARTS=m
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
+# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
 
 #
 # User Modules And Translation Layers
@@ -2100,6 +2094,7 @@ CONFIG_MTD_ABSENT=m
 CONFIG_MTD_COMPLEX_MAPPINGS=y
 CONFIG_MTD_PHYSMAP=m
 # CONFIG_MTD_PHYSMAP_COMPAT is not set
+# CONFIG_MTD_PHYSMAP_GPIO_ADDR is not set
 CONFIG_MTD_SBC_GXX=m
 CONFIG_MTD_SCx200_DOCFLASH=m
 CONFIG_MTD_AMD76XROM=m
@@ -2112,10 +2107,8 @@ CONFIG_MTD_L440GX=m
 CONFIG_MTD_PCI=m
 CONFIG_MTD_PCMCIA=m
 # CONFIG_MTD_PCMCIA_ANONYMOUS is not set
-CONFIG_MTD_GPIO_ADDR=m
 CONFIG_MTD_INTEL_VR_NOR=m
 CONFIG_MTD_PLATRAM=m
-CONFIG_MTD_LATCH_ADDR=m
 
 #
 # Self-contained MTD device drivers
@@ -2275,11 +2268,13 @@ CONFIG_BLK_DEV_NVME=y
 CONFIG_NVME_FABRICS=m
 CONFIG_NVME_RDMA=m
 CONFIG_NVME_FC=m
+CONFIG_NVME_TCP=m
 CONFIG_NVME_TARGET=m
 CONFIG_NVME_TARGET_LOOP=m
 CONFIG_NVME_TARGET_RDMA=m
 CONFIG_NVME_TARGET_FC=m
 CONFIG_NVME_TARGET_FCLOOP=m
+CONFIG_NVME_TARGET_TCP=m
 
 #
 # Misc devices
@@ -2314,6 +2309,7 @@ CONFIG_LATTICE_ECP3_CONFIG=m
 CONFIG_SRAM=y
 # CONFIG_PCI_ENDPOINT_TEST is not set
 CONFIG_MISC_RTSX=m
+CONFIG_PVPANIC=m
 CONFIG_C2PORT=m
 CONFIG_C2PORT_DURAMAR_2150=m
 
@@ -2380,6 +2376,7 @@ CONFIG_VMWARE_VMCI=m
 #
 CONFIG_VHOST_RING=m
 CONFIG_ECHO=m
+CONFIG_MISC_ALCOR_PCI=m
 CONFIG_MISC_RTSX_PCI=m
 CONFIG_MISC_RTSX_USB=m
 CONFIG_HAVE_IDE=y
@@ -2393,7 +2390,6 @@ CONFIG_RAID_ATTRS=m
 CONFIG_SCSI=y
 CONFIG_SCSI_DMA=y
 CONFIG_SCSI_NETLINK=y
-# CONFIG_SCSI_MQ_DEFAULT is not set
 CONFIG_SCSI_PROC_FS=y
 
 #
@@ -2475,6 +2471,7 @@ CONFIG_SCSI_UFSHCD=m
 CONFIG_SCSI_UFSHCD_PCI=m
 # CONFIG_SCSI_UFS_DWC_TC_PCI is not set
 CONFIG_SCSI_UFSHCD_PLATFORM=m
+CONFIG_SCSI_UFS_CDNS_PLATFORM=m
 # CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set
 # CONFIG_SCSI_UFS_BSG is not set
 CONFIG_SCSI_HPTIOP=m
@@ -2830,8 +2827,9 @@ CONFIG_NET_DSA_BCM_SF2=m
 CONFIG_NET_DSA_LANTIQ_GSWIP=m
 CONFIG_NET_DSA_MT7530=m
 CONFIG_NET_DSA_MV88E6060=m
-CONFIG_MICROCHIP_KSZ=m
-CONFIG_MICROCHIP_KSZ_SPI_DRIVER=m
+CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON=m
+CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
+CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
 CONFIG_NET_DSA_MV88E6XXX=m
 CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y
 # CONFIG_NET_DSA_MV88E6XXX_PTP is not set
@@ -3261,6 +3259,7 @@ CONFIG_USB_IPHETH=m
 CONFIG_USB_SIERRA_NET=m
 CONFIG_USB_VL600=m
 CONFIG_USB_NET_CH9200=m
+CONFIG_USB_NET_AQC111=m
 CONFIG_WLAN=y
 # CONFIG_WIRELESS_WDS is not set
 CONFIG_WLAN_VENDOR_ADMTEK=y
@@ -3522,11 +3521,12 @@ CONFIG_ZD1211RW=m
 # CONFIG_ZD1211RW_DEBUG is not set
 CONFIG_WLAN_VENDOR_QUANTENNA=y
 CONFIG_QTNFMAC=m
-CONFIG_QTNFMAC_PEARL_PCIE=m
+CONFIG_QTNFMAC_PCIE=m
 CONFIG_PCMCIA_RAYCS=m
 CONFIG_PCMCIA_WL3501=m
 CONFIG_MAC80211_HWSIM=m
 CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_VIRT_WIFI=m
 
 #
 # WiMAX Wireless Broadband devices
@@ -3686,13 +3686,6 @@ CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
 CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
 CONFIG_ISDN_DRV_AVMB1_T1PCI=m
 CONFIG_ISDN_DRV_AVMB1_C4=m
-CONFIG_CAPI_EICON=y
-CONFIG_ISDN_DIVAS=m
-CONFIG_ISDN_DIVAS_BRIPCI=y
-CONFIG_ISDN_DIVAS_PRIPCI=y
-CONFIG_ISDN_DIVAS_DIVACAPI=m
-CONFIG_ISDN_DIVAS_USERIDI=m
-CONFIG_ISDN_DIVAS_MAINT=m
 CONFIG_ISDN_DRV_GIGASET=m
 # CONFIG_GIGASET_CAPI is not set
 CONFIG_GIGASET_I4L=y
@@ -4040,6 +4033,7 @@ CONFIG_SERIO_RAW=m
 CONFIG_SERIO_ALTERA_PS2=m
 CONFIG_SERIO_PS2MULT=m
 CONFIG_SERIO_ARC_PS2=m
+CONFIG_SERIO_OLPC_APSP=m
 CONFIG_HYPERV_KEYBOARD=m
 CONFIG_SERIO_GPIO_PS2=m
 CONFIG_USERIO=m
@@ -4146,6 +4140,7 @@ CONFIG_SERIAL_MEN_Z135=m
 CONFIG_SERIAL_DEV_BUS=y
 CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
 CONFIG_TTY_PRINTK=y
+CONFIG_TTY_PRINTK_LEVEL=6
 CONFIG_PRINTER=m
 # CONFIG_LP_CONSOLE is not set
 CONFIG_PPDEV=m
@@ -4315,6 +4310,9 @@ CONFIG_I2C_SLAVE_EEPROM=m
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
 # CONFIG_I2C_DEBUG_BUS is not set
+CONFIG_I3C=m
+CONFIG_CDNS_I3C_MASTER=m
+CONFIG_DW_I3C_MASTER=m
 CONFIG_SPI=y
 # CONFIG_SPI_DEBUG is not set
 CONFIG_SPI_MASTER=y
@@ -4340,6 +4338,7 @@ CONFIG_SPI_PXA2XX=m
 CONFIG_SPI_PXA2XX_PCI=m
 CONFIG_SPI_ROCKCHIP=m
 CONFIG_SPI_SC18IS602=m
+CONFIG_SPI_MXIC=m
 CONFIG_SPI_TOPCLIFF_PCH=m
 CONFIG_SPI_XCOMM=m
 # CONFIG_SPI_XILINX is not set
@@ -4713,6 +4712,7 @@ CONFIG_SENSORS_NCT6775=m
 CONFIG_SENSORS_NCT7802=m
 CONFIG_SENSORS_NCT7904=m
 CONFIG_SENSORS_NPCM7XX=m
+# CONFIG_SENSORS_OCC_P8_I2C is not set
 CONFIG_SENSORS_PCF8591=m
 CONFIG_PMBUS=m
 CONFIG_SENSORS_PMBUS=m
@@ -4806,6 +4806,10 @@ CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
 CONFIG_CLOCK_THERMAL=y
 CONFIG_DEVFREQ_THERMAL=y
 CONFIG_THERMAL_EMULATION=y
+
+#
+# Intel thermal drivers
+#
 CONFIG_INTEL_POWERCLAMP=m
 CONFIG_X86_PKG_TEMP_THERMAL=m
 CONFIG_INTEL_SOC_DTS_IOSF_CORE=m
@@ -4880,6 +4884,7 @@ CONFIG_SBC7240_WDT=m
 CONFIG_CPU5_WDT=m
 CONFIG_SMSC_SCH311X_WDT=m
 CONFIG_SMSC37B787_WDT=m
+CONFIG_TQMX86_WDT=m
 CONFIG_VIA_WDT=m
 CONFIG_W83627HF_WDT=m
 CONFIG_W83877F_WDT=m
@@ -4948,7 +4953,6 @@ CONFIG_MFD_CS5535=m
 CONFIG_MFD_AS3711=y
 CONFIG_PMIC_ADP5520=y
 CONFIG_MFD_AAT2870_CORE=y
-CONFIG_MFD_AT91_USART=m
 CONFIG_MFD_BCM590XX=m
 CONFIG_MFD_BD9571MWV=m
 CONFIG_MFD_AXP20X=m
@@ -5183,6 +5187,7 @@ CONFIG_RC_LOOPBACK=m
 CONFIG_IR_SERIAL=m
 CONFIG_IR_SERIAL_TRANSMITTER=y
 CONFIG_IR_SIR=m
+CONFIG_RC_XBOX_DVD=m
 CONFIG_MEDIA_SUPPORT=m
 
 #
@@ -5203,7 +5208,6 @@ CONFIG_VIDEO_V4L2_SUBDEV_API=y
 CONFIG_VIDEO_V4L2=m
 # CONFIG_VIDEO_ADV_DEBUG is not set
 # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-# CONFIG_VIDEO_PCI_SKELETON is not set
 CONFIG_VIDEO_TUNER=m
 CONFIG_V4L2_MEM2MEM_DEV=m
 CONFIG_V4L2_FLASH_LED_CLASS=m
@@ -5472,6 +5476,7 @@ CONFIG_VIDEO_VIA_CAMERA=m
 CONFIG_VIDEO_CADENCE=y
 CONFIG_VIDEO_CADENCE_CSI2RX=m
 CONFIG_VIDEO_CADENCE_CSI2TX=m
+CONFIG_VIDEO_ASPEED=m
 CONFIG_SOC_CAMERA=m
 CONFIG_SOC_CAMERA_PLATFORM=m
 CONFIG_V4L_MEM2MEM_DRIVERS=y
@@ -5487,6 +5492,8 @@ CONFIG_VIDEO_VICODEC=m
 CONFIG_DVB_PLATFORM_DRIVERS=y
 CONFIG_CEC_PLATFORM_DRIVERS=y
 CONFIG_VIDEO_CROS_EC_CEC=m
+CONFIG_VIDEO_SECO_CEC=m
+# CONFIG_VIDEO_SECO_RC is not set
 CONFIG_SDR_PLATFORM_DRIVERS=y
 
 #
@@ -6024,7 +6031,7 @@ CONFIG_FB_SYS_FOPS=m
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_HECUBA=m
 CONFIG_FB_SVGALIB=m
-CONFIG_FB_BACKLIGHT=y
+CONFIG_FB_BACKLIGHT=m
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_FB_TILEBLITTING=y
 
@@ -6425,6 +6432,7 @@ CONFIG_SND_SOC_ACPI=m
 CONFIG_SND_SOC_AMD_ACP=m
 CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m
 CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
+CONFIG_SND_SOC_AMD_ACP3x=m
 CONFIG_SND_ATMEL_SOC=m
 CONFIG_SND_DESIGNWARE_I2S=m
 # CONFIG_SND_DESIGNWARE_PCM is not set
@@ -6456,6 +6464,13 @@ CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
 CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m
 CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI=m
 CONFIG_SND_SOC_INTEL_SKYLAKE=m
+CONFIG_SND_SOC_INTEL_SKL=m
+CONFIG_SND_SOC_INTEL_APL=m
+CONFIG_SND_SOC_INTEL_KBL=m
+CONFIG_SND_SOC_INTEL_GLK=m
+CONFIG_SND_SOC_INTEL_CNL=m
+CONFIG_SND_SOC_INTEL_CFL=m
+CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m
 CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m
 CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC=y
 CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m
@@ -6482,12 +6497,14 @@ CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
 CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
 CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m
 CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98927_MACH=m
+CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m
 CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m
 CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m
 
 #
 # STMicroelectronics STM32 SOC audio support
 #
+CONFIG_SND_SOC_XILINX_I2S=m
 CONFIG_SND_SOC_XTFPGA_I2S=m
 CONFIG_ZX_TDM=m
 CONFIG_SND_SOC_I2C_AND_SPI=m
@@ -6504,6 +6521,7 @@ CONFIG_SND_SOC_ADAU1761_I2C=m
 CONFIG_SND_SOC_ADAU1761_SPI=m
 CONFIG_SND_SOC_ADAU7002=m
 CONFIG_SND_SOC_AK4104=m
+CONFIG_SND_SOC_AK4118=m
 CONFIG_SND_SOC_AK4458=m
 CONFIG_SND_SOC_AK4554=m
 CONFIG_SND_SOC_AK4613=m
@@ -6586,6 +6604,7 @@ CONFIG_SND_SOC_RT5631=m
 CONFIG_SND_SOC_RT5640=m
 CONFIG_SND_SOC_RT5645=m
 CONFIG_SND_SOC_RT5651=m
+CONFIG_SND_SOC_RT5660=m
 CONFIG_SND_SOC_RT5663=m
 CONFIG_SND_SOC_RT5670=m
 CONFIG_SND_SOC_RT5677=m
@@ -7170,10 +7189,10 @@ CONFIG_TYPEC_MUX_PI3USB30532=m
 # USB Type-C Alternate Mode drivers
 #
 CONFIG_TYPEC_DP_ALTMODE=m
+CONFIG_USB_ROLE_SWITCH=m
 CONFIG_USB_ROLES_INTEL_XHCI=m
 CONFIG_USB_LED_TRIG=y
 CONFIG_USB_ULPI_BUS=m
-CONFIG_USB_ROLE_SWITCH=m
 CONFIG_UWB=m
 CONFIG_UWB_HWA=m
 CONFIG_UWB_WHCI=m
@@ -7195,6 +7214,7 @@ CONFIG_MMC_SDHCI_ACPI=m
 CONFIG_MMC_SDHCI_PLTFM=m
 CONFIG_MMC_SDHCI_F_SDH30=m
 CONFIG_MMC_WBSD=m
+CONFIG_MMC_ALCOR=m
 CONFIG_MMC_TIFM_SD=m
 CONFIG_MMC_SPI=m
 CONFIG_MMC_SDRICOH_CS=m
@@ -7311,6 +7331,7 @@ CONFIG_LEDS_TRIGGER_CAMERA=m
 CONFIG_LEDS_TRIGGER_PANIC=y
 CONFIG_LEDS_TRIGGER_NETDEV=m
 CONFIG_LEDS_TRIGGER_PATTERN=m
+CONFIG_LEDS_TRIGGER_AUDIO=m
 # CONFIG_ACCESSIBILITY is not set
 CONFIG_INFINIBAND=m
 CONFIG_INFINIBAND_USER_MAD=m
@@ -7620,6 +7641,7 @@ CONFIG_XEN_AUTO_XLATE=y
 CONFIG_XEN_ACPI=y
 CONFIG_XEN_SYMS=y
 CONFIG_XEN_HAVE_VPMU=y
+CONFIG_XEN_FRONT_PGDIR_SHBUF=m
 CONFIG_STAGING=y
 CONFIG_PRISM2_USB=m
 CONFIG_COMEDI=m
@@ -7833,7 +7855,6 @@ CONFIG_ADE7854_SPI=m
 #
 # Resolver to digital converters
 #
-CONFIG_AD2S90=m
 CONFIG_AD2S1210=m
 CONFIG_FB_SM750=m
 CONFIG_FB_XGI=m
@@ -7869,6 +7890,7 @@ CONFIG_VIDEO_ZORAN_DC10=m
 CONFIG_VIDEO_ZORAN_LML33=m
 CONFIG_VIDEO_ZORAN_LML33R10=m
 CONFIG_VIDEO_ZORAN_AVS6EYES=m
+# CONFIG_VIDEO_IPU3_IMGU is not set
 
 #
 # Android
@@ -7877,8 +7899,6 @@ CONFIG_LTE_GDM724X=m
 CONFIG_FIREWIRE_SERIAL=m
 CONFIG_FWTTY_MAX_TOTAL_PORTS=64
 CONFIG_FWTTY_MAX_CARD_PORTS=32
-CONFIG_MTD_SPINAND_MT29F=m
-CONFIG_MTD_SPINAND_ONDIEECC=y
 CONFIG_GS_FPGABOOT=m
 # CONFIG_UNISYSSPAR is not set
 CONFIG_FB_TFT=m
@@ -8024,7 +8044,6 @@ CONFIG_SAMSUNG_Q10=m
 CONFIG_APPLE_GMUX=m
 CONFIG_INTEL_RST=m
 CONFIG_INTEL_SMARTCONNECT=m
-CONFIG_PVPANIC=m
 CONFIG_INTEL_PMC_IPC=m
 CONFIG_INTEL_BXTWC_PMIC_TMU=m
 CONFIG_SURFACE_PRO3_BUTTON=m
@@ -8035,6 +8054,7 @@ CONFIG_INTEL_PUNIT_IPC=m
 CONFIG_INTEL_CHTDC_TI_PWRBTN=m
 CONFIG_I2C_MULTI_INSTANTIATE=m
 CONFIG_INTEL_ATOMISP2_PM=m
+# CONFIG_HUAWEI_WMI is not set
 CONFIG_PMC_ATOM=y
 CONFIG_CHROME_PLATFORMS=y
 CONFIG_CHROMEOS_LAPTOP=m
@@ -8232,6 +8252,7 @@ CONFIG_STK8BA50=m
 # Analog to digital converters
 #
 CONFIG_AD_SIGMA_DELTA=m
+CONFIG_AD7124=m
 CONFIG_AD7266=m
 CONFIG_AD7291=m
 CONFIG_AD7298=m
@@ -8241,6 +8262,7 @@ CONFIG_AD7791=m
 CONFIG_AD7793=m
 CONFIG_AD7887=m
 CONFIG_AD7923=m
+CONFIG_AD7949=m
 CONFIG_AD799X=m
 CONFIG_AXP20X_ADC=m
 CONFIG_AXP288_ADC=m
@@ -8359,6 +8381,7 @@ CONFIG_MCP4725=m
 CONFIG_MCP4922=m
 CONFIG_TI_DAC082S085=m
 CONFIG_TI_DAC5571=m
+CONFIG_TI_DAC7311=m
 
 #
 # IIO dummy driver
@@ -8487,6 +8510,7 @@ CONFIG_TSL2772=m
 CONFIG_TSL4531=m
 CONFIG_US5182D=m
 CONFIG_VCNL4000=m
+CONFIG_VCNL4035=m
 CONFIG_VEML6070=m
 CONFIG_VL6180=m
 CONFIG_ZOPT2201=m
@@ -8508,6 +8532,9 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
 CONFIG_SENSORS_HMC5843=m
 CONFIG_SENSORS_HMC5843_I2C=m
 CONFIG_SENSORS_HMC5843_SPI=m
+CONFIG_SENSORS_RM3100=m
+CONFIG_SENSORS_RM3100_I2C=m
+CONFIG_SENSORS_RM3100_SPI=m
 
 #
 # Multiplexers
@@ -8537,6 +8564,7 @@ CONFIG_MAX5487=m
 CONFIG_MCP4018=m
 CONFIG_MCP4131=m
 CONFIG_MCP4531=m
+CONFIG_MCP41010=m
 CONFIG_TPL0102=m
 
 #
@@ -8590,6 +8618,7 @@ CONFIG_VL53L0X_I2C=m
 #
 # Resolver to digital converters
 #
+CONFIG_AD2S90=m
 CONFIG_AD2S1200=m
 
 #
@@ -8644,6 +8673,7 @@ CONFIG_PWM_TWL_LED=m
 # IRQ chip support
 #
 CONFIG_ARM_GIC_MAX_NR=1
+CONFIG_MADERA_IRQ=m
 CONFIG_IPACK_BUS=m
 CONFIG_BOARD_TPCI200=m
 CONFIG_SERIAL_IPOCTAL=m
@@ -8690,6 +8720,7 @@ CONFIG_ND_BLK=m
 CONFIG_ND_CLAIM=y
 CONFIG_ND_BTT=m
 CONFIG_BTT=y
+CONFIG_NVDIMM_KEYS=y
 CONFIG_DAX_DRIVER=y
 CONFIG_DAX=y
 CONFIG_DEV_DAX=m
@@ -9156,6 +9187,7 @@ CONFIG_IMA_DEFAULT_HASH="sha1"
 # CONFIG_IMA_WRITE_POLICY is not set
 # CONFIG_IMA_READ_POLICY is not set
 CONFIG_IMA_APPRAISE=y
+# CONFIG_IMA_ARCH_POLICY is not set
 # CONFIG_IMA_APPRAISE_BUILD_POLICY is not set
 CONFIG_IMA_APPRAISE_BOOTPARAM=y
 CONFIG_IMA_TRUSTED_KEYRING=y
@@ -9245,6 +9277,8 @@ CONFIG_CRYPTO_OFB=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_KEYWRAP=m
+CONFIG_CRYPTO_NHPOLY1305=m
+CONFIG_CRYPTO_ADIANTUM=m
 
 #
 # Hash modes
@@ -9276,6 +9310,7 @@ CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_SHA3=m
 CONFIG_CRYPTO_SM3=m
+CONFIG_CRYPTO_STREEBOG=m
 CONFIG_CRYPTO_TGR192=m
 CONFIG_CRYPTO_WP512=m
 
@@ -9333,6 +9368,7 @@ CONFIG_CRYPTO_USER_API_HASH=m
 CONFIG_CRYPTO_USER_API_SKCIPHER=m
 CONFIG_CRYPTO_USER_API_RNG=m
 CONFIG_CRYPTO_USER_API_AEAD=m
+# CONFIG_CRYPTO_STATS is not set
 CONFIG_CRYPTO_HASH_INFO=y
 CONFIG_CRYPTO_HW=y
 CONFIG_CRYPTO_DEV_PADLOCK=y
@@ -9378,6 +9414,7 @@ CONFIG_BINARY_PRINTF=y
 # Library routines
 #
 CONFIG_RAID6_PQ=m
+CONFIG_RAID6_PQ_BENCHMARK=y
 CONFIG_BITREVERSE=y
 CONFIG_RATIONAL=y
 CONFIG_GENERIC_STRNCPY_FROM_USER=y
@@ -9402,7 +9439,7 @@ CONFIG_CRC64=m
 CONFIG_CRC7=m
 CONFIG_LIBCRC32C=m
 CONFIG_CRC8=m
-CONFIG_XXHASH=m
+CONFIG_XXHASH=y
 CONFIG_AUDIT_GENERIC=y
 # CONFIG_RANDOM32_SELFTEST is not set
 CONFIG_842_COMPRESS=m
@@ -9453,7 +9490,6 @@ CONFIG_NEED_SG_DMA_LENGTH=y
 CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_ARCH_DMA_ADDR_T_64BIT=y
 CONFIG_HAVE_GENERIC_DMA_COHERENT=y
-CONFIG_DMA_DIRECT_OPS=y
 CONFIG_DMA_VIRT_OPS=y
 CONFIG_SWIOTLB=y
 CONFIG_SGL_ALLOC=y
@@ -9477,10 +9513,10 @@ CONFIG_FONT_SUPPORT=y
 CONFIG_FONT_8x8=y
 CONFIG_FONT_8x16=y
 CONFIG_SG_POOL=y
-CONFIG_ARCH_HAS_SG_CHAIN=y
 CONFIG_SBITMAP=y
 CONFIG_PARMAN=m
 # CONFIG_STRING_SELFTEST is not set
+CONFIG_OBJAGG=m
 
 #
 # Kernel hacking
@@ -9540,6 +9576,8 @@ CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m
 # CONFIG_DEBUG_HIGHMEM is not set
 CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
 # CONFIG_DEBUG_STACKOVERFLOW is not set
+CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_KASAN_STACK=1
 CONFIG_CC_HAS_SANCOV_TRACE_PC=y
 # CONFIG_DEBUG_SHIRQ is not set
 
@@ -9649,6 +9687,7 @@ CONFIG_KPROBE_EVENTS=y
 # CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
 # CONFIG_UPROBE_EVENTS is not set
 CONFIG_BPF_EVENTS=y
+CONFIG_DYNAMIC_EVENTS=y
 CONFIG_PROBE_EVENTS=y
 CONFIG_DYNAMIC_FTRACE=y
 CONFIG_DYNAMIC_FTRACE_WITH_REGS=y
@@ -9701,6 +9740,7 @@ CONFIG_TEST_UDELAY=m
 CONFIG_TEST_STATIC_KEYS=m
 # CONFIG_TEST_KMOD is not set
 # CONFIG_TEST_MEMCAT_P is not set
+CONFIG_TEST_OBJAGG=m
 CONFIG_MEMTEST=y
 # CONFIG_BUG_ON_DATA_CORRUPTION is not set
 # CONFIG_SAMPLES is not set
diff --git a/gnu/packages/aux-files/linux-libre/4.20-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.0-x86_64.conf
index 4918e6bdf2..9e1a7eff0e 100644
--- a/gnu/packages/aux-files/linux-libre/4.20-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.0-x86_64.conf
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.20.0-gnu Kernel Configuration
+# Linux/x86 5.0.0-gnu Kernel Configuration
 #
 
 #
@@ -9,6 +9,7 @@
 CONFIG_CC_IS_GCC=y
 CONFIG_GCC_VERSION=70400
 CONFIG_CLANG_VERSION=0
+CONFIG_CC_HAS_ASM_GOTO=y
 CONFIG_IRQ_WORK=y
 CONFIG_BUILDTIME_EXTABLE_SORT=y
 CONFIG_THREAD_INFO_IN_TASK=y
@@ -44,8 +45,6 @@ CONFIG_USELIB=y
 CONFIG_AUDIT=y
 CONFIG_HAVE_ARCH_AUDITSYSCALL=y
 CONFIG_AUDITSYSCALL=y
-CONFIG_AUDIT_WATCH=y
-CONFIG_AUDIT_TREE=y
 
 #
 # IRQ subsystem
@@ -283,7 +282,7 @@ CONFIG_X86_X2APIC=y
 CONFIG_X86_MPPARSE=y
 # CONFIG_GOLDFISH is not set
 CONFIG_RETPOLINE=y
-# CONFIG_INTEL_RDT is not set
+# CONFIG_X86_CPU_RESCTRL is not set
 CONFIG_X86_EXTENDED_PLATFORM=y
 CONFIG_X86_NUMACHIP=y
 # CONFIG_X86_VSMP is not set
@@ -313,6 +312,7 @@ CONFIG_XEN_SAVE_RESTORE=y
 # CONFIG_XEN_DEBUG_FS is not set
 CONFIG_XEN_PVH=y
 CONFIG_KVM_GUEST=y
+CONFIG_PVH=y
 CONFIG_KVM_DEBUG_FS=y
 # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
 CONFIG_PARAVIRT_CLOCK=y
@@ -477,6 +477,7 @@ CONFIG_PM_TRACE=y
 CONFIG_PM_TRACE_RTC=y
 CONFIG_PM_CLK=y
 CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
+# CONFIG_ENERGY_MODEL is not set
 CONFIG_ARCH_SUPPORTS_ACPI=y
 CONFIG_ACPI=y
 CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
@@ -520,6 +521,7 @@ CONFIG_ACPI_HED=y
 CONFIG_ACPI_BGRT=y
 # CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set
 CONFIG_ACPI_NFIT=m
+# CONFIG_NFIT_SECURITY_DEBUG is not set
 CONFIG_HAVE_ACPI_APEI=y
 CONFIG_HAVE_ACPI_APEI_NMI=y
 CONFIG_ACPI_APEI=y
@@ -585,112 +587,14 @@ CONFIG_INTEL_IDLE=y
 #
 # Bus options (PCI etc.)
 #
-CONFIG_PCI=y
 CONFIG_PCI_DIRECT=y
 CONFIG_PCI_MMCONFIG=y
 CONFIG_PCI_XEN=y
-CONFIG_PCI_DOMAINS=y
 CONFIG_MMCONF_FAM10H=y
 # CONFIG_PCI_CNB20LE_QUIRK is not set
-CONFIG_PCIEPORTBUS=y
-CONFIG_HOTPLUG_PCI_PCIE=y
-CONFIG_PCIEAER=y
-# CONFIG_PCIEAER_INJECT is not set
-# CONFIG_PCIE_ECRC is not set
-CONFIG_PCIEASPM=y
-CONFIG_PCIEASPM_DEBUG=y
-CONFIG_PCIEASPM_DEFAULT=y
-# CONFIG_PCIEASPM_POWERSAVE is not set
-# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-# CONFIG_PCIEASPM_PERFORMANCE is not set
-CONFIG_PCIE_PME=y
-CONFIG_PCIE_DPC=y
-CONFIG_PCIE_PTM=y
-CONFIG_PCI_MSI=y
-CONFIG_PCI_MSI_IRQ_DOMAIN=y
-CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_DEBUG is not set
-CONFIG_PCI_REALLOC_ENABLE_AUTO=y
-CONFIG_PCI_STUB=m
-# CONFIG_PCI_PF_STUB is not set
-CONFIG_XEN_PCIDEV_FRONTEND=m
-CONFIG_PCI_ATS=y
-CONFIG_PCI_LOCKLESS_CONFIG=y
-CONFIG_PCI_IOV=y
-CONFIG_PCI_PRI=y
-CONFIG_PCI_PASID=y
-# CONFIG_PCI_P2PDMA is not set
-CONFIG_PCI_LABEL=y
-CONFIG_PCI_HYPERV=m
-CONFIG_HOTPLUG_PCI=y
-CONFIG_HOTPLUG_PCI_ACPI=y
-CONFIG_HOTPLUG_PCI_ACPI_IBM=m
-CONFIG_HOTPLUG_PCI_CPCI=y
-CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
-CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
-CONFIG_HOTPLUG_PCI_SHPC=y
-
-#
-# PCI controller drivers
-#
-
-#
-# Cadence PCIe controllers support
-#
-# CONFIG_VMD is not set
-
-#
-# DesignWare PCI Core Support
-#
-# CONFIG_PCIE_DW_PLAT_HOST is not set
-
-#
-# PCI Endpoint
-#
-# CONFIG_PCI_ENDPOINT is not set
-
-#
-# PCI switch controller drivers
-#
-CONFIG_PCI_SW_SWITCHTEC=m
 # CONFIG_ISA_BUS is not set
 CONFIG_ISA_DMA_API=y
 CONFIG_AMD_NB=y
-CONFIG_PCCARD=m
-CONFIG_PCMCIA=m
-CONFIG_PCMCIA_LOAD_CIS=y
-CONFIG_CARDBUS=y
-
-#
-# PC-card bridges
-#
-CONFIG_YENTA=m
-CONFIG_YENTA_O2=y
-CONFIG_YENTA_RICOH=y
-CONFIG_YENTA_TI=y
-CONFIG_YENTA_ENE_TUNE=y
-CONFIG_YENTA_TOSHIBA=y
-CONFIG_PD6729=m
-CONFIG_I82092=m
-CONFIG_PCCARD_NONSTATIC=y
-CONFIG_RAPIDIO=y
-CONFIG_RAPIDIO_TSI721=m
-CONFIG_RAPIDIO_DISC_TIMEOUT=30
-# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set
-CONFIG_RAPIDIO_DMA_ENGINE=y
-# CONFIG_RAPIDIO_DEBUG is not set
-CONFIG_RAPIDIO_ENUM_BASIC=m
-CONFIG_RAPIDIO_CHMAN=m
-CONFIG_RAPIDIO_MPORT_CDEV=m
-
-#
-# RapidIO Switch drivers
-#
-CONFIG_RAPIDIO_TSI57X=m
-CONFIG_RAPIDIO_CPS_XX=m
-CONFIG_RAPIDIO_TSI568=m
-CONFIG_RAPIDIO_CPS_GEN2=m
-CONFIG_RAPIDIO_RXS_GEN3=m
 # CONFIG_X86_SYSFB is not set
 
 #
@@ -833,6 +737,7 @@ CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y
 CONFIG_HAVE_CONTEXT_TRACKING=y
 CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOVE_PMD=y
 CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
 CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y
 CONFIG_HAVE_ARCH_HUGE_VMAP=y
@@ -904,7 +809,6 @@ CONFIG_BLK_DEV_THROTTLING=y
 CONFIG_BLK_CMDLINE_PARSER=y
 CONFIG_BLK_WBT=y
 # CONFIG_BLK_CGROUP_IOLATENCY is not set
-# CONFIG_BLK_WBT_SQ is not set
 CONFIG_BLK_WBT_MQ=y
 CONFIG_BLK_DEBUG_FS=y
 CONFIG_BLK_DEBUG_FS_ZONED=y
@@ -943,14 +847,6 @@ CONFIG_BLK_PM=y
 #
 # IO Schedulers
 #
-CONFIG_IOSCHED_NOOP=y
-CONFIG_IOSCHED_DEADLINE=y
-CONFIG_IOSCHED_CFQ=y
-CONFIG_CFQ_GROUP_IOSCHED=y
-CONFIG_DEFAULT_DEADLINE=y
-# CONFIG_DEFAULT_CFQ is not set
-# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="deadline"
 CONFIG_MQ_IOSCHED_DEADLINE=m
 CONFIG_MQ_IOSCHED_KYBER=m
 CONFIG_IOSCHED_BFQ=m
@@ -1058,6 +954,7 @@ CONFIG_NET=y
 CONFIG_COMPAT_NETLINK_MESSAGES=y
 CONFIG_NET_INGRESS=y
 CONFIG_NET_EGRESS=y
+CONFIG_SKB_EXTENSIONS=y
 
 #
 # Networking options
@@ -1226,9 +1123,6 @@ CONFIG_NF_CT_NETLINK_HELPER=m
 CONFIG_NETFILTER_NETLINK_GLUE_CT=y
 CONFIG_NF_NAT=m
 CONFIG_NF_NAT_NEEDED=y
-CONFIG_NF_NAT_PROTO_DCCP=y
-CONFIG_NF_NAT_PROTO_UDPLITE=y
-CONFIG_NF_NAT_PROTO_SCTP=y
 CONFIG_NF_NAT_AMANDA=m
 CONFIG_NF_NAT_FTP=m
 CONFIG_NF_NAT_IRC=m
@@ -1434,7 +1328,6 @@ CONFIG_NF_REJECT_IPV4=m
 CONFIG_NF_NAT_IPV4=m
 CONFIG_NF_NAT_MASQUERADE_IPV4=y
 CONFIG_NF_NAT_SNMP_BASIC=m
-CONFIG_NF_NAT_PROTO_GRE=m
 CONFIG_NF_NAT_PPTP=m
 CONFIG_NF_NAT_H323=m
 CONFIG_IP_NF_IPTABLES=m
@@ -1577,6 +1470,7 @@ CONFIG_NET_DSA_TAG_DSA=y
 CONFIG_NET_DSA_TAG_EDSA=y
 CONFIG_NET_DSA_TAG_GSWIP=y
 CONFIG_NET_DSA_TAG_KSZ=y
+CONFIG_NET_DSA_TAG_KSZ9477=y
 CONFIG_NET_DSA_TAG_LAN9303=y
 CONFIG_NET_DSA_TAG_MTK=y
 CONFIG_NET_DSA_TAG_TRAILER=y
@@ -1997,6 +1891,108 @@ CONFIG_HAVE_EBPF_JIT=y
 #
 # Device Drivers
 #
+CONFIG_HAVE_EISA=y
+# CONFIG_EISA is not set
+CONFIG_HAVE_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=y
+CONFIG_PCIEAER=y
+# CONFIG_PCIEAER_INJECT is not set
+# CONFIG_PCIE_ECRC is not set
+CONFIG_PCIEASPM=y
+CONFIG_PCIEASPM_DEBUG=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+CONFIG_PCIE_DPC=y
+CONFIG_PCIE_PTM=y
+CONFIG_PCI_MSI=y
+CONFIG_PCI_MSI_IRQ_DOMAIN=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
+CONFIG_PCI_STUB=m
+# CONFIG_PCI_PF_STUB is not set
+CONFIG_XEN_PCIDEV_FRONTEND=m
+CONFIG_PCI_ATS=y
+CONFIG_PCI_LOCKLESS_CONFIG=y
+CONFIG_PCI_IOV=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+# CONFIG_PCI_P2PDMA is not set
+CONFIG_PCI_LABEL=y
+CONFIG_PCI_HYPERV=m
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_ACPI=y
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+CONFIG_HOTPLUG_PCI_CPCI=y
+CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
+CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
+CONFIG_HOTPLUG_PCI_SHPC=y
+
+#
+# PCI controller drivers
+#
+
+#
+# Cadence PCIe controllers support
+#
+# CONFIG_VMD is not set
+
+#
+# DesignWare PCI Core Support
+#
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+# CONFIG_PCI_MESON is not set
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+
+#
+# PCI switch controller drivers
+#
+CONFIG_PCI_SW_SWITCHTEC=m
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_PCMCIA_LOAD_CIS=y
+CONFIG_CARDBUS=y
+
+#
+# PC-card bridges
+#
+CONFIG_YENTA=m
+CONFIG_YENTA_O2=y
+CONFIG_YENTA_RICOH=y
+CONFIG_YENTA_TI=y
+CONFIG_YENTA_ENE_TUNE=y
+CONFIG_YENTA_TOSHIBA=y
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_PCCARD_NONSTATIC=y
+CONFIG_RAPIDIO=y
+CONFIG_RAPIDIO_TSI721=m
+CONFIG_RAPIDIO_DISC_TIMEOUT=30
+# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set
+CONFIG_RAPIDIO_DMA_ENGINE=y
+# CONFIG_RAPIDIO_DEBUG is not set
+CONFIG_RAPIDIO_ENUM_BASIC=m
+CONFIG_RAPIDIO_CHMAN=m
+CONFIG_RAPIDIO_MPORT_CDEV=m
+
+#
+# RapidIO Switch drivers
+#
+CONFIG_RAPIDIO_TSI57X=m
+CONFIG_RAPIDIO_CPS_XX=m
+CONFIG_RAPIDIO_TSI568=m
+CONFIG_RAPIDIO_CPS_GEN2=m
+CONFIG_RAPIDIO_RXS_GEN3=m
 
 #
 # Generic Driver Options
@@ -2047,16 +2043,16 @@ CONFIG_GNSS_SIRF_SERIAL=m
 CONFIG_GNSS_UBX_SERIAL=m
 CONFIG_MTD=m
 # CONFIG_MTD_TESTS is not set
-CONFIG_MTD_REDBOOT_PARTS=m
-CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
-# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
-# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
 CONFIG_MTD_CMDLINE_PARTS=m
 CONFIG_MTD_AR7_PARTS=m
 
 #
 # Partition parsers
 #
+CONFIG_MTD_REDBOOT_PARTS=m
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
+# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
 
 #
 # User Modules And Translation Layers
@@ -2101,6 +2097,7 @@ CONFIG_MTD_ABSENT=m
 CONFIG_MTD_COMPLEX_MAPPINGS=y
 CONFIG_MTD_PHYSMAP=m
 # CONFIG_MTD_PHYSMAP_COMPAT is not set
+# CONFIG_MTD_PHYSMAP_GPIO_ADDR is not set
 CONFIG_MTD_SBC_GXX=m
 CONFIG_MTD_AMD76XROM=m
 CONFIG_MTD_ICHXROM=m
@@ -2112,10 +2109,8 @@ CONFIG_MTD_L440GX=m
 CONFIG_MTD_PCI=m
 CONFIG_MTD_PCMCIA=m
 # CONFIG_MTD_PCMCIA_ANONYMOUS is not set
-CONFIG_MTD_GPIO_ADDR=m
 CONFIG_MTD_INTEL_VR_NOR=m
 CONFIG_MTD_PLATRAM=m
-CONFIG_MTD_LATCH_ADDR=m
 
 #
 # Self-contained MTD device drivers
@@ -2271,11 +2266,13 @@ CONFIG_BLK_DEV_NVME=y
 CONFIG_NVME_FABRICS=m
 CONFIG_NVME_RDMA=m
 CONFIG_NVME_FC=m
+CONFIG_NVME_TCP=m
 CONFIG_NVME_TARGET=m
 CONFIG_NVME_TARGET_LOOP=m
 CONFIG_NVME_TARGET_RDMA=m
 CONFIG_NVME_TARGET_FC=m
 CONFIG_NVME_TARGET_FCLOOP=m
+CONFIG_NVME_TARGET_TCP=m
 
 #
 # Misc devices
@@ -2307,6 +2304,7 @@ CONFIG_LATTICE_ECP3_CONFIG=m
 CONFIG_SRAM=y
 # CONFIG_PCI_ENDPOINT_TEST is not set
 CONFIG_MISC_RTSX=m
+CONFIG_PVPANIC=m
 CONFIG_C2PORT=m
 CONFIG_C2PORT_DURAMAR_2150=m
 
@@ -2383,6 +2381,7 @@ CONFIG_VHOST_RING=m
 CONFIG_GENWQE=m
 CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0
 CONFIG_ECHO=m
+CONFIG_MISC_ALCOR_PCI=m
 CONFIG_MISC_RTSX_PCI=m
 CONFIG_MISC_RTSX_USB=m
 CONFIG_HAVE_IDE=y
@@ -2396,7 +2395,6 @@ CONFIG_RAID_ATTRS=m
 CONFIG_SCSI=y
 CONFIG_SCSI_DMA=y
 CONFIG_SCSI_NETLINK=y
-# CONFIG_SCSI_MQ_DEFAULT is not set
 CONFIG_SCSI_PROC_FS=y
 
 #
@@ -2475,6 +2473,7 @@ CONFIG_SCSI_UFSHCD=m
 CONFIG_SCSI_UFSHCD_PCI=m
 # CONFIG_SCSI_UFS_DWC_TC_PCI is not set
 CONFIG_SCSI_UFSHCD_PLATFORM=m
+CONFIG_SCSI_UFS_CDNS_PLATFORM=m
 # CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set
 # CONFIG_SCSI_UFS_BSG is not set
 CONFIG_SCSI_HPTIOP=m
@@ -2816,8 +2815,9 @@ CONFIG_NET_DSA_BCM_SF2=m
 CONFIG_NET_DSA_LANTIQ_GSWIP=m
 CONFIG_NET_DSA_MT7530=m
 CONFIG_NET_DSA_MV88E6060=m
-CONFIG_MICROCHIP_KSZ=m
-CONFIG_MICROCHIP_KSZ_SPI_DRIVER=m
+CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON=m
+CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
+CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
 CONFIG_NET_DSA_MV88E6XXX=m
 CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y
 # CONFIG_NET_DSA_MV88E6XXX_PTP is not set
@@ -3249,6 +3249,7 @@ CONFIG_USB_IPHETH=m
 CONFIG_USB_SIERRA_NET=m
 CONFIG_USB_VL600=m
 CONFIG_USB_NET_CH9200=m
+CONFIG_USB_NET_AQC111=m
 CONFIG_WLAN=y
 # CONFIG_WIRELESS_WDS is not set
 CONFIG_WLAN_VENDOR_ADMTEK=y
@@ -3510,11 +3511,12 @@ CONFIG_ZD1211RW=m
 # CONFIG_ZD1211RW_DEBUG is not set
 CONFIG_WLAN_VENDOR_QUANTENNA=y
 CONFIG_QTNFMAC=m
-CONFIG_QTNFMAC_PEARL_PCIE=m
+CONFIG_QTNFMAC_PCIE=m
 CONFIG_PCMCIA_RAYCS=m
 CONFIG_PCMCIA_WL3501=m
 CONFIG_MAC80211_HWSIM=m
 CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_VIRT_WIFI=m
 
 #
 # WiMAX Wireless Broadband devices
@@ -3656,13 +3658,6 @@ CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
 CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
 CONFIG_ISDN_DRV_AVMB1_T1PCI=m
 CONFIG_ISDN_DRV_AVMB1_C4=m
-CONFIG_CAPI_EICON=y
-CONFIG_ISDN_DIVAS=m
-CONFIG_ISDN_DIVAS_BRIPCI=y
-CONFIG_ISDN_DIVAS_PRIPCI=y
-CONFIG_ISDN_DIVAS_DIVACAPI=m
-CONFIG_ISDN_DIVAS_USERIDI=m
-CONFIG_ISDN_DIVAS_MAINT=m
 CONFIG_ISDN_DRV_GIGASET=m
 # CONFIG_GIGASET_CAPI is not set
 CONFIG_GIGASET_I4L=y
@@ -4005,6 +4000,7 @@ CONFIG_SERIO_RAW=m
 CONFIG_SERIO_ALTERA_PS2=m
 CONFIG_SERIO_PS2MULT=m
 CONFIG_SERIO_ARC_PS2=m
+# CONFIG_SERIO_OLPC_APSP is not set
 CONFIG_HYPERV_KEYBOARD=m
 CONFIG_SERIO_GPIO_PS2=m
 CONFIG_USERIO=m
@@ -4104,6 +4100,7 @@ CONFIG_SERIAL_MEN_Z135=m
 CONFIG_SERIAL_DEV_BUS=y
 CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
 CONFIG_TTY_PRINTK=y
+CONFIG_TTY_PRINTK_LEVEL=6
 CONFIG_PRINTER=m
 # CONFIG_LP_CONSOLE is not set
 CONFIG_PPDEV=m
@@ -4265,6 +4262,9 @@ CONFIG_I2C_SLAVE_EEPROM=m
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
 # CONFIG_I2C_DEBUG_BUS is not set
+CONFIG_I3C=m
+CONFIG_CDNS_I3C_MASTER=m
+CONFIG_DW_I3C_MASTER=m
 CONFIG_SPI=y
 # CONFIG_SPI_DEBUG is not set
 CONFIG_SPI_MASTER=y
@@ -4290,6 +4290,7 @@ CONFIG_SPI_PXA2XX=m
 CONFIG_SPI_PXA2XX_PCI=m
 CONFIG_SPI_ROCKCHIP=m
 CONFIG_SPI_SC18IS602=m
+CONFIG_SPI_MXIC=m
 CONFIG_SPI_XCOMM=m
 # CONFIG_SPI_XILINX is not set
 CONFIG_SPI_ZYNQMP_GQSPI=m
@@ -4654,6 +4655,7 @@ CONFIG_SENSORS_NCT6775=m
 CONFIG_SENSORS_NCT7802=m
 CONFIG_SENSORS_NCT7904=m
 CONFIG_SENSORS_NPCM7XX=m
+# CONFIG_SENSORS_OCC_P8_I2C is not set
 CONFIG_SENSORS_PCF8591=m
 CONFIG_PMBUS=m
 CONFIG_SENSORS_PMBUS=m
@@ -4747,6 +4749,10 @@ CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
 CONFIG_CLOCK_THERMAL=y
 CONFIG_DEVFREQ_THERMAL=y
 CONFIG_THERMAL_EMULATION=y
+
+#
+# Intel thermal drivers
+#
 CONFIG_INTEL_POWERCLAMP=m
 CONFIG_X86_PKG_TEMP_THERMAL=m
 CONFIG_INTEL_SOC_DTS_IOSF_CORE=m
@@ -4816,6 +4822,7 @@ CONFIG_60XX_WDT=m
 CONFIG_CPU5_WDT=m
 CONFIG_SMSC_SCH311X_WDT=m
 CONFIG_SMSC37B787_WDT=m
+CONFIG_TQMX86_WDT=m
 CONFIG_VIA_WDT=m
 CONFIG_W83627HF_WDT=m
 CONFIG_W83877F_WDT=m
@@ -4876,7 +4883,6 @@ CONFIG_MFD_CORE=y
 CONFIG_MFD_AS3711=y
 CONFIG_PMIC_ADP5520=y
 CONFIG_MFD_AAT2870_CORE=y
-CONFIG_MFD_AT91_USART=m
 CONFIG_MFD_BCM590XX=m
 CONFIG_MFD_BD9571MWV=m
 CONFIG_MFD_AXP20X=m
@@ -5109,6 +5115,7 @@ CONFIG_RC_LOOPBACK=m
 CONFIG_IR_SERIAL=m
 CONFIG_IR_SERIAL_TRANSMITTER=y
 CONFIG_IR_SIR=m
+CONFIG_RC_XBOX_DVD=m
 CONFIG_MEDIA_SUPPORT=m
 
 #
@@ -5129,7 +5136,6 @@ CONFIG_VIDEO_V4L2_SUBDEV_API=y
 CONFIG_VIDEO_V4L2=m
 # CONFIG_VIDEO_ADV_DEBUG is not set
 # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-# CONFIG_VIDEO_PCI_SKELETON is not set
 CONFIG_VIDEO_TUNER=m
 CONFIG_V4L2_MEM2MEM_DEV=m
 CONFIG_V4L2_FLASH_LED_CLASS=m
@@ -5398,6 +5404,7 @@ CONFIG_VIDEO_VIA_CAMERA=m
 CONFIG_VIDEO_CADENCE=y
 CONFIG_VIDEO_CADENCE_CSI2RX=m
 CONFIG_VIDEO_CADENCE_CSI2TX=m
+CONFIG_VIDEO_ASPEED=m
 CONFIG_SOC_CAMERA=m
 CONFIG_SOC_CAMERA_PLATFORM=m
 CONFIG_V4L_MEM2MEM_DRIVERS=y
@@ -5413,6 +5420,8 @@ CONFIG_VIDEO_VICODEC=m
 CONFIG_DVB_PLATFORM_DRIVERS=y
 CONFIG_CEC_PLATFORM_DRIVERS=y
 CONFIG_VIDEO_CROS_EC_CEC=m
+CONFIG_VIDEO_SECO_CEC=m
+# CONFIG_VIDEO_SECO_RC is not set
 CONFIG_SDR_PLATFORM_DRIVERS=y
 
 #
@@ -5930,7 +5939,7 @@ CONFIG_FB_SYS_FOPS=m
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_HECUBA=m
 CONFIG_FB_SVGALIB=m
-CONFIG_FB_BACKLIGHT=y
+CONFIG_FB_BACKLIGHT=m
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_FB_TILEBLITTING=y
 
@@ -6266,6 +6275,7 @@ CONFIG_SND_SOC_ACPI=m
 CONFIG_SND_SOC_AMD_ACP=m
 CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m
 CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
+CONFIG_SND_SOC_AMD_ACP3x=m
 CONFIG_SND_ATMEL_SOC=m
 CONFIG_SND_DESIGNWARE_I2S=m
 # CONFIG_SND_DESIGNWARE_PCM is not set
@@ -6297,6 +6307,13 @@ CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
 CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m
 CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI=m
 CONFIG_SND_SOC_INTEL_SKYLAKE=m
+CONFIG_SND_SOC_INTEL_SKL=m
+CONFIG_SND_SOC_INTEL_APL=m
+CONFIG_SND_SOC_INTEL_KBL=m
+CONFIG_SND_SOC_INTEL_GLK=m
+CONFIG_SND_SOC_INTEL_CNL=m
+CONFIG_SND_SOC_INTEL_CFL=m
+CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m
 CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m
 CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC=y
 CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m
@@ -6323,12 +6340,14 @@ CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
 CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
 CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m
 CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98927_MACH=m
+CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m
 CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m
 CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m
 
 #
 # STMicroelectronics STM32 SOC audio support
 #
+CONFIG_SND_SOC_XILINX_I2S=m
 CONFIG_SND_SOC_XTFPGA_I2S=m
 CONFIG_ZX_TDM=m
 CONFIG_SND_SOC_I2C_AND_SPI=m
@@ -6345,6 +6364,7 @@ CONFIG_SND_SOC_ADAU1761_I2C=m
 CONFIG_SND_SOC_ADAU1761_SPI=m
 CONFIG_SND_SOC_ADAU7002=m
 CONFIG_SND_SOC_AK4104=m
+CONFIG_SND_SOC_AK4118=m
 CONFIG_SND_SOC_AK4458=m
 CONFIG_SND_SOC_AK4554=m
 CONFIG_SND_SOC_AK4613=m
@@ -6427,6 +6447,7 @@ CONFIG_SND_SOC_RT5631=m
 CONFIG_SND_SOC_RT5640=m
 CONFIG_SND_SOC_RT5645=m
 CONFIG_SND_SOC_RT5651=m
+CONFIG_SND_SOC_RT5660=m
 CONFIG_SND_SOC_RT5663=m
 CONFIG_SND_SOC_RT5670=m
 CONFIG_SND_SOC_RT5677=m
@@ -7015,10 +7036,10 @@ CONFIG_TYPEC_MUX_PI3USB30532=m
 # USB Type-C Alternate Mode drivers
 #
 CONFIG_TYPEC_DP_ALTMODE=m
+CONFIG_USB_ROLE_SWITCH=m
 CONFIG_USB_ROLES_INTEL_XHCI=m
 CONFIG_USB_LED_TRIG=y
 CONFIG_USB_ULPI_BUS=m
-CONFIG_USB_ROLE_SWITCH=m
 CONFIG_UWB=m
 CONFIG_UWB_HWA=m
 CONFIG_UWB_WHCI=m
@@ -7040,6 +7061,7 @@ CONFIG_MMC_SDHCI_ACPI=m
 CONFIG_MMC_SDHCI_PLTFM=m
 CONFIG_MMC_SDHCI_F_SDH30=m
 CONFIG_MMC_WBSD=m
+CONFIG_MMC_ALCOR=m
 CONFIG_MMC_TIFM_SD=m
 CONFIG_MMC_SPI=m
 CONFIG_MMC_SDRICOH_CS=m
@@ -7153,6 +7175,7 @@ CONFIG_LEDS_TRIGGER_CAMERA=m
 CONFIG_LEDS_TRIGGER_PANIC=y
 CONFIG_LEDS_TRIGGER_NETDEV=m
 CONFIG_LEDS_TRIGGER_PATTERN=m
+CONFIG_LEDS_TRIGGER_AUDIO=m
 # CONFIG_ACCESSIBILITY is not set
 CONFIG_INFINIBAND=m
 CONFIG_INFINIBAND_USER_MAD=m
@@ -7471,6 +7494,7 @@ CONFIG_XEN_AUTO_XLATE=y
 CONFIG_XEN_ACPI=y
 CONFIG_XEN_SYMS=y
 CONFIG_XEN_HAVE_VPMU=y
+CONFIG_XEN_FRONT_PGDIR_SHBUF=m
 CONFIG_STAGING=y
 CONFIG_PRISM2_USB=m
 CONFIG_COMEDI=m
@@ -7683,7 +7707,6 @@ CONFIG_ADE7854_SPI=m
 #
 # Resolver to digital converters
 #
-CONFIG_AD2S90=m
 CONFIG_AD2S1210=m
 CONFIG_FB_SM750=m
 CONFIG_FB_XGI=m
@@ -7715,6 +7738,7 @@ CONFIG_VIDEO_ZORAN_DC10=m
 CONFIG_VIDEO_ZORAN_LML33=m
 CONFIG_VIDEO_ZORAN_LML33R10=m
 CONFIG_VIDEO_ZORAN_AVS6EYES=m
+CONFIG_VIDEO_IPU3_IMGU=m
 
 #
 # Android
@@ -7723,8 +7747,6 @@ CONFIG_LTE_GDM724X=m
 CONFIG_FIREWIRE_SERIAL=m
 CONFIG_FWTTY_MAX_TOTAL_PORTS=64
 CONFIG_FWTTY_MAX_CARD_PORTS=32
-CONFIG_MTD_SPINAND_MT29F=m
-CONFIG_MTD_SPINAND_ONDIEECC=y
 CONFIG_GS_FPGABOOT=m
 CONFIG_UNISYSSPAR=y
 CONFIG_UNISYS_VISORNIC=m
@@ -7870,7 +7892,6 @@ CONFIG_SAMSUNG_Q10=m
 CONFIG_APPLE_GMUX=m
 CONFIG_INTEL_RST=m
 CONFIG_INTEL_SMARTCONNECT=m
-CONFIG_PVPANIC=m
 CONFIG_INTEL_PMC_IPC=m
 CONFIG_INTEL_BXTWC_PMIC_TMU=m
 CONFIG_SURFACE_PRO3_BUTTON=m
@@ -7883,6 +7904,7 @@ CONFIG_INTEL_TELEMETRY=m
 CONFIG_INTEL_CHTDC_TI_PWRBTN=m
 CONFIG_I2C_MULTI_INSTANTIATE=m
 CONFIG_INTEL_ATOMISP2_PM=m
+CONFIG_HUAWEI_WMI=m
 CONFIG_PMC_ATOM=y
 CONFIG_CHROME_PLATFORMS=y
 CONFIG_CHROMEOS_LAPTOP=m
@@ -8081,6 +8103,7 @@ CONFIG_STK8BA50=m
 # Analog to digital converters
 #
 CONFIG_AD_SIGMA_DELTA=m
+CONFIG_AD7124=m
 CONFIG_AD7266=m
 CONFIG_AD7291=m
 CONFIG_AD7298=m
@@ -8090,6 +8113,7 @@ CONFIG_AD7791=m
 CONFIG_AD7793=m
 CONFIG_AD7887=m
 CONFIG_AD7923=m
+CONFIG_AD7949=m
 CONFIG_AD799X=m
 CONFIG_AXP20X_ADC=m
 CONFIG_AXP288_ADC=m
@@ -8208,6 +8232,7 @@ CONFIG_MCP4725=m
 CONFIG_MCP4922=m
 CONFIG_TI_DAC082S085=m
 CONFIG_TI_DAC5571=m
+CONFIG_TI_DAC7311=m
 
 #
 # IIO dummy driver
@@ -8336,6 +8361,7 @@ CONFIG_TSL2772=m
 CONFIG_TSL4531=m
 CONFIG_US5182D=m
 CONFIG_VCNL4000=m
+CONFIG_VCNL4035=m
 CONFIG_VEML6070=m
 CONFIG_VL6180=m
 CONFIG_ZOPT2201=m
@@ -8357,6 +8383,9 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
 CONFIG_SENSORS_HMC5843=m
 CONFIG_SENSORS_HMC5843_I2C=m
 CONFIG_SENSORS_HMC5843_SPI=m
+CONFIG_SENSORS_RM3100=m
+CONFIG_SENSORS_RM3100_I2C=m
+CONFIG_SENSORS_RM3100_SPI=m
 
 #
 # Multiplexers
@@ -8386,6 +8415,7 @@ CONFIG_MAX5487=m
 CONFIG_MCP4018=m
 CONFIG_MCP4131=m
 CONFIG_MCP4531=m
+CONFIG_MCP41010=m
 CONFIG_TPL0102=m
 
 #
@@ -8439,6 +8469,7 @@ CONFIG_VL53L0X_I2C=m
 #
 # Resolver to digital converters
 #
+CONFIG_AD2S90=m
 CONFIG_AD2S1200=m
 
 #
@@ -8495,6 +8526,7 @@ CONFIG_PWM_TWL_LED=m
 # IRQ chip support
 #
 CONFIG_ARM_GIC_MAX_NR=1
+CONFIG_MADERA_IRQ=m
 CONFIG_IPACK_BUS=m
 CONFIG_BOARD_TPCI200=m
 CONFIG_SERIAL_IPOCTAL=m
@@ -8545,6 +8577,7 @@ CONFIG_BTT=y
 CONFIG_ND_PFN=m
 CONFIG_NVDIMM_PFN=y
 CONFIG_NVDIMM_DAX=y
+CONFIG_NVDIMM_KEYS=y
 CONFIG_DAX_DRIVER=y
 CONFIG_DAX=y
 CONFIG_DEV_DAX=m
@@ -9018,6 +9051,7 @@ CONFIG_IMA_DEFAULT_HASH="sha1"
 # CONFIG_IMA_WRITE_POLICY is not set
 # CONFIG_IMA_READ_POLICY is not set
 CONFIG_IMA_APPRAISE=y
+# CONFIG_IMA_ARCH_POLICY is not set
 # CONFIG_IMA_APPRAISE_BUILD_POLICY is not set
 CONFIG_IMA_APPRAISE_BOOTPARAM=y
 CONFIG_IMA_TRUSTED_KEYRING=y
@@ -9115,6 +9149,10 @@ CONFIG_CRYPTO_OFB=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_KEYWRAP=m
+CONFIG_CRYPTO_NHPOLY1305=m
+CONFIG_CRYPTO_NHPOLY1305_SSE2=m
+CONFIG_CRYPTO_NHPOLY1305_AVX2=m
+CONFIG_CRYPTO_ADIANTUM=m
 
 #
 # Hash modes
@@ -9151,6 +9189,7 @@ CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_SHA512=y
 CONFIG_CRYPTO_SHA3=m
 CONFIG_CRYPTO_SM3=m
+CONFIG_CRYPTO_STREEBOG=m
 CONFIG_CRYPTO_TGR192=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
@@ -9221,6 +9260,7 @@ CONFIG_CRYPTO_USER_API_HASH=m
 CONFIG_CRYPTO_USER_API_SKCIPHER=m
 CONFIG_CRYPTO_USER_API_RNG=m
 CONFIG_CRYPTO_USER_API_AEAD=m
+# CONFIG_CRYPTO_STATS is not set
 CONFIG_CRYPTO_HASH_INFO=y
 CONFIG_CRYPTO_HW=y
 CONFIG_CRYPTO_DEV_PADLOCK=y
@@ -9268,6 +9308,7 @@ CONFIG_BINARY_PRINTF=y
 # Library routines
 #
 CONFIG_RAID6_PQ=m
+CONFIG_RAID6_PQ_BENCHMARK=y
 CONFIG_BITREVERSE=y
 CONFIG_RATIONAL=y
 CONFIG_GENERIC_STRNCPY_FROM_USER=y
@@ -9293,7 +9334,7 @@ CONFIG_CRC64=m
 CONFIG_CRC7=m
 CONFIG_LIBCRC32C=m
 CONFIG_CRC8=m
-CONFIG_XXHASH=m
+CONFIG_XXHASH=y
 # CONFIG_RANDOM32_SELFTEST is not set
 CONFIG_842_COMPRESS=m
 CONFIG_842_DECOMPRESS=m
@@ -9342,7 +9383,6 @@ CONFIG_HAS_DMA=y
 CONFIG_NEED_SG_DMA_LENGTH=y
 CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_ARCH_DMA_ADDR_T_64BIT=y
-CONFIG_DMA_DIRECT_OPS=y
 CONFIG_DMA_VIRT_OPS=y
 CONFIG_SWIOTLB=y
 CONFIG_SGL_ALLOC=y
@@ -9367,13 +9407,13 @@ CONFIG_FONT_SUPPORT=y
 CONFIG_FONT_8x8=y
 CONFIG_FONT_8x16=y
 CONFIG_SG_POOL=y
-CONFIG_ARCH_HAS_SG_CHAIN=y
 CONFIG_ARCH_HAS_PMEM_API=y
 CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y
 CONFIG_ARCH_HAS_UACCESS_MCSAFE=y
 CONFIG_SBITMAP=y
 CONFIG_PARMAN=m
 # CONFIG_STRING_SELFTEST is not set
+CONFIG_OBJAGG=m
 
 #
 # Kernel hacking
@@ -9434,7 +9474,9 @@ CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m
 CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
 # CONFIG_DEBUG_STACKOVERFLOW is not set
 CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
 # CONFIG_KASAN is not set
+CONFIG_KASAN_STACK=1
 CONFIG_ARCH_HAS_KCOV=y
 CONFIG_CC_HAS_SANCOV_TRACE_PC=y
 # CONFIG_KCOV is not set
@@ -9547,6 +9589,7 @@ CONFIG_KPROBE_EVENTS=y
 # CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
 # CONFIG_UPROBE_EVENTS is not set
 CONFIG_BPF_EVENTS=y
+CONFIG_DYNAMIC_EVENTS=y
 CONFIG_PROBE_EVENTS=y
 CONFIG_DYNAMIC_FTRACE=y
 CONFIG_DYNAMIC_FTRACE_WITH_REGS=y
@@ -9599,6 +9642,7 @@ CONFIG_TEST_UDELAY=m
 CONFIG_TEST_STATIC_KEYS=m
 # CONFIG_TEST_KMOD is not set
 # CONFIG_TEST_MEMCAT_P is not set
+CONFIG_TEST_OBJAGG=m
 CONFIG_MEMTEST=y
 # CONFIG_BUG_ON_DATA_CORRUPTION is not set
 # CONFIG_SAMPLES is not set
diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index 43d42b37ad..f4bad73dc7 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Dave Love <fx@gnu.org>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -168,3 +168,28 @@ Efficiency of the MPI implementation.
     (license license:cpl1.0)))
 
 (define-public imb-openmpi (imb openmpi))
+
+(define-public multitime
+  (package
+    (name "multitime")
+    (version "1.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://tratt.net/laurie/src/"
+                                  "multitime/releases/"
+                                  "multitime-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0iyfsdrbyqa7a4ifrh19l9a48hgv7ld6m0d8yf9bkl12q0qw91fx"))))
+    (build-system gnu-build-system)
+    (arguments '(#:tests? #f)) ; there are no tests
+    (home-page "https://tratt.net/laurie/src/multitime/")
+    (synopsis "Time command execution over multiple executions")
+    (description
+     "The @code{time} utility is a simple and often effective way of measuring
+how long a command takes to run (wall time).  Unfortunately, running a command
+once can give misleading timings.  @code{multitime} is, in essence, a simple
+extension to @code{time} which runs a command multiple times and prints the
+timing means, standard deviations, mins, medians, and maxes having done so.
+This can give a much better understanding of the command's performance.")
+    (license license:expat)))
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index ae9d7070c3..8df065a60c 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017, 2018 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2016, 2017, 2018 Roel Janssen <roel@gnu.org>
+;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -33,6 +33,70 @@
   #:use-module (gnu packages statistics)
   #:use-module (gnu packages web))
 
+(define-public r-bsgenome-celegans-ucsc-ce6
+  (package
+    (name "r-bsgenome-celegans-ucsc-ce6")
+    (version "1.4.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "BSgenome.Celegans.UCSC.ce6_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0mqzb353xv2c3m3vkb315dkmnxkgczp7ndnknyhpgjlybyf715v9"))))
+    (properties
+     `((upstream-name . "BSgenome.Celegans.UCSC.ce6")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)))
+    (home-page
+     "https://www.bioconductor.org/packages/BSgenome.Celegans.UCSC.ce6/")
+    (synopsis "Full genome sequences for Worm")
+    (description
+     "This package provides full genome sequences for Caenorhabditis
+elegans (Worm) as provided by UCSC (ce6, May 2008) and stored in Biostrings
+objects.")
+    (license license:artistic2.0)))
+
+(define-public r-bsgenome-celegans-ucsc-ce10
+  (package
+    (name "r-bsgenome-celegans-ucsc-ce10")
+    (version "1.4.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "BSgenome.Celegans.UCSC.ce10_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1zaym97jk4npxk14ifvwz2rvhm4zx9xgs33r9vvx9rlynp0gydrk"))))
+    (properties
+     `((upstream-name . "BSgenome.Celegans.UCSC.ce10")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)))
+    (home-page
+     "https://www.bioconductor.org/packages/BSgenome.Celegans.UCSC.ce10/")
+    (synopsis "Full genome sequences for Worm")
+    (description
+     "This package provides full genome sequences for Caenorhabditis
+elegans (Worm) as provided by UCSC (ce10, Oct 2010) and stored in Biostrings
+objects.")
+    (license license:artistic2.0)))
+
 (define-public r-bsgenome-dmelanogaster-ucsc-dm6
   (package
     (name "r-bsgenome-dmelanogaster-ucsc-dm6")
@@ -65,6 +129,38 @@ melanogaster (Fly) as provided by UCSC (dm6) and stored in Biostrings
 objects.")
     (license license:artistic2.0)))
 
+(define-public r-bsgenome-dmelanogaster-ucsc-dm3
+  (package
+    (name "r-bsgenome-dmelanogaster-ucsc-dm3")
+    (version "1.4.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "BSgenome.Dmelanogaster.UCSC.dm3_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "19bm3lkhhkag3gnwp419211fh0cnr0x6fa0r1lr0ycwrikxdxsv8"))))
+    (properties
+     `((upstream-name . "BSgenome.Dmelanogaster.UCSC.dm3")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)))
+    (home-page
+     "https://www.bioconductor.org/packages/BSgenome.Dmelanogaster.UCSC.dm3/")
+    (synopsis "Full genome sequences for Fly")
+    (description
+     "This package provides full genome sequences for Drosophila
+melanogaster (Fly) as provided by UCSC (dm3, April 2006) and stored in
+Biostrings objects.")
+    (license license:artistic2.0)))
+
 (define-public r-bsgenome-dmelanogaster-ucsc-dm3-masked
   (package
     (name "r-bsgenome-dmelanogaster-ucsc-dm3-masked")
@@ -100,6 +196,37 @@ RepeatMasker (RM mask), and (4) the mask of repeats from Tandem Repeats
 Finder (TRF mask).  Only the AGAPS and AMB masks are \"active\" by default.")
     (license license:artistic2.0)))
 
+(define-public r-bsgenome-hsapiens-1000genomes-hs37d5
+  (package
+    (name "r-bsgenome-hsapiens-1000genomes-hs37d5")
+    (version "0.99.1")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "BSgenome.Hsapiens.1000genomes.hs37d5_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1cg0g5fqmsvwyw2p9hp2yy4ilk21jkbbrnpgqvb5c36ihjwvc7sr"))))
+    (properties
+     `((upstream-name . "BSgenome.Hsapiens.1000genomes.hs37d5")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)))
+    (home-page
+     "https://www.bioconductor.org/packages/BSgenome.Hsapiens.1000genomes.hs37d5/")
+    (synopsis "Full genome sequences for Homo sapiens")
+    (description
+     "This package provides full genome sequences for Homo sapiens from
+1000genomes phase2 reference genome sequence (hs37d5), based on NCBI GRCh37.")
+    (license license:artistic2.0)))
+
 (define-public r-bsgenome-hsapiens-ucsc-hg19-masked
   (package
     (name "r-bsgenome-hsapiens-ucsc-hg19-masked")
@@ -135,6 +262,37 @@ Repeats Finder (TRF mask).  Only the AGAPS and AMB masks are \"active\" by
 default.")
     (license license:artistic2.0)))
 
+(define-public r-bsgenome-mmusculus-ucsc-mm9
+  (package
+    (name "r-bsgenome-mmusculus-ucsc-mm9")
+    (version "1.4.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "BSgenome.Mmusculus.UCSC.mm9_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1birqw30g2azimxpnjfzmkphan7x131yy8b9h85lfz5fjdg7841i"))))
+    (properties
+     `((upstream-name . "BSgenome.Mmusculus.UCSC.mm9")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)))
+    (home-page
+     "https://www.bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm9/")
+    (synopsis "Full genome sequences for Mouse")
+    (description
+     "This package provides full genome sequences for Mus musculus (Mouse) as
+provided by UCSC (mm9, July 2007) and stored in Biostrings objects.")
+    (license license:artistic2.0)))
+
 (define-public r-bsgenome-mmusculus-ucsc-mm9-masked
   (package
     (name "r-bsgenome-mmusculus-ucsc-mm9-masked")
@@ -170,10 +328,203 @@ Repeats Finder (TRF mask).  Only the AGAPS and AMB masks are \"active\" by
 default."  )
     (license license:artistic2.0)))
 
+(define-public r-bsgenome-mmusculus-ucsc-mm10
+  (package
+    (name "r-bsgenome-mmusculus-ucsc-mm10")
+    (version "1.4.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "BSgenome.Mmusculus.UCSC.mm10_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "12s0nm2na9brjad4rn9l7d3db2aj8qa1xvz0y1k7gk08wayb6bkf"))))
+    (properties
+     `((upstream-name . "BSgenome.Mmusculus.UCSC.mm10")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)))
+    (home-page
+     "https://www.bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm10/")
+    (synopsis "Full genome sequences for Mouse")
+    (description
+     "This package provides full genome sequences for Mus
+musculus (Mouse) as provided by UCSC (mm10, December 2011) and stored
+in Biostrings objects.")
+    (license license:artistic2.0)))
+
+(define-public r-org-ce-eg-db
+  (package
+    (name "r-org-ce-eg-db")
+    (version "3.7.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "org.Ce.eg.db_" version ".tar.gz"))
+              (sha256
+               (base32
+                "1w5br1ss4ha8wv4v2saj7cmbjc2jw0dyj2f2y269l078z31wcnaz"))))
+    (properties
+     `((upstream-name . "org.Ce.eg.db")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-annotationdbi" ,r-annotationdbi)))
+    (home-page "https://www.bioconductor.org/packages/org.Ce.eg.db/")
+    (synopsis "Genome wide annotation for Worm")
+    (description
+     "This package provides mappings from Entrez gene identifiers to various
+annotations for the genome of the model worm Caenorhabditis elegans.")
+    (license license:artistic2.0)))
+
+(define-public r-org-dm-eg-db
+  (package
+    (name "r-org-dm-eg-db")
+    (version "3.7.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "org.Dm.eg.db_" version ".tar.gz"))
+              (sha256
+               (base32
+                "1pqjrzlyg72bjpy8zsxvaglc7jsv176bnyi87xdajmkvsgxpm7b3"))))
+    (properties
+     `((upstream-name . "org.Dm.eg.db")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-annotationdbi" ,r-annotationdbi)))
+    (home-page "https://www.bioconductor.org/packages/org.Dm.eg.db/")
+    (synopsis "Genome wide annotation for Fly")
+    (description
+     "This package provides mappings from Entrez gene identifiers to various
+annotations for the genome of the model fruit fly Drosophila melanogaster.")
+    (license license:artistic2.0)))
+
+(define-public r-org-dr-eg-db
+  (package
+    (name "r-org-dr-eg-db")
+    (version "3.7.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "org.Dr.eg.db_" version ".tar.gz"))
+              (sha256
+               (base32
+                "1xs5wsbcpy0iwbjyiv7fax57djqc529ai5fk1qfsdcvlja3cpglx"))))
+    (properties
+     `((upstream-name . "org.Dr.eg.db")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-annotationdbi" ,r-annotationdbi)))
+    (home-page "https://www.bioconductor.org/packages/org.Dr.eg.db/")
+    (synopsis "Annotation for Zebrafish")
+    (description
+     "This package provides genome wide annotations for Zebrafish, primarily
+based on mapping using Entrez Gene identifiers.")
+    (license license:artistic2.0)))
+
+(define-public r-org-hs-eg-db
+  (package
+    (name "r-org-hs-eg-db")
+    (version "3.7.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "org.Hs.eg.db_" version ".tar.gz"))
+              (sha256
+               (base32
+                "1qxz9l80yg3qdqszs6dsscp7lrpfi1bgd0pxh9j7q34vprzwhdim"))))
+    (properties
+     `((upstream-name . "org.Hs.eg.db")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-annotationdbi" ,r-annotationdbi)))
+    (home-page "https://www.bioconductor.org/packages/org.Hs.eg.db/")
+    (synopsis "Genome wide annotation for Human")
+    (description
+     "This package contains genome-wide annotations for Human, primarily based
+on mapping using Entrez Gene identifiers.")
+    (license license:artistic2.0)))
+
+(define-public r-org-mm-eg-db
+  (package
+    (name "r-org-mm-eg-db")
+    (version "3.7.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "org.Mm.eg.db_" version ".tar.gz"))
+              (sha256
+               (base32
+                "1i3nvrd3wjigf1rmgxq1p5xxc3p8v02h5gwi62s30rkrsyjjfjxx"))))
+    (properties
+     `((upstream-name . "org.Mm.eg.db")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-annotationdbi" ,r-annotationdbi)))
+    (home-page "https://www.bioconductor.org/packages/org.Mm.eg.db/")
+    (synopsis "Genome wide annotation for Mouse")
+    (description
+     "This package provides mappings from Entrez gene identifiers to various
+annotations for the genome of the model mouse Mus musculus.")
+    (license license:artistic2.0)))
+
+(define-public r-bsgenome-hsapiens-ucsc-hg19
+  (package
+    (name "r-bsgenome-hsapiens-ucsc-hg19")
+    (version "1.4.0")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "BSgenome.Hsapiens.UCSC.hg19_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1y0nqpk8cw5a34sd9hmin3z4v7iqm6hf6l22cl81vlbxqbjibxc8"))))
+    (properties
+     `((upstream-name . "BSgenome.Hsapiens.UCSC.hg19")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)))
+    (home-page
+     "https://www.bioconductor.org/packages/BSgenome.Hsapiens.UCSC.hg19/")
+    (synopsis "Full genome sequences for Homo sapiens")
+    (description
+     "This package provides full genome sequences for Homo sapiens as provided
+by UCSC (hg19, February 2009) and stored in Biostrings objects.")
+    (license license:artistic2.0)))
+
 (define-public r-genelendatabase
   (package
     (name "r-genelendatabase")
-    (version "1.16.0")
+    (version "1.18.0")
     (source
      (origin
        (method url-fetch)
@@ -184,7 +535,7 @@ default."  )
                            "/geneLenDataBase_" version ".tar.gz"))
        (sha256
         (base32
-         "07mmmn53kb7v14msc13dsbm8ghssbvwcrhifrk15hn37bw2p4ja5"))))
+         "03gm4pvsfascx7kjg0jycpf4f572mja68wwmwigs390vbmawyb4a"))))
     (properties
      `((upstream-name . "geneLenDataBase")))
     (build-system r-build-system)
@@ -198,6 +549,38 @@ default."  )
 genomes and gene ID formats, largely based on the UCSC table browser.")
     (license license:lgpl2.0+)))
 
+(define-public r-txdb-hsapiens-ucsc-hg19-knowngene
+  (package
+    (name "r-txdb-hsapiens-ucsc-hg19-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.Hsapiens.UCSC.hg19.knownGene_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1sajhcqqwazgz2lqbik7rd935i7kpnh08zxbp2ra10j72yqy4g86"))))
+    (properties
+     `((upstream-name . "TxDb.Hsapiens.UCSC.hg19.knownGene")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-genomicfeatures" ,r-genomicfeatures)))
+    (home-page
+     "https://bioconductor.org/packages/TxDb.Hsapiens.UCSC.hg19.knownGene/")
+    (synopsis "Annotation package for human genome in TxDb format")
+    (description
+     "This package provides an annotation database of Homo sapiens genome
+data.  It is derived from the UCSC hg19 genome and based on the \"knownGene\"
+track.  The database is exposed as a @code{TxDb} object.")
+    (license license:artistic2.0)))
+
 (define-public r-txdb-mmusculus-ucsc-mm9-knowngene
   (package
     (name "r-txdb-mmusculus-ucsc-mm9-knowngene")
@@ -228,6 +611,41 @@ 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-txdb-mmusculus-ucsc-mm10-knowngene
+  (package
+    (name "r-txdb-mmusculus-ucsc-mm10-knowngene")
+    (version "3.4.4")
+    (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://www.bioconductor.org/packages/"
+                                  "release/data/annotation/src/contrib/"
+                                  "TxDb.Mmusculus.UCSC.mm10.knownGene_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "01lgxc1fx5nhlpbwjd5zqghkkbmh6axd98ikx4b0spv0jdg6gf39"))))
+    (properties
+     `((upstream-name . "TxDb.Mmusculus.UCSC.mm10.knownGene")))
+    (build-system r-build-system)
+    ;; As this package provides little more than a very large data file it
+    ;; doesn't make sense to build substitutes.
+    (arguments `(#:substitutable? #f))
+    (propagated-inputs
+     `(("r-bsgenome" ,r-bsgenome)
+       ("r-genomicfeatures" ,r-genomicfeatures)
+       ("r-annotationdbi" ,r-annotationdbi)))
+    (home-page
+     "https://bioconductor.org/packages/TxDb.Mmusculus.UCSC.mm10.knownGene/")
+    (synopsis "Annotation package for TxDb knownGene object(s) for Mouse")
+    (description
+     "This package loads a TxDb object, which is an R interface to
+prefabricated databases contained in this package.  This package provides
+the TxDb object of Mouse data as provided by UCSC (mm10, December 2011)
+based on the knownGene track.")
+    (license license:artistic2.0)))
+
 
 (define-public r-biocgenerics
   (package
@@ -323,6 +741,31 @@ customizable permutation tests to assess the association between genomic
 region sets and other genomic features.")
     (license license:artistic2.0)))
 
+(define-public r-geneplotter
+  (package
+    (name "r-geneplotter")
+    (version "1.60.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (bioconductor-uri "geneplotter" version))
+       (sha256
+        (base32
+         "10khr0pznxf3m0f5gzck9ymljrwcv3vamfmpskd51yjh36lhllqz"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-annotate" ,r-annotate)
+       ("r-annotationdbi" ,r-annotationdbi)
+       ("r-biobase" ,r-biobase)
+       ("r-biocgenerics" ,r-biocgenerics)
+       ("r-lattice" ,r-lattice)
+       ("r-rcolorbrewer" ,r-rcolorbrewer)))
+    (home-page "https://bioconductor.org/packages/geneplotter")
+    (synopsis "Graphics functions for genomic data")
+    (description
+     "This package provides functions for plotting genomic data.")
+    (license license:artistic2.0)))
+
 (define-public r-diffbind
   (package
     (name "r-diffbind")
@@ -1178,6 +1621,29 @@ Viewer (SAV) files, access data, and generate QC plots.")
 sequencing data.")
     (license license:gpl2+)))
 
+(define-public r-copynumber
+  (package
+    (name "r-copynumber")
+    (version "1.22.0")
+    (source (origin
+              (method url-fetch)
+              (uri (bioconductor-uri "copynumber" version))
+              (sha256
+               (base32
+                "0ipwj9i5p1bwhg5d80jdjagm02krpj2v0j47qdgw41h8wncdyal3"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-s4vectors" ,r-s4vectors)
+       ("r-iranges" ,r-iranges)
+       ("r-genomicranges" ,r-genomicranges)
+       ("r-biocgenerics" ,r-biocgenerics)))
+    (home-page "https://bioconductor.org/packages/copynumber")
+    (synopsis "Segmentation of single- and multi-track copy number data")
+    (description
+     "This package segments single- and multi-track copy number data by a
+penalized least squares regression method.")
+    (license license:artistic2.0)))
+
 (define-public r-dnacopy
   (package
     (name "r-dnacopy")
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 982cb7a984..26fcc3a41a 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -84,6 +84,7 @@
   #:use-module (gnu packages jemalloc)
   #:use-module (gnu packages dlang)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages lisp)
   #:use-module (gnu packages logging)
   #:use-module (gnu packages machine-learning)
   #:use-module (gnu packages man)
@@ -1091,7 +1092,7 @@ package provides command line tools using the Bio++ library.")
 (define-public blast+
   (package
     (name "blast+")
-    (version "2.6.0")
+    (version "2.7.1")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -1099,8 +1100,7 @@ package provides command line tools using the Bio++ library.")
                     version "/ncbi-blast-" version "+-src.tar.gz"))
               (sha256
                (base32
-                "15n937pw5aqmyfjb6l387d18grqbb96l63d5xj4l7yyh0zbf2405"))
-              (patches (search-patches "blast+-fix-makefile.patch"))
+                "1jlq0afxxgczpp35k6mxh8mn4jzq7vqcnaixk166sfj10wq8v9qh"))
               (modules '((guix build utils)))
               (snippet
                '(begin
@@ -1208,6 +1208,7 @@ package provides command line tools using the Bio++ library.")
                "include")) ;  33 MB
     (inputs
      `(("bzip2" ,bzip2)
+       ("lmdb" ,lmdb)
        ("zlib" ,zlib)
        ("pcre" ,pcre)
        ("perl" ,perl)
@@ -1384,6 +1385,46 @@ gapped, local, and paired-end alignment modes.")
     (supported-systems '("x86_64-linux"))
     (license license:gpl3+)))
 
+(define-public bowtie1
+  (package
+    (name "bowtie1")
+    (version "1.2.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/bowtie-bio/bowtie/"
+                                  version "/bowtie-" version "-src.zip"))
+              (sha256
+               (base32
+                "1jl2cj9bz8lwz8dwnxbycn8yp8g4kky62fkcxifyf1ri0y6n2vc0"))
+              (modules '((guix build utils)))
+              (snippet
+               '(substitute* "Makefile"
+                  ;; replace BUILD_HOST and BUILD_TIME for deterministic build
+                  (("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"")
+                  (("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\"")))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:tests? #f                      ; no "check" target
+       #:make-flags
+       (list "all"
+             (string-append "prefix=" (assoc-ref %outputs "out")))
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure))))
+    (inputs
+     `(("tbb" ,tbb)
+       ("zlib" ,zlib)))
+    (supported-systems '("x86_64-linux"))
+    (home-page "http://bowtie-bio.sourceforge.net/index.shtml")
+    (synopsis "Fast aligner for short nucleotide sequence reads")
+    (description
+     "Bowtie is a fast, memory-efficient short read aligner.  It aligns short
+DNA sequences (reads) to the human genome at a rate of over 25 million 35-bp
+reads per hour.  Bowtie indexes the genome with a Burrows-Wheeler index to
+keep its memory footprint small: typically about 2.2 GB for the human
+genome (2.9 GB for paired-end).")
+    (license license:artistic2.0)))
+
 (define-public tophat
   (package
     (name "tophat")
@@ -1729,7 +1770,9 @@ high-throughput sequencing data – with an emphasis on simplicity.")
      `(#:tests? #f ; there are no tests
        #:make-flags
        ;; Executables are copied directly to the PREFIX.
-       (list (string-append "PREFIX=" (assoc-ref %outputs "out") "/bin"))
+       (list (string-append "PREFIX=" (assoc-ref %outputs "out") "/bin")
+             ;; Support longer sequences (e.g. Pacbio sequences)
+             "MAX_SEQ=60000000")
        #:phases
        (modify-phases %standard-phases
          ;; No "configure" script
@@ -6240,6 +6283,48 @@ sequence.")
     (supported-systems '("i686-linux" "x86_64-linux"))
     (license license:bsd-3)))
 
+(define-public r-scde
+  (package
+    (name "r-scde")
+    (version "1.99.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/hms-dbmi/scde.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "10na2gyka24mszdxf92wz9h2c13hdf1ww30c68gfsw53lvvhhhxb"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-rcpp" ,r-rcpp)
+       ("r-rcpparmadillo" ,r-rcpparmadillo)
+       ("r-mgcv" ,r-mgcv)
+       ("r-rook" ,r-rook)
+       ("r-rjson" ,r-rjson)
+       ("r-cairo" ,r-cairo)
+       ("r-rcolorbrewer" ,r-rcolorbrewer)
+       ("r-edger" ,r-edger)
+       ("r-quantreg" ,r-quantreg)
+       ("r-nnet" ,r-nnet)
+       ("r-rmtstat" ,r-rmtstat)
+       ("r-extremes" ,r-extremes)
+       ("r-pcamethods" ,r-pcamethods)
+       ("r-biocparallel" ,r-biocparallel)
+       ("r-flexmix" ,r-flexmix)))
+    (home-page "https://hms-dbmi.github.io/scde/")
+    (synopsis "R package for analyzing single-cell RNA-seq data")
+    (description "The SCDE package implements a set of statistical methods for
+analyzing single-cell RNA-seq data.  SCDE fits individual error models for
+single-cell RNA-seq measurements.  These models can then be used for
+assessment of differential expression between groups of cells, as well as
+other types of analysis.  The SCDE package also contains the pagoda framework
+which applies pathway and gene set overdispersion analysis to identify aspects
+of transcriptional heterogeneity among single cells.")
+    ;; See https://github.com/hms-dbmi/scde/issues/38
+    (license license:gpl2)))
+
 (define-public r-centipede
   (package
     (name "r-centipede")
@@ -6264,54 +6349,6 @@ between two different types of motif instances using as much relevant
 information as possible.")
     (license (list license:gpl2+ license:gpl3+))))
 
-(define-public r-copynumber
-  (package
-    (name "r-copynumber")
-    (version "1.22.0")
-    (source (origin
-              (method url-fetch)
-              (uri (bioconductor-uri "copynumber" version))
-              (sha256
-               (base32
-                "0ipwj9i5p1bwhg5d80jdjagm02krpj2v0j47qdgw41h8wncdyal3"))))
-    (build-system r-build-system)
-    (propagated-inputs
-     `(("r-s4vectors" ,r-s4vectors)
-       ("r-iranges" ,r-iranges)
-       ("r-genomicranges" ,r-genomicranges)
-       ("r-biocgenerics" ,r-biocgenerics)))
-    (home-page "https://bioconductor.org/packages/copynumber")
-    (synopsis "Segmentation of single- and multi-track copy number data")
-    (description
-     "This package segments single- and multi-track copy number data by a
-penalized least squares regression method.")
-    (license license:artistic2.0)))
-
-(define-public r-geneplotter
-  (package
-    (name "r-geneplotter")
-    (version "1.60.0")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (bioconductor-uri "geneplotter" version))
-       (sha256
-        (base32
-         "10khr0pznxf3m0f5gzck9ymljrwcv3vamfmpskd51yjh36lhllqz"))))
-    (build-system r-build-system)
-    (propagated-inputs
-     `(("r-annotate" ,r-annotate)
-       ("r-annotationdbi" ,r-annotationdbi)
-       ("r-biobase" ,r-biobase)
-       ("r-biocgenerics" ,r-biocgenerics)
-       ("r-lattice" ,r-lattice)
-       ("r-rcolorbrewer" ,r-rcolorbrewer)))
-    (home-page "https://bioconductor.org/packages/geneplotter")
-    (synopsis "Graphics functions for genomic data")
-    (description
-     "This package provides functions for plotting genomic data.")
-    (license license:artistic2.0)))
-
 (define-public r-genefilter
   (package
     (name "r-genefilter")
@@ -6379,14 +6416,14 @@ distribution.")
 (define-public r-dexseq
   (package
     (name "r-dexseq")
-    (version "1.28.1")
+    (version "1.28.2")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "DEXSeq" version))
        (sha256
         (base32
-         "0g5w9bn2nb3m670hkcsnhfvvkza2318z9irlhhwhb3n8rdzlsdym"))))
+         "134znafy7hn38rp4nia4pglz56fz6nbkxrf7z2k1sajfsgxa1hs6"))))
     (properties `((upstream-name . "DEXSeq")))
     (build-system r-build-system)
     (propagated-inputs
@@ -6674,38 +6711,6 @@ annotation infrastructure.")
      "This package provides a pipeline for the analysis of GRO-seq data.")
     (license license:gpl3+)))
 
-(define-public r-txdb-hsapiens-ucsc-hg19-knowngene
-  (package
-    (name "r-txdb-hsapiens-ucsc-hg19-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.Hsapiens.UCSC.hg19.knownGene_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "1sajhcqqwazgz2lqbik7rd935i7kpnh08zxbp2ra10j72yqy4g86"))))
-    (properties
-     `((upstream-name . "TxDb.Hsapiens.UCSC.hg19.knownGene")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-genomicfeatures" ,r-genomicfeatures)))
-    (home-page
-     "https://bioconductor.org/packages/TxDb.Hsapiens.UCSC.hg19.knownGene/")
-    (synopsis "Annotation package for human genome in TxDb format")
-    (description
-     "This package provides an annotation database of Homo sapiens genome
-data.  It is derived from the UCSC hg19 genome and based on the \"knownGene\"
-track.  The database is exposed as a @code{TxDb} object.")
-    (license license:artistic2.0)))
-
 (define-public r-sparql
   (package
   (name "r-sparql")
@@ -7127,28 +7132,6 @@ checks on R packages that are to be submitted to the Bioconductor repository.")
 that accept short and long options.")
     (license license:gpl2+)))
 
-(define-public r-dnacopy
-  (package
-    (name "r-dnacopy")
-    (version "1.56.0")
-    (source (origin
-              (method url-fetch)
-              (uri (bioconductor-uri "DNAcopy" version))
-              (sha256
-               (base32
-                "04cqdqxhva66xwh1s2vffi56b9fcrqd4slcrvqasj5lp2rkjli82"))))
-    (properties
-     `((upstream-name . "DNAcopy")))
-    (build-system r-build-system)
-    (inputs
-     `(("gfortran" ,gfortran)))
-    (home-page "https://bioconductor.org/packages/DNAcopy")
-    (synopsis "Implementation of a circular binary segmentation algorithm")
-    (description "This package implements the circular binary segmentation (CBS)
-algorithm to segment DNA copy number data and identify genomic regions with
-abnormal copy number.")
-    (license license:gpl2+)))
-
 (define-public r-s4vectors
   (package
     (name "r-s4vectors")
@@ -7256,13 +7239,13 @@ ID and species.  It is used by functions in the GenomeInfoDb package.")
 (define-public r-genomeinfodb
   (package
     (name "r-genomeinfodb")
-    (version "1.18.1")
+    (version "1.18.2")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "GenomeInfoDb" version))
               (sha256
                (base32
-                "049pyzr8iszv3g7wdqf3pz7vg7bzd450c20ln6fgw4g5xnkkr10s"))))
+                "07bm35jcczpyxap0b3gky4b28z38z423sngzsm19d9krjxr76b5p"))))
     (properties
      `((upstream-name . "GenomeInfoDb")))
     (build-system r-build-system)
@@ -7312,13 +7295,13 @@ CAGE.")
 (define-public r-variantannotation
   (package
     (name "r-variantannotation")
-    (version "1.28.10")
+    (version "1.28.11")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "VariantAnnotation" version))
               (sha256
                (base32
-                "0kxf583cgkdz1shi85r0mpnfxmzi7s5f6srd1czbdl2iibvrm8jn"))))
+                "19bxi5b9fzqdjadb8bfm8xsgi6nvrwbgn1xcpk59bnmv9vzjkwrh"))))
     (properties
      `((upstream-name . "VariantAnnotation")))
     (inputs
@@ -7516,13 +7499,13 @@ powerful online queries from gene annotation to database mining.")
 (define-public r-biocparallel
   (package
     (name "r-biocparallel")
-    (version "1.16.5")
+    (version "1.16.6")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "BiocParallel" version))
               (sha256
                (base32
-                "1164dk0fajb2vrkfpcjs11055qf1cs4vvbnq0aqdaaf2p4lyx41l"))))
+                "1iv2xzm6lz371z0llhcxl8hmc5jfw0hjwnf1qc8d7jk9djgcaks2"))))
     (properties
      `((upstream-name . "BiocParallel")))
     (build-system r-build-system)
@@ -7567,13 +7550,13 @@ biological sequences or sets of sequences.")
 (define-public r-rsamtools
   (package
     (name "r-rsamtools")
-    (version "1.34.0")
+    (version "1.34.1")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "Rsamtools" version))
               (sha256
                (base32
-                "01v4bjhj2i126pwyk0v9lvmfp2ih495xsq903k3xa2z24bjxphbi"))))
+                "02paq7klabdkaf1b8pmmbpmyqsj3yncnfsz62rgka6r4dpsilwk9"))))
     (properties
      `((upstream-name . "Rsamtools")))
     (build-system r-build-system)
@@ -7706,13 +7689,13 @@ alignments.")
 (define-public r-rtracklayer
   (package
     (name "r-rtracklayer")
-    (version "1.42.1")
+    (version "1.42.2")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "rtracklayer" version))
               (sha256
                (base32
-                "1ycmcxvgvszvjv75hlmg0i6pq8i7r8720vgmfayb905s9l6j82x6"))))
+                "1c76g6h9lx2nm7dvb2zp9dmrpk3vanx3zaz6q9clggpj7yj5lmjd"))))
     (build-system r-build-system)
     (arguments
      `(#:phases
@@ -7753,13 +7736,13 @@ as well as query and modify the browser state, such as the current viewport.")
 (define-public r-genomicfeatures
   (package
     (name "r-genomicfeatures")
-    (version "1.34.2")
+    (version "1.34.4")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "GenomicFeatures" version))
               (sha256
                (base32
-                "0qs94b0ywrjyc9m1jykrbch3lb07576m508dikvx18vwn304mban"))))
+                "09gc1vbqszrr3ixv4hsfan2l18fcf3gg58783mrfwjv6ci9c4w0d"))))
     (properties
      `((upstream-name . "GenomicFeatures")))
     (build-system r-build-system)
@@ -7878,37 +7861,6 @@ dependencies between GO terms can be implemented and applied.")
 genome data packages and support for efficient SNP representation.")
     (license license:artistic2.0)))
 
-(define-public r-bsgenome-hsapiens-1000genomes-hs37d5
-  (package
-    (name "r-bsgenome-hsapiens-1000genomes-hs37d5")
-    (version "0.99.1")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "BSgenome.Hsapiens.1000genomes.hs37d5_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "1cg0g5fqmsvwyw2p9hp2yy4ilk21jkbbrnpgqvb5c36ihjwvc7sr"))))
-    (properties
-     `((upstream-name . "BSgenome.Hsapiens.1000genomes.hs37d5")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)))
-    (home-page
-     "https://www.bioconductor.org/packages/BSgenome.Hsapiens.1000genomes.hs37d5/")
-    (synopsis "Full genome sequences for Homo sapiens")
-    (description
-     "This package provides full genome sequences for Homo sapiens from
-1000genomes phase2 reference genome sequence (hs37d5), based on NCBI GRCh37.")
-    (license license:artistic2.0)))
-
 (define-public r-impute
   (package
     (name "r-impute")
@@ -8030,110 +7982,6 @@ genomation package.  Included are Chip Seq, Methylation and Cage data,
 downloaded from Encode.")
     (license license:gpl3+)))
 
-(define-public r-org-hs-eg-db
-  (package
-    (name "r-org-hs-eg-db")
-    (version "3.7.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "org.Hs.eg.db_" version ".tar.gz"))
-              (sha256
-               (base32
-                "1qxz9l80yg3qdqszs6dsscp7lrpfi1bgd0pxh9j7q34vprzwhdim"))))
-    (properties
-     `((upstream-name . "org.Hs.eg.db")))
-    (build-system r-build-system)
-    (propagated-inputs
-     `(("r-annotationdbi" ,r-annotationdbi)))
-    (home-page "https://www.bioconductor.org/packages/org.Hs.eg.db/")
-    (synopsis "Genome wide annotation for Human")
-    (description
-     "This package contains genome-wide annotations for Human, primarily based
-on mapping using Entrez Gene identifiers.")
-    (license license:artistic2.0)))
-
-(define-public r-org-ce-eg-db
-  (package
-    (name "r-org-ce-eg-db")
-    (version "3.7.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "org.Ce.eg.db_" version ".tar.gz"))
-              (sha256
-               (base32
-                "1w5br1ss4ha8wv4v2saj7cmbjc2jw0dyj2f2y269l078z31wcnaz"))))
-    (properties
-     `((upstream-name . "org.Ce.eg.db")))
-    (build-system r-build-system)
-    (propagated-inputs
-     `(("r-annotationdbi" ,r-annotationdbi)))
-    (home-page "https://www.bioconductor.org/packages/org.Ce.eg.db/")
-    (synopsis "Genome wide annotation for Worm")
-    (description
-     "This package provides mappings from Entrez gene identifiers to various
-annotations for the genome of the model worm Caenorhabditis elegans.")
-    (license license:artistic2.0)))
-
-(define-public r-org-dm-eg-db
-  (package
-    (name "r-org-dm-eg-db")
-    (version "3.7.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "org.Dm.eg.db_" version ".tar.gz"))
-              (sha256
-               (base32
-                "1pqjrzlyg72bjpy8zsxvaglc7jsv176bnyi87xdajmkvsgxpm7b3"))))
-    (properties
-     `((upstream-name . "org.Dm.eg.db")))
-    (build-system r-build-system)
-    (propagated-inputs
-     `(("r-annotationdbi" ,r-annotationdbi)))
-    (home-page "https://www.bioconductor.org/packages/org.Dm.eg.db/")
-    (synopsis "Genome wide annotation for Fly")
-    (description
-     "This package provides mappings from Entrez gene identifiers to various
-annotations for the genome of the model fruit fly Drosophila melanogaster.")
-    (license license:artistic2.0)))
-
-(define-public r-org-mm-eg-db
-  (package
-    (name "r-org-mm-eg-db")
-    (version "3.7.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "org.Mm.eg.db_" version ".tar.gz"))
-              (sha256
-               (base32
-                "1i3nvrd3wjigf1rmgxq1p5xxc3p8v02h5gwi62s30rkrsyjjfjxx"))))
-    (properties
-     `((upstream-name . "org.Mm.eg.db")))
-    (build-system r-build-system)
-    (propagated-inputs
-     `(("r-annotationdbi" ,r-annotationdbi)))
-    (home-page "https://www.bioconductor.org/packages/org.Mm.eg.db/")
-    (synopsis "Genome wide annotation for Mouse")
-    (description
-     "This package provides mappings from Entrez gene identifiers to various
-annotations for the genome of the model mouse Mus musculus.")
-    (license license:artistic2.0)))
-
 (define-public r-seqlogo
   (package
     (name "r-seqlogo")
@@ -8155,231 +8003,6 @@ plots the corresponding sequence logo as introduced by Schneider and
 Stephens (1990).")
     (license license:lgpl2.0+)))
 
-(define-public r-bsgenome-hsapiens-ucsc-hg19
-  (package
-    (name "r-bsgenome-hsapiens-ucsc-hg19")
-    (version "1.4.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "BSgenome.Hsapiens.UCSC.hg19_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "1y0nqpk8cw5a34sd9hmin3z4v7iqm6hf6l22cl81vlbxqbjibxc8"))))
-    (properties
-     `((upstream-name . "BSgenome.Hsapiens.UCSC.hg19")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)))
-    (home-page
-     "https://www.bioconductor.org/packages/BSgenome.Hsapiens.UCSC.hg19/")
-    (synopsis "Full genome sequences for Homo sapiens")
-    (description
-     "This package provides full genome sequences for Homo sapiens as provided
-by UCSC (hg19, February 2009) and stored in Biostrings objects.")
-    (license license:artistic2.0)))
-
-(define-public r-bsgenome-mmusculus-ucsc-mm9
-  (package
-    (name "r-bsgenome-mmusculus-ucsc-mm9")
-    (version "1.4.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "BSgenome.Mmusculus.UCSC.mm9_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "1birqw30g2azimxpnjfzmkphan7x131yy8b9h85lfz5fjdg7841i"))))
-    (properties
-     `((upstream-name . "BSgenome.Mmusculus.UCSC.mm9")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)))
-    (home-page
-     "https://www.bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm9/")
-    (synopsis "Full genome sequences for Mouse")
-    (description
-     "This package provides full genome sequences for Mus musculus (Mouse) as
-provided by UCSC (mm9, July 2007) and stored in Biostrings objects.")
-    (license license:artistic2.0)))
-
-(define-public r-bsgenome-mmusculus-ucsc-mm10
-  (package
-    (name "r-bsgenome-mmusculus-ucsc-mm10")
-    (version "1.4.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "BSgenome.Mmusculus.UCSC.mm10_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "12s0nm2na9brjad4rn9l7d3db2aj8qa1xvz0y1k7gk08wayb6bkf"))))
-    (properties
-     `((upstream-name . "BSgenome.Mmusculus.UCSC.mm10")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)))
-    (home-page
-     "https://www.bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm10/")
-    (synopsis "Full genome sequences for Mouse")
-    (description
-     "This package provides full genome sequences for Mus
-musculus (Mouse) as provided by UCSC (mm10, December 2011) and stored
-in Biostrings objects.")
-    (license license:artistic2.0)))
-
-(define-public r-txdb-mmusculus-ucsc-mm10-knowngene
-  (package
-    (name "r-txdb-mmusculus-ucsc-mm10-knowngene")
-    (version "3.4.4")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "TxDb.Mmusculus.UCSC.mm10.knownGene_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "01lgxc1fx5nhlpbwjd5zqghkkbmh6axd98ikx4b0spv0jdg6gf39"))))
-    (properties
-     `((upstream-name . "TxDb.Mmusculus.UCSC.mm10.knownGene")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)
-       ("r-genomicfeatures" ,r-genomicfeatures)
-       ("r-annotationdbi" ,r-annotationdbi)))
-    (home-page
-     "https://bioconductor.org/packages/TxDb.Mmusculus.UCSC.mm10.knownGene/")
-    (synopsis "Annotation package for TxDb knownGene object(s) for Mouse")
-    (description
-     "This package loads a TxDb object, which is an R interface to
-prefabricated databases contained in this package.  This package provides
-the TxDb object of Mouse data as provided by UCSC (mm10, December 2011)
-based on the knownGene track.")
-    (license license:artistic2.0)))
-
-(define-public r-bsgenome-celegans-ucsc-ce6
-  (package
-    (name "r-bsgenome-celegans-ucsc-ce6")
-    (version "1.4.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "BSgenome.Celegans.UCSC.ce6_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "0mqzb353xv2c3m3vkb315dkmnxkgczp7ndnknyhpgjlybyf715v9"))))
-    (properties
-     `((upstream-name . "BSgenome.Celegans.UCSC.ce6")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)))
-    (home-page
-     "https://www.bioconductor.org/packages/BSgenome.Celegans.UCSC.ce6/")
-    (synopsis "Full genome sequences for Worm")
-    (description
-     "This package provides full genome sequences for Caenorhabditis
-elegans (Worm) as provided by UCSC (ce6, May 2008) and stored in Biostrings
-objects.")
-    (license license:artistic2.0)))
-
-(define-public r-bsgenome-celegans-ucsc-ce10
-  (package
-    (name "r-bsgenome-celegans-ucsc-ce10")
-    (version "1.4.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "BSgenome.Celegans.UCSC.ce10_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "1zaym97jk4npxk14ifvwz2rvhm4zx9xgs33r9vvx9rlynp0gydrk"))))
-    (properties
-     `((upstream-name . "BSgenome.Celegans.UCSC.ce10")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)))
-    (home-page
-     "https://www.bioconductor.org/packages/BSgenome.Celegans.UCSC.ce10/")
-    (synopsis "Full genome sequences for Worm")
-    (description
-     "This package provides full genome sequences for Caenorhabditis
-elegans (Worm) as provided by UCSC (ce10, Oct 2010) and stored in Biostrings
-objects.")
-    (license license:artistic2.0)))
-
-(define-public r-bsgenome-dmelanogaster-ucsc-dm3
-  (package
-    (name "r-bsgenome-dmelanogaster-ucsc-dm3")
-    (version "1.4.0")
-    (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://www.bioconductor.org/packages/"
-                                  "release/data/annotation/src/contrib/"
-                                  "BSgenome.Dmelanogaster.UCSC.dm3_"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "19bm3lkhhkag3gnwp419211fh0cnr0x6fa0r1lr0ycwrikxdxsv8"))))
-    (properties
-     `((upstream-name . "BSgenome.Dmelanogaster.UCSC.dm3")))
-    (build-system r-build-system)
-    ;; As this package provides little more than a very large data file it
-    ;; doesn't make sense to build substitutes.
-    (arguments `(#:substitutable? #f))
-    (propagated-inputs
-     `(("r-bsgenome" ,r-bsgenome)))
-    (home-page
-     "https://www.bioconductor.org/packages/BSgenome.Dmelanogaster.UCSC.dm3/")
-    (synopsis "Full genome sequences for Fly")
-    (description
-     "This package provides full genome sequences for Drosophila
-melanogaster (Fly) as provided by UCSC (dm3, April 2006) and stored in
-Biostrings objects.")
-    (license license:artistic2.0)))
-
 (define-public r-motifrg
   (package
     (name "r-motifrg")
@@ -8477,14 +8100,14 @@ secondary structure and comparative analysis in R.")
 (define-public r-rhtslib
   (package
     (name "r-rhtslib")
-    (version "1.14.0")
+    (version "1.14.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "Rhtslib" version))
        (sha256
         (base32
-         "1h4q54f8za3aaxgy186zf2165sar5c3cgxkk44lq5hzx5pxkl5wn"))))
+         "13fv78sk5g0gqfl3ks3rps3zc1k66a4lzxvgn36r7ix43yxk7hnr"))))
     (properties `((upstream-name . "Rhtslib")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9425,14 +9048,14 @@ proteomics packages.")
 (define-public r-mzr
   (package
     (name "r-mzr")
-    (version "2.16.1")
+    (version "2.16.2")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "mzR" version))
        (sha256
         (base32
-         "0mlwg646k49klxrznckzfv54a9mz6irj42fqpaaa0xjm6cw2lwaa"))
+         "19fn58zl59kd0hsjjc6y975y9187nfls0028a4k3v0s9wfg5b3vn"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -9453,7 +9076,8 @@ proteomics packages.")
 -lboost_iostreams -lboost_thread -lboost_filesystem -lboost_chrono\n")))
              #t)))))
     (inputs
-     `(("boost" ,boost) ; use this instead of the bundled boost sources
+     `(;; XXX Boost 1.69 will not work here.
+       ("boost" ,boost-for-mysql) ; use this instead of the bundled boost sources
        ("zlib" ,zlib)))
     (propagated-inputs
      `(("r-biobase" ,r-biobase)
@@ -9889,14 +9513,14 @@ Shiny-based display methods for Bioconductor objects.")
 (define-public r-annotationhub
   (package
     (name "r-annotationhub")
-    (version "2.14.2")
+    (version "2.14.4")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "AnnotationHub" version))
        (sha256
         (base32
-         "17fgrvcnbii9siv5rq5j09bxhqffx47f6jf10418qvr7hh61ic1g"))))
+         "18v2mk395svq3c19wzi6bjwjfnmrvjqkzmj7cmaji7rx4xdgz6ck"))))
     (properties `((upstream-name . "AnnotationHub")))
     (build-system r-build-system)
     (propagated-inputs
@@ -10099,14 +9723,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.3")
+    (version "2.6.7")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "ensembldb" version))
        (sha256
         (base32
-         "0kzdsfk6mdwlp57sw4j2cf7lx5nc67v5j0xr3iag9kzmgikaq1lb"))))
+         "1wqq0m1fgvgkzq5zr2s9cj2s7qkg9lx3dwwsqixzs5fn52p4dn7f"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-annotationdbi" ,r-annotationdbi)
@@ -10511,14 +10135,14 @@ family of feature/genome hypotheses.")
 (define-public r-gviz
   (package
     (name "r-gviz")
-    (version "1.26.4")
+    (version "1.26.5")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "Gviz" version))
        (sha256
         (base32
-         "0jvcivgw0ahv2rjadxmrww76xambhf7silczmh38nn4yn4qw6w9y"))))
+         "1dpkcaar7qgzg3vgafvkplprhwmhzpb7ph009kr6ajm36hx4z81c"))))
     (properties `((upstream-name . "Gviz")))
     (build-system r-build-system)
     (propagated-inputs
@@ -11613,7 +11237,7 @@ Browser.")
 (define-public bismark
   (package
     (name "bismark")
-    (version "0.19.1")
+    (version "0.20.1")
     (source
      (origin
        (method git-fetch)
@@ -11623,18 +11247,25 @@ Browser.")
        (file-name (string-append name "-" version "-checkout"))
        (sha256
         (base32
-         "0yb5l36slwg02fp4b1jdlplgljcsxgqfzvzihzdnphd87dghcc84"))
-       (snippet
-        '(begin
-           ;; highcharts.js is non-free software.  The code is available under
-           ;; CC-BY-NC or proprietary licenses only.
-           (delete-file "bismark_sitrep/highcharts.js")
-           #t))))
+         "0xchm3rgilj6vfjnyzfzzymfd7djr64sbrmrvs3njbwi66jqbzw9"))))
     (build-system perl-build-system)
     (arguments
      `(#:tests? #f                      ; there are no tests
+       #:modules ((guix build utils)
+                  (ice-9 popen)
+                  (srfi srfi-26)
+                  (guix build perl-build-system))
        #:phases
        (modify-phases %standard-phases
+         ;; The bundled plotly.js is minified.
+         (add-after 'unpack 'replace-plotly.js
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((file (assoc-ref inputs "plotly.js"))
+                    (installed "plotly/plotly.js"))
+               (let ((minified (open-pipe* OPEN_READ "uglify-js" file)))
+                 (call-with-output-file installed
+                   (cut dump-port minified <>))))
+             #t))
          (delete 'configure)
          (delete 'build)
          (replace 'install
@@ -11653,10 +11284,11 @@ Browser.")
                                "deduplicate_bismark"
                                "filter_non_conversion"
                                "bam2nuc"
-                               "bismark2summary")))
+                               "bismark2summary"
+                               "NOMe_filtering")))
                (substitute* "bismark2report"
-                 (("\\$RealBin/bismark_sitrep")
-                  (string-append share "/bismark_sitrep")))
+                 (("\\$RealBin/plotly")
+                  (string-append share "/plotly")))
                (mkdir-p share)
                (mkdir-p docdir)
                (mkdir-p bin)
@@ -11665,8 +11297,8 @@ Browser.")
                (for-each (lambda (file) (install-file file docdir))
                          docs)
                (copy-recursively "Docs/Images" (string-append docdir "/Images"))
-               (copy-recursively "bismark_sitrep"
-                                 (string-append share "/bismark_sitrep"))
+               (copy-recursively "plotly"
+                                 (string-append share "/plotly"))
 
                ;; Fix references to gunzip
                (substitute* (map (lambda (file)
@@ -11677,7 +11309,18 @@ Browser.")
                                  "/bin/gunzip -c")))
                #t))))))
     (inputs
-     `(("gzip" ,gzip)))
+     `(("gzip" ,gzip)
+       ("perl-carp" ,perl-carp)
+       ("perl-getopt-long" ,perl-getopt-long)))
+    (native-inputs
+     `(("plotly.js"
+        ,(origin
+           (method url-fetch)
+           (uri (string-append "https://raw.githubusercontent.com/plotly/plotly.js/"
+                               "v1.39.4/dist/plotly.js"))
+           (sha256
+            (base32 "138mwsr4nf5qif4mrxx286mpnagxd1xwl6k8aidrjgknaqg88zyr"))))
+       ("uglify-js" ,uglify-js)))
     (home-page "http://www.bioinformatics.babraham.ac.uk/projects/bismark/")
     (synopsis "Map bisulfite treated sequence reads and analyze methylation")
     (description "Bismark is a program to map bisulfite treated sequencing
@@ -13135,6 +12778,38 @@ descriptive settings file.  The result is a set of comprehensive, interactive
 HTML reports with interesting findings about your samples.")
     (license license:gpl3+)))
 
+(define-public genrich
+  (package
+    (name "genrich")
+    (version "0.5")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/jsh58/Genrich.git")
+                    (commit (string-append "v" version))))
+              (sha256
+               (base32
+                "0x0q6z0208n3cxzqjla4rgjqpyqgwpmz27852lcvzkzaigymq4zp"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; there are none
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (install-file "Genrich" (string-append (assoc-ref outputs "out") "/bin"))
+             #t)))))
+    (inputs
+     `(("zlib" ,zlib)))
+    (home-page "https://github.com/jsh58/Genrich")
+    (synopsis "Detecting sites of genomic enrichment")
+    (description "Genrich is a peak-caller for genomic enrichment
+assays (e.g. ChIP-seq, ATAC-seq).  It analyzes alignment files generated
+following the assay and produces a file detailing peaks of significant
+enrichment.")
+    (license license:expat)))
+
 (define-public mantis
   (let ((commit "4ffd171632c2cb0056a86d709dfd2bf21bc69b84")
         (revision "1"))
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index b0617f452a..15953ab75e 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -391,7 +391,6 @@ tree binary files.  These are board description files used by Linux and BSD.")
        ("dtc" ,dtc)
        ("flex" ,flex)
        ("lz4" ,lz4)
-       ("openssl" ,openssl)
        ("python-2" ,python-2)
        ("python2-coverage" ,python2-coverage)
        ("python2-pytest" ,python2-pytest)
@@ -440,9 +439,14 @@ also initializes the boards (RAM etc).")
               (("def test_ctrl_c")
                "@pytest.mark.skip(reason='Guix has problems with SIGINT')
 def test_ctrl_c"))
-             ;; This test requires a sound system, which is un-used in u-boot-tools.
              (for-each (lambda (file)
                               (substitute* file
+                                  ;; Disable signatures, due to GPL/Openssl
+                                  ;; license incompatibilities.  See
+                                  ;; https://bugs.gnu.org/34717 for details.
+                                  (("CONFIG_FIT_SIGNATURE=y") "CONFIG_FIT_SIGNATURE=n")
+                                  ;; This test requires a sound system, which is un-used
+                                  ;; in u-boot-tools.
                                   (("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
                               (find-files "configs" "sandbox_.*defconfig$"))
              #t))
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 093e36f4a4..09cca5d52e 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
 ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
@@ -371,14 +371,14 @@ stack traces.")
 (define-public lcov
   (package
     (name "lcov")
-    (version "1.13")
+    (version "1.14")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/ltp/Coverage%20Analysis"
                                   "/LCOV-" version "/lcov-" version ".tar.gz"))
               (sha256
                (base32
-                "08wabnb0gcjqk0qc65a6cgbbmz6b8lvam3p7byh0dk42hj3jr5s4"))))
+                "06h7ixyznf6vz1qvksjgy5f3q2nw9akf6zx59npf0h3l32cmd68l"))))
     (build-system gnu-build-system)
     (arguments
      '(#:make-flags
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index f619f62699..fff765f69d 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -703,13 +703,13 @@ sfArk file format to the uncompressed sf2 format.")
   (package
     (name "libmspack")
     (home-page "https://cabextract.org.uk/libmspack/")
-    (version "0.9.1")
+    (version "0.10.1")
     (source
      (origin
       (method url-fetch)
       (uri (string-append home-page name "-" version "alpha.tar.gz"))
       (sha256
-       (base32 "0h1f5w8rjnq7dcqpqm1mpx5m8q80691kid6f7npqlqwqqzckd8v2"))))
+       (base32 "13janaqsvm7aqc4agjgd4819pbgqv50j88bh5kci1z70wvg65j5s"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags '("--disable-static")))
@@ -966,13 +966,13 @@ smaller than those produced by @code{Xdelta}.")
  (package
    (name "cabextract")
    (home-page "https://cabextract.org.uk/")
-   (version "1.9")
+   (version "1.9.1")
    (source (origin
               (method url-fetch)
-              (uri (string-append home-page name "-" version ".tar.gz"))
+              (uri (string-append home-page "cabextract-" version ".tar.gz"))
               (sha256
                (base32
-                "1hf4zhjxfdgq9x172r5zfdnafma9q0zf7372syn8hcn7hcypkg0v"))
+                "19qwhl2r8ip95q4vxzxg2kp4p125hjmc9762sns1dwwf7ikm7hmg"))
               (modules '((guix build utils)))
               (snippet
                '(begin
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index cc23c53f4c..5bd5c60d49 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -51,6 +51,7 @@
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages haskell)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages javascript)
   #:use-module (gnu packages lisp)
   #:use-module (gnu packages machine-learning)
@@ -84,17 +85,39 @@
 the system clipboards.")
     (license license:gpl3)))
 
+(define-public r-ellipsis
+  (package
+    (name "r-ellipsis")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "ellipsis" version))
+       (sha256
+        (base32
+         "0pw94qpg81xmsdsagpqxddv7m2cmdszmyyq99dk3caqqj01z7wg6"))))
+    (build-system r-build-system)
+    (home-page "https://github.com/hadley/ellipsis")
+    (synopsis "Tools for working with additional arguments")
+    (description
+     "In S3 generics, it's useful to take @code{...} so that methods can have
+additional arguments.  But this flexibility comes at a cost: misspelled
+arguments will be silently ignored.  The @code{ellipsis} package is an
+experiment that allows a generic to warn if any arguments passed in @code{...}
+are not used.")
+    (license license:gpl3)))
+
 (define-public r-sys
   (package
     (name "r-sys")
-    (version "2.1")
+    (version "3.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "sys" version))
        (sha256
         (base32
-         "10ml2492bdllh6cz2zl192ip0fdgjkkgayggd3ghswsj5gjv5hrh"))))
+         "1g0q1f56qmp3x5gja19qrmgk3j4d89yp16z1ziv1jn5p4dlmfpxh"))))
     (build-system r-build-system)
     (home-page "https://github.com/jeroen/sys")
     (synopsis "Powerful and reliable tools for running system commands in R")
@@ -133,14 +156,14 @@ read a protected key.")
 (define-public r-vegan
   (package
     (name "r-vegan")
-    (version "2.5-3")
+    (version "2.5-4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "vegan" version))
        (sha256
         (base32
-         "023xznh0iy0496icpchadmp7a3rk3nj9s48fvwlvp3dssw58yp3c"))))
+         "1q4khii0xbjwmkida0b35q8rmwhg325qizjwz6slkjhz250a85ji"))))
     (build-system r-build-system)
     (native-inputs
      `(("gfortran" ,gfortran)))
@@ -314,14 +337,14 @@ that.")
 (define-public r-readxl
   (package
     (name "r-readxl")
-    (version "1.2.0")
+    (version "1.3.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "readxl" version))
        (sha256
         (base32
-         "1mwm389skl4ahcwsmhvx31pjkrn6y9igpnhsczwg6yza886q7j19"))))
+         "1p7snd8lznyinp0nyg6bsqwn9alh3pnnj77bfg865ingdl1d2yc3"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-cellranger" ,r-cellranger)
@@ -422,13 +445,13 @@ in systems and applications.")
 (define-public r-servr
   (package
     (name "r-servr")
-    (version "0.11")
+    (version "0.13")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "servr" version))
               (sha256
                (base32
-                "0yj3p1risf269n25dd56lqv82dsxv6a0aq4bcc1ddn9wv7h2xdfi"))))
+                "1n5haqkshrxcx557f1k7nrisvq3wak8v370s2r6yv691b8hvbscs"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-httpuv" ,r-httpuv)
@@ -616,7 +639,7 @@ and vice-versa.")
 (define-public r-shiny
   (package
     (name "r-shiny")
-    (version "1.1.0")
+    (version "1.2.0")
     (source
      (origin
        (method git-fetch)
@@ -626,7 +649,7 @@ and vice-versa.")
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "041q2gzvzs13syfhbirmkik96asdji8dxnnbs63j7v1ks97hrvvz"))))
+         "1kl3dh68h4cnrm3rqn9pddk5n6bsmr5x0626bkfv0qqi0q92zin4"))))
     (build-system r-build-system)
     (arguments
      `(#:modules ((guix build r-build-system)
@@ -677,8 +700,6 @@ and vice-versa.")
                               (minify source #:target target)))
                            '(("jqueryui/jquery-ui.js" .
                               "jqueryui/jquery-ui.min.js")
-                             ("showdown/src/showdown.js" .
-                              "showdown/compressed/showdown.js")
                              ("datepicker/js/bootstrap-datepicker.js" .
                               "datepicker/js/bootstrap-datepicker.min.js")
                              ("ionrangeslider/js/ion.rangeSlider.js" .
@@ -974,28 +995,33 @@ applications.  That is, compute distances and related measures for angular
 (define-public r-ggmap
   (package
     (name "r-ggmap")
-    (version "2.6.2")
+    (version "3.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ggmap" version))
        (sha256
         (base32
-         "144x6ycb2c3fvy5c68ww53m6gzi6kfvas7cpbn071z08n4xgb72f"))))
+         "13dmzl6z62pzjiffilarkji46vy0sacxa8a7mhrhc3biq3ylzhln"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-digest" ,r-digest)
-       ("r-geosphere" ,r-geosphere)
+     `(("r-bitops" ,r-bitops)
+       ("r-digest" ,r-digest)
+       ("r-dplyr" ,r-dplyr)
        ("r-ggplot2" ,r-ggplot2)
+       ("r-glue" ,r-glue)
+       ("r-httr" ,r-httr)
        ("r-jpeg" ,r-jpeg)
-       ("r-mapproj" ,r-mapproj)
+       ("r-magrittr" ,r-magrittr)
        ("r-plyr" ,r-plyr)
        ("r-png" ,r-png)
-       ("r-proto" ,r-proto)
-       ("r-reshape2" ,r-reshape2)
+       ("r-purrr" ,r-purrr)
        ("r-rgooglemaps" ,r-rgooglemaps)
        ("r-rjson" ,r-rjson)
-       ("r-scales" ,r-scales)))
+       ("r-scales" ,r-scales)
+       ("r-stringr" ,r-stringr)
+       ("r-tibble" ,r-tibble)
+       ("r-tidyr" ,r-tidyr)))
     (home-page "https://github.com/dkahle/ggmap")
     (synopsis "Spatial visualization with ggplot2")
     (description "This package provides a collection of functions to visualize
@@ -1007,14 +1033,14 @@ including functions for geolocation and routing.")
 (define-public r-haven
   (package
     (name "r-haven")
-    (version "2.0.0")
+    (version "2.1.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "haven" version))
        (sha256
         (base32
-         "12qh8nba1dxlsmcihrx126wmjyj8n511k17vqj10lfgvpwq2sydy"))))
+         "0x5fwc4q2gdxwwp5sxdd6q17jhpisd769y9kv0xgnjcm0cdwz8f0"))))
     (build-system r-build-system)
     (inputs
      `(("zlib" ,zlib)))
@@ -1753,14 +1779,14 @@ plot networks.")
 (define-public r-proxy
   (package
     (name "r-proxy")
-    (version "0.4-22")
+    (version "0.4-23")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "proxy" version))
        (sha256
         (base32
-         "0l0ff8irmmvic941is290hd5vszyhaj5nfwna4v3w9c1zk5nr1ma"))))
+         "17b6qfllqrhzrxqgx7dccffgybnkcria5a68ap5ly3plg04ypm4x"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/proxy")
     (synopsis "Distance and similarity measures")
@@ -2004,14 +2030,14 @@ classes in the @code{stats4} package.")
 (define-public r-emdbook
   (package
     (name "r-emdbook")
-    (version "1.3.10")
+    (version "1.3.11")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "emdbook" version))
        (sha256
         (base32
-         "0880cx6rqm9vgd2zxnd2k0igfl80gy7ak15w36clwlzavab59hmv"))))
+         "0a515jdzvg87npvrh7md7zp0v5nlz7c2jr7pba5dql6slb0d8j7q"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-bbmle" ,r-bbmle)
@@ -2392,18 +2418,16 @@ dimensioned arrays.")
 (define-public r-rmysql
   (package
     (name "r-rmysql")
-    (version "0.10.16")
+    (version "0.10.17")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "RMySQL" version))
        (sha256
         (base32
-         "1gh4b730g2v78jg5iln8fkz808ri2vhnhnw43wzkkjpy53jh48sp"))))
+         "1xamf99ih44dvaxg5x4ivj0hkqssmabgqd7gh8b8q1srw7yg8kbm"))))
     (properties `((upstream-name . "RMySQL")))
     (build-system r-build-system)
-    (native-inputs
-     `(("pkg-config" ,pkg-config)))
     (inputs
      `(("mariadb" ,mariadb)
        ("zlib" ,zlib)))
@@ -2515,17 +2539,15 @@ multivariate and 5 functional classification problems are included.")
 (define-public r-gower
   (package
     (name "r-gower")
-    (version "0.1.2")
+    (version "0.2.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "gower" version))
        (sha256
         (base32
-         "1mbrj1lam3jfbby2j32shmmj5cn09zx3rkxbamq7q8sdg39b54gb"))))
+         "0x16k0nixgbayh3g4didacn0gmnl5fdfxa0l323phphmimyj49zl"))))
     (build-system r-build-system)
-    (native-inputs
-     `(("r-knitr" ,r-knitr)))
     (home-page "https://github.com/markvanderloo/gower")
     (synopsis "Gower's distance")
     (description
@@ -2863,14 +2885,14 @@ Laplace approximation and adaptive Gauss-Hermite quadrature.")
 (define-public r-jomo
   (package
     (name "r-jomo")
-    (version "2.6-6")
+    (version "2.6-7")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "jomo" version))
        (sha256
         (base32
-         "1048qb12cx7fs156jcqzwkfmsjadkgnrqd0krznyxpn873zr9lq2"))))
+         "0lyvi32aikkvwdj0y2hc13kmmi0cw1icg8z9lcw10l8326sxm0vf"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-lme4" ,r-lme4)
@@ -2936,14 +2958,14 @@ analysis of multiply imputed data sets.")
 (define-public r-mice
   (package
     (name "r-mice")
-    (version "3.3.0")
+    (version "3.4.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "mice" version))
        (sha256
         (base32
-         "1p0ipbqk5aqdi7iikw3qrjyvdi9sdhpnw1h5mwakwvv0yl0pzbyx"))))
+         "0rdamj1j9z3kxmi27pc79v6mhh8rgxaxz4xz70ybf8kqh2x66cgm"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-broom" ,r-broom)
@@ -3586,14 +3608,14 @@ iVAT).")
 (define-public r-xfun
   (package
     (name "r-xfun")
-    (version "0.4")
+    (version "0.5")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "xfun" version))
        (sha256
         (base32
-         "0991ywgc2dsraba91kkj37akhfzhzn02cnz7c88hhdis9kag3pwv"))))
+         "1wkrapc490r9l9z6mz623zn9ijq64mckc17xg2s7n3s9yaxj98lb"))))
     (build-system r-build-system)
     (home-page "https://github.com/yihui/xfun")
     (synopsis "Miscellaneous functions")
@@ -3694,14 +3716,14 @@ automatically.")
 (define-public r-metap
   (package
     (name "r-metap")
-    (version "1.0")
+    (version "1.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "metap" version))
        (sha256
         (base32
-         "18rzvqfzyk8fn54gjvy2qd21nk9w69j7ihww477ma3f3ab6i982h"))))
+         "10kv7z8pik5iy374h399vws0ldf41y2nczlwh8axqf9dcwl084i0"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-lattice" ,r-lattice)
@@ -3719,15 +3741,18 @@ published results; and a routine for graphical display.")
 (define-public r-network
   (package
     (name "r-network")
-    (version "1.13.0.1")
+    (version "1.14-377")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "network" version))
        (sha256
         (base32
-         "1bbkbqkqf1d7irfwh08c13c2pfypir1ssvlqrln83irqns1ikdv0"))))
+         "0iiy5n17kysrdfs20zr7qald4lwkvws0axi1qkr8f7vzv7w04g01"))))
     (build-system r-build-system)
+    (propagated-inputs
+     `(("r-magrittr" ,r-magrittr)
+       ("r-tibble" ,r-tibble)))
     (home-page "https://statnet.org/")
     (synopsis "Classes for relational data")
     (description
@@ -3852,14 +3877,14 @@ provides some missing S-PLUS functionality in R.")
 (define-public r-ifultools
   (package
     (name "r-ifultools")
-    (version "2.0-4")
+    (version "2.0-5")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ifultools" version))
        (sha256
         (base32
-         "0pv2msaa1rmj8csxdclzi2jwg9pfdvh87blj9j3xa3myisglq092"))))
+         "040kvbczcmmbaiaz0k0pdq9af541pjj6iwzh1a3w4szh9w6b5a3j"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-mass" ,r-mass)
@@ -4396,14 +4421,14 @@ environment within Shiny.")
 (define-public r-radiant-data
   (package
     (name "r-radiant-data")
-    (version "0.9.7")
+    (version "0.9.9")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "radiant.data" version))
        (sha256
         (base32
-         "1f98ahki0kyb27gl55a859zb0lsvk9gddd9f54y767xfs6h89cgk"))
+         "17mgm0sggh4f7ihqmj9m3996p3pqc7h2cwx6ll1ha3kg5mx0znyn"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -4439,7 +4464,7 @@ environment within Shiny.")
        ("r-shiny" ,r-shiny)
        ("r-shinyfiles" ,r-shinyfiles)
        ("r-shinyace" ,r-shinyace)
-       ("r-summarytools" ,r-summarytools)
+       ("r-stringi" ,r-stringi)
        ("r-tibble" ,r-tibble)
        ("r-tidyr" ,r-tidyr)
        ("r-writexl" ,r-writexl)))
@@ -4604,14 +4629,14 @@ specific S3-method.")
 (define-public r-vim
   (package
     (name "r-vim")
-    (version "4.7.0")
+    (version "4.8.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "VIM" version))
        (sha256
         (base32
-         "1vjcs5wvjv94ln01d94h9rs4j50d3ky4n26mm3prgh13raylrmnd"))))
+         "08x4a4yzgp8adgrv7a3666yma4b60n64mcsnvhzmwdy023f4ysrw"))))
     (properties `((upstream-name . "VIM")))
     (build-system r-build-system)
     (propagated-inputs
@@ -4622,6 +4647,7 @@ specific S3-method.")
        ("r-laeken" ,r-laeken)
        ("r-mass" ,r-mass)
        ("r-nnet" ,r-nnet)
+       ("r-ranger" ,r-ranger)
        ("r-rcpp" ,r-rcpp)
        ("r-robustbase" ,r-robustbase)
        ("r-sp" ,r-sp)
@@ -4642,14 +4668,14 @@ multivariate plot methods.")
 (define-public r-fnn
   (package
     (name "r-fnn")
-    (version "1.1.2.2")
+    (version "1.1.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "FNN" version))
        (sha256
         (base32
-         "09k3k0h9ikbwq6225l7gd0nhimbji722680cr66c8n7zpvxn06mm"))))
+         "0cllqlnynm5yaj4r64mqyyfc8phkb38rwssq8k8ikgfgr4jklxny"))))
     (properties `((upstream-name . "FNN")))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/FNN")
@@ -4760,14 +4786,14 @@ evaluated by the @dfn{Akaike Information Criterion} (AIC).")
 (define-public r-arules
   (package
     (name "r-arules")
-    (version "1.6-2")
+    (version "1.6-3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "arules" version))
        (sha256
         (base32
-         "0vnss6akk3564kbci3h5rq8ylpckz77cgmflly3gn6fki66f7g96"))))
+         "0dimrq1pz449z0mz9m87nhm5bpc0v789bcc3lghhh97wwi5zah9y"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-matrix" ,r-matrix)))
@@ -4855,14 +4881,14 @@ misclassification probabilities of different models.")
 (define-public r-zip
   (package
     (name "r-zip")
-    (version "1.0.0")
+    (version "2.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "zip" version))
        (sha256
         (base32
-         "0rgr9pcdhdq3k8n29h2ircp3ri1ibhrx81gja1y7331v15xyrabg"))))
+         "0a86x6a2cy0lkx98yljk9acb6q3ksz9y5acfaqnmbvnn77pibg86"))))
     (build-system r-build-system)
     (home-page "https://github.com/gaborcsardi/zip")
     (synopsis "Cross-platform Zip compression")
@@ -4934,14 +4960,14 @@ simple method for converting between file types.")
 (define-public r-maptools
   (package
     (name "r-maptools")
-    (version "0.9-4")
+    (version "0.9-5")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "maptools" version))
        (sha256
         (base32
-         "1753kgyc4kmbb5h6knz5wgvvvj8v77kzm8lz0kwz05m5k3spa24k"))))
+         "1pbvcn9xfx0hxq1ppbfg9xm5j04q4c15nj983yjmg7dlkzq135ax"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-foreign" ,r-foreign)
@@ -4962,14 +4988,14 @@ exchanging spatial objects with other R packages.")
 (define-public r-later
   (package
     (name "r-later")
-    (version "0.7.5")
+    (version "0.8.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "later" version))
        (sha256
         (base32
-         "0xhwn37makzm85zb6w5acc7svzibxcnz69rks0kxw22vapkxwz1i"))))
+         "08g503xjxrfxvrzj0cavsrz4m8ykbha64344j1w2r6v17js2hakb"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-bh" ,r-bh)
@@ -5146,14 +5172,14 @@ obtain a better initial configuration in non-metric MDS.")
 (define-public r-reticulate
   (package
     (name "r-reticulate")
-    (version "1.10")
+    (version "1.11.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "reticulate" version))
        (sha256
         (base32
-         "0bz3lxbisjwn6cv23090zivpy0bxcncr82g5qja13l37i8xnvqsq"))))
+         "1cyb92dvv9iibsk28i0gm5hm2xqbsn0y6d67id74c8rhai9y8i9v"))))
     (build-system r-build-system)
     (inputs `(("python" ,python)))
     (propagated-inputs
@@ -5238,14 +5264,14 @@ movies, and TV shows.")
 (define-public r-ggsignif
   (package
     (name "r-ggsignif")
-    (version "0.4.0")
+    (version "0.5.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ggsignif" version))
        (sha256
         (base32
-         "1rn58d7pb3axk6chiihryykrzw76adaa2yiafq4d0j6qbhax78f7"))))
+         "0z04g5kqdj66fyfxb5d2m7njkqd7idbiy4xgsnxdh5pbh3cr643x"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-ggplot2" ,r-ggplot2)))
@@ -5597,14 +5623,14 @@ references and Rd files.")
 (define-public r-officer
   (package
     (name "r-officer")
-    (version "0.3.2")
+    (version "0.3.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "officer" version))
        (sha256
         (base32
-         "14b6ii9h3fi5g8ja929mfhxps9r7x78flqjdy437y9aygkhmiz2i"))))
+         "1ggdp8pbspn24sjshx1h48klivrx401vwk2df49j4wpwxh6dx26y"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-base64enc" ,r-base64enc)
@@ -5613,6 +5639,7 @@ references and Rd files.")
        ("r-magrittr" ,r-magrittr)
        ("r-r6" ,r-r6)
        ("r-rcpp" ,r-rcpp)
+       ("r-rlang" ,r-rlang)
        ("r-uuid" ,r-uuid)
        ("r-xml2" ,r-xml2)
        ("r-zip" ,r-zip)))
@@ -5760,14 +5787,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.1")
+    (version "0.3.6.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "prediction" version))
        (sha256
         (base32
-         "1znxpacd79fjkf84w3493p1vmafanqfxsspwpwpkmda323bsxj0n"))))
+         "0kx7xbm2j6c8h6gk1iig4vfpg877psg16j74hl7zc2mv40sc6dy5"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-data-table" ,r-data-table)))
@@ -5897,23 +5924,24 @@ functions.")
 (define-public r-flextable
   (package
     (name "r-flextable")
-    (version "0.4.6")
+    (version "0.5.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "flextable" version))
        (sha256
         (base32
-         "0fa42dvf0wyl91w4v0rywm3xgw9n03cfyl28ficrv8iabz4k4382"))))
+         "0arxgal67ahsq8v0zbvc767qadn7lg3f7mmqa9gjjz6sri0y6gsx"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-gdtools" ,r-gdtools)
+     `(("r-data-table" ,r-data-table)
+       ("r-gdtools" ,r-gdtools)
        ("r-htmltools" ,r-htmltools)
        ("r-knitr" ,r-knitr)
+       ("r-magick" ,r-magick)
        ("r-officer" ,r-officer)
-       ("r-r6" ,r-r6)
+       ("r-rlang" ,r-rlang)
        ("r-rmarkdown" ,r-rmarkdown)
-       ("r-stringr" ,r-stringr)
        ("r-xml2" ,r-xml2)))
     (home-page "https://davidgohel.github.io/flextable")
     (synopsis "Functions for tabular reporting")
@@ -6071,14 +6099,14 @@ and automatically generate usage notices.")
 (define-public r-hash
   (package
     (name "r-hash")
-    (version "2.2.6")
+    (version "2.2.6.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "hash" version))
        (sha256
         (base32
-         "0mkx59bmni3b283znvbndnkbar85fzavzdfgmwrhskidsqcz34yz"))))
+         "0b3fl0rvgwb992knl81vm99lsldg5clvaqjh6mamm6zqmb6dz056"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/hash/")
     (synopsis "Implementation of hash/associated arrays/dictionaries")
@@ -6306,13 +6334,13 @@ the analyzed items.")
 (define-public r-slam
   (package
     (name "r-slam")
-    (version "0.1-44")
+    (version "0.1-45")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "slam" version))
        (sha256
-        (base32 "11n956kid70931z0qyiql3v7nac1cfkamq44kzf9wl670pf8b033"))))
+        (base32 "0xvj8va6xd7zkn3l4a5ad7v62s7xmkz8frq7gpcl3b6vqwckkaw4"))))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/slam/")
     (synopsis "Sparse lightweight arrays and matrices")
@@ -6791,26 +6819,55 @@ not found in either TASSEL or @code{r-qtl} in addition to visualization of
 genotypes as \"graphical genotypes\".")
     (license license:gpl3)))
 
+(define-public r-furrr
+  (package
+    (name "r-furrr")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "furrr" version))
+       (sha256
+        (base32
+         "1ld9aa9hydna94hgm6p91zjbfv1dz1vsgchjlpknkg6irbvkfafx"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-future" ,r-future)
+       ("r-globals" ,r-globals)
+       ("r-purrr" ,r-purrr)
+       ("r-rlang" ,r-rlang)))
+    (home-page "https://github.com/DavisVaughan/furrr")
+    (synopsis "Apply mapping functions in parallel using futures")
+    (description
+     "This package provides implementations of the family of @code{map()}
+functions from the @code{purrr} package that can be resolved using any
+@code{future}-supported backend, e.g. parallel on the local machine or
+distributed on a compute cluster.")
+    (license license:lgpl2.1+)))
+
 (define-public r-abjutils
   (package
     (name "r-abjutils")
-    (version "0.2.1")
+    (version "0.2.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "abjutils" version))
        (sha256
-        (base32 "0qrsc4if7aif73qp95lw6b5986c2r0jn7m39123zij8k15vc935b"))))
+        (base32 "0n4zps65y3zg0gfzlv97w91si52a9izkncirskbkj5x9hk0nhxcv"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-devtools" ,r-devtools)
        ("r-dplyr" ,r-dplyr)
+       ("r-furrr" ,r-furrr)
+       ("r-future" ,r-future)
        ("r-glue" ,r-glue)
        ("r-httr" ,r-httr)
        ("r-magrittr" ,r-magrittr)
-       ("r-plyr" ,r-plyr)
        ("r-progress" ,r-progress)
        ("r-purrr" ,r-purrr)
+       ("r-readr" ,r-readr)
+       ("r-rlang" ,r-rlang)
        ("r-rstudioapi" ,r-rstudioapi)
        ("r-scales" ,r-scales)
        ("r-stringi" ,r-stringi)
@@ -7110,21 +7167,95 @@ replicating the evaluation as many times as specified, and returning the results
 conveniently wrapped into a data frame.")
     (license license:gpl2+)))
 
+(define-public r-magick
+  (package
+    (name "r-magick")
+    (version "2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "magick" version))
+       (sha256
+        (base32
+         "18y465325mhf48x2jn3jz9khwq1z2aj13wfbdkv8k3hln1sd572m"))))
+    (build-system r-build-system)
+    (inputs
+     `(("imagemagick" ,imagemagick)
+       ("zlib" ,zlib)))
+    (propagated-inputs
+     `(("r-curl" ,r-curl)
+       ("r-magrittr" ,r-magrittr)
+       ("r-rcpp" ,r-rcpp)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://github.com/ropensci/magick")
+    (synopsis "Advanced graphics and image-processing in R")
+    (description
+     "This package provides bindings to ImageMagick, a comprehensive image
+processing library.  It supports many common formats (PNG, JPEG, TIFF, PDF,
+etc.)  and manipulations (rotate, scale, crop, trim, flip, blur, etc).  All
+operations are vectorized via the Magick++ STL meaning they operate either on
+a single frame or a series of frames for working with layers, collages, or
+animation.  In RStudio, images are automatically previewed when printed to the
+console, resulting in an interactive editing environment.")
+    (license license:expat)))
+
+(define-public r-survey
+  (package
+    (name "r-survey")
+    (version "3.35-1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "survey" version))
+       (sha256
+        (base32
+         "1nv4sdfmidvyjgvp3zvn5iw35bb8w0v7095is2pdy8cckkgdvr8i"))))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-lattice" ,r-lattice)
+       ("r-matrix" ,r-matrix)
+       ("r-minqa" ,r-minqa)
+       ("r-numderiv" ,r-numderiv)
+       ("r-survival" ,r-survival)))
+    (home-page "http://r-survey.r-forge.r-project.org/survey/")
+    (synopsis "Analysis of complex survey samples")
+    (description
+     "This package provides tools for the analysis of complex survey samples.
+The provided features include: summary statistics, two-sample tests, rank
+tests, generalised linear models, cumulative link models, Cox models,
+loglinear models, and general maximum pseudolikelihood estimation for
+multistage stratified, cluster-sampled, unequally weighted survey samples;
+variances by Taylor series linearisation or replicate weights;
+post-stratification, calibration, and raking; two-phase subsampling designs;
+graphics; PPS sampling without replacement; principal components, and factor
+analysis.")
+    ;; Either version of the GPL.
+    (license (list license:gpl2 license:gpl3))))
+
 (define-public r-dvmisc
   (package
     (name "r-dvmisc")
-    (version "1.1.2")
+    (version "1.1.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "dvmisc" version))
        (sha256
-        (base32 "1dy0yykskwhkql19bhzmbwsgv028afc8jh9yqwbczj6f3vpv31zh"))))
+        (base32 "0x391pxg5mqgp5xxc8qwhwxky8ds7d9gr9iwmsb12c92kxfk00bv"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-mass" ,r-mass)
+     `(("r-cubature" ,r-cubature)
+       ("r-data-table" ,r-data-table)
+       ("r-dplyr" ,r-dplyr)
+       ("r-ggplot2" ,r-ggplot2)
+       ("r-mass" ,r-mass)
+       ("r-mvtnorm" ,r-mvtnorm)
+       ("r-pracma" ,r-pracma)
+       ("r-purrr" ,r-purrr)
        ("r-rbenchmark" ,r-rbenchmark)
-       ("r-rcpp" ,r-rcpp)))
+       ("r-rcpp" ,r-rcpp)
+       ("r-survey" ,r-survey)))
     (home-page "https://cran.r-project.org/web/packages/dvmisc/")
     (synopsis "Faster computation of common statistics and miscellaneous functions")
     (description
@@ -7399,14 +7530,14 @@ packages maintained by Torsten Hothorn.")
 (define-public r-multcomp
   (package
     (name "r-multcomp")
-    (version "1.4-8")
+    (version "1.4-10")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "multcomp" version))
        (sha256
         (base32
-         "0fm78g4zjc6ank316qfw977864shmy890znn4fahwc8jjdhpc252"))))
+         "1kzmdn9jmz5bmhf3wsfr12ljbasmwsgcsfdia52k0bi6q0swdg19"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-codetools" ,r-codetools)
@@ -7427,18 +7558,19 @@ Hothorn, Westfall, 2010, CRC Press).")
 (define-public r-emmeans
   (package
     (name "r-emmeans")
-    (version "1.3.2")
+    (version "1.3.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "emmeans" version))
        (sha256
         (base32
-         "0mg6y007hfmr601cq4jgxl5ncwbx79kkh7xs2i504m0rinxj8bf5"))))
+         "1hpal1vq6gryzvgfvv9f328idg0mgjvlfnhaj069dhb7zqfwhzlk"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-estimability" ,r-estimability)
        ("r-mvtnorm" ,r-mvtnorm)
+       ("r-numderiv" ,r-numderiv)
        ("r-plyr" ,r-plyr)
        ("r-xtable" ,r-xtable)))
     (home-page "https://github.com/rvlenth/emmeans")
@@ -7991,23 +8123,27 @@ ways.")
 (define-public r-summarytools
   (package
     (name "r-summarytools")
-    (version "0.8.8")
+    (version "0.9.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "summarytools" version))
        (sha256
         (base32
-         "0z836m6ib9bznwcawn6xf8gck05ydxwi3bx4jbrbyqql4kci8zwb"))))
+         "1q83kii6prqf9z5v8cxj1q2944kx9x7dcxyqix3m883a94dmgivy"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-htmltools" ,r-htmltools)
+     `(("r-checkmate" ,r-checkmate)
+       ("r-dplyr" ,r-dplyr)
+       ("r-htmltools" ,r-htmltools)
        ("r-lubridate" ,r-lubridate)
+       ("r-magick" ,r-magick)
        ("r-matrixstats" ,r-matrixstats)
        ("r-pander" ,r-pander)
        ("r-pryr" ,r-pryr)
        ("r-rapportools" ,r-rapportools)
-       ("r-rcurl" ,r-rcurl)))
+       ("r-rcurl" ,r-rcurl)
+       ("r-tidyr" ,r-tidyr)))
     (home-page "https://github.com/dcomtois/summarytools")
     (synopsis "Tools to quickly and neatly summarize data")
     (description
@@ -8164,14 +8300,14 @@ analysing multivariate abundance data in community ecology.")
 (define-public r-afex
   (package
     (name "r-afex")
-    (version "0.22-1")
+    (version "0.23-0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "afex" version))
        (sha256
         (base32
-         "065wbxljl77zqvc2c4gpfpfyc6mbnnrf24q399q9bxmrz3sapj8n"))))
+         "0yv4s7461swn0116y4wq9v139p1br5rr6hhnq1cmkbvybmwj2vp7"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-car" ,r-car)
@@ -8189,14 +8325,14 @@ experiments using ANOVA or mixed models.")
 (define-public r-lmertest
   (package
     (name "r-lmertest")
-    (version "3.0-1")
+    (version "3.1-0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "lmerTest" version))
        (sha256
         (base32
-         "0pia69sc8bn37mkiprdf91iilziqb865f94k6x6c26i33fg7rq4m"))))
+         "1nkz8cmxa5yb8q4i65bmhnn5pd4bhwcyjplyscynb24z3f64xp9b"))))
     (properties `((upstream-name . "lmerTest")))
     (build-system r-build-system)
     (propagated-inputs
@@ -8436,14 +8572,14 @@ isosurfaces.")
 (define-public r-ks
   (package
     (name "r-ks")
-    (version "1.11.3")
+    (version "1.11.4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ks" version))
        (sha256
         (base32
-         "0z749c3xzpf6n0g7xcfplrhap1di8k7kcfr7vigh95ywnigyhs8d"))))
+         "0d5i8458s8ri9pcx2jm003z1ajk7ha3pmw1sr6lgn6a8d7wgmvqb"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-fnn" ,r-fnn)
@@ -8452,7 +8588,6 @@ isosurfaces.")
        ("r-matrix" ,r-matrix)
        ("r-mclust" ,r-mclust)
        ("r-mgcv" ,r-mgcv)
-       ("r-misc3d" ,r-misc3d)
        ("r-multicool" ,r-multicool)
        ("r-mvtnorm" ,r-mvtnorm)))
     (home-page "http://www.mvstat.net/tduong/")
@@ -8820,14 +8955,14 @@ maps.")
 (define-public r-tidytree
   (package
     (name "r-tidytree")
-    (version "0.2.1")
+    (version "0.2.4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "tidytree" version))
        (sha256
         (base32
-         "1sx69wvlp7k761cmglrzq2jxkm2iq27x6bhhdcisj62wryj96wb2"))))
+         "04bznlfs617plv258nmsyq2pywnijcnzy2pbn5b2fgjk2xqkp29w"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-ape" ,r-ape)
@@ -9538,17 +9673,18 @@ and manipulating sets of ontological terms.")
 (define-public r-bigrquery
   (package
     (name "r-bigrquery")
-    (version "1.0.0")
+    (version "1.1.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "bigrquery" version))
        (sha256
         (base32
-         "0z7wsqxla1pg2454l35kkfaz2s9hppwvpz1pds286ddldbbmyzis"))))
+         "0h2nzyn1w0padpl61l467j7vlkc2wair7sh6p26p94z4zfsnv0i1"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-assertthat" ,r-assertthat)
+       ("r-bit64" ,r-bit64)
        ("r-curl" ,r-curl)
        ("r-dbi" ,r-dbi)
        ("r-glue" ,r-glue)
@@ -9568,14 +9704,14 @@ and manipulating sets of ontological terms.")
 (define-public r-gmp
   (package
     (name "r-gmp")
-    (version "0.5-13.2")
+    (version "0.5-13.4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "gmp" version))
        (sha256
         (base32
-         "1xd6jjra4niqv1kps91y348lwgvy73p2faxaia4gfzdnrpw7wsxf"))))
+         "15jifzwbzqcnq2apzvsylkx4k9lillkgblm4wf4wb7y31ys0amph"))))
     (build-system r-build-system)
     (arguments
      '(#:phases
@@ -10385,14 +10521,14 @@ model with finite state space using the Aalen-Johansen estimator.")
 (define-public r-epi
   (package
     (name "r-epi")
-    (version "2.32")
+    (version "2.35")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "Epi" version))
        (sha256
         (base32
-         "14n24xlm7pwdc54w2hlpjhfal1zpzm87rv3rjfckiz47d3w7dwqm"))))
+         "1z3959761ryv54y6vsrxxvhrwzz50xrxn55pqh5y7lrxh91zdsvl"))))
     (properties `((upstream-name . "Epi")))
     (build-system r-build-system)
     (propagated-inputs
@@ -10444,20 +10580,21 @@ regression coefficients can be conducted via jackknifing.")
 (define-public r-huge
   (package
     (name "r-huge")
-    (version "1.2.7")
+    (version "1.3.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "huge" version))
        (sha256
         (base32
-         "134d951x42vy9dcmf155fbvik2934nh6qm2w5jlx3x2c6cf7faq4"))))
+         "18psr7arynax38hcc5y9dxskhsg4a5zjw3hjbgf96zy59wdib5ch"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-igraph" ,r-igraph)
-       ("r-lattice" ,r-lattice)
        ("r-mass" ,r-mass)
-       ("r-matrix" ,r-matrix)))
+       ("r-matrix" ,r-matrix)
+       ("r-rcpp" ,r-rcpp)
+       ("r-rcppeigen" ,r-rcppeigen)))
     (home-page "https://cran.r-project.org/web/packages/huge")
     (synopsis "High-dimensional undirected graph estimation")
     (description
@@ -10599,14 +10736,14 @@ the local machine to, say, distributed processing on a remote compute cluster.")
 (define-public r-future-apply
   (package
     (name "r-future-apply")
-    (version "1.1.0")
+    (version "1.2.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "future.apply" version))
        (sha256
         (base32
-         "0b6v9rxvnnz13sydbgkapw71hx98fwdczjchgqnspjmq2340kdc0"))))
+         "00ma43ma3byrf9vfqqn9g8sn18c71ryhk7lpza5h7817f1kibw1h"))))
     (properties `((upstream-name . "future.apply")))
     (build-system r-build-system)
     (propagated-inputs
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index b20e92518b..047f9033ad 100644
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@ -122,6 +122,12 @@
                           (("/usr/local/lib/cups/filter")
                            (string-append out "/lib/cups/filter")))
                         #t)))
+                  (add-after 'unpack 'patch-for-poppler
+                    (lambda _
+                      (substitute* "filter/pdf.cxx"
+                        (("GooString \\*field_name;" m)
+                         (string-append "const " m)))
+                      #t))
                   (add-after 'install 'wrap-filters
                     (lambda* (#:key inputs outputs #:allow-other-keys)
                       ;; Some filters expect to find 'gs' in $PATH.  We cannot
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 712dafae90..30248f673a 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -13166,7 +13166,7 @@ opposed to character-based).")
 (define-public emacs-disk-usage
   (package
     (name "emacs-disk-usage")
-    (version "1.2.0")
+    (version "1.3.0")
     (home-page "https://gitlab.com/Ambrevar/emacs-disk-usage")
     (source
      (origin
@@ -13177,7 +13177,7 @@ opposed to character-based).")
              ".el"))
        (sha256
         (base32
-         "13n6bsrz8q07fl6sd7wi5zvf01m5xw11hmrpdz7wcn49v6vs3whl"))))
+         "0ky6c34z7c6hd4yvcrcsidkfk2kvffkg63v02vch2i6hg1n6n028"))))
     (build-system emacs-build-system)
     (synopsis "Sort and browse disk usage listings with Emacs")
     (description "Disk Usage is a file system analyzer: it offers a tabulated
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 34b70fe9e8..1e76f0821c 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -251,8 +251,10 @@ editor (without an X toolkit)" )
     (build-system gnu-build-system)
     (inputs (append `(("inotify-tools" ,inotify-tools))
                     (alist-delete "gtk+" (package-inputs emacs))))
-    (arguments (append '(#:configure-flags '("--with-x-toolkit=no"))
-                       (package-arguments emacs)))))
+    (arguments
+     `(,@(substitute-keyword-arguments (package-arguments emacs)
+           ((#:configure-flags cf)
+            `(cons "--with-x-toolkit=no" ,cf)))))))
 
 (define-public guile-emacs
   (let ((commit "41120e0f595b16387eebfbf731fff70481de1b4b")
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 990aa05dd8..5ea2b17197 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -977,19 +977,19 @@ SPI, I2C, JTAG.")
 (define-public fc-host-tools
   (package
     (name "fc-host-tools")
-    (version "9a")
+    (version "10")
     (source (origin
               (method url-fetch)
               (uri (string-append "ftp://ftp.freecalypso.org/pub/GSM/"
                                   "FreeCalypso/fc-host-tools-r" version ".tar.bz2"))
               (sha256
                (base32
-                "15w1njlvbzzbr9bwj2hwy8na3a55p1z1cysk5h9iziz9y955ansg"))))
+                "0ybjqkz1cpnxni66p3valv1bva39vpwzdcc4040lqzx6py9h7h8b"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f                      ; No tests exist.
        #:make-flags
-       (list (string-append "INSTBIN=" %output "/bin")
+       (list (string-append "INSTALL_PREFIX=" %output)
              (string-append "INCLUDE_INSTALL_DIR=" %output "include/rvinterf"))
        #:phases
        (modify-phases %standard-phases
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 9dab778de2..6b7dc3f595 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -37,6 +37,7 @@
   #:use-module (guix utils)
   #:use-module ((srfi srfi-1) #:hide (zip))
   #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system ant)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system python)
@@ -632,6 +633,52 @@ image, etc.  Besides viewing Gerbers, you may also view Excellon drill files
 as well as pick-place files.")
     (license license:gpl2+)))
 
+(define-public translate2geda
+  ;; There has been no formal release yet.
+  (let ((commit "4c19e7eefa338cea8f1ee999ea8b37f8d0698169")
+        (revision "1"))
+    (package
+      (name "translate2geda")
+      (version (git-version "0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/erichVK5/translate2geda.git")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1h062bbpw8nk0jamkya1k4lsgaia796jyviiz2gkdi6k1bxhwgpa"))))
+      (build-system ant-build-system)
+      (arguments
+       `(#:tests? #f ; there are no tests
+         #:jar-name "translate2geda.jar"
+         #:source-dir "."
+         #:main-class "translate2geda"
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'install 'install-bin
+             (lambda* (#:key inputs outputs #:allow-other-keys)
+               (let* ((out (assoc-ref outputs "out"))
+                      (bin (string-append out "/bin"))
+                      (wrapper (string-append bin "/translate2geda")))
+                 (mkdir-p bin)
+                 (with-output-to-file wrapper
+                   (lambda _
+                     (format #t "#!/bin/sh~%exec ~a -jar ~a/share/java/translate2geda.jar"
+                             (which "java") out)))
+                 (chmod wrapper #o555))
+               #t)))))
+      (home-page "https://github.com/erichVK5/translate2geda")
+      (synopsis "Utility for converting symbol and footprint formats to gEDA")
+      (description
+       "This package provides a utility for converting Kicad (@file{.mod},
+@file{.lib}), Eagle (@file{.lbr}), gerber (@file{.gbr}, etc..),
+BXL (@file{.bxl}), IBIS (@file{.ibs}), symdef, LT-Spice (@file{.asc}),
+QUCS (@file{.sch}), and BSDL (@file{.bsd}) symbols and footprints and EggBot
+fonts to gEDA.")
+      (license license:gpl2+))))
+
 (define-public libfive
   (let ((commit "9d857d1923abecb0e5935b9287d22661f6efaac5")
         (revision "2"))
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 112a6eba97..4eb0d57a36 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -336,7 +336,7 @@ do so.")
 (define-public electrum
   (package
     (name "electrum")
-    (version "3.3.3")
+    (version "3.3.4")
     (source
      (origin
        (method url-fetch)
@@ -345,7 +345,7 @@ do so.")
                            version ".tar.gz"))
        (sha256
         (base32
-         "0z2zfhyawrbzs0w1426a2w0d4wsajl34ymj77qmpm41138g2ysf2"))
+         "0h128wklz5qwx5zqzbd48x46kxjxs12wcna9lhak70y5pj2hw8rg"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -391,7 +391,7 @@ other machines/servers.  Electrum does not download the Bitcoin blockchain.")
   (package
     (inherit electrum)
     (name "electron-cash")
-    (version "3.3.5")
+    (version "3.3.6")
     (source
      (origin
        (method url-fetch)
@@ -402,7 +402,7 @@ other machines/servers.  Electrum does not download the Bitcoin blockchain.")
                            ".tar.gz"))
        (sha256
         (base32
-         "185z3c5j9nvl31ga80hvahx7ghvkgmqgfjrrzw1fbs6p9jxy007w"))
+         "110apc376wm4yd9ghpffiipwdn8rzyr3z7ncpp2516wbz4mmyhxc"))
        (modules '((guix build utils)))
        (snippet
         '(begin
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 6c562d977d..bb8548c1eb 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Jookia <166291@gmail.com>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
-;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016 Toni Reina <areina@riseup.net>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -344,33 +344,23 @@ Biolinum is available in both Regular and Bold weights.")
 (define-public font-terminus
   (package
     (name "font-terminus")
-    (version "4.40")
+    (version "4.47")
     (source
-      (origin
-        (method url-fetch)
-        (uri (string-append
-               "mirror://sourceforge/terminus-font/terminus-font-"
-               version
-               "/terminus-font-"
-               version
-               ".tar.gz"))
-        (sha256
-         (base32
-          "0487cyx5h1f0crbny5sg73a22gmym5vk1i7646gy7hgiscj2rxb4"))))
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://sourceforge/terminus-font/terminus-font-"
+                           version "/terminus-font-" version ".tar.gz"))
+       (sha256
+        (base32 "15qjcpalcxjiwsjgjg5k88vkwp56cs2nnx4ghya6mqp4i1c206qg"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("perl" ,perl)
-       ("bdftopcf" ,bdftopcf)
+     `(("bdftopcf" ,bdftopcf)
        ("font-util" ,font-util)
-       ("mkfontdir" ,mkfontdir)))
+       ("mkfontdir" ,mkfontdir)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python)))
     (arguments
-     `(#:configure-flags (list
-                          ;; install fonts into subdirectory of package output
-                          ;; instead of font-util-?.?.?/share/fonts/X11
-                          (string-append "--with-fontrootdir="
-                                         %output "/share/fonts/X11"))
-       #:tests? #f)) ;; No test target in tarball
+     `(#:tests? #f))                    ; no test target in tarball
     (home-page "http://terminus-font.sourceforge.net/")
     (synopsis "Simple bitmap programming font")
     (description "Terminus Font is a clean, fixed-width bitmap font, designed
@@ -505,12 +495,11 @@ variants.")
                     "mirror://sourceforge/wqy/wqy-zenhei/" version
                     "%20%28Fighting-state%20RC1%29/wqy-zenhei-"
                     version ".tar.gz"))
-              (file-name (string-append "wqy-zenhei-" version ".tar.gz"))
               (sha256
                (base32
                 "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4"))))
     (build-system font-build-system)
-    (home-page "http://wenq.org/wqy2/")
+    (home-page "https://wenq.org/wqy2/")
     (synopsis "CJK font")
     (description
      "WenQuanYi Zen Hei is a Hei-Ti style (sans-serif type) Chinese outline
@@ -522,7 +511,7 @@ this font is over 35,000, including over 21,000 Chinese Hanzi.  This font has
 full coverage of the GBK (CP936) charset, CJK Unified Ideographs, as well as
 the code-points needed for zh_cn, zh_sg, zh_tw, zh_hk, zh_mo, ja (Japanese) and
 ko (Korean) locales for @code{fontconfig}.")
-    ;; GPLv2 with font embedding exception
+    ;; GPLv2 with font embedding exception.
     (license license:gpl2)))
 
 (define-public font-wqy-microhei
@@ -607,13 +596,13 @@ Heros, Pagella, Schola, Termes.")
     (source (origin
               (method url-fetch)
               (uri (string-append
-                    "http://www.marksimonson.com/assets/content/fonts/"
+                    "https://www.marksimonson.com/assets/content/fonts/"
                     "AnonymousPro-" version ".zip"))
               (sha256
                (base32
                 "1asj6lykvxh46czbal7ymy2k861zlcdqpz8x3s5bbpqwlm3mhrl6"))))
     (build-system font-build-system)
-    (home-page "http://www.marksimonson.com/fonts/view/anonymous-pro")
+    (home-page "https://www.marksimonson.com/fonts/view/anonymous-pro")
     (synopsis "Fixed-width fonts designed with coding in mind")
     (description "Anonymous Pro is a family of four fixed-width fonts designed
 with coding in mind.  Anonymous Pro features an international, Unicode-based
@@ -624,7 +613,7 @@ languages, plus Greek and Cyrillic.")
 (define-public font-gnu-unifont
   (package
     (name "font-gnu-unifont")
-    (version "11.0.03")
+    (version "12.0.01")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -632,7 +621,7 @@ languages, plus Greek and Cyrillic.")
                     version ".tar.gz"))
               (sha256
                (base32
-                "171zhm52c4rzpn19qcq4n9nyfbcjl38v50zslhvgpjdcmc5jvhav"))))
+                "059j82z6z4wqyy3261ns0zg2b2vh2wvxxfbsa9hra9xasism49vb"))))
     (build-system gnu-build-system)
     (outputs '("out"   ; TrueType version
                "pcf"   ; PCF (bitmap) version
@@ -948,7 +937,7 @@ Sans Pro family.")
 (define-public font-fira-code
   (package
     (name "font-fira-code")
-    (version "1.205")
+    (version "1.206")
     (source (origin
               (method url-fetch/zipbomb)
               (uri (string-append "https://github.com/tonsky/FiraCode/releases/"
@@ -956,7 +945,7 @@ Sans Pro family.")
                                   "/FiraCode_" version ".zip"))
               (sha256
                (base32
-                "13bxgf59g6fw5191xclcjzn22hj8jk9k5jjwf7vz07mpjbgadcl5"))))
+                "02r1lcp0c9135ps71v66wdvbsrcxwirrp0blqsa1xbjkkq2rwgj3"))))
     (build-system font-build-system)
     (home-page "https://mozilla.github.io/Fira/")
     (synopsis "Monospaced font with programming ligatures")
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 2b60979699..f97a27ccd5 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -534,7 +534,7 @@ smooth contours with constant curvature at the spline joins.")
 (define-public libuninameslist
   (package
     (name "libuninameslist")
-    (version "20180701")
+    (version "20190305")
     (home-page "https://github.com/fontforge/libuninameslist")
     (source
      (origin
@@ -543,7 +543,7 @@ smooth contours with constant curvature at the spline joins.")
                            "/libuninameslist-dist-" version ".tar.gz"))
        (sha256
         (base32
-         "141wh2f5jsaw84mgw6vf2c9hd2wm957a2hpnicyqjbc7pk89gvca"))))
+         "1rwd2bgcyvign9agyjsr3v2fr9j1cg2wi6g0z2wwg1az32scknwq"))))
     (build-system gnu-build-system)
     (synopsis "Unicode names and annotation list")
     (description
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 4739f25599..ae4c18e037 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -229,7 +229,7 @@ the freedesktop.org XDG Base Directory specification.")
 (define-public elogind
   (package
     (name "elogind")
-    (version "239.3")
+    (version "239.4")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -238,7 +238,7 @@ the freedesktop.org XDG Base Directory specification.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1gipnbnlz5k3gxv33wyhi2zd94hlfa9lm360p8z6w5i9s8dzhf52"))))
+                "106hld2fa89iz0d17gkmwvbkxc2yspn1klq73nvkj4878wx3vcr9"))))
     (build-system meson-build-system)
     (arguments
      `(#:configure-flags
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 78216b68c3..ed61f7d5bb 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2015, 2016 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 ;;; Copyright © 2015, 2017, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org>
-;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016, 2017 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2016, 2017 Rodger Fox <thylakoid@openmailbox.org>
@@ -1709,7 +1709,7 @@ match, cannon keep, and grave-itation pit.")
 (define minetest-data
   (package
     (name "minetest-data")
-    (version "0.4.17")
+    (version "5.0.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1718,7 +1718,7 @@ match, cannon keep, and grave-itation pit.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1g8iw2pya32ifljbdx6z6rpcinmzm81i9minhi2bi1d500ailn7s"))))
+                "186i1pna2f3fwa2001y8mw5131h0sndhfdxzfqq2gnr1m83sjm0w"))))
     (build-system trivial-build-system)
     (native-inputs
      `(("source" ,source)))
@@ -1743,7 +1743,7 @@ match, cannon keep, and grave-itation pit.")
 (define-public minetest
   (package
     (name "minetest")
-    (version "0.4.17.1")
+    (version "5.0.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1752,7 +1752,7 @@ match, cannon keep, and grave-itation pit.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "19sfblgh9mchkgw32n7gdvm7a8a9jxsl9cdlgmxn9bk9m939a2sg"))
+                "1b8n8nzlvmld1hl3zgs1xg4jbc1nsf1m2bn7fi794vdr06s6n911"))
               (modules '((guix build utils)))
               (snippet
                 '(begin
@@ -4407,7 +4407,7 @@ fish.  The whole game is accompanied by quiet, comforting music.")
 (define-public crawl
   (package
     (name "crawl")
-    (version "0.22.1")
+    (version "0.23.1")
     (source
      (origin
        (method url-fetch)
@@ -4421,7 +4421,7 @@ fish.  The whole game is accompanied by quiet, comforting music.")
                             version "-nodeps.tar.xz")))
        (sha256
         (base32
-         "1qc90wwbxvjzqq66n8kfr0a2ny7sfvv2n84si67jiv2887d0ws6k"))
+         "0c3mx49kpz6i2xvv2dwsaj9s7mm4mif1h2qdkfyi80lv2j1ay51h"))
        (patches (search-patches "crawl-upgrade-saves.patch"))))
     (build-system gnu-build-system)
     (inputs
@@ -4433,6 +4433,8 @@ fish.  The whole game is accompanied by quiet, comforting music.")
      `(("bison" ,bison)
        ("flex" ,flex)
        ("perl" ,perl)
+       ("python" ,python-wrapper)
+       ("python-pyyaml" ,python-pyyaml)
        ("pkg-config" ,pkg-config)))
     (arguments
      '(#:make-flags
@@ -4448,16 +4450,24 @@ fish.  The whole game is accompanied by quiet, comforting music.")
                "-Csource"))
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'patch-flags
+           (lambda _
+             (substitute* "source/Makefile"
+               (("-mfpmath=sse -msse2") ""))
+             #t))
+         (add-after 'unpack 'find-SDL-image
+           (lambda _
+             (substitute* "source/windowmanager-sdl.cc"
+               (("SDL_image.h") "SDL2/SDL_image.h"))
+             #t))
          (delete 'configure)
-         (delete 'check)
-         ;; Test cases require the source to be rebuild with the -DDEBUG define.
-         ;; Do 'check before 'build to avoid a 3rd build on make install.
-         (add-before 'build 'check
+         (replace 'check
            (lambda* (#:key inputs outputs make-flags #:allow-other-keys)
              (setenv "HOME" (getcwd))
              ;; Fake a terminal for the test cases.
              (setenv "TERM" "xterm-256color")
-             (apply invoke "make" "debug" "test"
+             ;; Run the tests that don't require a debug build.
+             (apply invoke "make" "nondebugtest"
                     (format #f "-j~d" (parallel-job-count))
                     ;; Force command line build for test cases.
                     (append make-flags '("GAME=crawl" "TILES="))))))))
@@ -6104,3 +6114,161 @@ to download and install them in @file{$HOME/.stepmania-X.Y/Songs} directory.")
     (home-page "https://www.stepmania.com")
     (license license:expat)))
 
+(define-public btanks
+  (package
+    (name "btanks")
+    (version "0.9.8083")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://sourceforge/btanks/btanks-source/"
+                           "btanks-" version ".tar.bz2"))
+       (sha256
+        (base32
+         "0ha35kxc8xlbg74wsrbapfgxvcrwy6psjkqi7c6adxs55dmcxliz"))))
+    (build-system scons-build-system)
+    (arguments
+     `(#:tests? #f                      ; there are none
+       #:scons ,scons-python2
+       #:scons-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'replace-removed-scons-syntax
+           (lambda _
+             (substitute* "SConstruct"
+               (("Options") "Variables")
+               (("opts.Add\\(BoolOption.*") "opts.Add('gcc_visibility', 'gcc visibility', 'true')")
+               (("opts.Add\\(EnumOption.*") "opts.Add('mode', 'build mode', 'release')"))
+             #t))
+         (add-after 'set-paths 'set-sdl-paths
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv "CPATH"
+                     (string-append (assoc-ref inputs "sdl")
+                                    "/include/SDL"))
+             #t))
+         (add-after 'unpack 'fix-compilation-errors
+           (lambda _
+             (substitute* "mrt/base_file.h"
+               (("#include <string>" m)
+                (string-append m "\n#include <sys/types.h>")))
+             (substitute* '("engine/sl08/sl08.h"
+                            "engine/sl08/sl08.py")
+               (("signal = NULL") "signal = 0")
+               (("object\\(NULL\\)") "object(0)")
+               (("func\\(NULL\\)") "func(0)")
+               ((" connect\\(signal_ref\\)")
+                " this->connect(signal_ref)"))
+             (substitute* "math/range_list.h"
+               ((" lower_bound\\(value\\)")
+                " this->lower_bound(value)")
+               (("	erase\\(i\\)")
+                "	this->erase(i)"))
+             (substitute* "clunk/source.cpp"
+               (("using namespace clunk" m)
+                (string-append "# define pow10f(x) exp10f(x)\n" m)))
+             #t))
+         (add-after 'unpack 'find-lua
+           (lambda _
+             (substitute* "engine/SConscript"
+               (("lua5.1") "lua-5.1")
+               (("bt_libs.append\\(lua\\)")
+                "bt_libs.append(\"lua\")"))
+             #t)))))
+    (inputs
+     `(("expat" ,expat)
+       ("glu" ,glu)
+       ("libsmpeg" ,libsmpeg-with-sdl1)
+       ("libvorbis" ,libvorbis)
+       ("lua51" ,lua-5.1)
+       ("sdl" ,(sdl-union (list sdl
+                                sdl-mixer
+                                sdl-image
+                                sdl-ttf)))
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("zip" ,zip)))
+    (home-page "http://btanks.sourceforge.net")
+    (synopsis "Multiplayer tank battle game")
+    (description "Battle Tanks is a funny battle game, where you can choose
+one of three vehicles and eliminate your enemy using the whole arsenal of
+weapons.  It has original cartoon-like graphics and cool music, it’s fun and
+dynamic, it has several network modes for deathmatch and cooperative.")
+    ;; Some parts (e.g. mrt/b64.cpp) are LGPLv2.1+, but the whole package is
+    ;; released under GPLv2 or later.  It comes with extra exceptions for the
+    ;; developers.
+    (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public slingshot
+  (package
+    (name "slingshot")
+    (version "0.9")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/ryanakca/slingshot.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "19m8b6nsi786bc6gmkp185mwri3r5y249gjmqd5qsc23nnfhgrs1"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:python ,python-2))
+    (inputs
+     `(("python-pygame" ,python2-pygame)))
+    (home-page "https://github.com/ryanakca/slingshot")
+    (synopsis "Simple 2D shooting strategy game set in space")
+    (description "Slingshot is a two-dimensional strategy game where two
+players attempt to shoot one another through a section of space populated by
+planets.  The main feature of the game is that the shots, once fired, are
+affected by the gravity of the planets.")
+    (license license:gpl2+)))
+
+(define-public 4dtris
+  (package
+    (name "4dtris")
+    (version "0.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://launchpad.net/4dtris/"
+                           (version-major+minor version)
+                           "/" version "/+download/4dtris_"
+                           version ".orig.tar.gz"))
+       (sha256
+        (base32
+         "1nfkhcm0l89jyw8yr65na97g4l385zhjf7whkyg47c3v5sdqq2g7"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-install-directories
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (substitute* "Makefile.in"
+                 (("bindir = /usr/games")
+                  (string-append "bindir = " out "/bin"))
+                 (("/usr/share/applications")
+                  (string-append out "/share/applications"))
+                 (("/usr/share/games/4dtris")
+                  (string-append out "/share/4dtris"))))
+             #t))
+         (add-after 'set-paths 'set-sdl-paths
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv "CPATH"
+                     (string-append (assoc-ref inputs "sdl")
+                                    "/include/SDL"))
+             #t)))))
+    (inputs
+     `(("fontconfig" ,fontconfig)
+       ("freeglut" ,freeglut)
+       ("sdl" ,(sdl-union (list sdl sdl-ttf)))))
+    (home-page "https://launchpad.net/4dtris/")
+    (synopsis "4D Tetris")
+    (description "4D-TRIS is an alteration of the well-known Tetris game.  The
+game field is extended to 4D space, which has to filled up by the gamer with
+4D hyper cubes.")
+    (license license:gpl3)))
+
diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 884f57eabd..38567fdebf 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -100,7 +100,7 @@ topology functions.")
 (define-public gnome-maps
   (package
     (name "gnome-maps")
-    (version "3.26.2")
+    (version "3.28.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -108,7 +108,7 @@ topology functions.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0l40l7m9dyphvasiq1jxrn6ivavs1xwzn0bzz2x1z7x73955q783"))))
+                "1yzi08a9316jplgsl2z0qzlqxhghyqcjhv0m6i94wcain4mxk1z7"))))
     (build-system glib-or-gtk-build-system)
     (arguments
      `(#:configure-flags ;; Ensure that geoclue is referred to by output.
diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm
index 9f0a87a40a..575666fdeb 100644
--- a/gnu/packages/gimp.scm
+++ b/gnu/packages/gimp.scm
@@ -80,7 +80,7 @@ provided, as well as a framework to add new color models and data types.")
 (define-public gegl
   (package
     (name "gegl")
-    (version "0.4.12")
+    (version "0.4.14")
     (source (origin
               (method url-fetch)
               (uri (list (string-append "https://download.gimp.org/pub/gegl/"
@@ -88,7 +88,7 @@ provided, as well as a framework to add new color models and data types.")
                                         "/gegl-" version ".tar.bz2")))
               (sha256
                (base32
-                "0ljqxc4iyy2hrj31pxcy1xp4xm5zbx1nigqisphmg4p8mcz2jrz9"))))
+                "00crhngwi07f5b9x77kx5p7p4cl6l5g6glpz9rqv7pfqk62xa0ac"))))
     (build-system gnu-build-system)
     (arguments
      '(#:configure-flags '("LDFLAGS=-lm")))
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index 8a336a50f4..c3cb9cab23 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -718,7 +718,7 @@ mixed vector/bitmap output.")
 (define-public virtualgl
   (package
     (name "virtualgl")
-    (version "2.6")
+    (version "2.6.1")
     (source
      (origin
        (method git-fetch)
@@ -727,8 +727,7 @@ mixed vector/bitmap output.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32
-         "0di2igj2bhwb153fndgxks7y57pyhp0gj31n47j93gb7lxc9qcck"))))
+        (base32 "04fdwm6mz76lw4iwd5m7yxjfhpa0rpxd357bv5smk5lclnlbz1bv"))))
     (arguments
      `(#:tests? #f                      ; no tests are available
        #:configure-flags (list
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index fe44e0a064..f3cae2f521 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -519,7 +519,7 @@ has an ease of use unmatched by other C++ callback libraries.")
 (define glibmm
   (package
     (name "glibmm")
-    (version "2.54.1")
+    (version "2.56.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/glibmm/"
@@ -527,7 +527,7 @@ has an ease of use unmatched by other C++ callback libraries.")
                                  "/glibmm-" version ".tar.xz"))
              (sha256
               (base32
-               "0jkapw18icz59cmlmsl00nwwz0wh291kb4hc9z9hxmq45drqrhkw"))))
+               "1abrkqhca5p8n6ly3vp1232rny03s7lrd8f8iz2m2m141nxgqx3f"))))
     (build-system gnu-build-system)
     (arguments
      `(;; XXX: Some tests uses C++14 features.  Remove this when the default
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index cc0e40d43b..e26c0fce92 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -461,7 +461,7 @@ commonly used macros.")
 (define-public gnome-desktop
   (package
     (name "gnome-desktop")
-    (version "3.24.2")
+    (version "3.28.2")
     (source
      (origin
       (method url-fetch)
@@ -470,7 +470,7 @@ commonly used macros.")
                           name "-" version ".tar.xz"))
       (sha256
        (base32
-        "0pkq5l1llw8gkjhfq6y58iyj6wac8dh1mc3rzjzn6nd7lrkdx8cg"))))
+        "0c439hhpfd9axmv4af6fzhibksh69pnn2nnbghbbqqbwy6zqfl30"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases
@@ -496,6 +496,7 @@ commonly used macros.")
      `(("gdk-pixbuf" ,gdk-pixbuf)
        ("glib" ,glib)
        ("iso-codes" ,iso-codes)
+       ("libseccomp" ,libseccomp)
        ("libx11" ,libx11)
        ("libxext" ,libxext)
        ("libxkbfile" ,libxkbfile)
@@ -586,36 +587,43 @@ and keep up to date translations of documentation.")
 (define-public gcr
   (package
     (name "gcr")
-    (version "3.20.0")
+    (version "3.28.0")
     (source (origin
-             (method url-fetch)
-             (uri (string-append "mirror://gnome/sources/" name "/"
-                                 (version-major+minor version)  "/"
-                                 name "-" version ".tar.xz"))
-             (sha256
-              (base32
-               "0ydk9dzxx6snxza7j5ps8x932hbr3x1b8hhcaqjq4w4admi2qmwh"))
-             (patches
-              (search-patches "gcr-disable-failing-tests.patch"
-                              "gcr-fix-collection-tests-to-work-with-gpg-21.patch"))))
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major+minor version)  "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "02xgky22xgvhgd525khqh64l5i21ca839fj9jzaqdi3yvb8pbq8m"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:phases (modify-phases %standard-phases
-                  (add-before
-                   'check 'pre-check
-                   (lambda* (#:key inputs #:allow-other-keys)
-                     (substitute* "build/tap-driver"
-                       (("/usr/bin/env python") (which "python"))))))))
+     '(#:phases
+       (modify-phases %standard-phases
+         ;; These fail because /var/lib/dbus/machine-id is not present in the
+         ;; build environment.
+         (add-after 'unpack 'disable-failing-tests
+           (lambda _
+             (substitute* "gcr/test-system-prompt.c"
+               (("g_test_add") "//")
+               (("return.*") "return 0;"))
+             #t))
+         (add-before 'check 'pre-check
+           (lambda _
+             ;; Some tests expect to write to $HOME.
+             (setenv "HOME" "/tmp")
+             #t)))))
     (inputs
      `(("dbus" ,dbus)
-       ("gnupg" ,gnupg) ;called as a child process during tests
+       ("gnupg" ,gnupg)                ;called as a child process during tests
        ("libgcrypt" ,libgcrypt)))
     (native-inputs
-     `(("python" ,python-2) ;for tests
+     `(("python" ,python-2)             ;for tests
        ("pkg-config" ,pkg-config)
        ("glib" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
        ("intltool" ,intltool)
+       ("libxml2" ,libxml2)
        ("xsltproc" ,libxslt)))
     ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
     (propagated-inputs
@@ -664,7 +672,7 @@ GNOME Desktop.")
 (define-public gnome-keyring
   (package
     (name "gnome-keyring")
-    (version "3.20.1")
+    (version "3.28.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/" name "/"
@@ -672,7 +680,7 @@ GNOME Desktop.")
                                  name "-" version ".tar.xz"))
              (sha256
               (base32
-               "134ci3mn6jjap59z3lrvyiip7zf2nlw5xvanr44yajs57xr4x5lp"))))
+               "0sk4las4ji8wv9nx8mldzqccmpmkvvr9pdwv9imj26r10xyin5w1"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
@@ -685,11 +693,11 @@ GNOME Desktop.")
                        (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
        #:phases
        (modify-phases %standard-phases
-         (add-before
-          'check 'pre-check
-          (lambda* (#:key inputs #:allow-other-keys)
-            (substitute* "build/tap-driver"
-              (("/usr/bin/env python") (which "python")))))
+         (add-after 'unpack 'fix-/bin/sh-reference
+           (lambda _
+             (substitute* "po/Makefile.in.in"
+               (("/bin/sh") (which "sh")))
+             #t))
          (add-before
           'configure 'fix-docbook
           (lambda* (#:key inputs #:allow-other-keys)
@@ -702,7 +710,6 @@ GNOME Desktop.")
             (setenv "XML_CATALOG_FILES"
                     (string-append (assoc-ref inputs "docbook-xml")
                                    "/xml/dtd/docbook/catalog.xml"))
-
             ;; Rerun the whole thing to avoid version mismatch ("This is
             ;; Automake 1.15.1, but the definition used by this
             ;; AM_INIT_AUTOMAKE comes from Automake 1.15.").  Note: we don't
@@ -713,6 +720,7 @@ GNOME Desktop.")
     (inputs
      `(("libgcrypt" ,libgcrypt)
        ("linux-pam" ,linux-pam)
+       ("openssh" ,openssh)
        ("dbus" ,dbus)
        ("gcr" ,gcr)))
     (native-inputs
@@ -813,7 +821,7 @@ on the GNOME Desktop with a single simple application.")
 (define-public gsettings-desktop-schemas
   (package
     (name "gsettings-desktop-schemas")
-    (version "3.24.1")
+    (version "3.28.0")
     (source
      (origin
       (method url-fetch)
@@ -822,7 +830,7 @@ on the GNOME Desktop with a single simple application.")
                           name "-" version ".tar.xz"))
       (sha256
        (base32
-        "19zfqy58missq5cck13ip8j824hb9whqg2c4cr6hgrlxkwqgm8vn"))))
+        "0rwidacwrxlc54x90h9g3wx2zlisc4vm49vmxi15azmpj1vwvd2c"))))
     (build-system gnu-build-system)
     (inputs
      `(("glib" ,glib)))
@@ -911,7 +919,7 @@ GNOME and KDE desktops to the icon names proposed in the specification.")
 (define-public adwaita-icon-theme
   (package (inherit gnome-icon-theme)
     (name "adwaita-icon-theme")
-    (version "3.26.1")
+    (version "3.28.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -919,7 +927,7 @@ GNOME and KDE desktops to the icon names proposed in the specification.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "17fpahgh5dyckgz7rwqvzgnhx53cx9kr2xw0szprc6bnqy977fi8"))))
+                "0l114ildlb3lz3xymfxxi0wpr2x21rd3cg8slb8jyxynzwfqrbks"))))
     (native-inputs
      `(("gtk-encode-symbolic-svg" ,gtk+ "bin")))))
 
@@ -1192,7 +1200,7 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
 (define-public glade3
   (package
     (name "glade")
-    (version "3.20.2")
+    (version "3.22.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -1200,7 +1208,7 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1vdbqqvf6nrkqml4awrq4pzfwsm5v39wdzg943nys6lmf1am9l87"))))
+                "16p38xavpid51qfy0s26n0n21f9ws1w9k5s65bzh1w7ay8p9my6z"))))
     (build-system glib-or-gtk-build-system)
     (arguments
      `(#:tests? #f ; needs X, GL, and software rendering
@@ -1313,7 +1321,10 @@ dealing with different structured file formats.")
                 "1h3qnqhr0l7pd2bxg69ki6ckl4srdwgr471dpp4jq9i4784hp0v6"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:make-flags '("CC=gcc")
+     `(#:configure-flags
+       (list "--disable-static"
+             "--enable-vala") ; needed for e.g. gnome-mines
+       #:make-flags '("CC=gcc")
        #:phases
        (modify-phases %standard-phases
          ;; Don't patch anything in vendor/ to avoid having to recompute
@@ -1365,6 +1376,7 @@ dealing with different structured file formats.")
        ;; This is the minimum supported Rust version in Librsvg 2.44.
        ("rust" ,rust-1.27)
        ("cargo" ,rust-1.27 "cargo")
+       ("vala" ,vala)
        ("glib" ,glib "bin")                               ; glib-mkenums, etc.
        ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
     (inputs
@@ -2754,7 +2766,7 @@ and other secrets.  It communicates with the \"Secret Service\" using DBus.")
 (define-public five-or-more
   (package
     (name "five-or-more")
-    (version "3.26.0")
+    (version "3.28.0")
     (source
      (origin
        (method url-fetch)
@@ -2763,7 +2775,7 @@ and other secrets.  It communicates with the \"Secret Service\" using DBus.")
                            name "-" version ".tar.xz"))
        (sha256
         (base32
-         "0wkp08xsqr9p9cgdfghi424diajs016b2h4bsfcr5y9xc3rgf93w"))))
+         "1fy4a7qdjqvabm0cl45d6xlx6hy4paxvm0b2paifff73bl250d5c"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
@@ -2785,7 +2797,7 @@ and other secrets.  It communicates with the \"Secret Service\" using DBus.")
 (define-public gnome-mines
   (package
     (name "gnome-mines")
-    (version "3.26.0")
+    (version "3.28.0")
     (source
      (origin
        (method url-fetch)
@@ -2794,21 +2806,21 @@ and other secrets.  It communicates with the \"Secret Service\" using DBus.")
                            name "-" version ".tar.xz"))
        (sha256
         (base32
-         "1sfxdvns8nppdagnhpd9vd7n77sk5rdji3kdqnc78c2p1npiw11b"))))
-    (build-system glib-or-gtk-build-system)
+         "16w55hqaxipcv870n9gpn6qiywbqbyg7bjshaa02r75ias8dfxvf"))))
+    (build-system meson-build-system)
     (arguments
-     '(#:phases
+     `(#:phases
        (modify-phases %standard-phases
-         (add-before 'configure 'patch-/bin/true
-                     (lambda _
-                       (substitute* "configure"
-                         (("/bin/true") (which "true"))))))))
+         (delete 'bootstrap))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
+     `(("glib:bin" ,glib "bin")       ; for glib-compile-resources
+       ("pkg-config" ,pkg-config)
        ("desktop-file-utils" ,desktop-file-utils)
        ("intltool" ,intltool)
        ("itstool" ,itstool)
-       ("xmllint" ,libxml2)))
+       ("vala" ,vala)
+       ("yelp" ,yelp)
+       ("appstream-glib" ,appstream-glib)))
     (inputs
      `(("gtk+" ,gtk+)
        ("libgnome-games-support" ,libgnome-games-support)
@@ -3020,7 +3032,7 @@ permission from user.")
 (define-public geocode-glib
   (package
     (name "geocode-glib")
-    (version "3.20.1")
+    (version "3.26.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/geocode-glib/"
@@ -3028,15 +3040,24 @@ permission from user.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "18iphsx3bybw7lssbb7rxc1rrnsc8vxai521zkqc535zr8rci7v6"))))
-    (build-system gnu-build-system)
+                "1vmydxs5xizcmaxpkfrq75xpj6pqrpdjizxyb30m00h54yqqch7a"))))
+    (build-system meson-build-system)
     (arguments
-     `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
-       ;; work for the builder.  Punt.
-       #:tests? #f))
+     `(#:phases
+       (modify-phases %standard-phases
+         ;; The tests require a bunch of locales.
+         (add-before 'check 'set-locales
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv "GUIX_LOCPATH"
+                     (string-append (assoc-ref inputs "glibc-locales")
+                                    "/lib/locale"))
+             #t)))))
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-mkenums
+       ("glibc-locales" ,glibc-locales) ; for tests
+       ("gettext" ,gettext-minimal)
        ("gobject-introspection" ,gobject-introspection)
+       ("gtk-doc" ,gtk-doc)
        ("pkg-config" ,pkg-config)
        ("json-glib" ,json-glib)))
     (propagated-inputs
@@ -3105,7 +3126,7 @@ service via the system message bus.")
 (define-public libgweather
   (package
     (name "libgweather")
-    (version "3.26.1")
+    (version "3.28.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -3113,30 +3134,14 @@ service via the system message bus.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1f64ix7acj0j0qvxwxaazii2bhsjgh5ang1kw14fkg25ndq899zw"))))
-    (build-system gnu-build-system)
+                "0xfy5ghwvnz2g9074dy6512m4z2pv66pmja14vhi9imgacbfh708"))))
+    (build-system meson-build-system)
     (arguments
-     `(#:configure-flags
-       `(,(string-append "--with-zoneinfo-dir="
+     `(#:tests? #f ; one of two tests requires network access
+       #:configure-flags
+       `(,(string-append "-Dzoneinfo_dir="
                          (assoc-ref %build-inputs "tzdata")
-                         "/share/zoneinfo"))
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'check 'pre-check
-           (lambda* (#:key inputs #:allow-other-keys)
-             (substitute* "data/check-timezones.sh"
-               (("/usr/share/zoneinfo/zone.tab")
-                (string-append (assoc-ref inputs "tzdata")
-                               "/share/zoneinfo/zone.tab")))
-             #t))
-         (replace 'install
-           (lambda _
-             (zero?
-              (system* "make"
-                       ;; Install vala bindings into $out.
-                       (string-append "vapidir=" %output
-                                      "/share/vala/vapi")
-                       "install")))))))
+                         "/share/zoneinfo"))))
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-mkenums
        ("gobject-introspection" ,gobject-introspection)
@@ -3149,10 +3154,10 @@ service via the system message bus.")
      `(("gtk+" ,gtk+)
        ("gdk-pixbuf" ,gdk-pixbuf)
        ("libxml2" ,libxml2)
-       ("libsoup" ,libsoup)))
-    (inputs
-     `(("tzdata" ,tzdata)
+       ("libsoup" ,libsoup)
        ("geocode-glib" ,geocode-glib)))
+    (inputs
+     `(("tzdata" ,tzdata)))
     (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
     (synopsis "Location, time zone, and weather library for GNOME")
     (description
@@ -3163,7 +3168,7 @@ services for numerous locations.")
 (define-public gnome-settings-daemon
   (package
     (name "gnome-settings-daemon")
-    (version "3.24.3")
+    (version "3.28.1")
     (source
      (origin
        (method url-fetch)
@@ -3172,20 +3177,31 @@ services for numerous locations.")
                            name "-" version ".tar.xz"))
        (sha256
         (base32
-         "14w5jhpq02mbcxvn41qcj3cjfqdr3sgzl96c6glwpdrjphw61i38"))))
-    (build-system glib-or-gtk-build-system)
+         "0z9dip9p0iav646cmxisii5sbkdr9hmaklc5fzvschpbjkhphksr"))))
+    (build-system meson-build-system)
     (arguments
-     `(;; Color management test can't reach the colord system service.
+     `(#:glib-or-gtk? #t
+       #:configure-flags
+       (list (string-append "-Dudev_dir="
+                            (assoc-ref %outputs "out")
+                            "/lib/udev/rules.d/")
+             ;; Otherwise, the RUNPATH will lack the final path component.
+             (string-append "-Dc_link_args=-Wl,-rpath="
+                            (assoc-ref %outputs "out")
+                            "/lib/gnome-settings-daemon-3.0"))
+       ;; Color management test can't reach the colord system service.
        #:tests? #f))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
+     `(("glib:bin" ,glib "bin")     ; for glib-mkenums
+       ("pkg-config" ,pkg-config)
        ("intltool" ,intltool)
        ("xsltproc" ,libxslt)
        ("libxml2" ,libxml2)                       ;for XML_CATALOG_FILES
        ("docbook-xml" ,docbook-xml-4.2)
        ("docbook-xsl" ,docbook-xsl)))
     (inputs
-     `(("colord" ,colord)
+     `(("alsa-lib" ,alsa-lib)
+       ("colord" ,colord)
        ("libgudev" ,libgudev)
        ("upower" ,upower)
        ("polkit" ,polkit)
@@ -3205,6 +3221,7 @@ services for numerous locations.")
        ("libwacom" ,libwacom)
        ("librsvg" ,librsvg)
        ("xf86-input-wacom" ,xf86-input-wacom)
+       ("wayland" ,wayland)
        ("network-manager" ,network-manager)))
     (home-page "https://www.gnome.org")
     (synopsis "GNOME settings daemon")
@@ -3218,7 +3235,7 @@ settings, themes, mouse settings, and startup of other daemons.")
 (define-public totem-pl-parser
  (package
    (name "totem-pl-parser")
-   (version "3.10.8")
+   (version "3.26.1")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/totem-pl-parser/"
@@ -3226,8 +3243,8 @@ settings, themes, mouse settings, and startup of other daemons.")
                                 "totem-pl-parser-" version ".tar.xz"))
             (sha256
              (base32
-              "0ayxg0gfs5h5jhr811ja5hxlhryklzp6jlal2ach9wym2c3hmigz"))))
-   (build-system gnu-build-system)
+              "0k5pnka907invgds48d73c1xx1a366v5dcld3gr2l1dgmjwc9qka"))))
+   (build-system meson-build-system)
    (arguments
     ;; FIXME: Tests require gvfs.
     `(#:tests? #f))
@@ -3239,11 +3256,11 @@ settings, themes, mouse settings, and startup of other daemons.")
    (propagated-inputs
     `(("glib" ,glib)
       ("gmime" ,gmime)
+      ("libarchive" ,libarchive)
+      ("libgcrypt" ,libgcrypt)
       ("libxml2" ,libxml2)))
    (inputs
-    `(("libarchive" ,libarchive)
-      ("libgcrypt" ,libgcrypt)
-      ("nettle" ,nettle)
+    `(("nettle" ,nettle)
       ("libsoup" ,libsoup)))
    (home-page "https://projects.gnome.org/totem")
    (synopsis "Library to parse and save media playlists for GNOME")
@@ -3290,7 +3307,7 @@ which are easy to play with the aid of a mouse.")
 (define-public devhelp
   (package
     (name "devhelp")
-    (version "3.26.0")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -3298,10 +3315,11 @@ which are easy to play with the aid of a mouse.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0f4fmkqzn95zmc2paljma33fkj74qj1m6n23qrc5hfwmgx7p3wkb"))))
+                "08a8xizjqz68k30zd37r7g516azhan9bbrjsvv10hjd5dg3f476s"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("intltool" ,intltool)
+       ("itstool" ,itstool)
        ("pkg-config" ,pkg-config)))
     (inputs
      `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
@@ -3572,7 +3590,7 @@ queries upon that data.")
 (define-public libgnome-games-support
   (package
     (name "libgnome-games-support")
-    (version "1.2.3")
+    (version "1.4.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -3580,7 +3598,7 @@ queries upon that data.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1vwad7kqy7yd6wqyr71nq0blh7m53r3lz6ya16dmh942kd0w48v1"))))
+                "1j7lfcnc29lgn8ppn13wkn9w2y1n3lsapagwp91zh3bf0h2h4hv1"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases
@@ -3951,7 +3969,7 @@ supports playlists, song ratings, and any codecs installed through gstreamer.")
 (define-public eog
  (package
    (name "eog")
-   (version "3.26.2")
+   (version "3.28.2")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -3959,25 +3977,29 @@ supports playlists, song ratings, and any codecs installed through gstreamer.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "1b87i31mxzayd3knn9zg00y816d093qrbyx556w8a03xz96ksgmm"))))
-   (build-system glib-or-gtk-build-system)
+              "1gasrfqi7qrzdq1idh29r0n6ikkqjb6pbp7a8k5krfz5hkhyfin0"))))
+   (build-system meson-build-system)
    (arguments
-    `(#:phases
+    `(#:configure-flags
+      ;; Otherwise, the RUNPATH will lack the final 'eog' path component.
+      (list (string-append "-Dc_link_args=-Wl,-rpath="
+                           (assoc-ref %outputs "out") "/lib/eog"))
+      #:phases
       (modify-phases %standard-phases
-        (add-after
-         'install 'wrap-eog
-         (lambda* (#:key outputs #:allow-other-keys)
-           (let ((out               (assoc-ref outputs "out"))
-                 (gi-typelib-path   (getenv "GI_TYPELIB_PATH")))
-             (wrap-program (string-append out "/bin/eog")
-               `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
-           #t)))))
+        (add-after 'install 'wrap-eog
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let ((out               (assoc-ref outputs "out"))
+                  (gi-typelib-path   (getenv "GI_TYPELIB_PATH")))
+              (wrap-program (string-append out "/bin/eog")
+                `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
+            #t)))))
    (propagated-inputs
     `(("dconf" ,dconf)))
    (native-inputs
     `(("intltool" ,intltool)
       ("itstool" ,itstool)
       ("glib" ,glib "bin")
+      ("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
       ("gobject-introspection" ,gobject-introspection)
       ("pkg-config" ,pkg-config)
       ("xmllint" ,libxml2)))
@@ -4047,15 +4069,19 @@ side panel;
 (define-public libgudev
   (package
     (name "libgudev")
-    (version "230")
+    (version "232")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
                                   version "/" name "-" version ".tar.xz"))
               (sha256
                (base32
-                "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
+                "0q3qki451zzgdjazlgshsfzbbm0in40lyx7dyrag7kbkqnwv4k7f"))))
     (build-system gnu-build-system)
+    (arguments
+     '(#:configure-flags
+       ;; umockdev depends on libgudev.
+       (list "--disable-umockdev")))
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
        ("gobject-introspection" ,gobject-introspection)
@@ -4074,7 +4100,7 @@ part of udev-extras, then udev, then systemd.  It's now a project on its own.")
 (define-public gvfs
   (package
     (name "gvfs")
-    (version "1.32.1")
+    (version "1.36.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4082,13 +4108,21 @@ part of udev-extras, then udev, then systemd.  It's now a project on its own.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1pkahczniar1yyas7awcqpkb4ca8l7qa4msn6mr29m89mgnwkdnh"))))
+                "1xq105596sk9yram5a143b369wpaiiwc9gz86n0j1kfr7nipkqn4"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:tests? #f)) ; XXX: requiring `pidof'
+     '(#:tests? #f ; XXX: requiring `pidof'
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-broken-autogen-script
+           (lambda _ (delete-file "autogen.sh") #t)))))
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
-       ("intltool" ,intltool)
+       ("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("gettext" ,gettext-minimal)
+       ("gtk-doc" ,gtk-doc)
+       ("libtool" ,libtool)
        ("pkg-config" ,pkg-config)
        ("xsltproc" ,libxslt)))
     (inputs
@@ -4106,6 +4140,7 @@ part of udev-extras, then udev, then systemd.  It's now a project on its own.")
        ("libgcrypt" ,libgcrypt)
        ("libgphoto2" ,libgphoto2)
        ("libgudev" ,libgudev)
+       ("libimobiledevice" ,libimobiledevice)
        ("libmtp" ,libmtp)
        ("libsecret" ,libsecret)
        ("libsmbclient" ,samba)
@@ -4394,7 +4429,7 @@ of running programs and invoke methods on those interfaces.")
 (define-public yelp-xsl
   (package
     (name "yelp-xsl")
-    (version "3.20.1")
+    (version "3.28.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4402,7 +4437,7 @@ of running programs and invoke methods on those interfaces.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "183vz4aw8fcmw8k8q7r4zrm1p76gwg2cca1fsdrkaiyabng88qfw"))))
+                "14rznm1qpsnmkwksnkd5j7zplakl01kvrcw0fdmd5gdc65xz9kcc"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("intltool" ,intltool)
@@ -4418,7 +4453,7 @@ to format Docbook and Mallard documents.")
 (define-public yelp
   (package
     (name "yelp")
-    (version "3.22.0")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4426,7 +4461,7 @@ to format Docbook and Mallard documents.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "13kpi0qmnfx2xwizyhmf5i5xaw9ckcn1k7v0289p7als4dybf5l6"))))
+                "033w5qnhm495pnvscnb3k2dagzgq4fsnzcrh0k2rgr10mw2mv2p8"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
@@ -4452,7 +4487,7 @@ freedesktop.org help system specification.")
 (define-public yelp-tools
   (package
     (name "yelp-tools")
-    (version "3.18.0")
+    (version "3.28.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4460,7 +4495,7 @@ freedesktop.org help system specification.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0ck9f78c1xka8a823bd7w1k0gdn4k19zvaj7viy2d5r3h1gxdhf6"))))
+                "1b61dmlb1sd50fgq6zgnkcpx2s1py33q0x9cx67fzpsr4gmgxnw2"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -4597,7 +4632,7 @@ share them with others via social networking and more.")
 (define-public file-roller
   (package
     (name "file-roller")
-    (version "3.26.2")
+    (version "3.28.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4605,20 +4640,14 @@ share them with others via social networking and more.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "19d8pc5z2xzhnicgaysxmwx3ghwzl4cw8kygd6nsw69g3j77nrry"))))
-    (build-system glib-or-gtk-build-system)
-    (arguments
-     '(#:phases
-       (modify-phases %standard-phases
-         (add-before 'install 'skip-gtk-update-icon-cache
-           (lambda _
-             ;; Don't create 'icon-theme.cache'
-             (substitute* (find-files "data" "^Makefile$")
-               (("gtk-update-icon-cache") (which "true")))
-             #t)))))
+                "15pn2m80x45bzibig4zrqybnbr0n1f9wpqx7f2p6difldns3jwf1"))))
+    (build-system meson-build-system)
     (native-inputs
-     `(("intltool" ,intltool)
-       ("pkg-config" ,pkg-config)))
+     `(("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
+       ("intltool" ,intltool)
+       ("pkg-config" ,pkg-config)
+       ("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
+       ("glib:bin" ,glib "bin")))
     ;; TODO: Add libnautilus.
     (inputs
      `(("gtk+" ,gtk+)
@@ -4639,7 +4668,7 @@ such as gzip tarballs.")
 (define-public gnome-session
   (package
     (name "gnome-session")
-    (version "3.24.1")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4647,25 +4676,21 @@ such as gzip tarballs.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1vkfjsgks9czajivcg3y1krzlnilv2cnzzbdc7wrasrriqilji1v"))))
+                "14nmbirgrp2nm16khbz109saqdlinlbrlhjnbjydpnrlimfgg4xq"))))
     (arguments
-     '(#:phases
+     '(#:glib-or-gtk? #t
+       #:phases
        (modify-phases %standard-phases
          (add-before 'configure 'pre-configure
            (lambda* (#:key outputs #:allow-other-keys)
              ;; Use elogind instead of systemd.
-             (substitute* "configure"
-               (("libsystemd-login >= 183 libsystemd-daemon libsystemd-journal")
-                "libelogind")
-               (("systemd") "elogind"))
+             (substitute* "meson.build"
+               (("libsystemd-login") "libelogind")
+               (("and libsystemd_daemon_dep.found.*") ","))
              (substitute* "gnome-session/gsm-systemd.c"
                (("#include <systemd/sd-login.h>")
                 "#include <elogind/sd-login.h>"))
-             ;; Remove uses of the systemd journal.
-             (substitute* "gnome-session/main.c"
-               (("#ifdef HAVE_SYSTEMD") "#if 0"))
-             (substitute* "gnome-session/gsm-manager.c"
-               (("#ifdef HAVE_SYSTEMD") "#if 0"))
+             ;; Remove uses of the systemd daemon.
              (substitute* "gnome-session/gsm-autostart-app.c"
                (("#ifdef HAVE_SYSTEMD") "#if 0"))
              #t))
@@ -4687,13 +4712,19 @@ such as gzip tarballs.")
                #t))))
 
        #:configure-flags
-       '("--enable-elogind")))
-    (build-system glib-or-gtk-build-system)
+       '("-Ddocbook=false" ; FIXME: disabled because of docbook validation error
+         "-Dman=false" ; FIXME: disabled because of docbook validation error
+         "-Dsystemd_journal=false")))
+    (build-system meson-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
        ("pkg-config" ,pkg-config)
        ("intltool" ,intltool)
-       ("xsltproc" ,libxslt)))
+       ("xsltproc" ,libxslt)
+       ("libxml2" ,libxml2) ;for 'XML_CATALOG_FILES'
+       ("docbook-xsl" ,docbook-xsl)
+       ("docbook-xml" ,docbook-xml)
+       ("xmlto" ,xmlto)))
     (inputs
      `(("elogind" ,elogind)
        ("gnome-desktop" ,gnome-desktop)
@@ -4716,7 +4747,7 @@ configuration program to choose applications starting on login.")
 (define-public gjs
   (package
     (name "gjs")
-    (version "1.48.6")
+    (version "1.52.3")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4724,7 +4755,7 @@ configuration program to choose applications starting on login.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "04nkig077r7xq55dxg9v46w8i7p8zkkdyja92yv81grq9fx6apz8"))))
+                "1z4n15wdz6pbqd2hfzrqc8mmprhv50v4jk43p08v0xv07yldh8ff"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases
@@ -4757,7 +4788,7 @@ configuration program to choose applications starting on login.")
      ;; These are all in the Requires.private field of gjs-1.0.pc.
      `(("cairo" ,cairo)
        ("gobject-introspection" ,gobject-introspection)
-       ("mozjs" ,mozjs-38)))
+       ("mozjs" ,mozjs-52)))
     (inputs
      `(("gtk+" ,gtk+)
        ("readline" ,readline)))
@@ -4810,7 +4841,7 @@ javascript engine and the GObject introspection framework.")
      `(("glib" ,glib)
        ("gspell" ,gspell)
        ("gtk+" ,gtk+)
-       ("gtksourceview" ,gtksourceview)
+       ("gtksourceview" ,gtksourceview-3)
        ("libpeas" ,libpeas)
        ("libxml2" ,libxml2)
        ("iso-codes" ,iso-codes)
@@ -4831,7 +4862,7 @@ powerful general purpose text editor.")
 (define-public zenity
   (package
     (name "zenity")
-    (version "3.24.0")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4839,7 +4870,7 @@ powerful general purpose text editor.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1xzpm63cib2xzr99phplhbcjzy7lahggk3gp60dvrrclxhka1w3g"))))
+                "0swavrkc5ps3fwzy6h6l5mmim0wwy10xrq0qqkay5d0zf9a965yv"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("gettext" ,gettext-minimal)
@@ -4858,7 +4889,7 @@ to display dialog boxes from the commandline and shell scripts.")
 (define-public mutter
   (package
     (name "mutter")
-    (version "3.24.4")
+    (version "3.28.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4866,7 +4897,7 @@ to display dialog boxes from the commandline and shell scripts.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1slspy5krbqfvnma72lvdnxjf8ag2cvxssa8bvi7y3xxy7xv603k"))))
+                "0ighs1zvlssgq16v1h3vg280za7y448snq65gc5m1zmqqawqkymg"))))
     ;; NOTE: Since version 3.21.x, mutter now bundles and exports forked
     ;; versions of cogl and clutter.  As a result, many of the inputs,
     ;; propagated-inputs, and configure flags used in cogl and clutter are
@@ -4962,7 +4993,7 @@ window manager.")
 (define-public gnome-online-accounts
   (package
     (name "gnome-online-accounts")
-    (version "3.26.2")
+    (version "3.28.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -4970,7 +5001,7 @@ window manager.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1l8p1ghknmkmjpnpl7jr53j66qbzpikickzbmrz0aczyhq6pdy29"))))
+                "035lmm21imr7ddpzffqabv53g3ggjscmqvlzy3j1qkv00zrlxg47"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
@@ -4999,7 +5030,7 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
 (define-public evolution-data-server
   (package
     (name "evolution-data-server")
-    (version "3.28.1")
+    (version "3.28.3")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5007,7 +5038,7 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "12b9lfgwd57rzn9394xrbvl9ym5aqldpz9v7c9a421dsv8dgq13b"))))
+                "11sq795115vrcgxl9svscm6wg8isjj784c3d84qzb6z47zq92zj3"))))
     (build-system cmake-build-system)
     (arguments
      '(;; XXX FIXME: 11/85 tests are failing.
@@ -5150,7 +5181,7 @@ users.")
 (define-public network-manager
   (package
     (name "network-manager")
-    (version "1.8.4")
+    (version "1.10.10")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/NetworkManager/"
@@ -5158,7 +5189,7 @@ users.")
                                   "NetworkManager-" version ".tar.xz"))
               (sha256
                (base32
-                "04lj081a5cdkhcnj1xs77chhy08d2h0648kmj1csxp46cfrjwpk2"))
+                "1jn3g0f2x1irc88awqp8m3gnpdx1whqqqbdgkbgr4x55s702jki4"))
               (snippet
               '(begin
                  (use-modules (guix build utils))
@@ -5212,6 +5243,23 @@ users.")
                (("src/devices/tests/test-lldp") " ")
                (("src/tests/test-route-manager-linux") " "))
              #t))
+         (add-after 'unpack 'delete-failing-tests
+           (lambda _
+             ;; FIXME: These four tests fail for unknown reasons.
+             ;; ERROR:libnm-core/tests/test-general.c:5842:
+             ;;   _json_config_check_valid: assertion failed (res == expected): (1 == 0)
+             ;; ERROR:libnm-core/tests/test-keyfile.c:647:
+             ;;   test_team_conf_read_invalid: assertion failed: (nm_setting_team_get_config (s_team) == NULL)
+             ;; ERROR:libnm-core/tests/test-setting.c:907:
+             ;;   _test_team_config_sync: assertion failed: (nm_streq0 (nm_setting_team_get_runner (s_team), runner))
+             ;; NetworkManager:ERROR:src/platform/tests/test-nmp-object.c:397:
+             ;;   test_cache_link: assertion failed: (nmp_object_is_visible (obj_new))
+             (substitute* "Makefile.in"
+               (("libnm-core/tests/test-general") " ")
+               (("libnm-core/tests/test-keyfile") " ")
+               (("libnm-core/tests/test-setting\\$\\(EXEEXT\\)") " ")
+               (("src/platform/tests/test-nmp-object") " "))
+             #t))
          (add-before 'check 'pre-check
            (lambda _
              ;; For the missing /etc/machine-id.
@@ -5219,12 +5267,13 @@ users.")
              #t))
          (replace 'install
            (lambda _
-             (zero? (system* "make"
-                             "sysconfdir=/tmp"
-                             "rundir=/tmp"
-                             "statedir=/tmp"
-                             "nmstatedir=/tmp/nm"
-                             "install")))))))
+             (invoke "make"
+                     "sysconfdir=/tmp"
+                     "rundir=/tmp"
+                     "statedir=/tmp"
+                     "nmstatedir=/tmp/nm"
+                     "install")
+             #t)))))
     (propagated-inputs
      `(("glib" ,glib)))
     (native-inputs
@@ -5275,7 +5324,7 @@ services.")
 (define-public network-manager-openvpn
   (package
     (name "network-manager-openvpn")
-    (version "1.8.0")
+    (version "1.8.4")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -5284,7 +5333,7 @@ services.")
                     "/NetworkManager-openvpn-" version ".tar.xz"))
               (sha256
                (base32
-                "1973n89g66a3jfx8r45a811fga4kadh6r1w35cb25cz1mlii2vhn"))))
+                "0gyrv46h9k17qym48qacq4zpxbap6hi17shn921824zm98m2bdvr"))))
     (build-system gnu-build-system)
     (arguments
      '(#:configure-flags '("--enable-absolute-paths")))
@@ -5329,7 +5378,7 @@ to virtual private networks (VPNs) via OpenVPN.")
 (define-public network-manager-applet
   (package
     (name "network-manager-applet")
-    (version "1.8.4")
+    (version "1.8.14")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5337,7 +5386,7 @@ to virtual private networks (VPNs) via OpenVPN.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0ag3pvjp58ykrzsjfbdxi0j5xd2i796jk7nns67zy03xwg9i0l0h"))))
+                "1js0i2kwfklahsn77qgxzdscy33drrlym3mrj1qhlw0zf8ri56ya"))))
     (build-system glib-or-gtk-build-system)
     (arguments '(#:configure-flags '("--disable-migration")))
     (native-inputs
@@ -5408,7 +5457,7 @@ libxml2.")
 (define-public gdm
   (package
     (name "gdm")
-    (version "3.26.2.1")
+    (version "3.28.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5417,7 +5466,7 @@ libxml2.")
               (patches (search-patches "gdm-CVE-2018-14424.patch"))
               (sha256
                (base32
-                "0mxdal6hh345xk2xqmw5192jgpprkbcv1d4bwmnl4arcc00cpp8p"))))
+                "0wdm1503x66n1crdlmzmincbd2hccpxsdgjsl5anx3yjpdzs0hb0"))))
     (build-system glib-or-gtk-build-system)
     (arguments
      '(#:configure-flags
@@ -5588,7 +5637,7 @@ usage and information about running processes.")
 (define-public gnome-bluetooth
   (package
     (name "gnome-bluetooth")
-    (version "3.20.1")
+    (version "3.28.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5596,10 +5645,11 @@ usage and information about running processes.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1zlqcz6jz4vzzr8gd1678i9s4015kiwcpr5szrwz4kmryfsm147a"))))
-    (build-system glib-or-gtk-build-system)
+                "0q7yzklrlayj99risj096mr5x35anx94wvr6nbf6pwbvvzv7453p"))))
+    (build-system meson-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
+       ("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
        ("gobject-introspection" ,gobject-introspection)
        ("intltool" ,intltool)
        ("pkg-config" ,pkg-config)
@@ -5621,7 +5671,7 @@ devices using the GNOME desktop.")
 (define-public gnome-control-center
   (package
     (name "gnome-control-center")
-    (version "3.24.3")
+    (version "3.28.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5629,10 +5679,13 @@ devices using the GNOME desktop.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "18ncjqjj93a39sla2zjr9i6pw59yh87p4jla899lmvi2qajd5923"))))
-    (build-system glib-or-gtk-build-system)
+                "0d6pjdbsra16nav8201kaadja5yma92bhziki9601ilk2ry3v7pz"))))
+    (build-system meson-build-system)
     (arguments
-     '(#:phases
+     '(#:glib-or-gtk? #t
+       #:configure-flags
+       (list "-Dcheese=false")
+       #:phases
        (modify-phases %standard-phases
          (add-before 'configure 'patch-paths
            (lambda* (#:key inputs #:allow-other-keys)
@@ -5647,6 +5700,7 @@ devices using the GNOME desktop.")
                #t))))))
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
+       ("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
        ("intltool" ,intltool)
        ("pkg-config" ,pkg-config)
        ("xsltproc" ,libxslt)))
@@ -5692,7 +5746,7 @@ properties, screen resolution, and other GNOME parameters.")
 (define-public gnome-shell
   (package
     (name "gnome-shell")
-    (version "3.24.3")
+    (version "3.28.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5700,17 +5754,11 @@ properties, screen resolution, and other GNOME parameters.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1f20x36ymkp1j667hb7s7byly2gqc4m0anldy3qwp38vm8437caq"))
+                "1b9n89ij2g5nqaqp7a13jnqcd8qa2v9p55rbi71al3xvqk091ri7"))
               (patches (search-patches "gnome-shell-theme.patch"))
               (modules '((guix build utils)))
               (snippet
                #~(begin
-                   ;; CSS files have to be regenerated from the .scss source
-                   ;; that 'gnome-shell-theme.patch' modifies.
-                   (for-each delete-file
-                             (find-files "data/theme"
-                                         "^gnome-shell.*\\.css$"))
-
                    ;; Copy images for use on the GDM log-in screen.
                    (copy-file #$(file-append %artwork-repository
                                              "/slim/0.x/background.png")
@@ -5720,48 +5768,65 @@ properties, screen resolution, and other GNOME parameters.")
                            #$(file-append %artwork-repository
                                           "/logo/Guix-horizontal-white.svg"))
                    #t))))
-    (build-system glib-or-gtk-build-system)
+    (build-system meson-build-system)
     (arguments
-     '(#:phases
+     '(#:glib-or-gtk? #t
+       #:configure-flags
+       (list "-Dsystemd=false"
+             ;; Otherwise, the RUNPATH will lack the final path component.
+             (string-append "-Dc_link_args=-Wl,-rpath="
+                            (assoc-ref %outputs "out")
+                            "/lib/gnome-shell"))
+       #:phases
        (modify-phases %standard-phases
-         (add-before 'build 'rebuild-css
-           (lambda _
-             ;; Rebuild the CSS files from the .scss files that our patch
-             ;; modifies.
-             (invoke "make" "-C" "data"
-                     "theme/gnome-shell.css"
-                     "theme/gnome-shell-high-contrast.css")))
-         (replace 'install
+         (add-after 'unpack 'fix-keysdir
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out     (assoc-ref outputs "out"))
                     (keysdir (string-append
                               out "/share/gnome-control-center/keybindings")))
-               (zero? (system* "make"
-                               (string-append "keysdir=" keysdir)
-                               "install")))))
-         (add-after
-          'install 'wrap-programs
-          (lambda* (#:key outputs #:allow-other-keys)
-            (let ((out              (assoc-ref outputs "out"))
-                  (gi-typelib-path  (getenv "GI_TYPELIB_PATH"))
-                  (python-path      (getenv "PYTHONPATH")))
-              (wrap-program (string-append out "/bin/gnome-shell")
-                `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
-              (for-each
-               (lambda (prog)
-                 (wrap-program (string-append out "/bin/" prog)
-                   `("PYTHONPATH"      ":" prefix (,python-path))
-                   `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
-               '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
-              #t))))))
+               (substitute* "meson.build"
+                 (("keysdir =.*")
+                  (string-append "keysdir = '" keysdir "'\n")))
+               #t)))
+         (add-before 'check 'pre-check
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; Tests require a running X server.
+             (system "Xvfb :1 &")
+             (setenv "DISPLAY" ":1")
+             #t))
+         (add-after 'install 'wrap-programs
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((out              (assoc-ref outputs "out"))
+                   (gi-typelib-path  (getenv "GI_TYPELIB_PATH"))
+                   (python-path      (getenv "PYTHONPATH")))
+               (wrap-program (string-append out "/bin/gnome-shell")
+                 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
+                 ;; FIXME: gnome-shell loads these libraries with unqualified
+                 ;; names only, so they need to be on LD_LIBRARY_PATH.  The
+                 ;; alternative might be to patch gnome-shell.
+                 `("LD_LIBRARY_PATH" ":" prefix
+                   ,(map (lambda (pkg)
+                           (string-append (assoc-ref inputs pkg) "/lib"))
+                         '("gnome-bluetooth" "librsvg" "libgweather"))))
+               (for-each
+                (lambda (prog)
+                  (wrap-program (string-append out "/bin/" prog)
+                    `("PYTHONPATH"      ":" prefix (,python-path))
+                    `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
+                '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
+               #t))))))
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
+       ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
        ("gobject-introspection" ,gobject-introspection)
        ("intltool" ,intltool)
        ("pkg-config" ,pkg-config)
        ("python" ,python)
+       ("ruby-sass" ,ruby-sass)
+       ("sassc" ,sassc)
        ("xsltproc" ,libxslt)
-       ("ruby-sass" ,ruby-sass)))
+       ;; For tests
+       ("xorg-server" ,xorg-server)))
     (inputs
      `(("accountsservice" ,accountsservice)
        ("caribou" ,caribou)
@@ -5792,9 +5857,7 @@ properties, screen resolution, and other GNOME parameters.")
        ;; XXX: These requirements were added in 3.24, but no mention in NEWS.
        ;; Missing propagation? See also: <https://bugs.gnu.org/27264>
        ("librsvg" ,librsvg)
-       ("geoclue" ,geoclue)
-       ;; XXX: required by libgjs.la.
-       ("readline" ,readline)))
+       ("geoclue" ,geoclue)))
     (synopsis "Desktop shell for GNOME")
     (home-page "https://wiki.gnome.org/Projects/GnomeShell")
     (description
@@ -5873,7 +5936,7 @@ easy, safe, and automatic.")
 (define-public tracker
   (package
     (name "tracker")
-    (version "1.12.3")
+    (version "2.0.4")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5881,8 +5944,43 @@ easy, safe, and automatic.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1mpq418lzba7fad0w0m3bnxvz3khf461b5zya8zmq5n1g0w99ki3"))))
+                "1mfc5lv820kr7ssi7hldn25gmshh65k19kh478qjsnb64sshsbyf"))))
     (build-system glib-or-gtk-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-broken-tests
+           (lambda _
+             ;; FIXME: Most of these fail with GLib-GIO-FATAL-ERROR: Settings
+             ;; schema 'org.freedesktop.Tracker.FTS' is not installed.
+             (substitute* "tests/libtracker-miner/Makefile.in"
+               (("tracker-file-notifier-test\\$\\(EXEEXT\\)") "")
+               (("tracker-miner-fs-test\\$\\(EXEEXT\\)") "")
+               (("tracker-monitor-test\\$\\(EXEEXT\\)") ""))
+             (substitute* "tests/libtracker-fts/Makefile.in"
+               (("tracker-fts-test\\$\\(EXEEXT\\)") ""))
+             (substitute* "tests/libtracker-data/Makefile.in"
+               (("tracker-ontology\\$\\(EXEEXT\\)") "")
+               (("tracker-ontology-change\\$\\(EXEEXT\\)") "")
+               (("tracker-backup\\$\\(EXEEXT\\)") "")
+               (("tracker-sparql-blank\\$\\(EXEEXT\\)") "")
+               (("tracker-sparql\\$\\(EXEEXT\\)") ""))
+             ;; These fail because the SPARQL backend could not be loaded.
+             ;; That's because /etc/machine-id is missing, but
+             ;; DBUS_FATAL_WARNINGS does not help here.
+             (substitute* "tests/libtracker-sparql/Makefile.in"
+               (("tracker-gb-737023-test\\$\\(EXEEXT\\)") "")
+               (("tracker-sparql-test\\$\\(EXEEXT\\)") ""))
+             (substitute* "tests/tracker-steroids/Makefile.in"
+               (("tracker-test\\$\\(EXEEXT\\)") ""))
+             #t))
+         ;; Two tests fail if LANG is not set.
+         (add-before 'check 'pre-check
+           (lambda _
+             (setenv "LANG" "en_US.UTF-8")
+             ;; For the missing /etc/machine-id.
+             (setenv "DBUS_FATAL_WARNINGS" "0")
+             #t)))))
     (native-inputs
      `(("gnome-common" ,gnome-common)
        ("gobject-introspection" ,gobject-introspection)
@@ -5896,6 +5994,7 @@ easy, safe, and automatic.")
        ("gst-plugins-base" ,gst-plugins-base)
        ("sqlite" ,sqlite)
        ("nettle" ,nettle)  ; XXX why is this needed?
+       ("python" ,python)
        ("poppler" ,poppler)
        ("libgsf" ,libgsf)
        ("libexif" ,libexif)
@@ -5917,7 +6016,6 @@ easy, safe, and automatic.")
        ("libseccomp" ,libseccomp)
        ("libsoup" ,libsoup)
        ("libuuid" ,util-linux)))
-    (arguments `(#:tests? #f))  ; XXX FIXME enable tests (some fail)
     (synopsis "Metadata database, indexer and search tool")
     (home-page "https://wiki.gnome.org/Projects/Tracker")
     (description
@@ -5933,7 +6031,7 @@ shared object databases, search tools and indexing.")
 (define-public nautilus
   (package
     (name "nautilus")
-    (version "3.26.2")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -5941,7 +6039,7 @@ shared object databases, search tools and indexing.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1d0l4vgcjqj4671hb6s2a56baqlasbxn3wl6vfrpdsk5qq299jbr"))))
+                "19dhpa2ylrg8d5274lahy7xqr2p9z3jnq1h4qmsh95czkpy7is4w"))))
     (build-system meson-build-system)
     (arguments
      '(#:glib-or-gtk? #t
@@ -5957,6 +6055,7 @@ shared object databases, search tools and indexing.")
        ("pkg-config" ,pkg-config)))
     (inputs
      `(("dconf" ,dconf)
+       ("gexiv2" ,gexiv2)
        ("gvfs" ,gvfs)
        ("exempi" ,exempi)
        ("gnome-desktop" ,gnome-desktop)
@@ -6047,7 +6146,7 @@ can add your own files to the collection.")
 (define-public gnome-screenshot
   (package
     (name "gnome-screenshot")
-    (version "3.22.0")
+    (version "3.26.0")
     (source
      (origin
        (method url-fetch)
@@ -6056,11 +6155,14 @@ can add your own files to the collection.")
                            name "-" version ".tar.xz"))
        (sha256
         (base32
-         "0c02n1hgv21m4082jx399b1yazsc0cr07ba8k0pv8v3w7i5z21ca"))))
-    (build-system glib-or-gtk-build-system)
+         "1fy8fjl29i3xhj8caik03d3za06x96xgkk8r4fwz88iqbmci3g0v"))))
+    (build-system meson-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
+       ("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache
+       ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
        ("intltool" ,intltool)
+       ("appstream-glib" ,appstream-glib)
        ("pkg-config" ,pkg-config)))
     (inputs
      `(("gtk+" ,gtk+)
@@ -6078,7 +6180,7 @@ beautifying border effects.")
 (define-public dconf-editor
   (package
     (name "dconf-editor")
-    (version "3.26.2")
+    (version "3.28.0")
     (source
      (origin
        (method url-fetch)
@@ -6087,21 +6189,14 @@ beautifying border effects.")
                            name "-" version ".tar.xz"))
        (sha256
         (base32
-         "1lcarg8igsqpq4iv5834mf9kz4cmfhfw11bwy3x7v7f497z57d18"))))
-    (build-system glib-or-gtk-build-system)
-    (arguments
-     '(#:phases
-       (modify-phases %standard-phases
-         (add-before 'install 'skip-gtk-update-icon-cache
-           (lambda _
-             ;; Don't create 'icon-theme.cache'.
-             (substitute* "editor/Makefile"
-               (("gtk-update-icon-cache") "true"))
-             #t)))))
+         "0nhcpwqrkmpxbhaf0cafvy6dlp6s7vhm5vknl4lgs3l24zc56ns5"))))
+    (build-system meson-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
+       ("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache
        ("intltool" ,intltool)
-       ("pkg-config" ,pkg-config)))
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)))
     (inputs
      `(("dconf" ,dconf)
        ("gtk+" ,gtk+)
@@ -6321,7 +6416,7 @@ Microsoft SkyDrive and Hotmail, using their REST protocols.")
 (define-public gnome-clocks
   (package
     (name "gnome-clocks")
-    (version "3.26.1")
+    (version "3.28.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -6329,7 +6424,7 @@ Microsoft SkyDrive and Hotmail, using their REST protocols.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1xqirnf7xkiv5vj3ng4slpyh50ihn625vhdgskfzx83a3pgxin1b"))))
+                "1dd739vchb592mck1dia2hkywn4213cpramyqzgmlmwv8z80p3nl"))))
     (build-system meson-build-system)
     (arguments
      '(#:glib-or-gtk? #t))
@@ -6359,7 +6454,7 @@ desktop.  It supports world clock, stop watch, alarms, and count down timer.")
 (define-public gnome-calendar
   (package
     (name "gnome-calendar")
-    (version "3.26.3")
+    (version "3.28.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -6367,7 +6462,7 @@ desktop.  It supports world clock, stop watch, alarms, and count down timer.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1clnfvvsaqw9vpxrs6qrxzmgpaw9x2nkjik2x2vwvm07pdvhddxn"))))
+                "0x6wxngf8fkwgbl6x7rzp0srrb43rm55klpb2vfjk2hahpbjvxyw"))))
     (build-system meson-build-system)
     (arguments
      '(#:glib-or-gtk? #t
@@ -6382,7 +6477,10 @@ desktop.  It supports world clock, stop watch, alarms, and count down timer.")
     (inputs
      `(("evolution-data-server" ,evolution-data-server)
        ("gnome-online-accounts" ,gnome-online-accounts)
-       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
+       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+       ("libdazzle" ,libdazzle)
+       ("libgweather" ,libgweather)
+       ("geoclue" ,geoclue)))
     (home-page "https://wiki.gnome.org/Apps/Calendar")
     (synopsis "GNOME's calendar application")
     (description
@@ -6393,16 +6491,15 @@ desktop.  It supports multiple calendars, month, week and year view.")
 (define-public gnome-todo
   (package
     (name "gnome-todo")
-    (version "3.26.2")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
                                   (version-major+minor version) "/"
                                   name "-" version ".tar.xz"))
-              (patches (search-patches "gnome-todo-libical-compat.patch"))
               (sha256
                (base32
-                "106xx1w18pxjmj5k0k2qjzi6b3c3kaz7b5kyrpknykibnr401ff9"))))
+                "08ygqbib72jlf9y0a16k54zz51sncpq2wa18wp81v46q8301ymy7"))))
     (build-system meson-build-system)
     (arguments
      '(#:glib-or-gtk? #t
@@ -6550,7 +6647,7 @@ GNOME Shell appearance and extension, etc.")
 (define-public gnome-shell-extensions
   (package
     (name "gnome-shell-extensions")
-    (version "3.24.3")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -6558,10 +6655,10 @@ GNOME Shell appearance and extension, etc.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0y8anpp9ymp0lxn15w63ra6zxxf8nvbl48xqkvqdjzida73fyz9w"))))
-    (build-system gnu-build-system)
+                "0n4h8rdnq3knrvlg6inrl62a73h20dbhfgniwy18572jicrh5ip9"))))
+    (build-system meson-build-system)
     (arguments
-     '(#:configure-flags '("--enable-extensions=all")))
+     '(#:configure-flags '("-Dextension_set=all")))
     (native-inputs
      `(("intltool" ,intltool)
        ("pkg-config" ,pkg-config)))
@@ -6705,16 +6802,16 @@ the Moka icon theme.")
 (define-public folks
   (package
     (name "folks")
-    (version "0.11.2")
+    (version "0.11.4")
     (source (origin
               (method url-fetch)
               (uri (string-append
-                    "mirror://gnome/sources/" name "/"
+                    "mirror://gnome/sources/folks/"
                     (version-major+minor version) "/"
-                    name "-" version ".tar.xz"))
+                    "folks-" version ".tar.xz"))
               (sha256
                (base32
-                "1f51albxgfqxbax57i3pcgv2fx7i419xaapzdvldas6gw100ma1m"))))
+                "16hqh2gxlbx0b0hgq216hndr1m72vj54jvryzii9zqkk0g9kxc57"))))
     (build-system glib-or-gtk-build-system)
     (inputs
      `(("bdb" ,bdb)
@@ -6773,7 +6870,7 @@ GLib/GObject code.")
 (define-public libgnomekbd
   (package
     (name "libgnomekbd")
-    (version "3.22.0.1")
+    (version "3.26.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -6781,7 +6878,7 @@ GLib/GObject code.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1plkkack6s8b21gcmmly0lapgcjz53dmw2vixnn4rw4jxjwbdzaf"))))
+                "0xc8jrc44x2h24v28wv36k70k7bwxy6p2vsvxvvia1n3ay642fza"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
@@ -6842,7 +6939,7 @@ handling the startup notification side.")
 (define-public gnome-calculator
   (package
     (name "gnome-calculator")
-    (version "3.26.0")
+    (version "3.28.2")
     (source
      (origin
        (method url-fetch)
@@ -6851,7 +6948,7 @@ handling the startup notification side.")
                            name "-" version ".tar.xz"))
        (sha256
         (base32
-         "1iv3b3mvqxm17r5gv15dyq6gz08w0ljhzgbf22xnnfnpzhvmn8b2"))))
+         "0izsrqc9fm2lh25jr3nzi94p5hh2d3cklxqczbq16by85wr1xm5s"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
@@ -6859,8 +6956,10 @@ handling the startup notification side.")
        ("itstool" ,itstool)
        ("pkg-config" ,pkg-config)))
     (inputs
-     `(("gtksourceview" ,gtksourceview)
+     `(("glib" ,glib)
+       ("gtksourceview" ,gtksourceview-3)
        ("libsoup" ,libsoup)
+       ("libxml2" ,libxml2)
        ("mpc" ,mpc)
        ("mpfr" ,mpfr)))
     (home-page "https://wiki.gnome.org/Apps/Calculator")
@@ -6902,37 +7001,78 @@ basically a text box in which notes can be written.")
     (license license:gpl3+)))
 
 (define-public gucharmap
-  (package
-    (name "gucharmap")
-    (version "3.18.0")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (string-append "mirror://gnome/sources/" name "/"
-                           (version-major+minor version) "/"
-                           name "-" version ".tar.xz"))
-       (sha256
-        (base32
-         "0c1q9w5vql0vvg6g0knxfnv4ap19fg5cdrwndi1cj9lsym92c78j"))))
-    (build-system glib-or-gtk-build-system)
-    (native-inputs
-     `(("desktop-file-utils" ,desktop-file-utils)
-       ("glib:bin" ,glib "bin") ; for glib-compile-resources.
-       ("gobject-introspection" ,gobject-introspection)
-       ("intltool" ,intltool)
-       ("itstool" ,itstool)
-       ("pkg-config" ,pkg-config)))
-    (inputs
-     `(("gtk+" ,gtk+)
-       ("xmllint" ,libxml2)))
-    (home-page "https://wiki.gnome.org/Apps/Gucharmap")
-    (synopsis "Unicode character picker and font browser")
-    (description
-     "This program allows you to browse through all the available Unicode
+  (let ((unicode-files
+         '(("Blocks.txt"
+            "19zf2kd198mcv1paa194c1zf36hay1irbxssi35yi2pd8ad69qas")
+           ("DerivedAge.txt"
+            "1h9p1g0wnh686l6cqar7cmky465vwc6vjzzn1s7v0i9zcjaqkr4h")
+           ("NamesList.txt"
+            "0gvpcyq852rnlqmx4y5i1by7bavvcw6rj40i54w48yc7xr3zmgd1")
+           ("Scripts.txt"
+            "0b9prz2hs6w61afqaplcxnv115f8yk4d5hn9dc5hks8nqpj28bnh")
+           ("UnicodeData.txt"
+            "1cfak1j753zcrbgixwgppyxhm4w8vda8vxhqymi7n5ljfi6kwhjj")
+           ("Unihan.zip"
+            "199kz6laypkvc0ykms6d7bkb571jmpds39sv2p7kd5jjm1ij08q1"))))
+    (package
+      (name "gucharmap")
+      (version "10.0.4")
+      (source
+       (origin
+         (method url-fetch)
+         (uri (string-append "mirror://gnome/sources/" name "/"
+                             (version-major+minor version) "/"
+                             name "-" version ".tar.xz"))
+         (sha256
+          (base32
+           "00gh3lll6wykd2qg1lrj05a4wvscsypmrx7rpb6jsbvb4scnh9mv"))))
+      (build-system glib-or-gtk-build-system)
+      (arguments
+       `(#:modules ((ice-9 match)
+                    (guix build glib-or-gtk-build-system)
+                    (guix build utils))
+         #:configure-flags
+         (list "--with-unicode-data=../unicode-data")
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'prepare-unicode-data
+             (lambda* (#:key inputs #:allow-other-keys)
+               (mkdir-p "../unicode-data")
+               (with-directory-excursion "../unicode-data"
+                 (for-each (match-lambda
+                             ((file _)
+                              (install-file (assoc-ref inputs file) ".")))
+                           ',unicode-files))
+               #t)))))
+      (native-inputs
+       `(("desktop-file-utils" ,desktop-file-utils)
+         ("glib:bin" ,glib "bin")       ; for glib-compile-resources.
+         ("gobject-introspection" ,gobject-introspection)
+         ("intltool" ,intltool)
+         ("itstool" ,itstool)
+         ("pkg-config" ,pkg-config)
+         ,@(map (match-lambda
+                  ((file hash)
+                   `(,file
+                     ,(origin
+                        (method url-fetch)
+                        (uri (string-append
+                              "http://www.unicode.org/Public/10.0.0/ucd/"
+                              file))
+                        (sha256 (base32 hash))))))
+                unicode-files)
+         ("unzip" ,unzip)))
+      (inputs
+       `(("gtk+" ,gtk+)
+         ("xmllint" ,libxml2)))
+      (home-page "https://wiki.gnome.org/Apps/Gucharmap")
+      (synopsis "Unicode character picker and font browser")
+      (description
+       "This program allows you to browse through all the available Unicode
 characters and categories for the installed fonts, and to examine their
 detailed properties.  It is an easy way to find the character you might
 only know by its Unicode name or code point.")
-    (license license:gpl3+)))
+      (license license:gpl3+))))
 
 (define-public bluefish
   (package
@@ -6968,7 +7108,7 @@ Bluefish supports many programming and markup languages.")
 (define-public gnome-system-monitor
   (package
     (name "gnome-system-monitor")
-    (version "3.26.0")
+    (version "3.28.2")
     (source
      (origin
        (method url-fetch)
@@ -6977,20 +7117,22 @@ Bluefish supports many programming and markup languages.")
                            name "-" version ".tar.xz"))
        (sha256
         (base32
-         "1cz6s0cvagj422f9dc231nvg8jsfkva5s81skpq4q5jyrb1ahj7q"))))
+         "164in885dyfvna5yjzgdyrbrsskvh5wzxdmkjgb4mbh54lzqd1zb"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-mkenums.
        ("intltool" ,intltool)
        ("itstool" ,itstool)
        ("libgtop" ,libgtop)
+       ("polkit" ,polkit)
        ("pkg-config" ,pkg-config)))
     (inputs
      `(("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files.
        ("gtk+" ,gtk+)
        ("gtkmm" ,gtkmm)
        ("librsvg" ,librsvg)
-       ("libxml2" ,libxml2)))
+       ("libxml2" ,libxml2)
+       ("libwnck" ,libwnck)))
     (home-page "https://wiki.gnome.org/Apps/SystemMonitor")
     (synopsis "Process viewer and system resource monitor for GNOME")
     (description
@@ -7004,7 +7146,7 @@ kill/reinice processes.")
 (define-public python-pyatspi
   (package
     (name "python-pyatspi")
-    (version "2.24.0")
+    (version "2.26.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -7013,7 +7155,7 @@ kill/reinice processes.")
                     "/pyatspi-" version ".tar.xz"))
               (sha256
                (base32
-                "14m6y27ziqc9f6339gjz49mlsk6mrsyg4bkj055cdzc7sfjlgvz7"))))
+                "0xdnix7gxzgf75xy9ris4dd6b05mqwicw190b98xqmypydyf95n6"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -7032,7 +7174,7 @@ accessibility infrastructure.")
 (define-public orca
   (package
     (name "orca")
-    (version "3.26.0")
+    (version "3.28.1")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -7041,7 +7183,7 @@ accessibility infrastructure.")
                     name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0xk5k9cbswymma60nrfj00dl97wypx59c107fb1hwi75gm0i07a7"))))
+                "04l5ccn7wf175gyq3blfpx0yh70ny06n161297jwc9idf951852g"))))
     (build-system glib-or-gtk-build-system)
     (arguments
      '(#:phases
@@ -7324,20 +7466,20 @@ photo-booth-like software, such as Cheese.")
        ("pkg-config" ,pkg-config)
        ("vala" ,vala)))
     (propagated-inputs
-     `(("gnome-video-effects" ,gnome-video-effects)))
-    (inputs
-     `(("clutter" ,clutter)
+     `(("gnome-video-effects" ,gnome-video-effects)
+       ("clutter" ,clutter)
        ("clutter-gst" ,clutter-gst)
        ("clutter-gtk" ,clutter-gtk)
+       ("libcanberra" ,libcanberra)
        ("gdk-pixbuf" ,gdk-pixbuf)
        ("glib" ,glib)
-       ("gnome-desktop" ,gnome-desktop)
+       ("gstreamer" ,gstreamer)))
+    (inputs
+     `(("gnome-desktop" ,gnome-desktop)
        ("gobject-introspection" ,gobject-introspection)
-       ("gstreamer" ,gstreamer)
        ("gst-plugins-base" ,gst-plugins-base)
        ("gst-plugins-bad" ,gst-plugins-bad)
        ("gtk+" ,gtk+)
-       ("libcanberra" ,libcanberra)
        ("libx11" ,libx11)
        ("libxtst" ,libxtst)))
     (home-page "https://wiki.gnome.org/Apps/Cheese")
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 685cbdedec..461180161e 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -148,14 +148,14 @@ tool to extract metadata from a file and print the results.")
 (define-public libmicrohttpd
   (package
    (name "libmicrohttpd")
-   (version "0.9.62")
+   (version "0.9.63")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
                                 version ".tar.gz"))
             (sha256
              (base32
-              "0jfvi1fb4im3a3m8qishbmzx3zch993c0mhvl2k92l1zf1yhjgmx"))))
+              "173lj66crwvhzwp1r812sc5h1hda7g6lb9l1y5zf7w3pw4dnzhrp"))))
    (build-system gnu-build-system)
    (inputs
     `(("curl" ,curl)
@@ -163,18 +163,6 @@ tool to extract metadata from a file and print the results.")
       ("libgcrypt" ,libgcrypt)
       ("openssl" ,openssl)
       ("zlib" ,zlib)))
-   (arguments
-    `(#:parallel-tests? #f
-      #:phases (modify-phases %standard-phases
-                 (add-before 'check 'add-missing-LDFLAGS
-                   (lambda _
-                     ;; The two test_upgrade* programs depend on GnuTLS
-                     ;; directly but lack -lgnutls; add it.
-                     (substitute* "src/microhttpd/Makefile"
-                       (("^test_upgrade(.*)LDFLAGS = (.*)$" _ first rest)
-                        (string-append "test_upgrade" first
-                                       "LDFLAGS = -lgnutls " rest)))
-                     #t)))))
    (synopsis "C library implementing an HTTP 1.1 server")
    (description
     "GNU libmicrohttpd is a small, embeddable HTTP server implemented as a
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 768e641786..cfdf6932bb 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -668,7 +668,7 @@ termination.")
 (define-public go-github.com-jtolds-gls
   (package
     (name "go-github.com-jtolds-gls")
-    (version "4.2.1")
+    (version "4.20")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -677,7 +677,7 @@ termination.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1vm37pvn0k4r6d3m620swwgama63laz8hhj3pyisdhxwam4m2g1h"))))
+                "1k7xd2q2ysv2xsh373qs801v6f359240kx0vrl0ydh7731lngvk6"))))
     (build-system go-build-system)
     (arguments
      '(#:import-path "github.com/jtolds/gls"))
diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm
index bb98250fba..7ed13d37c7 100644
--- a/gnu/packages/graph.scm
+++ b/gnu/packages/graph.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
@@ -100,14 +100,14 @@ more.")
 (define-public r-igraph
   (package
     (name "r-igraph")
-    (version "1.2.2")
+    (version "1.2.4")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "igraph" version))
        (sha256
         (base32
-         "1bggm7b8v3bh7q2589w26qvd7sgs69m4qiij7d0rbm0ykkgxm8lx"))))
+         "1jwjjl0l4054w05bik17p2d6rj3lx68iv716phajhnbbmckfnj0h"))))
     (build-system r-build-system)
     (native-inputs
      `(("gfortran" ,gfortran)))
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 3a709b8069..9837ae8a99 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -399,7 +399,7 @@ printing and other features typical of a source code editor.")
 (define-public gtksourceview
  (package
    (name "gtksourceview")
-   (version "3.24.8")
+   (version "4.0.2")
    (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/" name "/"
@@ -407,7 +407,7 @@ printing and other features typical of a source code editor.")
                                  name "-" version ".tar.xz"))
              (sha256
               (base32
-               "1zinqid62zjcsq7vy1y4mq1qh3hzd3zj7p8np7g0bdqd37zvi6qy"))))
+               "1b2z9c0skxrgw2vh08hv6qxky8jbvamc4rgww82j0kpp533rz0hm"))))
    (build-system gnu-build-system)
    (arguments
     '(#:phases
@@ -444,6 +444,19 @@ GTK+ text widget GtkTextView.  It improves GtkTextView by implementing syntax
 highlighting and other features typical of a source code editor.")
    (license license:lgpl2.1+)))
 
+(define-public gtksourceview-3
+ (package (inherit gtksourceview)
+   (name "gtksourceview")
+   (version "3.24.7")
+   (source (origin
+             (method url-fetch)
+             (uri (string-append "mirror://gnome/sources/" name "/"
+                                 (version-major+minor version) "/"
+                                 name "-" version ".tar.xz"))
+             (sha256
+              (base32
+               "1rp8zspwyw3mmdgccsas3pa6v7s0hqjaaglg6n4kcls7ccx0vhm5"))))))
+
 (define-public gdk-pixbuf
   (package
    (name "gdk-pixbuf")
@@ -547,7 +560,7 @@ in the GNOME project.")
 (define-public at-spi2-core
   (package
    (name "at-spi2-core")
-   (version "2.26.2")
+   (version "2.28.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -555,22 +568,45 @@ in the GNOME project.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "0596ghkamkxgv08r4a1pdhm06qd5zzgcfqsv64038w9xbvghq3n8"))))
-   (build-system gnu-build-system)
+              "11qwdxxx4jm0zj04xydlwah41axiz276dckkiql3rr0wn5x4i8j2"))))
+   (build-system meson-build-system)
    (outputs '("out" "doc"))
    (arguments
     '(#:configure-flags
-      (list (string-append "--with-html-dir="
-                           (assoc-ref %outputs "doc")
-                           "/share/gtk-doc/html"))
+      (list "-Denable_docs=true")
       #:phases
       (modify-phases %standard-phases
-        (replace 'check
-                 ;; Run test-suite under a dbus session.
-                 (lambda _
-                   ;; Don't fail on missing  '/etc/machine-id'.
-                   (setenv "DBUS_FATAL_WARNINGS" "0")
-                   (invoke "dbus-launch" "make" "check"))))))
+        (add-after 'unpack 'set-documentation-path
+          (lambda* (#:key outputs #:allow-other-keys)
+            ;; Ensure that the cross-references point to the "doc" output.
+            (substitute* "doc/libatspi/meson.build"
+              (("docpath =.*")
+               (string-append "docpath = '" (assoc-ref outputs "doc") "/share/gtk-doc/html'\n")))
+            #t))
+        (add-before 'install 'prepare-doc-directory
+          (lambda* (#:key outputs #:allow-other-keys)
+            (mkdir-p (string-append (assoc-ref outputs "doc") "/share"))
+            #t))
+        (add-after 'install 'move-documentation
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let ((out (assoc-ref outputs "out"))
+                  (doc (assoc-ref outputs "doc")))
+              (copy-recursively
+               (string-append out "/share/gtk-doc")
+               (string-append doc "/share/gtk-doc"))
+              (delete-file-recursively
+               (string-append out "/share/gtk-doc")))
+            #t))
+        (add-after 'install 'check
+          (lambda _
+            (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME
+            ;; Run test-suite under a dbus session.
+            (setenv "XDG_DATA_DIRS"     ; for finding org.xfce.Xfconf.service
+                    (string-append %output "/share"))
+            ;; Don't fail on missing  '/etc/machine-id'.
+            (setenv "DBUS_FATAL_WARNINGS" "0") ;
+            (invoke "dbus-launch" "ninja" "test")))
+         (delete 'check))))
    (propagated-inputs
     ;; atspi-2.pc refers to all these.
     `(("dbus" ,dbus)
@@ -580,6 +616,8 @@ in the GNOME project.")
       ("libxtst" ,libxtst)))
    (native-inputs
     `(("gobject-introspection" ,gobject-introspection)
+      ("gtk-doc" ,gtk-doc)
+      ("glib" ,glib "bin")
       ("intltool" ,intltool)
       ("pkg-config" ,pkg-config)))
    (synopsis "Assistive Technology Service Provider Interface, core components")
@@ -1407,7 +1445,7 @@ information.")
 (define-public gtk-doc
   (package
     (name "gtk-doc")
-    (version "1.27")
+    (version "1.28")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -1415,7 +1453,7 @@ information.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0vwsdl61nvnmqswlz5j9m4hg7qirhazwcikcnqf9nx0c13vx6sz2"))))
+                "05apmwibkmn1icx05l8aw241lhymcx01zvk5i499cb150bijj7li"))))
     (build-system gnu-build-system)
     (arguments
      `(#:parallel-tests? #f
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 8febe605a7..1ef523d9ce 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -49,9 +49,11 @@
   #:use-module (gnu packages disk)
   #:use-module (gnu packages ed)
   #:use-module (gnu packages emacs)
+  #:use-module (gnu packages emacs-xyz)
   #:use-module (gnu packages gawk)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
+  #:use-module (gnu packages gnome)
   #:use-module (gnu packages gperf)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages hurd)
@@ -2000,3 +2002,98 @@ format is also supported.")
        "This package provides a simple SVG-based picture language for Guile.
 The picture values can directly be displayed in Geiser.")
       (license license:lgpl3+))))
+
+(define-public guile-studio
+  (let ((commit "e2da64f014942a73996286c4abe3c3b1f8bd220c")
+        (revision "1"))
+    (package
+      (name "guile-studio")
+      (version (git-version "0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://git.elephly.net/software/guile-studio.git")
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "10v3kw41bzd8c2a6vxgrwbvl216d0k8f5s9h6pm8hahpd03jl7lm"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:tests? #f                      ; there are none
+         #:phases
+         (modify-phases %standard-phases
+           (delete 'configure)
+           (replace 'build
+             (lambda* (#:key source inputs outputs #:allow-other-keys)
+               (let* ((out   (assoc-ref outputs "out"))
+                      (bin   (string-append out "/bin/"))
+                      (share (string-append out "/share/")))
+                 (mkdir-p share)
+                 (mkdir-p bin)
+                 (apply invoke "guile" "-s" "guile-studio-configure.scm"
+                        out
+                        (assoc-ref inputs "emacs")
+                        (assoc-ref inputs "guile-picture-language")
+                        (string-append (assoc-ref inputs "adwaita-icon-theme")
+                                       "/share/icons/Adwaita/")
+                        (map cdr inputs))
+                 #t)))
+           (delete 'install))))
+      (inputs
+       `(("guile" ,guile-2.2)
+         ("guile-picture-language" ,guile-picture-language)
+         ("emacs" ,emacs)
+         ("emacs-geiser" ,emacs-geiser)
+         ("emacs-company" ,emacs-company)
+         ("emacs-flycheck" ,emacs-flycheck)
+         ("emacs-smart-mode-line" ,emacs-smart-mode-line)
+         ("emacs-paren-face" ,emacs-paren-face)
+         ("adwaita-icon-theme" ,adwaita-icon-theme)))
+      (home-page "https://gnu.org/software/guile")
+      (synopsis "IDE for Guile")
+      (description
+       "This is Emacs with a few settings that make working with Guile easier
+for people new to Emacs.  Features include: CUA mode, Geiser, tool bar icons
+to evaluate Guile buffers, support for Guile's very own picture language, code
+completion, a simple mode line, etc.")
+      (license license:gpl3+))))
+
+(define-public guile-stis-parser
+  (let ((commit "6e85d37ffc333b722f4413a6c648263701eb75bd")
+        (revision "1"))
+    (package
+      (name "guile-stis-parser")
+      (version (git-version "0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://gitlab.com/tampe/stis-parser")
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "0v4hvq7rlpbra1ni73lf8k6sdmjlflr50yi3p1f24g85h77pc7c0"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:parallel-build? #f ; not supported
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'chdir
+             (lambda _ (chdir "modules") #t))
+           (add-after 'chdir 'delete-broken-symlink
+             (lambda _
+               (delete-file "parser/stis-parser/lang/.#calc.scm")
+               #t)))))
+      (inputs
+       `(("guile" ,guile-2.2)))
+      (native-inputs
+       `(("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ("pkg-config" ,pkg-config)))
+      (home-page "https://gitlab.com/tampe/stis-parser")
+      (synopsis "Parser combinator framework")
+      (description
+       "This package provides a functional parser combinator library that
+supports backtracking and a small logical framework. The idea is to build up
+chunks that are memoized and there is no clear scanner/parser separation,
+chunks can be expressions as well as simple tokens.")
+      (license license:lgpl2.0+))))
diff --git a/gnu/packages/hyperledger.scm b/gnu/packages/hyperledger.scm
new file mode 100644
index 0000000000..b25a3c48e7
--- /dev/null
+++ b/gnu/packages/hyperledger.scm
@@ -0,0 +1,93 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
+;;;
+;;; 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 hyperledger)
+  #:use-module (ice-9 match)
+  #:use-module (guix build-system go)
+  #:use-module (guix build-system trivial)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix licenses)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages docker)
+  #:use-module (gnu packages golang)
+  #:use-module (gnu packages version-control))
+
+(define-public hyperledger-fabric
+  (package
+    (name "hyperledger-fabric")
+    (version "1.4")
+    ;; While the GitHub repository is supposed to be "just a mirror," the Go
+    ;; imports refer to it explicitly.
+    (home-page "https://github.com/hyperledger/fabric")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit (string-append "release-" version))))
+              (sha256
+               (base32
+                "1g003wf6439f2c9i2vphf4sh463yyasq1vpqmkpw9lj170a6kl8k"))
+              (file-name (git-file-name name version))))
+    (build-system go-build-system)
+    (native-inputs
+     `(("which" ,which)
+       ("docker-cli" ,docker-cli)
+       ("git" ,git)
+       ("curl" ,curl)))
+    (arguments
+     `(#:import-path "github.com/hyperledger/fabric"
+       #:unpack-path "github.com/hyperledger/fabric"
+       ;; We don't need to install the source code for end-user applications.
+       #:install-source? #f
+       ;; TODO: Tests require a running Docker daemon.
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'build
+           (lambda _
+             ;; Only linux-amd64 and linux-ppc64le seem to be supported at the moment.
+             (invoke "make"
+                     "-j" (number->string (parallel-job-count))
+                     "-C" "src/github.com/hyperledger/fabric"
+                     "release/linux-amd64")))
+         (add-after 'install 'install-commands
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (src "src/github.com/hyperledger/fabric/"))
+               (with-directory-excursion src
+                 (copy-recursively
+                  "release/linux-amd64/bin"
+                  (string-append out "/bin"))
+                 (install-file "LICENSE"
+                               (string-append out "/share/licenses"))
+                 (install-file "README.md"
+                               (string-append out "/share/doc"))
+                 (copy-recursively "sampleconfig"
+                                   (string-append out "/etc/hyperledger/fabric"))))
+             #t)))))
+    (supported-systems '("x86_64-linux"))
+    (synopsis "Platform for distributed ledger solutions")
+    (description "Hyperledger Fabric is a platform for distributed ledger
+solutions, underpinned by a modular architecture focusing on confidentiality
+and resiliency.  It is designed to support pluggable implementations of
+different components.")
+    (license asl2.0)))
diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm
index 7dc3bd89a1..77aecce9f2 100644
--- a/gnu/packages/ibus.scm
+++ b/gnu/packages/ibus.scm
@@ -144,18 +144,20 @@
     (native-inputs
      `(("glib" ,glib "bin") ; for glib-genmarshal
        ("gobject-introspection" ,gobject-introspection) ; for g-ir-compiler
+
+       ;; XXX TODO: Move Unicode data to its own (versioned) package.
        ("unicode-nameslist"
         ,(origin
            (method url-fetch)
-           (uri "https://www.unicode.org/Public/UNIDATA/NamesList.txt")
+           (uri "https://www.unicode.org/Public/12.0.0/ucd/NamesList.txt")
            (sha256
-            (base32 "0yr2h0nfqhirfi3bxl33z6cc94qqshlpgi06c25xh9754irqsgv8"))))
+            (base32 "0vsq8gx7hws8mvxy3nlglpwxw7ky57q0fs09d7w9xgb2ylk7fz61"))))
        ("unicode-blocks"
         ,(origin
            (method url-fetch)
-           (uri "https://www.unicode.org/Public/UNIDATA/Blocks.txt")
+           (uri "https://www.unicode.org/Public/12.0.0/ucd/Blocks.txt")
            (sha256
-            (base32 "0lnh9iazikpr548bd7nkaq9r3vfljfvz0rg2462prac8qxk7ni8b"))))
+            (base32 "041sk54v6rjzb23b9x7yjdwzdp2wc7gvfz7ybavgg4gbh51wm8x1"))))
        ("vala" ,vala)
        ("pkg-config" ,pkg-config)))
     (native-search-paths
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 43ba9d2d17..47dc89d373 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.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 © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
@@ -5452,7 +5452,7 @@ specification.")
 (define-public java-eclipse-equinox-common
   (package
     (name "java-eclipse-equinox-common")
-    (version "3.8.0")
+    (version "3.10.200")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://repo1.maven.org/maven2/"
@@ -5461,7 +5461,7 @@ specification.")
                                   version "-sources.jar"))
               (sha256
                (base32
-                "12aazpkgw46r1qj0pr421jzwhbmsizd97r37krd7njnbrdgfzksc"))))
+                "1yn8ij6xsljlf35sr2l7wvyvc0ss4n1rv0ry5zkgb49dj4hyrqrj"))))
     (build-system ant-build-system)
     (arguments
      `(#:tests? #f ; no tests included
@@ -5611,7 +5611,7 @@ the module @code{org.eclipse.equinox.preferences}.")
 (define-public java-eclipse-core-runtime
   (package
     (name "java-eclipse-core-runtime")
-    (version "3.12.0")
+    (version "3.15.100")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://repo1.maven.org/maven2/"
@@ -5620,7 +5620,7 @@ the module @code{org.eclipse.equinox.preferences}.")
                                   version "-sources.jar"))
               (sha256
                (base32
-                "16mkf8jgj35pgzms7w1gyfq0gfm4ixw6c5xbbxzdj1la56c758ya"))))
+                "0l8xayacsbjvz5hypx2fv47vpw2n4dspamcfb3hx30x9hj8vmg7r"))))
     (build-system ant-build-system)
     (arguments
      `(#:tests? #f ; no tests included
@@ -5759,7 +5759,7 @@ the module @code{org.eclipse.ant.core}.")
 (define-public java-eclipse-core-resources
   (package
     (name "java-eclipse-core-resources")
-    (version "3.11.1")
+    (version "3.13.200")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://repo1.maven.org/maven2/"
@@ -5768,7 +5768,7 @@ the module @code{org.eclipse.ant.core}.")
                                   version "-sources.jar"))
               (sha256
                (base32
-                "1hrfxrll6cpcagfksk2na1ypvkcnsp0fk6n3vcsrn97qayf9mx9l"))))
+                "1sn3b6ky72hkvxcgf9b2jkpbdh3y8lbhi9xxwv1dsiddpkkq91hs"))))
     (build-system ant-build-system)
     (arguments
      `(#:tests? #f ; no tests included
@@ -5935,7 +5935,7 @@ and contributes the Eclipse default text editor.")
 (define-public java-eclipse-jdt-core
   (package
     (name "java-eclipse-jdt-core")
-    (version "3.12.3")
+    (version "3.16.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://repo1.maven.org/maven2/"
@@ -5944,11 +5944,28 @@ and contributes the Eclipse default text editor.")
                                   version "-sources.jar"))
               (sha256
                (base32
-                "191xw4lc7mjjkprh4ji5vnpjvr5r4zvbpwkriy4bvsjqrz35vh1j"))))
+                "1g560yr9v2kzv34gc2m3ifpgnj7krcdd6h4gd4z83pwqacwkfz0k"))))
     (build-system ant-build-system)
     (arguments
      `(#:tests? #f ; no tests included
-       #:jar-name "eclipse-jdt-core.jar"))
+       #:jar-name "eclipse-jdt-core.jar"
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'move-sources
+           (lambda _
+             (with-directory-excursion "src/jdtCompilerAdaptersrc/"
+               (for-each (lambda (file)
+                           (install-file file (string-append "../" (dirname file))))
+                         (find-files "." ".*")))
+             (delete-file-recursively "src/jdtCompilerAdaptersrc/")
+             #t))
+         (add-before 'build 'copy-resources
+           (lambda _
+             (with-directory-excursion "src"
+               (for-each (lambda (file)
+                           (install-file file (string-append "../build/classes/" (dirname file))))
+                         (find-files "." ".*.(props|properties|rsc)")))
+             #t)))))
     (inputs
      `(("java-eclipse-core-contenttype" ,java-eclipse-core-contenttype)
        ("java-eclipse-core-filesystem" ,java-eclipse-core-filesystem)
@@ -5967,6 +5984,33 @@ and contributes the Eclipse default text editor.")
 development tools.")
     (license license:epl1.0)))
 
+(define-public java-eclipse-jdt-compiler-apt
+  (package
+    (name "java-eclipse-jdt-compiler-apt")
+    (version "1.3.400")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://repo1.maven.org/maven2/"
+                                  "org/eclipse/jdt/org.eclipse.jdt.compiler.apt/"
+                                  version "/org.eclipse.jdt.compiler.apt-"
+                                  version "-sources.jar"))
+              (sha256
+               (base32
+                "1s285k9p2ixdqrknb40jbbvw682n9a7l5lqpn583a8pvlzg2l6r8"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:tests? #f ; no tests included
+       #:jar-name "eclipse-jdt-compiler-apt.jar"
+       #:jdk ,openjdk11))
+    (inputs
+     `(("java-eclipse-jdt-core" ,java-eclipse-jdt-core)))
+    (home-page "https://www.eclipse.org/jdt/apt/")
+    (synopsis "Annotation processing tool")
+    (description "APT stands for Annotation Processing Tool.  APT provides a
+means for generating files and compiling new Java classes based on annotations
+found in your source code.")
+    (license license:epl2.0)))
+
 (define-public java-javax-mail
   (package
     (name "java-javax-mail")
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 6049b09139..9020a599e2 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -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 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
@@ -24,7 +24,7 @@
 ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2017 Dave Love <fx@gnu.org>
 ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
@@ -98,6 +98,7 @@
   #:use-module (gnu packages readline)
   #:use-module (gnu packages rrdtool)
   #:use-module (gnu packages samba)
+  #:use-module (gnu packages serialization)
   #:use-module (gnu packages slang)
   #:use-module (gnu packages storage)
   #:use-module (gnu packages texinfo)
@@ -404,10 +405,10 @@ 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.13")
-(define %linux-libre-hash "00rqdsqyz0csdblcmifyhkgzvsmnqsh090i6h30146rsf3707xad")
+(define %linux-libre-version "5.0")
+(define %linux-libre-hash "18gs0kl5xvbmh725m7crg6iyqw3p8qq421aql7z0nlk035fh5xbx")
 
-(define %linux-libre-4.20-patches
+(define %linux-libre-5.0-patches
   (list %boot-logo-patch
         %linux-libre-arm-export-__sync_icache_dcache-patch))
 
@@ -415,11 +416,11 @@ It has been modified to remove all non-free binary blobs.")
   (make-linux-libre %linux-libre-version
                     %linux-libre-hash
                     '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux")
-                    #:patches %linux-libre-4.20-patches
+                    #:patches %linux-libre-5.0-patches
                     #:configuration-file kernel-config))
 
-(define %linux-libre-4.19-version "4.19.26")
-(define %linux-libre-4.19-hash "0xp1hqcwimyvzzbci741vymc8mrgk3cycv8l020zas1dfw5wn48c")
+(define %linux-libre-4.19-version "4.19.27")
+(define %linux-libre-4.19-hash "055n4s4yrkcrwkdsxbf1q1zyxmpabf7kba8d0phpfadian3wr4s0")
 
 (define %linux-libre-4.19-patches
   (list %boot-logo-patch
@@ -432,8 +433,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.104")
-(define %linux-libre-4.14-hash "0x7jzazl0yzdc9m1ycwcywjpj6w30mabks4qs9asdy5622282b4v")
+(define %linux-libre-4.14-version "4.14.105")
+(define %linux-libre-4.14-hash "06pp13d2g0j2v8jy8fh20b4ismzg9wn3i7bnx2hpyvslz256rrgg")
 
 (define-public linux-libre-4.14
   (make-linux-libre %linux-libre-4.14-version
@@ -442,8 +443,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.161"
-                    "0r35qlc8yj9svryv0v91j134vr35d23sz5aj7f2h8c99iakbm6zw"
+  (make-linux-libre "4.9.162"
+                    "07swv6xvjsl5nv5y3sc2nfdnmqdz9gjy8hgrjvi0bljwzf1fbxmy"
                     '("x86_64-linux" "i686-linux")
                     #:configuration-file kernel-config))
 
@@ -457,7 +458,7 @@ It has been modified to remove all non-free binary blobs.")
   (make-linux-libre %linux-libre-version
                     %linux-libre-hash
                     '("armhf-linux")
-                    #:patches %linux-libre-4.20-patches
+                    #:patches %linux-libre-5.0-patches
                     #:defconfig "multi_v7_defconfig"
                     #:extra-version "arm-generic"))
 
@@ -480,7 +481,7 @@ It has been modified to remove all non-free binary blobs.")
   (make-linux-libre %linux-libre-version
                     %linux-libre-hash
                     '("armhf-linux")
-                    #:patches %linux-libre-4.20-patches
+                    #:patches %linux-libre-5.0-patches
                     #:defconfig "omap2plus_defconfig"
                     #:extra-version "arm-omap2plus"))
 
@@ -2477,14 +2478,14 @@ It works with most newer systems.")
 (define-public iucode-tool
   (package
     (name "iucode-tool")
-    (version "2.2")
+    (version "2.3.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://gitlab.com/iucode-tool/releases"
                                   "/raw/latest/iucode-tool_" version ".tar.xz"))
               (sha256
                (base32
-                "0w99k1aq1xw148ffk1xykqf60rdbphb1jknw98jcmadq4pwxl44q"))))
+                "159gvf6ljgg3g4vlhyy6pyr0wz11rcyhp985vc4az58d9px8xf0j"))))
     (build-system gnu-build-system)
     (home-page "https://gitlab.com/iucode-tool/iucode-tool/wikis/home")
     (synopsis "Manipulate Intel microcode bundles")
@@ -2653,7 +2654,22 @@ thanks to the use of namespaces.")
                                   "/singularity-" version ".tar.gz"))
               (sha256
                (base32
-                "1whx0hqqi1326scgdxxxa1d94vn95mnq0drid6s8wdp84ni4d3gk"))))
+                "1whx0hqqi1326scgdxxxa1d94vn95mnq0drid6s8wdp84ni4d3gk"))
+              (modules '((guix build utils)))
+              (snippet
+               '(begin
+                  ;; Do not create directories in /var.
+                  (substitute* "Makefile.in"
+                    (("\\$\\(MAKE\\) .*install-data-hook") ""))
+
+                  ;; The original source overrides PATH so that it points to
+                  ;; /bin, /usr/local/bin, etc., which obviously doesn't work
+                  ;; on Guix System.  Leave PATH unchanged so we refer to the
+                  ;; installed Coreutils, grep, etc.
+                  (substitute* "bin/singularity.in"
+                    (("^PATH=.*" all)
+                     (string-append "#" all "\n")))
+                  #t))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags
@@ -2661,12 +2677,6 @@ thanks to the use of namespaces.")
              "--localstatedir=/var")
        #:phases
        (modify-phases %standard-phases
-         ;; Do not create directories in /var.
-         (add-after 'unpack 'disable-install-hook
-           (lambda _
-             (substitute* "Makefile.in"
-               (("\\$\\(MAKE\\) .*install-data-hook") ""))
-             #t))
          (add-after 'unpack 'patch-reference-to-squashfs-tools
            (lambda _
              (substitute* "libexec/cli/build.exec"
@@ -3242,6 +3252,32 @@ is flexible, efficient and uses a modular implementation.")
 write access to exFAT devices.")
     (license license:gpl2+)))
 
+(define-public fuseiso
+  (package
+    (name "fuseiso")
+    (version "20070708")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/fuseiso/fuseiso/"
+                                  version "/fuseiso-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "127xql52dcdhmh7s5m9xc6q39jdlj3zhbjar1j821kb6gl3jw94b"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("fuse" ,fuse)
+       ("glib" ,glib)
+       ("zlib" ,zlib)))
+    (home-page "https://sourceforge.net/projects/fuseiso/")
+    (synopsis "Mount ISO file system images")
+    (description
+     "FuseISO is a FUSE module to mount ISO filesystem images (.iso, .nrg,
+.bin, .mdf and .img files).  It supports plain ISO9660 Level 1 and 2, Rock
+Ridge, Joliet, and zisofs.")
+    (license license:gpl2)))
+
 (define-public gpm
   (package
     (name "gpm")
@@ -3290,7 +3326,7 @@ and copy/paste text in the console and in xterm.")
 (define-public btrfs-progs
   (package
     (name "btrfs-progs")
-    (version "4.17.1")
+    (version "4.20.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://kernel.org/linux/kernel/"
@@ -3298,7 +3334,7 @@ and copy/paste text in the console and in xterm.")
                                   "btrfs-progs-v" version ".tar.xz"))
               (sha256
                (base32
-                "0x6d53fbrcmzvhv461575fzsv3373427p4srz646w2wcagqk82xz"))))
+                "0z0fm3j4ajzsf445381ra8r3zzciyyvfh8vvbjmbyarg2rz8n3w9"))))
     (build-system gnu-build-system)
     (outputs '("out"
                "static"))      ; static versions of the binaries in "out"
@@ -3393,7 +3429,7 @@ from the btrfs-progs package.  It is meant to be used in initrds.")
               (method url-fetch)
               (uri (string-append
                     "https://git.kernel.org/cgit/linux/kernel/git/jaegeuk"
-                    "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz"))
+                    "/f2fs-tools.git/snapshot/f2fs-tools-" version ".tar.gz"))
               (sha256
                (base32
                 "1m6bn1ibq0p53m0n97il91xqgjgn2pzlz74lb5bfzassx7159m1k"))))
@@ -3431,15 +3467,15 @@ disks and SD cards.  This package provides the userland utilities.")
   (package
     (inherit f2fs-tools-1.7)
     (name "f2fs-tools")
-    (version "1.11.0")
+    (version "1.12.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
                     "https://git.kernel.org/cgit/linux/kernel/git/jaegeuk"
-                    "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz"))
+                    "/f2fs-tools.git/snapshot/f2fs-tools-" version ".tar.gz"))
               (sha256
                (base32
-                "1qvr3hcic1vzfmyl7c0gnjxfsw8zjaadm66y337h49chv9yaq5mr"))))
+                "15pn2fm9knn7p1vzfzy6msnrdl14p6y1gn4m2ka6ba5bzx6lw4p2"))))
     (inputs
      `(("libuuid" ,util-linux)))))
 
@@ -3481,49 +3517,51 @@ feature, and a laptop with an accelerometer.  It has no effect on SSDs.")
 (define-public thinkfan
   (package
     (name "thinkfan")
-    (version "0.9.3")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://sourceforge/thinkfan/"
-                                  "/thinkfan-" version ".tar.gz"))
-              (sha256
-               (base32
-                "0nz4c48f0i0dljpk5y33c188dnnwg8gz82s4grfl8l64jr4n675n"))
-              (modules '((guix build utils)))
-              ;; Fix erroneous man page location in Makefile leading to
-              ;; a compilation failure.
-              (snippet '(begin
-                          (substitute* "CMakeLists.txt"
-                            (("thinkfan\\.1") "src/thinkfan.1"))
-                          #t))))
+    (version "1.0.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/vmatare/thinkfan.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "107vw0962hrwva3wra9n3hxlbfzg82ldc10qssv3dspja88g8psr"))))
     (build-system cmake-build-system)
     (arguments
      `(#:modules ((guix build cmake-build-system)
                   (guix build utils)
                   (srfi srfi-26))
-       #:tests? #f                      ;no test target
+       #:tests? #f                      ; no test target
        #:configure-flags
        ;; Enable reading temperatures from hard disks via S.M.A.R.T.
+       ;; Upstream ‘defaults to OFF because libatasmart seems to be horribly
+       ;; inefficient’.
        `("-DUSE_ATASMART:BOOL=ON")
        #:phases
        (modify-phases %standard-phases
-         ;; Install scripts for various foreign init systems. Also fix
-         ;; hard-coded path for daemon.
-         (add-after 'install 'install-rc-scripts
+         (add-after 'unpack 'create-init-scripts
+           ;; CMakeLists.txt relies on build-time symptoms of OpenRC and
+           ;; systemd to patch and install their service files.  Fake their
+           ;; presence rather than duplicating the build system below.  Leave
+           ;; things like ‘/bin/kill’ because they're not worth a dependency.
+           ;; The sysvinit needs manual patching, but since upstream doesn't
+           ;; even provide the option to install it: don't.
            (lambda* (#:key outputs #:allow-other-keys)
-             (let ((out (assoc-ref outputs "out"))
-                   (files (find-files
-                           (string-append "../thinkfan-" ,version "/rcscripts")
-                           ".*")))
-               (substitute* files
-                 (("/usr/sbin/(\\$NAME|thinkfan)" _ name)
-                  (string-append out "/sbin/" name)))
-               (for-each (cute install-file <>
-                               (string-append out "/share/thinkfan"))
-                         files))
-             #t)))))
+             (let* ((out   (assoc-ref outputs "out"))
+                    (share (string-append out "/share/" ,name)))
+               (substitute* "CMakeLists.txt"
+                 (("pkg_check_modules\\((OPENRC|SYSTEMD) .*" _ package)
+                  (format "option(~a_FOUND \"Faked\" ON)\n" package))
+                 ;; That was easy!  Now we just need to fix the destinations.
+                 (("/etc" directory)
+                  (string-append out directory)))
+               #t))))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
     (inputs
-     `(("libatasmart" ,libatasmart)))
+     `(("libatasmart" ,libatasmart)
+       ("yaml-cpp" ,yaml-cpp)))
     (home-page "http://thinkfan.sourceforge.net/")
     (synopsis "Simple fan control program")
     (description
@@ -4390,15 +4428,14 @@ re-use code and to avoid re-inventing the wheel.")
 (define-public libnftnl
   (package
     (name "libnftnl")
-    (version "1.1.1")
+    (version "1.1.2")
     (source
-      (origin
-        (method url-fetch)
-        (uri (string-append "mirror://netfilter.org/libnftnl/"
-                            "libnftnl-" version ".tar.bz2"))
-        (sha256
-         (base32
-          "1wmgjfcb35mscb2srzia5931srygywrs1aznxmg67v177x0nasjx"))))
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://netfilter.org/libnftnl/"
+                           "libnftnl-" version ".tar.bz2"))
+       (sha256
+        (base32 "0pffmsv41alsn5ac7mwnb9fh3qpwzqk13jrzn6c5i71wq6kbgix5"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -4415,7 +4452,7 @@ used by nftables.")
 (define-public nftables
   (package
     (name "nftables")
-    (version "0.8.1")
+    (version "0.9.0")
     (source
      (origin
        (method url-fetch)
@@ -4423,8 +4460,10 @@ used by nftables.")
                            "/files/nftables-" version ".tar.bz2"))
        (sha256
         (base32
-         "1i1gfy8l7qyhc5vlrpp63s0n5kybmc9pi4dywiq8rmkhrrnddsla"))))
+         "14bygs6vg2v448cw5r4pxqi8an29hw0m9vab8hpmgjmrzjsq30dd"))))
     (build-system gnu-build-system)
+    (arguments `(#:configure-flags
+                 '("--disable-man-doc"))) ; FIXME: Needs docbook2x.
     (inputs `(("bison" ,bison)
               ("flex" ,flex)
               ("gmp" ,gmp)
@@ -5026,7 +5065,7 @@ management tools in userspace.")
 (define-public xfsprogs
   (package
     (name "xfsprogs")
-    (version "4.19.0")
+    (version "4.20.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -5034,10 +5073,10 @@ management tools in userspace.")
                     "xfsprogs-" version ".tar.gz"))
               (sha256
                (base32
-                "0gs39yiyamjw516jbak3nj4dy4h2a2g48c1mmv4wbppsccvwmwh5"))))
+                "0ss0r6jlxxinf9fhpc0fgf7b89n9mzirpa85xxjmi1ix9l6cls6x"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f)) ; Kernel/user integration tests are in package "xfstests"
+     `(#:tests? #f)) ; kernel/user integration tests are in package "xfstests"
     (native-inputs
      `(("gettext" ,gettext-minimal)
        ("util-linux" ,util-linux)))
@@ -5052,17 +5091,34 @@ file systems.")
 (define-public genext2fs
   (package
     (name "genext2fs")
-    (version "1.4.1")
+    (version "1.4.1-4")
     (source (origin
               (method git-fetch)
               (uri (git-reference
                     (url "https://github.com/jeremie-koenig/genext2fs.git")
-                    (commit (string-append "genext2fs-" version))))
+                    ;; 1.4.1-3 had a VCS tag but 1.4.1-4 doesn't.
+                    (commit "9ee43894634998b0b2b309d636f25c64314c9421")))
               (file-name (git-file-name name version))
               (sha256
-               (base32
-                "1r0n74pyypv63qfqqpvx75dwijcsvcrvqrlv8sldbhv0nwr1gk53"))))
+               (base32 "0ib5icn78ciz00zhc1bgdlrwaxvsdz7wnplwblng0jirwi9ml7sq"))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'apply-debian-patches
+           ;; Debian changes (the revision after ‘-’ in VERSION) are
+           ;; maintained as separate patches.  Apply those relevant to us.
+           (lambda _
+             (for-each
+              (lambda (file-name)
+                (invoke "patch" "-p1" "-i"
+                        (string-append "debian/patches/" file-name)))
+              (list "blocksize+creator.diff" ; add -B/-o options
+                    "byteswap_fix.diff"))
+             #t)))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)))
     (home-page "https://github.com/jeremie-koenig/genext2fs")
     (synopsis "Generate ext2 filesystem as a normal user")
     (description "This package provides a program to general an ext2
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 34bcd82ad7..1db5f4a256 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.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 © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
@@ -371,6 +371,24 @@ value imputation, classifier creation, generalization error estimation and
 sample proximities between pairs of cases.")
     (license license:gpl3+)))
 
+(define-public openfst
+  (package
+    (name "openfst")
+    (version "1.7.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://www.openfst.org/twiki/pub/FST/"
+                                  "FstDownload/openfst-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0x9wfcqd8hq4h349s7j77sr60h8xjdfshqw1m3a2n6z5bdr9qkm1"))))
+    (build-system gnu-build-system)
+    (home-page "http://www.openfst.org")
+    (synopsis "Library for weighted finite-state transducers")
+    (description "OpenFst is a library for constructing, combining,
+optimizing, and searching weighted finite-state transducers (FSTs).")
+    (license license:asl2.0)))
+
 (define-public shogun
   (package
     (name "shogun")
@@ -885,7 +903,8 @@ interactive learning.")
          "1q8c34rpmwkfy3r4d5172pzdkpfryj561897z9r3x22gq7813x1m"))))
     (build-system python-build-system)
     (arguments
-     `(#:python ,python-2)) ; only Python 2.7 is supported
+     `(#:tests? #f ; some test files are missing
+       #:python ,python-2)) ; only Python 2.7 is supported
     (propagated-inputs
      `(("python2-numpy" ,python2-numpy)
        ("python2-scipy" ,python2-scipy)
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 90bd79ae3c..29ba1a92ef 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -46,6 +46,7 @@
 
 (define-module (gnu packages mail)
   #:use-module (gnu packages)
+  #:use-module (gnu packages admin)
   #:use-module (gnu packages aspell)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages backup)
@@ -225,6 +226,87 @@ software.")
      ;; Libraries are under LGPLv3+, and programs under GPLv3+.
      (list gpl3+ lgpl3+))))
 
+(define-public nullmailer
+  (package
+    (name "nullmailer")
+    (version "2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (list
+             (string-append "https://untroubled.org/nullmailer/"
+                            "nullmailer-" version ".tar.gz")
+             ;; Previous releases are moved to this subdirectory.
+             (string-append "https://untroubled.org/nullmailer/archive/"
+                            "nullmailer-" version ".tar.gz")))
+       (sha256
+        (base32 "0md8cf90fl2yf3zh9njjy42a673v4j4ygyq95xg7fzkygdigm1lq"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "--enable-tls"
+             "--localstatedir=/var"
+             "--sysconfdir=/etc")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'patch-test-FHS-file-names
+           (lambda _
+             (with-directory-excursion "test"
+               (substitute* (list "functions.in"
+                                  "tests/send")
+                 ;; Fix some shebangs later generated on the fly.
+                 (("/bin/sh") (which "bash"))))
+             #t))
+         (add-before 'check 'pass-PATH-to-tests
+           ;; ‘runtest’ launches each test through ‘env -’, clearing $PATH. The
+           ;; tests then source ‘functions’, which first demands a working $PATH
+           ;; only to clobber it later.  Pass our $PATH to the test environment
+           ;; and don't touch it after that.
+           (lambda _
+             (with-directory-excursion "test"
+               (substitute* "runtests"
+                 (("env - bash")
+                  (string-append "env - PATH=\"" (getenv "PATH") "\" bash")))
+               (substitute* "functions.in"
+                 (("export PATH=.*") "")))
+             #t))
+         (add-before 'check 'delete-failing-tests
+           (lambda _
+             (with-directory-excursion "test/tests"
+               (for-each delete-file
+                         (list
+                          ;; XXX ‘nullmailer-inject: nullmailer-queue failed: 15’
+                          "inject/queue"
+                          ;; XXX These require the not-yet-packaged tcpserver.
+                          "protocols" "smtp-auth")))
+             #t))
+         (add-before 'install 'skip-install-data-local
+           ;; Don't attempt to install run-time files outside of the store.
+           (lambda _
+             (substitute* "Makefile"
+               ((" install-data-local") ""))
+             #t)))))
+    (native-inputs
+     ;; For tests.
+     `(("daemontools" ,daemontools)))   ; for svc
+    (inputs
+     `(("gnutls" ,gnutls)))
+    (home-page "https://untroubled.org/nullmailer/")
+    (synopsis "Simple relay-only mail transfer agent")
+    (description
+     "Nullmailer is a simple replacement @acronym{MTA, Mail Transfer Agent} for
+hosts that receive no local mail and only relay mail to a fixed set of smart
+relays.  It's useful for systems such as Web servers that must be able to send
+email notifications, without having to run a full-blown MTA such as sendmail
+or qmail.
+
+Nullmailer is designed to be simple to configure, easy to extend, and secure.
+It requires little ongoing administration.  The included @command{sendmail}
+emulator front-end should allow most (if not all) sendmail-compatible programs
+to run without any changes.")
+    (license (list lgpl2.1+         ; lib/cli++/ (but some files lack headers)
+                   gpl2+))))        ; everything else
+
 (define-public fetchmail
   (package
     (name "fetchmail")
@@ -757,14 +839,14 @@ invoking @command{notifymuch} from the post-new hook.")
 (define-public notmuch
   (package
     (name "notmuch")
-    (version "0.28.2")
+    (version "0.28.3")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://notmuchmail.org/releases/notmuch-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "0cg9ff7h7mklgbqqknxigxxx1j3p3s2a9cxvrs5ih7j56f04k9l5"))))
+                "1v0ff6qqwj42p3n6qw30czzqi52nvgf3dn05vd7a03g39a5js8af"))))
     (build-system gnu-build-system)
     (arguments
      `(#:modules ((guix build gnu-build-system)
@@ -1200,16 +1282,15 @@ facilities for checking incoming mail.")
 (define-public dovecot
   (package
     (name "dovecot")
-    (version "2.3.4.1")
+    (version "2.3.5")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://www.dovecot.org/releases/"
                            (version-major+minor version) "/"
-                           name "-" version ".tar.gz"))
+                           "dovecot-" version ".tar.gz"))
        (sha256
-        (base32
-         "01xa8d08c0j51w5kmqb3vnzrvh17hkzx5a5p7fb5hgn3wln3x1xq"))))
+        (base32 "1zxa9banams9nmk99sf1rqahr11cdqxhwi7hyz3ddxqidpn15qdz"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -1222,28 +1303,26 @@ facilities for checking incoming mail.")
     (arguments
      `(#:configure-flags '("--sysconfdir=/etc"
                            "--localstatedir=/var")
-       #:phases (modify-phases %standard-phases
-                  (add-before
-                   'configure 'pre-configure
-                   (lambda _
-                     ;; Simple hack to avoid installing in /etc.
-                     (substitute* '("doc/Makefile.in"
-                                    "doc/example-config/Makefile.in")
-                       (("pkgsysconfdir = .*")
-                        "pkgsysconfdir = /tmp/etc"))
-                     #t))
-                  (add-after
-                   'unpack 'patch-other-file-names
-                   (lambda _
-                     (substitute*
-                         "src/lib-program-client/test-program-client-local.c"
-                       (("(/bin/| )cat") (which "cat"))
-                       (("/bin/echo") (which "echo"))
-                       (("/bin/false") (which "false"))
-                       (("/bin/sh") (which "bash"))
-                       (("head") (which "head"))
-                       (("sleep") (which "sleep")))
-                     #t)))))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-file-names
+           (lambda _
+             (substitute* "src/lib-program-client/test-program-client-local.c"
+               (("(/bin/| )cat") (which "cat"))
+               (("/bin/echo") (which "echo"))
+               (("/bin/false") (which "false"))
+               (("/bin/sh") (which "bash"))
+               (("head") (which "head"))
+               (("sleep") (which "sleep")))
+             (substitute* (list "src/lib-smtp/test-bin/sendmail-exit-1.sh"
+                                "src/lib-smtp/test-bin/sendmail-success.sh")
+               (("cat") (which "cat")))
+             #t))
+         (replace 'install
+           (lambda* (#:key make-flags #:allow-other-keys)
+             ;; Simple hack to avoid installing a trivial README in /etc.
+             (apply invoke "make" "install" "sysconfdir=/tmp/bogus"
+                    make-flags))))))
     (home-page "https://www.dovecot.org")
     (synopsis "Secure POP3/IMAP server")
     (description
@@ -2045,6 +2124,81 @@ e-mails with other systems speaking the SMTP protocol.")
     (license (list bsd-2 bsd-3 bsd-4 (non-copyleft "file://COPYING")
                    public-domain isc license:openssl))))
 
+;; OpenSMTPd 6.4 introduced a new and incompatible configuration file format.
+;; Use a different name, for now, to avoid auto-upgrades and broken mail boxes.
+;; OPENSMTP-CONFIGURATION in (gnu services mail) will also need an overhaul.
+(define-public opensmtpd-next
+  (package
+    (name "opensmtpd-next")
+    (version "6.4.1p2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://www.opensmtpd.org/archives/"
+                           "opensmtpd-" version ".tar.gz"))
+       (sha256
+        (base32 "0cppqlx4fk6l8rbim5symh2fm1kzshf421256g596j6c9f9q96xn"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("bdb" ,bdb)
+       ("libasr" ,libasr)
+       ("libevent" ,libevent)
+       ("libressl" ,libressl)
+       ("linux-pam" ,linux-pam)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("bison" ,bison)
+       ("groff" ,groff)))               ; for man pages
+    (arguments
+     `(#:configure-flags
+       (list "--localstatedir=/var"
+             ;; This is the default only if it exists at build time—it doesn't.
+             "--with-path-socket=/var/run"
+             "--with-path-CAfile=/etc/ssl/certs/ca-certificates.crt"
+             "--with-user-smtpd=smtpd"
+             "--with-user-queue=smtpq" "--with-group-queue=smtpq"
+             "--with-auth-pam"
+             "--with-table-db")
+       #:phases
+       (modify-phases %standard-phases
+         ;; Fix some incorrectly hard-coded external tool file names.
+         (add-after 'unpack 'patch-FHS-file-names
+           (lambda _
+             (substitute* "smtpd/smtpctl.c"
+               ;; ‘gzcat’ is auto-detected at compile time, but ‘cat’ isn't.
+               (("/bin/cat") (which "cat")))
+             (substitute* "smtpd/mda_unpriv.c"
+               (("/bin/sh") (which "sh")))
+             #t))
+         ;; OpenSMTPD provides a single smtpctl utility to control both the
+         ;; daemon and the local submission subsystem.  To accomodate systems
+         ;; that require historical interfaces such as sendmail, newaliases or
+         ;; makemap, smtpctl operates in compatibility mode if called with the
+         ;; historical name.
+         (add-after 'install 'install-compability-links
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out  (assoc-ref outputs "out"))
+                    (sbin (string-append out "/sbin/")))
+               (for-each (lambda (command)
+                           (symlink "smtpctl" (string-append sbin command)))
+                         (list "mailq" "makemap" "newaliases"
+                               "send-mail" "sendmail")))
+             #t)))))
+    (synopsis "Lightweight SMTP daemon")
+    (description
+     "OpenSMTPD is an implementation of server-side @acronym{SMTP, Simple Mail
+Transfer Protocol}, with some additional standard extensions.  It allows
+ordinary machines to exchange e-mails with other systems speaking the SMTP
+protocol, or to deliver them to local users.
+
+In order to simplify the use of SMTP, OpenSMTPD implements a smaller set of
+functionality than those available in other SMTP daemons.  The objective is to
+provide enough features to satisfy typical usage at the risk of unsuitability
+to esoteric or niche requirements.")
+    (home-page "https://www.opensmtpd.org")
+    (license (list bsd-2 bsd-3 bsd-4 (non-copyleft "file://COPYING")
+                   public-domain isc license:openssl))))
+
 (define-public opensmtpd-extras
   (package
     (name "opensmtpd-extras")
diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm
index fdb6e723fc..f8ee3883a1 100644
--- a/gnu/packages/man.scm
+++ b/gnu/packages/man.scm
@@ -161,20 +161,17 @@ the traditional flat-text whatis databases.")
 (define-public man-pages
   (package
     (name "man-pages")
-    (version "4.16")
-    (source (origin
-              (method url-fetch)
-              (uri
-                (list
-                  (string-append
-                    "mirror://kernel.org/linux/docs/man-pages/man-pages-"
-                    version ".tar.xz")
-                  (string-append
-                    "mirror://kernel.org/linux/docs/man-pages/Archive/"
-                    "man-pages-" version ".tar.xz")))
-              (sha256
-               (base32
-                "1d2d6llazg3inwjiz22cn46mbm5ydpbyh9qb55z4j3nm4w6wrzs7"))))
+    (version "5.00")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (list (string-append "mirror://kernel.org/linux/docs/man-pages/"
+                             "man-pages-" version ".tar.xz")
+              (string-append "mirror://kernel.org/linux/docs/man-pages/Archive/"
+                             "man-pages-" version ".tar.xz")))
+       (sha256
+        (base32 "006rcqhs4ay9q8wip2kbgk3065gwvfbzrqgv2dsydwvcnwv50bss"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases (modify-phases %standard-phases (delete 'configure))
@@ -241,7 +238,7 @@ automatically.")
 (define-public scdoc
   (package
    (name "scdoc")
-   (version "1.8.1")
+   (version "1.9.4")
    (source
     (origin
      (method url-fetch)
@@ -250,7 +247,7 @@ automatically.")
      (file-name (string-append name "-" version ".tar.gz"))
      (sha256
       (base32
-       "1f3qrnbjr9ikbdvpsyx726nyiz4f7ka38rimy9fvbl7kmi62w1v7"))))
+       "00zc3rzj97gscby31djlqyczvqpyhrl66i44czwzmmn7rc5j03m1"))))
    (build-system gnu-build-system)
    (arguments
     `(#:make-flags '("CC=gcc")
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index c4e9328071..687fa3b61a 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -8,7 +8,7 @@
 ;;; 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>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016, 2018 Kei Kebreau <kkebreau@posteo.net>
@@ -148,19 +148,19 @@ beginners.")
 (define-public c-graph
   (package
    (name "c-graph")
-   (version "2.0")
+   (version "2.0.1")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/c-graph/c-graph-" version
                                 ".tar.gz"))
             (sha256 (base32
-                     "1hlvpzrh7hzzf533diyfiabzskddi8zx92av9hwkjw3l46z7qv01"))))
+                     "092412jzxy6wdvpk96pfj499hpmaww8xllavbvlqspfpr7ips9id"))))
    (build-system gnu-build-system)
    (inputs
-     `(("fortran" ,gfortran)))
+    `(("fortran" ,gfortran)))
    (synopsis "Visualizing and demonstrating convolution")
    (description
-     "GNU C-Graph is a tool for demonstrating the theory of convolution.
+    "GNU C-Graph is a tool for demonstrating the theory of convolution.
 Thus, it can serve as an excellent aid to students of signal and systems
 theory in visualizing the convolution process.  Rather than forcing the
 student to write code, the program offers an intuitive interface with
@@ -324,15 +324,16 @@ enough to be used effectively as a scientific calculator.")
 (define-public double-conversion
   (package
     (name "double-conversion")
-    (version "3.1.0")
+    (version "3.1.3")
     (home-page "https://github.com/google/double-conversion")
     (source (origin
               (method git-fetch)
-              (uri (git-reference (url home-page) (commit version)))
+              (uri (git-reference (url home-page)
+                                  (commit (string-append "v" version))))
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "123rb2p4snqagrybw66vnapchqdwn2rfpr1wcq0ya9gwbyl7xccx"))))
+                "082w15xq8f4c422a71phvcahgc8vmqrig97av9g9628q5n2ybbgg"))))
     (build-system cmake-build-system)
     (arguments
      '(#:test-target "test"
@@ -1397,7 +1398,7 @@ can solve two kinds of problems:
 (define-public octave-cli
   (package
     (name "octave-cli")
-    (version "4.4.1")
+    (version "5.1.0")
     (source
      (origin
       (method url-fetch)
@@ -1405,7 +1406,7 @@ can solve two kinds of problems:
                           version ".tar.lz"))
       (sha256
        (base32
-        "0jsdgizlv02an2ppfjwk5qf209zpwi3317yb7jvlsjzxnir3lvhy"))))
+        "11wwxpy2q1bhxs2v41bqn05i2sb0905cj1xil6mg8l4k2kka4cq6"))))
     (build-system gnu-build-system)
     (inputs
      `(("lapack" ,lapack)
diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index 56ffe177f2..3b2137889a 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -91,7 +91,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
 (define-public mpd
   (package
     (name "mpd")
-    (version "0.21.4")
+    (version "0.21.5")
     (source (origin
               (method url-fetch)
               (uri
@@ -100,7 +100,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
                               "/mpd-" version ".tar.xz"))
               (sha256
                (base32
-                "1ix52vfa8k8my4xyr8b0phg8605b2xchyzyva908m08vpzm14w94"))))
+                "1y8fbch4xp96i4mz6czivnwvaf7g8pnfix5d0pbybnkv7bmz1a9f"))))
     (build-system meson-build-system)
     (arguments
      `(#:configure-flags '("-Ddocumentation=true"))) ;the default is 'false'...
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 46af70f9d7..7d3020469f 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1306,7 +1306,7 @@ users to select LV2 plugins and run them with jalv.")
 (define-public synthv1
   (package
     (name "synthv1")
-    (version "0.9.2")
+    (version "0.9.5")
     (source (origin
               (method url-fetch)
               (uri
@@ -1314,7 +1314,7 @@ users to select LV2 plugins and run them with jalv.")
                               "/synthv1-" version ".tar.gz"))
               (sha256
                (base32
-                "1r60l286n8y4a4rrlnbc3h7xk4s2pvqykvskls89prxg0lkpz7kl"))))
+                "1b9w4cml3cmcg09kh852cahas6l9ks8wl3gzp1az8rzxz4229yg1"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f                      ; there are no tests
@@ -1340,7 +1340,7 @@ oscillators and stereo effects.")
 (define-public drumkv1
   (package
     (name "drumkv1")
-    (version "0.9.2")
+    (version "0.9.5")
     (source (origin
               (method url-fetch)
               (uri
@@ -1348,7 +1348,7 @@ oscillators and stereo effects.")
                               "/drumkv1-" version ".tar.gz"))
               (sha256
                (base32
-                "1z9l43z91d01b9rzam2cj9qmmg6s5y65fjvb83ms4iaa1p0mnwrn"))))
+                "1azzwqgrrr4zr509sib2jvigfvz5bkwnx82chdadxdwfarai8586"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f                      ; there are no tests
@@ -1375,7 +1375,7 @@ effects.")
 (define-public samplv1
   (package
     (name "samplv1")
-    (version "0.9.2")
+    (version "0.9.5")
     (source (origin
               (method url-fetch)
               (uri
@@ -1383,7 +1383,7 @@ effects.")
                               "/samplv1-" version ".tar.gz"))
               (sha256
                (base32
-                "0rfcp4v971qfhw1hb43hw12wlxmg2q13l0m1h93pyfi5l4mfjkds"))))
+                "0402rdr46za21w34m7ajzbwiiqcd1h0da3b0ldsr2z5g2mrkzxv8"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f                      ; there are no tests
@@ -1410,7 +1410,7 @@ effects.")
 (define-public padthv1
   (package
     (name "padthv1")
-    (version "0.9.2")
+    (version "0.9.5")
     (source (origin
               (method url-fetch)
               (uri
@@ -1418,7 +1418,7 @@ effects.")
                               "/padthv1-" version ".tar.gz"))
               (sha256
                (base32
-                "1alfl0l5qdll0w5lwhrwzj5dina1big1zmjg5imi9h06dzhz51xl"))))
+                "0cd1jfb3ynfrsbz8jwfsbvs5liyddxg4zghrvz931qkkqi117hbh"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f                      ; there are no tests
@@ -2047,7 +2047,7 @@ capabilities, custom envelopes, effects, etc.")
 (define-public yoshimi
   (package
     (name "yoshimi")
-    (version "1.5.10")
+    (version "1.5.10.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/yoshimi/"
@@ -2055,7 +2055,7 @@ capabilities, custom envelopes, effects, etc.")
                                   "/yoshimi-" version ".tar.bz2"))
               (sha256
                (base32
-                "0mazzn5pc4xnjci3yy1yfsx9l05gkxqzkmscaq1h75jpa7qfsial"))))
+                "1rr99qkq80s8l2iv3x4ccxan07m15dvmd5s9b10386bfjbwbya01"))))
     (build-system cmake-build-system)
     (arguments
      `(#:tests? #f ; there are no tests
@@ -3277,6 +3277,36 @@ slow gear audio effect to produce volume swells."))))
       (description "This package provides the LV2 plugin \"GxSwitchlessWah\",
 a simulation of an analog Wah pedal with switchless activation."))))
 
+(define-public rkrlv2
+  (let ((commit "d8c17d3c976107e5c012970276d7cf0aa059f15b")
+        (revision "1"))
+    (package
+      (name "rkrlv2")
+      (version (git-version "0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/ssj71/rkrlv2.git")
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "035z068rlafb7ibgqf34ck2lm4fab8yzlx41qh061x2xi4hxkvp0"))
+                (file-name (git-file-name name version))))
+      (build-system cmake-build-system)
+      (arguments '(#:tests? #f)) ; there are no tests
+      (inputs
+       `(("fftw" ,fftw)
+         ("libsamplerate" ,libsamplerate)
+         ("lv2" ,lv2)))
+      (native-inputs
+       `(("pkg-config" ,pkg-config)))
+      (home-page "https://github.com/ssj71/rkrlv2")
+      (synopsis "Rakarrack effects ported to LV2 plugins")
+      (description "This package provides the Rakarrack effects as LV2
+plugins.  The ports are done such that hopefully when Rakarrack gets an active
+maintainer these will get merged into the original project.")
+      (license license:gpl2))))
+
 (define-public mod-utilities
   (let ((commit "80ea3ea9f52fab7f191671f4810bf90fc955a046")
         (revision "2"))
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index f7477230a6..4544c419f4 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -1147,8 +1147,7 @@ sockets in Perl.")
      `(("pkg-config" ,pkg-config)))
     (inputs
      `(("dbus" ,dbus)
-       ("zlib" ,zlib)
-       ("network-manager" ,network-manager)))
+       ("zlib" ,zlib)))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 5a455ac116..1244cf2fc3 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -548,13 +548,13 @@ transactions from C or Python.")
 (define-public diffoscope
   (package
     (name "diffoscope")
-    (version "112")
+    (version "113")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri name version))
               (sha256
                (base32
-                "00ry8iczfv85qyfxmarxpgdq2h5jfj41z8sl9005brk937a7p2fk"))))
+                "10wjri6vsqxf2nb7jjhsq38qlpf407b4qrdczrk696aa1v71i44w"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
@@ -1034,6 +1034,10 @@ the bootloader configuration.")
                     ("gobject-introspection" ,gobject-introspection)
                     ("libcap" ,libcap)
                     ("pkg-config" ,pkg-config)))
+   (propagated-inputs `(("glib-networking" ,glib-networking)
+                        ("gnupg" ,gnupg)
+                        ("gsettings-desktop-schemas"
+                         ,gsettings-desktop-schemas)))
    (inputs `(("appstream-glib" ,appstream-glib)
              ("bubblewrap" ,bubblewrap)
              ("dconf" ,dconf)
diff --git a/gnu/packages/patches/blast+-fix-makefile.patch b/gnu/packages/patches/blast+-fix-makefile.patch
deleted file mode 100644
index bfa46a7e51..0000000000
--- a/gnu/packages/patches/blast+-fix-makefile.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Without this patch, the 'make install' attempts to 'install' a directory, which causes an error.
-
-diff --git a/c++/src/build-system/Makefile.in.top b/c++/src/build-system/Makefile.in.top
-index 1abe44f..d6000b3 100644
---- a/c++/src/build-system/Makefile.in.top
-+++ b/c++/src/build-system/Makefile.in.top
-@@ -51,7 +51,7 @@ install-toolkit:
- 	    done
- 	cd $(includedir0) && find * -name CVS -prune -o -print |\
-             cpio -pd $(pincludedir)
--	$(INSTALL) -m 644 $(incdir)/* $(pincludedir)
-+	cp -R $(incdir)/* $(pincludedir)
- ## set up appropriate build and status directories somewhere under $(libdir)?
- 
- install-gbench:
diff --git a/gnu/packages/patches/gcr-disable-failing-tests.patch b/gnu/packages/patches/gcr-disable-failing-tests.patch
deleted file mode 100644
index 862c51faf0..0000000000
--- a/gnu/packages/patches/gcr-disable-failing-tests.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-This patch removes a group of tests that fail because /var/lib/dbus/machine-id
-is not present in the build environment.
-
---- gcr-3.20.0.old/Makefile.in	2017-07-03 18:05:10.742595317 -0400
-+++ gcr-3.20.0/Makefile.in	2017-07-03 18:08:26.379565428 -0400
-@@ -482,8 +482,7 @@
- 	test-openssh$(EXEEXT) test-secure-memory$(EXEEXT) \
- 	test-trust$(EXEEXT) test-parser$(EXEEXT) test-record$(EXEEXT) \
- 	test-memory-icon$(EXEEXT) test-gnupg-key$(EXEEXT) \
--	test-gnupg-collection$(EXEEXT) test-gnupg-process$(EXEEXT) \
--	test-system-prompt$(EXEEXT)
-+	test-gnupg-collection$(EXEEXT) test-gnupg-process$(EXEEXT)
- @WITH_GTK_TRUE@am__EXEEXT_4 = frob-certificate$(EXEEXT) \
- @WITH_GTK_TRUE@	frob-combo-selector$(EXEEXT) \
- @WITH_GTK_TRUE@	frob-gnupg-selector$(EXEEXT) \
-@@ -882,14 +881,6 @@
- am_test_symkey_OBJECTS = egg/test-symkey.$(OBJEXT)
- test_symkey_OBJECTS = $(am_test_symkey_OBJECTS)
- test_symkey_DEPENDENCIES = $(am__DEPENDENCIES_4)
--am_test_system_prompt_OBJECTS =  \
--	gcr/test_system_prompt-test-system-prompt.$(OBJEXT)
--test_system_prompt_OBJECTS = $(am_test_system_prompt_OBJECTS)
--test_system_prompt_DEPENDENCIES = $(am__DEPENDENCIES_3)
--test_system_prompt_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
--	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
--	$(test_system_prompt_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
--	$(LDFLAGS) -o $@
- am_test_trust_OBJECTS = gcr/test_trust-test-trust.$(OBJEXT)
- test_trust_OBJECTS = $(am_test_trust_OBJECTS)
- test_trust_DEPENDENCIES = $(am__DEPENDENCIES_3)
-@@ -974,8 +965,7 @@
- 	$(test_secret_exchange_SOURCES) $(test_secure_memory_SOURCES) \
- 	$(test_simple_certificate_SOURCES) \
- 	$(test_subject_public_key_SOURCES) $(test_symkey_SOURCES) \
--	$(test_system_prompt_SOURCES) $(test_trust_SOURCES) \
--	$(test_util_SOURCES)
-+	$(test_trust_SOURCES) $(test_util_SOURCES)
- DIST_SOURCES = $(libegg_asn1x_la_SOURCES) $(libegg_hex_la_SOURCES) \
- 	$(libegg_secmem_la_SOURCES) $(libegg_test_la_SOURCES) \
- 	$(libegg_la_SOURCES) $(libgck_@GCK_MAJOR@_la_SOURCES) \
-@@ -1016,8 +1006,7 @@
- 	$(test_secret_exchange_SOURCES) $(test_secure_memory_SOURCES) \
- 	$(test_simple_certificate_SOURCES) \
- 	$(test_subject_public_key_SOURCES) $(test_symkey_SOURCES) \
--	$(test_system_prompt_SOURCES) $(test_trust_SOURCES) \
--	$(test_util_SOURCES)
-+	$(test_trust_SOURCES) $(test_util_SOURCES)
- RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
- 	ctags-recursive dvi-recursive html-recursive info-recursive \
- 	install-data-recursive install-dvi-recursive \
-@@ -2117,8 +2106,7 @@
- 	test-memory-icon \
- 	test-gnupg-key \
- 	test-gnupg-collection \
--	test-gnupg-process \
--	test-system-prompt
-+	test-gnupg-process
- 
- test_certificate_SOURCES = gcr/test-certificate.c
- test_certificate_CFLAGS = $(gcr_CFLAGS)
-@@ -2171,9 +2159,6 @@
- test_subject_public_key_SOURCES = gcr/test-subject-public-key.c
- test_subject_public_key_CFLAGS = $(gcr_CFLAGS)
- test_subject_public_key_LDADD = $(gcr_LIBS)
--test_system_prompt_SOURCES = gcr/test-system-prompt.c
--test_system_prompt_CFLAGS = $(gcr_CFLAGS)
--test_system_prompt_LDADD = $(gcr_LIBS)
- test_trust_SOURCES = gcr/test-trust.c
- test_trust_CFLAGS = $(gcr_CFLAGS)
- test_trust_LDADD = $(gcr_LIBS)
-@@ -3283,12 +3268,6 @@
- test-symkey$(EXEEXT): $(test_symkey_OBJECTS) $(test_symkey_DEPENDENCIES) $(EXTRA_test_symkey_DEPENDENCIES) 
- 	@rm -f test-symkey$(EXEEXT)
- 	$(AM_V_CCLD)$(LINK) $(test_symkey_OBJECTS) $(test_symkey_LDADD) $(LIBS)
--gcr/test_system_prompt-test-system-prompt.$(OBJEXT):  \
--	gcr/$(am__dirstamp) gcr/$(DEPDIR)/$(am__dirstamp)
--
--test-system-prompt$(EXEEXT): $(test_system_prompt_OBJECTS) $(test_system_prompt_DEPENDENCIES) $(EXTRA_test_system_prompt_DEPENDENCIES) 
--	@rm -f test-system-prompt$(EXEEXT)
--	$(AM_V_CCLD)$(test_system_prompt_LINK) $(test_system_prompt_OBJECTS) $(test_system_prompt_LDADD) $(LIBS)
- gcr/test_trust-test-trust.$(OBJEXT): gcr/$(am__dirstamp) \
- 	gcr/$(DEPDIR)/$(am__dirstamp)
- 
-@@ -3446,7 +3425,6 @@
- @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_secure_memory-test-secure-memory.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_simple_certificate-test-simple-certificate.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_subject_public_key-test-subject-public-key.Po@am__quote@
--@AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_trust-test-trust.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_util-test-util.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@ui/$(DEPDIR)/frob_certificate-frob-certificate.Po@am__quote@
-@@ -4968,20 +4946,6 @@
- @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_subject_public_key_CFLAGS) $(CFLAGS) -c -o gcr/test_subject_public_key-test-subject-public-key.obj `if test -f 'gcr/test-subject-public-key.c'; then $(CYGPATH_W) 'gcr/test-subject-public-key.c'; else $(CYGPATH_W) '$(srcdir)/gcr/test-subject-public-key.c'; fi`
- 
--gcr/test_system_prompt-test-system-prompt.o: gcr/test-system-prompt.c
--@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -MT gcr/test_system_prompt-test-system-prompt.o -MD -MP -MF gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo -c -o gcr/test_system_prompt-test-system-prompt.o `test -f 'gcr/test-system-prompt.c' || echo '$(srcdir)/'`gcr/test-system-prompt.c
--@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Po
--@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gcr/test-system-prompt.c' object='gcr/test_system_prompt-test-system-prompt.o' libtool=no @AMDEPBACKSLASH@
--@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
--@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -c -o gcr/test_system_prompt-test-system-prompt.o `test -f 'gcr/test-system-prompt.c' || echo '$(srcdir)/'`gcr/test-system-prompt.c
--
--gcr/test_system_prompt-test-system-prompt.obj: gcr/test-system-prompt.c
--@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -MT gcr/test_system_prompt-test-system-prompt.obj -MD -MP -MF gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo -c -o gcr/test_system_prompt-test-system-prompt.obj `if test -f 'gcr/test-system-prompt.c'; then $(CYGPATH_W) 'gcr/test-system-prompt.c'; else $(CYGPATH_W) '$(srcdir)/gcr/test-system-prompt.c'; fi`
--@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Po
--@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gcr/test-system-prompt.c' object='gcr/test_system_prompt-test-system-prompt.obj' libtool=no @AMDEPBACKSLASH@
--@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
--@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -c -o gcr/test_system_prompt-test-system-prompt.obj `if test -f 'gcr/test-system-prompt.c'; then $(CYGPATH_W) 'gcr/test-system-prompt.c'; else $(CYGPATH_W) '$(srcdir)/gcr/test-system-prompt.c'; fi`
--
- gcr/test_trust-test-trust.o: gcr/test-trust.c
- @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_trust_CFLAGS) $(CFLAGS) -MT gcr/test_trust-test-trust.o -MD -MP -MF gcr/$(DEPDIR)/test_trust-test-trust.Tpo -c -o gcr/test_trust-test-trust.o `test -f 'gcr/test-trust.c' || echo '$(srcdir)/'`gcr/test-trust.c
- @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) gcr/$(DEPDIR)/test_trust-test-trust.Tpo gcr/$(DEPDIR)/test_trust-test-trust.Po
-@@ -5808,13 +5772,6 @@
- 	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
- 	--log-file $$b.log --trs-file $$b.trs \
- 	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
--	"$$tst" $(AM_TESTS_FD_REDIRECT)
--test-system-prompt.log: test-system-prompt$(EXEEXT)
--	@p='test-system-prompt$(EXEEXT)'; \
--	b='test-system-prompt'; \
--	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--	--log-file $$b.log --trs-file $$b.trs \
--	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
- 	"$$tst" $(AM_TESTS_FD_REDIRECT)
- .test.log:
- 	@p='$<'; \
diff --git a/gnu/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch b/gnu/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch
deleted file mode 100644
index 86a8ed1691..0000000000
--- a/gnu/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-This patch comes from Debian.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=771052
-https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=835737
-
---- gcr-3.20.0.old/gcr/test-gnupg-collection.c	2017-06-29 14:26:33.810838197 -0400
-+++ gcr-3.20.0/gcr/test-gnupg-collection.c	2017-06-30 17:25:09.149383067 -0400
-@@ -115,6 +115,14 @@
-
-	g_object_unref (test->collection);
-
-+	/* remove potential gpg 2.1 extras, ignore any errors. */
-+	cmd = g_strdup_printf ("rm -rf %s/*.d", test->directory);
-+	system(cmd);
-+	g_free(cmd);
-+	cmd = g_strdup_printf ("rm -f %s/.gpg-v21-migrated", test->directory);
-+	system(cmd);
-+	g_free(cmd);
-+
-	cmd = g_strdup_printf ("rm -f %s/*", test->directory);
-	g_spawn_check_exit_status (system (cmd), &error);
-	g_assert_no_error (error);
-@@ -202,7 +210,7 @@
-	GcrGnupgKey *key;
-
-	_gcr_gnupg_collection_load_async (test->collection, NULL, on_async_ready, test);
--	egg_test_wait_until (500);
-+	egg_test_wait_until (2500);
-	g_assert (test->result);
-	_gcr_gnupg_collection_load_finish (test->collection, test->result, &error);
-	g_assert_no_error (error);
diff --git a/gnu/packages/patches/gnome-todo-libical-compat.patch b/gnu/packages/patches/gnome-todo-libical-compat.patch
deleted file mode 100644
index 34f2e254b2..0000000000
--- a/gnu/packages/patches/gnome-todo-libical-compat.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Fix compatibility with libical 3.0.
-
-Patch copied from Arch Linux:
-https://git.archlinux.org/svntogit/packages.git/tree/trunk/gnome-todo-3.26.2-libical-3.0.patch?h=packages/gnome-todo
-
-diff -up gnome-todo-3.26.2/src/gtd-task.c.libical-3.0 gnome-todo-3.26.2/src/gtd-task.c
---- gnome-todo-3.26.2/src/gtd-task.c.libical-3.0	2017-11-08 14:53:53.484294926 +0100
-+++ gnome-todo-3.26.2/src/gtd-task.c	2017-11-08 14:53:57.208294874 +0100
-@@ -778,7 +778,7 @@ gtd_task_set_complete (GtdTask  *task,
-           dt->minute = g_date_time_get_minute (now);
-           dt->second = g_date_time_get_seconds (now);
-           dt->is_date = 0;
--          dt->is_utc = 1;
-+          dt->zone = icaltimezone_get_utc_timezone ();
- 
-           /* convert timezone
-            *
diff --git a/gnu/packages/patches/rust-1.30-gdb-llvm.patch b/gnu/packages/patches/rust-1.30-gdb-llvm.patch
new file mode 100644
index 0000000000..e8f0acc8b4
--- /dev/null
+++ b/gnu/packages/patches/rust-1.30-gdb-llvm.patch
@@ -0,0 +1,89 @@
+Tweak some gdb tests which were broken during LLVM upgrades.
+This has been subsequently fixed upstream in later rustc versions,
+but still needed to bootstrap some earlier versions of the compiler.
+
+diff -r -u rustc-1.30.1-src-orig/src/test/debuginfo/borrowed-c-style-enum.rs rustc-1.30.1-src/src/test/debuginfo/borrowed-c-style-enum.rs
+--- rustc-1.30.1-src-orig/src/test/debuginfo/borrowed-c-style-enum.rs	2019-02-04 12:49:34.055483896 -0800
++++ rustc-1.30.1-src/src/test/debuginfo/borrowed-c-style-enum.rs	2019-02-04 13:01:10.915950356 -0800
+@@ -18,15 +18,15 @@
+ 
+ // gdb-command:print *the_a_ref
+ // gdbg-check:$1 = TheA
+-// gdbr-check:$1 = borrowed_c_style_enum::ABC::TheA
++// gdbr-check:$1 = borrowed_c_style_enum::TheA
+ 
+ // gdb-command:print *the_b_ref
+ // gdbg-check:$2 = TheB
+-// gdbr-check:$2 = borrowed_c_style_enum::ABC::TheB
++// gdbr-check:$2 = borrowed_c_style_enum::TheB
+ 
+ // gdb-command:print *the_c_ref
+ // gdbg-check:$3 = TheC
+-// gdbr-check:$3 = borrowed_c_style_enum::ABC::TheC
++// gdbr-check:$3 = borrowed_c_style_enum::TheC
+ 
+ 
+ // === LLDB TESTS ==================================================================================
+diff -r -u rustc-1.30.1-src-orig/src/test/debuginfo/c-style-enum-in-composite.rs rustc-1.30.1-src/src/test/debuginfo/c-style-enum-in-composite.rs
+--- rustc-1.30.1-src-orig/src/test/debuginfo/c-style-enum-in-composite.rs	2019-02-04 12:49:34.051483727 -0800
++++ rustc-1.30.1-src/src/test/debuginfo/c-style-enum-in-composite.rs	2019-02-04 13:02:00.981997525 -0800
+@@ -19,31 +19,31 @@
+ 
+ // gdb-command:print tuple_interior_padding
+ // gdbg-check:$1 = {__0 = 0, __1 = OneHundred}
+-// gdbr-check:$1 = (0, c_style_enum_in_composite::AnEnum::OneHundred)
++// gdbr-check:$1 = (0, c_style_enum_in_composite::OneHundred)
+ 
+ // gdb-command:print tuple_padding_at_end
+ // gdbg-check:$2 = {__0 = {__0 = 1, __1 = OneThousand}, __1 = 2}
+-// gdbr-check:$2 = ((1, c_style_enum_in_composite::AnEnum::OneThousand), 2)
++// gdbr-check:$2 = ((1, c_style_enum_in_composite::OneThousand), 2)
+ 
+ // gdb-command:print tuple_different_enums
+ // gdbg-check:$3 = {__0 = OneThousand, __1 = MountainView, __2 = OneMillion, __3 = Vienna}
+-// gdbr-check:$3 = (c_style_enum_in_composite::AnEnum::OneThousand, c_style_enum_in_composite::AnotherEnum::MountainView, c_style_enum_in_composite::AnEnum::OneMillion, c_style_enum_in_composite::AnotherEnum::Vienna)
++// gdbr-check:$3 = (c_style_enum_in_composite::OneThousand, c_style_enum_in_composite::MountainView, c_style_enum_in_composite::OneMillion, c_style_enum_in_composite::Vienna)
+ 
+ // gdb-command:print padded_struct
+ // gdbg-check:$4 = {a = 3, b = OneMillion, c = 4, d = Toronto, e = 5}
+-// gdbr-check:$4 = c_style_enum_in_composite::PaddedStruct {a: 3, b: c_style_enum_in_composite::AnEnum::OneMillion, c: 4, d: c_style_enum_in_composite::AnotherEnum::Toronto, e: 5}
++// gdbr-check:$4 = c_style_enum_in_composite::PaddedStruct {a: 3, b: c_style_enum_in_composite::OneMillion, c: 4, d: c_style_enum_in_composite::Toronto, e: 5}
+ 
+ // gdb-command:print packed_struct
+ // gdbg-check:$5 = {a = 6, b = OneHundred, c = 7, d = Vienna, e = 8}
+-// gdbr-check:$5 = c_style_enum_in_composite::PackedStruct {a: 6, b: c_style_enum_in_composite::AnEnum::OneHundred, c: 7, d: c_style_enum_in_composite::AnotherEnum::Vienna, e: 8}
++// gdbr-check:$5 = c_style_enum_in_composite::PackedStruct {a: 6, b: c_style_enum_in_composite::OneHundred, c: 7, d: c_style_enum_in_composite::Vienna, e: 8}
+ 
+ // gdb-command:print non_padded_struct
+ // gdbg-check:$6 = {a = OneMillion, b = MountainView, c = OneThousand, d = Toronto}
+-// gdbr-check:$6 = c_style_enum_in_composite::NonPaddedStruct {a: c_style_enum_in_composite::AnEnum::OneMillion, b: c_style_enum_in_composite::AnotherEnum::MountainView, c: c_style_enum_in_composite::AnEnum::OneThousand, d: c_style_enum_in_composite::AnotherEnum::Toronto}
++// gdbr-check:$6 = c_style_enum_in_composite::NonPaddedStruct {a: c_style_enum_in_composite::OneMillion, b: c_style_enum_in_composite::MountainView, c: c_style_enum_in_composite::OneThousand, d: c_style_enum_in_composite::Toronto}
+ 
+ // gdb-command:print struct_with_drop
+ // gdbg-check:$7 = {__0 = {a = OneHundred, b = Vienna}, __1 = 9}
+-// gdbr-check:$7 = (c_style_enum_in_composite::StructWithDrop {a: c_style_enum_in_composite::AnEnum::OneHundred, b: c_style_enum_in_composite::AnotherEnum::Vienna}, 9)
++// gdbr-check:$7 = (c_style_enum_in_composite::StructWithDrop {a: c_style_enum_in_composite::OneHundred, b: c_style_enum_in_composite::Vienna}, 9)
+ 
+ // === LLDB TESTS ==================================================================================
+ 
+diff -r -u rustc-1.30.1-src-orig/src/test/debuginfo/gdb-pretty-struct-and-enums-pre-gdb-7-7.rs rustc-1.30.1-src/src/test/debuginfo/gdb-pretty-struct-and-enums-pre-gdb-7-7.rs
+--- rustc-1.30.1-src-orig/src/test/debuginfo/gdb-pretty-struct-and-enums-pre-gdb-7-7.rs	2019-02-04 12:49:34.043483393 -0800
++++ rustc-1.30.1-src/src/test/debuginfo/gdb-pretty-struct-and-enums-pre-gdb-7-7.rs	2019-02-04 13:02:17.954691634 -0800
+@@ -27,15 +27,15 @@
+ 
+ // gdb-command: print c_style_enum1
+ // gdbg-check:$3 = CStyleEnumVar1
+-// gdbr-check:$3 = gdb_pretty_struct_and_enums_pre_gdb_7_7::CStyleEnum::CStyleEnumVar1
++// gdbr-check:$3 = gdb_pretty_struct_and_enums_pre_gdb_7_7::CStyleEnumVar1
+ 
+ // gdb-command: print c_style_enum2
+ // gdbg-check:$4 = CStyleEnumVar2
+-// gdbr-check:$4 = gdb_pretty_struct_and_enums_pre_gdb_7_7::CStyleEnum::CStyleEnumVar2
++// gdbr-check:$4 = gdb_pretty_struct_and_enums_pre_gdb_7_7::CStyleEnumVar2
+ 
+ // gdb-command: print c_style_enum3
+ // gdbg-check:$5 = CStyleEnumVar3
+-// gdbr-check:$5 = gdb_pretty_struct_and_enums_pre_gdb_7_7::CStyleEnum::CStyleEnumVar3
++// gdbr-check:$5 = gdb_pretty_struct_and_enums_pre_gdb_7_7::CStyleEnumVar3
+ 
+ #![allow(dead_code, unused_variables)]
diff --git a/gnu/packages/patches/valgrind-glibc-compat.patch b/gnu/packages/patches/valgrind-glibc-compat.patch
deleted file mode 100644
index 4f8effd207..0000000000
--- a/gnu/packages/patches/valgrind-glibc-compat.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Fix build failure with glibc 2.26.
-
-Patch copied from upstream source repository:
-https://sourceware.org/git/?p=valgrind.git;a=commit;h=2b5eab6a8db1b0487a3ad7fc4e7eeda6d3513626
-
-diff --git a/memcheck/tests/linux/stack_changes.c b/memcheck/tests/linux/stack_changes.c
-index a978fc2..7f97b90 100644
---- a/memcheck/tests/linux/stack_changes.c
-+++ b/memcheck/tests/linux/stack_changes.c
-@@ -10,7 +10,7 @@
- // This test is checking the libc context calls (setcontext, etc.) and
- // checks that Valgrind notices their stack changes properly.
- 
--typedef  struct ucontext  mycontext;
-+typedef  ucontext_t  mycontext;
- 
- mycontext ctx1, ctx2, oldc;
- int count;
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 1e29ae1cbe..4bf76a3467 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -1647,9 +1647,8 @@ It returns to the previous working directory when the object is destroyed.")
           (lambda* (#:key outputs #:allow-other-keys)
             (copy-recursively "."
                               (string-append (assoc-ref outputs "out")
-                                             "/plib/perl5/site_perl/"
-                                             ,(package-version perl)
-                                             "/czplib/"))
+                                             "/lib/perl5/site_perl/"
+                                             ,(package-version perl)))
             #t)))))
     (home-page "https://sourceforge.net/projects/czplib/")
     (synopsis "Library for genomic analysis")
@@ -1751,6 +1750,27 @@ their argument and produces a string as its result.  The string contains Perl
 code that, when \"eval\"ed, produces a deep copy of the original arguments.")
     (license (package-license perl))))
 
+(define-public perl-data-dumper
+  (package
+    (name "perl-data-dumper")
+    (version "2.173")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://cpan/authors/id/X/XS/XSAWYERX/"
+                           "Data-Dumper-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1yknbp86md6mjlhbs1lzz6mals3iyizndgiij58qx61hjfrhhxk9"))))
+    (build-system perl-build-system)
+    (home-page "https://metacpan.org/release/Data-Dumper")
+    (synopsis "Convert data structures to strings")
+    (description "Given a list of scalars or reference variables,
+@code{Data::Dumper} writes out their contents in Perl syntax.  The references
+can also be objects.  The content of each variable is output in a single Perl
+statement.  It handles self-referential structures correctly.")
+    (license perl-license)))
+
 (define-public perl-data-dumper-concise
   (package
     (name "perl-data-dumper-concise")
diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm
index eba11943b0..8d96e54c90 100644
--- a/gnu/packages/php.scm
+++ b/gnu/packages/php.scm
@@ -58,7 +58,7 @@
 (define-public php
   (package
     (name "php")
-    (version "7.3.1")
+    (version "7.3.3")
     (home-page "https://secure.php.net/")
     (source (origin
               (method url-fetch)
@@ -66,7 +66,7 @@
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0qikydmjg8k68l56azq4vg3gkynqwlpzayd5qi9wsl03pr03xsfg"))
+                "1cxrpaz5cvx1qq9klwgvcyvcly865sxpn4bdk82wpl43l5wkxc3b"))
               (modules '((guix build utils)))
               (snippet
                '(with-directory-excursion "ext"
@@ -234,6 +234,13 @@
                          "ext/gd/tests/xpm2gd.phpt"
                          "ext/gd/tests/xpm2jpg.phpt"
                          "ext/gd/tests/xpm2png.phpt"
+                         ;; Whitespace difference, probably caused by a very
+                         ;; long store path
+                         "ext/gd/tests/bug77479.phpt"
+                         ;; Slightly different result (NULL instead of false),
+                         ;; but the bug report suggests the issue was in
+                         ;; the bundled gd, not upstream.
+                         "ext/gd/tests/bug77272.phpt"
 
                          ;; XXX: These iconv tests have the expected outcome,
                          ;; but with different error messages.
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 445020ad35..46339c1abb 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -1355,7 +1355,7 @@ existing ones.")
 (define-public scons
   (package
     (name "scons")
-    (version "3.0.3")
+    (version "3.0.4")
     (source (origin
              (method git-fetch)
              (uri (git-reference
@@ -1364,7 +1364,7 @@ existing ones.")
              (file-name (git-file-name name version))
              (sha256
               (base32
-               "1xizkjgrvydkjhpv7i5rx0mdkp3618sis7jsckjh57nxcynlk5dc"))))
+               "1xy8jrwz87y589ihcld4hv7wn122sjbz914xn8h50ww77wbhk8hn"))))
     (build-system python-build-system)
     (arguments
      `(#:use-setuptools? #f                ; still relies on distutils
@@ -1376,6 +1376,9 @@ existing ones.")
              (substitute* "src/engine/SCons/compat/__init__.py"
                (("sys.modules\\[new\\] = imp.load_module\\(old, \\*imp.find_module\\(old\\)\\)")
                 "sys.modules[new] = __import__(old)"))
+             (substitute* "src/engine/SCons/Platform/__init__.py"
+               (("mod = imp.load_module\\(full_name, file, path, desc\\)")
+                "mod = __import__(full_name)"))
              (invoke "python" "bootstrap.py" "build/scons" "DEVELOPER=guix")
              (chdir "build/scons")
              #t)))))
@@ -2631,14 +2634,14 @@ Server (PLS).")
 (define-public python-language-server
   (package
     (name "python-language-server")
-    (version "0.23.2")
+    (version "0.24.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "python-language-server" version))
        (sha256
         (base32
-         "1h83x5widj9p630ha9yv39cpp3djxppll3iww9nc8i3hdmyrbnnh"))))
+         "05zmv6jr7qbgnkz0lqh5pr7kr4lm12i8ljm2k5h5kz3q9m8d4mm0"))))
     (build-system python-build-system)
     (propagated-inputs
      `(("python-pluggy" ,python-pluggy)
@@ -7994,7 +7997,7 @@ python-xdo for newer bindings.)")
      `(("python-mock" ,python-mock)
        ("python-nose" ,python-nose)
        ("python-pytest" ,python-pytest)))
-    (home-page "http://www.makotemplates.org/")
+    (home-page "https://www.makotemplates.org/")
     (synopsis "Templating language for Python")
     (description "Mako is a templating language for Python that compiles
 templates into Python modules.")
@@ -14661,14 +14664,14 @@ append on old values.  Partd excels at shuffling operations.")
 (define-public python-dask
   (package
     (name "python-dask")
-    (version "1.1.3")
+    (version "1.1.4")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "dask" version))
        (sha256
         (base32
-         "03ykmq46q2hh7mn68vcxkgylybjaj3r0kfspaiymdmqmjzpjivr5"))))
+         "1hrnfz4pzawikz9b622vjz2500n7hs25nz9msy1k8l4g7l2kr6ky"))))
     (build-system python-build-system)
     ;; A single test out of 5000+ fails.  This test is marked as xfail when
     ;; pytest-xdist is used.
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 53df4cf9fc..818553848d 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2017, 2018, 2019 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
+;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -33,6 +34,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages)
   #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages crypto)
@@ -159,6 +161,66 @@ a focus on simplicity and productivity.")
                    (delete-file-recursively "ext/fiddle/libffi-3.2.1")
                    #t))))))
 
+(define-public mruby
+  (package
+    (name "mruby")
+    (version "2.0.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/mruby/mruby.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1r6w1asjshff43ymdwa6xmrkggza99mi2kw88k7ic6ag2j81hcj5"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:test-target "test"
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-after 'unpack 'enable-verbose-tests
+           (lambda _
+             (substitute* "Makefile"
+               (("ruby ./minirake" m)
+                (string-append m " --verbose")))
+             #t))
+         (add-after 'unpack 'disable-broken-tests
+           (lambda _
+             (substitute* "mrbgems/mruby-io/test/io.rb"
+               (("assert\\('IO.popen.+$" m)
+                (string-append m "skip \"Hangs in the Guix build environment\"\n"))
+               (("assert\\('IO#isatty.+$" m)
+                (string-append m "skip \"Disable for Guix; there is no /dev/tty\"\n"))
+               ;; This one is really weird.  The *expected* output is all wrong.
+               (("assert\\('`cmd`.*" m)
+                (string-append m "skip \"Disable for Guix\"\n"))
+               (("echo foo")
+                (string-append (which "echo") " foo")))
+             #t))
+         ;; There is no install target
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (lib (string-append out "/lib")))
+               (mkdir-p bin)
+               (copy-recursively "build/host/bin" bin)
+               (mkdir-p lib)
+               (copy-recursively "build/host/lib" lib))
+             #t)))))
+    (native-inputs
+     `(("ruby" ,ruby)
+       ("bison" ,bison)))
+    (home-page "https://github.com/mruby/mruby")
+    (synopsis "Lightweight Ruby")
+    (description "mruby is the lightweight implementation of the Ruby
+language.  Its syntax is Ruby 1.9 compatible.  mruby can be linked and
+embedded within your application.")
+    (license license:expat)))
+
 (define-public ruby-commander
   (package
     (name "ruby-commander")
@@ -4982,14 +5044,14 @@ testing libraries to build on.")
 (define-public ruby-rack-protection
   (package
     (name "ruby-rack-protection")
-    (version "2.0.3")
+    (version "2.0.5")
     (source
      (origin
        (method url-fetch)
        (uri (rubygems-uri "rack-protection" version))
        (sha256
         (base32
-         "1z5598qipilmnf45428jnxi63ykrgvnyywa5ckpr52zv2vpd8jdp"))))
+         "15167q25rmxipqwi6hjqj3i1byi9iwl3xq9b7mdar7qiz39pmjsk"))))
     (build-system ruby-build-system)
     (arguments
      '(;; Tests missing from the gem.
@@ -8379,3 +8441,164 @@ uniquely identify it.")
 serves JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS.")
     (home-page "https://github.com/rails/sprockets")
     (license license:expat)))
+
+(define-public ruby-mustermann
+  (package
+    (name "ruby-mustermann")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "mustermann" version))
+       (sha256
+        (base32
+         "0lycgkmnyy0bf29nnd2zql5a6pcf8sp69g9v4xw0gcfcxgpwp7i1"))))
+    (build-system ruby-build-system)
+    (arguments
+     ;; No tests.
+     '(#:tests? #f))
+    (synopsis "Library implementing patterns that behave like regular expressions")
+    (description "Given a string pattern, Mustermann will turn it into an
+object that behaves like a regular expression and has comparable performance
+characteristics.")
+    (home-page "https://github.com/sinatra/mustermann")
+    (license license:expat)))
+
+(define-public ruby-sinatra
+  (package
+    (name "ruby-sinatra")
+    (version "2.0.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "sinatra" version))
+       (sha256
+        (base32
+         "1gasgn5f15myv08k10i16p326pchxjsy37pgqfw0xm66kcc5d7ry"))))
+    (build-system ruby-build-system)
+    (propagated-inputs
+     `(("ruby-mustermann" ,ruby-mustermann)
+       ("ruby-rack" ,ruby-rack)
+       ("ruby-rack-protection" ,ruby-rack-protection)
+       ("ruby-tilt" ,ruby-tilt)))
+    (synopsis "DSL for quick web applications creation in Ruby")
+    (description
+     "Sinatra is a DSL for quickly creating web applications in Ruby with
+minimal effort.")
+    (home-page "http://sinatrarb.com/")
+    (license license:expat)))
+
+(define-public ruby-thin
+  (package
+    (name "ruby-thin")
+    (version "1.7.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "thin" version))
+       (sha256
+        (base32
+         "0nagbf9pwy1vg09k6j4xqhbjjzrg5dwzvkn4ffvlj76fsn6vv61f"))))
+    (build-system ruby-build-system)
+    (arguments
+     ;; No tests.
+     '(#:tests? #f))
+    (propagated-inputs
+     `(("ruby-daemons" ,ruby-daemons)
+       ("ruby-eventmachine" ,ruby-eventmachine)
+       ("ruby-rack" ,ruby-rack)))
+    (synopsis "Thin and fast web server for Ruby")
+    (description "Thin is a Ruby web server that glues together 3 Ruby libraries:
+@itemize
+@item the Mongrel parser,
+@item Event Machine, a network I/O library with high scalability, performance
+and stability,
+@item Rack, a minimal interface between webservers and Ruby frameworks.
+@end itemize\n")
+    (home-page "http://code.macournoyer.com/thin/")
+    (license license:ruby)))
+
+(define-public ruby-skinny
+  (package
+    (name "ruby-skinny")
+    (version "0.2.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "skinny" version))
+       (sha256
+        (base32
+         "1y3yvx88ylgz4d2s1wskjk5rkmrcr15q3ibzp1q88qwzr5y493a9"))))
+    (build-system ruby-build-system)
+    (arguments
+     '(#:tests? #f ; No included tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'patch-gemspec
+           (lambda _
+             (substitute* ".gemspec"
+               (("<eventmachine>.freeze, \\[\\\"~> 1.0.0\"")
+                "<eventmachine>, [\">= 1.0.0\"")
+               (("<thin>.freeze, \\[\\\"< 1.7\", ") "<thin>, ["))
+             #t)))))
+    (propagated-inputs
+     `(("ruby-eventmachine" ,ruby-eventmachine)
+       ("ruby-thin" ,ruby-thin)))
+    (synopsis "Simple, upgradable WebSockets for Ruby Thin")
+    (description "Skinny is a simple, upgradable WebSockets for Ruby, using
+the Thin library.")
+    (home-page "https://github.com/sj26/skinny")
+    (license license:expat)))
+
+(define-public mailcatcher
+  (package
+    (name "mailcatcher")
+    (version "0.7.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "mailcatcher" version))
+       (sha256
+        (base32
+         "02w1ycyfv7x0sh9799lz7xa65p5qvl5z4pa8a7prb68h2zwkfq0n"))))
+    (build-system ruby-build-system)
+    (arguments
+     ;; Tests require web/assets which is not included in the output.  We
+     ;; might be able to fix this by adding the Git repository to the GEM_PATH
+     ;; of the tests.  See ruby-mysql2.
+     '(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'patch-gemspec
+           (lambda _
+             (substitute* ".gemspec"
+               (("<eventmachine>.freeze, \\[\\\"= 1.0.9.1")
+                "<eventmachine>, [\">= 1.0.9.1")
+               (("<rack>.freeze, \\[\\\"~> 1.5") "<rack>, [\">= 1.5")
+               (("<thin>.freeze, \\[\\\"~> 1.5.0") "<thin>, [\">= 1.5.0")
+               (("<sinatra>.freeze, \\[\\\"~> 1.2") "<sinatra>, [\">= 1.2"))
+             #t))
+         (add-before 'build 'loosen-dependency-contraint
+             (lambda _
+               (substitute* "lib/mail_catcher.rb"
+                 (("\"eventmachine\", \"1.0.9.1\"") "\"eventmachine\", \">= 1.0.9.1\"")
+                 (("\"rack\", \"~> 1.5\"") "\"rack\", \">= 1.5\"")
+                 (("\"thin\", \"~> 1.5.0\"") "\"thin\", \">= 1.5.0\"")
+                 (("\"sinatra\", \"~> 1.2\"") "\"sinatra\", \">= 1.2\""))
+               #t)))))
+    (inputs
+     `(("ruby-eventmachine" ,ruby-eventmachine)
+       ("ruby-mail" ,ruby-mail)
+       ("ruby-rack" ,ruby-rack)
+       ("ruby-sinatra" ,ruby-sinatra)
+       ("ruby-skinny" ,ruby-skinny)
+       ("ruby-sqlite3" ,ruby-sqlite3)
+       ("ruby-thin" ,ruby-thin)))
+    (synopsis "SMTP server which catches messages to display them a browser")
+    (description
+     "MailCatcher runs a super simple SMTP server which catches any message
+sent to it to display in a web interface.  Run mailcatcher, set your favourite
+app to deliver to smtp://127.0.0.1:1025 instead of your default SMTP server,
+then check out http://127.0.0.1:1080 to see the mail.")
+    (home-page "https://mailcatcher.me")
+    (license license:expat)))
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 2dc01e9d2a..2c9668c2f2 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -783,7 +783,7 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
              ;; The thinlto test should pass with llvm 6.
              (delete 'disable-thinlto-test))))))))
 
-(define-public rust
+(define-public rust-1.29
   (let ((base-rust
          (rust-bootstrapped-package rust-1.28 "1.29.2"
                                     "1jb787080z754caa2w3w1amsygs4qlzj9rs1vy64firfmabfg22h"
@@ -792,3 +792,84 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
                                       "rust-reproducible-builds.patch"))))
     (package
       (inherit base-rust))))
+
+(define-public rust-1.30
+  (let ((base-rust
+         (rust-bootstrapped-package rust-1.29 "1.30.1"
+                                    "0aavdc1lqv0cjzbqwl5n59yd0bqdlhn0zas61ljf38yrvc18k8rn"
+                                    #:patches
+                                    '("rust-1.25-accept-more-detailed-gdb-lines.patch"
+                                      "rust-1.30-gdb-llvm.patch"
+                                      "rust-reproducible-builds.patch"))))
+    (package
+      (inherit base-rust)
+      (inputs
+       ;; Use LLVM 7.0
+       (alist-replace "llvm" (list llvm)
+                      (package-inputs base-rust)))
+      (arguments
+       (substitute-keyword-arguments (package-arguments base-rust)
+         ((#:phases phases)
+          `(modify-phases ,phases
+             (add-after 'patch-cargo-tests 'patch-cargo-env-shebang
+               (lambda* (#:key inputs #:allow-other-keys)
+                 (let ((coreutils (assoc-ref inputs "coreutils")))
+                   (substitute* "src/tools/cargo/tests/testsuite/fix.rs"
+                     ;; Cargo has a test which explicitly sets a
+                     ;; RUSTC_WRAPPER environment variable which points
+                     ;; to /usr/bin/env. Since it's not a shebang, it
+                     ;; needs to be manually patched
+                     (("\"/usr/bin/env\"")
+                      (string-append "\"" coreutils "/bin/env\"")))
+                   #t)))
+             (add-after 'patch-cargo-env-shebang 'ignore-cargo-package-tests
+               (lambda* _
+                 (substitute* "src/tools/cargo/tests/testsuite/package.rs"
+                   ;; These tests largely check that cargo outputs warning/error
+                   ;; messages as expected. It seems that cargo outputs an
+                   ;; absolute path to something in the store instead of the
+                   ;; expected relative path (e.g. `[..]`) so we'll ignore
+                   ;; these for now
+                   (("fn include") "#[ignore]\nfn include")
+                   (("fn exclude") "#[ignore]\nfn exclude"))
+                   #t))
+             ;; Appears that this test isn't currently running and has been
+             ;; moved elsewhere, so the patch doesn't apply.
+             (delete 'disable-amd64-avx-test))))))))
+
+(define-public rust
+  (let ((base-rust
+         (rust-bootstrapped-package rust-1.30 "1.31.1"
+                                    "0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli"
+                                    #:patches
+                                    '("rust-1.25-accept-more-detailed-gdb-lines.patch"
+                                      "rust-1.30-gdb-llvm.patch"
+                                      "rust-reproducible-builds.patch"))))
+    (package
+      (inherit base-rust)
+      (arguments
+       (substitute-keyword-arguments (package-arguments base-rust)
+         ((#:phases phases)
+          `(modify-phases ,phases
+             (add-after 'patch-tests 'patch-command-exec-tests
+               (lambda* (#:key inputs #:allow-other-keys)
+                 (let ((coreutils (assoc-ref inputs "coreutils")))
+                   (substitute* "src/test/run-pass/command-exec.rs"
+                     ;; This test suite includes some tests that the stdlib's
+                     ;; `Command` execution properly handles situations where
+                     ;; the environment or PATH variable are empty, but this
+                     ;; fails since we don't have `echo` available in the usual
+                     ;; Linux directories.
+                     ;; NB: the leading space is so we don't fail a tidy check
+                     ;; for trailing whitespace, and the newlines are to ensure
+                     ;; we don't exceed the 100 chars tidy check as well
+                     ((" Command::new\\(\"echo\"\\)")
+                      (string-append "\nCommand::new(\"" coreutils "/bin/echo\")\n")))
+                   #t)))
+             (add-after 'patch-tests 'patch-process-docs-rev-cmd
+               (lambda* _
+                 ;; Disable some doc tests which depend on the "rev" command
+                 ;; https://github.com/rust-lang/rust/pull/58746
+                 (substitute* "src/libstd/process.rs"
+                   (("```rust") "```rust,no_run"))
+                 #t)))))))))
diff --git a/gnu/packages/scanner.scm b/gnu/packages/scanner.scm
index d030d8ade5..6539756a6e 100644
--- a/gnu/packages/scanner.scm
+++ b/gnu/packages/scanner.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2014 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -26,6 +26,7 @@
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages image)
   #:use-module (gnu packages libusb)
   #:use-module ((guix licenses)
                 #:prefix licence:))
@@ -55,7 +56,7 @@
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (inputs
-     `(("libusb-compat" ,libusb-compat)))
+     `(("libusb" ,libusb)))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
@@ -63,19 +64,27 @@
            (lambda _
              (setenv "BACKENDS" " ")
              #t))
-         ;; Disable unmaintained tests that that fail with errors resembling:
-         ;;
-         ;; < # by sane-desc 3.5 from sane-backends 1.0.24git on Jul 31 2013
-         ;; ---
-         ;; > # by sane-desc 3.5 from sane-backends 1.0.27 on 1970-01-01#
-         ;; FAIL: sane-desc -m usermap -s ./data
-         (add-before 'configure 'disable-failing-tests
+         (add-after 'unpack 'disable-failing-tests
            (lambda _
+             ;; Disable unmaintained tests that that fail with errors resembling:
+             ;;
+             ;; < # by sane-desc 3.5 from sane-backends 1.0.24git on Jul 31 2013
+             ;; ---
+             ;; > # by sane-desc 3.5 from sane-backends 1.0.27 on 1970-01-01#
+             ;; FAIL: sane-desc -m usermap -s ./data
              (for-each
               (lambda (pattern)
                 (substitute* "testsuite/tools/Makefile.in"
                   (((string-append " " pattern " ")) " ")))
               (list "usermap" "db" "udev" "udev\\+acl" "udev\\+hwdb" "hwdb"))
+
+             ;; Disable tests that try to connect to actual USB hardware & fail
+             ;; with the following error when no USB access is allowed at all:
+             ;;
+             ;; sanei_usb_test: sanei_usb_test.c:849: main: Assertion
+             ;; `test_init (1)' failed.
+             (substitute* "testsuite/sanei/Makefile.in"
+               (("sanei_usb_test\\$\\(EXEEXT\\) ") ""))
              #t))
          (add-after 'install 'install-udev-rules
            (lambda* (#:key outputs #:allow-other-keys)
@@ -104,6 +113,7 @@ package contains the library, but no drivers.")
     (name "sane-backends")
     (inputs
      `(("hplip" ,(@ (gnu packages cups) hplip-minimal))
+       ("libpng" ,libpng)               ; support ‘scanimage --format=png’
        ,@(package-inputs sane-backends-minimal)))
     (arguments
      (substitute-keyword-arguments (package-arguments sane-backends-minimal)
diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm
index 8ee6b4d32f..9969cad8ac 100644
--- a/gnu/packages/search.scm
+++ b/gnu/packages/search.scm
@@ -47,14 +47,14 @@
 (define-public xapian
   (package
     (name "xapian")
-    (version "1.4.10")
+    (version "1.4.11")
     ;; Note: When updating Xapian, remember to update xapian-bindings below.
     (source (origin
               (method url-fetch)
               (uri (string-append "https://oligarchy.co.uk/xapian/" version
                                   "/xapian-core-" version ".tar.xz"))
               (sha256
-               (base32 "1f4vf1w1yvsn9mn462q6snc8wkmfpifp8wrlzs4aqi45w0kr6rk8"))))
+               (base32 "01xwqljnp5afjf9097lyfbqc6x5bcqszfdkn9l1j86imwbrv45lz"))))
     (build-system gnu-build-system)
     (inputs `(("zlib" ,zlib)
               ("util-linux" ,util-linux)))
@@ -92,7 +92,7 @@ rich set of boolean query operators.")
                                   "/xapian-bindings-" version ".tar.xz"))
               (sha256
                (base32
-                "0zqx5gcwm2mhx41fnfx30z9c31x96g5pskyrmx3c556mnklfpask"))))
+                "13bi2vr5d39ys49nlwmsv64ik5pdwkz28bh08hyylrhanb45d8wx"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags '("--with-python3")
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index e1f48db22d..eaca034366 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -593,14 +593,14 @@ nonlinear mixed-effects models.")
 (define-public r-mgcv
   (package
    (name "r-mgcv")
-   (version "1.8-26")
+   (version "1.8-27")
    (source
     (origin
      (method url-fetch)
      (uri (cran-uri "mgcv" version))
      (sha256
       (base32
-       "02bsz455fr5hyhpmgcrd266qafs2wbz3ygdipxg9gfazbdvq2v4q"))))
+       "06vx1z52gcdmji0phmphfa0sg62gwxkw590prplxgv4da7xrk2y8"))))
    (build-system r-build-system)
    (propagated-inputs
     `(("r-matrix" ,r-matrix)
@@ -1021,14 +1021,14 @@ solution for sending email, including attachments, from within R.")
 (define-public r-stringi
   (package
     (name "r-stringi")
-    (version "1.2.4")
+    (version "1.3.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "stringi" version))
        (sha256
         (base32
-         "1y46xab7g1lsjmilp4hbl7pjad6pcxp66hdj8wnfdg9518h0lmq1"))))
+         "0qn3xy6vnz11vv2prbm55vkbgxr6dl8w5vk5q8d7wlp9nqxndprj"))))
     (build-system r-build-system)
     (inputs `(("icu4c" ,icu4c)))
     (native-inputs `(("pkg-config" ,pkg-config)))
@@ -1047,13 +1047,13 @@ transliteration, concatenation, date-time formatting and parsing, etc.")
 (define-public r-stringr
   (package
     (name "r-stringr")
-    (version "1.3.1")
+    (version "1.4.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "stringr" version))
        (sha256
-        (base32 "0hq3ybz7clnifi5wdm2s6p2i0kzljdkv26blg6yphng472h8x2vs"))))
+        (base32 "1p9ip7p87gbbg4s6d3d392svvzz2b5dqdq2c8ilgvn4s78nlsq47"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-glue" ,r-glue)
@@ -1310,13 +1310,13 @@ for template use among CRAN packages.")
 (define-public r-evaluate
   (package
     (name "r-evaluate")
-    (version "0.12")
+    (version "0.13")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "evaluate" version))
               (sha256
                (base32
-                "11rpn40153kcvqqrfhg2ldqfs68frg6yzsl0k3rxnlnv4c0v008g"))))
+                "0igvc27rsqxcswjb9slnpi5d509rffxn1y5d82hgqvv970nl3p2q"))))
     (build-system r-build-system)
     (home-page "https://github.com/hadley/evaluate")
     (synopsis "Parsing and evaluation tools for R")
@@ -1330,13 +1330,13 @@ adapted for other output formats, such as HTML or LaTeX.")
 (define-public r-formatr
   (package
     (name "r-formatr")
-    (version "1.5")
+    (version "1.6")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "formatR" version))
               (sha256
                (base32
-                "19sd23vgs4ac0fwlw40j3676k6mramb0ajlq8hdw23kjwdx1jk47"))))
+                "0a9229rg3s9qga5v2fwfdqr0z3bk2yycv8kijrcm3jh66l68zjgm"))))
     (build-system r-build-system)
     (home-page "http://yihui.name/formatR")
     (synopsis "Format R code automatically")
@@ -1613,13 +1613,13 @@ flexible and easy to set up.")
 (define-public r-r6
   (package
     (name "r-r6")
-    (version "2.3.0")
+    (version "2.4.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "R6" version))
               (sha256
                (base32
-                "1jgshp0x8a65rwyvk31slnfp7l153dk5826y2rxcd5lpclby3d85"))))
+                "1kmbw2k5vvzwh3wwmn66mszpfny0z6k8dca980qgbxgvfh0i3gkh"))))
     (build-system r-build-system)
     (home-page "https://github.com/wch/R6/")
     (synopsis "Classes with reference semantics in R")
@@ -1679,28 +1679,26 @@ and printing capabilities than traditional data frames.")
 (define-public r-dplyr
   (package
     (name "r-dplyr")
-    (version "0.7.8")
+    (version "0.8.0.1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "dplyr" version))
               (sha256
                (base32
-                "06p59nhli8c1sarghzxq0y4pk6lyyz3xwkarp55b252dfg2rly9p"))))
+                "0p6dbjrgqyklc67g53v1a5xdp9x2jpcsdcs6v3djf9d366fqh244"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-assertthat" ,r-assertthat)
-       ("r-r6" ,r-r6)
-       ("r-magrittr" ,r-magrittr)
-       ("r-rlang" ,r-rlang)
-       ("r-plogr" ,r-plogr)
+       ("r-bh" ,r-bh)
        ("r-glue" ,r-glue)
+       ("r-magrittr" ,r-magrittr)
        ("r-pkgconfig" ,r-pkgconfig)
-       ("r-bindrcpp" ,r-bindrcpp)
+       ("r-plogr" ,r-plogr)
+       ("r-r6" ,r-r6)
+       ("r-rcpp" ,r-rcpp)
+       ("r-rlang" ,r-rlang)
        ("r-tibble" ,r-tibble)
        ("r-tidyselect" ,r-tidyselect)))
-    (native-inputs
-     `(("r-rcpp" ,r-rcpp)
-       ("r-bh" ,r-bh)))
     (home-page "https://github.com/hadley/dplyr")
     (synopsis "Tools for working with data frames in R")
     (description
@@ -2318,14 +2316,14 @@ collation, and NAMESPACE files.")
 (define-public r-openssl
   (package
     (name "r-openssl")
-    (version "1.2.1")
+    (version "1.2.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "openssl" version))
        (sha256
         (base32
-         "0ypa41qr58jgipzkqn3wjqdsjyi7qk57i46s5wy88xy3j8jl9jkv"))))
+         "0jfkna9zzhy2m5qd8501ija5jnpxzjn8wi3wjw0kr2fm4sl7qynz"))))
     (build-system r-build-system)
     (inputs
      `(("libressl" ,libressl)))
@@ -2630,13 +2628,13 @@ vectors.")
 (define-public r-catools
   (package
     (name "r-catools")
-    (version "1.17.1.1")
+    (version "1.17.1.2")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "caTools" version))
               (sha256
                (base32
-                "01hccp05gz25vhz9nnxv1c91lrxlr7drcw9xf124gggifxf2qgnm"))))
+                "0svj31y7h8vimvliygmmbl7pk850qk80k1vn38mlcxsnmcpm9k39"))))
     (properties `((upstream-name . "caTools")))
     (build-system r-build-system)
     (propagated-inputs
@@ -2862,13 +2860,13 @@ ldap, and also supports cookies, redirects, authentication, etc.")
 (define-public r-xml
   (package
     (name "r-xml")
-    (version "3.98-1.16")
+    (version "3.98-1.19")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "XML" version))
               (sha256
                (base32
-                "0nl1kk354r8snhj6p9mc74m7awvqc6akmd4y3a46y78yv3g15njp"))))
+                "1axyfa56q45x7z4zd56aasdn9hz9niv2vv5qm1zp9i94vyic9cc1"))))
     (properties
      `((upstream-name . "XML")))
     (build-system r-build-system)
@@ -3197,14 +3195,14 @@ flexible than the orphaned \"base64\" package.")
 (define-public r-irlba
   (package
     (name "r-irlba")
-    (version "2.3.2")
+    (version "2.3.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "irlba" version))
        (sha256
         (base32
-         "0f7wb12wa0zbyllk5adcf4f517wgjpkhsx4j176i9ax6xy7jvprz"))))
+         "1h7mzrqdjc41814cf6c93sbyl7nxwvsf3x8apl9rhmydgdlk7qkf"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-matrix" ,r-matrix)))
@@ -3276,14 +3274,14 @@ options and registries, vignette, unit test and bibtex related utilities.")
  (define-public r-registry
    (package
      (name "r-registry")
-     (version "0.5")
+     (version "0.5-1")
      (source
       (origin
         (method url-fetch)
         (uri (cran-uri "registry" version))
         (sha256
          (base32
-          "1yqfl1g6vsl28zn8brzc39659k8lqsmfms7900j7p64ilydyb2sx"))))
+          "1k3j6dx350awamr0dwwgkhfs46vsnj4nf08iw5byq0x7n3nkdsnz"))))
      (build-system r-build-system)
      (home-page "https://cran.r-project.org/web/packages/registry")
      (synopsis "Infrastructure for R package registries")
@@ -3523,13 +3521,13 @@ maintenance for package developers.")
 (define-public r-r-utils
   (package
     (name "r-r-utils")
-    (version "2.7.0")
+    (version "2.8.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "R.utils" version))
               (sha256
                (base32
-                "0cxhn14a57x4gcyrwpfz1d6dw4xh0jcpqkb33hx8imnr340blh7n"))))
+                "1jaarld1jgpzh18kh9g3rlzcrk51vdgn2n1d1y28szzxlz94vifg"))))
     (properties `((upstream-name . "R.utils")))
     (build-system r-build-system)
     (propagated-inputs
@@ -3571,13 +3569,13 @@ persistent (on the file system).")
 (define-public r-r-rsp
   (package
     (name "r-r-rsp")
-    (version "0.43.0")
+    (version "0.43.1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "R.rsp" version))
               (sha256
                (base32
-                "0ax6781kfylx0acz0i3sqnpkxmrq73x29wwfic59ng7vj0ws0gyd"))))
+                "0i01p8jxc4j4zl2v2ykvvpfnm5hv650zj1wi1dh8hq0c98xi2yfr"))))
     (properties `((upstream-name . "R.rsp")))
     (build-system r-build-system)
     (propagated-inputs
@@ -3603,13 +3601,13 @@ vignettes.")
 (define-public r-mvtnorm
   (package
     (name "r-mvtnorm")
-    (version "1.0-8")
+    (version "1.0-10")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "mvtnorm" version))
               (sha256
                (base32
-                "0la42lylb7cjrcrc285bn69bz9kyg556xw317iz139dp1yswl410"))))
+                "04md0wmqgif24g0a4hx19ifn4kk8nx10986vf2d9vascig6ikpri"))))
     (build-system r-build-system)
     (inputs
      `(("gfortran" ,gfortran)))
@@ -3724,14 +3722,14 @@ selection.")
 (define-public r-tidyr
   (package
     (name "r-tidyr")
-    (version "0.8.2")
+    (version "0.8.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "tidyr" version))
        (sha256
         (base32
-         "03s9dv6c2dj65a769h8fgy9878y46rdq7x65i53kd44kag80i9cr"))))
+         "0dyc4b03wi65bk7j0ma0y188syh37h57wgxji82i0h8j6pn593x1"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-dplyr" ,r-dplyr)
@@ -3780,14 +3778,14 @@ It uses and relies on grid graphics and formal (S4) classes and methods.")
 (define-public r-purrr
   (package
     (name "r-purrr")
-    (version "0.3.0")
+    (version "0.3.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "purrr" version))
        (sha256
         (base32
-         "0mzbf9ca8qdrqkrh9x7yzqxiab9bk10ql46qr1wl2bgbflminzda"))))
+         "0fw8nyrwf009fpj3457binw5s02si226yrvn96hdivwj268ck8y2"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-magrittr" ,r-magrittr)
@@ -4424,13 +4422,13 @@ data at that region, and avoids over-plotting.")
 (define-public r-ggthemes
   (package
     (name "r-ggthemes")
-    (version "4.0.1")
+    (version "4.1.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "ggthemes" version))
               (sha256
                (base32
-                "0y6570wv135sf7pv57l7bqilzw47rziaqx4vsk45pf1w4lmj0w8b"))))
+                "1a6r384v72hb91qkg9rz2m7s3qskbl9haxynf2vzz6v1ak9xd4c5"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-ggplot2" ,r-ggplot2)
@@ -4702,14 +4700,14 @@ to change in the future.")
 (define-public r-flexmix
   (package
     (name "r-flexmix")
-    (version "2.3-14")
+    (version "2.3-15")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "flexmix" version))
        (sha256
         (base32
-         "0sl4zxh1sb2sr5q7svjw9ihrm219jzn82yrc9d43q6r1b8bpyz43"))))
+         "0hrz2axp2c9548b1r0bmrl57219nn030qndb83a8garkzq5lqi5s"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-lattice" ,r-lattice)
@@ -4981,14 +4979,14 @@ groupings.")
 (define-public r-vgam
   (package
     (name "r-vgam")
-    (version "1.0-6")
+    (version "1.1-1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "VGAM" version))
        (sha256
         (base32
-         "1fg31xz86jblqraifiy3q36d0hjqnll01jxx85xq87j1cyhj060j"))))
+         "0lnsqx3q3k0c7sj8gj0n6shn2fyxwrh8xph8h1r1i23ybbb2n6fy"))))
     (properties `((upstream-name . "VGAM")))
     (build-system r-build-system)
     (inputs
@@ -5006,14 +5004,14 @@ VGLMs can be loosely thought of as multivariate generalised linear models.")
 (define-public r-pbapply
   (package
     (name "r-pbapply")
-    (version "1.3-4")
+    (version "1.4-0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "pbapply" version))
        (sha256
         (base32
-         "0lk5kxac09xzdv6vf7ix6r5bfrm7cnpyr2l5mkd4igpciadszzfd"))))
+         "0bn7a9ni36xy5acnrl9ky3gd1k8jr5kxgazzh3pzd1q6bri1nx7k"))))
     (build-system r-build-system)
     (home-page "https://github.com/psolymos/pbapply")
     (synopsis "Adding progress bar to apply functions")
@@ -5175,25 +5173,25 @@ algorithms.")
 (define-public r-lme4
   (package
     (name "r-lme4")
-    (version "1.1-19")
+    (version "1.1-21")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "lme4" version))
        (sha256
         (base32
-         "0j8xhkkcdv45ilab960s9jrcjk6jbzvd7w7myswv5fmalrpq52pf"))))
+         "035j2hqkwv939xl07pm2vykvf3wlx8qj317846n9pkpqkyv58mbz"))))
     (build-system r-build-system)
-    (native-inputs
-     `(("r-rcpp" ,r-rcpp)
-       ("r-rcppeigen" ,r-rcppeigen)))
     (propagated-inputs
-     `(("r-lattice" ,r-lattice)
+     `(("r-boot" ,r-boot)
+       ("r-lattice" ,r-lattice)
+       ("r-mass" ,r-mass)
        ("r-matrix" ,r-matrix)
        ("r-minqa" ,r-minqa)
        ("r-nloptr" ,r-nloptr)
-       ("r-mass" ,r-mass)
-       ("r-nlme" ,r-nlme)))
+       ("r-nlme" ,r-nlme)
+       ("r-rcpp" ,r-rcpp)
+       ("r-rcppeigen" ,r-rcppeigen)))
     (home-page "https://cran.r-project.org/web/packages/lme4")
     (synopsis "Linear mixed-effects models using eigen and S4")
     (description
@@ -5428,14 +5426,14 @@ diagnostic tools (@code{ctlcurves} and @code{DiscrFact}).")
 (define-public r-ranger
   (package
     (name "r-ranger")
-    (version "0.11.1")
+    (version "0.11.2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "ranger" version))
        (sha256
         (base32
-         "1yyg1nppq76jngzffd44brppqrlxqdhv92pyy0gn09rfc0ab37wr"))))
+         "1sxyzxmjc6lm8wcmq15j6sscnza7aay4mr3dyri2zngx6fa8mb0k"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-rcpp" ,r-rcpp)
@@ -5561,17 +5559,18 @@ and the corresponding decision threshold.")
 (define-public r-forcats
   (package
     (name "r-forcats")
-    (version "0.3.0")
+    (version "0.4.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "forcats" version))
        (sha256
         (base32
-         "0mxn1hng43zdjh1v8shd80hrszrqahcpaqxs1s1sif0qxh84d0cm"))))
+         "1cnjh23z59fhbjmy7y95425hcq3m5wrwqvahsxwi7zm6d9bwp0vw"))))
     (build-system r-build-system)
     (propagated-inputs
-     `(("r-magrittr" ,r-magrittr)
+     `(("r-ellipsis" ,r-ellipsis)
+       ("r-magrittr" ,r-magrittr)
        ("r-tibble" ,r-tibble)
        ("r-rlang" ,r-rlang)))
     (home-page "http://forcats.tidyverse.org")
diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm
index e4f8c09016..5bb11b0400 100644
--- a/gnu/packages/syncthing.scm
+++ b/gnu/packages/syncthing.scm
@@ -30,7 +30,7 @@
 (define-public syncthing
   (package
     (name "syncthing")
-    (version "1.0.1")
+    (version "1.1.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/syncthing/syncthing"
@@ -38,7 +38,7 @@
                                   "/syncthing-source-v" version ".tar.gz"))
               (sha256
                (base32
-                "0gas07lxm5d2c21axgcs90r779rj9sk3jymnnffxz457rvpr2qn3"))
+                "1iks1a3149gj89yqmqa5iry2ik2sj9sjhlhc6nfh7xq4swqgsrb5"))
               ;; Since the update to Go 1.11, Go programs have been keeping
               ;; spurious references to all their dependencies:
               ;; <https://bugs.gnu.org/33620>.
diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 59cbe7cec7..b3979d8a41 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -410,7 +410,7 @@ has no notion of what's interesing, but it's very good at that notifying part.")
 (define-public unibilium
   (package
     (name "unibilium")
-    (version "1.2.1")
+    (version "2.0.0")
     (source
      (origin
        (method git-fetch)
@@ -420,7 +420,7 @@ has no notion of what's interesing, but it's very good at that notifying part.")
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "11mbfijdrvbmdlmxs8j4vij78ki0vna89yg3r9n9g1i6j45hiq2r"))))
+         "1wa9a32wzqnxqh1jh554afj13dzjr6mw2wzqzw8d08nza9pg2ra2"))))
     (build-system gnu-build-system)
     (arguments
      `(#:make-flags
@@ -433,7 +433,8 @@ has no notion of what's interesing, but it's very good at that notifying part.")
        (modify-phases %standard-phases
          (delete 'configure))))
     (native-inputs
-     `(("libtool" ,libtool)))
+     `(("libtool" ,libtool)
+       ("perl" ,perl)))
     (home-page "https://github.com/mauke/unibilium")
     (synopsis "Terminfo parsing library")
     (description "Unibilium is a basic C terminfo library.  It doesn't depend
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 7c682297f9..12589e2fe8 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -6469,3 +6469,77 @@ effects, varying slide transitions and animations.")
     ;; Code is dual licensed under GPLv2+ or LPPL1.3c+; documentation is
     ;; dual-licensed under either FDLv1.3+ or LPPL1.3c+.
     (license (list license:lppl1.3c+ license:gpl2+ license:fdl1.3+))))
+
+(define-public texlive-latex-xmpincl
+  (package
+    (name "texlive-latex-xmpincl")
+    (version (number->string %texlive-revision))
+    (source
+     (origin
+       (method svn-fetch)
+       (uri (texlive-ref "latex" "xmpincl"))
+       (sha256
+        (base32
+         "0lq3dfb4fsw955gjwllnk7cg00ciq5mva64mlpbva6g2jz117734"))))
+    (build-system texlive-build-system)
+    (arguments '(#:tex-directory "latex/xmpincl"))
+    (home-page "http://www.ctan.org/pkg/xmpincl")
+    (synopsis "Include eXtensible Metadata Platform data in pdfLaTeX")
+    (description
+     "The XMP (eXtensible Metadata platform) is a framework to add metadata to
+digital material to enhance the workflow in publication.  The essence is that
+the metadata is stored in an XML file, and this XML stream is then embedded in
+the file to which it applies.")
+    (license license:gpl3+)))
+
+(define-public texlive-latex-pdfx
+  (package
+    (name "texlive-latex-pdfx")
+    (version (number->string %texlive-revision))
+    (source
+     (origin
+       (method svn-fetch)
+       (uri (texlive-ref "latex" "pdfx"))
+       (sha256
+        (base32
+         "0ikxg8yzq78hy5b9x13d4nah46d0yvmwlqmdri06pygbx116dcac"))))
+    (build-system texlive-build-system)
+    (arguments
+     '(#:tex-directory "latex/pdfx"
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-encoding
+           (lambda _
+             (substitute* "pdfx.dtx"
+               (("    .+umaczy") "umaczy"))
+             #t))
+         (add-before 'install 'install-tex-files
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((target (string-append (assoc-ref outputs "out")
+                                          "/share/texmf-dist/tex/latex/pdfx")))
+               (mkdir-p target)
+               (copy-recursively (assoc-ref inputs "texlive-tex-pdfx") target)
+               ;; Install the generated version in the "install" phase.
+               (delete-file (string-append target "/pdfx.sty"))
+               #t))))))
+    (propagated-inputs
+     `(("texlive-generic-pdftex" ,texlive-generic-pdftex)))
+    (native-inputs
+     `(("texlive-tex-pdfx"
+        ,(origin
+           (method svn-fetch)
+           (uri (svn-reference
+                 (url (string-append "svn://www.tug.org/texlive/tags/"
+                                     %texlive-tag "/Master/texmf-dist/"
+                                     "/tex/latex/pdfx"))
+                 (revision %texlive-revision)))
+           (file-name (string-append "texlive-tex-latex-pdfx-" version "-checkout"))
+           (sha256
+            (base32
+             "14j1zsvqc59ims3sk34v6km8db6cimks28y5fcxcr5mi2ykvj4vf"))))))
+    (home-page "https://www.ctan.org/pkg/pdfx")
+    (synopsis "PDF/X and PDF/A support for pdfTeX, LuaTeX and XeTeX")
+    (description
+     "This package helps LaTeX users to create PDF/X, PFD/A and other
+standards-compliant PDF documents with pdfTeX, LuaTeX and XeTeX.")
+    (license license:lppl1.2+)))
diff --git a/gnu/packages/uml.scm b/gnu/packages/uml.scm
index b49a85d932..b4c9629769 100644
--- a/gnu/packages/uml.scm
+++ b/gnu/packages/uml.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
 ;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -29,17 +30,17 @@
 (define-public plantuml
   (package
     (name "plantuml")
-    (version "1.2019.0")
+    (version "1.2019.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/plantuml/"
                                   version "/plantuml-" version ".tar.gz"))
               (sha256
                (base32
-                "0mws7g0w3fn0wxizccg2iqisq9ljkn95i5qf8ma07lbw3nj0h48n"))))
+                "0hqj2crf6yg40naiwlnnym4c6r0wbz5vr8729z0daggnyg8vqniz"))))
     (build-system ant-build-system)
     (arguments
-     `(#:tests? #f ; no tests
+     `(#:tests? #f                      ; no tests
        #:build-target "dist"
        #:phases
        (modify-phases %standard-phases
diff --git a/gnu/packages/valgrind.scm b/gnu/packages/valgrind.scm
index 6c06b24c1c..9952fa1647 100644
--- a/gnu/packages/valgrind.scm
+++ b/gnu/packages/valgrind.scm
@@ -32,16 +32,17 @@
 (define-public valgrind
   (package
     (name "valgrind")
-    (version "3.13.0")
+    (version "3.14.0")
     (source (origin
               (method url-fetch)
-             (uri (string-append "ftp://sourceware.org/pub/valgrind/valgrind-"
-                                 version ".tar.bz2"))
-             (sha256
-              (base32
-               "0fqc3684grrbxwsic1rc5ryxzxmigzjx9p5vf3lxa37h0gpq0rnp"))
-             (patches (search-patches "valgrind-enable-arm.patch"
-                                      "valgrind-glibc-compat.patch"))))
+              (uri (list (string-append "http://www.valgrind.org/downloads"
+                                        "/valgrind-" version ".tar.bz2")
+                         (string-append "ftp://sourceware.org/pub/valgrind"
+                                        "/valgrind-" version ".tar.bz2")))
+              (sha256
+               (base32
+                "19ds42jwd89zrsjb94g7gizkkzipn8xik3xykrpcqxylxyzi2z03"))
+              (patches (search-patches "valgrind-enable-arm.patch"))))
     (build-system gnu-build-system)
     (outputs '("doc"                              ;16 MB
                "out"))
@@ -77,8 +78,4 @@
 tools.  There are Valgrind tools that can automatically detect many memory
 management and threading bugs, and profile your programs in detail.  You can
 also use Valgrind to build new tools.")
-    (license gpl2+)
-
-    ;; Building VEX on mips64el-linux fails with "opcode not supported on this
-    ;; processor: mips3".
-    (supported-systems (delete "mips64el-linux" %supported-systems))))
+    (license gpl2+)))
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index baf49e64f5..4e5ca28784 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -1297,7 +1297,7 @@ following features:
 (define-public subversion
   (package
     (name "subversion")
-    (version "1.10.2")
+    (version "1.10.4")
     (source (origin
              (method url-fetch)
              (uri
@@ -1308,7 +1308,7 @@ following features:
                                 "subversion-" version ".tar.bz2")))
              (sha256
               (base32
-               "127dysfc31q4dhbbxaznh9kqixy9jd44kgwji2gdwj6rb2lf6dav"))))
+               "18c1vdq32nil76w678lxmp73jsbqha3dmzgmfrj76nc0xjmywql2"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 8de46c49bc..3da73277b9 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
@@ -33,6 +33,7 @@
 ;;; Copyright © 2018 Gábor Boskovit <boskovits@gmail.com>
 ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2019 Timo Eisenmann <eisenmann@fn.de>
+;;; Copyright © 2019 Arne Babenhauserheide <arne_bab@web.de>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -240,6 +241,43 @@ A/52 standard is used in a variety of applications, including digital
 television and DVD.  It is also known as AC-3.")
     (license license:gpl2+)))
 
+(define-public libaom
+  ;; The 1.0.0-errata1 release installs a broken pkg-config .pc file.  This
+  ;; is fixed in libaom commit 0ddc150, but we use an even later commit.
+  (let ((commit "22b150bf040608028a56d8bf39e72f771383d836")
+        (revision "0"))
+    (package
+      (name "libaom")
+      (version (git-version "1.0.0-errata1" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://aomedia.googlesource.com/aom/")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1pdd5h3n42607n6qmggz4yv8izhjr2kl6knb3kh7gh4v0vy47h1r"))))
+      (build-system cmake-build-system)
+      (native-inputs
+       `(("perl" ,perl)
+         ("pkg-config" ,pkg-config)
+         ("python" ,python))) ; to detect the version
+      (arguments
+       `(#:tests? #f  ;no check target
+         #:configure-flags
+           ;; build dynamic library
+         (list "-DBUILD_SHARED_LIBS=YES"
+               "-DENABLE_PIC=TRUE"
+               "-DAOM_TARGET_CPU=generic"
+               (string-append "-DCMAKE_INSTALL_PREFIX="
+                                (assoc-ref %outputs "out")))))
+      (home-page "https://aomedia.googlesource.com/aom/")
+      (synopsis "AV1 video codec")
+      (description "Libaom is the reference implementation of AV1.  It includes
+a shared library and encoder and decoder command-line executables.")
+      (license license:bsd-2))))
+
 (define-public libmpeg2
   (package
     (name "libmpeg2")
@@ -707,6 +745,7 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).")
        ("opus" ,opus)
        ("ladspa" ,ladspa)
        ("lame" ,lame)
+       ("libaom" ,libaom)
        ("libass" ,libass)
        ("libbluray" ,libbluray)
        ("libcaca" ,libcaca)
@@ -793,6 +832,7 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).")
          "--enable-fontconfig"
          "--enable-gnutls"
          "--enable-ladspa"
+         "--enable-libaom"
          "--enable-libass"
          "--enable-libbluray"
          "--enable-libcaca"
@@ -875,7 +915,13 @@ audio/video codec library.")
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0b59qk5wpc5ksiha76jbhb859g5gxa4w0k6afh3kgvgajiivs73l"))))))
+               "0b59qk5wpc5ksiha76jbhb859g5gxa4w0k6afh3kgvgajiivs73l"))))
+    (arguments
+     (substitute-keyword-arguments (package-arguments ffmpeg)
+       ((#:configure-flags flags)
+        `(delete "--enable-libaom" ,flags))))
+    (inputs (alist-delete "libaom"
+                          (package-inputs ffmpeg)))))
 
 (define-public ffmpeg-for-stepmania
   (hidden-package
@@ -1366,7 +1412,7 @@ access to mpv's powerful playback capabilities.")
 (define-public youtube-dl
   (package
     (name "youtube-dl")
-    (version "2019.02.18")
+    (version "2019.03.01")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/rg3/youtube-dl/releases/"
@@ -1374,7 +1420,7 @@ access to mpv's powerful playback capabilities.")
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1sr0f6ixpaqyp3cf29zswx84y3nfabwnk3sljcgvgnmjp73zzfv1"))))
+                "0bxk6adyppdv50jnp5cika8wc6wfgd6d8zbg1njgmcs1pxskllmf"))))
     (build-system python-build-system)
     (arguments
      ;; The problem here is that the directory for the man page and completion
@@ -1485,7 +1531,7 @@ other site that youtube-dl supports.")
 (define-public you-get
   (package
     (name "you-get")
-    (version "0.4.1210")
+    (version "0.4.1256")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1494,7 +1540,7 @@ other site that youtube-dl supports.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1plw518hzpzzcr38phlnsbpq7aqnps8iwrgr68f6d41rppl1qb25"))))
+                "1hzr7ha1jvbc0v2bwl7s08ymwdmvb0f2jz4xp1fi6agq5y3ca1iv"))))
     (build-system python-build-system)
     (inputs
      `(("ffmpeg" ,ffmpeg)))             ; for multi-part and >=1080p videos
@@ -1524,7 +1570,7 @@ audio, images) from the Web.  It can use either mpv or vlc for playback.")
 (define-public youtube-viewer
   (package
     (name "youtube-viewer")
-    (version "3.5.2")
+    (version "3.5.4")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1533,7 +1579,7 @@ audio, images) from the Web.  It can use either mpv or vlc for playback.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0sx0f7jgc41a4anflw02zqk5yivydn02nn78kxkn3fik6xdmv3yd"))))
+                "1j782m9rximybamd0qsc43hi7hgk333x9gy3ypzb61s0sifs0i6m"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-module-build" ,perl-module-build)))
@@ -2191,15 +2237,16 @@ and JACK.")
 (define-public libvdpau
   (package
     (name "libvdpau")
-    (version "1.1.1")
+    (version "1.2")
     (source
       (origin
         (method url-fetch)
-        (uri (string-append "https://secure.freedesktop.org/~aplattner/vdpau/"
-                            name "-" version ".tar.bz2"))
+        (uri (string-append "https://gitlab.freedesktop.org/vdpau/libvdpau"
+                            "/uploads/14b620084c027d546fa0b3f083b800c6/"
+                            "libvdpau-" version ".tar.bz2"))
         (sha256
          (base32
-          "0dnpb0yh7v6rvckx82kxg045rd9rbsw25wjv7ad5n8h94s9h2yl5"))))
+          "01ps6g6p6q7j2mjm9vn44pmzq3g75mm7mdgmnhb1qkjjdwc9njba"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -2352,7 +2399,7 @@ Other features include a live preview and live streaming.")
 (define-public libsmpeg
   (package
     (name "libsmpeg")
-    (version "0.4.5")
+    (version "0.4.5-401")
     (source (origin
               (method svn-fetch)
               (uri (svn-reference
@@ -2387,6 +2434,23 @@ and MPEG system streams.")
                    license:lgpl2.1+
                    license:gpl2))))
 
+;; for btanks
+(define-public libsmpeg-with-sdl1
+  (package (inherit libsmpeg)
+    (name "libsmpeg")
+    (version "0.4.5-399")
+    (source (origin
+              (method svn-fetch)
+              (uri (svn-reference
+                    (url "svn://svn.icculus.org/smpeg/trunk/")
+                    (revision 399))) ; tagged release 0.4.5
+              (file-name (string-append name "-" version "-checkout"))
+              (sha256
+               (base32
+                "0jfi085rf3fa5xsn0vd3nqf32my8ph9c6a9445y7a8lrlz4dms64"))))
+    (inputs
+     `(("sdl" ,sdl)))))
+
 (define-public libbdplus
   (package
     (name "libbdplus")
@@ -3323,15 +3387,20 @@ transitions, and effects and then export your film to many common formats.")
 (define-public dav1d
   (package
     (name "dav1d")
-    (version "0.1.0")
+    (version "0.2.0")
     (source
       (origin
         (method url-fetch)
-        (uri (string-append "https://downloads.videolan.org/pub/videolan/"
-                            "dav1d/" version "/dav1d-" version ".tar.xz"))
+        (uri (list ;; The canonical download site
+                   (string-append "https://downloads.videolan.org/pub/videolan/"
+                                  "dav1d/" version "/dav1d-" version ".tar.xz")
+
+                   ;; Auto-generated tarballs from the Git repo?
+                   (string-append "https://code.videolan.org/videolan/dav1d/-/"
+                                  "archive/" version "/dav1d-" version ".tar.bz2")))
         (sha256
          (base32
-          "0dw0liday8cbyrirhm6bgzhxg4cdy66nspfkdlq338gdsfqcvrsc"))))
+          "0q0dbbl91syjnkygz268gh4b7mdcgl6hldj300a4cbqidsadpl5p"))))
     (build-system meson-build-system)
     (native-inputs `(("nasm" ,nasm)))
     (home-page "https://code.videolan.org/videolan/dav1d")
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 5e1e9b852c..6a98f0a5a4 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -693,6 +693,13 @@ are detected, the user is notified.")))
        #:configure-flags '("-DPREFER_LUA:BOOL=YES")
        #:phases
        (modify-phases %standard-phases
+         ;; TODO: remove 'patch-tic on update
+         ;; see: https://github.com/neovim/neovim/issues/9687
+         (add-after 'unpack 'patch-tic
+           (lambda _
+             (substitute* "src/nvim/tui/tui.c"
+               (("value != NULL") "value != NULL && value != (char *)-1"))
+             #t))
          (add-after 'unpack 'set-lua-paths
            (lambda* (#:key inputs #:allow-other-keys)
              (let* ((lua-version "5.2")
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 47e24460f9..5b5d5a518a 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -354,7 +354,7 @@ all common programming languages.  Vala bindings are also provided.")
 (define-public lxc
   (package
     (name "lxc")
-    (version "3.0.2")
+    (version "3.1.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -362,7 +362,7 @@ all common programming languages.  Vala bindings are also provided.")
                     version ".tar.gz"))
               (sha256
                (base32
-                "0p1gy553cm4mhwxi85fl6qiwz61rjmvysm8c8pd20qh62xxi3dva"))))
+                "1igxqgx8q9cp15mcp1y8j564bl85ijw04jcmgb1s5bmfbg1751sd"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -372,9 +372,11 @@ all common programming languages.  Vala bindings are also provided.")
        ("libseccomp" ,libseccomp)
        ("libselinux" ,libselinux)))
     (arguments
-     '(#:configure-flags
-       '("--sysconfdir=/etc"
-         "--localstatedir=/var")
+     `(#:configure-flags
+       (list (string-append "--docdir=" (assoc-ref %outputs "out")
+                            "/share/doc/" ,name "-" ,version)
+             "--sysconfdir=/etc"
+             "--localstatedir=/var")
        #:phases
        (modify-phases %standard-phases
          (replace 'install
diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index f15b111a92..6475a738d4 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com>
 ;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -454,19 +455,20 @@ The peer-to-peer VPN implements a Layer 2 (Ethernet) network between the peers
 (define-public wireguard
   (package
     (name "wireguard")
-    (version "0.0.20190123")
+    (version "0.0.20190227")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/"
                                   "WireGuard-" version ".tar.xz"))
               (sha256
                (base32
-                "16yzzy4i0z2zslmyr3kppkvkrxryzwdil6v270w9w5mg65v3rlgd"))))
+                "0ybzycpjjidyiz88kkh67abvp3y30f34252dwpgf3ncj4vyjdnzw"))))
     (build-system gnu-build-system)
     (outputs '("out" ; The WireGuard userspace tools
                "kernel-patch")) ; A patch to build Linux with WireGuard support
     (arguments
-     `(#:make-flags
+     `(#:tests? #f ; No tests available.
+       #:make-flags
        (list "CC=gcc"
              "WITH_BASHCOMPLETION=yes"
              ;; Build and install the helper script wg-quick(8).
diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index d4b8b7a691..98a0523ee7 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -32,6 +32,7 @@
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages freedesktop)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages pkg-config)
@@ -42,8 +43,8 @@
 (define-public spirv-headers
   ;; Keep updated in accordance with
   ;; https://github.com/google/shaderc/blob/known-good/known_good.json
-  (let ((commit "3ce3e49d73b8abbf2ffe33f829f941fb2a40f552")
-        (revision "3"))
+  (let ((commit "8bea0a266ac9b718aa0818d9e3a47c0b77c2cb23")
+        (revision "4"))
     (package
       (name "spirv-headers")
       (version (string-append "0.0-" revision "." (string-take commit 9)))
@@ -55,7 +56,7 @@
                (commit commit)))
          (sha256
           (base32
-           "0yk4bzqifdqpmdxkhvrxbdqhf5ngkga0ig1yyz7khr7rklqfz7wp"))
+           "01qyjghjz42hmyw9111zz20a1paf37ps39p4xbj8abjba65d8lqx"))
          (file-name (string-append name "-" version "-checkout"))))
       (build-system cmake-build-system)
       (arguments
@@ -83,87 +84,86 @@ and for the GLSL.std.450 extended instruction set.
                                commit "/LICENSE"))))))
 
 (define-public spirv-tools
-  ;; Keep updated in accordance with
-  ;; https://github.com/google/shaderc/blob/known-good/known_good.json
-  (let ((commit "fe2fbee294a8ad4434f828a8b4d99eafe9aac88c")
-        (revision "2"))
-    (package
-     (name "spirv-tools")
-     (version (string-append "0.0-" revision "." (string-take commit 9)))
-     (source
-      (origin
+  (package
+    (name "spirv-tools")
+    (version "2019.1")
+    (source
+     (origin
+      (method git-fetch)
+      (uri (git-reference
+            (url "https://github.com/KhronosGroup/SPIRV-Tools")
+            (commit (string-append "v" version))))
+      (sha256
+       (base32
+        "0vddjzhkrhrm3l3i57nxmq2smv3r1s0ka5ff2kziaahr4hqb479r"))
+      (file-name (string-append name "-" version "-checkout"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ; FIXME: Tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'fixgcc7
+           (lambda _
+             (unsetenv "C_INCLUDE_PATH")
+             (unsetenv "CPLUS_INCLUDE_PATH")
+             #t)))
+       #:configure-flags (list (string-append "-DSPIRV-Headers_SOURCE_DIR="
+                               (assoc-ref %build-inputs "spirv-headers")))))
+    (inputs `(("spirv-headers" ,spirv-headers)))
+    (native-inputs `(("gcc" ,gcc-7)
+                     ("pkg-config" ,pkg-config)
+                     ("python" ,python)))
+    (home-page "https://github.com/KhronosGroup/SPIRV-Tools")
+    (synopsis "API and commands for processing SPIR-V modules")
+    (description
+     "The SPIR-V Tools project provides an API and commands for processing
+SPIR-V modules.  The project includes an assembler, binary module
+parser,disassembler, validator, and optimizer for SPIR-V.")
+    (license license:asl2.0)))
+
+(define-public glslang
+  (package
+    (name "glslang")
+    (version "7.11.3113")
+    (source
+     (origin
        (method git-fetch)
        (uri (git-reference
-             (url "https://github.com/KhronosGroup/SPIRV-Tools")
-             (commit commit)))
+             (url "https://github.com/KhronosGroup/glslang")
+             (commit version)))
        (sha256
         (base32
-         "03rq4ypwqnz34n8ip85n95a3b9rxb34j26azzm3b3invaqchv19x"))
+         "1kzv2b4q1fddxd7c0hc754nd6rw6y9vijb9fsi13xzzq9dficgb6"))
        (file-name (string-append name "-" version "-checkout"))))
-     (build-system cmake-build-system)
-     (arguments
-      `(#:tests? #f ; FIXME: Tests fail.
-        #:configure-flags (list (string-append "-DSPIRV-Headers_SOURCE_DIR="
-                                               (assoc-ref %build-inputs
-                                                          "spirv-headers")))))
-     (inputs `(("spirv-headers" ,spirv-headers)))
-     (native-inputs `(("pkg-config" ,pkg-config)
-                      ("python" ,python)))
-     (home-page "https://github.com/KhronosGroup/SPIRV-Tools")
-     (synopsis "API and commands for processing SPIR-V modules")
-     (description
-      "The SPIR-V Tools project provides an API and commands for processing
-SPIR-V modules.  The project includes an assembler, binary module parser,
-disassembler, validator, and optimizer for SPIR-V.")
-     (license license:asl2.0))))
-
-(define-public glslang
-  ;; Keep updated in accordance with
-  ;; https://github.com/google/shaderc/blob/known-good/known_good.json
-  (let ((commit "32d3ec319909fcad0b2b308fe1635198773e8316")
-        (revision "3"))
-    (package
-      (name "glslang")
-      (version (string-append "3.0-" revision "." (string-take commit 9)))
-      (source
-       (origin
-         (method git-fetch)
-         (uri (git-reference
-               (url "https://github.com/KhronosGroup/glslang")
-               (commit commit)))
-         (sha256
-          (base32
-           "1kmgjv5kbrjy6azpgwnjcn3cj8vg5i8hnyk3m969sc0gq2j1rbjj"))
-         (file-name (string-append name "-" version "-checkout"))))
-      (build-system cmake-build-system)
-      (arguments
-       `(#:tests? #f ;; No tests
-         ;; glslang tries to set CMAKE_INSTALL_PREFIX manually. Remove the
-         ;; offending line.
-         #:phases (modify-phases %standard-phases
-                    (add-after 'patch-source-shebangs 'fix-cmakelists
-                      (lambda _
-                        (substitute* "CMakeLists.txt"
-                          (("set.*CMAKE_INSTALL_PREFIX.*") ""))
-                        #t)))))
-      (native-inputs `(("bison" ,bison)
-                       ("pkg-config" ,pkg-config)))
-      (home-page "https://github.com/KhronosGroup/glslang")
-      (synopsis "OpenGL and OpenGL ES shader front end and validator")
-      (description
-       "Glslang is the official reference compiler front end for the
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ;; No tests
+       ;; glslang tries to set CMAKE_INSTALL_PREFIX manually. Remove the
+       ;; offending line.
+       #:phases (modify-phases %standard-phases
+                  (add-after 'patch-source-shebangs 'fix-cmakelists
+                    (lambda _
+                      (substitute* "CMakeLists.txt"
+                        (("set.*CMAKE_INSTALL_PREFIX.*") ""))
+                      #t)))))
+    (native-inputs `(("bison" ,bison)
+                     ("pkg-config" ,pkg-config)))
+    (home-page "https://github.com/KhronosGroup/glslang")
+    (synopsis "OpenGL and OpenGL ES shader front end and validator")
+    (description
+     "Glslang is the official reference compiler front end for the
 OpenGL@tie{}ES and OpenGL shading languages.  It implements a strict
 interpretation of the specifications for these languages.")
-      ;; Modified BSD license. See "copyright" section of
-      ;; https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/
-      (license (list license:bsd-3
-                     ;; include/SPIRV/{bitutils,hex_float}.h are Apache 2.0.
-                     license:asl2.0)))))
+    ;; Modified BSD license. See "copyright" section of
+    ;; https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/
+    (license (list license:bsd-3
+                   ;; include/SPIRV/{bitutils,hex_float}.h are Apache 2.0.
+                   license:asl2.0))))
 
 (define-public vulkan-headers
   (package
     (name "vulkan-headers")
-    (version "1.1.101")
+    (version "1.1.102")
     (source
      (origin
        (method git-fetch)
@@ -173,7 +173,7 @@ interpretation of the specifications for these languages.")
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "1hb1lg56i2685nz7i4hbsv3sz1iym2wimjz4bfa175xh5jyvr0km"))))
+         "1dkjg48l7dfpq16bq1w9c3y9dwpj2hhv7b3njvj52lpgpa14s0f9"))))
     (build-system cmake-build-system)
     (arguments
      `(#:tests? #f))                    ; No tests.
@@ -197,7 +197,7 @@ interpretation of the specifications for these languages.")
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "02xkjaack3zmbsnh95jbkkdarf7ccfpfjby12kikajwr0kr4d4df"))))
+         "0ccpklv251jcz2lxvd5ix5i3cg4wb7qq5xi6cwvniy1rw52z7h00"))))
     (build-system cmake-build-system)
     (arguments
      `(#:tests? #f ;FIXME: 23/39 tests fail.  Try "tests/run_all_tests.sh".
@@ -244,7 +244,7 @@ and the ICD.")
 (define-public vulkan-tools
   (package
     (name "vulkan-tools")
-    (version "1.1.100")
+    (version (package-version vulkan-headers))
     (source
      (origin
        (method git-fetch)
@@ -254,7 +254,7 @@ and the ICD.")
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "1b9c8yimn34b77nbrkra4qj71gcw8zr0cgdp85ghxampm7gzx0xi"))))
+         "0a8vmgyn7an21bb9vxba9laf9ghvk905vn7rm8frdl8qr2b7vyw3"))))
     (build-system cmake-build-system)
     (inputs
      `(("glslang" ,glslang)
@@ -267,7 +267,9 @@ and the ICD.")
      `(("pkg-config" ,pkg-config)
        ("python" ,python)))
     (arguments
-     `(#:tests? #f))                    ; No tests.
+     `(#:tests? #f                      ; No tests.
+       #:configure-flags (list (string-append "-DGLSLANG_INSTALL_DIR="
+                               (assoc-ref %build-inputs "glslang")))))
     (home-page
      "https://github.com/KhronosGroup/Vulkan-Tools")
     (synopsis "Tools and utilities for Vulkan")
@@ -278,75 +280,73 @@ API.")
     (license (list license:asl2.0)))) ;LICENSE.txt
 
 (define-public shaderc
-  (let ((commit "be8e0879750303a1de09385465d6b20ecb8b380d")
-        (revision "2"))
-    (package
-      (name "shaderc")
-      (version (git-version "0.0.0" revision commit))
-      (source
-       (origin
-         (method git-fetch)
-         (uri (git-reference
-               (url "https://github.com/google/shaderc")
-               (commit commit)))
-         (file-name (string-append name "-" version ".tar.gz"))
-         (sha256
-          (base32
-           "16p25ry2i4zrj00zihfpf210f8xd7g398ffbw25igvi9mbn4nbfd"))))
-      (build-system meson-build-system)
-      (arguments
-       `(#:tests? #f ; FIXME: Tests fail.
-         #:phases
-         (modify-phases %standard-phases
-           (replace 'configure
-             (lambda* (#:key outputs #:allow-other-keys)
-               (let ((out (assoc-ref outputs "out")))
-                 ;; Remove various lines and touch build-version.inc or
-                 ;; configuring won't work.
-                 (invoke "touch" "glslc/src/build-version.inc")
-                 (substitute* "CMakeLists.txt" (("..PYTHON_EXE..*") ""))
-                 (substitute* "CMakeLists.txt"
-                   ((".*update_build_version.py..*") ""))
-                 (substitute* "CMakeLists.txt"
-                   ((".*add_custom_target.build-version.*") ""))
-                 (substitute* "CMakeLists.txt"
-                   ((".*spirv-tools_SOURCE_DIR.*glslang_SOURCE_DIR.*")
-                    ""))
-                 (substitute* "CMakeLists.txt"
-                   ((".*Update build-version.inc.*") ""))
-                 (substitute* "CMakeLists.txt" ((".*--check.*") ""))
-                 (substitute* "glslc/src/main.cc" ((".*build-version.inc.*")
-                                                   "\"1\""))
-                 (invoke "cmake" "-GNinja" "-DCMAKE_BUILD_TYPE=Release"
-                         "-DSHADERC_SKIP_TESTS=ON"
-                         "-DCMAKE_INSTALL_LIBDIR=lib"
-                         (string-append "-DCMAKE_INSTALL_PREFIX="
-                                        out)))))
-           (add-after 'unpack 'unpack-sources
-             (lambda* (#:key inputs #:allow-other-keys)
-               (let ((spirv-tools-source (assoc-ref inputs "spirv-tools-source"))
-                     (spirv-headers-source (assoc-ref inputs "spirv-headers-source"))
-                     (glslang-source (assoc-ref inputs "glslang-source")))
-                 (copy-recursively spirv-tools-source "third_party/spirv-tools")
-                 (copy-recursively spirv-headers-source
-                                   (string-append "third_party/spirv-tools"
-                                                  "/external/spirv-headers"))
-                 (copy-recursively glslang-source "third_party/glslang")
-                 #t))))))
-      (inputs
-       `(("googletest" ,googletest)
-         ("python" ,python)))
-      (native-inputs
-       `(("cmake" ,cmake)
-         ("glslang-source" ,(package-source glslang))
-         ("pkg-config" ,pkg-config)
-         ("spirv-headers-source" ,(package-source spirv-headers))
-         ("spirv-tools-source" ,(package-source spirv-tools))))
-      (home-page "https://github.com/google/shaderc")
-      (synopsis "Tools for shader compilation")
-      (description "Shaderc is a collection of tools, libraries, and tests for
+  (package
+    (name "shaderc")
+    (version "2018.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/google/shaderc")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0qigmj0riw43pgjn5f6kpvk72fajssz1lc2aiqib5qvmj9rqq3hl"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:tests? #f ; FIXME: Tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               ;; Remove various lines and touch build-version.inc or
+               ;; configuring won't work.
+               (invoke "touch" "glslc/src/build-version.inc")
+               (substitute* "CMakeLists.txt" (("..PYTHON_EXE..*") ""))
+               (substitute* "CMakeLists.txt"
+                 ((".*update_build_version.py..*") ""))
+               (substitute* "CMakeLists.txt"
+                 ((".*add_custom_target.build-version.*") ""))
+               (substitute* "CMakeLists.txt"
+                 ((".*spirv-tools_SOURCE_DIR.*glslang_SOURCE_DIR.*")
+                  ""))
+               (substitute* "CMakeLists.txt"
+                 ((".*Update build-version.inc.*") ""))
+               (substitute* "CMakeLists.txt" ((".*--check.*") ""))
+               (substitute* "glslc/src/main.cc" ((".*build-version.inc.*")
+                                                 "\"1\""))
+               (invoke "cmake" "-GNinja" "-DCMAKE_BUILD_TYPE=Release"
+                       "-DSHADERC_SKIP_TESTS=ON"
+                       "-DCMAKE_INSTALL_LIBDIR=lib"
+                       (string-append "-DCMAKE_INSTALL_PREFIX="
+                                      out)))))
+         (add-after 'unpack 'unpack-sources
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((spirv-tools-source (assoc-ref inputs "spirv-tools-source"))
+                   (spirv-headers-source (assoc-ref inputs "spirv-headers-source"))
+                   (glslang-source (assoc-ref inputs "glslang-source")))
+               (copy-recursively spirv-tools-source "third_party/spirv-tools")
+               (copy-recursively spirv-headers-source
+                                 (string-append "third_party/spirv-tools"
+                                                "/external/spirv-headers"))
+               (copy-recursively glslang-source "third_party/glslang")
+               #t))))))
+    (inputs
+     `(("googletest" ,googletest)
+       ("python" ,python)))
+    (native-inputs
+     `(("cmake" ,cmake)
+       ("glslang-source" ,(package-source glslang))
+       ("pkg-config" ,pkg-config)
+       ("spirv-headers-source" ,(package-source spirv-headers))
+       ("spirv-tools-source" ,(package-source spirv-tools))))
+    (home-page "https://github.com/google/shaderc")
+    (synopsis "Tools for shader compilation")
+    (description "Shaderc is a collection of tools, libraries, and tests for
 shader compilation.")
-      (license license:asl2.0))))
+    (license license:asl2.0)))
 
 (define-public vkd3d
   (let ((commit "ecda316ef54d70bf1b3e860755241bb75873e53f")) ; Release 1.1.
diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
index 49bc6ecea7..128041318b 100644
--- a/gnu/packages/wget.scm
+++ b/gnu/packages/wget.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
@@ -111,48 +111,60 @@ online pastebin services.")
 (define-public wget2
   (package
    (name "wget2")
-   (version "1.0.0")
+   (version "1.99.1")
    (source
-    (origin
-     (method git-fetch)
-     (uri (git-reference
-           (url "https://gitlab.com/gnuwget/wget2.git")
-           (commit "b45709d3d21714135ce79df6abbdcb704684063d")
-           (recursive? #t))) ;; Needed for 'gnulib' git submodule.
-     (file-name (string-append name "-" version "-checkout"))
-     (sha256
-      (base32
-       "0ww84wwzmpyylkz8rnb6nk6f7x040132z81x52w7rjhk68p9mm24"))))
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+              (url "https://gitlab.com/gnuwget/wget2.git")
+              (commit (string-append name "-" version))
+              (recursive? #t))) ;; Needed for 'gnulib' git submodule.
+       (file-name (string-append name "-" version "-checkout"))
+       (sha256
+        (base32
+         "15wxsnjhc6bzk7f60i1djmsarh1w31gwi5h2gh9k19ncwypfj5dm"))))
    (build-system gnu-build-system)
    (arguments
-    `(#:phases (modify-phases %standard-phases
-      (replace 'bootstrap
-        (lambda _
-          ;; Make sure all the files are writable so that ./bootstrap
-          ;; can proceed.
-          (for-each (lambda (file)
-                      (chmod file #o755))
-                      (find-files "."))
-          (substitute* "./gnulib/gnulib-tool.py"
-                       (("/usr/bin/python") (which "python3")))
-          (invoke "sh" "./bootstrap"
-                          "--gnulib-srcdir=gnulib"
-                          "--no-git"))))))
-   (inputs `(("autoconf" ,autoconf)
-             ("automake" ,automake)
-             ("doxygen" ,doxygen)
-             ("flex" ,flex)
-             ("gettext" ,gettext-minimal)
-             ("gnutls" ,gnutls/dane)
-             ("libiconv" ,libiconv)
-             ("libidn2" ,libidn2)
-             ("libmicrohttpd" ,libmicrohttpd)
-             ("libpsl" ,libpsl)
-             ("libtool" ,libtool)
-             ("pcre2" ,pcre2)
-             ("python" ,python)))
+    `(#:phases
+      (modify-phases %standard-phases
+        (add-after 'unpack 'skip-network-test
+          (lambda _
+            (substitute* "tests/Makefile.am"
+              (("test-auth-digest\\$\\(EXEEXT)") ""))
+            #t))
+        (replace 'bootstrap
+          (lambda _
+            ;; Make sure all the files are writable so that ./bootstrap
+            ;; can proceed.
+            (for-each (lambda (file)
+                        (chmod file #o755))
+                        (find-files "."))
+            (patch-shebang "./gnulib/gnulib-tool.py")
+            ;; Remove unnecessary inputs from bootstrap.conf
+            (substitute* "bootstrap.conf"
+              (("flex.*") "")
+              (("makeinfo.*") "")
+              (("lzip.*") "")
+              (("rsync.*") ""))
+            (invoke "sh" "./bootstrap"
+                    "--gnulib-srcdir=gnulib"
+                    "--no-git"))))))
+   (inputs
+    `(("gnutls" ,gnutls/dane)
+      ("libiconv" ,libiconv)
+      ("libidn2" ,libidn2)
+      ("libmicrohttpd" ,libmicrohttpd)
+      ("libpsl" ,libpsl)
+      ("pcre2" ,pcre2)))
    ;; TODO: Add libbrotlidec, libnghttp2.
-   (native-inputs `(("pkg-config" ,pkg-config)))
+   (native-inputs
+    `(("autoconf" ,autoconf)
+      ("automake" ,automake)
+      ("flex" ,flex)
+      ("gettext" ,gettext-minimal)
+      ("libtool" ,libtool)
+      ("pkg-config" ,pkg-config)
+      ("python" ,python-2)))
    (home-page "https://gitlab.com/gnuwget/wget2")
    (synopsis "Successor of GNU Wget")
    (description "GNU Wget2 is the successor of GNU Wget, a file and recursive
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 554a14154c..96ef06bc15 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -389,19 +389,19 @@ prompt.")
 (define-public i3lock-color
   (package
     (name "i3lock-color")
-    (version "2.11-c")
+    (version "2.12.c")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append "https://github.com/PandorasFox/i3lock-color/"
-                           "archive/" version ".tar.gz"))
-       (file-name (string-append name "-" version ".tar.gz"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/PandorasFox/i3lock-color.git")
+             (commit version)))
+       (file-name (git-file-name name version))
        (sha256
-        (base32
-         "0zh7il2y6dmzym3w6r9xii5dma8pjjjlq4dm5iby7m3gvplj4q9p"))))
+        (base32 "08fhnchf187b73h52xgzb86g6byzxz085zs9galsvl687g5zxk34"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f))                              ;no tests included
+     `(#:tests? #f))                    ; no tests included
     (inputs
      `(("cairo" ,cairo)
        ("libev" ,libev)
@@ -410,7 +410,8 @@ prompt.")
        ("libxkbcommon" ,libxkbcommon)
        ("linux-pam" ,linux-pam)
        ("xcb-util" ,xcb-util)
-       ("xcb-util-image" ,xcb-util-image)))
+       ("xcb-util-image" ,xcb-util-image)
+       ("xcb-util-xrm" ,xcb-util-xrm)))
     (native-inputs
      `(("autoconf" ,autoconf)
        ("automake" ,automake)
@@ -434,16 +435,16 @@ Features include:
     (version "0.2")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append "https://github.com/meskarune/i3lock-fancy/archive/"
-                           version ".tar.gz"))
-       (file-name (string-append name "-" version ".tar.gz"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/meskarune/i3lock-fancy.git")
+             (commit version)))
+       (file-name (git-file-name name version))
        (sha256
-        (base32
-         "020m7mnfq5cvir7p9v3hkb7cvb4cai33wppxl2zdwscwwjnchc5y"))))
+        (base32 "11g2kkim33ra38d1m897sq1ifajw17iyw9mr7sg1q8i2ibl4lfsi"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f ;No tests included
+     `(#:tests? #f                      ; no tests included
        #:phases
        (modify-phases %standard-phases
          (replace 'configure
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 4a4c09a026..40e98e3ffc 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2017 Mike Gerwitz <mtg@gnu.org>
 ;;; Copyright © 2018 Thomas Sigurdsen <tonton@riseup.net>
 ;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
-;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
+;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2018 Nam Nguyen <namn@berkeley.edu>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -69,6 +69,7 @@
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages man)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages m4)
   #:use-module (gnu packages ncurses)
@@ -132,6 +133,60 @@ are saved as executable shell scripts which can be loaded without using this
 program.")
     (license license:gpl3+)))
 
+(define-public autorandr
+  ;; Use latest commit since 1.7 lacks many new features such as the
+  ;; autorandr_launcher.
+  (let ((commit "b484c0ea9c9a4838278bbd661a7cc384333c1df8"))
+    (package
+      (name "autorandr")
+      (version (git-version "1.7" "1" commit))
+      (home-page "https://github.com/phillipberndt/autorandr")
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url home-page)
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "0da17kzsisjv3s993j5idkk1n2d2cvjdn7pngs2b0ic1r2h5z02h"))))
+      (build-system python-build-system)
+      (native-inputs
+       `(("man-db" ,man-db)))
+      (inputs
+       `(("xrandr" ,xrandr)
+         ("libxcb" ,libxcb)))
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (add-before 'build 'configure
+             (lambda* (#:key inputs #:allow-other-keys)
+               (substitute* "autorandr.py"
+                 (("popen\\(\"xrandr") (string-append "popen(\""
+                                                      (assoc-ref inputs "xrandr")
+                                                      "/bin/xrandr"))
+                 (("\\[\"xrandr") (string-append "[\""
+                                                 (assoc-ref inputs "xrandr")
+                                                 "/bin/xrandr")))
+               #t))
+           (add-after 'install 'install-contrib
+             (lambda* (#:key outputs #:allow-other-keys)
+               (invoke "make"
+                       (string-append "DESTDIR=" (assoc-ref outputs "out"))
+                       "PREFIX="
+                       "BASH_COMPLETIONS_DIR=etc/bash_completiond.d"
+                       "install_manpage"
+                       "install_bash_completion"
+                       "install_launcher"))))))
+      (synopsis "Auto-detect connected displays and load appropiate setup")
+      (description "Autorandr wraps around xrandr to help with X11
+multi-screen configuration management.  It allows the user to create profiles
+for various multi-screen setups.  Autorandr automatically detects the profiles
+that can be activated based on the connected hardware.  Hook scripts can be
+used to further tweak the behaviour of the different profiles.")
+      (license license:gpl3+))))
+
 (define-public xclip
   (package
     (name "xclip")
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 3638f8fdce..01ce5ee7ab 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -4037,7 +4037,7 @@ Font Description (XLFD) full name for a font.")
 (define-public xfd
   (package
     (name "xfd")
-    (version "1.1.2")
+    (version "1.1.3")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -4045,7 +4045,7 @@ Font Description (XLFD) full name for a font.")
                     version ".tar.bz2"))
               (sha256
                (base32
-                "0n97iqqap9wyxjan2n520vh4rrf5bc0apsw2k9py94dqzci258y1"))))
+                "0n6r1v8sm0z0ycqch035xpm46nv5v4mav3kxh36883l3ln5r6bqr"))))
     (build-system gnu-build-system)
     (arguments
        `(#:configure-flags
@@ -4165,7 +4165,7 @@ it for output on various types of printers.")
 (define-public xprop
   (package
     (name "xprop")
-    (version "1.2.3")
+    (version "1.2.4")
     (source
       (origin
         (method url-fetch)
@@ -4175,7 +4175,7 @@ it for output on various types of printers.")
                ".tar.bz2"))
         (sha256
           (base32
-            "06sjgahjiz85v0k0pmv5x05chc591xynl5ah1bqzz1bdr0lgnanj"))))
+            "0lzp7kyhpwd5hm83j2zm6j3w3z1z5i4ykgg2nwr01ij6dq4znxwc"))))
     (build-system gnu-build-system)
     (inputs
       `(("xorgproto" ,xorgproto)
@@ -5675,14 +5675,14 @@ The XCB util-wm module provides the following libraries:
 (define-public xinit
   (package
     (name "xinit")
-    (version "1.4.0")
+    (version "1.4.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://xorg/individual/app/xinit-"
                                   version ".tar.bz2"))
               (sha256
                (base32
-                "1vw2wlg74ig52naw0cha3pgzcwwk25l834j42cg8m5zmybp3a213"))))
+                "1fdbakx59vyh474skjydj1bbglpby3y03nl7mxn0z9v8gdhqz6yy"))))
     (build-system gnu-build-system)
     (inputs
      `(("xorgproto" ,xorgproto)
diff --git a/gnu/services/dbus.scm b/gnu/services/dbus.scm
index 1e24d93ccb..606ee0c2f5 100644
--- a/gnu/services/dbus.scm
+++ b/gnu/services/dbus.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; 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>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -150,7 +150,11 @@ includes the @code{etc/dbus-1/system.d} directories of each package listed in
 
       (let ((user (getpwnam "messagebus")))
         (chown "/var/run/dbus"
-               (passwd:uid user) (passwd:gid user)))
+               (passwd:uid user) (passwd:gid user))
+
+        ;; This directory contains the daemon's socket so it must be
+        ;; world-readable.
+        (chmod "/var/run/dbus" #o755))
 
       (unless (file-exists? "/etc/machine-id")
         (format #t "creating /etc/machine-id...~%")
diff --git a/gnu/system/accounts.scm b/gnu/system/accounts.scm
new file mode 100644
index 0000000000..eb18fb5e43
--- /dev/null
+++ b/gnu/system/accounts.scm
@@ -0,0 +1,109 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.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 system accounts)
+  #:use-module (guix records)
+  #:use-module (ice-9 match)
+  #:export (user-account
+            user-account?
+            user-account-name
+            user-account-password
+            user-account-uid
+            user-account-group
+            user-account-supplementary-groups
+            user-account-comment
+            user-account-home-directory
+            user-account-create-home-directory?
+            user-account-shell
+            user-account-system?
+
+            user-group
+            user-group?
+            user-group-name
+            user-group-password
+            user-group-id
+            user-group-system?
+
+            sexp->user-account
+            sexp->user-group
+
+            default-shell))
+
+
+;;; Commentary:
+;;;
+;;; Data structures representing user accounts and user groups.  This is meant
+;;; to be used both on the host side and at run time--e.g., in activation
+;;; snippets.
+;;;
+;;; Code:
+
+(define default-shell
+  ;; Default shell for user accounts (a string or string-valued gexp).
+  (make-parameter "/bin/sh"))
+
+(define-record-type* <user-account>
+  user-account make-user-account
+  user-account?
+  (name           user-account-name)
+  (password       user-account-password (default #f))
+  (uid            user-account-uid (default #f))
+  (group          user-account-group)             ; number | string
+  (supplementary-groups user-account-supplementary-groups
+                        (default '()))            ; list of strings
+  (comment        user-account-comment (default ""))
+  (home-directory user-account-home-directory)
+  (create-home-directory? user-account-create-home-directory? ;Boolean
+                          (default #t))
+  (shell          user-account-shell              ; gexp
+                  (default (default-shell)))
+  (system?        user-account-system?            ; Boolean
+                  (default #f)))
+
+(define-record-type* <user-group>
+  user-group make-user-group
+  user-group?
+  (name           user-group-name)
+  (password       user-group-password (default #f))
+  (id             user-group-id (default #f))
+  (system?        user-group-system?              ; Boolean
+                  (default #f)))
+
+(define (sexp->user-group sexp)
+  "Take SEXP, a tuple as returned by 'user-group->gexp', and turn it into a
+user-group record."
+  (match sexp
+    ((name password id system?)
+     (user-group (name name)
+                 (password password)
+                 (id id)
+                 (system? system?)))))
+
+(define (sexp->user-account sexp)
+  "Take SEXP, a tuple as returned by 'user-account->gexp', and turn it into a
+user-account record."
+  (match sexp
+    ((name uid group supplementary-groups comment home-directory
+           create-home-directory? shell password system?)
+     (user-account (name name) (uid uid) (group group)
+                   (supplementary-groups supplementary-groups)
+                   (comment comment)
+                   (home-directory home-directory)
+                   (create-home-directory? create-home-directory?)
+                   (shell shell) (password password)
+                   (system? system?)))))
diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm
index 63f544cec9..7dc36f4a45 100644
--- a/gnu/system/shadow.scm
+++ b/gnu/system/shadow.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 © 2016 Alex Griffin <a@ajgrf.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -24,6 +24,7 @@
   #:use-module (guix modules)
   #:use-module (guix sets)
   #:use-module (guix ui)
+  #:use-module (gnu system accounts)
   #:use-module (gnu services)
   #:use-module (gnu services shepherd)
   #:use-module ((gnu system file-systems)
@@ -36,27 +37,29 @@
   #:use-module (srfi srfi-26)
   #:use-module (srfi srfi-34)
   #:use-module (srfi srfi-35)
-  #:export (user-account
-            user-account?
-            user-account-name
-            user-account-password
-            user-account-uid
-            user-account-group
-            user-account-supplementary-groups
-            user-account-comment
-            user-account-home-directory
-            user-account-create-home-directory?
-            user-account-shell
-            user-account-system?
-
-            user-group
-            user-group?
-            user-group-name
-            user-group-password
-            user-group-id
-            user-group-system?
-
-            default-skeletons
+
+  ;; Re-export these bindings for backward compatibility.
+  #:re-export (user-account
+               user-account?
+               user-account-name
+               user-account-password
+               user-account-uid
+               user-account-group
+               user-account-supplementary-groups
+               user-account-comment
+               user-account-home-directory
+               user-account-create-home-directory?
+               user-account-shell
+               user-account-system?
+
+               user-group
+               user-group?
+               user-group-name
+               user-group-password
+               user-group-id
+               user-group-system?)
+
+  #:export (default-skeletons
             skeleton-directory
             %base-groups
             %base-user-accounts
@@ -70,33 +73,8 @@
 ;;;
 ;;; Code:
 
-(define-record-type* <user-account>
-  user-account make-user-account
-  user-account?
-  (name           user-account-name)
-  (password       user-account-password (default #f))
-  (uid            user-account-uid (default #f))
-  (group          user-account-group)             ; number | string
-  (supplementary-groups user-account-supplementary-groups
-                        (default '()))            ; list of strings
-  (comment        user-account-comment (default ""))
-  (home-directory user-account-home-directory)
-  (create-home-directory? user-account-create-home-directory? ;Boolean
-                          (default #t))
-  (shell          user-account-shell              ; gexp
-                  (default (file-append bash "/bin/bash")))
-  (system?        user-account-system?            ; Boolean
-                  (default #f)))
-
-(define-record-type* <user-group>
-  user-group make-user-group
-  user-group?
-  (name           user-group-name)
-  (password       user-group-password (default #f))
-  (id             user-group-id (default #f))
-  (system?        user-group-system?              ; Boolean
-                  (default #f)))
-
+;; Change the default shell used by new <user-account> records.
+(default-shell (file-append bash "/bin/bash"))
 
 (define %base-groups
   ;; Default set of groups.
@@ -320,11 +298,12 @@ group."
   (assert-valid-users/groups accounts groups)
 
   ;; Add users and user groups.
-  #~(begin
-      (setenv "PATH"
-              (string-append #$(@ (gnu packages admin) shadow) "/sbin"))
-      (activate-users+groups (list #$@user-specs)
-                             (list #$@group-specs))))
+  (with-imported-modules (source-module-closure '((gnu system accounts)))
+    #~(begin
+        (use-modules (gnu system accounts))
+
+        (activate-users+groups (map sexp->user-account (list #$@user-specs))
+                               (map sexp->user-group (list #$@group-specs))))))
 
 (define (account-shepherd-service accounts+groups)
   "Return a Shepherd service that creates the home directories for the user
@@ -344,12 +323,15 @@ accounts among ACCOUNTS+GROUPS."
   (list (shepherd-service
          (requirement '(file-systems))
          (provision '(user-homes))
-         (modules '((gnu build activation)))
+         (modules '((gnu build activation)
+                    (gnu system accounts)))
          (start (with-imported-modules (source-module-closure
-                                        '((gnu build activation)))
+                                        '((gnu build activation)
+                                          (gnu system accounts)))
                   #~(lambda ()
                       (activate-user-home
-                       (list #$@(map user-account->gexp accounts)))
+                       (map sexp->user-account
+                            (list #$@(map user-account->gexp accounts))))
                       #f)))                       ;stop
          (stop #~(const #f))
          (respawn? #f)
diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm
index cc8b273c98..f9390ee8e4 100644
--- a/gnu/tests/base.scm
+++ b/gnu/tests/base.scm
@@ -258,6 +258,12 @@ info --version")
                                     (operating-system-user-accounts os))))
               (stat:perms (marionette-eval `(stat ,root-home) marionette))))
 
+          (test-equal "ownership and permissions of /var/empty"
+            '(0 0 #o555)
+            (let ((st (marionette-eval `(stat "/var/empty") marionette)))
+              (list (stat:uid st) (stat:gid st)
+                    (stat:perms st))))
+
           (test-equal "no extra home directories"
             '()