Tag Archives: planetkde

Only two weeks from Randa, so many changes for me!

Three weeks ago I attended my second Randa Meetings. I found the same gentle Mario, richer now, as he has a little boy. The little boy’s actually a tester for the KDE Edu GCompris suite 😉 I’d like to thank Mario and his family for their support in organizing this event. It’s not that simple to keep happy so many people.

The kind people (I better say hackers) I already knew where joined by new faces, and it’s a pleasure to see our community is a very vivid and active one. They join this sprint from a bunch of different countries and I find it very interesting to discuss with them about their countries and experiences. And finally to see we are all the same.

Attending Randa was on my way from Lyon to Timisoara, Romania, where I started a new job on September 15. And that’s not my home town, neither my family’s. Actually, it’s my first time I live in this town, and I quite enjoy it. However, new job, new apartment, new people – all this let little to time for KSecret Service hacking. But as you can see, I can blog about it, so new commits will follow on the source code 🙂

Hopefully, until next Randa Meetings 2016 we’ll have a stable version everyone will be happy with. Until then, you only have two things to do, please:

  • Stay tuned and be a pre-alpha tester – I’ll blog here when first usable versions will become available
  • Donate to the ongoing fundraiser, to keep these KDE Sprints possible

Oh, last but no least, I may well organize a KDE Sprint here in Timi?oara. Anybody interested?

 

KSecret Service just created its first secrets file

Greetings from Randa!

Take a look at this:
2015-09-08-183923_ksecrets_first_file

Well, this is the first secrets file ever created with KSecret Service, and it happened here, in Randa. For the impatient – just hold your keyboards, the code is not yet ready. The tests are still failing, but items started to appear on disk, encrypted with libgcrypt.

Stay tuned and meanwhile remember, the fund raising campaign for KDE Sprints is still ongoing. Please consider to donate by clicking the banner below to make coding sprint like this one possible.
KDE sprints 2015 fundraiser campaign

Next week I’ll be in Randa

Since Akademy 2015 KSecrets Service development continued. I did lots of code cleanup. The async API now uses QFuture and the secrets file backend, based on libgcrypt, was added. Tests are there to confirm it’s not yet working. 🙂

One week from now I’ll be in Randa. The hacking ambiance will surely help to hopefully get a first pre-alpha version of the service. I also look forward to peer reviews and feedback on this new codebase.

This kind of events is made possible by our generous donors. If you’d like to join them and donate, helping the KDE community and me, then just click the image below:
KDE Sprints Fundraiser

Goodbye Akademy 2015, See You Randa 2015

OK, Akademy 2015 ended last week. This is my second Akademy, though the first full one.

A Coruña is located on the Atlantic front and on my way there, I encountered rainy spots and the rain was a familiar one for me, after having lived several years in northern France (Paris and Pays de la Loire). But this time I actually found it quite enjoyable, knowing that I left behind a 39°-heated Lyon. So, yes, A Coruña is warmer than what we could encounter in other parts of Spain. I shared my car with Sandro Knauß, who came to Lyon from Germany by train, so the one full-day trip was quite nice, KDE hacking-oriented. But be assured, we were also able to talk lots of other topics.

The venue and the hosting in Rialta were just perfect. The local team did an awesome job when organizing the event. They had it all: welcome party – we arrived at the right moment for the Queimada – sponsored food during the week-end (thanks Blue Systems), essential goodies (they carried the VIM T-shirt), “social event” – that was really a party where I had an excellent time -, the day trip and all the schedules which weren’t difficult to follow. Rialta has free swimming pool and I actually managed to use it.

Akademy is about KDE technology but also about meeting like-minded people. Getting along together is really easy, language barrier took apart, and I actually really enjoyed just sitting there and hacking with others, then having a beer or discussing technical issues or ideas. I already miss these spontaneous late evening hacking moments.

