summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/bootloader/u-boot.scm51
-rw-r--r--gnu/local.mk7
-rw-r--r--gnu/packages/abiword.scm2
-rw-r--r--gnu/packages/aidc.scm3
-rw-r--r--gnu/packages/android.scm8
-rw-r--r--gnu/packages/audio.scm9
-rw-r--r--gnu/packages/backup.scm58
-rw-r--r--gnu/packages/bioconductor.scm4
-rw-r--r--gnu/packages/bioinformatics.scm49
-rw-r--r--gnu/packages/bittorrent.scm15
-rw-r--r--gnu/packages/bootloaders.scm83
-rw-r--r--gnu/packages/check.scm101
-rw-r--r--gnu/packages/code.scm1
-rw-r--r--gnu/packages/coq.scm3
-rw-r--r--gnu/packages/cran.scm32
-rw-r--r--gnu/packages/emacs-xyz.scm122
-rw-r--r--gnu/packages/emulators.scm2
-rw-r--r--gnu/packages/engineering.scm4
-rw-r--r--gnu/packages/firmware.scm25
-rw-r--r--gnu/packages/gnome.scm22
-rw-r--r--gnu/packages/gnupg.scm2
-rw-r--r--gnu/packages/gobby.scm7
-rw-r--r--gnu/packages/graph.scm2
-rw-r--r--gnu/packages/graphics.scm31
-rw-r--r--gnu/packages/image-processing.scm7
-rw-r--r--gnu/packages/image.scm6
-rw-r--r--gnu/packages/kodi.scm9
-rw-r--r--gnu/packages/linux.scm4
-rw-r--r--gnu/packages/lxqt.scm46
-rw-r--r--gnu/packages/machine-learning.scm10
-rw-r--r--gnu/packages/mail.scm4
-rw-r--r--gnu/packages/maths.scm29
-rw-r--r--gnu/packages/music.scm17
-rw-r--r--gnu/packages/patches/arm-trusted-firmware-disable-hdcp.patch82
-rw-r--r--gnu/packages/patches/arm-trusted-firmware-optional-bin-generation.patch86
-rw-r--r--gnu/packages/patches/arm-trusted-firmware-rockchip-disable-binary.patch73
-rw-r--r--gnu/packages/patches/dav1d-aarch64-symbol-alignment.patch25
-rw-r--r--gnu/packages/patches/kodi-increase-test-timeout.patch18
-rw-r--r--gnu/packages/patches/libmpeg2-arm-private-symbols.patch48
-rw-r--r--gnu/packages/patches/libmpeg2-global-symbol-test.patch63
-rw-r--r--gnu/packages/pdf.scm5
-rw-r--r--gnu/packages/protobuf.scm39
-rw-r--r--gnu/packages/python-xyz.scm52
-rw-r--r--gnu/packages/robotics.scm2
-rw-r--r--gnu/packages/sagemath.scm6
-rw-r--r--gnu/packages/search.scm6
-rw-r--r--gnu/packages/statistics.scm22
-rw-r--r--gnu/packages/telephony.scm2
-rw-r--r--gnu/packages/video.scm24
-rw-r--r--gnu/packages/web.scm6
-rw-r--r--gnu/packages/xml.scm4
-rw-r--r--gnu/services/desktop.scm15
-rw-r--r--gnu/services/herd.scm7
-rw-r--r--gnu/services/networking.scm33
-rw-r--r--gnu/system/install.scm18
-rw-r--r--guix/packages.scm4
-rw-r--r--guix/scripts/system/reconfigure.scm5
-rw-r--r--tests/cve.scm2
-rw-r--r--tests/lint.scm40
59 files changed, 1112 insertions, 350 deletions
diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 54abfe1c69..e21526eb7e 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -28,12 +28,15 @@
             u-boot-a20-olinuxino-micro-bootloader
             u-boot-bananapi-m2-ultra-bootloader
             u-boot-beaglebone-black-bootloader
+            u-boot-firefly-rk3399-bootloader
             u-boot-mx6cuboxi-bootloader
             u-boot-nintendo-nes-classic-edition-bootloader
             u-boot-novena-bootloader
             u-boot-pine64-plus-bootloader
             u-boot-pinebook-bootloader
             u-boot-puma-rk3399-bootloader
+            u-boot-rock64-rk3328-bootloader
+            u-boot-rockpro64-rk3399-bootloader
             u-boot-wandboard-bootloader))
 
 (define install-u-boot
@@ -90,6 +93,33 @@
         (write-file-on-device u-boot (stat:size (stat u-boot))
                               device (* 512 512)))))
 
+(define install-firefly-rk3399-u-boot
+  #~(lambda (bootloader device mount-point)
+      (let ((idb (string-append bootloader "/libexec/idbloader.img"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device idb (stat:size (stat idb))
+                              device (* 64 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              device (* 16384 512)))))
+
+(define install-rock64-rk3328-u-boot
+  #~(lambda (bootloader device mount-point)
+      (let ((idb (string-append bootloader "/libexec/idbloader.img"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device idb (stat:size (stat idb))
+                              device (* 64 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              device (* 16384 512)))))
+
+(define install-rockpro64-rk3399-u-boot
+  #~(lambda (bootloader device mount-point)
+      (let ((idb (string-append bootloader "/libexec/idbloader.img"))
+            (u-boot (string-append bootloader "/libexec/u-boot.itb")))
+        (write-file-on-device idb (stat:size (stat idb))
+                              device (* 64 512))
+        (write-file-on-device u-boot (stat:size (stat u-boot))
+                              device (* 16384 512)))))
+
 
 
 ;;;
@@ -149,6 +179,13 @@
    (inherit u-boot-allwinner-bootloader)
    (package u-boot-bananapi-m2-ultra)))
 
+(define u-boot-firefly-rk3399-bootloader
+  ;; SD and eMMC use the same format
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-firefly-rk3399)
+   (installer install-firefly-rk3399-u-boot)))
+
 (define u-boot-mx6cuboxi-bootloader
   (bootloader
    (inherit u-boot-imx-bootloader)
@@ -179,3 +216,17 @@
    (inherit u-boot-bootloader)
    (package u-boot-puma-rk3399)
    (installer install-puma-rk3399-u-boot)))
+
+(define u-boot-rock64-rk3328-bootloader
+  ;; SD and eMMC use the same format
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-rock64-rk3328)
+   (installer install-rock64-rk3328-u-boot)))
+
+(define u-boot-rockpro64-rk3399-bootloader
+  ;; SD and eMMC use the same format
+  (bootloader
+   (inherit u-boot-bootloader)
+   (package u-boot-rockpro64-rk3399)
+   (installer install-rockpro64-rk3399-u-boot)))
diff --git a/gnu/local.mk b/gnu/local.mk
index 78456aae66..1fc916f6b3 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -694,6 +694,9 @@ dist_patch_DATA =						\
   %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch	\
   %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch	\
   %D%/packages/patches/apr-skip-getservbyname-test.patch	\
+  %D%/packages/patches/arm-trusted-firmware-disable-hdcp.patch	\
+  %D%/packages/patches/arm-trusted-firmware-optional-bin-generation.patch	\
+  %D%/packages/patches/arm-trusted-firmware-rockchip-disable-binary.patch	\
   %D%/packages/patches/aspell-default-dict-dir.patch		\
   %D%/packages/patches/aspell-gcc-compat.patch			\
   %D%/packages/patches/ath9k-htc-firmware-binutils.patch	\
@@ -763,6 +766,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/cursynth-wave-rand.patch			\
   %D%/packages/patches/cvs-CVE-2017-12836.patch		\
   %D%/packages/patches/darkice-workaround-fpermissive-error.patch	\
+  %D%/packages/patches/dav1d-aarch64-symbol-alignment.patch	\
   %D%/packages/patches/dbus-helper-search-path.patch		\
   %D%/packages/patches/dbus-c++-gcc-compat.patch		\
   %D%/packages/patches/dbus-c++-threading-mutex.patch		\
@@ -1013,6 +1017,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch	\
   %D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch	\
   %D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch	\
+  %D%/packages/patches/kodi-increase-test-timeout.patch		\
   %D%/packages/patches/kodi-set-libcurl-ssl-parameters.patch		\
   %D%/packages/patches/kodi-skip-test-449.patch		\
   %D%/packages/patches/kwindowsystem-qt-compat.patch		\
@@ -1053,6 +1058,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/libmad-md_size.patch			\
   %D%/packages/patches/libmad-mips-newgcc.patch			\
   %D%/packages/patches/libmp4v2-c++11.patch			\
+  %D%/packages/patches/libmpeg2-arm-private-symbols.patch	\
+  %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
   %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
   %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
   %D%/packages/patches/libreoffice-boost.patch			\
diff --git a/gnu/packages/abiword.scm b/gnu/packages/abiword.scm
index 9d8c253a62..db9f1bb72c 100644
--- a/gnu/packages/abiword.scm
+++ b/gnu/packages/abiword.scm
@@ -83,7 +83,7 @@
         ;; the tests to pass.
         #:tests? #f
         #:make-flags
-        (list "CXXFLAGS=-std=c++11" "gtk_update_icon_cache=true")))
+        (list "gtk_update_icon_cache=true")))
     (inputs
       `(("boost" ,boost)
         ("enchant" ,enchant)
diff --git a/gnu/packages/aidc.scm b/gnu/packages/aidc.scm
index 61d3331c97..77db0ac9fc 100644
--- a/gnu/packages/aidc.scm
+++ b/gnu/packages/aidc.scm
@@ -130,8 +130,7 @@ C/C++ programs to use its capabilities without restrictions or overhead.")
                                "--with-python=auto"
                                (string-append "--with-dbusconfdir="
                                               (assoc-ref %outputs "out")
-                                              "/etc")
-                               "CXXFLAGS=-std=c++11")))
+                                              "/etc"))))
     (native-inputs
      `(("glib" ,glib "bin")
        ("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm
index b312c5b2af..993d18a3eb 100644
--- a/gnu/packages/android.scm
+++ b/gnu/packages/android.scm
@@ -217,7 +217,6 @@ in Main, System, Radio and Events sub-logs.")
     (build-system android-ndk-build-system)
     (arguments
      `(#:tests? #f ; Test failure: logging.UNIMPLEMENTED
-       #:make-flags '("CXXFLAGS=-std=gnu++11")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'enter-source
@@ -257,7 +256,7 @@ various Android core host applications.")
                    "CC = gcc\n"
 
                    "CFLAGS += -fPIC\n"
-                   "CXXFLAGS += -std=gnu++11 -fPIC\n"
+                   "CXXFLAGS += -fPIC\n"
                    "CPPFLAGS += -Iinclude -I../include\n"
                    "LDFLAGS += -shared -Wl,-soname,$(NAME).so.0\n"
 
@@ -312,7 +311,7 @@ various Android core host applications.")
     (build-system android-ndk-build-system)
     (arguments
      `(#:make-flags '("CFLAGS=-Wno-error"
-                      "CXXFLAGS=-fpermissive -Wno-error -std=gnu++11")
+                      "CXXFLAGS=-fpermissive -Wno-error")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'enter-source
@@ -631,8 +630,7 @@ file system.")
     (source (android-platform-system-core version))
     (build-system android-ndk-build-system)
     (arguments
-     `(#:make-flags (list "CXXFLAGS=-std=gnu++11")
-       #:phases
+     `(#:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'enter-source
            (lambda _
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 88f3b5eccd..110903e2fe 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -521,8 +521,6 @@ formant warp.")
      `(#:tests? #f ; no check target
        #:make-flags
        (list "LV2PEG=ttl2c"
-             "CXXFLAGS=-std=gnu++11"
-             "CFLAGS=-std=gnu++11"
              (string-append "prefix=" %output)
              (string-append "pkgdatadir=" %output "/share/azr3-jack"))
        #:phases
@@ -1328,8 +1326,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
        #:configure-flags
        (list
         ;; Add the output lib directory to the RUNPATH.
-        (string-append "--ldflags=-Wl,-rpath=" %output "/lib")
-        "--cxxflags=-std=c++11")
+        (string-append "--ldflags=-Wl,-rpath=" %output "/lib"))
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'fix-boost-includes
@@ -2427,9 +2424,7 @@ the Turtle syntax.")
                 "0ay7hl6nr6ip1nn9k2m8ri3b52b6sx9mhixmcy4fy3kr2a88ksd1"))))
     (build-system waf-build-system)
     (arguments
-     `(#:tests? #f                      ; no check target
-       #:configure-flags
-       '("CXXFLAGS=-std=gnu++11")))
+     `(#:tests? #f))                    ;no check target
     (inputs
      `(("lv2" ,lv2)
        ("gtk+" ,gtk+-2)
diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index a92c8c9aca..a4a087728f 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -711,63 +712,6 @@ NTFS volumes using @code{ntfs-3g}, preserving NTFS-specific attributes.")
                    license:lgpl3+
                    license:cc0))))
 
-(define-public obnam
-  (package
-    (name "obnam")
-    (version "1.21")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (string-append
-             "http://code.liw.fi/debian/pool/main/o/obnam/obnam_"
-             version ".orig.tar.xz"))
-       (sha256
-        (base32
-         "0qlipsq50hca71zc0dp1mg9zs12qm0sbblw7qfzl0hj6mk2rv1by"))))
-    (build-system python-build-system)
-    (arguments
-     `(#:python ,python-2
-       #:phases
-       (modify-phases %standard-phases
-         (replace 'check
-                  (lambda _
-                    (substitute* "obnamlib/vfs_local_tests.py"
-                      ;; Check for the nobody user instead of root.
-                      (("self.fs.get_username\\(0\\), 'root'")
-                       "self.fs.get_username(65534), 'nobody'")
-                      ;; Disable tests checking for root group.
-                      (("self.fs.get_groupname\\(0\\)") "'root'"))
-                    (substitute* "obnamlib/vfs_local.py"
-                      ;; Don't cover get_groupname function.
-                      (("def get_groupname\\(self, gid\\):")
-                       "def get_groupname(self, gid):  # pragma: no cover"))
-                    ;; Can't run network tests.
-                    (invoke "./check" "--unit-tests"))))))
-    (inputs
-     `(("python2-cliapp" ,python2-cliapp)
-       ("python2-larch" ,python2-larch)
-       ("python2-paramiko" ,python2-paramiko)
-       ("python2-pyaml" ,python2-pyaml)
-       ("python2-tracing" ,python2-tracing)
-       ("python2-ttystatus" ,python2-ttystatus)))
-    (native-inputs
-     `(("gnupg" ,gnupg)
-       ("python2-coverage" ,python2-coverage)
-       ("python2-coverage-test-runner" ,python2-coverage-test-runner)
-       ("python2-pep8" ,python2-pep8)
-       ("python2-pylint" ,python2-pylint)))
-    (home-page "https://obnam.org/")
-    (synopsis "Retired backup program")
-    (description
-     "Warning: @uref{https://blog.liw.fi/posts/2017/08/13/retiring_obnam/,
-the Obnam project is retired}.  You should use another backup solution instead.
-
-Obnam was an easy, secure backup program.  Features included snapshot backups,
-data de-duplication and encrypted backups using GnuPG.  Backups can be stored on
-local hard disks, or online via the SSH SFTP protocol.  The backup server, if
-used, does not require any special software, on top of SSH.")
-    (license license:gpl3+)))
-
 (define-public dirvish
   (package
     (name "dirvish")
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index 2187572117..cf5097a74e 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -3484,14 +3484,14 @@ profiles (GO and KEGG) of gene and gene clusters.")
 (define-public r-mlinterfaces
   (package
     (name "r-mlinterfaces")
-    (version "1.64.0")
+    (version "1.64.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "MLInterfaces" version))
        (sha256
         (base32
-         "0zqvxmvbkig3cc4r5k405s53d7y5ccvrf8kf5j6v8s1kkrklai4j"))))
+         "1c1hciwy37zpr5bzdjj2xxx2r4jdfmr5w0zmg010lm2985z41gqh"))))
     (properties `((upstream-name . "MLInterfaces")))
     (build-system r-build-system)
     (propagated-inputs
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 1e8e357187..f55740e231 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -1443,8 +1443,7 @@ confidence to have in an alignment.")
                                            "-lboost_system"
                                            "-lboost_iostreams"
                                            "-lz"
-                                           "-fopenmp"
-                                           "-std=c++11"))))
+                                           "-fopenmp"))))
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'do-not-build-bundled-pigz
@@ -1556,14 +1555,14 @@ gapped, local, and paired-end alignment modes.")
 (define-public bowtie1
   (package
     (name "bowtie1")
-    (version "1.2.2")
+    (version "1.2.3")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/bowtie-bio/bowtie/"
-                                  version "/bowtie-" version "-src.zip"))
+                                  version "/bowtie-src-x86_64.zip"))
               (sha256
                (base32
-                "1jl2cj9bz8lwz8dwnxbycn8yp8g4kky62fkcxifyf1ri0y6n2vc0"))
+                "0vmiqdhc9dzyfy9sh6vgi7k9xy2hiw8g87vbamnc6cgpm179zsa4"))
               (modules '((guix build utils)))
               (snippet
                '(substitute* "Makefile"
@@ -7731,13 +7730,13 @@ biological sequences or sets of sequences.")
 (define-public r-rsamtools
   (package
     (name "r-rsamtools")
-    (version "2.0.2")
+    (version "2.0.3")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "Rsamtools" version))
               (sha256
                (base32
-                "188k5g40lbli7dxr96hldyvg9r9hmlbh2fp0qs5nnd12b8zbf338"))))
+                "03qfpaqbffirpnby88mv6h45njfapli28crdvg35h2zi2jkkmhvp"))))
     (properties
      `((upstream-name . "Rsamtools")))
     (build-system r-build-system)
@@ -8283,14 +8282,14 @@ secondary structure and comparative analysis in R.")
 (define-public r-rhtslib
   (package
     (name "r-rhtslib")
-    (version "1.16.2")
+    (version "1.16.3")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "Rhtslib" version))
        (sha256
         (base32
-         "07qaqj2hypmrg40m3pci082bzar6wi10dh77r4a8x74dfppcwdzf"))))
+         "1lmrfr32nrz36abn440kvzzck53y2320xjxqzs2jw7m2a9h3ryak"))))
     (properties `((upstream-name . "Rhtslib")))
     (build-system r-build-system)
     ;; Without this a temporary directory ends up in the Rhtslib.so binary,
