Subject: [PATCH 2/4] gnu: qtwebengine now uses pulseaudio

From: Mike Rosset <[email-masked]>
Date: Wed, 1 Jan 2020 08:03:53 -0800

This also documents know input issues and improves the package expression
syntax
---
 gnu/packages/qt.scm | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 2b4b167a14..456b394230 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -2039,10 +2039,9 @@ time Web content can be enhanced with native controls.")
        (method url-fetch)
        (uri
         (string-append "https://download.qt.io/official_releases/qt/"
-                       (substring version 0 4)
-                       "/" version "/submodules/"
-                       (string-append name "-everywhere-src-" version)
-                       ".tar.xz"))
+                       (version-major+minor version) "/" version
+                       "/submodules/" name "-everywhere-src-"
+                       version ".tar.xz"))
        (sha256
         (base32
          "08c60nh95m98mcqk444axs76xi6m9x0wvdxrzk9c2cxwqdbz59fa"))))
@@ -2055,8 +2054,7 @@ time Web content can be enhanced with native controls.")
        ("perl" ,perl)
        ("pkg-config" ,pkg-config)
        ("python-2" ,python-2)
-       ("ruby" ,ruby)
-       ))
+       ("ruby" ,ruby)))
     (inputs
      `(("alsa-lib" ,alsa-lib)
        ("atk" ,atk)
@@ -2072,8 +2070,6 @@ time Web content can be enhanced with native controls.")
        ("libevent" ,libevent)
        ("libgcrypt" ,libgcrypt)
        ("libjpeg" ,libjpeg-turbo)
-       ;; libsrtp not found by qmake. seems to not have config.tests?
-       ("libsrtp" ,libsrtp)
        ;; FIXME: error: ?struct vpx_svc_ref_frame_config? has no member named ?frame_flags?
        ;; ("libvpx" ,libvpx)
        ("libwebp" ,libwebp)
@@ -2083,7 +2079,9 @@ time Web content can be enhanced with native controls.")
        ("libxcursor" ,libxcursor)
        ("libxi" ,libxi)
        ("libxkbcommon" ,libxkbcommon)
-       ;; libxml not found due to icu not enabled in libxml?
+       ;; FIXME: libxml2 needs to built with icu support though it links to
+       ;; libxml2 configure summary still states. Checking for compatible
+       ;; system libxml2... no
        ("libxml2" ,libxml2)
        ("libxrandr" ,libxrandr)
        ("libxrender" ,libxrender)
@@ -2095,7 +2093,7 @@ time Web content can be enhanced with native controls.")
        ("opus" ,opus)
        ("pciutils" ,pciutils)
        ("protobuf" ,protobuf)
-       ;; ("pulseaudio" ,pulseaudio)
+       ("pulseaudio" ,pulseaudio)
        ("qtbase" ,qtbase)
        ("qtdeclarative" ,qtdeclarative)
        ("qtmultimedia" ,qtmultimedia)
@@ -2112,19 +2110,22 @@ time Web content can be enhanced with native controls.")
              (lambda* (#:key inputs outputs #:allow-other-keys)
                ;; Avoids potential race conditions
                (setenv "PYTHONDONTWRITEBYTECODE" "1")
-               ;; Make build output less verbose
+               ;; Make ninja build output less verbose
                (setenv "NINJAFLAGS" "-k1")
-               ;; Use this output translations not qtbase
+               ;; Qtwebengine is not installed into the same prefix as
+               ;; qtbase. Some qtbase QTLibraryInfo constants will not
+               ;; work. Replace with the full path to the qtwebengine
+               ;; translations and locales in the store.
                (substitute* "src/core/web_engine_library_info.cpp"
                  (("QLibraryInfo::location\\(QLibraryInfo::TranslationsPath\\)")
                   (format #f "QLatin1String(\"~a\")" (string-append (assoc-ref outputs "out") "/share/qt5/translations")))
                  (("QLibraryInfo::location\\(QLibraryInfo::DataPath\\)")
                   (format #f "QLatin1String(\"~a\")" (string-append (assoc-ref outputs "out") "/share/qt5"))))
-               ;; Substitute full dynamic path for nss
+               ;; Substitute full dynamic library path for nss
                (substitute* "src/3rdparty/chromium/crypto/nss_util.cc"
                  (("libnssckbi.so")
                   (string-append (assoc-ref inputs "nss") "/lib/nss/libnssckbi.so")))
-               ;; Substitute full dynamic path for udev
+               ;; Substitute full dynamic library path for udev
                (substitute* "src/3rdparty/chromium/device/udev_linux/udev1_loader.cc"
                  (("libudev.so.1")
                   (string-append (assoc-ref inputs "udev") "/lib/libudev.so.1")))
@@ -2143,7 +2144,7 @@ time Web content can be enhanced with native controls.")
             (variable "QTWEBENGINEPROCESS_PATH")
             (files '("lib/qt5/libexec/QtWebEngineProcess")))))
     (home-page "https://www.qt.io")
-    (synopsis "Qt WebEngine Module")
+    (synopsis "Qt WebEngine module")
     (description "Qt5WebEngine provides support for web
 applications using the Chromium browser project.")
     (license
-- 
2.24.1