• 61 Posts
  • 14 Comments
Joined 3 years ago
Cake day: June 27th, 2023



Welcome to a new issue of This Week in Plasma!

This week more work was poured into making Plasma 6.5 the best and most stable release ever. I know I write that a lot, but I feel like we get better at it every time, and this time it feels like that’s the case here too as well.

Our bug triaging team has basically finished getting through Plasma’s bug report backlog, allowing them and developers to focus on the known and fixable issues. And fix they did! This week there were just tons and tons of bug fixes. Among them were the #2 and #3 most common Plasma crashes, and we also identified the #1 most common crash as being caused by 3rd-party code.

This kind of concerted bug-fixing may not be the most glamorous work, but it makes a big difference to the overall quality of the product!

Notable UI Improvements

Plasma 6.5.0

You can now activate the Sleep, Shut Down, and Restart (etc.) buttons in Kickoff using the Enter key in addition to the spacebar. (Julius Zint, link)

Plasma 6.6.0

The Breeze icon theme now has reversed versions of the “Send” icon (which normally looks like a little paper plane flying to the right), and uses them in notifications when using a right-to-left language, like Arabic or Hebrew. (Farid Abdelnour and Nate Graham, link)

Improved the randomness of randomly-ordered wallpaper slideshows. (Sebastian Meyer, link)

Notable Bug Fixes

Plasma 6.4.6

Fixed an issue that could make KWin crash when trying to look at a device’s orientation sensor. (Xaver Hugl, link)

Fixed the current second most common Plasma crash, which could happen when using a Weather Report widget displaying information from the Environment Canada source. (Ismael Asensio, link)

Fixed a very annoying issue that made graphical vector content copied in apps like Inkscape and LibreOffice Draw get unnecessarily and destructively rasterized when pasting them. (Fushan Wen, link)

Fixed an issue that made screen colors not look quite right (or at least not as intended) when playing HDR videos. (Xaver Hugl, link)

Plasma 6.5.0

Fixed a case where KWin could crash when dragging files or folders from Dolphin. (Vlad Zahorodnii, link)

Fixed another case where KWin could crash. (Vlad Zahorodnii, link)

Fixed a case where Plasma could crash when you tried to create a new folder inside a sub-folder popup from a Folder View widget or a folder on the desktop. (Akseli Lahtinen, link)

Fixed a case where KDE’s XDG portal implementation could crash. (David Redondo, link)

Fixed an issue that made text copied to the clipboard in an XWayland-using app get lost when the window focus changed immediately afterwards. (Vlad Zahorodnii, link)

Fixed an issue that could make automatic screen rotation not work properly. (David Edmundson, link)

Fixed an issue that could make XWayland-using apps flicker a bit on some screens with some GPUs. (Xaver Hugl, link)

Fixed a weird issue in that could make the CPU and memory usage skyrocket after you used KRunner to search for certain specific things and then pressed the Page Up key. (Harald Sitter, link)

When you turn on automatic login and a message appears telling you to change your wallet to have en empty password so that it will automatically unlock, the button you can click to do so once again works. (David Edmundson, link)

Fixed a couple of labels that didn’t display localized text properly. (Nicolas Fella and Nate Graham, link 1 and link 2)

