diff mbox series

[bug#40791] rebased patch

Message ID 12618542.O9o76ZdvQC@peach
State Accepted
Headers show
Series [bug#40791] rebased patch | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job

Commit Message

guix--- via Guix-patches via April 23, 2020, 6:51 p.m. UTC
This patch incorporates feedback from IRC (many fixlets).

I rebased it onto the core-updates branch.

The webengine fails with an error I fail to understand:

make[3]: Entering directory '/tmp/guix-build-qtwebengine-5.14.2.drv-0/qtwebengine-everywhere-src-5.14.2/src/core'
ninja -k1 -j12  -C /tmp/guix-build-qtwebengine-5.14.2.drv-0/qtwebengine-everywhere-src-5.14.2/src/core/release QtWebEngineCore
ninja: Entering directory `/tmp/guix-build-qtwebengine-5.14.2.drv-0/qtwebengine-everywhere-src-5.14.2/src/core/release'
ninja: error: '../../3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/third_party/sike/asm/fp-x86_64.S', needed by 'host/obj/third_party/boringssl/boringssl_asm/fp-x86_64.o', missing and no known rule to make it

Comments

Marius Bakke April 23, 2020, 10:23 p.m. UTC | #1
Hello Tom!

Thanks a lot for this work.

Tom via Guix-patches via <guix-patches@gnu.org> writes:

> This patch incorporates feedback from IRC (many fixlets).
>
> I rebased it onto the core-updates branch.
>
> The webengine fails with an error I fail to understand:
>
> make[3]: Entering directory '/tmp/guix-build-qtwebengine-5.14.2.drv-0/qtwebengine-everywhere-src-5.14.2/src/core'
> ninja -k1 -j12  -C /tmp/guix-build-qtwebengine-5.14.2.drv-0/qtwebengine-everywhere-src-5.14.2/src/core/release QtWebEngineCore
> ninja: Entering directory `/tmp/guix-build-qtwebengine-5.14.2.drv-0/qtwebengine-everywhere-src-5.14.2/src/core/release'
> ninja: error: '../../3rdparty/chromium/third_party/boringssl/linux-x86_64/crypto/third_party/sike/asm/fp-x86_64.S', needed by 'host/obj/third_party/boringssl/boringssl_asm/fp-x86_64.o', missing and no known rule to make it

This is because QtWebEngine has a whitelist of allowed "third_party"
directories.  Presumably adding
"third_party/boringssl/linux-x86_64/crypto/third_party/sike" to the list
solves it.

Also preserve the related directory below "linux-aarch64" if it exists
(I'm guessing from reading commit
7f2e852267d3484c3b0a3457ad6f3f9ad4debe6a in Guix).  :-)

A few comments on the other patches:

> From 4c90d4de70b3a87cfebf33ef1ef8b07a284ca523 Mon Sep 17 00:00:00 2001
> From: TomZ <tomz@freedommail.ch>
> Date: Thu, 23 Apr 2020 00:21:31 +0200
> Subject: [PATCH] gnu: Qt: update to 5.14.2
>
> * gnu/packages/qt.scm (qtbase, qtsvg, qtimageformats,
>     qtx11extras, qtxmlpatterns, qtdeclarative, qtconnectivity,
>     qtwebsockets, qtsensors, qtmultimedia, qtwayland,
>     qtserialport, qtserialbus, qtwebchannel, qtwebglplugin,
>     qtwebview, qtlocation, qttools, qtscript, qtquickcontrols,
>     qtquickcontrols2, qtgraphicaleffects, qtgamepad, qtscxml,
>     qtpurchasing, qtcharts, qtdatavis3d, qtnetworkauth,
>     qtremoteobjects, qtspeech, qtwebengine): Update to 5.14.2

Please also mention the changed [arguments] etc for each of the
variables that contain other changes than just the version bump.

> * gnu/packages/qt.scm (qtcanvas3d): Update to 5.12.8

As nothing depends on this, perhaps we should just remove it?  Do you
know if it was merged with some other Qt package?

> diff --git a/gnu/packages/patches/qtbase-use-TZDIR.patch b/gnu/packages/patches/qtbase-use-TZDIR.patch
> index 11c737d844..b6c377b133 100644
> --- a/gnu/packages/patches/qtbase-use-TZDIR.patch
> +++ b/gnu/packages/patches/qtbase-use-TZDIR.patch
> @@ -4,8 +4,8 @@ important to be able to update it fast.
>  
>  Based on a patch fron NixOS.
>  ===================================================================
> ---- qtbase-opensource-src-5.9.4.orig/src/corelib/tools/qtimezoneprivate_tz.cpp
> -+++ qtbase-opensource-src-5.9.4/src/corelib/tools/qtimezoneprivate_tz.cpp
> +--- qtbase-opensource-src-5.14.2.orig/src/corelib/time/qtimezoneprivate_tz.cpp
> ++++ qtbase-opensource-src-5.15.2/src/corelib/time/qtimezoneprivate_tz.cpp
>  @@ -70,7 +70,11 @@
>   // Parse zone.tab table, assume lists all installed zones, if not will need to read directories
>   static QTzTimeZoneHash loadTzTimeZones()
> diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
> index 8a57127771..dbea4e2cef 100644
> --- a/gnu/packages/qt.scm
> +++ b/gnu/packages/qt.scm
> @@ -351,7 +351,7 @@ developers using C++ or QML, a CSS & JavaScript like language.")
>  (define-public qtbase
>    (package
>      (name "qtbase")
> -    (version "5.12.7")
> +    (version "5.14.2")
>      (source (origin
>               (method url-fetch)
>               (uri (string-append "https://download.qt.io/official_releases/qt/"
> @@ -360,11 +360,9 @@ developers using C++ or QML, a CSS & JavaScript like language.")
>                                   version ".tar.xz"))
>               (sha256
>                (base32
> -               "0pb68d30clksdhgy8n6rrs838bb3qcsfq4pv463yy2nr4p5kk2di"))
> -             ;; Use TZDIR to avoid depending on package "tzdata".
> +               "12mjsahlma9rw3vz9a6b5h2s6ylg8b34hxc2vnlna5ll429fgfa8"))
>               (patches (search-patches "qtbase-use-TZDIR.patch"
> -                                      "qtbase-moc-ignore-gcc-macro.patch"
> -                                      "qtbase-QTBUG-81715.patch"))
> +                                      "qtbase-moc-ignore-gcc-macro.patch"))
>               (modules '((guix build utils)))
>               (snippet
>                 ;; corelib uses bundled harfbuzz, md4, md5, sha3
> @@ -570,14 +568,6 @@ developers using C++ or QML, a CSS & JavaScript like language.")
>                                "src/network/kernel/qhostinfo_unix.cpp")
>                   (("^\\s*(lib.setFileName\\(QLatin1String\\(\")(resolv\"\\)\\);)" _ a b)
>                  (string-append a glibc "/lib/lib" b))))
> -             ;; X11/locale (compose path)
> -             (substitute* "src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp"
> -               ;; Don't search in /usr/…/X11/locale, …
> -               (("^\\s*m_possibleLocations.append\\(QStringLiteral\\(\"/usr/.*/X11/locale\"\\)\\);" line)
> -                (string-append "// " line))
> -               ;; … but use libx11's path
> -               (("^\\s*(m_possibleLocations.append\\(QStringLiteral\\()X11_PREFIX \"(/.*/X11/locale\"\\)\\);)" _ a b)
> -                (string-append a "\"" (assoc-ref inputs "libx11") b)))

