commit:     b7a9af6ebea88888528e7cb122e61b9d37ba1113
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 30 16:30:07 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=b7a9af6e

kde-frameworks/kwallet-runtime: new package, add 9999

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

 .../files/kwallet-runtime-6.14.0-stdalone.patch    | 189 +++++++++++++++++++++
 .../kwallet-runtime/kwallet-runtime-9999.ebuild    |  66 +++++++
 kde-frameworks/kwallet-runtime/metadata.xml        |  21 +++
 3 files changed, 276 insertions(+)

diff --git 
a/kde-frameworks/kwallet-runtime/files/kwallet-runtime-6.14.0-stdalone.patch 
b/kde-frameworks/kwallet-runtime/files/kwallet-runtime-6.14.0-stdalone.patch
new file mode 100644
index 0000000000..5fc7b3bfb6
--- /dev/null
+++ b/kde-frameworks/kwallet-runtime/files/kwallet-runtime-6.14.0-stdalone.patch
@@ -0,0 +1,189 @@
+From 8e59e6a833dc8cec95d25fe7a1c00ba52b045060 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <ast...@gentoo.org>
+Date: Wed, 30 Apr 2025 18:12:08 +0200
+Subject: [PATCH 1/2] In src/runtime, try to find system KF6Wallet if target
+ not yet exists
+
+Signed-off-by: Andreas Sturmlechner <ast...@gentoo.org>
+---
+ src/runtime/CMakeLists.txt                    | 4 ++++
+ src/runtime/ksecretd/CMakeLists.txt           | 2 +-
+ src/runtime/ksecretd/autotests/CMakeLists.txt | 2 +-
+ src/runtime/kwallet-query/src/CMakeLists.txt  | 2 +-
+ src/runtime/kwalletbackend/CMakeLists.txt     | 3 +--
+ 5 files changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/src/runtime/CMakeLists.txt b/src/runtime/CMakeLists.txt
+index b38948d1..4e833b3f 100644
+--- a/src/runtime/CMakeLists.txt
++++ b/src/runtime/CMakeLists.txt
+@@ -1,3 +1,7 @@
++if(NOT TARGET KF6::Wallet)
++    find_package(KF6Wallet ${KF_DEP_VERSION} REQUIRED)
++endif()
++
+ if(BUILD_KSECRETD OR BUILD_KWALLETD)
+     find_package(Gpgmepp 1.7.0) # provided by GpgME
+ 
+diff --git a/src/runtime/ksecretd/CMakeLists.txt 
b/src/runtime/ksecretd/CMakeLists.txt
+index 016ee52c..439254f1 100644
+--- a/src/runtime/ksecretd/CMakeLists.txt
++++ b/src/runtime/ksecretd/CMakeLists.txt
+@@ -128,7 +128,7 @@ endif ()
+ 
+ target_link_libraries(ksecretd
+     KF6WalletBackend
+-    KF6Wallet
++    KF6::Wallet
+     Qt6::Widgets
+     KF6::I18n
+     KF6::ColorScheme
+diff --git a/src/runtime/ksecretd/autotests/CMakeLists.txt 
b/src/runtime/ksecretd/autotests/CMakeLists.txt
+index 2499edc6..728a34bf 100644
+--- a/src/runtime/ksecretd/autotests/CMakeLists.txt
++++ b/src/runtime/ksecretd/autotests/CMakeLists.txt
+@@ -66,7 +66,7 @@ ecm_add_test(
+     kwalletfreedesktoppromptadaptor.cpp
+     TEST_NAME fdo_secrets_test
+     LINK_LIBRARIES
+-        KF6Wallet
++        KF6::Wallet
+         KF6WalletBackend
+         Qt6::Widgets
+         Qt6::Test
+diff --git a/src/runtime/kwallet-query/src/CMakeLists.txt 
b/src/runtime/kwallet-query/src/CMakeLists.txt
+index b809048f..dc785494 100644
+--- a/src/runtime/kwallet-query/src/CMakeLists.txt
++++ b/src/runtime/kwallet-query/src/CMakeLists.txt
+@@ -9,7 +9,7 @@ target_sources(kwallet-query PRIVATE
+ 
+ 
+ TARGET_LINK_LIBRARIES(kwallet-query
+-    KF6Wallet
++    KF6::Wallet
+     KF6::CoreAddons
+     KF6::I18n
+     Qt6::Widgets
+diff --git a/src/runtime/kwalletbackend/CMakeLists.txt 
b/src/runtime/kwalletbackend/CMakeLists.txt
+index b7849dc7..e883b77a 100644
+--- a/src/runtime/kwalletbackend/CMakeLists.txt
++++ b/src/runtime/kwalletbackend/CMakeLists.txt
+@@ -36,8 +36,6 @@ set_target_properties(KF6WalletBackend PROPERTIES
+     SOVERSION ${KWALLETBACKEND_SOVERSION}
+ )
+ 
+-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../api/KWallet)
+-include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../api/KWallet)
+ include_directories(${LIBGCRYPT_INCLUDE_DIRS})
+ 
+ remove_definitions(-DQT_NO_CAST_FROM_ASCII)
+@@ -71,6 +69,7 @@ target_link_libraries(KF6WalletBackend
+     KF6::CoreAddons
+     KF6::Notifications
+     KF6::I18n
++    KF6::Wallet
+     ${LIBGCRYPT_LIBRARIES}
+     ${Qca_LIBRARY}
+ )
+-- 
+2.49.0
+
+
+From ff4bbd29e92570836f0a2dab2ef7e714b5cfa42a Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <ast...@gentoo.org>
+Date: Wed, 30 Apr 2025 18:02:08 +0200
+Subject: [PATCH 2/2] Split runtime logging categories into separate file
+
+Signed-off-by: Andreas Sturmlechner <ast...@gentoo.org>
+---
+ src/CMakeLists.txt                        | 6 ------
+ src/api/CMakeLists.txt                    | 6 ++++++
+ src/runtime/CMakeLists.txt                | 6 ++++++
+ src/runtime/ksecretd/CMakeLists.txt       | 2 +-
+ src/runtime/kwalletbackend/CMakeLists.txt | 2 +-
+ src/runtime/kwalletd/CMakeLists.txt       | 2 +-
+ 6 files changed, 15 insertions(+), 9 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 4ec4ca79..3c0163d7 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -1,9 +1,3 @@
+ 
+ add_subdirectory(api)
+ add_subdirectory(runtime)
+-
+-ecm_qt_install_logging_categories(
+-    EXPORT KWALLET
+-    FILE kwallet.categories
+-    DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
+-)
+diff --git a/src/api/CMakeLists.txt b/src/api/CMakeLists.txt
+index ef921ee4..b4810d80 100644
+--- a/src/api/CMakeLists.txt
++++ b/src/api/CMakeLists.txt
+@@ -1,2 +1,8 @@
+ 
+ add_subdirectory(KWallet)
++
++ecm_qt_install_logging_categories(
++    EXPORT KWALLET
++    FILE kwallet.categories
++    DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
++)
+diff --git a/src/runtime/CMakeLists.txt b/src/runtime/CMakeLists.txt
+index 4e833b3f..3705c45d 100644
+--- a/src/runtime/CMakeLists.txt
++++ b/src/runtime/CMakeLists.txt
+@@ -25,3 +25,9 @@ endif()
+ if(BUILD_KWALLET_QUERY)
+   add_subdirectory(kwallet-query)
+ endif()
++
++ecm_qt_install_logging_categories(
++    EXPORT KWALLET_RUNTIME
++    FILE kwallet-runtime.categories
++    DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
++)
+diff --git a/src/runtime/ksecretd/CMakeLists.txt 
b/src/runtime/ksecretd/CMakeLists.txt
+index 439254f1..75ccd198 100644
+--- a/src/runtime/ksecretd/CMakeLists.txt
++++ b/src/runtime/ksecretd/CMakeLists.txt
+@@ -66,7 +66,7 @@ ecm_qt_declare_logging_category(ksecretd
+     CATEGORY_NAME kf.wallet.ksecretd
+     OLD_CATEGORY_NAMES kf5.kwallet.ksecretd
+     DESCRIPTION "ksecretd"
+-    EXPORT KWALLET
++    EXPORT KWALLET_RUNTIME
+ )
+ 
+ ki18n_wrap_ui(ksecretd
+diff --git a/src/runtime/kwalletbackend/CMakeLists.txt 
b/src/runtime/kwalletbackend/CMakeLists.txt
+index e883b77a..95ea54c1 100644
+--- a/src/runtime/kwalletbackend/CMakeLists.txt
++++ b/src/runtime/kwalletbackend/CMakeLists.txt
+@@ -55,7 +55,7 @@ ecm_qt_declare_logging_category(KF6WalletBackend
+     CATEGORY_NAME kf.wallet.backend
+     OLD_CATEGORY_NAMES kf5.kwallet.kwalletbackend
+     DESCRIPTION "kwalletbackend"
+-    EXPORT KWALLET
++    EXPORT KWALLET_RUNTIME
+ )
+ 
+ 
+diff --git a/src/runtime/kwalletd/CMakeLists.txt 
b/src/runtime/kwalletd/CMakeLists.txt
+index 627fb69c..4a5f6135 100644
+--- a/src/runtime/kwalletd/CMakeLists.txt
++++ b/src/runtime/kwalletd/CMakeLists.txt
+@@ -54,7 +54,7 @@ ecm_qt_declare_logging_category(kwalletd6
+     IDENTIFIER KWALLETD_LOG
+     CATEGORY_NAME kf.wallet.kwalletd
+     DESCRIPTION "kwalletd"
+-    EXPORT KWALLET
++    EXPORT KWALLET_RUNTIME
+ )
+ 
+ target_link_libraries(kwalletd6
+-- 
+2.49.0
+

diff --git a/kde-frameworks/kwallet-runtime/kwallet-runtime-9999.ebuild 
b/kde-frameworks/kwallet-runtime/kwallet-runtime-9999.ebuild
new file mode 100644
index 0000000000..3905470868
--- /dev/null
+++ b/kde-frameworks/kwallet-runtime/kwallet-runtime-9999.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KDE_ORG_NAME="kwallet"
+QTMIN=6.7.2
+inherit ecm frameworks.kde.org optfeature
+
+DESCRIPTION="Framework providing desktop-wide storage for passwords"
+
+LICENSE="LGPL-2+"
+KEYWORDS=""
+IUSE="gpg +man +keyring +legacy-kwallet X"
+
+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/kwallet-${KDE_CATV}*:6
+       =kde-frameworks/kwidgetsaddons-${KDE_CATV}*:6
+       =kde-frameworks/kwindowsystem-${KDE_CATV}*:6[X?]
+       gpg? ( app-crypt/gpgme:=[qt6(-)] )
+       legacy-kwallet? ( app-crypt/libsecret )
+"
+RDEPEND="${DEPEND}
+       !<kde-frameworks/kwallet-5.116.0-r2:5[-kf6compat(-)]
+       !<kde-frameworks/kwallet-6.14.0:6
+"
+BDEPEND="man? ( >=kde-frameworks/kdoctools-${KDE_CATV}:6 )"
+
+PATCHES=( "${FILESDIR}/${PN}-6.14.0-stdalone.patch" )
+
+src_prepare() {
+       ecm_src_prepare
+       cmake_run_in src cmake_comment_add_subdirectory api
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_KWALLET_QUERY=ON # could be split easily together w/ 
docs
+               $(cmake_use_find_package gpg Gpgmepp)
+               -DBUILD_KSECRETD=$(usex keyring)
+               -DBUILD_KWALLETD=$(usex legacy-kwallet)
+               $(cmake_use_find_package man KF6DocTools)
+               -DWITH_X11=$(usex X)
+       )
+
+       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-runtime/metadata.xml 
b/kde-frameworks/kwallet-runtime/metadata.xml
new file mode 100644
index 0000000000..dec410a82e
--- /dev/null
+++ b/kde-frameworks/kwallet-runtime/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="project">
+               <email>k...@gentoo.org</email>
+               <name>Gentoo KDE Project</name>
+       </maintainer>
+       <upstream>
+               
<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>
+               <flag name="legacy-kwallet">Support KWallet D-Bus API for 
applications still using it</flag>
+       </use>
+       <slots>
+               <subslots>
+                       Must only be used by packages that are known to use 
private parts of the Frameworks API.
+               </subslots>
+       </slots>
+</pkgmetadata>

Reply via email to