Proposal: move KWalletManager inside KWallet framework
Stefan Bruens
stefan.bruens at rwth-aachen.de
Thu May 28 00:39:15 UTC 2015
Hi,
I have tackled the problem with a different approach. As I did not see any
reason kwalletd5 could not provide the org.kde.kwalletd service, I patched my
kwalletd5 to provide both.
Details:
1. kwalletd5 checks the migration status. In case it already has run, it
immediately signals completion, otherwise the wizard is run and completion is
signaled afterwards.
2. Upon migration completion, kwalletd5 queues a service registration request
for "org.kde.kwalletd". This either immmediately succeeds, or we get a
QDBusConnectionInterface::ServiceQueued reply.
3. In case the request has been queued, org.kde.KApplication::quit() is called
via dbus. kwalletd5 becomes the new org.kde.kwalletd service owner
Corner cases:
In case kwalletd4 is not installed, the migration wizard is never completed,
and "alreadyMigrated" is never set. This delays the registration of
"org.kde.kwalletd" by 100ms.
For full replacement of the kde4 kwalletd I have a second dbus service file
which starts kwalletd5 instead of kwalletd(4). This file is in its own package
which conflicts with the kwalletd(4) package.
The benefits of this approach are:
1. Just on daemon instance
2. Only one canonical wallet - both o.k.kwl and o.k.kwl5 are actually the same
service with the same data store
3. You can edit your kf5 wallet with kwalletmanager(4)
The patch is a little bit ugly at the moment, but you can find it here:
https://build.opensuse.org/package/show/home:StefanBruens:branches:KDE:Frameworks5/kwallet
The split kdebase4-runtime/kdebase4-runtime-kwallet package which allows
deinstallation of kwalletd(4) if kwalletd5 and kwalletd5-compat is installed:
https://build.opensuse.org/package/show/home:StefanBruens:branches:KDE:Applications/kdebase4-runtime
Comments are welcome!
Kind regards,
Stefan
--
Stefan Brüns / Bergstraße 21 / 52062 Aachen
home: +49 241 53809034 mobile: +49 151 50412019
work: +49 2405 49936-424
More information about the Kde-frameworks-devel
mailing list