summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2020-08-15 09:06:05 +0200
committerRicardo Wurmus <rekado@elephly.net>2020-08-15 09:06:05 +0200
commitbe672e2dc6357c00f179a37c1db71b48dfa4fa24 (patch)
tree73c2129a0b036f812d609e9ea5737ffdc7b5435c /gnu/packages
parente380ef14cfc0126bb75e43fc237b2fbc05a7c7d2 (diff)
parent1a275962302fa18e54da790e89e2c826e6b60b53 (diff)
downloadguix-be672e2dc6357c00f179a37c1db71b48dfa4fa24.tar.gz
Merge remote-tracking branch 'origin/master' into wip-haskell
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/admin.scm4
-rw-r--r--gnu/packages/bioinformatics.scm13
-rw-r--r--gnu/packages/cran.scm134
-rw-r--r--gnu/packages/emacs-xyz.scm140
-rw-r--r--gnu/packages/emulators.scm60
-rw-r--r--gnu/packages/finance.scm5
-rw-r--r--gnu/packages/games.scm9
-rw-r--r--gnu/packages/gnome.scm22
-rw-r--r--gnu/packages/gnuzilla.scm8
-rw-r--r--gnu/packages/graphics.scm58
-rw-r--r--gnu/packages/guile-xyz.scm28
-rw-r--r--gnu/packages/haskell-apps.scm4
-rw-r--r--gnu/packages/image-processing.scm4
-rw-r--r--gnu/packages/libusb.scm97
-rw-r--r--gnu/packages/linux.scm8
-rw-r--r--gnu/packages/lxqt.scm3
-rw-r--r--gnu/packages/machine-learning.scm10
-rw-r--r--gnu/packages/mail.scm4
-rw-r--r--gnu/packages/man.scm4
-rw-r--r--gnu/packages/music.scm5
-rw-r--r--gnu/packages/package-management.scm265
-rw-r--r--gnu/packages/password-utils.scm4
-rw-r--r--gnu/packages/patches/freedink-engine-fix-sdl-hints.patch33
-rw-r--r--gnu/packages/patches/opencv-fix-build-of-grfmt_jpeg2000.cpp.patch39
-rw-r--r--gnu/packages/php.scm4
-rw-r--r--gnu/packages/python-xyz.scm23
-rw-r--r--gnu/packages/shells.scm4
-rw-r--r--gnu/packages/storage.scm4
-rw-r--r--gnu/packages/sync.scm15
-rw-r--r--gnu/packages/text-editors.scm6
-rw-r--r--gnu/packages/textutils.scm32
-rw-r--r--gnu/packages/video.scm12
-rw-r--r--gnu/packages/web-browsers.scm4
-rw-r--r--gnu/packages/web.scm23
-rw-r--r--gnu/packages/wm.scm28
35 files changed, 822 insertions, 294 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index f0bd22aa19..e56ae24905 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1859,7 +1859,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
 (define-public acpica
   (package
     (name "acpica")
-    (version "20200528")
+    (version "20200717")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -1867,7 +1867,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
                     version ".tar.gz"))
               (sha256
                (base32
-                "01ajxnz9dpnvdbib7yv20dw21a1yyfgwiw3whg0xi57cf4app2md"))))
+                "0jyy71szjr40c8v40qqw6yh3gfk8d6sl3nay69zrn5d88i3r0jca"))))
     (build-system gnu-build-system)
     (native-inputs `(("flex" ,flex)
                      ("bison" ,bison)))
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 57bfcf8207..2f4a2b1461 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -1683,6 +1683,17 @@ genome (2.9 GB for paired-end).")
      '(#:parallel-build? #f             ; not supported
        #:phases
        (modify-phases %standard-phases
+         (add-after 'set-paths 'hide-default-gcc
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((gcc (assoc-ref inputs "gcc")))
+               ;; Remove the default GCC from CPLUS_INCLUDE_PATH to prevent
+               ;; conflicts with the GCC 5 input.
+               (setenv "CPLUS_INCLUDE_PATH"
+                       (string-join
+                        (delete (string-append gcc "/include/c++")
+                                (string-split (getenv "CPLUS_INCLUDE_PATH") #\:))
+                        ":"))
+               #t)))
          (add-after 'unpack 'use-system-samtools
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "src/Makefile.in"
@@ -1705,7 +1716,7 @@ genome (2.9 GB for paired-end).")
                (("#include <sam.h>") "#include <samtools/sam.h>"))
              #t)))))
     (native-inputs
-     `(("gcc" ,gcc-5))) ;; doesn't build with later versions
+     `(("gcc@5" ,gcc-5))) ;; doesn't build with later versions
     (inputs
      `(("boost" ,boost)
        ("bowtie" ,bowtie)
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 11dba4e047..f382d1f9b2 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -22925,3 +22925,137 @@ Compared to other approaches @code{cpp11} strives to be safe against long
 jumps from the C API as well as C++ exceptions, conform to normal R function
 semantics and supports interaction with @code{ALTREP} vectors.")
     (license license:expat)))
