Writing Selenium/Appium Tests on Windows

Monday, 24 July 2023
Akademy, KDE’s annual conference, recently took place in Thessaloniki, Greece. Lots of people were super excited about the prospect of getting GUI Testing off the ground based on the Selenium tech I built last year. Since KDE produces cross-platform applications an obvious question arose though… What about Windows? It’s surprisingly easy! Indeed the most time consuming part is probably getting your hands on a Windows Development Virtual Machine. Once you have a Windows installation we need to only spin up our toolchain and off we go. Read More

Firefox and KeePassXC Flatpaks

Friday, 7 April 2023
Flatpaks are amazing and all that. But application sandboxing, so an application cannot do anything it wants, is a challenge - even more so when you have two applications that need to talk to each other. Perhaps it shouldn’t come as a surprise that native-messaging sandboxing support for Flatpak has been in development for over a year. To celebrate its anniversary I thought I’d write down how to drill a native-messaging sized hole into the sandbox. Read More

Selenium + AT-SPI = GUI Testing

Wednesday, 14 December 2022
At KDE we have multiple levels of quality assurance ranging from various degrees of a humans testing features to fully automated testing. Indeed automated testing is incredibly important for the continued quality of our software. A big corner stone of our testing strategy are so called unit tests, they test a specific piece of our software for its behavior in isolation. But for many aspects of our software we need a much higher level view, testing pieces of Plasma’s application launcher in isolation is all good and well but that won’t tell us if the entire UI can be easily navigated using the keyboard. Read More

Plasma Analyzer

Monday, 12 December 2022
It’s a Plasma widget that visualizes what’s going on on your system, music-wise that is. I’ve started this project years ago but only recently found the motivation to get it to a somewhat acceptable state. It’s pretty amazing to have bars flying across the screen to Daft Punk’s `Touch`. https://store.kde.org/p/1953779

KDE Crash Tracking System 💣

Thursday, 13 October 2022
KDE is now evaluating Sentry, a crash tracking system. Who can get access? Everyone with a KDE developer account. But what is it? Since forever we have used Bugzilla to manage crash reports but this has numerous challenges that haven’t made any improvements in at least 10 years: Finding duplicates crashes is hard and in our case involves a human finding them When debug symbols are missing we need to ask the user to recreate the problem, which is not always possible Users need to worry about debug symbols (this is in part improved by the rise of debuginfod - yay! Read More

KIO Admin

Thursday, 4 August 2022
I’ve gotten annoyed with the inability to manage system files so I’ve made a KIO worker that enables Dolphin to view and edit files as root. This is dolphin viewing the system root with administrative access. The way this works is actually fairly exciting. It’s pulling off worker chaining: The admin worker itself contains gloriously little logic, all it does is translate all worker calls to dbus calls, and those dbus calls go out to a privileged polkit helper. Read More

DrKonqi ❤️ coredumpd

Wednesday, 25 May 2022
Get some popcorn and strap in for a long one! I shall delight you with some insights into crash handling and all that unicorn sparkle material. Since Plasma 5.24 DrKonqi, Plasma’s infamous crash reporter, has gained support to route crashes through coredumpd and it is amazing - albeit a bit unused. That is why I’m telling you about it now because it’s matured a bit and is even more amazing - albeit still unused, I hope that will change. Read More

kde-inotify-survey

Thursday, 5 May 2022
I’ve finally gotten annoyed enough with inotify failing randomly, because of resource exhaustion, that I’ve built a tiny app to deal with it. Introducing kde-inotify-survey. It features a CLI to inspect the inotify state, as well as a kded to warn and help with bumping the maximums. Assuming it turns out amazing for others I hope to progress it to kdereview soon.

Plasma GameMode

Friday, 4 March 2022
For when you are using Feral Interactive’s GameMode and want some UI indication of its use. https://invent.kde.org/sitter/plasma-gamemode

Reuse Licensing Helper

Tuesday, 6 April 2021
It’s boring but important! Stay with me! Please! 😘 For the past couple of years Andreas Cord-Landwehr has done excellent work on moving KDE in a more structured licensing direction. Free software licensing is an often overlooked topic, that is collectively understood to be important, but also incredibly annoying, bureaucratic, and complex. We all like to ignore it more than we should. If you are working on KDE software you really should check out KDE’s licenses howto and maybe also glance over the comprehensive policy. Read More