Proposal: move KWalletManager inside KWallet framework

Stefan Bruens stefan.bruens at rwth-aachen.de
Fri May 29 01:48:46 UTC 2015


On Thursday 28 May 2015 23:26:19 Valentin Rusu wrote:
> * Stefan Bruens <stefan.bruens at rwth-aachen.de> [2015-05-28 02:39:15 +0200]:
> > 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.
> 
> Great!

Glad you like it ;-)

> > 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
> What about org.kde.kwalletd5 name? That's required for the KF5 KWallet
> API class.

The kwalletd5 service is registered as well, this part is completely 
unchanged.

> > 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.
> 
> Well, such a delay may be acceptable :-)
> 
> > 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:Fra
> > meworks5/kwallet
> Yeah, looking into this patch, I can confirm that the KF5 applications
> would have problems finding the wallet once the service name changed.

The service name does not change, kwalletd5 registers both org.kde.kwalletd 
and org.kde.kwalletd5.

I have checked with nm-applet5 (org.kde.kwalletd5) and akonadi 
(org.kde.kwalletd), both can retrieve their secrets from kwalletd5.

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