gnu: kwin: Update to 6.1.2.

* gnu/packages/kde-plasma.scm (kwin): Update to 6.1.2.
[inputs]: Remove kactivities, plasma-framework, qtbase-5, qtdeclarative-5,
qtmultimedia-5, qtwayland-5, and qtx11extras; add plasma-activities,
kglobalacceld, ksvg, kauth, kguiaddons, libplasma, qt5compat,
qtdeclarative, qtmultimedia, qtwayland, qtsensors, and
libdisplay-info.
[native-inputs]: Remove qttools-5 and wayland-protocols; add qttools,
wayland-protocols-next, python-minimal, and qtwayland.
[arguments]: Set #:qtbase to qtbase.
<#:phases>: Adjust it. Remove add-symlinks phase.
* gnu/packages/patches/kwin-unwrap-executable-name-for-dot-desktop-search.patch:
Adjust it.

Change-Id: I37237eb3524bad755be45ba39ec7d4db060a8f9b
This commit is contained in:
Zheng Junjie 2024-07-06 13:52:07 +08:00
parent 51747b31c6
commit 555a6914b2
No known key found for this signature in database
GPG key ID: 3B5AA993E1A2DFF0
2 changed files with 47 additions and 36 deletions

View file

@ -76,6 +76,7 @@ (define-module (gnu packages kde-plasma)
#:use-module (gnu packages video)
#:use-module (gnu packages vpn)
#:use-module (gnu packages vulkan)
#:use-module (gnu packages wm)
#:use-module (gnu packages textutils)
#:use-module (gnu packages qt)
#:use-module (gnu packages xdisorg)
@ -1298,18 +1299,24 @@ (define-public kwayland-integration
(define-public kwin
(package
(name "kwin")
(version "5.27.7")
(version "6.1.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version "/"
(uri (string-append "mirror://kde/stable/plasma/"
version "/"
name "-" version ".tar.xz"))
(patches (search-patches "kwin-unwrap-executable-name-for-dot-desktop-search.patch"))
(sha256
(base32
"0bssp76lzqqlan5pfg6wjf4z9c6pl6p66ri8p82vqqw406x5bzyb"))))
"03y0als06vryf1cwiladnn9a3vnsp32gp9bcvp42mm017g485ic2"))))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase
#:configure-flags
#~(list (string-append "-DQtWaylandScanner_EXECUTABLE="
#$(this-package-native-input "qtwayland")
"/lib/qt6/libexec/qtwaylandscanner"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch
@ -1327,8 +1334,8 @@ (define-public kwin
(string-append
"setProgram(QByteArrayLiteral(\"" (which "glxgears") "\")")))
(substitute*
'("src/wayland/tests/renderingservertest.cpp"
"src/wayland/tests/waylandservertest.cpp")
'("tests/renderingservertest.cpp"
"tests/waylandservertest.cpp")
(("QByteArrayLiteral\\(\"Xwayland\"\\)")
(string-append
"QByteArrayLiteral(\"" (which "Xwayland") "\")")))
@ -1345,14 +1352,6 @@ (define-public kwin
(substitute* '("cmake/modules/Findhwdata.cmake")
(("/usr/share")
(string-append #$(this-package-input "hwdata") "/share")))))
(add-after 'install 'add-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let ((kst5 (string-append #$output
"/share/kservicetypes5/")))
(symlink (string-append kst5 "kwineffect.desktop")
(string-append kst5 "kwin-effect.desktop"))
(symlink (string-append kst5 "kwinscript.desktop")
(string-append kst5 "kwin-script.desktop")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
@ -1363,7 +1362,7 @@ (define-public kwin
(getenv "XDG_DATA_DIRS")))
(setenv "QT_PLUGIN_PATH"
(string-append #$output
"/lib/qt5/plugins:"
"/lib/qt6/plugins:"
(getenv "QT_PLUGIN_PATH")))
(setenv "DISPLAY" ":1")
(system "Xvfb :1 &")
@ -1372,31 +1371,39 @@ (define-public kwin
"ctest"
"-E"
(string-join
(list "kwin-testXkb"
"kwin-testPointerInput"
"kwin-testXdgShellWindow"
"kwin-testXdgShellWindow-waylandonly"
"kwin-testSceneOpenGLES"
"kwin-testSceneOpenGLES-waylandonly"
"kwin-testNightColor"
"kwin-testNightColor-waylandonly"
"kwin-testScriptedEffects"
"kwayland-testWaylandSurface")
(list
"kwin-testDrm" ;; require Drm
"kwin-testInputMethod"
"kwin-testPlasmaWindow" ;; require plasma-workspace qml module.
"kwin-testButtonRebind"
"kwin-testPointerInput"
"kwin-testXdgShellWindow"
"kwin-testXdgShellWindow-waylandonly"
"kwin-testSceneOpenGLES"
"kwin-testSceneOpenGLES-waylandonly"
"kwin-testNightColor"
"kwin-testNightColor-waylandonly"
"kwin-testScriptedEffects"
"kwayland-testServerSideDecoration"
"kwayland-testWaylandSurface")
"|"))))))))
(native-inputs (list extra-cmake-modules
dbus
kdoctools
mesa-utils
pkg-config
qttools-5
wayland-protocols
xorg-server-for-tests))
qttools
wayland-protocols-next
xorg-server-for-tests
python-minimal
;; for QtWaylandScanner
qtwayland))
(inputs (list breeze
eudev
fontconfig
freetype
`(,hwdata "pnp")
kactivities
plasma-activities
kcmutils
kcompletion
kconfig
@ -1407,6 +1414,7 @@ (define-public kwin
kdeclarative
kdecoration
kglobalaccel
kglobalacceld
ki18n
kiconthemes
kidletime
@ -1421,6 +1429,9 @@ (define-public kwin
kwayland
kwindowsystem
kxmlgui
ksvg
kauth
kguiaddons
libqaccessibilityclient
lcms
libcap
@ -1429,13 +1440,13 @@ (define-public kwin
libinput
libxkbcommon
pipewire
plasma-framework
libplasma
plasma-wayland-protocols
qtbase-5
qtdeclarative-5
qtmultimedia-5
qtwayland-5
qtx11extras
qt5compat
qtdeclarative
qtmultimedia
qtwayland
qtsensors
wayland
xcb-util ;fails at build time without this
xcb-util-cursor
@ -1444,6 +1455,7 @@ (define-public kwin
xcmsdb
xinput ;XXX: Says disabled in configure phase
xorg-server-xwayland
libdisplay-info
zlib))
;; Runtime-only dependency needed for mapping monitor hardware vendor IDs to full names
;; * QtQuick.Controls-QMLModule, QML module 'QtQuick.Controls' is a runtime dependency.

View file

@ -14,12 +14,11 @@ new file mode 100644
index 0000000..726065d
--- /dev/null
+++ b/src/guix_utils.h
@@ -0,0 +1,24 @@
@@ -0,0 +1,23 @@
+#ifndef GUIX_UTILS_H
+#define GUIX_UTILS_H
+
+// kwin
+#include <kwinglobals.h>
+
+namespace KWin
+{