summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2025-10-08 17:52:11 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2025-10-08 18:27:42 +0200
commitb5cc895aca8e527870e415cf73435b74f013b9c2 (patch)
treea1e733086830b1908a4f1e232b55105c9d8cdfbb
parentff9a37f51254ca8dd7f51b5f95f8c997fe4524b9 (diff)
downloadkde-b5cc895aca8e527870e415cf73435b74f013b9c2.tar.gz
kde-b5cc895aca8e527870e415cf73435b74f013b9c2.tar.bz2
kde-b5cc895aca8e527870e415cf73435b74f013b9c2.zip
kde-frameworks/ksecretd-services: new package, add 6.19.0, 9999
Provides IUSE systemd to work around KDE-bug #509680 [1] caused by upstream commit ecf9e2ec7fceca538a9266f5bb9488b4dced1d09 [2] [1] https://bugs.kde.org/show_bug.cgi?id=509680 [2] https://invent.kde.org/frameworks/kwallet/-/commit/ecf9e2ec Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r--kde-frameworks/ksecretd-services/Manifest1
-rw-r--r--kde-frameworks/ksecretd-services/ksecretd-services-6.19.0.ebuild62
-rw-r--r--kde-frameworks/ksecretd-services/ksecretd-services-9999.ebuild62
-rw-r--r--kde-frameworks/ksecretd-services/metadata.xml12
4 files changed, 137 insertions, 0 deletions
diff --git a/kde-frameworks/ksecretd-services/Manifest b/kde-frameworks/ksecretd-services/Manifest
new file mode 100644
index 00000000000..c663f748914
--- /dev/null
+++ b/kde-frameworks/ksecretd-services/Manifest
@@ -0,0 +1 @@
+DIST kwallet-6.19.0.tar.xz 364584 BLAKE2B d0fd0193d6020d71b039fbcd283e76e66a13e22f90dfb6ee83bc3c0643e16d819f4587316b00b280fb51b5c464b56de20e3fdde8adc121438554e988f0c2a8e0 SHA512 e5e5487d7d8d92833ab3f1ad2c9ece40a87ec938037fbdeb8511ca3514ac5077b54b4a24843b13a99aca4953528455b1a63a72881715178710b8c3783d5e96e5
diff --git a/kde-frameworks/ksecretd-services/ksecretd-services-6.19.0.ebuild b/kde-frameworks/ksecretd-services/ksecretd-services-6.19.0.ebuild
new file mode 100644
index 00000000000..29645d228ca
--- /dev/null
+++ b/kde-frameworks/ksecretd-services/ksecretd-services-6.19.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# this is purely for service file creation
+ECM_I18N="false"
+ECM_HANDBOOK="false"
+KDE_ORG_NAME="kwallet"
+inherit ecm-common frameworks.kde.org
+
+DESCRIPTION="D-Bus service files for ksecretd kwallet runtime component"
+
+LICENSE="LGPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="systemd"
+
+RDEPEND="!<kde-frameworks/kwallet-runtime-6.18.0-r1:6"
+
+ecm-common_inject_heredoc() {
+ my_configure_file(){
+ echo "configure_file(src/runtime/ksecretd/${1}.in \${CMAKE_CURRENT_BINARY_DIR}/${1})"
+ }
+
+ cat >> CMakeLists.txt <<- _EOF_ || die
+ option(WITH_SYSTEMD "Install service file for portal DBus service" ON) # KDE-bug #509680
+ $(my_configure_file org.kde.secretservicecompat.service)
+ if(WITH_SYSTEMD)
+ $(my_configure_file org.freedesktop.impl.portal.desktop.kwallet.service)
+ endif()
+ install(FILES
+ \${CMAKE_CURRENT_BINARY_DIR}/org.kde.secretservicecompat.service
+ DESTINATION \${KDE_INSTALL_DBUSSERVICEDIR}
+ )
+ if(WITH_SYSTEMD)
+ install(FILES
+ \${CMAKE_CURRENT_BINARY_DIR}/org.freedesktop.impl.portal.desktop.kwallet.service
+ DESTINATION \${KDE_INSTALL_DBUSSERVICEDIR}
+ )
+ endif()
+ _EOF_
+}
+
+src_prepare() {
+ ecm-common_src_prepare
+
+ # Safety measure in case new services are added in the future
+ local known_num_of_services=2
+ local found_num_of_services=$(find src/runtime/ksecretd -iname "*service.in" | wc -l)
+ if [[ ${found_num_of_services} != ${known_num_of_services} ]]; then
+ eerror "Number of service files mismatch!"
+ eerror "Expected: ${known_num_of_services}"
+ eerror "Found: ${found_num_of_services}"
+ die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=( -DWITH_SYSTEMD=$(usex systemd) )
+ ecm-common_src_configure
+}
diff --git a/kde-frameworks/ksecretd-services/ksecretd-services-9999.ebuild b/kde-frameworks/ksecretd-services/ksecretd-services-9999.ebuild
new file mode 100644
index 00000000000..1486436e580
--- /dev/null
+++ b/kde-frameworks/ksecretd-services/ksecretd-services-9999.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# this is purely for service file creation
+ECM_I18N="false"
+ECM_HANDBOOK="false"
+KDE_ORG_NAME="kwallet"
+inherit ecm-common frameworks.kde.org
+
+DESCRIPTION="D-Bus service files for ksecretd kwallet runtime component"
+
+LICENSE="LGPL-2+"
+SLOT="0"
+KEYWORDS=""
+IUSE="systemd"
+
+RDEPEND="!<kde-frameworks/kwallet-runtime-6.18.0-r1:6"
+
+ecm-common_inject_heredoc() {
+ my_configure_file(){
+ echo "configure_file(src/runtime/ksecretd/${1}.in \${CMAKE_CURRENT_BINARY_DIR}/${1})"
+ }
+
+ cat >> CMakeLists.txt <<- _EOF_ || die
+ option(WITH_SYSTEMD "Install service file for portal DBus service" ON) # KDE-bug #509680
+ $(my_configure_file org.kde.secretservicecompat.service)
+ if(WITH_SYSTEMD)
+ $(my_configure_file org.freedesktop.impl.portal.desktop.kwallet.service)
+ endif()
+ install(FILES
+ \${CMAKE_CURRENT_BINARY_DIR}/org.kde.secretservicecompat.service
+ DESTINATION \${KDE_INSTALL_DBUSSERVICEDIR}
+ )
+ if(WITH_SYSTEMD)
+ install(FILES
+ \${CMAKE_CURRENT_BINARY_DIR}/org.freedesktop.impl.portal.desktop.kwallet.service
+ DESTINATION \${KDE_INSTALL_DBUSSERVICEDIR}
+ )
+ endif()
+ _EOF_
+}
+
+src_prepare() {
+ ecm-common_src_prepare
+
+ # Safety measure in case new services are added in the future
+ local known_num_of_services=2
+ local found_num_of_services=$(find src/runtime/ksecretd -iname "*service.in" | wc -l)
+ if [[ ${found_num_of_services} != ${known_num_of_services} ]]; then
+ eerror "Number of service files mismatch!"
+ eerror "Expected: ${known_num_of_services}"
+ eerror "Found: ${found_num_of_services}"
+ die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=( -DWITH_SYSTEMD=$(usex systemd) )
+ ecm-common_src_configure
+}
diff --git a/kde-frameworks/ksecretd-services/metadata.xml b/kde-frameworks/ksecretd-services/metadata.xml
new file mode 100644
index 00000000000..34fd23fdbd0
--- /dev/null
+++ b/kde-frameworks/ksecretd-services/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>kde@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>
+</pkgmetadata>