Skip to content

KDE Blogs 

Wednesday, 20 December 2023

From GitLab to Microsoft Store

Ingo Klöcker  | Categories: CI/CD, Windows
This is an update on the ongoing migration of jobs from Binary Factory to KDE's GitLab. Since the last blog a lot has happened. A first update of Itinerary was submitted to Google Play directly from our GitLab. Read More
Monday, 13 November 2023

APKs now built on invent

Ingo Klöcker  | Categories: CI/CD, Android
The migration of jobs from Binary Factory to KDE's GitLab continues. Last week almost all jobs that built APKs were migrated to invent.kde.org. The only remaining Android job on Binary Factory doesn't use Craft. Read More
Sunday, 20 August 2023

Are we transparent enough?

Schwarzer  | 
We changed the default mouse click behaviour to double-click for KF6. For me this was surprising, so I would like to raise a few questions here that might as well be answered with: "sure, we are", and I just did not see it because I am a bit out of touch with KDE development news (and modern ways of communication in general). Personal and biased opinion follows. But here are the questions first: Read More
Sunday, 6 August 2023

Let's burn the planet ... because we can!

Schwarzer  | 
There is a term, that in recent years my brain is using a lot when trying to explain to me what my eyes observe. Late-Roman Decadence. I am not a historian, so I might be inaccurate with its actual meaning. For me it just means "wasting because we can". If you want to see this in action, delete your YouTube cookies to get out of your tech bubble and open its start page. Probably depending on your location, it's all about eating the biggest meals for 9000€, driving the fastest cars for 777k€, destroying expensive things in the most hilarious ways for 2M€ as well as giving homeless people 100€ and filming them at whatever they do with it before they fall back into their own life of being spat out and ignored by society. For me: disgusting and worth another strategically well sized and well placed comet. Read More
Monday, 16 January 2023

NeoChat Published in the Microsoft Store

Ingo Klöcker  | Categories: CI/CD, Windows
Carl Schwan already announced it on discuss.kde.org and at @neochat@fosstodon.org. In this blog we’ll see how it was done and how you can publish your KDE app in the Microsoft Store. Reserving a Name and Age Rating Your App Read More
Monday, 25 July 2022

Four workers arrive at a construction site ...

Schwarzer  | 
Four workers arrive at a construction site to help. They each take a shovel and are eager to start shoveling. But what is that? They notice some dents and some dried cement on the shovels. So what now? Read More
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