File kf6-kwallet.spec of Package kf6-kwallet
#
# spec file for package kf6-kwallet
#
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define qt6_version 6.8.0
%define rname kwallet
# Full KF6 version (e.g. 6.23.0)
%{!?_kf6_version: %global _kf6_version %{version}}
%bcond_without released
Name: kf6-kwallet
Version: 6.23.0
Release: kf.57.1
Summary: Safe desktop-wide storage for passwords
License: LGPL-2.1-or-later
URL: https://www.kde.org
Source: %{rname}-%{version}.tar.xz
%if %{with released}
Source1: %{rname}-%{version}.tar.xz.sig
Source2: frameworks.keyring
%endif
BuildRequires: fdupes
BuildRequires: kf6-extra-cmake-modules >= %{_kf6_version}
BuildRequires: libgcrypt-devel >= 1.5.0
BuildRequires: libgpgmepp-devel
BuildRequires: pkgconfig
BuildRequires: cmake(KF6ColorScheme) >= %{_kf6_version}
BuildRequires: cmake(KF6Config) >= %{_kf6_version}
BuildRequires: cmake(KF6CoreAddons) >= %{_kf6_version}
BuildRequires: cmake(KF6Crash) >= %{_kf6_version}
BuildRequires: cmake(KF6DBusAddons) >= %{_kf6_version}
BuildRequires: cmake(KF6DocTools) >= %{_kf6_version}
BuildRequires: cmake(KF6I18n) >= %{_kf6_version}
BuildRequires: cmake(KF6Notifications) >= %{_kf6_version}
BuildRequires: cmake(KF6Service) >= %{_kf6_version}
BuildRequires: cmake(KF6WidgetsAddons) >= %{_kf6_version}
BuildRequires: cmake(KF6WindowSystem) >= %{_kf6_version}
BuildRequires: cmake(Qca-qt6)
BuildRequires: cmake(Qt6DBus) >= %{qt6_version}
BuildRequires: cmake(Qt6Gui) >= %{qt6_version}
BuildRequires: cmake(Qt6Test) >= %{qt6_version}
BuildRequires: cmake(Qt6ToolsTools) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
BuildRequires: pkgconfig(libsecret-1)
%description
This framework contains two main components:
* Interface to KWallet, the safe desktop-wide storage for passwords on KDE workspaces.
* The kwalletd used to safely store the passwords on KDE work spaces.
%package -n libKF6Wallet6
Summary: Safe desktop-wide storage for passwords
Requires: kf6-kwallet >= %{version}
%description -n libKF6Wallet6
This framework contains two main components:
* Interface to KWallet, the safe desktop-wide storage for passwords on KDE workspaces.
* The kwalletd used to safely store the passwords on KDE work spaces.
%package -n libKF6WalletBackend6
Summary: Safe desktop-wide storage for passwords
%description -n libKF6WalletBackend6
This framework contains two main components:
* Interface to KWallet, the safe desktop-wide storage for passwords on KDE workspaces.
* The kwalletd used to safely store the passwords on KDE work spaces.
%package -n kwalletd6
Summary: Safe desktop-wide storage for passwords
Requires: kf6-kwallet >= %{version}
Recommends: kf6-kwallet-tools
# kwalletd6 ships a compat org.kde.kwalletd5.service file. It needs to replace
# kwalletd5 to keep using plasma5 with KF6-based apps
Provides: kwalletd5 = %{version}
Obsoletes: kwalletd5 < %{version}
Obsoletes: kwalletd5-lang < %{version}
%description -n kwalletd6
This framework contains two main components:
* Interface to KWallet, the safe desktop-wide storage for passwords on KDE workspaces.
* The kwalletd used to safely store the passwords on KDE work spaces.
%package tools
Summary: Safe desktop-wide storage for passwords
Conflicts: kwallet-tools
%description tools
This framework contains two main components:
* Interface to KWallet, the safe desktop-wide storage for passwords on KDE workspaces.
* The kwalletd used to safely store the passwords on KDE work spaces.
%package devel
Summary: Safe desktop-wide storage for passwords
Requires: libKF6Wallet6 = %{version}
Requires: cmake(Qt6Gui) >= %{qt6_version}
%description devel
This framework contains two main components:
* Interface to KWallet, the safe desktop-wide storage for passwords on KDE workspaces.
* The kwalletd used to safely store the passwords on KDE work spaces.
Development files.
%lang_package -n kf6-kwallet-tools
%lang_package -n kwalletd6
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
%fdupes %{buildroot}
%find_lang kwalletd6
%find_lang kwallet6-query
%ldconfig_scriptlets -n libKF6Wallet6
%ldconfig_scriptlets -n libKF6WalletBackend6
%files
%{_kf6_debugdir}/kwallet.categories
%{_kf6_debugdir}/kwallet.renamecategories
%files -n kwalletd6
%{_kf6_applicationsdir}/org.kde.ksecretd.desktop
%{_kf6_bindir}/ksecretd
%{_kf6_bindir}/kwalletd6
%{_kf6_notificationsdir}/ksecretd.notifyrc
%{_kf6_sharedir}/dbus-1/services/org.freedesktop.impl.portal.desktop.kwallet.service
%{_kf6_sharedir}/dbus-1/services/org.kde.kwalletd5.service
%{_kf6_sharedir}/dbus-1/services/org.kde.kwalletd6.service
%{_kf6_sharedir}/dbus-1/services/org.kde.secretservicecompat.service
%dir %{_kf6_sharedir}/xdg-desktop-portal
%dir %{_kf6_sharedir}/xdg-desktop-portal/portals
%{_kf6_sharedir}/xdg-desktop-portal/portals/kwallet.portal
%files -n libKF6Wallet6
%license LICENSES/*
%doc README.md
%{_kf6_libdir}/libKF6Wallet.so.*
%files -n libKF6WalletBackend6
%{_kf6_libdir}/libKF6WalletBackend.so.*
%files tools
%{_kf6_bindir}/kwallet-query
%{_kf6_mandir}/man1/kwallet-query.1%{?ext_man}
%files devel
%{_kf6_libdir}/libKF6Wallet.so
%{_kf6_cmakedir}/KF6Wallet/
%{_kf6_includedir}/KWallet/
%{_kf6_dbusinterfacesdir}/kf6_org.kde.KWallet.xml
%files -n kwalletd6-lang -f kwalletd6.lang
%files -n kf6-kwallet-tools-lang -f kwallet6-query.lang
%changelog
* Fri Feb 6 2026 Christophe Marin <christophe@krop.fr>
- Update to 6.23.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.23.0
- Changes since 6.22.0:
* Update dependency version to 6.23.0
* Fix D-Bus activation race with PAM-launched ksecretd (kde#509680)
* Enable LSAN in CI
* Fix QCA destruction order (kde#490788)
* Use more portable alternative to ssize_t
* Update version to 6.23.0
* Sun Jan 4 2026 Christophe Marin <christophe@krop.fr>
- Update to 6.22.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.22.0
- Changes since 6.21.0:
* Update dependency version to 6.22.0
* Update version to 6.22.0
* Fri Dec 12 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.21.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.21.0
- Changes since 6.20.0:
* Update dependency version to 6.21.0
* Always reload collections prior to secret_service_get_collections (kde#512135)
* Update version to 6.21.0
* Thu Nov 13 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.20.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.20.0
- Changes since 6.19.0:
* Update dependency version to 6.20.0
* Use QCoreApplication for kwallet-query
* Remove unused QtWidgets dep from API
* Enable KCrash for kwalletd6
* KSecretd: Use modern way of disabling session management
* kwalletd: Disable session management
* Fix dismissing prompt for Unlock
* use securelySeeded like in KWalletPortalSecrets::generateSecret
* Backend: Simplify random gathering to QRandomGenerator
* Update version to 6.20.0
* Tue Oct 7 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.19.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.19.0
- Changes since 6.18.0:
* Update dependency version to 6.19.0
* ci: skip fdo_secrets_test on Windows
* ci: require passing tests on all platforms
* Update version to 6.19.0
* Mon Sep 8 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.18.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.18.0
- Changes since 6.17.0:
* Update dependency version to 6.18.0
* Add service file for portal DBus service (kde#508870)
* Bump kf ecm_set_disabled_deprecation_versions. Make sure that it compiles fine without kf 6.17 deprecated methods
* Fix compile kwallet using kde-builder (kde#485564)
* Update version to 6.18.0
* Mon Aug 4 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.17.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.17.0
- Changes since 6.16.0:
* Update dependency version to 6.17.0
* Bump kf ecm_set_disabled_deprecation_versions
* It compiles fine without qt 6.10 deprecated methods
* Update version to 6.17.0
* Mon Jul 7 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.16.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.16.0
- Changes since 6.15.0:
* Update dependency version to 6.16.0
* Depend on what/when we use it
* Update version to 6.16.0
* Mon Jun 9 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.15.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.15.0
- Changes since 6.14.0:
* Update dependency version to 6.15.0
* Don't freeze when the create wallet dialog is dismissed (kde#504678)
* It compiles fine without kf 6.14 deprecated methods
* Hide wallets with no name (kde#504656)
* Add tags file to documentation
* Add missing qhp projects
* Remove leftover doxygen file
* Use desktop file to launch kwalletmanager
* Drop codepath for kstart5
* Fix arguments in startManagerForKSecretD
* Add landing page for QDoc
* Don't make clients hang if kwallet is disabled (kde#504014)
* Don't build kwalletd on macOS either
* Fix assertion failure due to invalid DBus object path
* It compiles fine without kf_6_13 deprecated methods
* Port API documentation to QDoc syntax
* Add Alpine CI
* Update version to 6.15.0
- Replace _kf6_bugfix_version usage
- Drop patch, merged upstream:
* 0001-Don-t-make-clients-hang-if-kwallet-is-disabled.patch
* Thu May 15 2025 Fabian Vogt <fabian@ritter-vogt.de>
- Add patch to avoid DBus failures if disabled (kde#504014):
* 0001-Don-t-make-clients-hang-if-kwallet-is-disabled.patch
* Sun May 4 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.14.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.14.0
- Changes since 6.13.0:
* Update dependency version to 6.14.0
* Set the KWALLETD_BIN_PATH to ksecretd
* Fix compile without deprecated API
* Backend folder doesn't exist
* Fix build
* Small config file changes
* Use DBus calls only to avoid unstable libsecret API
* Compatibility for binary data
* Be very aggressive with dbus activation
* Address some comments
* Proxy pamOpen
* When renaming, refuse to overwrite an already existing entry (kde#458639)
* Correctly forward collection created and deleted signals
* Minor code refactors
* Support KeePassXC as SecretService backend
* Compatibility for Windows
* Fix FdoSecretsTest
* Add support for Json encoding maps
* Add secret service bridge (kde#491280)
* Prepare kwalletd for migration to be a bridge
* Update version to 6.14.0
* Fix assertion failure due to invalid DBus object path
* Sat Apr 5 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.13.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.13.0
- Changes since 6.12.0:
* Add missing include mocs
* It compiles fine without qt6.9 deprecated methods
* It compiles fine without kf6.12 deprecated methods
* Better salt generation
* Update dependency version to 6.13.0
* Tue Mar 11 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.12.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.12.0
- Changes since 6.11.0:
* Update dependency version to 6.12.0
* Remove superfluous spaces and quotes from debug output
* Update version to 6.12.0
* Sat Feb 8 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.11.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.11.0
- Changes since 6.10.0:
* Update dependency version to 6.11.0
* Add xml/yaml linting
* Don't explicitly delete copy ctor
* Drop unused functions
* CI: Add linux-qt6-next build
* Update version to 6.11.0
* Thu Jan 9 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.10.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.10.0
- Changes since 6.9.0:
* Update dependency version to 6.10.0
* Remove unimplemented methods
* Update version to 6.10.0
* Sun Dec 8 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.9.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.9.0
- Changes since 6.8.0:
* Update dependency version to 6.9.0
* It compiles fine without deprecated methods
* Link with libnetwork on Haiku
* Add global option to disable X11
* Update version to 6.9.0
* Mon Nov 4 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.8.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.8.0
- Changes since 6.7.0:
* Update dependency version to 6.8.0
* Don't exclude deprecated functions from build (kde#493356)
* Update version to 6.8.0
* Mon Oct 7 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.7.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.7.0
- Changes since 6.6.0:
* Update dependency version to 6.7.0
* Update version to 6.7.0
* Sat Sep 7 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.6.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.6.0
- Changes since 6.5.0:
* Update version to 6.6.0
* Set up crash handling
* Remove dead kdeinit code
* Mon Aug 5 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.5.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.5.0
- Changes since 6.4.0:
* Update dependency version to 6.5.0
* Update version to 6.5.0
* Tue Jul 9 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.4.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.4.0
- Changes since 6.3.0:
* gitignore: add VS Code dir
* Wed Jun 5 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.3.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.3.0/
- Changes since 6.2.0:
* Fix secrets portal wallet access (kde#487348)
* Remove explicit maintainer from metainfo
* Mon May 27 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.2.1. Hotfix release:
* Fix secrets portal wallet access (kde#487348)
* Mon May 6 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.2.0
* New feature release
* For more details please see:
* https://kde.org/announcements/gear/6.2.0/
- Changes since 6.1.0:
* Fix reply type in portal implementation
* kwalletportalsecrets.h: Add missing include
* Implement XDG Secrets Portal (kde#466197)
* Fri Apr 5 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.1.0
* New feature release
- Changes since 6.0.0:
* update version for new release
* [kwallet-query] Create QApplication before using i18n (kde#482017)
* Ensure correct exit status by adding returns after exits in QueryDriver
* Thu Feb 29 2024 Christophe Marin <christophe@krop.fr>
- Make kwalletd6 replace kwalletd5. Only one daemon can be installed.
* Wed Feb 21 2024 Fabian Vogt <fabian@ritter-vogt.de>
- Update to 6.0.0
* New bugfix release
* Release announcement not available yet
- Changes since 5.249.0:
* update version for new release
* Avoid QtDBus module include in commonly used headers
* update version for new release
* Wed Jan 31 2024 Fabian Vogt <fabian@ritter-vogt.de>
- Update to 5.249.0 (6.0 RC 2):
* New bugfix release
* For more details see https://kde.org/announcements/megarelease/6/rc2/
* Mon Jan 15 2024 Fabian Vogt <fabian@ritter-vogt.de>
- Update to 5.248.0 (6.0 RC 1)
* For more details please see:
https://kde.org/announcements/megarelease/6/rc1/
* Sat May 27 2023 Christophe Marin <christophe@krop.fr>
- Init kf6-kwallet