@@ -8571,13 +8570,13 @@ of gene-level counts.")
 (define-public r-rhdf5
   (package
     (name "r-rhdf5")
-    (version "2.28.0")
+    (version "2.28.1")
     (source (origin
               (method url-fetch)
               (uri (bioconductor-uri "rhdf5" version))
               (sha256
                (base32
-                "0y1w3cs7wg2b3jlkd6wyyz6626xg011nrg36si8gg371iqck9a1i"))))
+                "027cv1kh3xl66lrrahv2jgfmvgcwfpcj9dpgdj5fd9ybf5nyjcwb"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-rhdf5lib" ,r-rhdf5lib)))
@@ -9705,14 +9704,14 @@ microarrays or GRanges for sequencing data.")
 (define-public r-keggrest
   (package
     (name "r-keggrest")
-    (version "1.24.0")
+    (version "1.24.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "KEGGREST" version))
        (sha256
         (base32
-         "1yjrpbm5zfg0h3nb5gg06q2f19ydbhjqwi0jb6q3p8dyrgww9mqp"))))
+         "0yxp3iajdy61q6mjgp1nxdgmf2yb58cvqmdgab7lqxr0ky1wkfkr"))))
     (properties `((upstream-name . "KEGGREST")))
     (build-system r-build-system)
     (propagated-inputs
@@ -9852,14 +9851,14 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2):
 (define-public r-ensembldb
   (package
     (name "r-ensembldb")
-    (version "2.8.0")
+    (version "2.8.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "ensembldb" version))
        (sha256
         (base32
-         "09s5g9xm9m8mqvzk6pkp9fyhx3zyb4p8yziz49mhfji5n35nydjr"))))
+         "103z902104ljdp6s9y2dmgrl5wkdz8vvlbbqgk8r4drkg7m3d4lj"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-annotationdbi" ,r-annotationdbi)
@@ -10188,14 +10187,14 @@ by Ernst and Kellis.")
 (define-public r-ldblock
   (package
     (name "r-ldblock")
-    (version "1.14.2")
+    (version "1.14.3")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "ldblock" version))
        (sha256
         (base32
-         "0xx04cghx6ads1ackwnw3z0gf72qv461nznzmcnkgmp7w5n9m2af"))))
+         "154yvrvs8ik7ifcny1681cmqra0i163j00k4vbvkvl701p5gsp5q"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-biocgenerics" ,r-biocgenerics)
@@ -10322,14 +10321,14 @@ with your data.")
 (define-public r-gwascat
   (package
     (name "r-gwascat")
-    (version "2.16.0")
+    (version "2.16.1")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "gwascat" version))
        (sha256
         (base32
-         "0akb36mrybmxbb1bc9kgxbnj3cdypfylj3yzrmhjwqxml03mg61i"))))
+         "0d4krqx8zjniwp6k2vzwqgfws39w03x51kqiwd5dks1fp05sw4xh"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-annotationdbi" ,r-annotationdbi)
@@ -10428,14 +10427,14 @@ provided.")
 (define-public r-hdf5array
   (package
     (name "r-hdf5array")
-    (version "1.12.2")
+    (version "1.12.3")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "HDF5Array" version))
        (sha256
         (base32
-         "0afradisrr5gn0lf2kxjw55vdm3lm9mlgx53qlr9r40c1hrydpf5"))))
+         "1037j6f0yyw4cf6p051810qamxi1sji5w4d0fgq5lyzyl5d36fm6"))))
     (properties `((upstream-name . "HDF5Array")))
     (build-system r-build-system)
     (inputs
@@ -10457,14 +10456,14 @@ block processing.")
 (define-public r-rhdf5lib
   (package
     (name "r-rhdf5lib")
-    (version "1.6.1")
+    (version "1.6.3")
     (source
      (origin
        (method url-fetch)
        (uri (bioconductor-uri "Rhdf5lib" version))
        (sha256
         (base32
-         "0niz9dh66fcwbvqpkpsdlz9d06kwi3kfh45dhk3qz9g9qqyiakr1"))
+         "0q68n5jm7w99paibj8vkxbdksbyrxilzwc9dkp3zf8zrdc5qfxzy"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -10510,8 +10509,8 @@ block processing.")
                  (("HDF5_CXX_INCLUDE=.*") "HDF5_CXX_INCLUDE=./hdf5/c++/src\n")
                  (("HDF5_INCLUDE=.*") "HDF5_INCLUDE=./hdf5/src\n")
                  ;; szip is non-free software
-                 (("cp \\$\\{SZIP_LIB\\}.*") "")
-                 (("\\$\\{USER_LIB_DIR\\}libsz.a") "")))
+                 (("cp \"\\$\\{SZIP_LIB\\}.*") "")
+                 (("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n")))
              #t)))))
     (inputs
      `(("zlib" ,zlib)))
diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm
index 70f80398fa..43712d4bcf 100644
--- a/gnu/packages/bittorrent.scm
+++ b/gnu/packages/bittorrent.scm
@@ -110,7 +110,7 @@
     (native-inputs
      `(("intltool" ,intltool)
        ("pkg-config" ,pkg-config)))
-    (home-page "http://www.transmissionbt.com/")
+    (home-page "https://transmissionbt.com/")
     (synopsis "Fast and easy BitTorrent client")
     (description
      "Transmission is a BitTorrent client that comes with graphical,
@@ -400,18 +400,7 @@ and will take advantage of multiple processor cores where possible.")
              "--enable-tests")
        #:make-flags (list
                      (string-append "LDFLAGS=-Wl,-rpath="
-                                    (assoc-ref %outputs "out") "/lib"))
-       #:phases (modify-phases %standard-phases
-           (add-after 'unpack 'compile-python-c++11
-             (lambda _
-               ;; Make sure the Python bindings are compiled in C++ mode to
-               ;; avoid undefined references as mentioned in
-               ;; <https://github.com/qbittorrent/qBittorrent/issues/638>.
-               ;; XXX: This can be removed for 1.2+.
-               (substitute* "bindings/python/setup.py"
-                 (("\\+ target_specific\\(\\)\\,")
-                  "+ target_specific() + ['-std=c++11'],"))
-               #t)))))
+                                    (assoc-ref %outputs "out") "/lib"))))
     (inputs `(("boost" ,boost)
               ("openssl" ,openssl)))
     (native-inputs `(("python" ,python-2)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 520728b52c..438f404e1a 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -430,6 +430,19 @@ tree binary files.  These are board description files used by Linux and BSD.")
 also initializes the boards (RAM etc).")
     (license license:gpl2+)))
 
+(define u-boot-2019.10
+  (package
+    (inherit u-boot)
+    (version "2019.10")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "ftp://ftp.denx.de/pub/u-boot/"
+                    "u-boot-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "053hcrwwlacqh2niisn0zas95zkbffw5aw5sdhixs8lmfdq60vcd"))))))
+
 (define-public u-boot-tools
   (package
     (inherit u-boot)
@@ -746,6 +759,76 @@ to Novena upstream, does not load u-boot.img from the first partition.")
          ("firmware-m0" ,rk3399-cortex-m0)
          ,@(package-native-inputs base))))))
 
