commit:     7e9882575fa5feb57bb424d17250e0f2ccf26d6c
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 30 16:29:00 2025 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat May  3 09:11:00 2025 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=7e988257

kde-frameworks/kwallet: Split out the runtime to make this library only

Set ECM_QTHELP="true"

See also:
https://invent.kde.org/frameworks/kwallet/-/blob/master/README.md
https://invent.kde.org/plasma/plasma-desktop/-/issues/138
https://invent.kde.org/frameworks/kwallet/-/merge_requests/97

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../kwallet/files/kwallet-6.14.0-deps.patch        | 75 ++++++++++++++++++++++
 kde-frameworks/kwallet/kwallet-9999.ebuild         | 42 ++++--------
 kde-frameworks/kwallet/metadata.xml                |  3 -
 3 files changed, 86 insertions(+), 34 deletions(-)

diff --git a/kde-frameworks/kwallet/files/kwallet-6.14.0-deps.patch 
b/kde-frameworks/kwallet/files/kwallet-6.14.0-deps.patch
new file mode 100644
index 0000000000..d6e28156f2
--- /dev/null
+++ b/kde-frameworks/kwallet/files/kwallet-6.14.0-deps.patch
@@ -0,0 +1,75 @@
+https://invent.kde.org/frameworks/kwallet/-/merge_requests/112
+
+From 0993bb19ae8d8f99f6b646ef99b2a8a40149efcc Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <ast...@gentoo.org>
+Date: Wed, 30 Apr 2025 17:11:55 +0200
+Subject: [PATCH] Depend on what/when we use it
+
+If KWallet library can be built w/o the runtimes, then let's define
+the deps like that as well.
+
+Only runtime has translations.
+
+Only kwallet-query has docs.
+
+Signed-off-by: Andreas Sturmlechner <ast...@gentoo.org>
+---
+ CMakeLists.txt | 21 +++++++++++++--------
+ 1 file changed, 13 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 199685e4..8b2f91d0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,7 +20,7 @@ include(KDEGitCommitHooks)
+ include(ECMDeprecationSettings)
+ 
+ set(REQUIRED_QT_VERSION 6.7.0)
+-find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets DBus)
++find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core DBus Gui Widgets)
+ 
+ include(ECMAddQch)
+ include(ECMGenerateExportHeader)
+@@ -47,11 +47,11 @@ endif()
+ # Therefore we must not exclude those by default
+ set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of 
deprecated API excluded from the build [default=0].")
+ 
+-find_package(KF6CoreAddons ${KF_DEP_VERSION} REQUIRED)
+ find_package(KF6Config ${KF_DEP_VERSION} REQUIRED)
+-find_package(KF6WindowSystem ${KF_DEP_VERSION} REQUIRED)
+-find_package(KF6I18n ${KF_DEP_VERSION} REQUIRED)
+-find_package(KF6DocTools ${KF_DEP_VERSION})
++
++if(BUILD_KSECRETD OR BUILD_KWALLETD)
++    find_package(KF6 ${KF_DEP_VERSION} REQUIRED COMPONENTS CoreAddons I18n 
WindowSystem)
++endif()
+ 
+ ecm_set_disabled_deprecation_versions(
+     QT 6.9.0
+@@ -65,15 +65,20 @@ else()
+ endif()
+ 
+ add_definitions(-DTRANSLATION_DOMAIN=\"ksecretd6\")
+-ki18n_install(po)
++if(BUILD_KSECRETD OR BUILD_KWALLETD OR BUILD_KWALLET_QUERY)
++    ki18n_install(po)
++endif()
+ add_subdirectory(src)
+ if (BUILD_TESTING)
+     add_subdirectory(autotests)
+     add_subdirectory(tests)
+     add_subdirectory(examples)
+ endif()
+-if (KF6DocTools_FOUND)
+-    add_subdirectory(docs)
++if(BUILD_KWALLET_QUERY)
++    find_package(KF6DocTools ${KF_DEP_VERSION})
++    if(KF6DocTools_FOUND)
++        add_subdirectory(docs)
++    endif()
+ endif()
+ 
+ include(ECMFeatureSummary)
+-- 
+2.49.0
+

diff --git a/kde-frameworks/kwallet/kwallet-9999.ebuild 
b/kde-frameworks/kwallet/kwallet-9999.ebuild
index b704058fe9..cd8524c17d 100644
--- a/kde-frameworks/kwallet/kwallet-9999.ebuild
+++ b/kde-frameworks/kwallet/kwallet-9999.ebuild
@@ -3,50 +3,30 @@
 
 EAPI=8
 
+ECM_QTHELP="true"
 QTMIN=6.7.2
-inherit ecm frameworks.kde.org optfeature
+inherit ecm frameworks.kde.org
 
-DESCRIPTION="Framework providing desktop-wide storage for passwords"
+DESCRIPTION="Interface to KWallet Framework providing desktop-wide storage for 
passwords"
 
 LICENSE="LGPL-2+"
 KEYWORDS=""
-IUSE="gpg +man X"
+IUSE="minimal"
 
 DEPEND="
-       >=app-crypt/qca-2.3.9:2[qt6(+)]
-       dev-libs/libgcrypt:0=
        >=dev-qt/qtbase-${QTMIN}:6[dbus,gui,widgets]
-       =kde-frameworks/kcolorscheme-${KDE_CATV}*:6
        =kde-frameworks/kconfig-${KDE_CATV}*:6
-       =kde-frameworks/kcoreaddons-${KDE_CATV}*:6
-       =kde-frameworks/kcrash-${KDE_CATV}*:6
-       =kde-frameworks/kdbusaddons-${KDE_CATV}*:6
-       =kde-frameworks/ki18n-${KDE_CATV}*:6
-       =kde-frameworks/knotifications-${KDE_CATV}*:6
-       =kde-frameworks/kservice-${KDE_CATV}*:6
-       =kde-frameworks/kwidgetsaddons-${KDE_CATV}*:6
-       =kde-frameworks/kwindowsystem-${KDE_CATV}*:6[X?]
-       gpg? ( app-crypt/gpgme:=[qt6(-)] )
 "
-RDEPEND="${DEPEND}
-       !<kde-frameworks/kwallet-5.116.0-r2:5[-kf6compat(-)]
-"
-BDEPEND="man? ( >=kde-frameworks/kdoctools-${KDE_CATV}:6 )"
+RDEPEND="${DEPEND}"
+PDEPEND="!minimal? ( =kde-frameworks/kwallet-runtime-${KDE_CATV}* )"
+
+PATCHES=( "${FILESDIR}/${PN}-6.14.0-deps.patch" )
 
 src_configure() {
        local mycmakeargs=(
-               $(cmake_use_find_package gpg Gpgmepp)
-               $(cmake_use_find_package man KF6DocTools)
-               -DWITH_X11=$(usex X)
+               -DBUILD_KSECRETD=OFF
+               -DBUILD_KWALLETD=OFF
+               -DBUILD_KWALLET_QUERY=OFF
        )
-
        ecm_src_configure
 }
-
-pkg_postinst() {
-       if [[ -z "${REPLACING_VERSIONS}" ]]; then
-               optfeature "Auto-unlocking after Plasma login" 
"kde-plasma/kwallet-pam"
-               optfeature "KWallet management" "kde-apps/kwalletmanager"
-               elog "For more information, read 
https://wiki.gentoo.org/wiki/KDE#KWallet";
-       fi
-}

diff --git a/kde-frameworks/kwallet/metadata.xml 
b/kde-frameworks/kwallet/metadata.xml
index 6132977058..4401644b8b 100644
--- a/kde-frameworks/kwallet/metadata.xml
+++ b/kde-frameworks/kwallet/metadata.xml
@@ -9,9 +9,6 @@
                
<bugs-to>https://bugs.kde.org/enter_bug.cgi?product=frameworks-kwallet</bugs-to>
                <remote-id type="kde-invent">frameworks/kwallet</remote-id>
        </upstream>
-       <use>
-               <flag name="gpg">Support wallets with GnuPG encryption in 
addition to the default blowfish-encrypted file</flag>
-       </use>
        <slots>
                <subslots>
                        Must only be used by packages that are known to use 
private parts of the Frameworks API.

Reply via email to