Fixed an issue that made desktop icons jump around when you moved a panel to an adjacent screen edge. (Akseli Lahtinen, [link](https://invent.kde.org/plasma/plasma-desktop/-/merge Requests /)

Fixed a funny issue that made newly-created panels inherit some of their initial sizing settings from the most-recently-created panel, rather than using the default settings. (Fabian Vogt, link)

Fixed an issue in System Monitor that made it impossible to re-select table columns after clearing the selection by clicking in the empty area below the table. (Arjen Hiemstra, link)

Frameworks 6.20

Fixed the current third most common Plasma crash, which could happen when changing themes. (Arjen Hiemstra, link)

Fixed an issue that made the external link icon look weird in GTK apps when using the Breeze icon theme (David Redondo, link)

Other bug information of note:

  • 1 very high priority Plasma bug (same as last week). Current list of bugs
  • 29 15-minute Plasma bugs (up from 28 last week). Current list of bugs

Notable in Performance & Technical

Plasma 6.4.5

Substantially reduced KWin’s CPU usage while playing full-screen video. (Someone amazing in KWin, link)

Plasma 6.5.0

Improved the speed with which Discover fetches Flatpak information while starting up, improving launch speed and responsiveness in many cases. (Aleix Pol Gonzalez, link)

Information about the size of the folder selection dialog is now stored in the state config file, not the settings config file. This helps keep the settings file from changing when transient states change, making it easier to version-control your config files. (Nicolas Fella, link)

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.

You can help KDE by becoming an active community member and getting involved somehow. 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, too.

You can also help us by making a donation! A monetary contribution of any size will help us cover operational costs, salaries, travel expenses for contributors, and in general just keep KDE bringing Free Software to the world.


Welcome to a new issue of This Week in Plasma!

This week the Plasma team really really really focused on bug fixing and UI polishing, in preparation for the Plasma 6.5 release next month.

So far relatively few regressions have been reported, so either we’ve done a really good job of fixing them or keeping Plasma generally stable, or people aren’t reporting enough bugs!

While I’d love to believe it’s the former, let me take the opportunity to request more bug reports! KDE Linux is a great way to test, and other distros also have their own package repos you can switch to for beta releases. Give it a try! I’d say the Plasma 6.5 beta is really quite good. And as a reminder, here’s what’s in it.

Notable New Features

Plasma 6.5.0

The colorblindness correction filters now feature a grayscale mode you can use to desaturate all the colors on the screen, or remove them entirely! (Leah B. link)

Image 2: Monochrome mode in use, showing the Plasma desktop and System Settings in grayscale Notable UI Improvements

Plasma 6.5.0

On System Settings’ Bluetooth page, the on/off switch now remains where it is after you interact with it. (Berk Elyesa Yıldırım, link)

When setting up a slideshow wallpaper, you can now click on the the entire grid item for each image to toggle it on or off, instead of having to aim for the tiny checkbox in the corner. (David Redondo, link)

Everything that lets you quickly see what’s on the desktop now consistently uses the term “Peek at desktop”. (Nate Graham, link)

When your system is out of inotify watches, and you fix it by clicking on the “fix it” button on the notification alerting you to the issue, the notification now goes away after it’s fixed. (Kai Uwe Broulik, link)

The Show Activity Manager widget now has a sane upper icon size limit, so it’s no longer ridiculously massive on really thick panels. (Niccolò Venerandi, link)

Image 3: Show Activity Manager widget at a reasonable size on a 150px thick bottom panel Modernized the Add Connection dialog on System Settings’ Networks page a bit. (Nate Graham, link)

Image 4: Add Connections dialog looking nice and clean

Plasma 6.6.0

Improved the way cross-app activation happens on Wayland in a variety of ways. (Vlad Zahorodnii, link 1, link 2, link 3, link 4)

Improved the UI of the Colorblindness Correction feature on System Settings’ Accessibility page. (Nate Graham, link)

Image 5: Improved colorblindness correction filter UI System Settings’ Application Permissions page now shows Flatpak apps’ technical ID instead of their version number (because it’s not very useful there), and you can select and copy the text, too. (Nate Graham, link)

Image 6: EasyEffects app on Flatpak Permissions page, with its id “com.github.wwmm.easyeffects” visible Notable Bug Fixes

Plasma 6.4.6

Fixed a bug that could allow apps or websites that send notifications to make Plasma display the contents of file:///dev/urandom or other technical files, which could make the system bog down or crash. (David Edmundson, link)

Fixed a case where System Monitor could crash when you tried to save a customized graph as a new preset. (David Redondo, link)

Fixed two cases where the KMenuEdit app could crash: one when sorting items, and another when given a malformed .desktop file. (Nicolas Fella, link 1 and link 2)

Manually saving your session no longer breaks the Shut Down, Restart, and Log Out buttons in the Kickoff Application Launcher and other similar launcher menus. (David Edmundson, link)

Fixed a recent regression that made some maps apps not appear as options on System Settings’ Default Applications page. (Sune Vuorela, link)

Fixed a bug that broke the mouse button re-binding UI. (David Redondo, link)

Adding or removing images on System Settings’ Wallpapers page now activates the “Apply” button as expected. (Nate Graham, link)

Fixed a bug that made the Expand buttons on System Settings’ Shortcuts page sometimes get pushed partially out of view. (Nate Graham, link)

Plasma 6.5.0

Fixed a case where the session manager could crash when there were multiple logout notifications. (David Edmundson, link)

Certain misbehaving screens no longer trigger an infinite loop of connections and disconnection sounds after they go to sleep. (Akseli Lahtinen, link)

Fixed a bug that could cause RDP clients to show a black screen when connected to Plasma’s build in RDP server. (Jaxk Xu, link)

Fixed a bug that sometimes made it impossible to turn off the screen reader via its Meta+Alt+S keyboard shortcut (Sebastian Sauer, link)

Fixed multiple issues related to dragging widgets and rubberband selection rectangles on the desktop and in standalone Folder View widgets. (Akseli Lahtinen and Marco Martin, link 1 and link 2)

Fixed bug that made press-and-hold with a touchscreen to right-click unreliable on the Kickoff Application Launcher. (Marco Martin, link)

Fixed a few visual glitches in the panel configuration dialog when using the system with a right-to-left language like Arabic or Hebrew. (Niccolò Venerandi, link)

While in Plasma’s edit mode, dragging System Monitor widgets from the desktop to the panel or back no longer forces them into “Text Only” mode. (Marco Martin, link 1 and link 2)

The wallpaper grid now displays the wallpaper previews in the correct alphabetical order based on the visible title you can see. Previously it was sorting based on the filename, not the user-visible title. (David Redondo, link)

The weather widget now shows an apropriate icon for the “Hazy” weather condition from weather stations using the BBC weather provider. (Ismael Asensio, link)

Fixed a bug that could cause the activity and wallpaper switching shortcuts to be mis-named on System Settings’ Shortcuts page. (Nicolas Fella, link 1 and link 2)

Fixed a bug that could sometimes cause some misbehaving apps to end up with no app icon on their windows’ titlebars. (David Redondo, link)

Other bug information of note:

…But this is because we fixed a bunch and then added more as the result of bug triage! A Plasma developer’s work is never done.

Notable in Performance & Technical

Plasma 6.5.0

Dragging widgets on top of other widgets no longer bogs down the system with an amount of lag proportional to the refresh rate of the mouse used to drag it. Now it’s always nice and smooth. (Akseli Lahtinen, link)

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.

You can help KDE by becoming an active community member and getting involved somehow. 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, too.

You can also help us by making a donation! A monetary contribution of any size will help us cover operational costs, salaries, travel expenses for contributors, and in general just keep KDE bringing Free Software to the world.

To get a new Plasma feature or a bugfix mentioned here, feel free to push a commit to the relevant merge request on invent.kde.org.


Some of you have probably seen the blog post a few months ago about how GNOME is more strongly depending on systemd. The changes mentioned there have landed into the latest stable versions of the mentioned software (GNOME 49) and do affect us. In particular, the main culprit is the removal of the non-systemd fallback code in gnome-session. This makes it currently impossible to launch gnome-shell/mutter on a non-systemd system. A fairly straightforward patch of using elogind, like what was previously done, no longer works either.

Since we don’t have the time or interest to write a new non-systemd codepath for gnome-session, this means that all support for gnome-based desktops has to be dropped. In particular, the affected packages would be gnome-session, gnome-shell, mutter, and gnome-settings-daemon. For now, the old versions are still in the repos but because there is so much intertwining between other gtk/gnome packages, there is no guarantee they actually work and will later be removed from our repos.

Standalone gnome applications will still continue to be packaged, but it is simply not feasible anymore to support gnome desktops without systemd.


In 2020, Apple released the M1 with a custom GPU. We got to work reverse-engineering the hardware and porting Linux. Today, you can run Linux on a range of M1 and M2 Macs, with almost all hardware working: wireless, audio, and full graphics acceleration.

Our story begins in December 2020, when Hector Martin kicked off Asahi Linux. I was working for Collabora working on Panfrost, the open source Mesa3D driver for Arm Mali GPUs. Hector put out a public call for guidance from upstream open source maintainers, and I bit. I just intended to give some quick pointers. Instead, I bought myself a Christmas present and got to work. In between my university coursework and Collabora work, I poked at the shader instruction set.

One thing led to another. Within a few weeks, I drew a triangle.

In 3D graphics, once you can draw a triangle, you can do anything.

Pretty soon, I started work on a shader compiler. After my final exams that semester, I took a few days off from Collabora to bring up an OpenGL driver capable of spinning gears with my new compiler.

Over the next year, I kept reverse-engineering and improving the driver until it could run 3D games on macOS.

Meanwhile, Asahi Lina wrote a kernel driver for the Apple GPU. My userspace OpenGL driver ran on macOS, leaving her kernel driver as the missing piece for an open source graphics stack. In December 2022, we shipped graphics acceleration in Asahi Linux.

In January 2023, I started my final semester in my Computer Science program at the University of Toronto. For years I juggled my courses with my part-time job and my hobby driver. I faced the same question as my peers: what will I do after graduation?

Maybe Panfrost? I started reverse-engineering of the Mali Midgard GPU back in 2017, when I was still in high school. That led to an internship at Collabora in 2019 once I graduated, turning into my job throughout four years of university. During that time, Panfrost grew from a kid’s pet project based on blackbox reverse-engineering, to a professional driver engineered by a team with Arm’s backing and hardware documentation. I did what I set out to do, and the project succeeded beyond my dreams. It was time to move on.

What did I want to do next?

  • Finish what I started with the M1. Ship a great driver.
  • Bring full, conformant OpenGL drivers to the M1. Apple’s drivers are not conformant, but we should strive for the industry standard.
  • Bring full, conformant Vulkan to Apple platforms, disproving the myth that Vulkan isn’t suitable for Apple hardware.
  • Bring Proton gaming to Asahi Linux. Thanks to Valve’s work for the Steam Deck, Windows games can run better on Linux than even on Windows. Why not reap those benefits on the M1?

Panfrost was my challenge until we “won”. My next challenge? Gaming on Linux on M1.

Once I finished my coursework, I started full-time on gaming on Linux. Within a month, we shipped OpenGL 3.1 on Asahi Linux. A few weeks later, we passed official conformance for OpenGL ES 3.1. That put us at feature parity with Panfrost. I wanted to go further.

OpenGL (ES) 3.2 requires geometry shaders, a legacy feature not supported by either Arm or Apple hardware. The proprietary OpenGL drivers emulate geometry shaders with compute, but there was no open source prior art to borrow. Even though multiple Mesa drivers need geometry/tessellation emulation, nobody did the work to get there.

My early progress on OpenGL was fast thanks to the mature common code in Mesa. It was time to pay it forward. Over the rest of the year, I implemented geometry/tessellation shader emulation. And also the rest of the owl. In January 2024, I passed conformance for the full OpenGL 4.6 specification, finishing up OpenGL.

Vulkan wasn’t too bad, either. I polished the OpenGL driver for a few months, but once I started typing a Vulkan driver, I passed 1.3 conformance in a few weeks.

What remained was wiring up the geometry/tessellation emulation to my shiny new Vulkan driver, since those are required for Direct3D. Et voilà, Proton games.

Along the way, Karol Herbst passed OpenCL 3.0 conformance on the M1, running my compiler atop his “rusticl” frontend.

Meanwhile, when the Vulkan 1.4 specification was published, we were ready and shipped a conformant implementation on the same day.

After that, I implemented sparse texture support, unlocking Direct3D 12 via Proton.

…Now what?

  • Ship a great driver? Check.
  • Conformant OpenGL 4.6, OpenGL ES 3.2, and OpenCL 3.0? Check.
  • Conformant Vulkan 1.4? Check.
  • Proton gaming? Check.

That’s a wrap.

We’ve succeeded beyond my dreams. The challenges I chased, I have tackled. The drivers are fully upstream in Mesa. Performance isn’t too bad. With the Vulkan on Apple myth busted, conformant Vulkan is now coming to macOS via LunarG’s KosmicKrisp project building on my work.

Satisfied, I am now stepping away from the Apple ecosystem. My friends in the Asahi Linux orbit will carry the torch from here. As for me?



Samsung has decided to proceed with the Bootloader blocking also in Europe, a move that has caused a lot of discussion. Behind this choice is a European regulation that will come into force in August 2025 and which risks changing smartphone usage in Europe forever. This is why other manufacturers may soon follow suit.

From 1 August 2025, new provisions will come into force RED Directive (Radio Equipment Directive), which redefines the compliance requirements for all radio devices sold in Europe. This is a significant change, not so much for the amount of regulations introduced, but for the effect they will have on the entire Android ecosystem. The issue revolves around three articles that impose specific protections: against network interference, personal data compromise, and digital fraud. These are, in themselves, sacrosanct rules.

But the crux comes with the interpretation prevailingEach device must ensure full compliance not only with the hardware, but also with the software that controls the radio modules. This is where the bootloader comes in. Unlocking it essentially allows you to replace the original operating system with an alternative one, such as LineageOS or GrapheneOS.

But these systems, if they modify the radio drivers even minimally, invalidate the CE certification. An uncertified device can no longer be legally marketed or used, at least according to the most stringent reading of the law.

This scenario has therefore led Samsung to protect its devices. Not on a whim, but to avoid any software modifications falling under your legal liability. If a user installs a ROM that interferes with radio frequencies or compromises communications security, the manufacturer (and in some cases the importer) may be held directly liable.

RED does not explicitly talk about unlocking the Bootloader or custom ROM, but it opens one regulatory space in which the margins for maneuver are they narrow. And in doing so, it provides a solid argument for those who have been trying for years to close the loop between hardware, software, and services. After all, customizing the operating system also means breaking away from proprietary services and, therefore, from the model that ties the user to the brand.

Samsung is just the first to move, but it’s hard to imagine it will be the only one. Starting in August 2025, it’s very likely that other manufacturers will follow suit, at least for the European market.











“Stop Killing Games” is a consumer movement started to challenge the legality of publishers destroying video games they have sold to customers. An increasing number of video games are sold effectively as goods - with no stated expiration date - but designed to be completely unplayable as soon as support from the publisher ends. This practice is a form of planned obsolescence and is not only detrimental to customers, but makes preservation effectively impossible. Furthermore, the legality of this practice is largely untested in many countries.

Over the past year, we have succesfully escalated complaints on this problem to consumer agencies in France, Germany, and Australia, and have brought forth petitions for new law on this problem to various countries. A list of the actions taken to date can be viewed here. As of 2025, most consumer action on this matter has concluded and we are awaiting decisions on it from several governments. However, there are a few remaining avenues left where people can participate if they are eligible!



WhatsApp is rolling out ads. In an update on Monday, Meta announced that it will now show ads from businesses through its Stories-like status feature.

Meta says it will tailor the ads to your interests by using “limited” information, including your country or city, language, the channels you follow, and how you interact with ads on the platform. You can also change your ad preferences from Meta’s Accounts Center.

This isn’t the only change Meta is making to WhatsApp. The company will also start showing promoted channels when you click on the Explore button to find new ones to follow. It’s also rolling out the ability to subscribe to channels to “receive exclusive updates” as well.