summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2024-11-17 20:57:42 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2024-11-18 21:03:46 +0100
commitbf8be6c305870594df1950c3f8521ee94e8b9cf7 (patch)
treee5d0ec312d5ab6d315838753192ffe2894cc609d /kde-plasma
parentkde-plasma/libksysguard: Pick 6.2 branch fixes (diff)
downloadgentoo-bf8be6c305870594df1950c3f8521ee94e8b9cf7.tar.gz
gentoo-bf8be6c305870594df1950c3f8521ee94e8b9cf7.tar.bz2
gentoo-bf8be6c305870594df1950c3f8521ee94e8b9cf7.zip
kde-plasma/plasma-desktop: Backport IUSE input_devices_wacom to 6.2
Bug: https://bugs.gentoo.org/942817 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-plasma')
-rw-r--r--kde-plasma/plasma-desktop/files/plasma-desktop-6.2.3-tablet-kcm-optional.patch93
-rw-r--r--kde-plasma/plasma-desktop/plasma-desktop-6.2.3-r1.ebuild183
2 files changed, 276 insertions, 0 deletions
diff --git a/kde-plasma/plasma-desktop/files/plasma-desktop-6.2.3-tablet-kcm-optional.patch b/kde-plasma/plasma-desktop/files/plasma-desktop-6.2.3-tablet-kcm-optional.patch
new file mode 100644
index 000000000000..b0d2f512ed9e
--- /dev/null
+++ b/kde-plasma/plasma-desktop/files/plasma-desktop-6.2.3-tablet-kcm-optional.patch
@@ -0,0 +1,93 @@
+From 5296ef03a9b14a6a9324d506d04f78e61e8512f6 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Mon, 4 Nov 2024 23:15:19 +0100
+Subject: [PATCH] cmake: Add BUILD_KCM_TABLET option to conditionalise Wayland
+ deps
+
+Follow-up to 240ca31717ebed55e43ffaf6ac906dea07e9f4c6
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+(cherry picked from commit 8f0e9b4d625024469b4fbd0468e767e45b464872)
+---
+ CMakeLists.txt | 30 ++++++++++++++++++------------
+ kcms/CMakeLists.txt | 5 ++++-
+ 2 files changed, 22 insertions(+), 13 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6f764d1ef4..8222cfaed5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -40,6 +40,7 @@ option(BUILD_KCM_MOUSE_KWIN_WAYLAND "Build the Mouse KCM's KWin+Wayland backend"
+ option(BUILD_KCM_MOUSE_X11 "Build the Mouse KCM's X11 backend" ON)
+ option(BUILD_KCM_TOUCHPAD_KWIN_WAYLAND "Build the Touchpad KCM's KWin+Wayland backend" ON)
+ option(BUILD_KCM_TOUCHPAD_X11 "Build the Touchpad KCM's X11 backend" ON)
++option(BUILD_KCM_TABLET "Build the Tablet KCM" ON)
+
+ find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
+ Quick
+@@ -51,7 +52,10 @@ find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
+ Core5Compat
+ Sql # kcms/activities
+ )
+-find_package(Qt6 ${QT_MIN_VERSION} CONFIG OPTIONAL_COMPONENTS WaylandClient)
++
++if(BUILD_KCM_TABLET)
++ find_package(Qt6WaylandClient ${QT_MIN_VERSION} CONFIG REQUIRED)
++endif()
+
+ find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS
+ Auth
+@@ -139,17 +143,19 @@ set_package_properties(KF6QQC2DesktopStyle PROPERTIES
+ TYPE RUNTIME
+ )
+
+-find_package(WaylandProtocols 1.25)
+-set_package_properties(WaylandProtocols PROPERTIES
+- TYPE REQUIRED
+- PURPOSE "Collection of Wayland protocols that add functionality not available in the Wayland core protocol"
+- URL "https://gitlab.freedesktop.org/wayland/wayland-protocols/"
+-)
+-find_package(Wayland 1.2)
+-set_package_properties(Wayland PROPERTIES
+- TYPE REQUIRED
+- PURPOSE "Required for building Tablet input KCM"
+-)
++if(BUILD_KCM_TABLET)
++ find_package(WaylandProtocols 1.25)
++ set_package_properties(WaylandProtocols PROPERTIES
++ TYPE REQUIRED
++ PURPOSE "Collection of Wayland protocols that add functionality not available in the Wayland core protocol"
++ URL "https://gitlab.freedesktop.org/wayland/wayland-protocols/"
++ )
++ find_package(Wayland 1.2)
++ set_package_properties(Wayland PROPERTIES
++ TYPE REQUIRED
++ PURPOSE "Required for building Tablet input KCM"
++ )
++endif()
+
+ find_package(SDL2 2.0.16)
+ set_package_properties(SDL2 PROPERTIES
+diff --git a/kcms/CMakeLists.txt b/kcms/CMakeLists.txt
+index 5b204a7c19..cea880c139 100644
+--- a/kcms/CMakeLists.txt
++++ b/kcms/CMakeLists.txt
+@@ -26,7 +26,6 @@ add_subdirectory(kded)
+ add_subdirectory(runners)
+ add_subdirectory(spellchecking)
+ add_subdirectory(qtquicksettings)
+-add_subdirectory(tablet)
+ add_subdirectory(touchscreen)
+
+ add_subdirectory(workspaceoptions)
+@@ -42,3 +41,7 @@ endif()
+ if (BUILD_KCM_TOUCHPAD_KWIN_WAYLAND OR BUILD_KCM_TOUCHPAD_X11)
+ add_subdirectory(touchpad)
+ endif()
++
++if(BUILD_KCM_TABLET)
++ add_subdirectory(tablet)
++endif()
+--
+2.47.0
+
diff --git a/kde-plasma/plasma-desktop/plasma-desktop-6.2.3-r1.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-6.2.3-r1.ebuild
new file mode 100644
index 000000000000..429089f8e01a
--- /dev/null
+++ b/kde-plasma/plasma-desktop/plasma-desktop-6.2.3-r1.ebuild
@@ -0,0 +1,183 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="forceoptional"
+ECM_TEST="true"
+KFMIN=6.6.0
+PVCUT=$(ver_cut 1-3)
+QTMIN=6.7.2
+inherit ecm plasma.kde.org optfeature
+
+DESCRIPTION="KDE Plasma desktop"
+XORGHDRS="${PN}-override-include-dirs-4"
+SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${XORGHDRS}.tar.xz"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="6"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="ibus input_devices_wacom scim screencast sdl +semantic-desktop webengine"
+
+RESTRICT="test" # missing selenium-webdriver-at-spi
+
+# slot op: Uses Qt6::GuiPrivate for qtx11extras_p.h
+# kde-frameworks/kwindowsystem[X]: Uses KX11Extras
+COMMON_DEPEND="
+ dev-libs/icu:=
+ >=dev-qt/qt5compat-${QTMIN}:6[qml]
+ >=dev-qt/qtbase-${QTMIN}:6=[concurrent,dbus,gui,network,sql,widgets,xml]
+ >=dev-qt/qtdeclarative-${QTMIN}:6
+ >=dev-qt/qtsvg-${QTMIN}:6
+ >=kde-frameworks/attica-${KFMIN}:6
+ >=kde-frameworks/karchive-${KFMIN}:6
+ >=kde-frameworks/kauth-${KFMIN}:6
+ >=kde-frameworks/kbookmarks-${KFMIN}:6
+ >=kde-frameworks/kcmutils-${KFMIN}:6
+ >=kde-frameworks/kcodecs-${KFMIN}:6
+ >=kde-frameworks/kcompletion-${KFMIN}:6
+ >=kde-frameworks/kconfig-${KFMIN}:6
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:6
+ >=kde-frameworks/kcoreaddons-${KFMIN}:6
+ >=kde-frameworks/kcrash-${KFMIN}:6
+ >=kde-frameworks/kdbusaddons-${KFMIN}:6
+ >=kde-frameworks/kded-${KFMIN}:6
+ >=kde-frameworks/kglobalaccel-${KFMIN}:6
+ >=kde-frameworks/kguiaddons-${KFMIN}:6
+ >=kde-frameworks/ki18n-${KFMIN}:6
+ >=kde-frameworks/kiconthemes-${KFMIN}:6
+ >=kde-frameworks/kio-${KFMIN}:6
+ >=kde-frameworks/kitemmodels-${KFMIN}:6
+ >=kde-frameworks/kitemviews-${KFMIN}:6
+ >=kde-frameworks/kjobwidgets-${KFMIN}:6
+ >=kde-frameworks/knewstuff-${KFMIN}:6
+ >=kde-frameworks/knotifications-${KFMIN}:6
+ >=kde-frameworks/knotifyconfig-${KFMIN}:6
+ >=kde-frameworks/kpackage-${KFMIN}:6
+ >=kde-frameworks/kparts-${KFMIN}:6
+ >=kde-frameworks/krunner-${KFMIN}:6
+ >=kde-frameworks/kservice-${KFMIN}:6
+ >=kde-frameworks/ksvg-${KFMIN}:6
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:6
+ >=kde-frameworks/kwindowsystem-${KFMIN}:6[X]
+ >=kde-frameworks/kxmlgui-${KFMIN}:6
+ >=kde-frameworks/solid-${KFMIN}:6
+ >=kde-frameworks/sonnet-${KFMIN}:6
+ >=kde-plasma/kwin-${PVCUT}:6
+ >=kde-plasma/libksysguard-${PVCUT}:6
+ >=kde-plasma/libplasma-${PVCUT}:6
+ >=kde-plasma/plasma-activities-${PVCUT}:6
+ >=kde-plasma/plasma-activities-stats-${PVCUT}:6
+ >=kde-plasma/plasma-workspace-${PVCUT}:6[screencast?]
+ >=kde-plasma/plasma5support-${PVCUT}:6
+ media-libs/libcanberra
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcursor
+ x11-libs/libXi
+ x11-libs/libxkbcommon
+ x11-libs/libxkbfile
+ ibus? (
+ app-i18n/ibus
+ dev-libs/glib:2
+ x11-libs/xcb-util-keysyms
+ )
+ input_devices_wacom? (
+ dev-libs/wayland
+ >=dev-qt/qtwayland-${QTMIN}:6
+ )
+ scim? ( app-i18n/scim )
+ sdl? ( media-libs/libsdl2[joystick] )
+ semantic-desktop? ( >=kde-frameworks/baloo-${KFMIN}:6 )
+ webengine? (
+ kde-apps/kaccounts-integration:6
+ >=net-libs/accounts-qt-1.17[qt6(+)]
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/boost
+ x11-base/xorg-proto
+ input_devices_wacom? ( >=dev-libs/wayland-protocols-1.25 )
+ test? (
+ >=kde-frameworks/qqc2-desktop-style-${KFMIN}:6
+ >=kde-plasma/kactivitymanagerd-${PVCUT}:6
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<kde-plasma/kdeplasma-addons-5.25.50
+ !<kde-plasma/plasma-workspace-6.0.80
+ dev-libs/kirigami-addons:6
+ >=dev-qt/qtwayland-${QTMIN}:6
+ >=kde-frameworks/kirigami-${KFMIN}:6
+ >=kde-frameworks/qqc2-desktop-style-${KFMIN}:6
+ >=kde-plasma/oxygen-${PVCUT}:6
+ kde-plasma/plasma-mimeapps-list
+ media-fonts/noto-emoji
+ sys-apps/util-linux
+ x11-apps/setxkbmap
+ x11-misc/xdg-user-dirs
+ screencast? ( >=kde-plasma/kpipewire-${PVCUT}:6 )
+ webengine? ( >=net-libs/signon-oauth2-0.25_p20210102[qt6(+)] )
+"
+BDEPEND="
+ dev-util/intltool
+ >=kde-frameworks/kcmutils-${KFMIN}:6
+ virtual/pkgconfig
+ input_devices_wacom? ( dev-util/wayland-scanner )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-6.1.80-override-include-dirs.patch" # downstream patch
+ "${FILESDIR}/${P}-tablet-kcm-optional.patch" # bug 942817
+)
+
+src_prepare() {
+ ecm_src_prepare
+
+ if ! use ibus; then
+ sed -e "s/XCB_XCB_FOUND AND XCB_KEYSYMS_FOUND/false/" \
+ -i applets/kimpanel/backend/ibus/CMakeLists.txt || die
+ fi
+
+ # TODO: try to get a build switch upstreamed
+ if ! use scim; then
+ sed -e "s/^pkg_check_modules.*SCIM/#&/" -i CMakeLists.txt || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_KCM_MOUSE_X11=ON
+ -DBUILD_KCM_TOUCHPAD_X11=ON
+ -DXORGLIBINPUT_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ -DXORGSERVER_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ -DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt6=ON # not packaged
+ $(cmake_use_find_package ibus GLIB2)
+ -DBUILD_KCM_TABLET=$(usex input_devices_wacom)
+ $(cmake_use_find_package sdl SDL2)
+ $(cmake_use_find_package semantic-desktop KF6Baloo)
+ $(cmake_use_find_package webengine AccountsQt6)
+ $(cmake_use_find_package webengine KAccounts6)
+ )
+
+ ecm_src_configure
+}
+
+src_test() {
+ # parallel tests fail, foldermodeltest,positionertest hang, bug #646890
+ # test_kio_fonts needs D-Bus, bug #634166
+ # lookandfeel-kcmTest is unreliable for a long time, bug #607918
+ local myctestargs=(
+ -j1
+ -E "(foldermodeltest|positionertest|test_kio_fonts|lookandfeel-kcmTest)"
+ )
+
+ ecm_src_test
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ optfeature "screen reader support" "app-accessibility/orca"
+ fi
+ ecm_pkg_postinst
+}