Here’s the usual bi-monthly update from KDE’s personal information management applications team. Since the last report 25 people contributed about 1300 code changes, focusing on bugfixes and infrastructure improvements for the 22.12 maintenance releases as well as preparing for the transition to Qt 6.

Upcoming KDE PIM Sprint

We’ll finally have an in-person sprint again, after the last one planned for April 2020 fell victim to the pandemic. The sprint will be held in Toulouse, on April 1st/2nd.

Qt 6 transition

With the first release on top of Qt 6 and KDE Frameworks 6 expected for later this year, a lot of work again went into preparing for that. Many parts are meanwhile working and usable in a Qt 6 build already. The install layout has also been adjusted to allow PIM components from both a Qt 5 and a Qt 6 to co-exist, which is especially relevant for the more widely used libraries.

Text input and understanding

The work for extracting and generalizing text input and text understanding features such as auto-correction, grammar checking, machine translation and text-to-speech output has resulted in the new KTextAddons library. That’s meanwhile used all over KDE PIM replacing previous application-specific implementations, and is intended to move under the KDE Frameworks umbrella eventually.

Google contacts and calendar access

After a huge amount of work starting over a year ago, Google contacts are once again working in PIM apps thanks to two MRs that have now been merged:

Support for the old Google Contacts API has been dropped and replaced with a new Google contacts implementation that uses the Google People API. This means one can now add, edit, and delete contacts as expected.

Kalendar contact view showing contacts from a Google account.
Google contacts available in Kalendar again.

Additionally, a bug preventing the deletion of Google items (i.e. contacts, tasks, calendar events, etc.) has been fixed and this should now work as expected too.


  • Support Spamassassin 4.0.0 (bug 464973).
  • Fix crash on attempting to replay a message with an user template (bug 463935).
  • Fix some embedded images not being displayed (bug 464404).


Several parts of Kalendar – mainly the event, task, and contact editors, but others as well – are more polished and less crash-prone.

A new contributor, Vanshpreet, has contributed a new feature – the ability to set event and task reminders at custom times. This should make it easier to notify yourself about important things just when you need to.

Kalendar event editor allowing custom times for reminders.
Custom event reminders in Kalendar.

We have also proposed several Google Summer of Code projects and there seems to be a lot of interest in them, which is good. Some aspiring students have even submitted patches, which is even better!


  • Allow to create an event with range selected in date navigator (bug 226950).
  • Fix crash when applying status to an empty participant (bug 462176).


  • Multiple files with certificates are now imported one after the other instead of concurrently. This makes it easier to figure out for which file one has entered the wrong passphrase and avoids problems with concurrent modification of the certificate storage. (T6323)
  • If a compliance mode is active, then Kleopatra now offers only compliant algorithms when creating new OpenPGP certificates or S/MIME CSRs. (T6325)
  • Kleopatra now uses gpgtar instead of gpg combined with tar, when creating or decrypting encrypted archives. This should speed up the creation or decryption of large encrypted archives on Windows. (T5478)
  • The users can now give a different file name if after the completion of a signing and/or encryption operation Kleopatra detects that there is already a file with the original file name of the signing/encryption result. Previously, the users could only choose to overwrite the existing file or to cancel the operation. (T6372)
Screenshot of a Kleopatra dialog shown when result files with the same name already exist.
Dialog to handle result files with the same name already existing.


  • Fix untrimmed URLs added to a contact getting dropped (bug 465669).


Itinerary has seen many improvements to its event support and got infrastructure to use onboard API on trains, to name just to of the many changes. See its own summary blog post for more details.

Two screenshots showing a map with the current train position, speed and heading, and a schematic display of the journey with delays.
Onboard live status showing the current position, speed, heading and journey.


  • Fix RSS feed logos being incorrectly scaled by title height (bug 465960).

Help us make KDE PIM even better!

Take a look at some of the junior jobs that we have! They are simple, mostly programming tasks that don’t require any deep knowledge or understanding of the code, so anyone can work on them. Feel free to pick any task from the list and reach out to us by email, Matrix or IRC! We’ll be happy to guide you and answer all your questions. Read more here…