Speaking about KDE technology, we are at a turning moment, with Plasma Mobile becoming available. KDE is now ready to take on the mobiles platforms and that’s pretty cool. I look forward to the moment when I’ll have a Linux smartphone running both KDE software and Android applications (with Shashlik, bien-sur). I’ll do my best to help and I already plan to support KSecrets Service on mobile.

KSecrets Service had it’s own BoF. The updated slides are here. I’m working right now in implementing it and that would bring us to Randa, where I intend to continue even further and hopefully I’ll even have a working version by that time.

Randa is a great location for hacking. In fact, no, not Randa, but the venue in Randa is quite perfect for that 🙂 They have that big room under the roof, upstairs, where I look forward to hack, between some BoF’s or swiss meals. Some people who couldn’t make it to Akademy will go to Randa, so I look forward to meeting them there. Oh, and if you can, please help them getting there by the means of a small donation.

Finally, but not less importantly, I’d like to thank KDE e.V. and the sponsors for organizing these events and for providing travel reimbursement.

KWallet needs a serious face-lift ; enter KSecret Service

Users are often confused by the current KWallet system behavior. When their computers start, they enter the KDE session password but just after logging-in, they are prompted yet another password, for something named KWallet. Sometimes, they even see several password prompts from KWallet, depending on their precise desktop configuration.

Some users find that annoying and they file bug reports or, even worse, simply uncheck the “Enable the KDE wallet subsystem” in an attempt to deactivate it as a whole and switch to using some other external tools. Well, these tools are OK, but the KDE experience is affected, as the applications are no longer able to correctly store and retrieve their secrets. And that raises the barrier to entry for some of our potential users, adding negative points against KDE.

The remaining users have now several devices and would like to have their passwords synchronized all over these devices. They won’t find this kind of function and they’ll start using some other external tools, providing cross-device synchronization. That’s another bad point for the KDE experience.

Finally, more advanced users would like to know where their wallet data is stored and they would like to be able to put their wallets in some places of their choice, perhaps in an owncloud synchronized directory.

Enter KSecret Service!

The KDE Wallet system has some design flaws (I’ll write more on that in the future, but right now my post risk to get too long) affecting the security and should be replaced ASAP. Back in 2008 and until or 2011 an initiative was taken by the former KDE Wallet maintainer Michael Leupold and Stef Walter from GNOME to create a Freedesktop.org interface aiming to replace it. It’s called “Secret Service” and the draft may be found here: http://standards.freedesktop.org/secret-service/

This interface is already implemented by GNOME keyring and AFAICT KDE should also implement this interface if it wanted to enhance users experience.

All these points will be addressed by a new system, aiming to replace KWallet. It’s name is already known – KSecret Service.

I’m in the process of (re)defining it’s architecture and I’ll post it, for feedback, on the KDE developer mailing list as soon as I’ll get something stable enough. I cannot tell more right now – the post is already long enough – but it’s an ambitious plan! And I’m sure you’ll like it!

KDE4/KF5 Coinstalability and the KWallet

Plasma 5 is about to become part of the mainstream Linux distributions, and we are getting more and more feedback about this new platform. This blog post is a reaction to this increasing feedback from our users.

Plasma5 introduces the KDE Frameworks 5 platform (or KF5) which uses Qt5 as it’s foundation. This new platform aims to replace the legacy KDE4 platform, which was mainly the old monolithic kdelibs. More and more applications got ported to this new platform. Just stay tuned with the next release announcement, which is imminent. However, some applications, and among them some important ones, are not yet ported to the KF5 platform. And this brings on, or more appropriately reminds, the coinstalability matter.

Back in time, KWallet was split from kdelibs and the KF5/KWallet Framework has been created. This is the API part. For non-programmers, this part is the one used by the applications to store the passwords or other secrets into the KDE Wallet System. The applications that were ported to KF5 are now using the new KF5/KWallet framework.