+
+(define-public r-rcppziggurat
+  (package
+    (name "r-rcppziggurat")
+    (version "0.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "RcppZiggurat" version))
+       (sha256
+        (base32
+         "0zmr3nvm5j0fpwxk3x9kxpwqbr66ldfvd10zy8xlgjbslz9myvfv"))))
+    (properties `((upstream-name . "RcppZiggurat")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-rcpp" ,r-rcpp)
+       ("r-rcppgsl" ,r-rcppgsl)))
+    (native-inputs `(("r-knitr" ,r-knitr)))
+    (home-page "https://cran.r-project.org/web/packages/RcppZiggurat/")
+    (synopsis "Rcpp integration of different \"Ziggurat\" normal RNG implementations")
+    (description
+     "The Ziggurat generator for normally distributed random numbers,
+originally proposed by Marsaglia and Tsang (2000,
+@url{https://doi.org/10.18637/jss.v005.i08}) has been improved upon a few
+times starting with Leong et al (2005,
+@url{https://doi.org/10.18637/jss.v012.i07}).  This package provides an
+aggregation for comparing different implementations in order to provide a
+'faster but good enough' alternative for use with R and C++ code.")
+    (license license:gpl2+)))
+
+(define-public r-rfast
+  (package
+    (name "r-rfast")
+    (version "1.9.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "Rfast" version))
+       (sha256
+        (base32
+         "18m8xhg24kygwhq7avdp1hibilicb5wppi2wdmc36fkqljc274y0"))))
+    (properties `((upstream-name . "Rfast")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-rcpp" ,r-rcpp)
+       ("r-rcpparmadillo" ,r-rcpparmadillo)
+       ("r-rcppziggurat" ,r-rcppziggurat)))
+    (home-page "https://github.com/RfastOfficial/Rfast")
+    (synopsis "Collection of efficient and fast R functions")
+    (description
+     "This package provides a collection of fast (utility) functions for data
+analysis.  Column- and row- wise means, medians, variances, minimums,
+maximums, many t, F and G-square tests, many regressions (normal, logistic,
+Poisson), are some of the many fast functions.")
+    (license license:gpl2+)))
+
+(define-public r-clusterr
+  (package
+    (name "r-clusterr")
+    (version "1.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "ClusterR" version))
+       (sha256
+        (base32
+         "1ky172bk15a78hky77vl60j7c81nq2495sxjrv53is25nkac7sjm"))))
+    (properties `((upstream-name . "ClusterR")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-ggplot2" ,r-ggplot2)
+       ("r-gmp" ,r-gmp)
+       ("r-gtools" ,r-gtools)
+       ("r-rcpp" ,r-rcpp)
+       ("r-rcpparmadillo" ,r-rcpparmadillo)))
+    (native-inputs `(("r-knitr" ,r-knitr)))
+    (home-page "https://github.com/mlampros/ClusterR")
+    (synopsis "Clustering")
+    (description
+     "This package provides Gaussian mixture models, k-means,
+mini-batch-kmeans, k-medoids and affinity propagation clustering with the
+option to plot, validate, predict (new data) and estimate the optimal number
+of clusters.  The package takes advantage of @code{RcppArmadillo} to speed up
+the computationally intensive parts of the functions.  For more information,
+see
+
+@enumerate
+@item \"Clustering in an Object-Oriented Environment\" by Anja Struyf, Mia
+  Hubert, Peter Rousseeuw (1997), Journal of Statistical Software,
+  @url{https://doi.org/10.18637/jss.v001.i04};
+@item \"Web-scale k-means clustering\" by D. Sculley (2010), ACM Digital
+  Library, @url{https://doi.org/10.1145/1772690.1772862};
+@item \"Armadillo: a template-based C++ library
+  for linear algebra\" by Sanderson et al (2016), The Journal of Open Source
+  Software, @url{https://doi.org/10.21105/joss.00026};
+@item \"Clustering by Passing Messages Between Data Points\" by Brendan
+  J. Frey and Delbert Dueck, Science 16 Feb 2007: Vol. 315, Issue 5814,
+  pp. 972-976, @url{https://doi.org/10.1126/science.1136800}.
+@end enumerate
+")
+    (license license:gpl3)))
+
+(define-public r-spectrum
+  (package
+    (name "r-spectrum")
+    (version "1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (cran-uri "Spectrum" version))
+       (sha256
+        (base32
+         "0n38d360azkck6vvhr771zsh0gbvd9qsf9ygg5r18vhz0pb1xcfw"))))
+    (properties `((upstream-name . "Spectrum")))
+    (build-system r-build-system)
+    (propagated-inputs
+     `(("r-clusterr" ,r-clusterr)
+       ("r-diptest" ,r-diptest)
+       ("r-ggplot2" ,r-ggplot2)
+       ("r-rfast" ,r-rfast)))
+    (native-inputs `(("r-knitr" ,r-knitr)))
+    (home-page "https://cran.r-project.org/web/packages/Spectrum/")
+    (synopsis "Fast adaptive spectral clustering for single and multi-view data")
+    (description
+     "This package provides a self-tuning spectral clustering method for
+single or multi-view data.  Spectrum uses a new type of adaptive density aware
+kernel that strengthens connections in the graph based on common nearest
+neighbours.  It uses a tensor product graph data integration and diffusion
+procedure to integrate different data sources and reduce noise.  Spectrum uses
+either the eigengap or multimodality gap heuristics to determine the number of
+clusters.  The method is sufficiently flexible so that a wide range of
+Gaussian and non-Gaussian structures can be clustered with automatic selection
+of K.")
+    (license license:agpl3+)))
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 1ac3e2baea..d5596baa9b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2734,6 +2734,58 @@ Emacs native editing commmands and the work of other packages wherever
 possible.")
       (license license:expat))))
 
+(define-public emacs-kana
+  ;; Package has no release.  Version is extracted from "Version:" keyword in
+  ;; main file.
+  (let ((commit "b239c3c3c6124b46ff720cca7b80ecbafd7fa489")
+        (revision "0"))
+    (package
+      (name "emacs-kana")
+      (version (git-version "1.0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/chenyanming/kana")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "0vrrl1kniq4h111jvnapvx3wybvsl3alfaygw634mmryr3h7pwi8"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/chenyanming/kana")
+      (synopsis "Learn Japanese Kana in Emacs")
+      (description
+       "This Emacs mode displays Hiragana and Katakana flashcards.  It can use
+functionality from Emacs Kanji mode if it is installed.")
+      (license license:gpl3+))))
+
+(define-public emacs-kanji
+  ;; Package has no release.  Version is extracted from "Version:" keyword in
+  ;; main file.
+  (let ((commit "5e9d5b72468ece11cfb81b729be6babf63ede425")
+        (revision "0"))
+    (package
+      (name "emacs-kanji")
+      (version (git-version "1.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/wsgac/kanji-mode")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1zh7klqaza840q5f44zzh1wrnd6sqa2k93z3dgx3yhhsxfd1dxvy"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/wsgac/kanji-mode")
+      (synopsis "Emacs minor mode for displaying Japanese Kanji stroke order")
+      (description
+       "This minor mode displays the stroke order of the Kanji sign under
+cursor in a transient buffer.  It has a built-in collection of SVG images
+depicting stroke orders for all Kanji.  The collection is a slightly modified
+and limited version of the images provided by the KanjiVG project.")
+      (license license:gpl3+))))
+
 (define-public emacs-keyfreq
   (package
     (name "emacs-keyfreq")
@@ -3259,6 +3311,39 @@ keep pressing the key until it selects what you want.  There's also
 @code{er/contract-region} if you expand too far.")
     (license license:gpl3+)))
 
+(define-public emacs-explain-pause-mode
+  (let ((commit "2356c8c3639cbeeb9751744dbe737267849b4b51")
+        (revision "0"))
+    (package
+      (name "emacs-explain-pause-mode")
+      (version (git-version "0.1" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/lastquestion/explain-pause-mode")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0frnfwqal9mrnrz6q4v7vcai26ahaw81894arff1yjw372pfgv7v"))))
+      (build-system emacs-build-system)
+      (native-inputs
+       `(("emacs" ,emacs-buttercup)))
+      (arguments
+       '(#:tests? #t
+         ;; Don't run case-tests as they will fail to create sockets because
+         ;; the path is too long
+         #:test-command '("make" "byte-compile" "unit-tests")
+         ;; Parallel testing will cause the tests to run before
+         ;; byte-compilation is finished
+         #:parallel-tests? #f))
+      (home-page "https://github.com/lastquestion/explain-pause-mode")
+      (synopsis "Provides a top like interface to determine why Emacs paused")
+      (description "Monitors Emacs function calls and records their execution
+time.  This information can be reviewed to determine what is causing the user
+interface to pause.")
+      (license license:gpl3+))))
+
 (define-public emacs-fill-column-indicator
   (package
     (name "emacs-fill-column-indicator")
@@ -5671,7 +5756,7 @@ cards created in Org mode.")
 (define-public emacs-org-superstar
   (package
     (name "emacs-org-superstar")
-    (version "1.2.1")
+    (version "1.3.0")
     (source
      (origin
        (method git-fetch)
@@ -5680,7 +5765,7 @@ cards created in Org mode.")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "14w06v76xi4f6hpq6xzicrjjv0b802g5zc9as4mpimfy5gx2xpm0"))))
+        (base32 "17x32k3f21z9ldakgryd2wczhdj78kb8gsdxplyjqc3knajpnzgp"))))
     (build-system emacs-build-system)
     (propagated-inputs
      `(("emacs-org" ,emacs-org)))
@@ -14802,29 +14887,36 @@ macro takes a first argument (whose value must be an alist) and a body.")
     (license license:gpl3+)))
 
 (define-public emacs-esup
-  (let ((commit "a589005a9a888537deef94d6fe38a9b8790c97c7")
-        (revision "1"))
-    (package
-      (name "emacs-esup")
-      (version (string-append "0.6" "-" revision "."
-                              (string-take commit 7)))
-      (source
-       (origin
-         (method git-fetch)
-         (uri (git-reference
-               (url "https://github.com/jschaf/esup")
-               (commit commit)))
-         (file-name (git-file-name name version))
-         (sha256
-          (base32
-           "04lxmd0h7mfjjl0qghrycgff0vcv950j1wqv0dbkr61jxp64n5fv"))))
-      ;; TODO: Add tests
-      (build-system emacs-build-system)
-      (home-page "https://github.com/jschaf/esup")
-      (synopsis "Emacs start up profiler")
-      (description "Benchmark Emacs Startup time without ever leaving
+  (package
+    (name "emacs-esup")
+    (version "0.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/jschaf/esup")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "100w28n3qb3s5b18vvqpwmijdjnjazawn38i0pjbpxz5llhqgl1g"))))
+    (build-system emacs-build-system)
+    (native-inputs
+     `(("emacs-noflet" ,emacs-noflet)
+       ("emacs-el-mock" ,emacs-el-mock)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'install 'check
+           (lambda* (#:key inputs #:allow-other-keys)
+             (invoke "emacs" "--batch" "-L" "."
+                     "-l" "test/esup-test.el"
+                     "-f" "ert-run-tests-batch-and-exit"))))))
+    (home-page "https://github.com/jschaf/esup")
+    (synopsis "Emacs start up profiler")
+    (description "Benchmark Emacs Startup time without ever leaving
 your Emacs.")
-      (license license:gpl2+))))
+    (license license:gpl2+)))
 
 (define-public emacs-restart-emacs
   (let ((commit "9aa90d3df9e08bc420e1c9845ee3ff568e911bd9")
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 1cf1c433dc..2909819153 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015, 2018 David Thompson <dthompson2@worcester.edu>
 ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
-;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2017, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
@@ -279,6 +279,64 @@ SoundBlaster/Gravis Ultra Sound card for excellent sound compatibility with
 older games.")
     (license license:gpl2+)))
 
+(define-public qtmips
+  (package
+    (name "qtmips")
+    (version "0.7.3")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/cvut/QtMips")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1khvwgqz4h6q6mhbbq0yx43ajz8gx9wmwzs8784vmfrglndbxgax"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (invoke "qmake"
+                     (string-append "PREFIX=" (assoc-ref outputs "out"))
+                     "qtmips.pro")))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (substitute* "tests/test.sh"
+               (("qtchooser.*") ""))
+             (substitute* '("tests/cpu_trap/test.sh"
+                            "tests/registers/test.sh")
+               (("sub-qtmips_cli") "qtmips_cli"))
+             (if tests?
+               (invoke "tests/run-all.sh")
+               #t)))
+         (replace 'install
+           ;; There is no install target.
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (apps (string-append out "/share/applications"))
+                    (icons (string-append out "/share/icons/hicolor")))
+               (install-file "qtmips_gui/qtmips_gui" bin)
+               (install-file "qtmips_cli/qtmips_cli" bin)
+               (install-file "data/qtmips.desktop" apps)
+               (install-file "data/icons/qtmips_gui.svg"
+                             (string-append icons "/scalable/apps"))
+               (install-file "data/icons/qtmips_gui.png"
+                             (string-append icons "/48x48/apps"))
+               #t))))
+       #:tests? #f))    ; test suite wants mips toolchain
+    (inputs
+     `(("elfutils" ,elfutils)
+       ("qtbase" ,qtbase)))
+    (home-page "https://github.com/cvut/QtMips")
+    (synopsis "MIPS CPU emulator")
+    (description "This package contains a MIPS CPU emulator.  The simulator
+accepts ELF statically linked executables compiled for 32-bit big-endian
+MIPS target, targeting mips-linux-gnu or mips-elf.")
+    (license license:gpl2+)))   ; License file says GPL3
+
 (define-public emulation-station
   ;; No release for a long time, new commits fix build issues
   (let ((commit "9cc42adff67946175d2b7e25c6ae69cc374e98a0")
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 1241e19d27..cf52108d40 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -664,7 +664,7 @@ the Monero command line client and daemon.")
 (define-public monero-gui
   (package
     (name "monero-gui")
-    (version "0.16.0.2")
+    (version "0.16.0.3")
     (source
      (origin
        (method git-fetch)
@@ -673,8 +673,7 @@ the Monero command line client and daemon.")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32
-         "1b1m8vhs0hdh81ysm8s8vfwqskqsihylb51wz16kc98ba40r9gqg"))))
+        (base32 "0iwjp8x5swy8i8pzrlm5v55awhm54cf48pm1vz98lcq361lhfzk6"))))
     (build-system qt-build-system)
     (native-inputs
      `(("monero-source" ,(package-source monero))
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 82a9660b2a..8e4aa0742b 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2732,6 +2732,7 @@ interface or via an external visual interface such as GNU XBoard.")
               (method url-fetch)
               (uri (string-append "mirror://gnu/freedink/freedink-" version
                                   ".tar.gz"))
+              (patches (search-patches "freedink-engine-fix-sdl-hints.patch"))
               (sha256
                (base32
                 "00hhk1bjdrc1np2qz44sa5n1mb62qzwxbvsnws3vpms6iyn3a2sy"))))
@@ -2745,6 +2746,14 @@ interface or via an external visual interface such as GNU XBoard.")
              ;; These tests require a graphical interface.
              (substitute* "src/Makefile.am"
                (("test_gfx_fonts TestIOGfxDisplay") ""))
+             #t))
+         (add-before 'bootstrap 'autoreconf
+           (lambda _
+	     ;; automake is out of date in the source
+	     ;; autoreconf updates the automake scripts
+	     (invoke "autoreconf")
+	     ;; Build fails when autom4te.cache exists.
+	     (delete-file-recursively "autom4te.cache")
              #t)))))
     (native-inputs `(("autoconf" ,autoconf)
                      ("automake" ,automake)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index dce9639cb8..dffcd697d7 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -8643,7 +8643,7 @@ compiled.")
 (define-public gfbgraph
   (package
     (name "gfbgraph")
-    (version "0.2.3")
+    (version "0.2.4")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -8652,17 +8652,23 @@ compiled.")
                     "gfbgraph-" version ".tar.xz"))
               (sha256
                (base32
-                "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs"))))
+                "0yck7dwvjk16a52nafjpi0a39rxwmg0w833brj45acz76lgkjrb0"))))
     (build-system glib-or-gtk-build-system)
     (arguments
-     `(#:tests? #f ; Tests appear to require the network.
-       ;; FIXME --enable-gtk-doc fails even with gtk-doc as a native-input.
-       #:configure-flags '("--disable-gtk-doc"
-                           "--disable-static"
+     `(#:tests? #f                      ; tests appear to require the network
+       #:configure-flags '("--disable-static"
+                           "--enable-gtk-doc"
                            "--enable-introspection")))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("gobject-introspection" ,gobject-introspection)))
