After eight densely packed days Akademy 2019 is over. As always it was very nice to meet everyone again, as well as to meet some people I have been working with online for the first time in real life.

Akademy 2019 group photo
CC-BY Photo by Paul Brown


There was some interesting feedback for my talks, and overlap with work of others:

  • Secure HTTP usage (slides) - my suggestion to encapsulate secure defaults for QNetworkAccessManager (QNAM) in a KF5 class that isn’t bound by as strict backward compatibility requirements as QNAM itself is didn’t seem popular with the Qt community, and started a discussion to instead fix this in QNAM itself, at least for Qt 6. That’s of course the even better solution.
  • KPublicTransport (slides) - I mentioned the lack of public transport data coverage especially in India and Asia, which resulted in Bhushan digging up a few Indian GTFS feeds that can probably be added to Navitia to fix that.
  • KDE Frameworks on Android (slides) - There’s some overlap with the needs of the Kirogi drone control app that Eike presented, regarding Android support in existing frameworks as well as further things like embedding an interactive map. So even more reasons to address this all properly on the KF5 level.

Akademy Awards

The yearly Akademy awards ceremony provided a very unexpected surprise as I was given this year’s Jury Award. Thanks to David for the nice words, and to everyone for signing the award :)

Akademy Jury Award 2019
Akademy Jury Award 2019


Monday to Friday saw a large number of meetings on a wide range of topics, the BoF wrap-up session videos (Monday, Tuesday, Wednesday/Thursday) provide a good overview on those. The below are my key takeaways from some of the sessions I participated in.

KDE Frameworks 6 (KF6)

With Qt 6 on the horizon we need to start looking into what we want to achieve with KF6, beyond just porting to Qt 6 and cleaning up obsolete/deprecated API. We now have a Phabricator workboard to collect and discuss plans and tasks around that, and hopefully we’ll have a sprint in the not too distant future to plan this in more detail. If you have issues with or wishes for KDE Frameworks that might require breaking API or ABI, or otherwise require more invasive changes such as moving functionality between libraries, now is the time to bring this up.

More details: David’s summary


The most important goal for me here was to get some more collaboration between the Plasma Mobile team and the currently desktop-focused PIM team going, and it looks like we made progress there :)

The move of KContacts and KCalendarCore to KDE Frameworks also got its final go and should be executed next week. The next module to look at is the KDAV protocol library, which ties in with reviewing the KF5 HTTP stack.

More details: Notes, Dan’s KAccounts integration demo

Creating KItinerary Extractor Scripts

I hosted a session on how to create custom extractors for KItinerary in which we looked at the kinds of data we can encounter, the methods and tools we have available for processing this, as well as on how KItinerary Workbench can help with writing and debugging extractors. As a result there were a few new extractor contributions already.

More details: Slides

KDE Frameworks on Android

Aleix had already addressed my top agenda item before the meeting, the F-Droid repository holding the nightly builds from binary factory is synchronized again correctly and should be distributing continuous updates again.

Other topics included where to put the JNI helpers from KDE Itinerary, and how to improve packaging with androiddeployqt for plug-ins with mandatory dependencies.

More details: Notes


With all the policy/legal/procedural questions now hopefully sorted out in form of the Telemetry Policy and the Software Privacy Policy we can finally start to deploy the KUserFeedback telemetry and survey system.

More details: Notes


Next to all the meetings and discussions there was of course also some time for more hands-on work. My personal highlight is Kai’s work on KDE Itinerary browser integration, it has come a long way since our initial research on this.

We also managed to collect quite some sample data for improving KDE Itinerary, thanks to everyone who donated their data! Some of the immediate results are Daniele’s work on completing our understanding of the barcodes from Trenitalia, as well as initial support for Renfe tickets thanks to Luca.


A big thanks to everyone who made this event possible, the Kennys, the local team and everyone else who helped, as well as the sponsors and the KDE e.V.! Akademy is immensely valuable, the above is just a tiny glimpse into the productivity we achieve when having everyone together for a week, not to mention the massive motivational boost we get out of this.