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>