+(define-public u-boot-rock64-rk3328
+  (let ((base (make-u-boot-package "rock64-rk3328" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (version (package-version u-boot-2019.10))
+      (source (package-source u-boot-2019.10))
+      (arguments
+       (substitute-keyword-arguments (package-arguments base)
+         ((#:phases phases)
+          `(modify-phases ,phases
+             (add-after 'unpack 'set-environment
+               (lambda* (#:key inputs #:allow-other-keys)
+                 (let ((bl31 (string-append (assoc-ref inputs "firmware")
+                                            "/bl31.elf")))
+                   (setenv "BL31" bl31))
+                 #t))
+             (add-after 'unpack 'add-u-boot-itb
+               (lambda _
+                 (substitute* "Kconfig"
+                   (("default .u-boot.itb. if SPL_LOAD_FIT && .ROCKCHIP_RK3399")
+                    "default \"u-boot.itb\" if SPL_LOAD_FIT && (ARCH_ROCKCHIP"))
+                 #t))))))
+      (native-inputs
+       `(("firmware" ,arm-trusted-firmware-rk3328)
+         ,@(package-native-inputs base))))))
+
+(define-public u-boot-firefly-rk3399
+  (let ((base (make-u-boot-package "firefly-rk3399" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (version (package-version u-boot-2019.10))
+      (source (package-source u-boot-2019.10))
+      (arguments
+        (substitute-keyword-arguments (package-arguments base)
+          ((#:phases phases)
+           `(modify-phases ,phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (setenv "BL31" (string-append (assoc-ref inputs "firmware")
+                                                "/bl31.elf"))
+                  #t))
+              ;; Phases do not succeed on the bl31 ELF.
+              (delete 'strip)
+              (delete 'validate-runpath)))))
+      (native-inputs
+       `(("firmware" ,arm-trusted-firmware-rk3399)
+         ,@(package-native-inputs base))))))
+
+(define-public u-boot-rockpro64-rk3399
+  (let ((base (make-u-boot-package "rockpro64-rk3399" "aarch64-linux-gnu")))
+    (package
+      (inherit base)
+      (version (package-version u-boot-2019.10))
+      (source (package-source u-boot-2019.10))
+      (arguments
+        (substitute-keyword-arguments (package-arguments base)
+          ((#:phases phases)
+           `(modify-phases ,phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (setenv "BL31" (string-append (assoc-ref inputs "firmware")
+                                                "/bl31.elf"))
+                  #t))
+              ;; Phases do not succeed on the bl31 ELF.
+              (delete 'strip)
+              (delete 'validate-runpath)))))
+      (native-inputs
+       `(("firmware" ,arm-trusted-firmware-rk3399)
+         ,@(package-native-inputs base))))))
+
 (define-public vboot-utils
   (package
     (name "vboot-utils")
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 5ecf0c1ba1..8d495aa1c9 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -21,11 +21,11 @@
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
-;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
@@ -1703,19 +1703,22 @@ unit tests and failing them if the unit test module does not exercise all
 statements in the module it tests.")
     (license license:gpl3+)))
 
+;; Further releases, up to 2.4.3, have failing unit tests. See:
+;; https://github.com/PyCQA/pylint/issues/3198.
 (define-public python-pylint
   (package
     (name "python-pylint")
-    (version "1.7.2")
+    (version "2.3.1")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append
-             "https://github.com/PyCQA/pylint/archive/pylint-"
-             version ".tar.gz"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/PyCQA/pylint")
+             (commit (string-append "pylint-" version))))
+       (file-name (git-file-name name version))
        (sha256
         (base32
-         "0mzn1czhf1mgr2wiqfihb274sja02h899b85kywdpivppa9nwrmp"))))
+         "17vvzbcqmkhr4icq5p3737nbiiyj1y3g1pa08n9mb1bsnvxmqq0z"))))
     (build-system python-build-system)
     (native-inputs
      `(("python-pytest" ,python-pytest)
@@ -1726,22 +1729,6 @@ statements in the module it tests.")
        ("python-isort" ,python-isort)
        ("python-mccabe" ,python-mccabe)
        ("python-six" ,python-six)))
-    (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (replace 'check
-                  (lambda _
-                    ;; Somehow, tests for python2-pylint
-                    ;; fail if run from the build directory
-                    (let ((work "/tmp/work"))
-                      (mkdir-p work)
-                      (setenv "PYTHONPATH"
-                              (string-append (getenv "PYTHONPATH") ":" work))
-                      (copy-recursively "." work)
-                      (with-directory-excursion "/tmp"
-                        (invoke "python" "-m" "unittest" "discover"
-                                "-s" (string-append work "/pylint/test")
-                                "-p" "*test_*.py"))))))))
     (home-page "https://github.com/PyCQA/pylint")
     (synopsis "Python source code analyzer which looks for coding standard
 errors")
@@ -1756,10 +1743,42 @@ possible to write plugins to add your own checks.")
     (properties `((python2-variant . ,(delay python2-pylint))))
     (license license:gpl2+)))
 
+;; Python2 is not supported anymore by Pylint. See:
+;; https://github.com/PyCQA/pylint/issues/1763.
 (define-public python2-pylint
   (let ((pylint (package-with-python2
-                  (strip-python2-variant python-pylint))))
+                 (strip-python2-variant python-pylint))))
     (package (inherit pylint)
+             (version "1.7.2")
+             (source
+              (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/PyCQA/pylint")
+                      (commit (string-append "pylint-" version))))
+                (file-name (git-file-name (package-name pylint) version))
+                (sha256
+                 (base32
+                  "0yyc1gxq66li2adyx8njs83dh1pliylzkdmihw0k5bn6z4aakh8s"))))
+             (arguments
+              `(,@(package-arguments pylint)
+                #:phases
+                (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      ;; Somehow, tests fail if run from the build directory.
+                      (let ((work "/tmp/work"))
+                        (mkdir-p work)
+                        (setenv "PYTHONPATH"
+                                (string-append (getenv "PYTHONPATH") ":" work))
+                        (copy-recursively "." work)
+                        (with-directory-excursion "/tmp"
+                          (invoke "python" "-m" "unittest" "discover"
+                                  "-s" (string-append work "/pylint/test")
+                                  "-p" "*test_*.py"))))))))
+             (native-inputs
+              `(("python2-futures" ,python2-futures)
+                ,@(package-native-inputs pylint)))
              (propagated-inputs
               `(("python2-backports-functools-lru-cache"
                  ,python2-backports-functools-lru-cache)
@@ -2310,6 +2329,38 @@ program or test suite under a test bed with the previously recorded devices
 loaded.")
     (license license:lgpl2.1+)))
 
+(define-public virtest
+  ;; No releases yet, so we take the commit that "vc" expects.
+  (let ((commit "f7d03ef39fceba168745bd29e1b20af6e7971e04")
+        (revision "0"))
+    (package
+      (name "virtest")
+      (version (git-version "0.0" revision commit))
+      (home-page "https://github.com/mattkretz/virtest")
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference (url home-page) (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "07pjyb0mk7y2w1dg1bhl26nb7416xa1mw16ifj6mmps5y6aq054l"))))
+      (build-system cmake-build-system)
+      (arguments
+       `(#:phases (modify-phases %standard-phases
+                    (add-after 'unpack 'adjust-install-directory
+                      (lambda _
+                        ;; Vc is the only consumer of this library, and expects
+                        ;; to find it in "virtest/vir/" instead of "vir/vir/".
+                        (substitute* "CMakeLists.txt"
+                          (("DESTINATION include/vir")
+                           "DESTINATION include/virtest"))
+                        #t)))))
+      (synopsis "Header-only test framework")
+      (description
+       "@code{virtest} is a small header-only test framework for C++.  It
+grew out of the @dfn{Vc} project.")
+      (license license:bsd-3))))
+
 (define-public python-pyfakefs
   (package
     (name "python-pyfakefs")
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 13e2c4ad44..512ca5d365 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -431,7 +431,6 @@ functionality such as HTML output.")
      '(#:build-type "RelWithDebInfo"
        #:configure-flags
        '("-DRTAGS_NO_ELISP_FILES=1"
-         "-DCMAKE_CXX_FLAGS=-std=c++11"
          "-DBUILD_TESTING=FALSE")
        #:tests? #f))
     (native-inputs
diff --git a/gnu/packages/coq.scm b/gnu/packages/coq.scm
index fd69c44c22..2c5674f57a 100644
--- a/gnu/packages/coq.scm
+++ b/gnu/packages/coq.scm
@@ -256,8 +256,7 @@ inside Coq.")
     (arguments
      `(#:configure-flags
        (list (string-append "--libdir=" (assoc-ref %outputs "out")
-                            "/lib/coq/user-contrib/Gappa")
-             "CXXFLAGS=-std=c++11")
+                            "/lib/coq/user-contrib/Gappa"))
        #:phases
        (modify-phases %standard-phases
          (add-before 'configure 'fix-remake
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 2088aef015..82a65d09f2 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -546,13 +546,13 @@ directory.")
 (define-public r-htmlwidgets
   (package
     (name "r-htmlwidgets")
-    (version "1.5")
+    (version "1.5.1")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "htmlwidgets" version))
               (sha256
                (base32
-                "1h2sj5h9vcssb73nz63gmw5bajs73m9q807fsypvr621gb1s124i"))))
+                "10fp306l1nybkah6jrlrqwwdb6zvklbddp8i3w9v9naj8la5jbnl"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-htmltools" ,r-htmltools)
@@ -3089,14 +3089,14 @@ color labels, layout, etc.")
 (define-public r-stringdist
   (package
     (name "r-stringdist")
-    (version "0.9.5.2")
+    (version "0.9.5.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "stringdist" version))
        (sha256
         (base32
-         "0nw8c317qkfq63pr0prl0hx522ddfq4cbgixb5r4pq3fxk9z303l"))))
+         "1vbhn6qwj3bzplhq06bw1yqqq1qpf1zinnj27cr7pf1nqsbyx2nq"))))
     (build-system r-build-system)
     (home-page "https://github.com/markvanderloo/stringdist")
     (synopsis "Approximate string matching and string distance functions")
@@ -6177,14 +6177,14 @@ other add-on packages.")
 (define-public r-insight
   (package
     (name "r-insight")
-    (version "0.5.0")
+    (version "0.6.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "insight" version))
        (sha256
         (base32
-         "0lrh2l9n2zd9n3zzknsxz6nlasnrayx3bplxlz7m616g56gr5nfp"))))
+         "1izqh4j0gzyk25cga67gs0i6rl0j471h5y2c3y1maz79r32fs7fd"))))
     (build-system r-build-system)
     (home-page "https://easystats.github.io/insight/")
     (synopsis "Easy access to model information for various model objects")
@@ -8997,14 +8997,14 @@ netCDF files.")
 (define-public r-biocmanager
   (package
     (name "r-biocmanager")
-    (version "1.30.4")
+    (version "1.30.8")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "BiocManager" version))
        (sha256
         (base32
-         "0kxs76pixk1d2lpvkyrq6nnvv1rqf55ph5f7igkadyyqirf3y2ah"))))
+         "0pqgb7j4aqpcp3bapl313rmyxxj3j96s9csip4f65444gjy5r2x2"))))
     (properties `((upstream-name . "BiocManager")))
     (build-system r-build-system)
     (home-page "https://cran.r-project.org/web/packages/BiocManager/")
@@ -10216,14 +10216,14 @@ decomposition is shared between datasets.")
 (define-public r-strucchange
   (package
     (name "r-strucchange")
-    (version "1.5-1")
+    (version "1.5-2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "strucchange" version))
        (sha256
         (base32
-         "0cdgvl6kphm2i59bmnppn1y3kv65ml111bk7yzpcx7vv8wh2w3kl"))))
+         "1y022363a4pp0mnji91sjh1qiyspkh09sybqwj03r9pmwrd7q93x"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-sandwich" ,r-sandwich)
@@ -12698,14 +12698,14 @@ utilities for sequence data management under the ACNUC system.")
 (define-public r-units
   (package
     (name "r-units")
-    (version "0.6-4")
+    (version "0.6-5")
     (source
       (origin
         (method url-fetch)
         (uri (cran-uri "units" version))
         (sha256
           (base32
-            "1jz0mzd78sdfxkhqw041ji50hmhjk2ha55i31yjvz35nsw30lwi5"))))
+            "02nls8m0r1r7kljs4x35naz3szq62hyqyd5vracf1xwi1kz5kdsh"))))
     (build-system r-build-system)
     (inputs
      `(("udunits" ,udunits)))
@@ -12724,14 +12724,14 @@ classes.")
 (define-public r-classint
   (package
     (name "r-classint")
-    (version "0.4-1")
+    (version "0.4-2")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "classInt" version))
        (sha256
         (base32
-         "00q1bpgblrldckn1rk166q1b0hgap2sjjyfmfcyh6ydk6y73ziir"))))
+         "0w980hrw8sgfdfyd5dsimalq7gwhvqm7507abk7k363pvgks23dv"))))
     (properties `((upstream-name . "classInt")))
     (build-system r-build-system)
     (propagated-inputs
@@ -14543,14 +14543,14 @@ batch correction, and data correction.")
 (define-public r-styler
   (package
     (name "r-styler")
-    (version "1.1.1")
+    (version "1.2.0")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "styler" version))
        (sha256
         (base32
-         "1k660lpjvd64gnf6bndcb1cq3qxsvik928kcn6271zmkhja5rgyb"))))
+         "0rdbz60x8bymis6r6188ia1y0ip3nhf5y363i4cmakr618irjab9"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-backports" ,r-backports)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 3d2395ce4b..671ee89d7c 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -89,6 +89,7 @@
   #:use-module (gnu packages bash)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages code)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages dictionaries)
   #:use-module (gnu packages emacs)
@@ -117,6 +118,7 @@
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages node)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages acl)
@@ -5360,6 +5362,31 @@ splitting the input text by spaces and re-building it into a regular
 expression.")
     (license license:gpl3+)))
 
+(define-public emacs-ivy-xref
+  (let ((commit "1a35fc0f070388701b05b0a455cbe262e924d547")
+        (revision "1"))
+    (package
+      (name "emacs-ivy-xref")
+      (version (git-version "0.1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/alexmurray/ivy-xref.git")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "0d71nm9d9ajp5i6dnl8h1hw9jqp8gd1ajgninb1h13i80rplzl9k"))))
+      (build-system emacs-build-system)
+      (propagated-inputs
+       `(("emacs-ivy" ,emacs-ivy)))
+      (home-page "https://github.com/alexmurray/ivy-xref")
+      (synopsis "Ivy interface for @code{xref}")
+      (description "This package provides an Ivy interface for selecting from
+@code{xref} results.")
+      (license license:gpl3))))
+
 (define-public emacs-ivy-pass
   (let ((commit "5b523de1151f2109fdd6a8114d0af12eef83d3c5")
         (revision "1"))
@@ -6013,6 +6040,34 @@ strings, and code folding.")
                (base32
                 "1kkj888k9x5n0i7xkia177gzsa84my3g8n0n7v65281cc4f1yhk5"))))
     (build-system emacs-build-system)
+    (inputs
+     `(("node" ,node)))
+    (native-inputs
+     `(("emacs-ert-expectations" ,emacs-ert-expectations)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'set-shell
+           ;; Setting the SHELL environment variable is required for the tests
+           ;; to find sh.
+           (lambda _
+             (setenv "SHELL" (which "sh"))
+             #t))
+         (add-after 'unpack 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((node (assoc-ref inputs "node")))
+               ;; Specify the absolute file names of the various
+               ;; programs so that everything works out-of-the-box.
+               (make-file-writable "nodejs-repl.el")
+               (emacs-substitute-variables
+                   "nodejs-repl.el"
+                 ("nodejs-repl-command"
+                  (string-append node "/bin/node")))))))
+       #:tests? #t
+       #:test-command '("emacs" "-Q" "--batch"
+                        "-L" "."
+                        "-l" "test/test.el"
+                        "-f" "ert-run-tests-batch-and-exit")))
     (home-page "https://github.com/abicky/nodejs-repl.el")
     (synopsis "Node.js REPL inside Emacs")
     (description
@@ -6115,6 +6170,32 @@ provides the following features:
 in Emacs.")
     (license license:gpl3+)))
 
+(define-public emacs-evil-markdown
+  (let ((commit "46cd81b37991c4325fc24015a610f832b0ff995d")
+        (revision "1"))
+    (package
+      (name "emacs-evil-markdown")
+      (version (git-version "0.0.2" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/Somelauw/evil-markdown.git")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0mad8sp5y9vyk28595qygspnyh8bfmb1fbxjlw70qwc1kdn822n4"))))
+      (build-system emacs-build-system)
+      (propagated-inputs
+       `(("emacs-markdown-mode" ,emacs-markdown-mode)
+         ("emacs-evil" ,emacs-evil)))
+      (home-page "http://jblevins.org/projects/evil-markdown/")
+      (synopsis "Evil keybindings for @code{markdown-mode}")
+      (description
+       "This package provides custom text objects and bindings for
+@code{markdown-mode}.")
+      (license license:gpl3+))))
+
 (define-public emacs-edit-indirect
   (package
     (name "emacs-edit-indirect")
@@ -6123,8 +6204,8 @@ in Emacs.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/Fanael/edit-indirect")
-              (commit version)))
+             (url "https://github.com/Fanael/edit-indirect")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32
@@ -13070,12 +13151,11 @@ within Emacs.")
       (license license:gpl3+))))
 
 (define-public emacs-ibuffer-projectile
-  (let ((commit "c18ac540ee46cb759fc5df18747f6e8d23563011")
-        (revision "1"))
+  (let ((commit "76496214144687cee0b5139be2e61b1e400cac87")
+        (revision "2"))
     (package
       (name "emacs-ibuffer-projectile")
-      (version (string-append "0.2" "-" revision "."
-                              (string-take commit 7)))
+      (version (git-version "0.2" revision commit))
       (source
        (origin
          (method git-fetch)
@@ -13085,7 +13165,7 @@ within Emacs.")
          (file-name (git-file-name name version))
          (sha256
           (base32
-           "1nd26cwwdpnwj0g4w393rd59klpyr6wqrnyr6scmwb5d06bsm44n"))))
+           "0vv9xwb1qd5x8zhqmmsn1nrpd11cql9hxb7483nsdhcfwl4apqav"))))
       (build-system emacs-build-system)
       (propagated-inputs
        `(("emacs-projectile" ,emacs-projectile)))
@@ -17377,8 +17457,8 @@ and code peeking.")
     (license license:gpl3+)))
 
 (define-public emacs-lsp-ivy
-  (let ((commit "6fd55316dd62d290429c25ea9b0c1f66069b2f37")
-        (revision "1"))
+  (let ((commit "caf1e1d7e22ed0b5fe18dd508d1a6f83dd163288")
+        (revision "2"))
     (package
       (name "emacs-lsp-ivy")
       (version (git-version "0.1" revision commit))
@@ -17390,7 +17470,7 @@ and code peeking.")
                 (file-name (git-file-name name version))
                 (sha256
                  (base32
-                  "0hx9rs66ahl2rqgnmyiyrwk12v7iv8c6gnn7b66985mxjqyyh94r"))))
+                  "084ds4qhzhivfnicy3h7z4mblxgcqx8pfnkbjr9qjrfng7cisy4z"))))
       (build-system emacs-build-system)
       (propagated-inputs
        `(("emacs-ivy" ,emacs-ivy)
@@ -17537,10 +17617,10 @@ a suffix) we prefer to call it just a \"transient\".")
       (license license:gpl3+))))
 
 (define-public emacs-forge
-  (let ((commit "a6721c071226ae8da6852e9330f2bdcba92a4577"))
+  (let ((commit "63cbf81f166fc71861d8e3d246df8e5ccedcb9bb"))
     (package
       (name "emacs-forge")
-      (version (git-version "0.1.0" "1" commit))
+      (version (git-version "0.1.0" "2" commit))
       (source
        (origin
          (method git-fetch)
@@ -17550,7 +17630,7 @@ a suffix) we prefer to call it just a \"transient\".")
          (file-name (git-file-name name version))
          (sha256
           (base32
-           "1gzr1di29a9szkzm6kjznq7c8md71cm5761pznf08nmmk63dl3zm"))))
+           "1yf2xjx3459py6rji740jm8bmh2pv66ghnbjxsvjd4jf9kcdav83"))))
       (build-system gnu-build-system)
       (native-inputs
        `(("texinfo" ,texinfo)
@@ -18068,11 +18148,10 @@ invoked.")
 
 (define-public emacs-web-server
   (let ((commit "cafa5b7582c57252a0884b2c33da9b18fb678713")
-        (version "0.1.1")
         (revision "1"))
     (package
       (name "emacs-web-server")
-      (version (git-version version revision commit))
+      (version (git-version "0.1.0" revision commit))
       (source
        (origin
          (method git-fetch)
@@ -18084,6 +18163,19 @@ invoked.")
           (base32
            "1c0lfqmbs5hvz3fh3c8wgp6ipwmxrwx9xj264bjpj3phixd5419y"))))
       (build-system emacs-build-system)
+      (native-inputs
+       `(("curl" ,curl)))
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'set-shell
+             ;; Setting the SHELL environment variable is required for the tests
+             ;; to find sh.
+             (lambda _
+               (setenv "SHELL" (which "sh"))
+               #t)))
+         #:tests? #t
+         #:test-command '("make" "check")))
       (home-page "https://github.com/eschulte/emacs-web-server/")
       (synopsis "Web server with handlers in Emacs Lisp")
       (description "This package supports HTTP GET and POST requests with
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index f6da7f2d25..1e5629451d 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -161,7 +161,7 @@
                       (string-append (assoc-ref inputs "vulkan-loader")
                                      "/lib/libvulkan.so")))
                  (chdir "docs")