The KDE Wallet System has two other components. The KWalletManager users know very well and the background service, kwalletd, that actually do the work and securely store the secrets on disk. In KDE4, these two components lived in two other places: kdeutils/kwalletmanager and kde-runtime/kwalletd. This separation has always been somewhat confusing and the decision was made to bring the runtime component inside KF5/KWallet framework. This runtime component has also been ported to Qt5. And the coinstalability constraint led us to rename it to kwalletd5. So the applications that were ported to KF5 are now using kwalletd5 behind the scenes, as the KF5/KWallet framework connects to this new runtime.

The KWalletManager was not accepted for inclusion in the KF5/KWallet framework and it still lives under kdeutils. It has been ported to KF5/Qt5 under the branch named “frameworks”. Same coinstalability constraints were applied, so building KWalletManager from this branch yields kwalletmanager5. This KWalletManager5 would connect, via the KF5/KWallet framework, to the new kwalletd5.

But what happens to the passwords from my KDE4 installation?

There are two possible cases where users are going from KDE4 to Plasma5 and the KF5-based platform. The more usual is the upgrade path. Others may opt for clean install. I’ll address the two cases here, and I’d recommend the upgrade path, as it requires the least user interaction.

When upgrading, your system will get kwalletd5 along with the existing kwalletd. kwalletd5 is designed to detect an existing kwalletd via D-Bus upon starting-up and, if it finds it, it’ll trigger the migration wizard. I already blogged about it: KWallet for Plasma 5 now automatically migrates KDE4 wallets!

If you rather decide to do a clean install, you’ll get kwalletd5. Odds are you’ll also get kwalletd as the Linux distributions would decide to keep it, to let run the still-to-be-ported to KF5 applications. If the home directory was preserved during the installation, then the system should go to the upgrade state upon kwalletd5 start-up, as the kwalletd5 would detect the kwalletd, which in turn would find your old wallets. So you should get the migration wizard triggered, and your passwords should land into kwalletd5.

If you opt for a clean home directory along the new install, then you’ll want to export your wallets prior to reinstalling the system. Then re-import your wallets both in KWalletManager and KWalletManager5! As such, applications still using the KDE4 infrastructure will find your passwords.

As long as you’ll continue using KDE4 applications, you’ll have to maintain the two copies of your wallets. But I expect that this would not last as the applications are being quickly ported to KF5. I agree that’s not very convenient, but I’ll add that I already managed to uninstall the old kwalletd, so you should also get there anytime soon.

What about the Chrome or Firefox integration?

Firefox is now compatible with KF5/KWallet, read the announcement on the blog of Andreas Scarpino here

Chromium is not yet compatible AFAIK. Feel free to file a bug report on their bug-tracking system here if you want it brought to you.

In conclusion

I hope that this rather long blog post would bring some light on the new KF5-base KWallet infrastructure. I’d like to thank users that file bugs and by doing this let us improve our software.

Scripting addicts, check the new kwallet-query tool!

This weekend I created a new kwallet tool, named kwallet-query. It now lives in playground/utils for you to try it up. Just issue “kwallet-query –help” after building it to see the available options.

qwallet-query sports two modes: list mode and read value mode. You should specify the mode when invoking the tool, along with the wallet name you want the tool to read. I’d also be glad to hear back from you as to what this tool should provide in addition to this. This initial version will work on KF5-based systems. Should I also add support for the legacy KDE4 wallet?

You may find this tool handy when reading the wallet from other places. For instance, I wanted to create this tool in order to get my passwords from my wallet by using dmenu on my I3WM-enabled KDE session.

For those interested about the dmenu integration thing, have a look at this: https://github.com/valir/kwallet-dmenu. It’s a little script that uses the new kwallet-query tool in two phases. First, it’ll send the list of folders you have in the Passwords section of the wallet. It’ll feed the list to dmenu who’ll invite you to select the folder you want to read. A second invocation will read the folder you choose from the wallet and once again will feed dmenu to let you choose one entry, corresponding to one line in the password stored in the kwallet. The selected entry will be pu into the clipboard, so you’ll only have to press Shift+Insert into the application where you where, without further workflow break. No more kwalletmanager visiting to copy/paste your secrets items!