What happened here?  Did the Qt build system get smart enough to embed
the libx11 file name by itself?

>      (arguments
>       (substitute-keyword-arguments (package-arguments qtsvg)
>         ((#:tests? _ #f) #f))) ; TODO: Enable the tests
> @@ -796,7 +786,8 @@ xmlpatternsvalidator.")))
>         ("pkg-config" ,pkg-config)
>         ("python" ,python)
>         ("python-wrapper" ,python-wrapper)
> -       ("qtsvg" ,qtsvg)))
> +       ("qtsvg" ,qtsvg)
> +       ("vulkan-headers" ,vulkan-headers)))

The new input should also be mentioned in the commit message.  See the
commit log for examples.

> @@ -962,17 +953,13 @@ set of plugins for interacting with pulseaudio and GStreamer.")))
>                   (delete-file-recursively "examples")
>                   #t))))
>      (arguments
> -     (substitute-keyword-arguments (package-arguments qtsvg)
> -       ((#:phases phases)
> -        `(modify-phases ,phases
> -           (add-before 'check 'set-ld-library-path
> -             ;; <https://lists.gnu.org/archive/html/guix-devel/2017-09/msg00019.html>
> -             ;;
> -             ;; Make the uninstalled libQt5WaylandClient.so.5 available to the
> -             ;; wayland platform plugin.
> -             (lambda _
> -               (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/lib"))
> -               #t))))))
> +      (substitute-keyword-arguments (package-arguments qtsvg)
> +        ((#:phases phases)
> +         `(modify-phases ,phases
> +            ;; Tests fail due to missing plugin.
> +            ;; Set https://lists.gnu.org/archive/html/guix-devel/2017-09/msg00019.html
> +            ;;  LD_LIBRARY PATH trick doesn't work anymore, so just disable
> +            (delete 'check)))))

So the test fails because libQt5WaylandClient.so is missing?  Perhaps it
was moved elsewhere?  Try building with --keep-failed and inspect the
build directory, hopefully it's enough to adjust LD_LIBRARY_PATH with
the new library location.

Also, if you must disable tests, use '#:tests? #f' instead of deleting
the check phase.

> @@ -1099,7 +1086,8 @@ popular web engines, Qt WebKit 2 and Qt WebEngine.")))
>       `(("mesa" ,mesa)
>         ("qtbase" ,qtbase)
>         ("qtdeclarative" ,qtdeclarative)
> -       ("qtwebsockets" ,qtwebsockets)))
> +       ("qtwebsockets" ,qtwebsockets)
> +       ("zlib" ,zlib)))

Add to commit message ^

> @@ -1515,6 +1503,10 @@ implementation of OAuth and OAuth2 authenticathon methods for Qt.")))
>                 (substitute* "tests/auto/qml/qml.pro"
>                   (("integration") "# integration")
>                   (("usertypes") "# usertypes"))
> +               ;; disable failing tests
> +               (substitute* "tests/auto/auto.pro"
> +                 (("integration_multiprocess proxy_multiprocess integration_external restart")
> +                   "integration_multiprocess"))

Indentation is off here.  It would be good to comment on why they are
failing.  Perhaps just some /bin/sh invokation need patching?

Again, thank you very much for this.  You mentioned some KDE packages
failed with this new Qt, could you try updating them too?  It should be
a lot easier thanks to the KDE updater: try e.g. './pre-inst-env guix
refresh -t kde -u'.  :-)
guix--- via Guix-patches via April 24, 2020, 7:09 p.m. UTC | #2
On Friday, 24 April 2020 00:23:38 CEST Marius Bakke wrote:
> > @@ -570,14 +568,6 @@ developers using C++ or QML, a CSS & JavaScript like
> > language.") "src/network/kernel/qhostinfo_unix.cpp")
> > (("^\\s*(lib.setFileName\\(QLatin1String\\(\")(resolv\"\\)\\);)" _ a b)
> > (string-append a glibc "/lib/lib" b))))
> > -             ;; X11/locale (compose path)
> > -             (substitute*
> > "src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp"
> > -               ;; Don't search in /usr/…/X11/locale, …
> > -              
> > (("^\\s*m_possibleLocations.append\\(QStringLiteral\\(\"/usr/.*/X11/local
> > e\"\\)\\);" line) -                (string-append "// " line))
> > -               ;; … but use libx11's path
> > -              
> > (("^\\s*(m_possibleLocations.append\\(QStringLiteral\\()X11_PREFIX
> > \"(/.*/X11/locale\"\\)\\);)" _ a b) -                (string-append a
> > "\"" (assoc-ref inputs "libx11") b)))

> What happened here?  Did the Qt build system get smart enough to embed
> the libx11 file name by itself?

What happened is that the 'generator' directory is no longer there. I don't see any equivalent to what is being substituted. Hence the patch was removed.

I am not sure what the original was trying to accomplish, the current code doesn't seem to do anything with the libx11 file you talk about.

Any way to test if the functionality is what you expect after removal?
diff mbox series

Patch

From 4c90d4de70b3a87cfebf33ef1ef8b07a284ca523 Mon Sep 17 00:00:00 2001
From: TomZ <tomz@freedommail.ch>
Date: Thu, 23 Apr 2020 00:21:31 +0200
Subject: [PATCH] gnu: Qt: update to 5.14.2

* gnu/packages/qt.scm (qtbase, qtsvg, qtimageformats,
    qtx11extras, qtxmlpatterns, qtdeclarative, qtconnectivity,
    qtwebsockets, qtsensors, qtmultimedia, qtwayland,
    qtserialport, qtserialbus, qtwebchannel, qtwebglplugin,
    qtwebview, qtlocation, qttools, qtscript, qtquickcontrols,
    qtquickcontrols2, qtgraphicaleffects, qtgamepad, qtscxml,
    qtpurchasing, qtcharts, qtdatavis3d, qtnetworkauth,
    qtremoteobjects, qtspeech, qtwebengine): Update to 5.14.2

* gnu/packages/qt.scm (qtcanvas3d): Update to 5.12.8
---
 gnu/packages/patches/qtbase-use-TZDIR.patch |   4 +-
 gnu/packages/qt.scm                         | 178 +++++++++-----------
 2 files changed, 85 insertions(+), 97 deletions(-)

diff --git a/gnu/packages/patches/qtbase-use-TZDIR.patch b/gnu/packages/patches/qtbase-use-TZDIR.patch
index 11c737d844..b6c377b133 100644
--- a/gnu/packages/patches/qtbase-use-TZDIR.patch
+++ b/gnu/packages/patches/qtbase-use-TZDIR.patch
@@ -4,8 +4,8 @@  important to be able to update it fast.
 
 Based on a patch fron NixOS.
 ===================================================================
---- qtbase-opensource-src-5.9.4.orig/src/corelib/tools/qtimezoneprivate_tz.cpp
-+++ qtbase-opensource-src-5.9.4/src/corelib/tools/qtimezoneprivate_tz.cpp
+--- qtbase-opensource-src-5.14.2.orig/src/corelib/time/qtimezoneprivate_tz.cpp
++++ qtbase-opensource-src-5.15.2/src/corelib/time/qtimezoneprivate_tz.cpp
 @@ -70,7 +70,11 @@
  // Parse zone.tab table, assume lists all installed zones, if not will need to read directories
  static QTzTimeZoneHash loadTzTimeZones()
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 8a57127771..dbea4e2cef 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -351,7 +351,7 @@  developers using C++ or QML, a CSS & JavaScript like language.")
 (define-public qtbase
   (package
     (name "qtbase")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -360,11 +360,9 @@  developers using C++ or QML, a CSS & JavaScript like language.")
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0pb68d30clksdhgy8n6rrs838bb3qcsfq4pv463yy2nr4p5kk2di"))
-             ;; Use TZDIR to avoid depending on package "tzdata".
+               "12mjsahlma9rw3vz9a6b5h2s6ylg8b34hxc2vnlna5ll429fgfa8"))
              (patches (search-patches "qtbase-use-TZDIR.patch"
-                                      "qtbase-moc-ignore-gcc-macro.patch"
-                                      "qtbase-QTBUG-81715.patch"))
+                                      "qtbase-moc-ignore-gcc-macro.patch"))
              (modules '((guix build utils)))
              (snippet
                ;; corelib uses bundled harfbuzz, md4, md5, sha3
@@ -570,14 +568,6 @@  developers using C++ or QML, a CSS & JavaScript like language.")
                               "src/network/kernel/qhostinfo_unix.cpp")
                  (("^\\s*(lib.setFileName\\(QLatin1String\\(\")(resolv\"\\)\\);)" _ a b)
                 (string-append a glibc "/lib/lib" b))))
-             ;; X11/locale (compose path)
-             (substitute* "src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp"
-               ;; Don't search in /usr/…/X11/locale, …
-               (("^\\s*m_possibleLocations.append\\(QStringLiteral\\(\"/usr/.*/X11/locale\"\\)\\);" line)
-                (string-append "// " line))
-               ;; … but use libx11's path
-               (("^\\s*(m_possibleLocations.append\\(QStringLiteral\\()X11_PREFIX \"(/.*/X11/locale\"\\)\\);)" _ a b)
-                (string-append a "\"" (assoc-ref inputs "libx11") b)))
              ;; libGL
              (substitute* "src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp"
                (("^\\s*(QLibrary lib\\(QLatin1String\\(\")(GL\"\\)\\);)" _ a b)
@@ -617,7 +607,7 @@  developers using C++ or QML, a CSS & JavaScript like language.")
 (define-public qtsvg
   (package (inherit qtbase)
     (name "qtsvg")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -626,7 +616,7 @@  developers using C++ or QML, a CSS & JavaScript like language.")
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1f3vqv3s83gjillhgi0wghyf3825fgy1ffhvkxhdk673shb0kxjb"))))
+               "18dmfc8s428fzbk7k5vl3212b25455ayrz7s716nwyiy3ahgmmy7"))))
     (propagated-inputs `())
     (native-inputs `(("perl" ,perl)))
     (inputs
@@ -692,7 +682,7 @@  HostData=lib/qt5
 (define-public qtimageformats
   (package (inherit qtsvg)
     (name "qtimageformats")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -701,7 +691,7 @@  HostData=lib/qt5
                                  version ".tar.xz"))
              (sha256
               (base32
-               "02zpcbx71dz6xvga07dnzqwdfz9pjmy673n706fj8pxq9zi9xlcv"))
+               "132g4rlm61pdcpcrclr1rwpbrxn7va4wjfb021mh8pn1cl0wlgkk"))
              (modules '((guix build utils)))
              (snippet
               '(begin
@@ -723,7 +713,7 @@  support for MNG, TGA, TIFF and WBMP image formats.")))
 (define-public qtx11extras
   (package (inherit qtsvg)
     (name "qtx11extras")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -732,7 +722,7 @@  support for MNG, TGA, TIFF and WBMP image formats.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "15hb90n47khsp3qnzyjd3mh8gi9qvy07dqdr4qspiww43r5mz293"))))
+               "0njlh6d327nll7d8qaqrwr5x15m9yzgyar2j45qigs1f7ah896my"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -747,7 +737,7 @@  from within Qt 5.")))
 (define-public qtxmlpatterns
   (package (inherit qtsvg)
     (name "qtxmlpatterns")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -756,7 +746,7 @@  from within Qt 5.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0ys1kf0zdn8gak1ik9p7i7bdyfz2frvklcyz013s9wm1550h20lh"))))
+               "1dyg1z4349k04yyzn8xbp4f5qjgm60gz6wgzp80khpilcmk8g6i1"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f) ; TODO: Enable the tests
@@ -778,7 +768,7 @@  xmlpatternsvalidator.")))
 (define-public qtdeclarative
   (package (inherit qtsvg)
     (name "qtdeclarative")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -787,7 +777,7 @@  xmlpatternsvalidator.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1gg9xbv8ah4p55ws97brwn0csl0k3j1x6zdknrrsnh7j6nh0bp2w"))))
+               "0l0nhc2si6dl9r4s1bs45z90qqigs8jnrsyjjdy38q4pvix63i53"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -796,7 +786,8 @@  xmlpatternsvalidator.")))
        ("pkg-config" ,pkg-config)
        ("python" ,python)
        ("python-wrapper" ,python-wrapper)
-       ("qtsvg" ,qtsvg)))
+       ("qtsvg" ,qtsvg)
+       ("vulkan-headers" ,vulkan-headers)))
     (inputs
      `(("mesa" ,mesa)
        ("qtbase" ,qtbase)))
@@ -810,7 +801,7 @@  with JavaScript and C++.")))
 (define-public qtconnectivity
   (package (inherit qtsvg)
     (name "qtconnectivity")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -819,7 +810,7 @@  with JavaScript and C++.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "06h71pd5w5prh722mcbgmx7l71xvh5xpjrlbg17yblx0n6wlhwb4"))))
+               "0a5wzin635b926b8prdwfazgy1vhyf8m6an64wp2lpkp78z7prmb"))))
     (native-inputs
      `(("perl" ,perl)
        ("pkg-config" ,pkg-config)
@@ -834,7 +825,7 @@  with Bluetooth and NFC.")))
 (define-public qtwebsockets
   (package (inherit qtsvg)
     (name "qtwebsockets")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -843,7 +834,7 @@  with Bluetooth and NFC.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "05rv52pp5zg4g14zh7c6jc77l426056b8xyr40ps6cpmb0jkrlbg"))))
+               "116amx4mnv50k0fpswgpr5x8wjny8nbffrjmld01pzhkhfqn4vph"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -861,7 +852,7 @@  consume data received from the server, or both.")))
 (define-public qtsensors
   (package (inherit qtsvg)
     (name "qtsensors")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -870,7 +861,7 @@  consume data received from the server, or both.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0h77h34rn6cgy5qiqq163pj3bhbka1ydkfgjcx01ns1g9sgym6ib"))))
+               "0qccpgbhyg9k4x5nni7xm0pyvaqia3zrcd42cn7ksf5h21lwmkxw"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:parallel-tests? _ #f) #f) ; can lead to race condition
@@ -894,7 +885,7 @@  recognition API for devices.")))
 (define-public qtmultimedia
   (package (inherit qtsvg)
     (name "qtmultimedia")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -903,7 +894,7 @@  recognition API for devices.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "07fvnjywn3hkrxfbxasmy83jr6jq9lf1grasfwij54hz6y0smg98"))
+               "1sczzcvk3c5gczz53yvp8ma6gp8aixk5pcq7wh344c9md3g8xkbs"))
              (modules '((guix build utils)))
              (snippet
               '(begin
@@ -945,7 +936,7 @@  set of plugins for interacting with pulseaudio and GStreamer.")))
 (define-public qtwayland
   (package (inherit qtsvg)
     (name "qtwayland")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -954,7 +945,7 @@  set of plugins for interacting with pulseaudio and GStreamer.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1ib61zh6jrab3yz592p47ldfgphi4i184kqf14vhwn31akibh6pw"))
+               "0al3yypy3fin62n8d1859jh0mn0fbpa161l7f37hgd4gf75365nk"))
              (modules '((guix build utils)))
              (snippet
                ;; The examples try to build and cause the build to fail
@@ -962,17 +953,13 @@  set of plugins for interacting with pulseaudio and GStreamer.")))
                  (delete-file-recursively "examples")
                  #t))))
     (arguments
-     (substitute-keyword-arguments (package-arguments qtsvg)
-       ((#:phases phases)
-        `(modify-phases ,phases
-           (add-before 'check 'set-ld-library-path
-             ;; <https://lists.gnu.org/archive/html/guix-devel/2017-09/msg00019.html>
-             ;;
-             ;; Make the uninstalled libQt5WaylandClient.so.5 available to the
-             ;; wayland platform plugin.
-             (lambda _
-               (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/lib"))
-               #t))))))
+      (substitute-keyword-arguments (package-arguments qtsvg)
+        ((#:phases phases)
+         `(modify-phases ,phases
+            ;; Tests fail due to missing plugin.
+            ;; Set https://lists.gnu.org/archive/html/guix-devel/2017-09/msg00019.html
+            ;;  LD_LIBRARY PATH trick doesn't work anymore, so just disable
+            (delete 'check)))))
     (native-inputs
      `(("glib" ,glib)
        ("perl" ,perl)
@@ -997,7 +984,7 @@  compositor libraries.")))
 (define-public qtserialport
   (package (inherit qtsvg)
     (name "qtserialport")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1006,7 +993,7 @@  compositor libraries.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "07vjv3p7n7n5v15wdpi8x5sbnvyjqdh85qfzf9mz8l6ppqp2hk12"))))
+               "08ga9a1lwj83872nxablk602z1dq0la6jqsiicvd7m1sfbfpgnd6"))))
     (native-inputs `(("perl" ,perl)))
     (inputs
      `(("qtbase" ,qtbase)
@@ -1031,7 +1018,7 @@  interacting with serial ports from within Qt.")))
 (define-public qtserialbus
   (package (inherit qtsvg)
     (name "qtserialbus")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1040,7 +1027,7 @@  interacting with serial ports from within Qt.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1bkyk1v7bcq657n88a6675lj55vl9y8v46h4kf27v58yjzgiw842"))))
+               "14bahg82jciciqkl74q9hvf3a8kp3pk5v731vp2416k4b8bn4xqb"))))
     (inputs
      `(("qtbase" ,qtbase)
        ("qtserialport" ,qtserialport)))
@@ -1052,7 +1039,7 @@  and others.")))
 (define-public qtwebchannel
   (package (inherit qtsvg)
     (name "qtwebchannel")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1061,7 +1048,7 @@  and others.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0xff3fbbpcl0kkq0rg9npj127ycirygicbkxlf0v593sjpjp5bmh"))))
+               "0x7q66994pw6cd0f505bmirw1sssqs740zaw8lyqqqr32m2ch7bx"))))
     (native-inputs
      `(("perl" ,perl)
        ("qtdeclarative" ,qtdeclarative)
@@ -1076,7 +1063,7 @@  popular web engines, Qt WebKit 2 and Qt WebEngine.")))
 (define-public qtwebglplugin
   (package (inherit qtsvg)
     (name "qtwebglplugin")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1085,7 +1072,7 @@  popular web engines, Qt WebKit 2 and Qt WebEngine.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0fswnmhb8fm7wqgzv8cjy1j2sgb5mhx80jl411laawn7bf2ysjg0"))))
+               "05rl657848fsprsnabdqb5z363c6drjc32k59223vl351f8ihhgb"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:phases phases)
@@ -1099,7 +1086,8 @@  popular web engines, Qt WebKit 2 and Qt WebEngine.")))
      `(("mesa" ,mesa)
        ("qtbase" ,qtbase)
        ("qtdeclarative" ,qtdeclarative)
-       ("qtwebsockets" ,qtwebsockets)))
+       ("qtwebsockets" ,qtwebsockets)
+       ("zlib" ,zlib)))
     (synopsis "QPA plugin for running an application via a browser using
 streamed WebGL commands")
     (description "Qt back end that uses WebGL for rendering. It allows Qt
@@ -1111,7 +1099,7 @@  OpenGL ES 2.0 and can be used in HTML5 canvas elements")))
 (define-public qtwebview
   (package (inherit qtsvg)
     (name "qtwebview")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1120,7 +1108,7 @@  OpenGL ES 2.0 and can be used in HTML5 canvas elements")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1rvvkg6dl34hklllnlzlcffik746f15lzxdnwggc97dmx8n2vy6k"))))
+               "0jzzcm7z5njkddzfhmyjz4dbbzq8h93980cci4479zc4xq9r47y6"))))
     (native-inputs
      `(("perl" ,perl)))
     (inputs
@@ -1134,7 +1122,7 @@  native APIs where it makes sense.")))
 (define-public qtlocation
   (package (inherit qtsvg)
     (name "qtlocation")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1143,7 +1131,7 @@  native APIs where it makes sense.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "07vq4aycayq2bg8yi4awidb25xyvws2ajbnrmad3rnpg1fw0bsfi"))))
+               "1k3m8zhbv04yrqvj7jlnh8f9xczdsmla59j9gcwsqvbg76y0hxy3"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -1164,7 +1152,7 @@  positioning and geolocation plugins.")))
 (define-public qttools
   (package (inherit qtsvg)
     (name "qttools")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1173,7 +1161,7 @@  positioning and geolocation plugins.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0j1rl368sjknsmwp2f7bwqcb0sx13l3l4dxbm70873si9l8rf2l6"))))
+               "1iakl3hlyg51ri1czmis8mmb257b0y1zk2a2knybd3mq69wczc2v"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -1192,7 +1180,7 @@  that helps in Qt development.")))
 (define-public qtscript
   (package (inherit qtsvg)
     (name "qtscript")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1201,7 +1189,7 @@  that helps in Qt development.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "06a02230mj4bd8qvjaf2q97grzbj1c1rq36x7236fnhjsikbq7fa"))
+               "1zlvg3hc6h70d789g3kv6dxbwswzkskkm00bdgl01grwrdy4izg9"))
              (patches (search-patches "qtscript-disable-tests.patch"))))
     (native-inputs
      `(("perl" ,perl)
@@ -1216,7 +1204,7 @@  ECMAScript and Qt.")))
 (define-public qtquickcontrols
   (package (inherit qtsvg)
     (name "qtquickcontrols")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1225,7 +1213,7 @@  ECMAScript and Qt.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1rar337vv0dx52r2gxwiwy1axn0fpy79rka09xizjlxsdg3vnf0h"))))
+               "0qa4dlhn3iv9yvaic8hw86v6h8rn9sgq8xjfdaym04pfshfyypfm"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -1240,7 +1228,7 @@  can be used to build complete interfaces in Qt Quick.")))
 (define-public qtquickcontrols2
   (package (inherit qtsvg)
     (name "qtquickcontrols2")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1249,7 +1237,7 @@  can be used to build complete interfaces in Qt Quick.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0dx2jag6l5a80220fvmf49z1psliqf1ijqx6jsvvzv81mpjjd59s"))))
+               "0q0mk2mjlf9ll0gdrdzxy8096s6g9draaqiwrlvdpa7lv14x7xzs"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -1265,7 +1253,7 @@  not available.")))
 (define-public qtgraphicaleffects
   (package (inherit qtsvg)
     (name "qtgraphicaleffects")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1274,7 +1262,7 @@  not available.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1knapc14a80cn2f5bbfj7lhq9flr3v0gwjg9ka7xl8y642235w02"))))
+               "03xmwhapv0b2qj661iaqqrvhxc7qiid0acrp6rj85824ha2pyyj8"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -1292,7 +1280,7 @@  coloring, and many more.")))
 (define-public qtgamepad
   (package (inherit qtsvg)
     (name "qtgamepad")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1301,7 +1289,7 @@  coloring, and many more.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "150y7bc755l9y8w7nkg3gfw5n6rlj9hhq0ibc9g1xgllpr18qqq7"))))
+               "00wd3h465waxdghg2vdhs5pkj0xikwjn88l12477dksm8zdslzgp"))))
     (native-inputs
      `(("perl" ,perl)
        ("pkg-config" ,pkg-config)))
@@ -1322,7 +1310,7 @@  and mobile applications targeting TV-like form factors.")))
 (define-public qtscxml
   (package (inherit qtsvg)
     (name "qtscxml")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1331,7 +1319,7 @@  and mobile applications targeting TV-like form factors.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1dpvjkvwc3fj86vay8q8vzym73cix7ri2ianx87ck0gqjny51adg"))
+               "141pfschv6zmcvvn3pi7f5vb4nf96zpngy80f9bly1sn58syl303"))
              (modules '((guix build utils)))
              (snippet
               '(begin
@@ -1353,7 +1341,7 @@  also contains functionality to support data models and executable content.")))
 (define-public qtpurchasing
   (package (inherit qtsvg)
     (name "qtpurchasing")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1362,7 +1350,7 @@  also contains functionality to support data models and executable content.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0xjsn7p629ni68vk4xlw2cvcs53ipcqv1pa4hck0nabddcgcnzkg"))))
+               "0lg8x7g7dkf95xwxq8b4yw4ypdz68igkscya96xwbklg3q08gc39"))))
     (inputs
      `(("qtbase" ,qtbase)
        ("qtdeclarative" ,qtdeclarative)))
@@ -1373,7 +1361,7 @@  purchasing goods and services.")))
 (define-public qtcanvas3d
   (package (inherit qtsvg)
     (name "qtcanvas3d")
-    (version "5.12.7")
+    (version "5.12.8")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1382,7 +1370,7 @@  purchasing goods and services.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0l0c1p6jwz5rygyxslfw7jw3wbd23w5n9zg04aqlh5g15qx52fmn"))
+               "1k0j9lvg410268kc0w7qdwsl0syzykxp8r019nzb6rhj0ahys3d3"))
              (modules '((guix build utils)))
              (snippet
               '(begin
@@ -1412,7 +1400,7 @@  drawing calls from Qt Quick JavaScript.")))
 (define-public qtcharts
   (package (inherit qtsvg)
     (name "qtcharts")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1421,7 +1409,7 @@  drawing calls from Qt Quick JavaScript.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0pyg2lpxmhf4amj57zihp5ry0y9m39xq5hbcx4hqj78bdm96ah23"))))
+               "1drvm15i6n10b6a1acgarig120ppvqh3r6fqqdn8i3blx81m5cmd"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -1439,7 +1427,7 @@  selecting one of the charts themes.")
 (define-public qtdatavis3d
   (package (inherit qtsvg)
     (name "qtdatavis3d")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1448,7 +1436,7 @@  selecting one of the charts themes.")
                                  version ".tar.xz"))
              (sha256
               (base32
-               "09wbv4g29sq5z2fphk2910albr3iv3l14nch3ml77w6drw9mgzq7"))))
+               "080fkpxg70m3c697wfnkjhca58b7r1xsqd559jzb21985pdh6g3j"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:tests? _ #f) #f))) ; TODO: Enable the tests
@@ -1466,7 +1454,7 @@  customized by using themes or by adding custom items and labels to them.")
 (define-public qtnetworkauth
   (package (inherit qtsvg)
     (name "qtnetworkauth")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1475,7 +1463,7 @@  customized by using themes or by adding custom items and labels to them.")
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0sspni7zllhspk70yjj2d0li9r4rs3iflnksj8mvjx2yl9qpryyb"))))
+               "0pi6p7bq54kzij2p69cgib7n55k69jsq0yqq09yli645s4ym202g"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:phases phases)
@@ -1495,7 +1483,7 @@  implementation of OAuth and OAuth2 authenticathon methods for Qt.")))
 (define-public qtremoteobjects
   (package (inherit qtsvg)
     (name "qtremoteobjects")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1504,7 +1492,7 @@  implementation of OAuth and OAuth2 authenticathon methods for Qt.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "03qjj7l63wn1zqkmlja9yrnc38rf6b3apnmsn0kw0h61x72awskd"))))
+               "1mhlws5w0igf5hw0l90p6dz6k7w16dqfbnk2li0zxdmayk2039m6"))))
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
        ((#:phases phases)
@@ -1515,6 +1503,10 @@  implementation of OAuth and OAuth2 authenticathon methods for Qt.")))
                (substitute* "tests/auto/qml/qml.pro"
                  (("integration") "# integration")
                  (("usertypes") "# usertypes"))
+               ;; disable failing tests
+               (substitute* "tests/auto/auto.pro"
+                 (("integration_multiprocess proxy_multiprocess integration_external restart")
+                   "integration_multiprocess"))
                #t))))))
     (inputs
      `(("qtbase" ,qtbase)
@@ -1528,7 +1520,7 @@  processes or computers.")))
 (define-public qtspeech
   (package (inherit qtsvg)
     (name "qtspeech")
-    (version "5.12.7")
+    (version "5.14.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://download.qt.io/official_releases/qt/"
@@ -1537,7 +1529,7 @@  processes or computers.")))
                                  version ".tar.xz"))
              (sha256
               (base32
-               "0q30m9l28zsdzdmny7wjskd2fjfrgh1l595wir6bhwhil95g3i0c"))))
+               "1nn6kspbp8hfkz1jhzc1qx1m9z7r1bgkdqgi9n4vl1q25yk8x7jy"))))
 
     (arguments
      (substitute-keyword-arguments (package-arguments qtsvg)
@@ -1572,7 +1564,7 @@  message.")))
                            version ".tar.xz"))
        (sha256
         (base32
-         "1yj6pcj945fpbc7nihav0plxpx8ikylmxjy7wqdv5znslgf59dw3"))
+         "0iy9lsl6zxlkca6x2p1506hbj3wmhnaipg23z027wfccbnkxcsg1"))
        (modules '((ice-9 ftw)
                   (ice-9 match)
                   (srfi srfi-1)
@@ -1581,7 +1573,8 @@  message.")))
        (snippet
         '(begin
            (let ((preserved-third-party-files
-                  '("base/third_party/dmg_fp"
+                  '("base/third_party/cityhash"
+                    "base/third_party/dmg_fp"
                     "base/third_party/dynamic_annotations"
                     "base/third_party/icu"
                     "base/third_party/libevent"
@@ -1590,11 +1583,8 @@  message.")))
                     "base/third_party/symbolize"
                     "base/third_party/xdg_mime"
                     "base/third_party/xdg_user_dirs"
-                    "net/third_party/http2"
                     "net/third_party/mozilla_security_manager"
                     "net/third_party/nss"
-                    "net/third_party/spdy"
-                    "net/third_party/quic"
                     "third_party/abseil-cpp"
                     "third_party/angle"
                     "third_party/angle/src/common/third_party/base"
@@ -1603,6 +1593,7 @@  message.")))
                     "third_party/blink"
                     "third_party/boringssl"
                     "third_party/boringssl/src/third_party/fiat"
+                    "third_party/boringssl/src/third_party/sike"
                     "third_party/breakpad"
                     "third_party/brotli"
                     "third_party/ced"
@@ -1631,7 +1622,6 @@  message.")))
                     "third_party/libyuv"
                     "third_party/lss"
                     "third_party/markupsafe"
-                    "third_party/mesa"
                     "third_party/metrics_proto"
                     "third_party/modp_b64"
                     "third_party/opus"
@@ -1660,7 +1650,6 @@  message.")))
                     "url/third_party/mozilla"
                     "v8/src/third_party/utf8-decoder"
                     "v8/src/third_party/valgrind"
-                    "v8/third_party/antlr4"
                     "v8/third_party/inspector_protocol"))
                  (protected (make-regexp "\\.(gn|gyp)i?$")))
              (define preserved-club
@@ -1740,9 +1729,8 @@  message.")))
                      "third_party/analytics/google-analytics-bundle.js"
                    (lambda (port)
                      (const #t)))))
-
              ;; Do not enable support for loading the Widevine DRM plugin.
-             (substitute* "src/core/config/common.pri"
+             (substitute* "src/buildtools/config/common.pri"
                (("enable_widevine=true")
                 "enable_widevine=false"))
              #t)))))
-- 
2.26.2