-                 (invoke "bash" "-c" "g++ -O2 -std=c++11 $(freetype-config \
+                 (invoke "bash" "-c" "g++ -O2 $(freetype-config \
 --cflags --libs) gc-font-tool.cpp -o gc-font-tool")
                  (invoke "./gc-font-tool" "a" fontfile "font_western.bin")
                  (invoke "./gc-font-tool" "s" fontfile "font_japanese.bin")
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 169d912c35..d1626f0342 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -1546,7 +1546,7 @@ unique design feature of Trilinos is its focus on packages.")
      `(#:tests? #f
        #:configure-flags
        (list
-        "CXXFLAGS=-O3 -std=c++11"
+        "CXXFLAGS=-O3"
         (string-append "ARCHDIR="
                        (assoc-ref %build-inputs "trilinos")))))
     (native-inputs
@@ -1586,7 +1586,7 @@ parallel computing platforms.  It also supports serial execution.")
     (arguments
      `(,@(substitute-keyword-arguments (package-arguments xyce-serial)
            ((#:configure-flags flags)
-            `(list "CXXFLAGS=-O3 -std=c++11"
+            `(list "CXXFLAGS=-O3"
                    "CXX=mpiCC"
                    "CC=mpicc"
                    "F77=mpif77"
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index c473ccd920..cc92c228ad 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -389,6 +389,10 @@ Virtual Machines.  OVMF contains a sample UEFI firmware for QEMU and KVM.")
                (url "https://github.com/ARM-software/arm-trusted-firmware.git")
                (commit (string-append "v" version))))
         (file-name (git-file-name "arm-trusted-firmware" version))
+        (patches (search-patches
+                  "arm-trusted-firmware-optional-bin-generation.patch"
+                  "arm-trusted-firmware-rockchip-disable-binary.patch"
+                  "arm-trusted-firmware-disable-hdcp.patch"))
        (sha256
         (base32
          "1gy5qskrjy8n3kxdcm1dx8b45l5b75n0pm8pq80wl6xic1ycy24r"))))
@@ -397,10 +401,16 @@ Virtual Machines.  OVMF contains a sample UEFI firmware for QEMU and KVM.")
      `(#:phases
        (modify-phases %standard-phases
          (delete 'configure) ; no configure script
+         ;; Remove binary blobs which do not contain source or proper license.
+         (add-after 'unpack 'remove-binary-blobs
+           (lambda _
+             (for-each (lambda (file)
+                         (delete-file file))
+                       (find-files "." ".*\\.bin$"))))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let ((out (assoc-ref outputs "out"))
-                   (bin (find-files "." ".*\\.bin$")))
+                   (bin (find-files "." ".*\\.(bin|elf)$")))
                (for-each
                  (lambda (file)
                    (install-file file out))
@@ -456,6 +466,9 @@ such as:
       (inherit base)
       (name "arm-trusted-firmware-sun50i-a64"))))
 
+(define-public arm-trusted-firmware-rk3328
+  (make-arm-trusted-firmware "rk3328"))
+
 (define-public arm-trusted-firmware-puma-rk3399
   (let ((base (make-arm-trusted-firmware "rk3399"))
         ;; Vendor's arm trusted firmware branch hasn't been upstreamed yet.
@@ -476,6 +489,16 @@ such as:
            (base32
             "0vqhwqqh8h9qlkpybg2v94911091c1418bc4pnzq5fd7zf0fjkf8")))))))
 
+(define-public arm-trusted-firmware-rk3399
+  (let ((base (make-arm-trusted-firmware "rk3399")))
+    (package
+      (inherit base)
+      (name "arm-trusted-firmware-rk3399")
+      (native-inputs
+       `(("cross32-gcc" ,(cross-gcc "arm-none-eabi"))
+         ("cross32-binutils", (cross-binutils "arm-none-eabi"))
+         ,@(package-native-inputs base))))))
+
 (define-public rk3399-cortex-m0
   (package
     (name "rk3399-cortex-m0")
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index f17bd941cd..781f450621 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -2339,7 +2339,7 @@ editors, IDEs, etc.")
   (package
     (inherit vte)
     (name "vte-ng")
-    (version "0.56.2.a")
+    (version "0.58.2.a")
     (home-page "https://github.com/thestinger/vte-ng")
     (source (origin
               (method git-fetch)
@@ -2347,20 +2347,13 @@ editors, IDEs, etc.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1lmba6i0abifmvvfb1q63ql6zh6d38148kp6skmkggiib2hi5dki"))))
+                "0rnm5c6m3abbm81jsfdas0y80z299ny54gr4syn4bfrms3s4g19l"))))
+    (build-system meson-build-system)
     (native-inputs
      `(("gtk-doc" ,gtk-doc)
-       ("gperf" ,gperf)
-       ("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)
        ,@(package-native-inputs vte)))
     (arguments
-     `(#:phases (modify-phases %standard-phases
-                  (replace 'bootstrap
-                    (lambda _
-                      (setenv "NOCONFIGURE" "true")
-                      (invoke "sh" "autogen.sh"))))))
+     `(#:configure-flags '("-Ddocs=true")))
   (synopsis "Enhanced VTE terminal widget")
   (description
    "VTE is a library (libvte) implementing a terminal emulator widget for
@@ -5635,7 +5628,12 @@ Compatible with Cisco VPN concentrators configured to use IPsec.")
 to @acronym{VPNs, virtual private networks} via OpenConnect, an open client for
 Cisco's AnyConnect SSL VPN.")
     (license license:gpl2+)
-    (properties `((upstream-name . "NetworkManager-openconnect")))))
+    (properties `((upstream-name . "NetworkManager-openconnect")
+
+                  ;; The 'etc/dbus-1/system.d/nm-openconnect-service.conf'
+                  ;; file refers to account "nm-openconnect".  Specify it here
+                  ;; so that 'network-manager-service-type' creates it.
+                  (user-accounts . ("nm-openconnect"))))))
 
 (define-public mobile-broadband-provider-info
   (package
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 06e5f6782f..ed89b2661b 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -866,8 +866,6 @@ software.")))
     (inputs
      `(("qtbase" ,qtbase)
        ,@(package-inputs pinentry-tty)))
-    (arguments
-     `(#:configure-flags '("CXXFLAGS=-std=gnu++11")))
   (description
    "Pinentry provides a console and a Qt GUI that allows users to enter a
 passphrase when @code{gpg} is run and needs it.")))
diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm
index a7eb1ea0cd..91484c7576 100644
--- a/gnu/packages/gobby.scm
+++ b/gnu/packages/gobby.scm
@@ -47,9 +47,7 @@
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (arguments
-     `(#:configure-flags
-       '("CXXFLAGS=-std=c++11")         ; required by libsigc++
-       #:phases
+     `(#:phases
        (modify-phases %standard-phases
          (add-before 'configure 'update-gnutls-api
            (lambda _
@@ -88,9 +86,6 @@
      `(("libsigc++" ,libsigc++)
        ("gnutls" ,gnutls)
        ("libnet6" ,libnet6)))
-    (arguments
-     ;; Required by libsigc++.
-     `(#:configure-flags '("CXXFLAGS=-std=c++11")))
     (home-page "https://gobby.github.io/")
     (synopsis "Library for building collaborative editors")
     (description
diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm
index bde8b44a30..9979b176d7 100644
--- a/gnu/packages/graph.scm
+++ b/gnu/packages/graph.scm
@@ -389,7 +389,7 @@ contains supporting code for evaluation and parameter tuning.")
 PYTHONCFLAGS =-I~a/include/python~am/ -I~a/lib/python~a/site-packages/numpy/core/include
 LIBS = -lpython~am -lfaiss
 SHAREDFLAGS = -shared -fopenmp
-CXXFLAGS = -fpermissive -std=c++11 -fopenmp -fPIC
+CXXFLAGS = -fpermissive -fopenmp -fPIC
 CPUFLAGS = ~{~a ~}~%"
                            (assoc-ref inputs "python*") python-version
                            (assoc-ref inputs "python-numpy") python-version
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index e453d9fa5b..917e7ba397 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -433,23 +433,31 @@ graphics.")
                   #t))))
     (build-system cmake-build-system)
     (arguments
-     '(#:phases
+     `(#:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'change-directory
            (lambda _
              (chdir "OpenEXR")
              #t))
-         (add-after 'change-directory 'disable-broken-test
-           ;; This test fails on i686. Upstream developers suggest that
-           ;; this test is broken on i686 and can be safely disabled:
-           ;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748
+         (add-before 'check 'increase-test-timeout
            (lambda _
-             (substitute* "IlmImfTest/main.cpp"
-               (("#include \"testOptimizedInterleavePatterns.h\"")
-                 "//#include \"testOptimizedInterleavePatterns.h\"")
-               (("TEST \\(testOptimizedInterleavePatterns")
-                 "//TEST (testOptimizedInterleavePatterns"))
-             #t)))))
+             ;; On armhf-linux, we need to override the CTest default
+             ;; timeout of 1500 seconds for the OpenEXR.IlmImf test.
+             (setenv "CTEST_TEST_TIMEOUT" "2000")
+             #t))
+         ,@(if (not (target-64bit?))
+               `((add-after 'change-directory 'disable-broken-test
+                   ;; This test fails on i686. Upstream developers suggest that
+                   ;; this test is broken on i686 and can be safely disabled:
+                   ;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748
+                   (lambda _
+                     (substitute* "IlmImfTest/main.cpp"
+                       ((".*testOptimizedInterleavePatterns.*") "")
+                       ;; This test is broken in 2.4.0 and will be fixed in a later
+                       ;; release: <https://github.com/openexr/openexr/issues/571>.
+                       ((".*testLargeDataWindowOffsets.*") ""))
+                     #t)))
+               '()))))
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (propagated-inputs
@@ -665,7 +673,6 @@ virtual reality, scientific visualization and modeling.")
        (list "COMPILED_BY=Guix"
              (string-append "--with-boost-libdir="
                             (assoc-ref %build-inputs "boost") "/lib")
-             "CXXFLAGS=-std=c++11"
              "--disable-optimiz-arch")
        #:phases
        (modify-phases %standard-phases
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm
index 460f35dbae..2579da3d6a 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -269,10 +269,6 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
              "-DWITH_CAROTENE=OFF" ; only visible on arm/aarch64
              "-DENABLE_PRECOMPILED_HEADERS=OFF"
 
-             ;; FIXME: OpenEXR requires C++11 or later.  Remove this when
-             ;; the default compiler is GCC 7.
-             "-DCMAKE_CXX_FLAGS=-std=gnu++11"
-
              ;; CPU-Features:
              ;; See cmake/OpenCVCompilerOptimizations.cmake
              ;; (CPU_ALL_OPTIMIZATIONS) for a list of all optimizations
@@ -729,8 +725,7 @@ combine the information contained in both.")
              "-DSNAP_VERSION_GIT_BRANCH=release"
              "-DSNAP_VERSION_GIT_TIMESTAMP=0"
              "-DSNAP_PACKAGE_QT_PLUGINS=OFF"
-             "-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
-             "-DCMAKE_CXX_FLAGS=-std=gnu++11 -fpermissive")
+             "-DCMAKE_POSITION_INDEPENDENT_CODE=ON")
        #:phases
        (modify-phases %standard-phases
          ;; During the installation phase all libraries provided by all
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 51b76162ef..ff9fdf4b36 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -973,11 +973,7 @@ supplies a generic doubly-linked list and some string functions.")
             ;; We need '-fpermissive' for Source/FreeImage.h.
             ;; libjxr doesn't have a pkg-config file.
             (string-append "CFLAGS+=-O2 -fPIC -fvisibility=hidden -fpermissive "
-                           "-I" (assoc-ref %build-inputs "libjxr") "/include/jxrlib "
-
-                           ;; FIXME: OpenEXR 2.4.0 requires C++11 or later.
-                           ;; Remove when the default compiler is > GCC 5.
-                           "-std=gnu++11"))
+                           "-I" (assoc-ref %build-inputs "libjxr") "/include/jxrlib"))
       #:tests? #f)) ; no check target
    (native-inputs
     `(("pkg-config" ,pkg-config)
diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm
index d1a313187e..23afd138a3 100644
--- a/gnu/packages/kodi.scm
+++ b/gnu/packages/kodi.scm
@@ -104,14 +104,12 @@
            (replace 'build
              (lambda _
                (invoke "g++" "-c" "guid.cpp" "-o" "guid.o"
-                       "-std=c++11" "-DGUID_LIBUUID")
+                        "-DGUID_LIBUUID")
                (invoke "ar" "rvs" "libcrossguid.a" "guid.o")))
            (replace 'check
              (lambda _
-               (invoke "g++" "-c" "test.cpp" "-o" "test.o"
-                       "-std=c++11")
-               (invoke "g++" "-c" "testmain.cpp" "-o" "testmain.o"
-                       "-std=c++11")
+               (invoke "g++" "-c" "test.cpp" "-o" "test.o")
+               (invoke "g++" "-c" "testmain.cpp" "-o" "testmain.o")
                (invoke "g++" "test.o" "guid.o" "testmain.o"
                        "-o" "test" "-luuid")
                (invoke (string-append (getcwd) "/test"))))
@@ -282,6 +280,7 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.")
                (base32
                 "1m0295czxabdcqyqf5m94av9d88pzhnzjvyfs1q07xqq82h313p7"))
               (patches (search-patches "kodi-skip-test-449.patch"
+                                       "kodi-increase-test-timeout.patch"
                                        "kodi-set-libcurl-ssl-parameters.patch"))
               (snippet
                '(begin
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index b0ffe5de07..d75d28ef0a 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -5679,7 +5679,7 @@ privileges.")
 (define-public psm2
   (package
     (name "psm2")
-    (version "10.3-46")
+    (version "11.2.86")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -5688,7 +5688,7 @@ privileges.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0wadphv4rl5p38x6a3dgpbijlzqdvcn02cfafnp72nh9faz0zvlx"))))
+                "1hiqzcmc97lzhaqjva82vf8irgg038cciypsv2brw90ak09n6vwf"))))
     (build-system gnu-build-system)
     (arguments
      '(#:make-flags
diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
index e5487d3ae4..8d5d3522ec 100644
--- a/gnu/packages/lxqt.scm
+++ b/gnu/packages/lxqt.scm
@@ -1279,6 +1279,52 @@ easily publishing them on internet image hosting services.")
 like @command{tar} and @command{zip}.")
     (license license:gpl2+)))
 
+(define-public lxqt-connman-applet
+  ;; since the main developers didn't release any version yet,  their 
+  ;; latest commit on `master` branch at the moment used for this version.
+  (let ((commit "3db374eebd8d851f68a50fc5d1ef5fa9478c275e")
+        (revision "0"))
+    (package
+      (name "lxqt-connman-applet")
+      (version (git-version "0.14.1" revision commit))
+      (source
+        (origin
+          (method git-fetch)
+          (uri (git-reference
+            (url (string-append "https://github.com/lxqt/" name ".git"))
+            (commit commit)))
+          (file-name (git-file-name name version))
+          (sha256 (base32 "1brkyzjmpa7hiv8p8rvmkcgagchh2zn71ry4pjiplga05as3jc11"))))
+      (build-system cmake-build-system)
+      (inputs
+        `(("kwindowsystem" ,kwindowsystem)
+          ("qtbase" ,qtbase)
+          ("qtsvg" ,qtsvg)
+          ("liblxqt" ,liblxqt)
+          ("qtx11extras" ,qtx11extras)
+          ("libqtxdg" ,libqtxdg)))
+      (native-inputs
+        `(("lxqt-build-tools" ,lxqt-build-tools)
+          ("qtlinguist" ,qttools)))
+      (arguments
+        `(#:tests? #f                   ; no tests
+          #:phases
+            (modify-phases %standard-phases
+              (add-after 'unpack 'patch-translations-dir
+                (lambda* (#:key outputs #:allow-other-keys)
+                  (substitute* "CMakeLists.txt"
+                    (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
+                     (string-append (assoc-ref outputs "out")
+                                    "/share/lxqt/translations"))
+                    (("\\$\\{LXQT_ETC_XDG_DIR\\}") "etc/xdg"))
+                  #t)))))
+      (home-page "https://github.com/lxqt/lxqt-connman-applet")
+      (synopsis "System-tray applet for connman")
+      (description "This package provides a Qt-based system-tray applet for
+the network management tool Connman, originally developed for the LXQT
+desktop.")
+      (license license:lgpl2.1+))))
+
 ;; The LXQt Desktop Environment
 
 (define-public lxqt
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 254ee59c4a..2b2df6da6a 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -1302,7 +1302,7 @@ Python.")
        ("openssl" ,openssl)
        ("zlib" ,zlib)))
     (native-inputs
-     `(("protobuf" ,protobuf-next)
+     `(("protobuf" ,protobuf)
        ("python" ,python-wrapper)))
     (home-page "https://grpc.io")
     (synopsis "High performance universal RPC framework")
@@ -1607,8 +1607,8 @@ INSTALL_RPATH " (assoc-ref outputs "out") "/lib)\n")))
                #t))))))
     (native-inputs
      `(("pkg-config" ,pkg-config)
-       ("protobuf:native" ,protobuf-next) ; protoc
-       ("protobuf:src" ,(package-source protobuf-next))
+       ("protobuf:native" ,protobuf-3.6) ; protoc
+       ("protobuf:src" ,(package-source protobuf-3.6))
        ("eigen:src" ,(package-source eigen-for-tensorflow))
        ;; install_pip_packages.sh wants setuptools 39.1.0 specifically.
        ("python-setuptools" ,python-setuptools-for-tensorflow)
@@ -1735,7 +1735,7 @@ INSTALL_RPATH " (assoc-ref outputs "out") "/lib)\n")))
        ("python-gast" ,python-gast)
        ("python-grpcio" ,python-grpcio)
        ("python-numpy" ,python-numpy)
-       ("python-protobuf" ,python-protobuf-next)
+       ("python-protobuf" ,python-protobuf-3.6)
        ("python-six" ,python-six)
        ("python-termcolo" ,python-termcolor)
        ("python-wheel" ,python-wheel)))
@@ -1751,7 +1751,7 @@ INSTALL_RPATH " (assoc-ref outputs "out") "/lib)\n")))
        ("jsoncpp" ,jsoncpp-for-tensorflow)
        ("snappy" ,snappy)
        ("sqlite" ,sqlite)
-       ("protobuf" ,protobuf-next)
+       ("protobuf" ,protobuf-3.6)
        ("python" ,python-wrapper)
        ("zlib" ,zlib)))
     (home-page "https://tensorflow.org")
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 64e8b771fc..578a5c07fa 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -849,14 +849,14 @@ invoking @command{notifymuch} from the post-new hook.")
 (define-public notmuch
   (package
     (name "notmuch")
-    (version "0.29.1")
+    (version "0.29.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://notmuchmail.org/releases/notmuch-"
                                   version ".tar.xz"))
               (sha256
                (base32
-                "0rg3rwghd3wivf3bmqcqpkkd5c779ld5hi363zjcw5fl6a7gqilq"))))
+                "1pjmrnbn0iavm5pnw7wgfw5d6hg5i6miqfa6s7s4027vn94n3nhv"))))
     (build-system gnu-build-system)
     (arguments
      `(#:modules ((guix build gnu-build-system)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 30d0717119..d83e3a30be 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -3977,14 +3977,14 @@ supports compressed MAT files, as well as newer (version 7.3) MAT files.")
 (define-public vc
   (package
     (name "vc")
-    (version "1.3.3")
+    (version "1.4.1")
     (source
       (origin (method url-fetch)
               (uri (string-append "https://github.com/VcDevel/Vc/releases/"
                                   "download/" version "/Vc-" version ".tar.gz"))
               (sha256
                (base32
-                "1zmlpn32jzb38smp3j834llmbix3whsrbw0h397qxysbw792kih8"))))
+                "17qili8bf8r78cng65yf4qmgna8kiqjqbgcqbric6v9j6nkhkrk8"))))
     (build-system cmake-build-system)
     (arguments
      '(#:configure-flags
@@ -3992,7 +3992,30 @@ supports compressed MAT files, as well as newer (version 7.3) MAT files.")
          ;; By default, Vc will optimize for the CPU of the build machine.
          ;; Setting this to "none" makes it create portable binaries.  See
          ;; "cmake/OptimizeForArchitecture.cmake".
-         "-DTARGET_ARCHITECTURE=none")))
+         "-DTARGET_ARCHITECTURE=none")
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'copy-testdata
+                    (lambda* (#:key inputs native-inputs #:allow-other-keys)
+                      (let ((testdata (assoc-ref (or native-inputs inputs)
+                                                 "testdata")))
+                        (copy-recursively testdata "tests/testdata")
+                        #t))))))
+    (native-inputs
+     `(("virtest" ,virtest)
+
+       ;; This is a submodule in the git project, but not part of the
+       ;; released sources.  See the git branch for the commit to take.
+       ("testdata" ,(let ((commit "9ada1f34d6a41f1b5553d6223f277eae72c039d3"))
+                      (origin
+                        (method git-fetch)
+                        (uri (git-reference
+                              (url "https://github.com/VcDevel/vc-testdata")
+                              (commit "9ada1f34d6a41f1b5553d6223f277eae72c039d3")))
+                        (file-name (git-file-name "vc-testdata"
+                                                  (string-take commit 7)))
+                        (sha256
+                         (base32
+                          "1hkhqib03qlcq412ym2dciynfxcdr2ygqhnplz4l1vissr1wnqn2")))))))
     (synopsis "SIMD vector classes for C++")
     (description "Vc provides portable, zero-overhead C++ types for explicitly
 data-parallel programming.  It is a library designed to ease explicit
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 040dfad506..c0707772e4 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1514,14 +1514,6 @@ special variant of additive synthesis.")
         (base32
          "1882pfcmf3rqg3vd4qflzkppcv158d748i603spqjbxqi8z7x7w0"))))
     (build-system gnu-build-system)