+     `(("gobject-introspection" ,gobject-introspection)
+       ("gtk-doc" ,gtk-doc)
+       ("pkg-config" ,pkg-config)
+
+       ;; The 0.2.4 ‘release’ tarball isn't bootstrapped.
+       ("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("libtool" ,libtool)
+       ("which" ,which)))
     (inputs
      `(("json-glib" ,json-glib)
        ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 8923836437..65e79f4ef1 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -1139,11 +1139,11 @@ standards of the IceCat project.")
        (cpe-version . ,(first (string-split version #\-)))))))
 
 ;; Update this together with icecat!
-(define %icedove-build-id "20200630000000") ;must be of the form YYYYMMDDhhmmss
+(define %icedove-build-id "20200726000000") ;must be of the form YYYYMMDDhhmmss
 (define-public icedove
   (package
     (name "icedove")
-    (version "68.10.0")
+    (version "68.11.0")
     (source icecat-source)
     (properties
      `((cpe-name . "thunderbird_esr")))
@@ -1429,7 +1429,7 @@ standards of the IceCat project.")
         ;; in the Thunderbird release tarball.  We don't use the release
         ;; tarball because it duplicates the Icecat sources and only adds the
         ;; "comm" directory, which is provided by this repository.
-        ,(let ((changeset "6a7c26eb22bfe18295497c720a73e24b29b0604e"))
+        ,(let ((changeset "a247645d951bcedb356a0d9f273e878a7d4d2180"))
            (origin
              (method hg-fetch)
              (uri (hg-reference
@@ -1438,7 +1438,7 @@ standards of the IceCat project.")
              (file-name (string-append "thunderbird-" version "-checkout"))
              (sha256
               (base32
-               "1yd73ig2jmzzq9c3ynqav4kh8jiv31xx7vs518b3w1yvmcpj5xsy")))))
+               "0nf7ic1sw7yawnwrxwm3b4yl2cn4hp8szzh0xd462s1hjm59ksjl")))))
        ("autoconf" ,autoconf-2.13)
        ("cargo" ,rust "cargo")
        ("clang" ,clang)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 91ac62e903..c7fefbd57d 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -49,6 +49,7 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages crypto)
   #:use-module (gnu packages datastructures)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages flex)
@@ -59,12 +60,14 @@
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnunet)
   #:use-module (gnu packages graphviz)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages kde-frameworks)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages pdf)
@@ -81,12 +84,14 @@
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages swig)
   #:use-module (gnu packages tbb)
+  #:use-module (gnu packages upnp)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system qt)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix hg-download)
@@ -1429,3 +1434,56 @@ and PC Engine formats")
 the graphics formats of the SNES, Game Boy Color and PC Engine game consoles.
 Automated palette selection is supported.")
     (license license:expat)))
+
+(define-public drawpile
+  (package
+    (name "drawpile")
+    (version "2.1.17")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/drawpile/Drawpile")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "08w8vad8pw4a8kkshys1kd2kjvzpj62klxxxp904rx0qazw5hl80"))))
+    (build-system qt-build-system)
+    (arguments
+     '(#:configure-flags (list "-DTESTS=ON" "-DTOOLS=ON" "-DKIS_TABLET=ON")))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("giflib" ,giflib)
+       ("karchive" ,karchive)
+       ("kdnssd" ,kdnssd)
+       ("libmicrohttpd" ,libmicrohttpd)
+       ("libsodium" ,libsodium)
+       ("libvpx" ,libvpx)
+       ("libxi" ,libxi)
+       ;; ("miniupnpc" ,miniupnpc) ;segfaults for some reason
+       ("qtbase" ,qtbase)
+       ("qtkeychain" ,qtkeychain)
+       ("qtmultimedia" ,qtmultimedia)
+       ("qtsvg" ,qtsvg)
+       ("qtx11extras" ,qtx11extras)))
+    (home-page "https://drawpile.net")
+    (synopsis "Collaborative drawing program")
+    (description "Drawpile is a drawing program that allows share the canvas
+with other users in real time.
+
+Some feature highlights:
+@itemize
+@item Shared canvas using the built-in server or a dedicated server
+@item Record, play back and export drawing sessions
+@item Simple animation support
+@item Layers and blending modes
+@item Text layers
+@item Supports pressure sensitive Wacom tablets
+@item Built-in chat
+@item Supports OpenRaster file format
+@item Encrypted connections using SSL
+@item Automatic port forwarding with UPnP
+@end itemize\n")
+    (license license:gpl3+)))
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 2f5e745df6..4526ef279d 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2344,14 +2344,14 @@ is no support for parsing block and inline level HTML.")
 (define-public mcron
   (package
     (name "mcron")
-    (version "1.1.4")
+    (version "1.2.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnu/mcron/mcron-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1521w3h33bhdlg6qc66sq4dwv3qsx8r8x6srq4ca6kaahy6dszw8"))))
+                "1midrn15d5kqy4zd2029bj1db6gnfhxg8mcgfy4bkp5p9nl4v4rd"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases (modify-phases %standard-phases
@@ -2778,6 +2778,30 @@ pre-alpha code.")
 (define-public guile3.0-gi
   (deprecated-package "guile3.0-gi" guile-gi))
 
+(define-public guile-srfi-89
+  (package
+    (name "guile-srfi-89")
+    (version "0.0.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.com/mjbecze/guile-srfi-89.git")
+             (commit version)))
+       (sha256
+         (base32
+           "1981c0rrzxqx3md9jx8ir7j3m2mzg9m72b33p5jvw36zirbzpl20"))
+       (file-name (git-file-name name version))))
+    (build-system guile-build-system)
+    (native-inputs
+     `(("guile" ,guile-3.0)))
+    (home-page "https://gitlab.com/mjbecze/guile-srfi-89")
+    (synopsis "Hygienic implementation of SRFI-89 for Guile")
+    (description
+     "This package provides SRFI-89 optional positional and named
+parameters, which  define* and lambda* special forms")
+    (license license:gpl3+)))
+
 (define-public guile-srfi-159
   (let ((commit "1bd98abda2ae4ef8f36761a167903e55c6bda7bb")
         (revision "0"))
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 4c8bf407ba..c70f1736d7 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -341,14 +341,14 @@ to @code{cabal repl}).")
 (define-public git-annex
   (package
     (name "git-annex")
-    (version "8.20200720.1")
+    (version "8.20200810")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://hackage.haskell.org/package/"
                            "git-annex/git-annex-" version ".tar.gz"))
        (sha256
-        (base32 "0g4wlfkwr9w21hvdywc7sk077rxlnigdr4m4yz41rc0s2nbjc9fn"))))
+        (base32 "1wy6ckcf5f6m94gakg1504h1zryail3mmj85sglq03s45vawjcg6"))))
     (build-system haskell-build-system)
     (arguments
      `(#:configure-flags
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm
index e62c5c7cdb..52e0311943 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 ;;; Copyright © 2018 Lprndn <guix@lprndn.info>
 ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
@@ -251,6 +251,8 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
               (sha256
                (base32
                 "06bc61r8myym4s8im10brdjfg4wxkrvsbhhl7vr1msdan2xddzi3"))
+              (patches
+               (search-patches "opencv-fix-build-of-grfmt_jpeg2000.cpp.patch"))
               (modules '((guix build utils)))
               (snippet
                '(begin
diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm
index 7b13d98d95..5ebc066ac8 100644
--- a/gnu/packages/libusb.scm
+++ b/gnu/packages/libusb.scm
@@ -351,16 +351,15 @@ I2C and SPI devices attached to the USB Hub.")
 (define-public libplist
   (package
     (name "libplist")
-    (version "2.1.0")
+    (version "2.2.0")
     (source
      (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/libimobiledevice/libplist")
-             (commit version)))
-       (file-name (git-file-name name version))
+       (method url-fetch)
+       (uri (string-append "https://github.com/libimobiledevice"
+                           "/libplist/releases/download/" version
+                           "/libplist-" version ".tar.bz2"))
        (sha256
-        (base32 "02vraf4j46bp746s0gz7vga2gv2dy3zd1v1bsy9x8algg9fpcb7n"))))
+        (base32 "16mxdwaw01x9a3adf0yj3bqjc7afpf2vm1n5hkgj3i3y6zjifmaa"))))
     (build-system gnu-build-system)
     (arguments
      `(;; Tests fail randomly when run in parallel because several of them write
@@ -375,7 +374,7 @@ I2C and SPI devices attached to the USB Hub.")
        ("libtool" ,libtool)
        ("pkg-config" ,pkg-config)
        ("python-cython" ,python-cython))) ; to build Python bindings
-    (home-page "https://www.libimobiledevice.org/")
+    (home-page "https://libimobiledevice.org/")
     (synopsis "C library to handle Apple Property List files")
     (description "This package provides a small portable C library to handle
 Apple Property List files in binary or XML.")
@@ -384,80 +383,52 @@ Apple Property List files in binary or XML.")
 (define-public libusbmuxd
   (package
     (name "libusbmuxd")
-    (version "1.0.10")
+    (version "2.0.2")
     (source (origin
               (method url-fetch)
-              (uri (string-append "https://www.libimobiledevice.org/downloads/"
-                                  "libusbmuxd-" version ".tar.bz2"))
+              (uri (string-append "https://github.com/libimobiledevice"
+                                  "/libusbmuxd/releases/download/" version
+                                  "/libusbmuxd-" version ".tar.bz2"))
               (sha256
                (base32
-                "1wn9zq2224786mdr12c5hxad643d29wg4z6b7jn888jx4s8i78hs"))))
+                "084vg570g1qb506jd7axg6c080mfsmbf52v3lngzlknsaf2q0snc"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("libplist" ,libplist)))
-    (home-page "https://www.libimobiledevice.org/")
+    (home-page "https://libimobiledevice.org/")
     (synopsis "Library to multiplex connections from and to iOS devices")
     (description "This package provides a client library to multiplex
 connections from and to iOS devices by connecting to a socket provided by a
 @code{usbmuxd} daemon.")
     (license license:lgpl2.1+)))
 
-;; These patches are needed to build with Python 3.8.
-(define %libimobiledevice-patches
-  (list (origin
-          (method url-fetch)
-          (uri (string-append "https://github.com/libimobiledevice/libimobiledevice"
-                              "/commit/1ff3448d2e27f1bac8d2f0af8b8e952854860278.patch"))
-          (file-name "libimobiledevice-python-config.patch")
-          (sha256
-           (base32
-            "1mkwhp8vvhajij29jk3w4rkgcfh8d8waf908drh3076k70hb6i8y")))
-        (origin
-          (method url-fetch)
-          (uri (string-append "https://github.com/libimobiledevice/libimobiledevice"
-                              "/commit/eea4f1be9107c8ab621fd71460e47d0d38e55d71.patch"))
-          (file-name "libimobiledevice-python-3.8-compat.patch")
-          (sha256
-           (base32
-            "1zz8v7kgwyq5ck1qp03l29pcmljygnjwls9d6q28nv5pkwa6848w")))))
-
 (define-public libimobiledevice
   (package
     (name "libimobiledevice")
-    (version "1.2.0")
+    (version "1.3.0")
     (source (origin
               (method url-fetch)
-              (uri (string-append "https://www.libimobiledevice.org/downloads/"
-                                  "libimobiledevice-" version ".tar.bz2"))
-              ;; Note: Remove the 'force-bootstrap' phase and the autoconf
-              ;; inputs below when removing these patches.
-              (patches %libimobiledevice-patches)
+              (uri (string-append "https://github.com/libimobiledevice"
+                                  "/libimobiledevice/releases/download/"
+                                  version "/libimobiledevice-" version
+                                  ".tar.bz2"))
               (sha256
                (base32
-                "0dqhy4qwj30mw8pwckvjmgnj1qqrh6p8c6jknmhvylshhzh0ssvq"))))
+                "1xmhfnypg6j7shl73wfkrrn4mj9dh8qzaj3258q9zkb5cc669wjk"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:phases (modify-phases %standard-phases
-                  (add-before 'bootstrap 'force-bootstrap
-                    (lambda _
-                      (delete-file "configure")
-                      #t)))))
+     '(#:configure-flags '("PYTHON_VERSION=3")))
     (propagated-inputs
-     `(("openssl" ,openssl-1.0)
+     `(("openssl" ,openssl)
        ("libplist" ,libplist)
        ("libusbmuxd" ,libusbmuxd)))
     (inputs
      `(("python" ,python)))
     (native-inputs
      `(("pkg-config" ,pkg-config)
-       ("python-cython" ,python-cython)
-
-       ;; These are required because we patch and bootstrap the build system.
-       ("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)))
-    (home-page "https://www.libimobiledevice.org/")
+       ("python-cython" ,python-cython)))
+    (home-page "https://libimobiledevice.org/")
     (synopsis "Protocol library and tools to communicate with Apple devices")
     (description "libimobiledevice is a software library that talks the
 protocols to support Apple devices.  It allows other software to easily access
@@ -470,21 +441,22 @@ music and video to the device.")
 (define-public ifuse
   (package
     (name "ifuse")
-    (version "1.1.3")
+    (version "1.1.4")
     (source (origin
               (method url-fetch)
-              (uri (string-append "https://www.libimobiledevice.org/downloads/"
-                                  "ifuse-" version ".tar.bz2"))
+              (uri (string-append "https://github.com/libimobiledevice"
+                                  "/ifuse/releases/download/" version
+                                  "/ifuse-" version ".tar.bz2"))
               (sha256
                (base32
-                "1p9a4n36jb194cnp6v57cz2bggwbywaz8pbpb95ch83pzdkdx257"))))
+                "11wdv44qwia77sh38n36809ysaib52rwd4fvqwb5ybsbz4p70l1m"))))
     (inputs
      `(("fuse" ,fuse)
        ("libimobiledevice" ,libimobiledevice)))
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (build-system gnu-build-system)
-    (home-page "https://www.libimobiledevice.org/")
+    (home-page "https://libimobiledevice.org/")
     (synopsis "Mount iOS devices")
     (description "This package provides @command{ifuse}, a command to mount
 iOS devices and access their contents.")
@@ -493,14 +465,15 @@ iOS devices and access their contents.")
 (define-public usbmuxd
   (package
     (name "usbmuxd")
-    (version "1.1.0")
+    (version "1.1.1")
     (source (origin
               (method url-fetch)
-              (uri (string-append "https://www.libimobiledevice.org/downloads/"
-                                  "usbmuxd-" version ".tar.bz2"))
+              (uri (string-append "https://github.com/libimobiledevice"
+                                  "/usbmuxd/releases/download/" version
+                                  "/usbmuxd-" version ".tar.bz2"))
               (sha256
                (base32
-                "0bdlc7a8plvglqqx39qqampqm6y0hcdws76l9dffwl22zss4i29y"))))
+                "17idzpxrvkbff0jpynf35df95lh7wsm8vndynp63bxib2w09gv60"))))
     (inputs
      `(("libplist" ,libplist)
        ("libusb" ,libusb)
@@ -508,7 +481,7 @@ iOS devices and access their contents.")
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (build-system gnu-build-system)
-    (home-page "https://www.libimobiledevice.org/")
+    (home-page "https://libimobiledevice.org/")
     (synopsis "Multiplex connections over USB to an iOS device")
     (description "This package provides the @code{usbmuxd} daemon
 which multiplexes connections over USB to an iOS device.  To
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index ca5a4f99b0..27ad8873a7 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2016 Raymond Nicholson <rain1@openmailbox.org>
 ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
 ;;; Copyright © 2016, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
-;;; Copyright © 2016, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2016, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
@@ -4027,6 +4027,8 @@ thanks to the use of namespaces.")
                                 "libexec/bootstrap-scripts/functions"
                                 "libexec/bootstrap-scripts/post.sh"
                                 "libexec/functions")
+               (("\\| grep ")
+                (string-append "| " (which "grep") " "))
                (("egrep ")
                 (string-append (which "egrep") " ")))
              #t))
@@ -6433,14 +6435,14 @@ available in the kernel Linux.")
 (define-public cpuid
   (package
     (name "cpuid")
-    (version "20200211")
+    (version "20200427")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://www.etallen.com/cpuid/cpuid-"
                                   version ".src.tar.gz"))
               (sha256
                (base32
-                "06sjbqqp80l7nhsp6khglkzdp9qy4vhbvjxbfilznhsmrqiwlw55"))))
+                "1m31238z2ya8f8pzpyklwp0ksf5xicqrw1z941hhhx913wzldaf1"))))
     (build-system gnu-build-system)
     (arguments
      '(#:make-flags '("CC=gcc")
diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
index f445a7eb30..f8eeec97d0 100644
--- a/gnu/packages/lxqt.scm
+++ b/gnu/packages/lxqt.scm
@@ -599,7 +599,8 @@ of other programs.")
     (propagated-inputs
      ;; Propagating KWINDOWSYSTEM so that the list of opened applications
      ;; shows up in lxqt-panel's taskbar plugin.
-     `(("kwindowsystem" ,kwindowsystem)))
+     `(("kwindowsystem" ,kwindowsystem)
+       ("lxmenu-data" ,lxmenu-data)))
     (arguments
      '(#:tests? #f                      ; no tests
        #:phases
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 163ebded07..1f4c2e23ea 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -773,7 +773,8 @@ than 8 bits, and at the end only some significant 8 bits are kept.")
                   #t))))
     (build-system cmake-build-system)
     (arguments
-     `(#:phases
+     `(#:configure-flags '("-DBUILD_SHARED_LIBS=ON")
+       #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'disable-asserts
            (lambda _
@@ -810,12 +811,7 @@ than 8 bits, and at the end only some significant 8 bits are kept.")
                (with-directory-excursion test-dir
                  (invoke "make" "-j" (number->string (parallel-job-count)))
                  (invoke "./dtest" "--runall"))
-               #t)))
-         (add-after 'install 'delete-static-library
-           (lambda* (#:key outputs #:allow-other-keys)
-             (delete-file (string-append (assoc-ref outputs "out")
-                                         "/lib/libdlib.a"))
-             #t)))))
+               #t))))))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ;; For tests.
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 3d93acc67f..f56e9b307c 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1401,7 +1401,7 @@ facilities for checking incoming mail.")
 (define-public dovecot
   (package
     (name "dovecot")
-    (version "2.3.10.1")
+    (version "2.3.11.3")
     (source
      (origin
        (method url-fetch)
@@ -1409,7 +1409,7 @@ facilities for checking incoming mail.")
                            (version-major+minor version) "/"
                            "dovecot-" version ".tar.gz"))
        (sha256
-        (base32 "035idr2j81s5mngnhd58rih79dhwwak7q01mqbx3rcmi4cpychk6"))))
+        (base32 "1p5gp8jbavcsaara5mfn5cbrnlxssajnchczbgmmfzr7228fmnfk"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm
index 21d7ba63f6..1335c24fa0 100644
--- a/gnu/packages/man.scm
+++ b/gnu/packages/man.scm
@@ -164,7 +164,7 @@ the traditional flat-text whatis databases.")
 (define-public man-pages
   (package
     (name "man-pages")
-    (version "5.07")
+    (version "5.08")
     (source
      (origin
        (method url-fetch)
@@ -174,7 +174,7 @@ the traditional flat-text whatis databases.")
               (string-append "mirror://kernel.org/linux/docs/man-pages/Archive/"
                              "man-pages-" version ".tar.xz")))
        (sha256
-        (base32 "13b3q7c67r0wkla4pdihl1qh09k67ms2z5jgzfqgpdqqy6mgziwd"))))
+        (base32 "1xzp3f6wvw3wplk1a1x09zfv0jp0pdc9wh95czndh3h8z0qwv9yf"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases (modify-phases %standard-phases (delete 'configure))
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 77e8dbd27b..ae8579cb47 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -4052,7 +4052,7 @@ audio samples and various soft sythesizers.  It can receive input from a MIDI ke
 (define-public musescore
   (package
     (name "musescore")
-    (version "3.4.2")
+    (version "3.5")
     (source
      (origin
        (method git-fetch)
@@ -4061,13 +4061,14 @@ audio samples and various soft sythesizers.  It can receive input from a MIDI ke
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "14a9sg87nx7xca1qfbkplnpbx9pyg9k9vy87dq0g401ag6g6bi66"))
+        (base32 "1s8767imzv9hclpzvvvsqb3iyiv4y2klr6agf95zwym2xafy8p26"))
        (modules '((guix build utils)))
        (snippet
         ;; Un-bundle OpenSSL and remove unused libraries.
         '(begin
            (for-each delete-file-recursively
                      '("thirdparty/freetype"
+                       "thirdparty/google_analytics"
                        "thirdparty/openssl"
                        "thirdparty/portmidi"))
            #t))))
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 9c2c226086..77c89af7f9 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -728,10 +728,64 @@ environments.")
 (define-public python2-anaconda-client
   (package-with-python2 python-anaconda-client))
 
-(define-public python-conda
+(define-public python-conda-package-handling
   (package
-    (name "python-conda")
-    (version "4.3.16")
+    (name "python-conda-package-handling")
+    (version "1.6.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/conda/conda-package-handling/")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0bqbs6a8jbjmbn47n5n1p529cx7pf4vgfnhqca9mflgidfb5i0jf"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'use-unmodified-libarchive
+           (lambda _
+             (substitute* "setup.py"
+               (("archive_and_deps") "archive"))
+             #t))
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "tests"
+                     "-k"
+                     (string-append
+                      ;; TODO: these three fail because the mocker fixture
+                      ;; cannot be found
+                      "not test_rename_to_trash"
+                      " and not test_api_extract_tarball_with_libarchive_import_error"
+                      " and not test_delete_trash"
+                      ;; TODO: this one does not raise an exception when it
+                      ;; should.
+                      " and not test_secure_refusal_to_extract_abs_paths")))))))
+    (propagated-inputs
+     `(("python-six" ,python-six)
+       ("python-tqdm" ,python-tqdm)))
+    (inputs
+     `(("libarchive" ,libarchive)))
+    (native-inputs
+     `(("python-cython" ,python-cython)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-mock" ,python-mock)))
+    (home-page "https://conda.io")
+    (synopsis "Create and extract conda packages of various formats")
+    (description
+     "This library is an abstraction of Conda package handling and a tool for
+extracting, creating, and converting between formats.")
+    (license license:bsd-3)))
+
+(define-public conda
+  (package
+    (name "conda")
+    (version "4.8.3")
     (source
      (origin
        (method git-fetch)
@@ -741,58 +795,118 @@ environments.")
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "1qwy0awx4qf2pbk8z2b7q6wdcq7mvwpxxjhg27mbirdvs5hw7hb2"))))
+         "0iv1qzk21jsk6vdp3106xvpvl68zgfdqb3kyzpya87jhkl204l7r"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'fix-permissions
+           (lambda _
+             ;; This file is no longer writable after downloading with
+             ;; 'git-fetch'
+             (make-file-writable
+              "tests/conda_env/support/saved-env/environment.yml")
+             #t))
+         (add-after 'unpack 'correct-python-executable-name
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((python (assoc-ref inputs "python-wrapper")))
+               #;
+               (substitute* "conda/common/path.py"
+                 (("python_version or ''")
+                  "python_version or '3'"))
+               (substitute* "conda/core/initialize.py"
+                 (("python_exe = join")
+                  (format #f "python_exe = \"~a/bin/python\" #"
+                          python))))
+             #t))
+         (add-after 'unpack 'do-not-use-python-root-as-prefix
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (python (assoc-ref inputs "python-wrapper")))
+               (substitute* "tests/core/test_initialize.py"
+                 (("\"\"\"\\) % conda_prefix")
+                  (format #f "\"\"\") % \"~a\"" python))
+                 (("CONDA_PYTHON_EXE \"%s\"' % join\\(conda_prefix")
+                  (format #f "CONDA_PYTHON_EXE \"%s\"' % join(\"~a\""
+                          python))
+                 (("conda_prefix = abspath\\(sys.prefix\\)")
+                  (format #f "conda_prefix = abspath(\"~a\")" out)))
+               (substitute* "conda/base/context.py"
+                 (("os.chdir\\(sys.prefix\\)")
+                  (format #f "os.chdir(\"~a\")" out))
+                 (("sys.prefix, '.condarc'")
+                  (format #f "\"~a\", '.condarc'" out))
+                 (("return abspath\\(sys.prefix\\)")
+                  (format #f "return abspath(\"~a\")" out))
+                 (("os.path.join\\(sys.prefix, bin_dir, exe\\)")
+                  (format #f "\"~a/bin/conda\"" out))
+                 (("'CONDA_EXE', sys.executable")
+                  (format #f "'CONDA_EXE', \"~a/bin/conda\"" out))))
+             #t))
          (add-before 'build 'create-version-file
            (lambda _
              (with-output-to-file "conda/.version"
                (lambda () (display ,version)))
              #t))
-         (add-before 'check 'remove-failing-tests
-           (lambda _
-             ;; These tests require internet/network access
-             (let ((network-tests '("test_cli.py"
-                                    "test_create.py"
-                                    "test_export.py"
-                                    "test_fetch.py"
-                                    "test_history.py"
-                                    "test_info.py"
-                                    "test_install.py"
-                                    "test_priority.py"
-                                    "conda_env/test_cli.py"
-                                    "conda_env/test_create.py"
-                                    "conda_env/specs/test_notebook.py"
-                                    "conda_env/utils/test_notebooks.py"
-                                    "core/test_index.py"
-                                    "core/test_repodata.py")))
-               (with-directory-excursion "tests"
-                 (for-each delete-file network-tests)
-
-                 ;; FIXME: This test creates a file, then deletes it and tests
-                 ;; that the file was deleted.  For some reason it fails when
-                 ;; building with guix, but does not when you run it in the
-                 ;; directory left when you build with the --keep-failed
-                 ;; option
-                 (delete-file "gateways/disk/test_delete.py")
-                 ;; This file is no longer writable after downloading with 'git-fetch'
-                 (make-file-writable "conda_env/support/saved-env/environment.yml")
-                 #t))))
          (replace 'check
            (lambda _
              (setenv "HOME" "/tmp")
-             (invoke "py.test"))))))
-    (native-inputs
-     `(("python-cytoolz" ,python-cytoolz)
-       ("python-ruamel.yaml" ,python-ruamel.yaml)
-       ("python-requests" ,python-requests)
+             (invoke "py.test" "-vv"
+                     "-k"
+                     (string-append
+                      "not integration"
+                      ;; This one reports a newer version of conda than
+                      ;; expected.
+                      " and not test_auto_update_conda"
+                      ;; This fails because the output directory is not a
+                      ;; Conda environment.
+                      " and not test_list"
+                      ;; This fails because we patched the default root
+                      ;; prefix.
+                      " and not test_default_target_is_root_prefix"
+                      ;; TODO: I don't understand what this failure means
+                      " and not test_PrefixData_return_value_contract"
+                      ;; TODO: same here
+                      " and not test_install_1"
+                      ;; Not sure if this is really wrong.  This fails because
+                      ;; /gnu/store/...python-conda-4.8.3/bin/python
+                      ;; is not /gnu/store/...python-wrapper-3.8.2/bin/python
+                      " and not test_make_entry_point"))))
+         (add-after 'install 'init
+           ;; This writes a whole bunch of shell initialization files to the
+           ;; prefix directory.  Many features of conda can only be used after
+           ;; running "conda init".
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (setenv "HOME" "/tmp")
+
+             ;; "conda init" insists on using sudo, because it is hell-bent on
+             ;; modifying system files.
+             (mkdir-p "/tmp/fake-sudo")
+             (with-output-to-file "/tmp/fake-sudo/sudo"
+               (lambda () (format #t "#!~/bin/sh~%exec $@" (which "sh"))))
+             (chmod "/tmp/fake-sudo/sudo" #o700)
+             (setenv "PATH" (string-append "/tmp/fake-sudo:"
+                                           (getenv "PATH")))
+
+             (invoke (string-append (assoc-ref outputs "out")
+                                    "/bin/conda")
+                     "init"))))))
+    (inputs
+     `(("python-wrapper" ,python-wrapper)))
+    (propagated-inputs
+     `(("python-anaconda-client" ,python-anaconda-client)
+       ("python-conda-package-handling" ,python-conda-package-handling)
+       ("python-cytoolz" ,python-cytoolz)
        ("python-pycosat" ,python-pycosat)
        ("python-pytest" ,python-pytest)
-       ("python-responses" ,python-responses)
        ("python-pyyaml" ,python-pyyaml)
-       ("python-anaconda-client" ,python-anaconda-client)))
+       ("python-requests" ,python-requests)
+       ("python-responses" ,python-responses)
+       ("python-ruamel.yaml" ,python-ruamel.yaml)
+       ("python-tqdm" ,python-tqdm)
+       ;; XXX: This is dragged in by libarchive and is needed at runtime.
+       ("zstd" ,zstd)))
     (home-page "https://github.com/conda/conda")
     (synopsis "Cross-platform, OS-agnostic, system-level binary package manager")
     (description
@@ -800,76 +914,11 @@ environments.")
 is the package manager used by Anaconda installations, but it may be used for
 other systems as well.  Conda makes environments first-class citizens, making
 it easy to create independent environments even for C libraries.  Conda is
-written entirely in Python.
-
-This package provides Conda as a library.")
+written entirely in Python.")
     (license license:bsd-3)))
 
-(define-public python2-conda
-  (let ((base (package-with-python2
-               (strip-python2-variant python-conda))))
-    (package (inherit base)
-             (native-inputs
-              `(("python2-enum34" ,python2-enum34)
-                ,@(package-native-inputs base))))))
-
-(define-public conda
-  (package (inherit python-conda)
-    (name "conda")
-    (arguments
-     (substitute-keyword-arguments (package-arguments python-conda)
-       ((#:phases phases)
-        `(modify-phases ,phases
-           (replace 'build
-             (lambda* (#:key outputs #:allow-other-keys)
-               ;; This test fails when run before installation.
-               (delete-file "tests/test_activate.py")
-
-               ;; Fix broken defaults
-               (substitute* "conda/base/context.py"
-                 (("return sys.prefix")
-                  (string-append "return \"" (assoc-ref outputs "out") "\""))
-                 (("return (prefix_is_writable\\(self.root_prefix\\))" _ match)
-                  (string-append "return False if self.root_prefix == self.conda_prefix else "
-                                 match)))
-
-               ;; The util/setup-testing.py is used to build conda in
-               ;; application form, rather than the default, library form.
-               ;; With this, we are able to run commands like `conda --help`
-               ;; directly on the command line
-               (invoke "python" "utils/setup-testing.py" "build_py")))
-           (replace 'install
-             (lambda* (#:key inputs outputs #:allow-other-keys)
-               (let* ((out (assoc-ref outputs "out"))
-                      (target (string-append out "/lib/python"
-                                             (python-version
-                                              (assoc-ref inputs "python"))
-                                             "/site-packages/")))
-                 ;; The installer aborts if the target directory is not on
-                 ;; PYTHONPATH.
-                 (setenv "PYTHONPATH"
-                         (string-append target ":" (getenv "PYTHONPATH")))
-
-                 ;; And it aborts if the directory doesn't exist.
-                 (mkdir-p target)
-                 (invoke "python" "utils/setup-testing.py" "install"
-                         (string-append "--prefix=" out)))))
-           ;; The "activate" and "deactivate" scripts don't need wrapping.
-           ;; They also break when they are renamed.
-           (add-after 'wrap 'undo-wrap
-             (lambda* (#:key outputs #:allow-other-keys)
-               (with-directory-excursion (string-append (assoc-ref outputs "out") "/bin/")
-                 (delete-file "deactivate")
-                 (rename-file ".deactivate-real" "deactivate")
-                 (delete-file "activate")
-                 (rename-file ".activate-real" "activate")
-                 #t)))))))
-    (description
-     "Conda is a cross-platform, Python-agnostic binary package manager.  It
-is the package manager used by Anaconda installations, but it may be used for
-other systems as well.  Conda makes environments first-class citizens, making
-it easy to create independent environments even for C libraries.  Conda is
-written entirely in Python.")))
+(define-public python-conda
+  (deprecated-package "python-conda" conda))
 
 (define-public gwl
   (package
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index ae211d8cd0..173970de86 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -306,14 +306,14 @@ applications, there is xclip integration." )
 (define-public yapet
   (package
     (name "yapet")
-    (version "2.3")
+    (version "2.4")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://yapet.guengel.ch/downloads/yapet-"
                            version ".tar.xz"))
        (sha256
-        (base32 "1fl4s7v1psl52ndd6i7716i9f493aj8ipl6lgmraadnn5h26l3pm"))))
+        (base32 "0b1v0whf70dfjzlwqwwvfv526s828skjvm4xvwly3vcvcmpz59sh"))))
     (build-system gnu-build-system)
     (inputs
      `(("argon2" ,argon2)
diff --git a/gnu/packages/patches/freedink-engine-fix-sdl-hints.patch b/gnu/packages/patches/freedink-engine-fix-sdl-hints.patch
new file mode 100644
index 0000000000..ce37ab4870
--- /dev/null
+++ b/gnu/packages/patches/freedink-engine-fix-sdl-hints.patch
@@ -0,0 +1,33 @@
+From 85f8dda6de28ef86e58f26c8aa863a26524f6ce0 Mon Sep 17 00:00:00 2001
+From: Jesse Gibbons <jgibbons2357+freedink@gmail.com>
+Date: Sun, 9 Feb 2020 21:46:26 -0700
+Subject: [PATCH] Fix mouse/touch event hints for SDL 2.0.10.
+
+This fixes the bug reported at
+<https://lists.gnu.org/archive/html/bug-freedink/2019-08/msg00000.html>.
+
+It should remain backwards compatible with releases of SDL prior to 2.0.10.
+---
+ src/input.cpp | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/input.cpp b/src/input.cpp
+index b5ae21e..153d349 100644
+--- a/src/input.cpp
++++ b/src/input.cpp
+@@ -91,7 +91,12 @@ void input_init(void)
+ 
+   // TODO: don't attempt to simulate mouse events from touch events -
+   // fake mouse events often are de-centered
++#ifdef SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH
+   SDL_SetHint(SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH, "0");
++#elif defined SDL_HINT_MOUSE_TOUCH_EVENTS && defined SDL_HINT_TOUCH_MOUSE_EVENTS
++  SDL_SetHint(SDL_HINT_MOUSE_TOUCH_EVENTS, "0");
++  SDL_SetHint(SDL_HINT_TOUCH_MOUSE_EVENTS, "0");
++#endif
+ 
+   /* Touch devices */
+   {
+-- 
+2.25.0
+
diff --git a/gnu/packages/patches/opencv-fix-build-of-grfmt_jpeg2000.cpp.patch b/gnu/packages/patches/opencv-fix-build-of-grfmt_jpeg2000.cpp.patch
new file mode 100644
index 0000000000..8deb60296a
--- /dev/null
+++ b/gnu/packages/patches/opencv-fix-build-of-grfmt_jpeg2000.cpp.patch
@@ -0,0 +1,39 @@
+From: Tobias Geerinckx-Rice <me@tobias.gr>
+Date: Thu, 13 Aug 2020 15:21:30 +0200
+Subject: [PATCH] gnu: opencv: Fix build with Jasper 2.0.19.
+
+Taken verbatim from upstream: <https://github.com/opencv/opencv/issues/17984>.
+
+From f66fc199a20882c546fa31142e9c0f5a8b3cf983 Mon Sep 17 00:00:00 2001
+From: Florian Jung <flo@windfis.ch>
+Date: Wed, 29 Jul 2020 18:51:55 +0200
+Subject: [PATCH] Fix build of grfmt_jpeg2000.cpp
+
+libjasper has recently changed `jas_matrix_get` from a macro to an inline function
+(389951d071 in https://github.com/jasper-software/jasper), causing the build to fail.
+---
+ modules/imgcodecs/src/grfmt_jpeg2000.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules/imgcodecs/src/grfmt_jpeg2000.cpp b/modules/imgcodecs/src/grfmt_jpeg2000.cpp
+index fe69f80c86f..0f4d28d6f4d 100644
+--- a/modules/imgcodecs/src/grfmt_jpeg2000.cpp
++++ b/modules/imgcodecs/src/grfmt_jpeg2000.cpp
+@@ -377,7 +377,7 @@ bool  Jpeg2KDecoder::readComponent8u( uchar *data, void *_buffer,
+ 
+     for( y = 0; y < yend - ystart; )
+     {
+-        jas_seqent_t* pix_row = &jas_matrix_get( buffer, y / ystep, 0 );
++        jas_seqent_t* pix_row = jas_matrix_getref( buffer, y / ystep, 0 );
+         uchar* dst = data + (y - yoffset) * step - xoffset;
+ 
+         if( xstep == 1 )
+@@ -443,7 +443,7 @@ bool  Jpeg2KDecoder::readComponent16u( unsigned short *data, void *_buffer,
+ 
+     for( y = 0; y < yend - ystart; )
+     {
+-        jas_seqent_t* pix_row = &jas_matrix_get( buffer, y / ystep, 0 );
++        jas_seqent_t* pix_row = jas_matrix_getref( buffer, y / ystep, 0 );
+         ushort* dst = data + (y - yoffset) * step - xoffset;
+ 
+         if( xstep == 1 )
diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm
index 7e6a646c0c..8297a6a315 100644
--- a/gnu/packages/php.scm
+++ b/gnu/packages/php.scm
@@ -60,7 +60,7 @@
 (define-public php
   (package
     (name "php")
-    (version "7.4.8")
+    (version "7.4.9")
     (home-page "https://secure.php.net/")
     (source (origin
               (method url-fetch)
@@ -68,7 +68,7 @@
                                   "php-" version ".tar.xz"))
               (sha256
                (base32
-                "0i9j0yykm6ww021iq89g83qjliq1mqiyhqdn3kq8lbkk1f4l6a34"))
+                "0yy5gms3yk24m6c5z4g0sqhcymzxqpmkh0fgrsyvxlcac153ywr3"))
               (modules '((guix build utils)))
               (snippet
                '(with-directory-excursion "ext"
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 50c36a1e03..e1b1729b43 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -1177,14 +1177,13 @@ language.  It aims to be fast.")
 (define-public python-aenum
   (package
     (name "python-aenum")
-    (version "2.2.3")
+    (version "2.2.4")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aenum" version))
        (sha256
-        (base32
-         "1s3008rklv4n1kvmq6xdbdfyrpl0gf1rhqasmd27s5kwyjmlqcx4"))))
+        (base32 "0r1812bjm72x73pl7y4yhffr4zbdjgxa08avsy4b3di0pqgqv0l1"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
@@ -8290,14 +8289,13 @@ output.")
 (define-public python-crashtest
   (package
     (name "python-crashtest")
-    (version "0.3.0")
+    (version "0.3.1")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "crashtest" version))
         (sha256
-          (base32
-            "056zzbznl3xfnbblfci8lvcam3h7k7va68vi6asrm4q0ck4nrh79"))))
+          (base32 "1p9p7mn8x2j9psc4jxab98897v4i9s4fliyfw8rp8v4bx1n7pjj2"))))
     (build-system python-build-system)
     (home-page "https://github.com/sdispater/crashtest")
     (synopsis "Manage Python errors with ease")
@@ -14392,16 +14390,18 @@ through a Python API.")
 (define-public python-pycosat
   (package
     (name "python-pycosat")
-    (version "0.6.1")
+    (version "0.6.3")
     (source
      (origin
        (method url-fetch)
-       (uri (pypi-uri "pycosat" version))
+       (uri (pypi-uri "pycosat" version ".zip"))
        (sha256
         (base32
-         "1kl3wh1f47rc712n4bmwplbx3fqz3x9i1b587jrbpmvdva4c8f6l"))))
+         "1vg0f2fwcybpdqv92z0hwdl603n2safh3fqvjjxkksd78r4qg6ac"))))
     ;; TODO: Unundle picosat. http://fmv.jku.at/picosat/
     (build-system python-build-system)
+    (native-inputs
+     `(("unzip" ,unzip)))
     (home-page "https://github.com/ContinuumIO/pycosat")
     (synopsis "Bindings to picosat (a SAT solver)")
     (description
@@ -17217,14 +17217,13 @@ based on the CPython 2.7 and 3.7 parsers.")
 (define-public python-typing
   (package
     (name "python-typing")
-    (version "3.7.4.1")
+    (version "3.7.4.3")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "typing" version))
        (sha256
-        (base32
-         "08xs7s5pyq99hbrzw23inczmidz90krvpv9q5p1qrvh6yzrydpwi"))))
+        (base32 "1j8wnz8c9s049w9xbf7ssr1dmgg4rz7vdfq7m880srzxhafgp1qi"))))
     (build-system python-build-system)
     (home-page "https://docs.python.org/3/library/typing.html")
     (synopsis "Type hints for Python")
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 1ebdfce768..f8b7ada1e8 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -513,14 +513,14 @@ ksh, and tcsh.")
 (define-public xonsh
   (package
     (name "xonsh")
-    (version "0.9.18")
+    (version "0.9.19")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "xonsh" version))
         (sha256
           (base32
-            "1h4rrwzwiwkyi9p49sjn97rl39fqq2r23hchzsw0s3fcwa7m8fkj"))
+            "0k7v2d166w74j4pw1v72dskhb1xxn40hz874579v4yyvbpfpazcp"))
         (modules '((guix build utils)))
         (snippet
          `(begin
diff --git a/gnu/packages/storage.scm b/gnu/packages/storage.scm
index b7d4056635..9b41bb240b 100644
--- a/gnu/packages/storage.scm
+++ b/gnu/packages/storage.scm
@@ -55,14 +55,14 @@
 (define-public ceph
   (package
     (name "ceph")
-    (version "14.2.10")
+    (version "14.2.11")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://download.ceph.com/tarballs/ceph-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "0bbs3ag8zav283qpxrrndhvh2z01ykm6126fmwrbc1c5f9jfjq39"))
+                "02mbinm8rk16cwm0x4winmd4488xznkzkyzycxkwlib26yd2xsnz"))
               (patches
                (search-patches "ceph-disable-cpu-optimizations.patch"))
               (modules '((guix build utils)))
diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm
index 9f1c5e349f..b92848e80b 100644
--- a/gnu/packages/sync.scm
+++ b/gnu/packages/sync.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
@@ -108,7 +108,7 @@ distributions.")
 (define-public megatools
   (package
     (name "megatools")
-    (version "1.10.2")
+    (version "1.10.3")
     (source
      (origin
        (method url-fetch)
@@ -116,8 +116,17 @@ distributions.")
                            version ".tar.gz"))
        (sha256
         (base32
-         "12n32w5mqvpk0hvh9yg9qkj9i0g2wp7jp9rq28bnqs94iv3897hp"))))
+         "1nwbalc54iz6616liyxfalf5yafwx0iv6cmqgvg4kz9khqscmhcd"))))
     (build-system gnu-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'install-completions
+           (lambda* (#:key outputs #:allow-other-keys)
+             (install-file "contrib/bash-completion/megatools"
+                           (string-append (assoc-ref outputs "out")
+                                          "/etc/bash_completion.d"))
+             #t)))))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ;; For documentation
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index 81475b4d0f..88ec19d898 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -122,7 +122,7 @@ based command language.")
 (define-public kakoune
   (package
     (name "kakoune")
-    (version "2020.01.16")
+    (version "2020.08.04")
     (source
      (origin
        (method url-fetch)
@@ -130,7 +130,7 @@ based command language.")
                            "releases/download/v" version "/"
                            "kakoune-" version ".tar.bz2"))
        (sha256
-        (base32 "1bhd990gywdwdhxc5dn83wwj418c5cw1ndqycf7k0a02kxlg3550"))))
+        (base32 "08gikjxyvcr415br1g1llzh5pnq737q55yinalb92cgq3yn9yih2"))))
     (build-system gnu-build-system)
     (arguments
      `(#:make-flags
@@ -149,7 +149,7 @@ based command language.")
                                "\";\n        " line)))
              #t))
          (delete 'configure)            ; no configure script
-         ;; kakoune requires us to be in the src/ directory to build
+         ;; kakoune requires us to be in the src/ directory to build.
          (add-before 'build 'chdir
            (lambda _ (chdir "src") #t)))))
     (native-inputs
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 3c765aa887..6ee3442c76 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
-;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2015 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
@@ -46,6 +46,7 @@
   #:use-module (guix build-system go)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system python)
+  #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
@@ -235,14 +236,25 @@ nested include statements).")
         (base32 "0jiybkb2z58wa2msvllnphr4js2hvjvh988pavb3mzkgr6ihwbkr"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:phases
+     `(#:phases
        (modify-phases %standard-phases
          (replace 'bootstrap
-           (lambda _ (invoke "sh" "reconf"))))))
+           (lambda _ (invoke "sh" "reconf")))
+         (add-after 'set-paths 'hide-default-gcc
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((gcc (assoc-ref inputs "gcc")))
+               ;; Remove the default GCC from CPLUS_INCLUDE_PATH to prevent
+               ;; conflicts with the GCC 5 input.
+               (setenv "CPLUS_INCLUDE_PATH"
+                       (string-join
+                        (delete (string-append gcc "/include/c++")
+                                (string-split (getenv "CPLUS_INCLUDE_PATH") #\:))
+                        ":"))
+               #t))))))
     (native-inputs
      `(("autoconf" ,autoconf)
        ("automake" ,automake)
-       ("gcc" ,gcc-5) ;; doesn't build with later versions
+       ("gcc@5" ,gcc-5) ; doesn't build with later versions
        ("libtool" ,libtool)))
     (home-page "https://github.com/agordon/libgtextutils")
     (synopsis "Gordon's text utils library")
@@ -1137,7 +1149,7 @@ This package provides Python bindings.")
 (define-public aha
   (package
     (name "aha")
-    (version "0.5")
+    (version "0.5.1")
     (source
      (origin
        (method git-fetch)
@@ -1145,19 +1157,17 @@ This package provides Python bindings.")
              (url "https://github.com/theZiz/aha")
              (commit version)))
        (sha256
-        (base32
-         "0byml4rmpiaalwx69jcixl3yvpvwmwiss1jzgsqwshilb2p4qnmz"))
+        (base32 "1gywad0rvvz3c5balz8cxsnx0562hj2ngzqyr8zsy2mb4pn0lpgv"))
        (file-name (git-file-name name version))))
     (build-system gnu-build-system)
     (arguments
-     '(#:phases
+     `(#:phases
        (modify-phases %standard-phases
          (delete 'configure))
-       #:make-flags (list "CC=gcc"
+       #:make-flags (list (string-append "CC=" ,(cc-for-target))
                           (string-append "PREFIX="
                                          (assoc-ref %outputs "out")))
-       ;; no check target
-       #:tests? #f))
+       #:tests? #f))                    ; no test suite
     (home-page "https://github.com/theZiz/aha")
     (synopsis "Converts terminal escape sequences to HTML")
     (description "@command{aha} (Ansi Html Adapter) converts ANSI escape sequences
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 933c868ee6..44326420a8 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -818,14 +818,14 @@ SMPTE 314M.")
 (define-public libmatroska
   (package
     (name "libmatroska")
-    (version "1.6.0")
+    (version "1.6.2")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://dl.matroska.org/downloads/"
                            "libmatroska/libmatroska-" version ".tar.xz"))
        (sha256
-        (base32 "0cs03ghf7h65yvv8yf915bx4a47i6d3w2mjbs5zpz000spmrrj7y"))))
+        (base32 "140r3q6n4a0n11zaf76lvyxd9gp435dgm8gn7mj0gar2hjm7ji5w"))))
     (build-system cmake-build-system)
     (inputs
      `(("libebml" ,libebml)))
@@ -3067,7 +3067,7 @@ practically any type of media.")
 (define-public libmediainfo
   (package
     (name "libmediainfo")
-    (version "20.03")
+    (version "20.08")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://mediaarea.net/download/source/"
@@ -3075,7 +3075,7 @@ practically any type of media.")
                                   name "_" version ".tar.xz"))
               (sha256
                (base32
-                "0wkzj5s34m8dvy7hif4h8f90q8ncrzd930gij1zzw3h5nw732j38"))))
+                "19n8h9jq42b6r3dbag77fzwfksfywszmzpi636w87fvc1nqldlqj"))))
     ;; TODO add a Big Buck Bunny webm for tests.
     (native-inputs
      `(("autoconf" ,autoconf)
@@ -3125,7 +3125,7 @@ MPEG-2, MPEG-4, DVD (VOB)...
 (define-public mediainfo
   (package
     (name "mediainfo")
-    (version "20.03")
+    (version "20.08")
     (source (origin
               (method url-fetch)
               ;; Warning: This source has proved unreliable 1 time at least.
@@ -3136,7 +3136,7 @@ MPEG-2, MPEG-4, DVD (VOB)...
                                   name "_" version ".tar.xz"))
               (sha256
                (base32
-                "1f1shnycf0f1fwka9k9s250l228xjkg0k4k73h8bpld8msighgnw"))))
+                "1baf2dj5s3g1x4ssqli1b2r1203syk42m09zhp36qcinmfixv11l"))))
     (native-inputs
      `(("autoconf" ,autoconf)
        ("automake" ,automake)
diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index cb249dbc48..e7a62ddb80 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -215,7 +215,7 @@ features including, tables, builtin image display, bookmarks, SSL and more.")
 (define-public luakit
   (package
     (name "luakit")
-    (version "2.1")
+    (version "2.2")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -224,7 +224,7 @@ features including, tables, builtin image display, bookmarks, SSL and more.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1qa90caxv1k6ak88fn0a7n7h0c4iv8szw6zn2axch8ig83i86az2"))))
+                "0km5nxn6innzn8pfsvlkxvfj2z5g46fp6dy5bnmaklbn13mqlcrn"))))
     (inputs
      `(("lua-5.1" ,lua-5.1)
        ("gtk+" ,gtk+)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index a0900c686e..5f97c3c592 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -158,14 +158,14 @@
 (define-public httpd
   (package
     (name "httpd")
-    (version "2.4.43")
+    (version "2.4.46")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://apache/httpd/httpd-"
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "0hqgw47r3p3521ygkkqs8s30s5crm683081avj6330gwncm6b5x4"))))
+               "1sj1rwgbcjgkzac3ybjy7j68c9b3dv3ap71m48mrjhf6w7vds3kl"))))
     (build-system gnu-build-system)
     (native-inputs `(("pcre" ,pcre "bin")))       ;for 'pcre-config'
     (inputs `(("apr" ,apr)
@@ -231,14 +231,14 @@ Interface} specification.")
     ;; ’stable’ and recommends that “in general you deploy the NGINX mainline
     ;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/)
     ;; Consider updating the nginx-documentation package together with this one.
-    (version "1.19.1")
+    (version "1.19.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://nginx.org/download/nginx-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "14jlcn8gywa4r9brmm41ddg2dczskslnn4dnr5xmqg7dcin7f150"))))
+                "0wr4ss4gld7x717m4j3a6l6f7ijblrrd55y563lkwhvr7sqpn7vw"))))
     (build-system gnu-build-system)
     (inputs `(("openssl" ,openssl)
               ("pcre" ,pcre)
@@ -362,9 +362,9 @@ documentation.")
 
 (define-public nginx-documentation
   ;; This documentation should be relevant for the current nginx package.
-  (let ((version "1.19.0")
-        (revision 2549)
-        (changeset "c13a55aae487"))
+  (let ((version "1.19.2")
+        (revision 2581)
+        (changeset "324ca14c3003"))
     (package
       (name "nginx-documentation")
       (version (simple-format #f "~A-~A-~A" version revision changeset))
@@ -376,7 +376,7 @@ documentation.")
                (file-name (string-append name "-" version))
                (sha256
                 (base32
-                 "0vwwvk6wf8f6c6n6yffmya9a287s6dbx1p739hdl3hwxfyh2ygc5"))))
+                 "15bdbi6cjqhx8lqsyr3hnwagq2r80bsyh2im80ajmbfv7y47djqi"))))
       (build-system gnu-build-system)
       (arguments
        '(#:tests? #f                    ; no test suite
@@ -2520,15 +2520,14 @@ stash data in JSON format.")
 (define-public perl-catalyst-view-tt
   (package
     (name "perl-catalyst-view-tt")
-    (version "0.44")
+    (version "0.45")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
+       (uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
                            "Catalyst-View-TT-" version ".tar.gz"))
      (sha256
-      (base32
-       "06d1zg4nbb6kcyjbnyxrkf8z4zlscxr8650d94f7187jygfl8rvh"))))
+      (base32 "0jzgpkgq5pwq82zlb0nykdyk40dfpsyn9ilz91d0wpixgi9i5pr8"))))
   (build-system perl-build-system)
   (propagated-inputs
    `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 2ffba9e5a2..28c3a3bac6 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -35,6 +35,7 @@
 ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
 ;;; Copyright © 2020 Boris A. Dekshteyn <harlequin78@gmail.com>
 ;;; Copyright © 2020 Marcin Karpezo <sirmacik@wioo.waw.pl>
+;;; Copyright © 2020 EuAndreh <eu@euandre.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -117,7 +118,7 @@
 (define-public bspwm
   (package
     (name "bspwm")
-    (version "0.9.9")
+    (version "0.9.10")
     (source
      (origin
        (method git-fetch)
@@ -126,7 +127,7 @@
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1i7crmljk1vra1r6alxvj6lqqailjjcv0llyg7a0gm23rbv4a42g"))))
+        (base32 "0qlv7b4c2mmjfd65y100d11x8iqyg5f6lfiws3cgmpjidhdygnxc"))))
     (build-system gnu-build-system)
     (inputs
      `(("libxcb" ,libxcb)
@@ -743,6 +744,29 @@ is also usable with any other window manager.  While xmobar is written in
 Haskell, no knowledge of the language is required to install and use it.")
     (license license:bsd-3)))
 
+(define-public yeganesh
+  (package
+    (name "yeganesh")
+    (version "2.4")
+    (source
+     (origin
+
+       (method url-fetch)
+       (uri (string-append "http://dmwit.com/yeganesh/yeganesh-" version ".tar.gz"))
+       (sha256
+        (base32 "04djfyjab3c5y9z9x8zd0xcx0jyy35zq7cl9ddr4ppf6k5ky6iky"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-strict" ,ghc-strict)
+       ("ghc-xdg-basedir" ,ghc-xdg-basedir)))
+    (home-page "http://dmwit.com/yeganesh/")
+    (synopsis "Small wrapper around dmenu")
+    (description "@code{yeganesh} is a small wrapper around demnu.  Like
+dmenu, it accepts input on stdin and writes the chosen result on stdout.
+Unlike dmenu, it mangles the input before it presents its choices.  In
+particular, it displays commonly-chosen options before uncommon ones.")
+    (license license:bsd-3)))
+
 (define-public ghc-xmonad-contrib
   (package
     (name "ghc-xmonad-contrib")