Subject: [bug#64798] [PATCH 193/209] gnu: kinfocenter: Update to 5.27.6.

From: Zheng Junjie <[email-masked]>
Date: Sun, 23 Jul 2023 16:46:53 +0800

* gnu/packages/kde-plasma.scm (kinfocenter): Update to 5.27.6.
[inputs]: add qttools-5, clinfo.
---
 gnu/packages/kde-plasma.scm | 52 +++++++++++++++++++++++++++++++------
 1 file changed, 44 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm
index e0cc048103..9e3eb5e960 100644
--- a/gnu/packages/kde-plasma.scm
+++ b/gnu/packages/kde-plasma.scm
@@ -78,7 +78,8 @@ (define-module (gnu packages kde-plasma)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages base)
   #:use-module (gnu packages gps)
-  #:use-module (gnu packages web))
+  #:use-module (gnu packages web)
+  #:use-module (gnu packages opencl))
 
 (define-public bluedevil
   (package
@@ -539,23 +540,56 @@ (define-public khotkeys
 (define-public kinfocenter
   (package
     (name "kinfocenter")
-    (version "5.25.5")
+    (version "5.27.6")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://kde/stable/plasma/" version
                                   "/" name "-" version ".tar.xz"))
               (sha256
                (base32
-                "0zvki76yghkn158s7hb5g9drz7xaqxkmp2747404n2n0gmnmsdif"))))
+                "06whh4wzc292xvzabv7q6x8wm0gkyd2nsy50vlvk7iy85jayk5nd"))))
     (build-system cmake-build-system)
     (arguments
      (list #:phases #~(modify-phases %standard-phases
                         (add-after 'unpack 'fix-systemsettings-symlink
                           (lambda* (#:key inputs #:allow-other-keys)
-                            (substitute* "CMakeLists.txt"
-                              (("\\$\\{KDE_INSTALL_FULL_BINDIR\\}/systemsettings5")
-                               (search-input-file inputs
-                                                  "/bin/systemsettings5"))))))))
+                            (let ((replace (lambda (file cmd)
+                                             (substitute* file
+                                               (((string-append
+                                                  "\""
+                                                  cmd
+                                                  "\""))
+                                                (string-append
+                                                 "\""
+                                                 (search-input-file
+                                                  inputs
+                                                  (string-append "/bin/" cmd))
+                                                 "\""))))))
+                              (substitute* "CMakeLists.txt"
+                                (("\\$\\{KDE_INSTALL_FULL_BINDIR\\}/systemsettings5")
+                                 (search-input-file inputs
+                                                    "/bin/.systemsettings5-real")))
+                              (substitute* "Modules/kwinsupportinfo/kcm_kwinsupportinfo.json.in"
+                                (("@QtBinariesDir@/qdbus")
+                                 (search-input-file inputs "/bin/qdbus")))
+                              (substitute* "Modules/kwinsupportinfo/main.cpp"
+                                (("QLibraryInfo::location\\(QLibraryInfo::BinariesPath\\) \\+ QStringLiteral\\(\"/qdbus\"\\)")
+                                 (string-append "QStringLiteral(\"" (search-input-file inputs "/bin/qdbus") "\")")))
+
+                              (replace '("Modules/cpu/kcm_cpu.json"
+                                         "Modules/cpu/main.cpp") "lscpu")
+                              (replace '("Modules/opencl/kcm_opencl.json"
+                                         "Modules/opencl/main.cpp") "clinfo")
+                              (replace '("Modules/vulkan/kcm_vulkan.json"
+                                         "Modules/vulkan/main.cpp") "vulkaninfo")
+                              (replace '("Modules/glx/kcm_glx.json"
+                                         "Modules/glx/main.cpp") "glxinfo")
+                              (replace '("Modules/wayland/kcm_wayland.json"
+                                         "Modules/wayland/main.cpp") "wayland-info")
+                              (replace '("Modules/egl/kcm_egl.json"
+                                         "Modules/egl/main.cpp") "eglinfo")
+                              (replace '("Modules/xserver/kcm_xserver.json"
+                                         "Modules/xserver/main.cpp") "xdpyinfo")))))))
     (native-inputs (list aha extra-cmake-modules kdoctools pkg-config))
     ;; * vulkaninfo
     ;; Wayland KCM
@@ -582,7 +616,9 @@ (define-public kinfocenter
                   util-linux
                   vulkan-tools
                   wayland-utils
-                  xdpyinfo))
+                  xdpyinfo
+                  qttools-5
+                  clinfo))
     (propagated-inputs (list system-settings))
     (home-page "https://invent.kde.org/plasma/kinfocenter")
     (synopsis "View information about computer's hardware")
-- 
2.41.0