23 May 2026
Planet KDE | English
This Week in Plasma: Xe Driver Support and Polishing Discover
Welcome to a new issue of This Week in Plasma!
This week the focus was squarely on polishing up Plasma 6.7 in preparation for release on June 16th. Bugs were squashed, user interfaces were improved, and amidst it all, a lovely community contribution added support for monitoring modern Intel GPUs. Check it all out:
Notable UI improvements
Plasma 6.7
Clearing the clipboard while any items are starred no longer asks if you want to clear the starred items as well; now they are never automatically cleared, and you have to do this manually, on the logic that if you starred those items, you probably want to keep them around! (Tobias Fella, plasma-workspace MR #6583)
When the Disks & Devices widget appears after you plug in a disk, it no longer briefly flashes with the notification icon. (Bohdan Onofriichuk, KDE Bugzilla #495141)
Plasma 6.8
When Discover prompts you to delete data and settings for a no-longer-installed Flatpak app, doing so now sends all that stuff to the trash rather than deleting it immediately and irreversibly. (Nate Graham, KDE Bugzilla #520220)

Re-arranged the sections on Discover's home page to put the "Editor's choice" section closer to the top. (Raresh Rus, discover MR #1333)

Reduced the amount of visual jankiness in Discover's "overall progress" indicator UI during system updates. (Taras Oleksyn, KDE Bugzilla #510282)
Made the search on Discover's Updates page case-insensitive. (Tobias Ozór, discover MR #1328)
Notable bug fixes
Plasma 6.6.6
Fixed a case where Plasma could crash when you switched Activities using the Activity Pager widget. (Marco Martin, KDE Bugzilla #520065)
Worked around a Qt regression that made job progress notifications remain visible on screen until explicitly dismissed. (Kai Uwe Broulik, KDE Bugzilla #520120)
Fixed an issue that broke the setting to remember your approvals in the screencasting permission dialog. (David Redondo, KDE Bugzilla #517454)
Fixed an issue that mis-rendered non-default window decoration themes when using a scale factor below 100%. (Vlad Zahorodnii, KDE Bugzilla #520272)
Fixed an issue that broke Global Themes' ability to add and position widgets as expected. (Marco Martin, KDE Bugzilla #512005)
Plasma 6.7
Fixed some cases where Plasma could crash when plugging in or unplugging screens. (Marco Martin, KDE Bugzilla #468430)
Worked around a Qt issue that could sometimes make the crash reporter tool itself crash in a loop. (Harald Sitter, KDE Bugzilla #517353)
Fixed an issue that could make Discover sometimes crash when installing a Flatpak app from a downloaded .flatpakref file. (Tobias Fella, KDE Bugzilla #520371)
Fixed a case where Plasma could crash while a Weather Report widget was checking for weather updates. (David Edmundson, kdeplasma-addons MR #1051)
Fixed a bizarre issue that could make the Kickoff Application Launcher widget grow vertically on X11 immediately after opening it following a switch to an alternative widget and back right after login. (Harald Sitter, KDE Bugzilla #515116)
Strengthened the system to prevent gaps from appearing between the screens in a multi-monitor setup. (Xaver Hugl, KDE Bugzilla #507702)
Fixed an issue in the Global Theme creator feature that saved panel settings incorrectly. (Akseli Lahtinen, KDE Bugzilla #520489)
Fixed an issue in the Digital Clock widget that mis-colored the dots for calendar events on the previous month. (Young Lord, plasma-workspace #6587)
Fixed two pointer issues seen while zoomed in using KWin's Zoom effect: duplicated pointers while shaking to make them bigger, and pointers becoming visually de-synchronized while dragging things. (Xaver Hugl, KDE Bugzilla #489265 and KDE Bugzilla #513233)
Fixed an issue that could make Discover report different states in different pages for an app currently being installed or uninstalled. (Oliver Beard, KDE Bugzilla #520028)
Plasma 6.8
Fixed an issue that made it impossible to add an app to your favorites list immediately after un-installing and re-installing it. (Christoph Wolk, KDE Bugzilla #494542)
Frameworks 6.27
Fixed a visual glitch sometimes seen in Discover's sidebar when the app was launched. (Nate Graham, KDE Bugzilla #520337)
Notable in performance & technical
Plasma 6.7
Fixed a couple of memory leaks discovered in KWin. (Xaver Hugl, kwin MR #9235)
Plasma 6.8
Added support for the Intel Xe driver to the System Monitor app and widgets. (Hunter Hardy, KDE Bugzilla #512866)
How you can help
KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.
Would you like to help put together this weekly report? Introduce yourself in the Matrix room and join the team!
Beyond that, you can help KDE by directly getting involved in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE - you are not a number or a cog in a machine! You don't have to be a programmer, either; many other opportunities exist.
You can also help out by making a donation! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.
To get a new Plasma feature or a bug fix mentioned here
Push a commit to the relevant merge request on invent.kde.org.
23 May 2026 12:00am GMT
22 May 2026
Planet KDE | English
Web Review, Week 2026-21
Let's go for my web review for the week 2026-21.
Make your website or blog fediverse-ready
Tags: tech, fediverse, blog
It's not complicated, and a good thing to do.
https://stefanbohacek.com/blog/make-your-website-or-blog-fediverse-ready/
Dumb Ways for an Open Source Project to Die
Tags: tech, foss, community
Not sure it warranted the "dumb" mention in the title. Still it's likely a good idea to have a list of the ways projects can die.
https://nesbitt.io/2026/05/19/dumb-ways-for-an-open-source-project-to-die.html
On Google declaring war on the Web
Tags: tech, google, ai, machine-learning, gpt, attention-economy, knowledge
Ultimately, they just want people to stay on the pages they fully control and not have them visit anything out of their mall.
https://tante.cc/2026/05/20/on-google-declaring-war-on-the-web/
I don't think AI will make your processes go faster
Tags: tech, ai, machine-learning, copilot, engineering, processes, productivity
Good overview of why we don't see a speed up in development processes when AI tools are introduced. The bottlenecks don't magically get destroyed.
https://frederickvanbrabant.com/blog/2026-05-15-i-dont-think-ai-will-make-your-processes-go-faster/
Twelve Ways to Be Wrong About AI-Assisted Coding
Tags: tech, ai, machine-learning, copilot, productivity, research, science
Or why most of the studies we see out there can't be trusted. They're full of holes and flaws. We'd really know people who know what they do in humanities to conduct such studies to get a chance at a proper picture.
https://third-bit.com/2026/05/20/twelve-ways-to-be-wrong/
Misconceptions about the UNIX Philosophy
Tags: tech, unix, history, microservices
I agree with this short history tour. It's the composability which matters.
https://posixcafe.org/blogs/2024/01/05/0/
Shell Tool Testing
Tags: tech, tests, shell
A proof that you don't need much to write a test suite.
https://zork.net/~st/jottings/shell-tool-testing.html
Spork: A posix_spawn you can use as a fork
Tags: tech, unix, linux, processes, research
fork() doesn't want to die. But help is coming it seems. Maybe the day it disappears from kernels is "near".
https://dl.acm.org/doi/epdf/10.1145/3713082.3730396
C++26: More function wrappers
Tags: tech, c++
Time to retire std::function in new code.
https://www.sandordargo.com/blog/2026/05/20/cpp26-copyable-function
Scaling Rust codebases: Lessons learned organizing large projects and managing errors
Tags: tech, rust, architecture, complexity, pattern
Nice suggestions on how to structure larger Rust code bases. The proposed error handling is particularly neat and tidy. This is doable in other languages but tends to be more verbose.
https://kerkour.com/rust-organize-large-projects-code-error-handling
SIMD-accelerated integer-to-string conversion
Tags: tech, simd, performance
Really smart SIMD trick which packs a punch.
https://lemire.me/blog/2026/05/18/simd-accelerated-integer-to-string-conversion/
Dependency cooldowns are unfair; we should use phased rollouts instead
Tags: tech, security, supply-chain
This is a good point. I feel unease at the current trend pushing toward cooldowns. The proposed rollout scheme is much better and fairer.
https://illegalcode.net/rfcs/phased_rollouts.html
Stop Using Pull Requests
Tags: tech, codereview, pairing, mob-programming, trust, productivity
The title is a bit too much of a blanket statement. Still there's indeed a lovely no between pair programming and merge requests. If possible you should favour the former. Yet it rarely happens in practice, there are reasons for that.
https://a4al6a.substack.com/p/stop-using-pull-requests
organizational knowledge
Tags: tech, organisation, knowledge
Knowledge management is hard. It's almost never a tool problem despite what people claim.
https://jarche.com/2026/05/organizational-knowledge/
Three Tips for Succeeding as an Accidental Leader
Tags: tech, leadership, management, learning
The responsibilities drop on people before they're ready for it (I see it first hand regularly at customers). Such tips are thus welcome and helpful during the transition.
https://www.jrothman.com/newsletter/2026/05/three-tips-for-succeeding-as-an-accidental-leader/
Two facilitation methods starting with a single line: Actions|Results & +|Δ
Tags: facilitation, decision-making
Nice little facilitation formats. I'll try those for sure.
https://improvesomething.today/single-line-facilitation/
Three ways people respond to a problem (other than solving it)
Tags: problem-solving
Very good points. Solving problems is not necessarily what happens when they are identified.
https://improvesomething.today/responses-to-problems/
Bye for now!
22 May 2026 1:51pm GMT
Qt Extension 1.14.0 for VS Code Released
We're excited to announce the release of version 1.14.0 of the Qt Extension for Visual Studio Code! This release introduces QML Live Preview with hot-reload capability, bringing real-time feedback directly into your editor.
![]()
22 May 2026 1:27pm GMT
Ocean Design for Plasma – May Updates
Fixing Color Visuals, Exporting and Importing
We received multiple reports of problems when importing the Penpot library file. Users would see a Penpot instance crash upon loading our library.
One of our contributors noticed that there was a problematic graphic in the library that, when removed, did not make the Penpot instance crash.

I noticed that the graphic in question is a SVG export from Figma and contained calls that were not supported by Penpot. This color collection had a detail of all our Ocean colors and their gradients. I made the change to a png image instead so that the svg graphics from Figma in Penpot were no longer a problem.
The Ocean Foundations Penpot library is now updated and no longer crashes on import. Users are welcomed to update their libraries.
Penpot Additions
The Penpot library also contains a few new section headers so that it's easier for users to understand what they are looking at. Please note that any sets that say "BASE *" means that they are parent components and are not needed for building components.
Base components are denoted by their name, it starts with a "_*". This means, this is a parent component. Their purpose is to make it faster for designers to edit many components at once.
For example, a button has two versions "_Buttonbase" and "Button". In this case, "_Button Base" is the parent componen and if you change the corner radius, all "Button" components will update accordingly.
There are always shared components than base components. Hence the need to accelerate component editing.
When you download our library, you can easily identify these components and make the changes that fit your design.

Updated Folder Icons for Legibility
In a previous iteration, I created folder clones from one size and mathematically shrunk them for another size. While this works, it's not optimized. A few of the folder icons were like this and looked blurry, not sharp.
After remembering the need for work there, I adapted those folders and they are now published in the git page for Ocean. Places at 32px should now look more polished.

Progress with App Icons
DISCLAIMER: ICONS ARE NOT FINAL! THIS IS A PREVIEW!
App icons are moving along well. I recently picked them back up to continue the work after receiving some initial feedback. I have settled on a style based off subtle and soft gradients.
At the same time, previous versions of these icons seemed dull and lifeless, color-wise. I decided to look for better, more vibrant colors and this is where I landed. I also worked on better rounded shapes. Note that we are following 3 different ideas around these icons, icons with a round background, icons with a squared background, unbounded icons (Icons not anchored to a background shape). In this way, we have more ways to express the best icon idea we want to share.
I also realized that Qt does not support layer blend modes. I was using some of that in the icons to have an easier time adapting colors in borders and edges. I had to undo those and re-adapt the colors to not use blend modes. Maybe in the future Qt will have support for them.

Ocean + Union
Union is about to make its first appearance to the public as an engine. Plasma 6.7 will bring this to light. I have communicated with the Union team and we expect to work together after this first launch to begin creating Ocean components in code.
I tried working through building a Storybook using the Penpot MCP server but it seemed pretty convoluted and is not a documented process. I will keep trying and maybe just create the Storybook site manually.
Akademy Presentation
Akademy is once again on the horizon. I submitted a progress update talk about Ocean. I am hoping by then, we have actual Ocean UI components to show. We will work toward that.
See you all in September in Graz to celebrate our 30th year! 
Relevant Links
YouTube Channel: https://www.youtube.com/anditosan
Invent Repo: https://invent.kde.org/abetts/ocean-design
Documentation: https://invent.kde.org/teams/vdg/issues/-/wikis/Ocean-Design-Overview-and-Details
22 May 2026 1:09pm GMT
21 May 2026
Planet KDE | English
Qt Creator 20 Beta2 released
We are happy to announce the release of Qt Creator 20 Beta2.
![]()
21 May 2026 10:27am GMT
20 May 2026
Planet KDE | English
The KDE Qt5 Patch Collection has been rebased on top of Qt 5.15.19
Commit: https://invent.kde.org/qt/qt/qt5/-/commit/aa749695075684f0c8585ede19e361f9accb4287
Commercial release announcement: https://www.qt.io/blog/commercial-lts-qt-5.15.19-released
OpenSource release announcement: https://lists.qt-project.org/pipermail/announce/2026-May/000626.html
This was the last Qt5 release.
The KDE Qt5 Patchset Collection remains open in case something very very very very very
very very very very very very very very very very very very very very very
very critical is needed.
20 May 2026 9:06pm GMT
kirigami-app-components
We just had a release of a new library, and future framework: kirigami-app-componets, which is a new repository where a certain kind of Kirigami extensions will go.
This repository will contain modules that are intended to be building blocks for applications to integrate within the KDE Frameworks ecosystem.
Why start a new repository when kirigami-addons already exists?
We now had a standalone release of kirigami-app-components with a single module inside for testing purposes, but the target here is to move it to frameworks releases, with all the stability promises and quality constraints of Frameworks.
Kirigami-addons is a bit more experimental of nature and have modules which, while they are a good first approach at solving a particular problem, would definitely need some work and refactoring for us to be comfortable having them in Frameworks, while other kirigami-addons modules will be a more straightforward import into kirigami-app-components.
An example of a module that was very useful but needed some work in its architecture is the StatefulApplication module (import org.kde.kirigamiaddons.statefulapp). It provides a Kirigami ApplicationWindow subclass and a way to map QActions to Kirigami actions.
The central idea is having a series of actions that can have their keyboard shortcuts configured by the user (while also providing a component for such configuration UI).
A problematic aspect of StatefulApp is that it's based too much on C++: in order to add actions, it is necessary for the app to create a subclass and add them as QActions, then the QML part has to connect the QActions and Kirigami.Action using the proper API.
This is OK for the parts of the app where the logic is completely on the C++ side, but when it is necessary to add a very simple action (closing a page, opening a search dialog, and so on), this brings far too much boilerplate.
org.kde.kirigami.actioncollection
ActionCollection is the module that we introduce with kirigami-app-components. It's all about collections of actions that are defined declaratively via QML (with the option of creating collections on the C++ side as well) and that have shortcuts configurable by the user via the standard interface.
In order to define a new collection, we would write the following QML:
import org.kde.kirigami.actioncollection as AC
AC.ActionCollectionManager {
id: manager
pageRow: pageStack
AC.ActionCollection {
name: "org.kde.myapp.mainactions"
text: i18n("Main Actions")
AC.ActionData {
name: "hello"
text: i18n("Hello")
icon.name: "document-send"
defaultShortcut: "Ctrl+H"
}
AC.StandardActionData {
standardAction: AC.StandardActionData.Copy
}
...
}
AC.ActionCollection {
name: "org.kde.myapp.photoactions
text: i18n("Photo Actions")
AC.ActionData {
...
}
...
}
}
The ActionCollectionManager will be a single instance for the whole application, and it is what takes care of instantiating the common actions (such as About Application, About KDE, Configure Shortcuts, and so on) and doing the plumbing with the configuration dialogs and so on.
ActionCollection is a set of actions semantically grouped together in the same category (if an application would have, for instance, actions that operate on photos and actions that operate on videos, those could be two different collections).
ActionData is the semantic representation of an action (internally it is a QAction, so it has all its properties) and will be defined only once for the whole application. Instances of Kirigami.Action will be attached to it (even more than one), and those will define the actual buttons and menu entries in the application.
A Kirigami.Action is attached to an ActionData via an attached property:
Kirigami.Action {
// Here shows how important is that each ActionCollection has
// an app-global unique name and each action has a collecion-global
// unique name as well
AC.ActionCollection.name: "org.kde.myapp.mainactions"
AC.ActionCollection.action: "hello"
onTriggered: {
// Logic here
}
}
The Kirigami.Action instance will not have text, shortcut, or icon defined, because everything comes from the attached ActionData. Only the onTriggered logic will be defined there (as well as the logic for when the action is enabled or visible).
When an ActionCollectionManager is created, a collection named org.kde.globalactions will be automatically created as well, which also contains an action called "KeyBindings". When triggered, this dialog will open:

This is the configuration UI where it is possible to configure all the application shortcuts.
Another action called "FindAction" is also available: when triggered, this other dialog will open instead:

This is the classical Ctrl+Alt+I dialog also present in QWidget applications, where it is possible to search and trigger all the application's actions.
20 May 2026 3:03pm GMT
Qt Creator 20: faster clangd
In this article, I am going to talk about having a PGO (Profile-Guided Optimization) build of Clang.
![]()
20 May 2026 1:07pm GMT
A Cross-Platform C# UI Framework via Qt’s Bridging Technology
Every C# UI framework comes with a familiar pattern: Windows-first, Linux absent, roadmap uncertain. WPF stalled, MAUI skipped Linux, WinUI 3 stays Windows-native. At the same time, demand for embedded Linux grows and C# teams feel the lack of good UI alternatives for C# on Linux. Qt Bridges, a bridging technology in public beta for C#, provides access to a UI framework that allows preserving your existing C# codebase while utilizing Qt Quick's feature-rich UI libraries and APIs, hardware acceleration, and cross-platform capability.
![]()
20 May 2026 11:20am GMT
Qt Bridges: Public Beta for the C# Bridge Is Out!
Qt Bridges is a project we have been developing since 2025 to bring Qt's UI framework capabilities to other programming languages, without going through the full set of bindings. The focus is on the interaction with backend data objects, seamlessly integrated as QML components in a Qt Quick interface.
![]()
20 May 2026 11:19am GMT
Kirigami Adddons 1.12.1
A new release of Kirigami Addons is out. This is a minor release containing mostly bug fixes and small refactoring. Thanks to everyone who contributed to this release.
Packager section
You can find the package on download.kde.org (kirigami addons) and it has been signed with my GPG key.
20 May 2026 7:30am GMT
19 May 2026
Planet KDE | English
Smoke tests for fun and profit
Smoking is bad for you. Testing software is good for you though.
A while ago I wrote about detecting memory leaks in KDE CI. That works beautifully, and has already lead to real-world improvements, but it assumes that CI actually runs some code, usually a unit test.
While some KDE projects have fairly good test coverage, others do not so much. Particularly UI code isn't very easy to usefully unit-test. More complex forms of testig like Selenium exist for UI testing, but doing it well is a significant investment and commitment from the developer.
That doesn't mean there are no low-hanging fruits for more testing in KDE though. Many kinds of issues can be spotted by only running some piece of code, and checking for any abnormal signs. This kind of test is often known as smoke testing. Abnormal signs here would include things like crashes, QML errors, runtime warnings, or memory leaks. This is particularly useful when combined with debugging tools like asserts, address sanitizer, leak sanitizer etc.
A simple way to do smoke testing for applications is to use a command-line option for it that starts the application normally and automatically exists after some amount of time (e.g. 1 second). If the exit code is non-zero the test is considered failed. Alligator is an example of an application that has such a smoke test.
Applications are not the only smoke-testable thing though. We can also do it for systemsettings modules. Recently I added such a smoke test flag to kcmshell6, which can be used to smoke test KCMs. Doing that in a few projects already exposed some issues like memory leaks or missing dependency declarations, which since have been fixed.
Other things that could be tested in a similar way are Plasma applets (using e.g. plasmawindowed), runners, KIO workers, thumbnailers, or really anything that can be instantiated in a test. It could also be done for packaged binaries like Flatpaks, APKs, or distribution packages. Patches for this are most certainly welcome.
19 May 2026 10:00pm GMT
Haruna 1.8
Haruna version 1.8.1 is released.
If you like Haruna then support its development
Windows version:
Availability of other package formats depends on your distro and the people who package Haruna.
Feature requests and bugs should be posted on bugs.kde.org, ignoring the bug report template can result in your report being ignored.
Known issues
The animation for the playlist can be stuttery/slow when playback is active. You can improve it by creating two custom commands that run on startup:
set override-display-fps 75(replace 75 with your monitor's refresh rate)set video-sync display-resample
These don't work for variable refresh rate monitors.
Changelog
1.8.1
Features
- open multiple files from command line, allows to open only the selected files in the file manager
- stop action, available in the playback
- setting to enable taskbar progress
- show filename/title in OSD when opening a file
- mpris: find and set cover from external image file for audio files without internal covers
- custom loading animation
- setting for mpv's sub-border-style property
Playlist
- menu item to open file in MediaInfo app (if installed)
- allow sorting ascending/descending for None option
- indicator for resume playback position under the duration
- item drag handle is now shown on hover
Bugfixes
- hide chapters menu button when there are no chapters
- font family reset button not saving the setting
Playlist
- restore last active playlist only if opening without a file
- slow scroll to playing item on startup
- clicks triggering playlist item under the tab
- no context menu on tabs
19 May 2026 9:00pm GMT
Introducing Qt's GUI Design Skill: Design for Developers in Agentic Workflows
Why UI Developers Need Sometimes Design Support - and How the Skill Provides It
Not every UI developer has a UX designer at their disposal. Some R&D teams, especially in small and medium-sized businesses, need to build a user interface without the help of human UI design experts.
![]()
19 May 2026 10:25am GMT
18 May 2026
Planet KDE | English
About the importance of FUN
One of the things I think modern software quietly forgot is fun.
Maybe we became to distracterd on the day to day life of affordance and usability,.... we forgot to have a bit of FUN!!
So while revamping the old Oxygen icon set into today, and maybe more importantly filling in all the missing icons that are well… still missing!!… me and mostly Pravin Kumar have been pushing a bunch of new mimetypes into Oxygen.



Just look at the android apk mimetype Kumar made. Its fun. It makes me smile a little bit when I see it and honestly I think we need more of that.
Not everything has to look like it came out of a enterprise dashboard generated by AI trained on airport signage systems, hey I love airport signage!!! but... ...
And thinking about fun I'm also thinking again about possible ideas for a future design language for O².
What if icons looked more like depressions on a canvas? Almost paper like. Soft shapes cut from the material while still sharing geometry with the symbolic counterparts.
Somthing like this:

wouldnt this be fun???
Dont forget to check the new old Oxygen in the upcoming Plasma release. We had fun making it... maybe you can have fun using it too 
And yes... we still have a ton of plans for old Oxygen in the upcoming releases.....
18 May 2026 1:59pm GMT
17 May 2026
Planet KDE | English
Join KDE's Amharic translation effort!
A contributor has recently started translating KDE to Amharic.
They are looking for people to help since translating KDE is a lot of work.
Please join the kde-l10n-am mailing list and introduce yourself if you are interested in helping!
17 May 2026 11:00pm GMT