Once again, I’m looking forward for your feeback (bug reports or even comments here). I plan to get this tool through the kdereview process about one month from now.

I was in Brno!

This year Akademy’s timing was just perfectly adjusted with my annual vacation timing. For personal reasons, I only could go vacationing in September. Brno is right on the way from Lyon to Romania, so I decided to take my car and make a stop there. My girl-friend was kind enough to accept spending some time alone in Brno, while I was attending the second day. I’d like to thank her really much for accepting this. Sure enough, I would have liked to attend the first day also, but I used that full day to drive from Lyon to Brno. And BTW, speaking about driving in Europe, I’m now writing this in Cluj-Napoca. So I have behind me highways from France, Germany, Czech Republic, Slovakia, Hungary and Romania. Sygic GPS navigation software allowed me a smooth ride along this long road, as it features offline maps. And where I had data connection, I used WAZE for it’s social features.

This second Akademy day was the moment for me to catch up a little with several KDE great people I know, and with whom I’d really like to spend some more time. The location in Brno is outstanding, and the event was perfectly setup. Second day presentations brought my attention to several things:
– The Jungle project,
– KDE & Android,
– Accessibility.

The Jungle project, brilliantly presented by Alex Fiestas, it’s quite impressive. It aims unifying several multimedia services like youtube and your local media library. The promise is great, as you’ll be able to start watching your favourite videos on your Android device, then continue it on your KDE Desktop, and forth. I’ll really keep an eye on this project and hope it’ll add support for Facebook and Google+ sharing in a future release.

KDE & Android was featured in two presentations. The first one was about the KDE Connect project. I already use this project and I’m already working on an MPRIS widget for the Android device. Hopefully I’ll get enough time to take into account the feedback I got from the review request I already submitted. I also plan to add some kind of KWallet or secrets support. Alex told me that it’ll be nice if we could send passwords from the KDE Desktop to the Android device. However, that’ll not answer to my personal need, as I’d like to have a real sync between my device and my wallet.

The second KDE & Android topic was launched by Aleix Pol Gonzalez. It’s about an attempt to bring some KDE applications to the Android world. That’s an awesome project and I’ll take a closer look to this and keep you posted.

Finally, Frederik Gladhorn brought-up the accessibility topic and showed as the current progress of the accessibility features in Qt and so KDE. This is a very important topic, and I really hope people with disabilities would benefit this technology. I remember that around 10 years ago I’ve met someone who lost his view after an accident. He needed a braille display and at that time I understood the accessibility is really inaccessible (pun intended) to these people, mainly for material reasons. The price tag of accessible computers is really high and hopefully free desktops like KDE will help these people in their day to day activities.

So, KDE will bring us plenty of new and exciting features!

KWallet for Plasma 5 now automatically migrates KDE4 wallets!

Next time you’ll start your updated Plasma 5 session’s KDE Wallet system, it’ll eventually start migrating your wallets. The precondition is that you’re doing that on a system that also has KDE4 and that you previously used that installation’s KDE Wallet system. If your system doesn’t have a KDE4 wallet daemon, then nothing will happen.

Simply follow the instructions of the wizard that’ll popup. If you accept the migration option, then for each of your existing KDE4 wallet you’ll be :
– prompted with a new Plasma 5 wallet creation wizard – that’ll eventually be the moment to switch to GPG wallets 😉
– eventually prompted for the old wallet’s password, it the old daemon didn’t had it already opened by some other KDE4 program.
The migration assistant will preserve wallet names and wallet internal structure.

As usual, do not hesitate to file bug reports if you encounter any problem!

A final note about those who installed KDE4 in a prefix that’s not /usr. Please ‘ln -s [your kwalletd location] /usr/bin/kwalletd’ in order to let the migration agent correctly find and start the KDE4 daemon. Without that, it’ll not trigger the migration. (yes, that’s a quick hack, but it works).