Skip to content

KDE Blogs 

Friday, 30 July 2021

My Work on Documentation (June/July)

Schwarzer  | Categories: Documentation
After two month in documentation I can tell you this: documentation in general is quite alive and kicking. :) From the outside you might see outdated content here and there, but there are quite a few people working on improving that. Of course, as most things, it is a never-ending effort and every helping hand is appreciated. If you are interested in helping, please talk to us on our mailing list. One of the more time-consuming tasks is currently porting documentation from TechBase to the new Developer Portal. It's basically copy&paste with some adjustments, so volunteers welcome :) Read More
Saturday, 20 February 2021

unique_ptr difference between libstdc++ and libc++ crashes your application

David Faure  | Categories: C++
Thanks to the KDE FreeBSD CI, which runs our code on top of libc++, we discovered an interesting difference between libstdc++ and libc++'s implementation of unique_ptr. This is quite unexpected, and the actual result for users is even more unexpected: it can lead to crashes in specific situations. This happens when a widget -- using unique_ptr for its d pointer, as is customary these days -- installs an event filter. That event filter will be triggered during destruction of child widgets (at least for the QEvent::Destroy event, I've also seen it with QEvent::Leave events for instance). And, depending on how the event filter is written, it might use the d pointer of the widget, possibly before checking the event type. That's where it gets interesting: the libc++ implementation of unique_ptr sets it to null before calling the destructor (because it's implemented in terms of reset(nullptr);. In libstdc++ however, unique_ptr's destructor just calls the destructor, its value remains valid during destruction. Read More
Monday, 19 October 2020

A few thoughts on Plasma/Wayland, KWinFT

Eike Hein  | Categories: Plasma, KWin
There's a lot of intense, opinionated debate on the current state of Plasma's Wayland session these days. This seems to be fueled by mainly two events, Fedora's announcement to flip to Wayland by default for version 34 of their KDE variant, and a a recent fork of KWin and a few other components of Plasma, KWinFT. Read More
Sunday, 11 October 2020

Linux desktop shell IPC: Wayland vs. D-Bus, and the lack of agreement on when to use them

Eike Hein  | Categories: Wayland, KWin
On the Linux desktop today, we have two dominant IPC technologies in use between applications and the desktop environment: Wayland and D-Bus. While created for different reasons, both are generically extensible and can be used to exchange data, synchronize state and send requests and signals between peers. A large number of desktop use cases are implemented using either technology, and some use cases are already distributed across both of them. The status quo is mostly the result of organic growth, with individual implementation choices down to tech friction or the lack thereof. Read More
Friday, 11 September 2020

Using Architecture Decision Records (ADRs) in KDE?

Eike Hein  | 
Over at Akademy 2020, I just witnessed a fantastic talk by KDE contributor mainstay Kévin Ottens on "Lost Knowledge in KDE". In the presentation, Kévin showed us a series of examples of sophisticated solutions to important problems KDE has innovated and implemented over the years - and subsequently lost knowledge of, applying them sparingly or inconsistently, or developing new solutions redundantly. He also talked about how this is a familiar problem to organizations, with a research field known as knowledge management itself looking to develop solutions and tools to combat this problem since the late 20st century. Read More
Wednesday, 19 February 2020

It is time for a war on tabs

We (as a UI shell project) see the limits of our territory as the window, when there is the assumption nowadays that MDI tabbed interfaces are where most significant user activity takes place. Yet interacting with different views/documents within those windows is not standardised, so the user has to remember which app they are using, then select the appropriate actions to: Read More
Wednesday, 11 September 2019

News from KDE PIM in July/August 2019

David Faure  | Categories: PIM
Following Volker's last blog on this topic, here are some highlights of the recent work that has been done around Kontact / PIM during this summer. First of all, stats: there were around 1200 commits in the past two months, leading to the new 19.08 release. Read More
Sunday, 8 September 2019

Introducing Kirogi: A ground control application for drones

Eike Hein  | 
Today I'm in beautiful Milano, Italy, where the KDE community has gathered for its annual user and developer conference, Akademy. At Akademy I've had an opportunity to present my new KDE project to a larger audience: A ground control application for drones, Kirogi. Read More
Tuesday, 16 July 2019

Plasma sprint, 2019 edition; personal updates

Eike Hein  | 
In June, I had a great time at a series of KDE events held in the offices of Slimbook, makers of fantastic Neon-powered laptops, at the outskirts of Valencia, Spain. Following on from a two-day KDE e.V. board of directors meeting, the main event was the 2019 edition of the Plasma development sprint. The location proved to be quite ideal for everything. Slimbook graciously provided us with two lovely adjacent meeting rooms for Plasma and the co-located KDE Usability & Productivity sprint, allowing the groups to mix and seperate as our topics demanded - a well-conceived spatial analog for the tight relationship and overlap between the two. Read More
Wednesday, 17 April 2019

2019 Toulouse PIM sprint report

David Faure  | Categories: PIM
Like every year, a number of KDE PIM developers met in Toulouse for a bit of bugfixing. Discussions and decisions There were a number of those, the most important ones being about food, of course. Among the topics of lesser importance: turning some PIM libraries into KF5 frameworks (that's just their way to dump more work on me, clearly... but it also means a lot of cleanup work for Volker, first), outreach to the Plasma Mobile PIM team, how to increase the number of attendees for this kind of sprint, how to make it easier to start contributing to KDE PIM, how to blog more often about progress. Read More