-    (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'set-flags
-           (lambda _
-             ;; Compile with C++11, required by gtkmm.
-             (setenv "CXXFLAGS" "-std=c++11")
-             #t)))))
     (inputs
      `(("alsa-lib" ,alsa-lib)
        ("jack" ,jack-1)
@@ -3569,8 +3561,7 @@ develop custom plugins for use in other applications without programming.")
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags
-       (list "--enable-qt5"
-             "CXXFLAGS=-std=gnu++11")))
+       (list "--enable-qt5")))
     (inputs
      `(("qtbase" ,qtbase)
        ("alsa-lib" ,alsa-lib)
@@ -3601,8 +3592,7 @@ modules running in parallel.")
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags
-       (list "--enable-qt5"
-             "CXXFLAGS=-std=gnu++11")))
+       (list "--enable-qt5")))
     (inputs
      `(("qtbase" ,qtbase)
        ("alsa-lib" ,alsa-lib)))
@@ -3631,9 +3621,6 @@ defined as tabs in the main control surface.")
                 "12dphdhnvfk1k0vmagi1v2lhyxjyj1j3cz6ksjw0ydcvid1x8ap2"))
               (patches (search-patches "seq24-rename-mutex.patch"))))
     (build-system gnu-build-system)
-    (arguments
-     `(#:configure-flags
-       (list "CXXFLAGS=-std=gnu++11")))
     (inputs
      `(("gtkmm" ,gtkmm-2)
        ("alsa-lib" ,alsa-lib)
diff --git a/gnu/packages/patches/arm-trusted-firmware-disable-hdcp.patch b/gnu/packages/patches/arm-trusted-firmware-disable-hdcp.patch
new file mode 100644
index 0000000000..edae2352d9
--- /dev/null
+++ b/gnu/packages/patches/arm-trusted-firmware-disable-hdcp.patch
@@ -0,0 +1,82 @@
+From c7f0cd054578152a250f784bf82c8ca53aa91a02 Mon Sep 17 00:00:00 2001
+From: Ziyuan Xu <xzy.xu@rock-chips.com>
+Date: Tue, 8 Oct 2019 10:27:05 +0800
+Subject: [PATCH] plat/rockchip: cliam a macro to enable hdcp feature for DP
+
+HDCP is using a binary driver, add macro PLAT_RK_DP_HDCP to make it as
+an option.
+
+Change-Id: I54ef1a3635a28e8ae56654bd1e91dfe011520a7f
+Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
+Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
+---
+ plat/rockchip/rk3399/plat_sip_calls.c |  4 ++++
+ plat/rockchip/rk3399/platform.mk      | 11 +++++++----
+ 2 files changed, 11 insertions(+), 4 deletions(-)
+
+diff --git a/plat/rockchip/rk3399/plat_sip_calls.c b/plat/rockchip/rk3399/plat_sip_calls.c
+index c2cc5b11c..ce8476c9a 100644
+--- a/plat/rockchip/rk3399/plat_sip_calls.c
++++ b/plat/rockchip/rk3399/plat_sip_calls.c
+@@ -56,17 +56,21 @@ uintptr_t rockchip_plat_sip_handler(uint32_t smc_fid,
+ 				    void *handle,
+ 				    u_register_t flags)
+ {
++#ifdef PLAT_RK_DP_HDCP
+ 	uint64_t x5, x6;
++#endif
+ 
+ 	switch (smc_fid) {
+ 	case RK_SIP_DDR_CFG:
+ 		SMC_RET1(handle, ddr_smc_handler(x1, x2, x3, x4));
++#ifdef PLAT_RK_DP_HDCP
+ 	case RK_SIP_HDCP_CONTROL:
+ 		SMC_RET1(handle, dp_hdcp_ctrl(x1));
+ 	case RK_SIP_HDCP_KEY_DATA64:
+ 		x5 = read_ctx_reg(get_gpregs_ctx(handle), CTX_GPREG_X5);
+ 		x6 = read_ctx_reg(get_gpregs_ctx(handle), CTX_GPREG_X6);
+ 		SMC_RET1(handle, dp_hdcp_store_key(x1, x2, x3, x4, x5, x6));
++#endif
+ 	default:
+ 		ERROR("%s: unhandled SMC (0x%x)\n", __func__, smc_fid);
+ 		SMC_RET1(handle, SMC_UNK);
+diff --git a/plat/rockchip/rk3399/platform.mk b/plat/rockchip/rk3399/platform.mk
+index 25c498da8..01577492d 100644
+--- a/plat/rockchip/rk3399/platform.mk
++++ b/plat/rockchip/rk3399/platform.mk
+@@ -57,7 +57,6 @@ BL31_SOURCES	+=	${RK_GIC_SOURCES}				\
+ 			${RK_PLAT_COMMON}/aarch64/platform_common.c	\
+ 			${RK_PLAT_COMMON}/rockchip_sip_svc.c		\
+ 			${RK_PLAT_SOC}/plat_sip_calls.c			\
+-			${RK_PLAT_SOC}/drivers/dp/cdn_dp.c		\
+ 			${RK_PLAT_SOC}/drivers/gpio/rk3399_gpio.c	\
+ 			${RK_PLAT_SOC}/drivers/pmu/pmu.c		\
+ 			${RK_PLAT_SOC}/drivers/pmu/pmu_fw.c		\
+@@ -89,17 +88,21 @@ $(eval $(call add_define,RK3399M0FW))
+ RK3399M0PMUFW=${BUILD_M0}/${PLAT_M0}pmu.bin
+ $(eval $(call add_define,RK3399M0PMUFW))
+ 
++ifdef PLAT_RK_DP_HDCP
++BL31_SOURCES	+= ${RK_PLAT_SOC}/drivers/dp/cdn_dp.c
++
+ HDCPFW=${RK_PLAT_SOC}/drivers/dp/hdcp.bin
+ $(eval $(call add_define,HDCPFW))
+ 
++${BUILD_PLAT}/bl31/cdn_dp.o: CCACHE_EXTRAFILES=$(HDCPFW)
++${RK_PLAT_SOC}/drivers/dp/cdn_dp.c: $(HDCPFW)
++endif
++
+ # CCACHE_EXTRAFILES is needed because ccache doesn't handle .incbin
+ export CCACHE_EXTRAFILES
+ ${BUILD_PLAT}/bl31/pmu_fw.o: CCACHE_EXTRAFILES=$(RK3399M0FW):$(RK3399M0PMUFW)
+ ${RK_PLAT_SOC}/drivers/pmu/pmu_fw.c: $(RK3399M0FW)
+ 
+-${BUILD_PLAT}/bl31/cdn_dp.o: CCACHE_EXTRAFILES=$(HDCPFW)
+-${RK_PLAT_SOC}/drivers/dp/cdn_dp.c: $(HDCPFW)
+-
+ $(eval $(call MAKE_PREREQ_DIR,${BUILD_M0},${BUILD_PLAT}))
+ .PHONY: $(RK3399M0FW)
+ $(RK3399M0FW): | ${BUILD_M0}
+-- 
+2.20.1
+
diff --git a/gnu/packages/patches/arm-trusted-firmware-optional-bin-generation.patch b/gnu/packages/patches/arm-trusted-firmware-optional-bin-generation.patch
new file mode 100644
index 0000000000..b2b8a12e1d
--- /dev/null
+++ b/gnu/packages/patches/arm-trusted-firmware-optional-bin-generation.patch
@@ -0,0 +1,86 @@
+From b02de4cb14ee9c2bfff53d36f0b7ec6a2065bc94 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Christoph=20M=C3=BCllner?= <christophm30@gmail.com>
+Date: Wed, 24 Apr 2019 09:45:30 +0200
+Subject: [PATCH 1/2] build_macros: Add mechanism to prevent bin generation.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+On certain platforms it does not make sense to generate
+TF-A binary images. For example a platform could make use of serveral
+memory areas, which are non-continuous and the resulting binary
+therefore would suffer from the padding-bytes.
+Typically these platforms use the ELF image.
+
+This patch introduces a variable DISABLE_BIN_GENERATION, which
+can be set to '1' in the platform makefile to prevent the binary
+generation.
+
+Signed-off-by: Christoph Müllner <christophm30@gmail.com>
+Change-Id: I62948e88bab685bb055fe6167d9660d14e604462
+---
+ docs/user-guide.rst          | 4 ++++
+ make_helpers/build_macros.mk | 9 +++++++++
+ make_helpers/defaults.mk     | 3 +++
+ 3 files changed, 16 insertions(+)
+
+diff --git a/docs/user-guide.rst b/docs/user-guide.rst
+index 0848769b3..19919f112 100644
+--- a/docs/user-guide.rst
++++ b/docs/user-guide.rst
+@@ -369,6 +369,10 @@ Common build options
+ -  ``DEBUG``: Chooses between a debug and release build. It can take either 0
+    (release) or 1 (debug) as values. 0 is the default.
+ 
++-  ``DISABLE_BIN_GENERATION``: Boolean option to disable the generation
++   of the binary image. If set to 1, then only the ELF image is built.
++   0 is the default.
++
+ -  ``DYN_DISABLE_AUTH``: Provides the capability to dynamically disable Trusted
+    Board Boot authentication at runtime. This option is meant to be enabled only
+    for development platforms. ``TRUSTED_BOARD_BOOT`` flag must be set if this
+diff --git a/make_helpers/build_macros.mk b/make_helpers/build_macros.mk
+index 5d33954ad..2d41b2db1 100644
+--- a/make_helpers/build_macros.mk
++++ b/make_helpers/build_macros.mk
+@@ -438,6 +438,11 @@ else
+ 		--script $(LINKERFILE) $(BUILD_DIR)/build_message.o \
+ 		$(OBJS) $(LDPATHS) $(LIBWRAPPER) $(LDLIBS) $(BL_LIBS)
+ endif
++ifeq ($(DISABLE_BIN_GENERATION),1)
++	@${ECHO_BLANK_LINE}
++	@echo "Built $$@ successfully"
++	@${ECHO_BLANK_LINE}
++endif
+ 
+ $(DUMP): $(ELF)
+ 	$${ECHO} "  OD      $$@"
+@@ -451,7 +456,11 @@ $(BIN): $(ELF)
+ 	@${ECHO_BLANK_LINE}
+ 
+ .PHONY: bl$(1)
++ifeq ($(DISABLE_BIN_GENERATION),1)
++bl$(1): $(ELF) $(DUMP)
++else
+ bl$(1): $(BIN) $(DUMP)
++endif
+ 
+ all: bl$(1)
+ 
+diff --git a/make_helpers/defaults.mk b/make_helpers/defaults.mk
+index be84f7791..dc797ed1f 100644
+--- a/make_helpers/defaults.mk
++++ b/make_helpers/defaults.mk
+@@ -62,6 +62,9 @@ DEBUG				:= 0
+ # Build platform
+ DEFAULT_PLAT			:= fvp
+ 
++# Disable the generation of the binary image (ELF only).
++DISABLE_BIN_GENERATION		:= 0
++
+ # Enable capability to disable authentication dynamically. Only meant for
+ # development platforms.
+ DYN_DISABLE_AUTH		:= 0
+-- 
+2.20.1
+
diff --git a/gnu/packages/patches/arm-trusted-firmware-rockchip-disable-binary.patch b/gnu/packages/patches/arm-trusted-firmware-rockchip-disable-binary.patch
new file mode 100644
index 0000000000..8819a7cfad
--- /dev/null
+++ b/gnu/packages/patches/arm-trusted-firmware-rockchip-disable-binary.patch
@@ -0,0 +1,73 @@
+From 42383dcf7db5debb9e183c7c5631974a4c2f91ea Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Christoph=20M=C3=BCllner?= <christophm30@gmail.com>
+Date: Wed, 24 Apr 2019 09:52:54 +0200
+Subject: [PATCH 2/2] rockchip: Disable binary generation for all SoCs.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+All supported Rockchip SoCs (RK3288, RK3328, RK3368 and RK3399)
+have non-continuous memory areas in the linker script with a huge
+gap between them. This results in extremely padded binary images
+with a size of about 4 GiB.
+
+E.g. on the RK3399 we have the following memory areas (and base addresses):
+RAM (0x1000), SRAM (0xFF8C0000), and PMUSRAM (0xFF3B0000).
+
+Consumers of the TF-A project (e.g. coreboot or U-Boot) therefore
+use the ELF image instead, which has a size of a few hundred kBs.
+
+In order to prevent the generation of a huge and useless file,
+this patch disables the binary generation for all affected Rockchip
+SoCs.
+
+Signed-off-by: Christoph Müllner <christophm30@gmail.com>
+Change-Id: I4ac65bdf1e598c3e1a59507897d183aee9a36916
+---
+ plat/rockchip/rk3328/platform.mk | 2 ++
+ plat/rockchip/rk3368/platform.mk | 2 ++
+ plat/rockchip/rk3399/platform.mk | 2 ++
+ 3 files changed, 6 insertions(+)
+
+diff --git a/plat/rockchip/rk3328/platform.mk b/plat/rockchip/rk3328/platform.mk
+index 18b1b9419..01c5af6a2 100644
+--- a/plat/rockchip/rk3328/platform.mk
++++ b/plat/rockchip/rk3328/platform.mk
+@@ -8,6 +8,8 @@ RK_PLAT			:=	plat/rockchip
+ RK_PLAT_SOC		:=	${RK_PLAT}/${PLAT}
+ RK_PLAT_COMMON		:=	${RK_PLAT}/common
+ 
++DISABLE_BIN_GENERATION	:=	1
++
+ include lib/libfdt/libfdt.mk
+ 
+ PLAT_INCLUDES		:=	-Idrivers/arm/gic/common/			\
+diff --git a/plat/rockchip/rk3368/platform.mk b/plat/rockchip/rk3368/platform.mk
+index d1315fc58..4ec36ce06 100644
+--- a/plat/rockchip/rk3368/platform.mk
++++ b/plat/rockchip/rk3368/platform.mk
+@@ -8,6 +8,8 @@ RK_PLAT			:=	plat/rockchip
+ RK_PLAT_SOC		:=	${RK_PLAT}/${PLAT}
+ RK_PLAT_COMMON		:=	${RK_PLAT}/common
+ 
++DISABLE_BIN_GENERATION	:=	1
++
+ include lib/libfdt/libfdt.mk
+ 
+ PLAT_INCLUDES		:=	-I${RK_PLAT_COMMON}/				\
+diff --git a/plat/rockchip/rk3399/platform.mk b/plat/rockchip/rk3399/platform.mk
+index 101359856..25c498da8 100644
+--- a/plat/rockchip/rk3399/platform.mk
++++ b/plat/rockchip/rk3399/platform.mk
+@@ -8,6 +8,8 @@ RK_PLAT		:=	plat/rockchip
+ RK_PLAT_SOC	:=	${RK_PLAT}/${PLAT}
+ RK_PLAT_COMMON	:=	${RK_PLAT}/common
+ 
++DISABLE_BIN_GENERATION	:=	1
++
+ include lib/libfdt/libfdt.mk
+ 
+ PLAT_INCLUDES		:=	-I${RK_PLAT_COMMON}/			\
+-- 
+2.20.1
+
diff --git a/gnu/packages/patches/dav1d-aarch64-symbol-alignment.patch b/gnu/packages/patches/dav1d-aarch64-symbol-alignment.patch
new file mode 100644
index 0000000000..a47adf9b05
--- /dev/null
+++ b/gnu/packages/patches/dav1d-aarch64-symbol-alignment.patch
@@ -0,0 +1,25 @@
+Ensure local debug symbols are aligned on AArch64.
+
+Taken from upstream:
+https://code.videolan.org/videolan/dav1d/commit/a6228f47f0eebcdfebb1753a786e3e1654b51ea4
+
+diff --git a/src/arm/64/ipred.S b/src/arm/64/ipred.S
+index 41b3c1c..9513212 100644
+--- a/src/arm/64/ipred.S
++++ b/src/arm/64/ipred.S
+@@ -2244,6 +2244,7 @@ L(ipred_cfl_ac_420_tbl):
+         .hword L(ipred_cfl_ac_420_tbl) - L(ipred_cfl_ac_420_w16)
+         .hword L(ipred_cfl_ac_420_tbl) - L(ipred_cfl_ac_420_w8)
+         .hword L(ipred_cfl_ac_420_tbl) - L(ipred_cfl_ac_420_w4)
++        .hword 0
+ 
+ L(ipred_cfl_ac_420_w16_tbl):
+         .hword L(ipred_cfl_ac_420_w16_tbl) - L(ipred_cfl_ac_420_w16_wpad0)
+@@ -2432,6 +2433,7 @@ L(ipred_cfl_ac_422_tbl):
+         .hword L(ipred_cfl_ac_422_tbl) - L(ipred_cfl_ac_422_w16)
+         .hword L(ipred_cfl_ac_422_tbl) - L(ipred_cfl_ac_422_w8)
+         .hword L(ipred_cfl_ac_422_tbl) - L(ipred_cfl_ac_422_w4)
++        .hword 0
+ 
+ L(ipred_cfl_ac_422_w16_tbl):
+         .hword L(ipred_cfl_ac_422_w16_tbl) - L(ipred_cfl_ac_422_w16_wpad0)
diff --git a/gnu/packages/patches/kodi-increase-test-timeout.patch b/gnu/packages/patches/kodi-increase-test-timeout.patch
new file mode 100644
index 0000000000..8fb149ff9d
--- /dev/null
+++ b/gnu/packages/patches/kodi-increase-test-timeout.patch
@@ -0,0 +1,18 @@
+Increase thread timeout to reduce flakiness.
+
+Taken from upstream:
+https://github.com/xbmc/xbmc/commit/574b0182d8b641fd24029f372ebdcccc897123e2
+
+diff --git a/xbmc/threads/test/TestEvent.cpp b/xbmc/threads/test/TestEvent.cpp
+index 42fb8c2fc609..40e644c0ed3c 100644
+--- a/xbmc/threads/test/TestEvent.cpp
++++ b/xbmc/threads/test/TestEvent.cpp
+@@ -484,7 +484,7 @@ TEST(TestEvent, GroupTimedWait)
+   EXPECT_TRUE(w3.result == NULL);
+ 
+   // this should end given the wait is for only 50 millis
+-  EXPECT_TRUE(waitThread3.timed_join(MILLIS(100)));
++  EXPECT_TRUE(waitThread3.timed_join(MILLIS(200)));
+ 
+   EXPECT_TRUE(!w3.waiting);
+   EXPECT_TRUE(w3.result == NULL);
diff --git a/gnu/packages/patches/libmpeg2-arm-private-symbols.patch b/gnu/packages/patches/libmpeg2-arm-private-symbols.patch
new file mode 100644
index 0000000000..7f88d65e21
--- /dev/null
+++ b/gnu/packages/patches/libmpeg2-arm-private-symbols.patch
@@ -0,0 +1,48 @@
+Set visibility of global symbols used in ARM specific assembly file to
+internal.
+
+Taken from Debian:
+https://salsa.debian.org/multimedia-team/mpeg2dec/blob/master/debian/patches/60_arm-private-symbols.patch
+
+--- mpeg2dec.orig/libmpeg2/motion_comp_arm_s.S
++++ mpeg2dec/libmpeg2/motion_comp_arm_s.S
+@@ -23,7 +23,8 @@
+ 
+ @ ----------------------------------------------------------------
+ 	.align
+-	.global MC_put_o_16_arm
++	.global   MC_put_o_16_arm
++	.internal MC_put_o_16_arm
+ MC_put_o_16_arm:
+ 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
+ 	pld [r1]
+@@ -83,7 +84,8 @@ MC_put_o_16_arm_align_jt:
+ 
+ @ ----------------------------------------------------------------
+ 	.align
+-	.global MC_put_o_8_arm
++	.global   MC_put_o_8_arm
++	.internal MC_put_o_8_arm
+ MC_put_o_8_arm:
+ 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
+ 	pld [r1]
+@@ -152,7 +154,8 @@ MC_put_o_8_arm_align_jt:
+ .endm
+ 
+ 	.align
+-	.global MC_put_x_16_arm
++	.global   MC_put_x_16_arm
++	.internal MC_put_x_16_arm
+ MC_put_x_16_arm:
+ 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
+ 	pld [r1]
+@@ -244,7 +247,8 @@ MC_put_x_16_arm_align_jt:
+ 
+ @ ----------------------------------------------------------------
+ 	.align
+-	.global MC_put_x_8_arm
++	.global   MC_put_x_8_arm
++	.internal MC_put_x_8_arm
+ MC_put_x_8_arm:
+ 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
+ 	pld [r1]
diff --git a/gnu/packages/patches/libmpeg2-global-symbol-test.patch b/gnu/packages/patches/libmpeg2-global-symbol-test.patch
new file mode 100644
index 0000000000..f6eb3c6bd7
--- /dev/null
+++ b/gnu/packages/patches/libmpeg2-global-symbol-test.patch
@@ -0,0 +1,63 @@
+Rewrite the public symbol check to verify the shared libraries, to check for
+more things, and to avoid duplication; fixes make check on ARM
+
+Taken from Debian:
+https://salsa.debian.org/multimedia-team/mpeg2dec/blob/master/debian/patches/61_global-symbol-test.patch
+
+--- mpeg2dec.orig/test/globals
++++ mpeg2dec/test/globals
+@@ -1,4 +1,8 @@
+ #!/bin/sh
++# TODO
++# - fix checking of .a libs; problem is that "nm -g --defined-only" lists
++#   internal symbols; this can be solved by using objdump, but it's probably
++#   good enough to just run the tests on the shared lib
+ 
+ if test x"$srcdir" != x""; then
+     builddir="."	# running from make check, but it does not define that
+@@ -14,22 +18,30 @@ builddir=`cd $builddir;pwd`
+ 
+ error=0
+ 
+-bad_globals=`nm -g --defined-only $builddir/../libmpeg2/*.o |\
+-    awk '{if ($3) print $3}' | grep -v '^_\?mpeg2_'`
+-
+-if test x"$bad_globals" != x""; then
+-    echo BAD GLOBAL SYMBOLS:
+-    for s in $bad_globals; do echo $s; done
++# check_bad_public_symbols <symbol prefix> <lib file> [<lib file>...]
++#
++# checks public symbols in shared libs:
++# - allow prefix_anything
++# - reject _prefixanything
++# - allow _anything
++# - reject anything else
++#
++# NB: skips missing files
++check_bad_public_symbols() {
++    symbols_prefix="$1"
++    shift
++    lib_files=`ls "$@" 2>/dev/null`
++    [ -z "$lib_files" ] && return
++    bad_globals=`nm -g --defined-only $lib_files |
++        awk '{if ($3) print $3}' |
++        sed -n "/^${symbols_prefix}_/ d; /^_${symbols_prefix}/ { p; d }; /^_/ d; p"`
++    [ -z "$bad_globals" ] && return
+     error=1
+-fi
+-
+-bad_globals=`nm -g --defined-only $builddir/../libmpeg2/convert/*.o |\
+-    awk '{if ($3) print $3}' | grep -v '^_\?mpeg2convert_'`
++    echo BAD GLOBAL SYMBOLS in $lib_files:
++    echo "$bad_globals"
++}
+ 
+-if test x"$bad_globals" != x""; then
+-    echo BAD GLOBAL SYMBOLS:
+-    for s in $bad_globals; do echo $s; done
+-    error=1
+-fi
++check_bad_public_symbols mpeg2 $builddir/../libmpeg2/.libs/libmpeg2.so
++check_bad_public_symbols mpeg2convert $builddir/../libmpeg2/convert/.libs/libmpeg2convert.so
+ 
+ exit $error
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index b13caf37fe..5f99f8b752 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -200,10 +200,7 @@ When present, Poppler is able to correctly render CJK and Cyrillic text.")
              (substitute* "setup.py"
                ;; This check always fails, so disable it.
                (("if not check_qtxml\\(\\)")
-                "if True")
-               ;; Enable C++11, which is needed because of Qt5.
-               (("\\*\\*ext_args" line)
-                (string-append "extra_compile_args=['-std=gnu++11'], " line)))
+                "if True"))
              ;; We need to pass an extra flag here.  This cannot be in
              ;; configure-flags because it should not be passed for the
              ;; installation phase.
diff --git a/gnu/packages/protobuf.scm b/gnu/packages/protobuf.scm
index b30461e153..e9aaeb23c2 100644
--- a/gnu/packages/protobuf.scm
+++ b/gnu/packages/protobuf.scm
@@ -75,7 +75,7 @@ data in motion, or as a file format for data at rest.")
 (define-public protobuf
   (package
     (name "protobuf")
-    (version "3.5.1")
+    (version "3.10.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/google/protobuf/releases/"
@@ -83,7 +83,7 @@ data in motion, or as a file format for data at rest.")
                                   version ".tar.gz"))
               (sha256
                (base32
-                "14j0427ykjzrd9a66c2mpk0sjcccjlsx6q8ww6hzwb6sha3vm3f2"))))
+                "06xnqpsa79jrk3k55fsycnp7jac546299v7gdyx9yf4c5q81xfgz"))))
     (build-system gnu-build-system)
     (inputs `(("zlib" ,zlib)))
     (outputs (list "out"
@@ -112,9 +112,9 @@ yet extensible format.  Google uses Protocol Buffers for almost all of its
 internal RPC protocols and file formats.")
     (license license:bsd-3)))
 
-(define-public protobuf-next
-  (package (inherit protobuf)
-    (name "protobuf")
+;; Tensorflow requires version 3.6 specifically.
+(define-public protobuf-3.6
+  (package/inherit protobuf
     (version "3.6.1")
     (source (origin
               (method url-fetch)
@@ -125,6 +125,20 @@ internal RPC protocols and file formats.")
                (base32
                 "0a955bz59ihrb5wg7dwi12xajdi5pmz4bl0g147rbdwv393jwwxk"))))))
 
+;; The 3.5 series are the last versions that do not require C++ 11.
+(define-public protobuf-3.5
+  (package/inherit
+   protobuf
+   (version "3.5.1")
+   (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/google/protobuf/releases/"
+                                  "download/v" version "/protobuf-cpp-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "14j0427ykjzrd9a66c2mpk0sjcccjlsx6q8ww6hzwb6sha3vm3f2"))))))
+
 ;; XXX Remove this old version when no other packages depend on it.
 (define-public protobuf-2
   (package (inherit protobuf)
@@ -141,7 +155,7 @@ internal RPC protocols and file formats.")
 (define-public protobuf-c
   (package
     (name "protobuf-c")
-    (version "1.3.1")
+    (version "1.3.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/protobuf-c/protobuf-c/"
@@ -149,7 +163,7 @@ internal RPC protocols and file formats.")
                                   "/protobuf-c-" version ".tar.gz"))
               (sha256
                (base32
-                "0rr2kn7804cvhdm6lzz04gz76vy0fzj15dijbr17nv8x34x2sisi"))))
+                "0x4ybd9rfd878p2imz0hb8zxfd7l60vbdw7cg84dnysr9kqm3wjk"))))
     (build-system gnu-build-system)
     (inputs `(("protobuf" ,protobuf)))
     (native-inputs `(("pkg-config" ,pkg-config)))
@@ -189,14 +203,14 @@ encoder in C++.  The developer using protozero has to manually translate the
 (define-public python-protobuf
   (package
     (name "python-protobuf")
-    (version "3.5.2")
+    (version "3.10.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "protobuf" version))
        (sha256
         (base32
-         "1q4b1m55w4gvcbzklbk8iylaii98n4in41k27d94w8ypbwlrm1q9"))))
+         "1zjq3qi0wgqi0fwxgqlgwvj9ri1m4kmnz3jnpd803lqc5k0vb0yv"))))
     (build-system python-build-system)
     (propagated-inputs
      `(("python-six" ,python-six)))
@@ -210,10 +224,11 @@ mechanism for serializing structured data.")
 (define-public python2-protobuf
   (package-with-python2 python-protobuf))
 
-(define-public python-protobuf-next
-  (package (inherit python-protobuf)
+;; For tensorflow.
+(define-public python-protobuf-3.6
+  (package/inherit python-protobuf
     (name "python-protobuf")
-    (version (package-version protobuf-next) )
+    (version (package-version protobuf-3.6) )
     (source
      (origin
        (method url-fetch)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index cd7cea244c..cc64070ed0 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -38,7 +38,7 @@
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
 ;;; Copyright © 2017, 2018 Adriano Peluso <catonano@gmail.com>
 ;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
-;;; Copyright © 2017, 2018 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017, 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.org>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
@@ -910,10 +910,18 @@ some helpful Python 2 compatibility convenience methods.")
         (base32
          "09z4d1jiasn7k1hs5af2ckmnrd0i1d1m04bhfjhv7z6svzfdwgg3"))))
     (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             ;; Do not run pylint plugin test, as astroid is an old
+             ;; unsupported version.
+             (invoke "pytest" "-v" "-k" "not test_pylint_plugin"
+                     "verboselogs/tests.py"))))))
     (native-inputs
      `(("python-mock" ,python-mock)
-       ("python-astroid" ,python-astroid)
-       ("python-pylint" ,python-pylint)))
+       ("python-pytest" ,python-pytest)))
     (home-page "https://verboselogs.readthedocs.io")
     (synopsis "Verbose logging level for Python's logging module")
     (description
@@ -5111,6 +5119,18 @@ child application and control it as if a human were typing commands.")
 them as the version argument or in a SCM managed file.")
     (license license:expat)))
 
+;; Needed by python-lazy-object-proxy, remove on next update cycle.
+(define-public python-setuptools-scm-3.3
+  (package
+    (inherit python-setuptools-scm)
+    (version "3.3.3")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "setuptools_scm" version))
+              (sha256
+               (base32
+                "19cyndx23xmpbhz4qrwmfwsmnnaczd0dw7qg977ksq2dbvxy29dx"))))))
+
 (define-public python2-setuptools-scm
   (package-with-python2 python-setuptools-scm))
 
@@ -10616,13 +10636,15 @@ docstring and colored output.")
 (define-public python-lazy-object-proxy
   (package
     (name "python-lazy-object-proxy")
-    (version "1.3.1")
+    (version "1.4.2")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "lazy-object-proxy" version))
               (sha256
                (base32
-                "0yha7q9bhw857fwaby785d63mffhngl9npwzlk9i0pwlkwvbx4gb"))))
+                "1wgl0fmddi0ind78a74yyk2qrr9pb5llvj1892cdpp6z6n6mn4zx"))))
+    (native-inputs
+     `(("python-setuptools-scm" ,python-setuptools-scm-3.3)))
     (build-system python-build-system)
     (home-page "https://github.com/ionelmc/python-lazy-object-proxy")
     (synopsis "Lazy object proxy for python")
@@ -12524,18 +12546,19 @@ clone, while other processes access the original tree.")
 (define-public python-astroid
   (package
     (name "python-astroid")
-    (version "2.1.0")
+    (version "2.3.2")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "astroid" version))
        (sha256
         (base32
-         "08hz675knh4294bancdapql392fmbjyimhbyrmfkz1ka7l035c1m"))))
+         "0crfhpblcy5a6nh694hc2073gw389f01yilamzqi34si2skgp8q9"))))
     (build-system python-build-system)
     (propagated-inputs
      `(("python-lazy-object-proxy" ,python-lazy-object-proxy)
        ("python-six" ,python-six)
+       ("python-typed-ast" ,python-typed-ast)
        ("python-wrapt" ,python-wrapt)))
     (native-inputs
      `(("python-dateutil" ,python-dateutil)
@@ -12602,7 +12625,8 @@ builds partial trees by inspecting living objects.")
          ,python2-backports-functools-lru-cache)
         ("python2-enum34" ,python2-enum34)
         ("python2-singledispatch" ,python2-singledispatch)
-        ,@(package-propagated-inputs base))))))
+        ,@(alist-delete "python-typed-ast"
+                        (package-propagated-inputs base)))))))
 
 (define-public python-isort
   (package
@@ -14721,14 +14745,16 @@ source bytes using the UTF-8 encoding and then rewrites Python 3.6 style
 (define-public python-typed-ast
   (package
     (name "python-typed-ast")
-    (version "1.3.5")
+    (version "1.4.0")
     (source
      (origin
-       (method url-fetch)
-       (uri (pypi-uri "typed-ast" version))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/python/typed_ast.git")
+             (commit version)))
        (sha256
-        (base32
-         "1m7pr6qpana3cvqwiw7mlvrgvmw27ch5mx1592572xhlki8g85ak"))))
+        (base32 "0l0hz809f7i356kmqkvfsaswiidb98j9hs9rrjnfawzqcbffzgyb"))
+       (file-name (git-file-name name version))))
     (build-system python-build-system)
     (arguments
      `(#:modules ((guix build utils)
diff --git a/gnu/packages/robotics.scm b/gnu/packages/robotics.scm
index 389bb5a028..fbf10be366 100644
--- a/gnu/packages/robotics.scm
+++ b/gnu/packages/robotics.scm
@@ -106,7 +106,7 @@ hundred times faster than real-time.")
       (inputs
        `(("dashel" ,dashel)
          ("enki" ,enki)
-         ("protobuf" ,protobuf)                   ;for logging
+         ("protobuf" ,protobuf-3.5)               ;for logging
          ("qtbase" ,qtbase)
          ("qtsvg" ,qtsvg)
          ("qttools" ,qttools)              ;for libQt5Help, needed by "studio"
diff --git a/gnu/packages/sagemath.scm b/gnu/packages/sagemath.scm
index 43da5c636a..7615b37759 100644
--- a/gnu/packages/sagemath.scm
+++ b/gnu/packages/sagemath.scm
@@ -404,11 +404,7 @@ used as internal storage type for polynomial structures.")
                   (string-append "INSTALL_DIR=" out))
                  ;; Sage renames the include directory, so we do it also.
                  (("include/Lfunction")
-                  "include/libLfunction")
-                 ;; Add --std=c++11 to be compatible with the "auto" keyword
-                 ;; introduced by lcalc-using-namespace-std.patch.
-                 (("^#EXTRA= -pg")
-                  "EXTRA=--std=c++11")))
+                  "include/libLfunction")))
              #t))
          (add-before 'install 'make-output-dirs
            (lambda* (#:key outputs #:allow-other-keys)
diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm
index d786ad08d9..ca8a928e60 100644
--- a/gnu/packages/search.scm
+++ b/gnu/packages/search.scm
@@ -49,14 +49,14 @@
 (define-public xapian
   (package
     (name "xapian")
-    (version "1.4.12")
+    (version "1.4.13")
     ;; 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 "0z5c1y9vp519h2x2igjq39v6j615nppry0wasd0xn4hphgd3d2jg"))))
+               (base32 "0z0k8902bz2ckdggikj5yz11ik2n8krmdwzvpqv60phcm3zzzy4k"))))
     (build-system gnu-build-system)
     (inputs `(("zlib" ,zlib)
               ("util-linux" ,util-linux)))
@@ -94,7 +94,7 @@ rich set of boolean query operators.")
                                   "/xapian-bindings-" version ".tar.xz"))
               (sha256
                (base32
-                "0j9awiiw9zf97r60m848absq43k37gghpyw7acxqjazfzd71fxvm"))))
+                "14jqm8mi55z4jxyi9qnnxdljli81zknsp2ja2yjx17hm28kmsnks"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags '("--with-python3")
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 3c69901a0a..4b1ba98e2f 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -523,17 +523,17 @@ for reading and writing some dBase files.")
 (define-public r-kernsmooth
   (package
     (name "r-kernsmooth")
-    (version "2.23-15")
+    (version "2.23-16")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "KernSmooth" version))
        (sha256
         (base32
-         "1xhha8kw10jv8pv8b61hb5in9qiw3r2a9kdji3qlm991s4zd4wlb"))))
+         "1acrkbdn3a74y4dndkcdl1njnpfqz7gk3bsz03g8lfj8l7z53hmq"))))
     (properties `((upstream-name . "KernSmooth")))
     (build-system r-build-system)
-    (inputs
+    (native-inputs
      `(("gfortran" ,gfortran)))
     (home-page "https://cran.r-project.org/web/packages/KernSmooth")
     (synopsis "Functions for kernel smoothing")
@@ -1200,14 +1200,14 @@ agnes cluster diagrams.")
 (define-public r-gdtools
   (package
     (name "r-gdtools")
-    (version "0.2.0")
+    (version "0.2.1")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "gdtools" version))
        (sha256
         (base32
-         "1mvpkp8cj30fwd4bwlz96x3cff7yzfbfz7iswmf77zl0a6122inh"))))
+         "1aax50wyrs4336zpf247l8wmp4spab2n70msziy1ip4gbjn26wa1"))))
     (build-system r-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -2610,13 +2610,13 @@ well as additional utilities such as panel and axis annotation functions.")
 (define-public r-rcpparmadillo
   (package
     (name "r-rcpparmadillo")
-    (version "0.9.700.2.0")
+    (version "0.9.800.1.0")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "RcppArmadillo" version))
               (sha256
                (base32
-                "0g25w32dnqrvhnri8x4yxqawxd8qhn7w3m8d29nxxy0gybx3y8x9"))))
+                "1frg7y3fb571jf9dp1kkc75x0nxvw8j3qccsrm1brg5l1z2jmlaz"))))
     (properties `((upstream-name . "RcppArmadillo")))
     (build-system r-build-system)
     ;; All needed for vignettes
@@ -3605,13 +3605,13 @@ persistent (on the file system).")
 (define-public r-r-rsp
   (package
     (name "r-r-rsp")
-    (version "0.43.1")
+    (version "0.43.2")
     (source (origin
               (method url-fetch)
               (uri (cran-uri "R.rsp" version))
               (sha256
                (base32
-                "0i01p8jxc4j4zl2v2ykvvpfnm5hv650zj1wi1dh8hq0c98xi2yfr"))))
+                "128zqyvbq9hm9gy86jzhj609lkfw57vr24mdxgh46ncmx66ag4gj"))))
     (properties `((upstream-name . "R.rsp")))
     (build-system r-build-system)
     (propagated-inputs
@@ -3818,14 +3818,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.2")
+    (version "0.3.3")
     (source
      (origin
        (method url-fetch)
        (uri (cran-uri "purrr" version))
        (sha256
         (base32
-         "0ccs78a2ylr60f3z0f7iywi8h1pwr8mz4ga78bs4pwgnwkclvir7"))))
+         "17lyys7dxjrwsfkq7a7hw65iy3qn3pp1sn70srdy64jf8adahc8g"))))
     (build-system r-build-system)
     (propagated-inputs
      `(("r-magrittr" ,r-magrittr)
diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index 5d6f0ffed6..81e710a536 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -464,7 +464,7 @@ address of one of the participants.")
                          (find-files "release/plugins" "\\.so$"))))))))
     (inputs
      `(("avahi" ,avahi)
-       ("protobuf" ,protobuf)
+       ("protobuf" ,protobuf-3.5)
        ("openssl" ,openssl)
        ("libsndfile" ,libsndfile)
        ("boost" ,boost)
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index e30a4cbcb6..8f2c0eda78 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -315,6 +315,8 @@ a shared library and encoder and decoder command-line executables.")
               ;; because the SourceForge project is misconfigured.
               (uri (string-append "http://libmpeg2.sourceforge.net/files/"
                                   name "-" version ".tar.gz"))
+              (patches (search-patches "libmpeg2-arm-private-symbols.patch"
+                                       "libmpeg2-global-symbol-test.patch"))
               (sha256
                (base32
                 "1m3i322n2fwgrvbs1yck7g5md1dbg22bhq5xdqmjpz5m7j4jxqny"))))
@@ -1178,8 +1180,7 @@ videoformats depend on the configuration flags of ffmpeg.")
        ("xcb-util-keysyms" ,xcb-util-keysyms)))
     (arguments
      `(#:configure-flags
-       `("CXXFLAGS=-std=gnu++11"
-         "BUILDCC=gcc"
+       `("BUILDCC=gcc"
          ,(string-append "LDFLAGS=-Wl,-rpath -Wl,"
                          (assoc-ref %build-inputs "ffmpeg")
                          "/lib"))                 ;needed for the tests
@@ -2217,7 +2218,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f                      ; no tests
-       #:make-flags '("CC=gcc" "CXX=g++ -std=gnu++11")
+       #:make-flags '("CC=gcc" "CXX=g++")
        #:configure-flags
        (list "--enable-gpl3"
              "--enable-gpl")
@@ -2276,8 +2277,7 @@ tools, XML authoring components, and an extensible plug-in based API.")
      '(#:configure-flags
        (list (string-append "--with-udevdir="
                             (assoc-ref %outputs "out")
-                            "/lib/udev")
-             "CXXFLAGS=-std=gnu++11")))
+                            "/lib/udev"))))
     (native-inputs
      `(("perl" ,perl)
        ("pkg-config" ,pkg-config)))
@@ -3545,20 +3545,16 @@ transitions, and effects and then export your film to many common formats.")
 (define-public dav1d
   (package
     (name "dav1d")
-    (version "0.4.0")
+    (version "0.5.0")
     (source
       (origin
         (method url-fetch)
-        (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")))
+        (uri (string-append "https://downloads.videolan.org/pub/videolan"
+                            "/dav1d/" version "/dav1d-" version ".tar.xz"))
+        (patches (search-patches "dav1d-aarch64-symbol-alignment.patch"))
         (sha256
          (base32
-          "08yqml01lbcpflrshdpvn88jv3xd8gm559qikiwyrh41a3kb4lr5"))))
+          "1586k439fm8db9lsxxywm34iqibj5mw4xrppr4g2wqr0hjlhcbxn"))))
     (build-system meson-build-system)
     (native-inputs `(("nasm" ,nasm)))
     (home-page "https://code.videolan.org/videolan/dav1d")
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 3101f307cd..612074473b 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -4028,8 +4028,8 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
   (package-with-python2 python-feedparser))
 
 (define-public guix-data-service
-  (let ((commit "8019d2e6878908f40cb6b047f60d2e4fd3c6712e")
-        (revision "3"))
+  (let ((commit "5e2bc7c6e920e1542ab8fde39dbddca443a7cbc8")
+        (revision "4"))
     (package
       (name "guix-data-service")
       (version (string-append "0.0.1-" revision "." (string-take commit 7)))
@@ -4041,7 +4041,7 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
                 (file-name (git-file-name name version))
                 (sha256
                  (base32
-                  "06xv43az1aklrdb5y0if17xdqc80qnfdlyjiww8zmv4m3qnvj607"))))
+                  "0awfvps7k9bpg3gpgc93y401g7pjabx7mr9960vigad8vddhixqi"))))
       (build-system gnu-build-system)
       (arguments
        '(#:tests? #f                    ; TODO Tests require PostgreSQL
diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index 59f30116a3..d0216423e8 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -971,14 +971,14 @@ XSL-T processor.  It also performs any necessary post-processing.")
 (define-public xmlsec
   (package
     (name "xmlsec")
-    (version "1.2.28")
+    (version "1.2.29")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://www.aleksey.com/xmlsec/download/"
                                   "xmlsec1-" version ".tar.gz"))
               (sha256
                (base32
-                "1m12caglhyx08g8lh2sl3nkldlpryzdx2d572q73y3m33s0w9vhk"))))
+                "1arr50fvma01q2ix7g4k2c7lb8qcqjajn7wdc07r66b0jsxdxldi"))))
     (build-system gnu-build-system)
     (propagated-inputs                  ; according to xmlsec1.pc
      `(("libxml2" ,libxml2)
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index a32756e040..5a7f8be4bb 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
+;;; Copyright © 2019 David Wilson <david@daviwil.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -907,15 +908,21 @@ and extends polkit with the actions from @code{mate-settings-daemon}."
   xfce-desktop-configuration
   (xfce xfce-package (default xfce)))
 
+(define (xfce-polkit-settings config)
+  "Return the list of XFCE dependencies that provide polkit actions and
+rules."
+  (let ((xfce (xfce-package config)))
+    (map (lambda (name)
+           ((package-direct-input-selector name) xfce))
+         '("thunar"
+           "xfce4-power-manager"))))
+
 (define xfce-desktop-service-type
   (service-type
    (name 'xfce-desktop)
    (extensions
     (list (service-extension polkit-service-type
-                             (compose list
-                                      (package-direct-input-selector
-                                       "thunar")
-                                      xfce-package))
+                             xfce-polkit-settings)
           (service-extension profile-service-type
                              (compose list xfce-package))))
    (default-value (xfce-desktop-configuration))
diff --git a/gnu/services/herd.scm b/gnu/services/herd.scm
index 2207b2d34b..112a7dc104 100644
--- a/gnu/services/herd.scm
+++ b/gnu/services/herd.scm
@@ -25,6 +25,7 @@
   #:use-module (srfi srfi-35)
   #:use-module (ice-9 match)
   #:export (%shepherd-socket-file
+            shepherd-message-port
 
             shepherd-error?
             service-not-found-error?
@@ -140,8 +141,12 @@ does not denote an error."
     (#f                                           ;not an error
      #t)))
 
+(define shepherd-message-port
+  ;; Port where messages coming from shepherd are printed.
+  (make-parameter (current-error-port)))
+
 (define (display-message message)
-  (format (current-error-port) "shepherd: ~a~%" message))
+  (format (shepherd-message-port) "shepherd: ~a~%" message))
 
 (define* (invoke-action service action arguments cont)
   "Invoke ACTION on SERVICE with ARGUMENTS.  On success, call CONT with the
diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm
index dd63009116..93d9b6a15e 100644
--- a/gnu/services/networking.scm
+++ b/gnu/services/networking.scm
@@ -51,6 +51,7 @@
   #:use-module (guix gexp)
   #:use-module (guix records)
   #:use-module (guix modules)
+  #:use-module (guix packages)
   #:use-module (guix deprecation)
   #:use-module (rnrs enums)
   #:use-module (srfi srfi-1)
@@ -110,6 +111,7 @@
             network-manager-configuration
             network-manager-configuration?
             network-manager-configuration-dns
+            network-manager-configuration-vpn-plugins
             network-manager-service-type
 
             connman-configuration
@@ -986,7 +988,7 @@ and @command{wicd-curses} user interfaces."
                    (default network-manager))
   (dns network-manager-configuration-dns
        (default "default"))
-  (vpn-plugins network-manager-vpn-plugins        ;list of <package>
+  (vpn-plugins network-manager-configuration-vpn-plugins ;list of <package>
                (default '())))
 
 (define network-manager-activation
@@ -1005,6 +1007,33 @@ and @command{wicd-curses} user interfaces."
   "Return a directory containing PLUGINS, the NM VPN plugins."
   (directory-union "network-manager-vpn-plugins" plugins))
 
+(define (network-manager-accounts config)
+  "Return the list of <user-account> and <user-group> for CONFIG."
+  (define nologin
+    (file-append shadow "/sbin/nologin"))
+
+  (define accounts
+    (append-map (lambda (package)
+                  (map (lambda (name)
+                         (user-account (system? #t)
+                                       (name name)
+                                       (group "network-manager")
+                                       (comment "NetworkManager helper")
+                                       (home-directory "/var/empty")
+                                       (create-home-directory? #f)
+                                       (shell nologin)))
+                       (or (assoc-ref (package-properties package)
+                                      'user-accounts)
+                           '())))
+                (network-manager-configuration-vpn-plugins config)))
+
+  (match accounts
+    (()
+     '())
+    (_
+     (cons (user-group (name "network-manager") (system? #t))
+           accounts))))
+
 (define network-manager-environment
   (match-lambda
     (($ <network-manager-configuration> network-manager dns vpn-plugins)
@@ -1054,6 +1083,8 @@ and @command{wicd-curses} user interfaces."
                                (compose
                                 list
                                 network-manager-configuration-network-manager))
+            (service-extension account-service-type
+                               network-manager-accounts)
             (service-extension activation-service-type
                                network-manager-activation)
             (service-extension session-environment-service-type
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index 912096027f..bdf114c180 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -60,8 +60,11 @@
             mx6cuboxi-installation-os
             nintendo-nes-classic-edition-installation-os
             novena-installation-os
+            firefly-rk3399-installation-os
             pine64-plus-installation-os
             pinebook-installation-os
+            rock64-installation-os
+            rockpro64-installation-os
             rk3399-puma-installation-os
             wandboard-installation-os
             os-with-u-boot))
@@ -558,6 +561,11 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET."
                             "/dev/mmcblk1" ; eMMC storage
                             "ttyS0"))
 
+(define firefly-rk3399-installation-os
+  (embedded-installation-os u-boot-firefly-rk3399-bootloader
+                            "/dev/mmcblk0" ; SD card/eMMC (SD priority) storage
+                            "ttyS2")) ; UART2 connected on the Pi2 bus
+
 (define mx6cuboxi-installation-os
   (embedded-installation-os u-boot-mx6cuboxi-bootloader
                             "/dev/mmcblk0" ; SD card storage
@@ -583,6 +591,16 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET."
                             "/dev/mmcblk0" ; SD card storage
                             "ttyS0"))
 
+(define rock64-installation-os
+  (embedded-installation-os u-boot-rock64-rk3328-bootloader
+                            "/dev/mmcblk0" ; SD card/eMMC (SD priority) storage
+                            "ttyS2")) ; UART2 connected on the Pi2 bus
+
+(define rockpro64-installation-os
+  (embedded-installation-os u-boot-rockpro64-rk3399-bootloader
+                            "/dev/mmcblk0" ; SD card/eMMC (SD priority) storage
+                            "ttyS2")) ; UART2 connected on the Pi2 bus
+
 (define rk3399-puma-installation-os
   (embedded-installation-os u-boot-puma-rk3399-bootloader
                             "/dev/mmcblk0" ; SD card storage
diff --git a/guix/packages.scm b/guix/packages.scm
index f2c94c7bc2..c98fb98aec 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -241,9 +241,9 @@ name of its URI."
 (define %hydra-supported-systems
   ;; This is the list of system types for which build machines are available.
   ;;
-  ;; XXX: MIPS is temporarily unavailable on Hydra:
+  ;; XXX: MIPS is unavailable in CI:
   ;; <https://lists.gnu.org/archive/html/guix-devel/2017-03/msg00790.html>.
-  (fold delete %supported-systems '("aarch64-linux" "mips64el-linux")))
+  (fold delete %supported-systems '("mips64el-linux")))
 
 
 ;; A package.
diff --git a/guix/scripts/system/reconfigure.scm b/guix/scripts/system/reconfigure.scm
index 579b7fffbe..2f9dbb2508 100644
--- a/guix/scripts/system/reconfigure.scm
+++ b/guix/scripts/system/reconfigure.scm
@@ -136,7 +136,10 @@ canonical names (symbols)."
                      (srfi srfi-1))
 
         ;; Load the service files for any new services.
-        (load-services/safe '#$service-files)
+        ;; Silence messages coming from shepherd such as "Evaluating
+        ;; expression ..." since they are unhelpful.
+        (parameterize ((shepherd-message-port (%make-void-port "w")))
+          (load-services/safe '#$service-files))
 
         ;; Unload obsolete services and start new services.
         (for-each unload-service '#$to-unload)
diff --git a/tests/cve.scm b/tests/cve.scm
index 3fbb22d3c6..e95b21c073 100644
--- a/tests/cve.scm
+++ b/tests/cve.scm
@@ -25,7 +25,7 @@
   (search-path %load-path "tests/cve-sample.xml"))
 
 (define (vulnerability id packages)
-  (make-struct (@@ (guix cve) <vulnerability>) 0 id packages))
+  (make-struct/no-tail (@@ (guix cve) <vulnerability>) id packages))
 
 (define %expected-vulnerabilities
   ;; What we should get when reading %SAMPLE.
diff --git a/tests/lint.scm b/tests/lint.scm
index 1b92f02b85..3a9b539a24 100644
--- a/tests/lint.scm
+++ b/tests/lint.scm
@@ -758,10 +758,10 @@
   "probably vulnerable to CVE-2015-1234"
   (mock ((guix lint) package-vulnerabilities
          (lambda (package)
-           (list (make-struct (@@ (guix cve) <vulnerability>) 0
-                              "CVE-2015-1234"
-                              (list (cons (package-name package)
-                                          (package-version package)))))))
+           (list (make-struct/no-tail (@@ (guix cve) <vulnerability>)
+                                      "CVE-2015-1234"
+                                      (list (cons (package-name package)
+                                                  (package-version package)))))))
         (single-lint-warning-message
          (check-vulnerabilities (dummy-package "pi" (version "3.14"))))))
 
@@ -769,10 +769,10 @@
   '()
   (mock ((guix lint) package-vulnerabilities
          (lambda (package)
-           (list (make-struct (@@ (guix cve) <vulnerability>) 0
-                              "CVE-2015-1234"
-                              (list (cons (package-name package)
-                                          (package-version package)))))))
+           (list (make-struct/no-tail (@@ (guix cve) <vulnerability>)
+                                      "CVE-2015-1234"
+                                      (list (cons (package-name package)
+                                                  (package-version package)))))))
         (check-vulnerabilities
          (dummy-package "pi"
                         (version "3.14")
@@ -785,10 +785,10 @@
   '()
   (mock ((guix lint) package-vulnerabilities
          (lambda (package)
-           (list (make-struct (@@ (guix cve) <vulnerability>) 0
-                              "CVE-2015-1234"
-                              (list (cons (package-name package)
-                                          (package-version package)))))))
+           (list (make-struct/no-tail (@@ (guix cve) <vulnerability>)
+                                      "CVE-2015-1234"
+                                      (list (cons (package-name package)
+                                                  (package-version package)))))))
         (check-vulnerabilities
          (dummy-package "pi"
                         (version "3.14")
@@ -800,10 +800,10 @@
          (lambda (package)
            (match (package-version package)
              ("0"
-              (list (make-struct (@@ (guix cve) <vulnerability>) 0
-                                 "CVE-2015-1234"
-                                 (list (cons (package-name package)
-                                             (package-version package))))))
+              (list (make-struct/no-tail (@@ (guix cve) <vulnerability>)
+                                         "CVE-2015-1234"
+                                         (list (cons (package-name package)
+                                                     (package-version package))))))
              ("1"
               '()))))
         (check-vulnerabilities
@@ -815,10 +815,10 @@
   '()
   (mock ((guix lint) package-vulnerabilities
          (lambda (package)
-           (list (make-struct (@@ (guix cve) <vulnerability>) 0
-                              "CVE-2015-1234"
-                              (list (cons (package-name package)
-                                          (package-version package)))))))
+           (list (make-struct/no-tail (@@ (guix cve) <vulnerability>)
+                                      "CVE-2015-1234"
+                                      (list (cons (package-name package)
+                                                  (package-version package)))))))
         (check-vulnerabilities
          (dummy-package
           "pi" (version "3.14") (source (dummy-origin))