Skip to content

Thursday, 11 September 2025

Since 2023 my laptop situation has been pretty awful… I had two laptops (okay, I admit, that doesn’t sound that awful), a Windows Lenovo Yoga laptop and an Apple Macbook Pro. Powerful machines, of course, but the Yoga has a ghastly keyboard that’s that prone to double registering single keypresses, and way worse touchpad. The touchpad was so bad that the touch screen was really necessary. The Macbook Pro is fast, has nice hardware, a nice screen (no touch, though…) but: it runs MacOS. And the Yoga runs Windows. First 11, now 10, because 11 is torture.

Also… The Yoga is my Windows Krita dev and test device, the Macbook is my macOS dev and test device.

I wanted a laptop for myself. For watching videos, doing some sketching, writing RPG write-ups, managing my own stuff.

So, when Framework announced the Framework 12 I started getting interested: small, cute, colorful, not a build system powerhouse, but nice enough specs, touch screen, pen enabled, enough memory possible. And cute. I pre-ordered on, in bubble-gum with a lavender keyboard. Yeah, it clashes. I love it, it’s so colorful. I also knew I would love the upgradability, repairability, extensibility, and the looks. ‘Cause it’s cute.

Photo of the motherboard of the framework laptop. All components are labeled and there are qr codes to lead you to more information.

Some months after ordering, it arrived, last Monday. I was in hospital, after getting my SRS operation (succesful, recovery is going better than expected!), but today, I was home, and even groggy from recovery, I managed to put it together and install KDE Neon on it. It’s that easy to assemble the colorful, cute self-assembly version of the Framework 12. Fun, too.

And when I was installing Neon (I might switch later on, I don’t need to be too stable here, this one is mine, and it’s for fun!) I noticed something.

Something weird and unexpected.

The keyboard really is GOOD. It’s got good travel, it feels good, it invites typing. They keys have the right texture, and so has the palm rest. It’s the best laptop keyboard I’ve used in ages, and yes, that includes the Macbook Pro M2. If only for the keyboard, I’d buy it again.

The touchpad, too. Colorful, clearly demarcated from the palm rest, giving good feedback — it’s in every way that counts better than the Yoga’s touchpad. And there’s still a touch screen for when my four year trained reflexes take over. The screen is bright, clear and sharp. The resolution isn’t the highest, but then, this is 12″, so it is fine.

The plastic casing feels very solid, too. Sure, it’s not thin enough to shave with, like the Yoga or a Macbook Air, but then, I’ve already had laser treatment, so shavability isn’t an issue anymore.

Such a relief from all the black and grey hardware that has been surrounding me for years.

Photo of a round table. The table is covered with glass; underneath the glass is woven wickerwork. On the table, in the middle is the bubblegum pink framework laptop. Around the laptop are mostly black, sometimes gray tablets, e-readers and laptops.

The Ars Technica reviewer said “Sure, it’s cute and functional, but for the money you can get better specs”. Look… “Cute and functional” is a unique selling point if there’s ever one: is there any other laptop on the market that provides that? Better specs might mean faster whatever, but… It is perfectly functional. And cute, that too.

Joe Brokmeier’s review on Linux Weekly News was much closer to my opinion than the Ars review. He choose sage green, which is also quite delectable a colour.

Functional — it does everything I need now, and there’s already a CPU upgrade coming that I could install myself, if I wanted to.

Cute — I ordered a bunch of USB C modules so I can swap out colors according to my mood, too.

Halla is happy now!

The big picture matters! Based on popular requests, we are adding support to deliver additional context from the active project to the LLM.

Becoming the official Maintainer of Clazy

During this year’s Akademy in Berlin, I gave a talk about the awesome features & usecases of Clazy. Afterwards, I also talked with Ivan Čukić and the topic of maintainership. Sérgio Martins was the original author and long time maintainer. Ivan took over the role for a while, but since I became quite active in the project, he thought it would be a good idea for me to be the official maintainer.

I am very honored that he transferred maintainership of Clazy to me. I’ll do my best to continue pushing the project forward. Also thanks to Sérgio and Ivan for their previous work and KDAB for supporting it. Also thanks to all the other people who have contributed so far!

In case you want to get started in Clazy development, your contributions are welcome! Feel free to reach out to me if you have issues with getting started :)

Over 180 individual programs plus dozens of programmer libraries and feature plugins are released simultaneously as part of KDE Gear.

Today they all get new bugfix source releases with updated translations, including:

  • ktorrent: Fix issue of constantly writing to the magnets file (Commit, fixes bug #490894)
  • tokodon: Fix the account moderation tools page (Commit)
  • kate: Fix infinite loop in git blame when using flatpak (Commit, fixes bug #508577)

Distro and app store packagers should update their application packages.

Tuesday, 9 September 2025

I’ve just returned from this year’s Akademy in Berlin. Unfortunately, I couldn’t attend the entire conference that is still ongoing but the weekend of talks and welcome and social events have been magnificent. I’ve also meet a couple of fellow KDE hackers that I haven’t seen in a decade.

A view into an atrium with glass ceiling, marble columns, on three floors, a statue below
Lichthof at TU Berlin, just outside our conference rooms

Friday afternoon I arrived at Berlin Hauptbahnhof on an ICE that was, I kid you not, punctual to the minute. That of course meant there wasn’t much interesting to collect for KDE Itinerary. Nevertheless, I took an ODEG regional train to the hotel and tried to gather as much data from its onboard Wifi portal as I could from my phone between Hauptbahnhof and Alexanderplatz. Turns out: they use GraphQL for their live status website. While KPublicTransport has facilities for GraphQL, any other operator we support just polls a URL that yields a JSON feed. Therefore, a lot more work and testing is needed in order to support ODEG in KDE Itinerary’s live status page.

The welcome event at Schleusenkrug was fun and the weather was a lot better than anticipated. I was very glad I did pack a pair of shorts after all! Saturday the conference started with an interesting keynote on digital sovereignty. As always it was quite difficult to choose which of the parallel tracks to attend. I enjoyed Saturday’s “Lessons Learned” presentation on Plasma. Next, I was skeptical about the use of CSS in the Union styling effort (particular with me having had to deal with Qt CSS in Qt Widgets and GTK 3 CSS lately) but the current state looks fairly promising. The lightning talks on KPublicAlerts and Clazy were another personal highlight.

Edit Hotel Reservation page, edit fields for check in and check out time and date. Below, a description field with "Room 123" and "Door Code 123456" pointed at by the mouse cursor
Don’t forget your room number with Itinerary

During every conference, there’s some real world improvements to be made in our software stack. For instance, annoyed by the fact that I couldn’t just right-click a Wifi network in order to change its settings, I added functionality in ExpandableListItem to also show its expandable actions in a context menu. There was also an issue with the network connectivity monitor (what tells you that you need to log into a captive portal) sending spurious notifications about limited connectivity when in fact it was just losing connection before the laptop went to sleep. Finally, KDE Itinerary now lets you add a description to a hotel reservation so you can note down your room number and/or door key code. Unfortunately, Schema.org has no dedicated fields for that yet.

Sunday, I attended a talk on how to deal with negative feedback. I think many of us have unfortunately been in the situation where we were proud about a change or feature we made and then were almost burnt out by negative feedback and harassment on the internet. Another important presentation put emphasis on the fact that maintainers don’t grow on trees and how to make sure a project remains alive even when the original author had to move on with life. This evening’s social event took place at c-base. It’s a hacker space that cosplays as a fictional crashed space station. How cool is that?! While we were down low near the Spree, I could still grab a glimpse of the lunar eclipse that happened that evening. I hope you could, too.

On Monday, I made my way back home. Thanks to everyone involved in organizing this conference and the sponsors to make this event happen! I am looking forward to seeing you all again soon!

Tuesday, 9 September 2025. Today KDE releases a bugfix update to KDE Plasma 6, versioned 6.4.5.

Plasma 6.4 was released in June 2025 with many feature refinements and new modules to complete the desktop experience.

This release adds a month’s worth of new translations and fixes from KDE’s contributors. The bugfixes are typically small but important and include:

View full changelog

Saturday, 6 September 2025

This year, 2025, the KDE Community held its yearly conference in Berlin, Germany. On the way I reinstalled FreeBSD on my Frame.work 13 laptop in another attempt to get KDE Plasma 6 Wayland working. Short story: yes, KDE Plasma 6 Wayland on FreeBSD works.

This time I followed the instructions from thesaigoneer on Codeberg. It did not feel different from any previous attempt of mine. However, it did work instead of hang, so that’s an important difference.

Here is my summary of those instructions:

  • Install FreeBSD 14.3 from the ISO
  • Change the package repositories to the latest branch
  • Install pkg install pkg and then update the base system with freebsd-update
  • Install the graphics drivers, pkg install drm-kmod
  • Adjust startup (loader.conf, rc.conf) configuration (with future settings):
    • sysrc kld_list+=amdgpu
    • sysrc dbus_enable="YES"
    • sysrc seatd_enable="YES"
    • sysctl net.local.stream.recvspace=65536
    • sysctl net.local.stream.sendspace=65536
    • Edit loader.conf
  • Install KDE Plasma 6 in a minimal way: pkg install seatd plasma6-plasma konsole
  • Ensure that your graphical users are members of video group
  • Reboot and login
  • Create a script for running KDE Plasma 6, with this content and make it mode 0755:
    #! /bin/sh
    /usr/local/bin/ck-launch-session \
      /usr/local/lib/libexec/plasma-dbus-run-session-if-needed \
      /usr/local/bin/startplasma-wayland
    

After logging in in text mode, run the script and enjoy a modern KDE Plasma desktop with your favorite desktop operating system (that’s FreeBSD, you know) underneath.

Today I have something very exciting to share: the Alpha release of KDE Linux, KDE’s new operating system!

Many of you may be familiar with KDE Linux already through Harald Sitter‘s 2024 Akademy talk about it (slides; recording), or the Wiki page, or its web page on kde.org.

For everyone else, let me briefly explain: KDE Linux is a new operating system intended for daily driving that showcases Plasma and KDE software in the best light, and makes use of modern technologies.

KDE Linux uses Arch packages as a base, but it’s definitely not an “Arch-based distro!” There’s no package manager, and everything except for the base OS is either compiled from source using KDE’s kde-builder tool, or Flatpak. Sounds weird, huh?! We’ll get to that later.

Harald has been leading the charge to build KDE Linux, assisted by myself, Hadi Chokr, Lasath Fernando, Justin Zobel, and others. We’ve built it up to an Alpha release that’s officially ready for use by QA testers, KDE developers, and very enthusiastic KDE fans.

What’s in the Alpha release?

Today we’re releasing KDE Linux’s Testing Edition. This edition provides unreleased KDE software built from source code; a preview of what will become the next stable release.

In practice, we’re being quite conservative, and it’s already pretty darn stable for daily use. In fact, I’ve had KDE Linux on my home theater PC for about six months, and it’s been on my daily driver laptop for one month. Since then, I’ve done all my KDE development on it, as well as everything else I use a laptop for. It really does work. It’s not a toy or a science experiment.

KDE Linux running on an HTPC, a 2 year-old laptop, and a 10-year old laptop — all pretty much flawlessly

Since KDE Linux offers unreleased, in-progress software, you’ll probably notice some bugs if you use it. Good, that’s the point of the testing edition! Report those bugs so we can fix them before they end up shipping to people using released software.

But where to?

  • If the bug appears to be caused by KDE Linux’s design or integration, use invent.kde.org. Ignore the scary red banner at the top of the page.
  • If the bug appears to be in a piece of KDE software itself, like Plasma or Dolphin (such that it would eventually manifest on other operating systems as well), use bugs.kde.org.

So if this is an Alpha release, what’s known to be broken?

Great question. To start with, some things are intentionally unsupported right now; see also https://community.kde.org/KDE_Linux#Non-goals. For example:

  • Computers with only BIOS support (not UEFI)
  • Loading new kernel modules at runtime
  • proprietary drivers for pre-Turing NVIDIA GPUs

There are also quite a few things that need work. You can find specific notable examples at https://community.kde.org/KDE_Linux#Current_state. A few are:

  • No secure boot
  • Pre-Turing NVIDIA GPUs require manual setup
  • Immature QA and testing infrastructure
  • User experience papercuts in Flatpak KDE apps and updating the system using Discover

We’d love your help getting these and other topics straightened out!

Just what the world needs, another Linux distro…

A sentiment I have in the past expressed myself.

However, there’s a method to our madness. KDE is a huge producer of software. It’s awkward for us to not have our own method of distributing it. Yes, KDE produces source code that others distribute, but we self-distribute our apps on app stores like Flathub and the Snap and Microsoft stores, so I think it’s natural thing for us to have our own platform for doing that distribution too, and that’s an operating system. I think all the major producers of free software desktop environments should have their own OS, and many already do: Linux Mint and ElementaryOS spring to mind, and GNOME is working on one too.

Besides, this matter was settled 10 years ago with the creation of KDE neon, our first bite at the “in-house OS” apple. The sky did not fall; everything was beautiful and nothing hurt.

Speaking of KDE neon, what’s going on with it? Is it canceled? If not, doesn’t this amount to unnecessary duplication?

KDE neon is not canceled. However it has shed most of its developers over the years, which is problematic, and it’s currently being held together by a heroic volunteer. KDE e.V. has been reaching out to stakeholders to see if we can help put in place a continuity or transition plan. No decision has yet been made about its future.

While neon continues to exist, KDE Linux therefore does represent duplication. As for unnecessary? That I’m less sure about that. Harald, myself, and others feel that KDE neon has somewhat reached its limit in terms of what we can do with it. It was a great first product for KDE to distribute our own software and prepare the world for the idea of KDE in that role, and it served admirably for a decade. But technological and conceptual issues limit how far we can continue to develop it.

See also https://community.kde.org/KDE_Linux#Differences_from_KDE_neon/Prior_art

Time will tell how these two products relate to one another in the future. Nothing is settled.

What are the architecture choices? Why did you build KDE Linux the way you did?

For detailed information about this, see https://community.kde.org/KDE_Linux#Architecture.

We wanted KDE Linux to be super safe by default, providing guardrails and tools for rolling back when there are issues.

For example, KDE Linux preserves the last few OS images on disk, automatically. Get a bad build? Simply roll back to the prior one! It’s as easy as pie too; they show up right there on the boot menu:

It’s like being able to roll back to an older kernel, but for the whole OS.

To make this possible, KDE Linux has an “immutable base OS”, shipped as a single read-only image. Btrfs is the base file system, Wayland is the display server, PipeWire is the sound server, Flatpak gets you apps, and Systemd is the glue to hold everything together.

We also wanted to settle on a specific KDE software development story, with the OS built in the same way we compile our software locally — using kde-builder and flatpak-builder. This should minimize differences between dev setups and user packages that cause un-reproducible bugs (yes, this means we would love for you to use the Flatpak versions of KDE software!). There are genuine benefits for KDE developers here.

If these technologies aren’t your cup of tea, that’s fine. Feel free to ignore KDE Linux and continue using the operating system of your choice. There are plenty of them!

Why an immutable base OS? Isn’t that really limiting?

In some ways, yes. But in other ways, it’s quite freeing.

In my opinion, the traditional model of package management in the FOSS world has been one of our strongest features as well as our most bitter curse. A system made of mutable packages you can swap out at runtime is amazing for flexibility and customization, but terrible for long-term stability. I guarantee that every single person reading these words who’s used a terminal-based package manager has used it to blow up their system at least once. C’mon, admit it, you know it’s true! 😀 And in some distros, even using the GUI tools can get you into an unbootable state after an upgrade. If this has never happened to you on a traditional mutable Linux distro… I don’t believe you!

The pitfalls for non-experts are nearly infinite, their consequences can be showstopping, and the recovery procedures usually involve asking an expert for help. No expert around? Back to Windows.

Over the past 30 years, many package-based operating systems have made improvements to their own system-level package management tools to smooth out some of these sharp edges, but the essence of danger remains. It’s inherent in the system.

So in KDE Linux, we take on that risk and do the system-level package management for you, delivering a complete OS all in one piece. If it’s broken, it’s our fault, not yours. And then you’ll roll back to the previous build, yell at us, and we’ll fix it.

By delivering the OS in a complete image-based package, we can perform safe updates by simply swapping out the old OS image for the new one. There’s no risk of a “half-applied update” or “local package conflicts”, or anything like that. It’s also super-fast (once the new OS image is downloaded, that is), unlike the “offline update” system used by PackageKit, where you have to wait minutes on boot following an update. Those issues don’t exist on KDE Linux.

Wait… if the whole system is one piece and you can’t change it, how do you install new software?

Well, only the base OS in /usr is immutable; /etc is writable for making system-level config changes, and your entire home folder is of course yours to do what you want with, including installing software into it. So that’s what you do: use Discover to get software, mostly from Flathub at this point in time, but Snap is also technically supported and you can use snap in a terminal window (support in Discover may arrive later).

That’s fine for apps in Flathub and the Snap Store, but what about software not available there? What about CLI tools and development libraries?

Containers offer a modern approach: essentially you download a tiny tiny Linux-based OS into a container, and then you can install whatever that OS’s own package management system provides into the container. KDE Linux ships with support for Distrobox and Toolbx.

That’s right, after trashing package management, now I’m endorsing package management! The difference? This is user-level packaging and not system-level packaging. System-level packaging is what’s dangerous. Take away the danger by doing it in your home folder, and you regain almost all of the benefits, with almost none of the risks.

AppImage apps work too.

Homebrew also works; it’s an add-on system-level package manager that allows you to download tons of stuff you might want for power user and development purposes. Note that Homebrew packages are not segregated, so they can override system libraries and present problems. This should be considered an experts’ tool.

Compiling anything you want from source code is also possible — provided the dependencies are available, and Homebrew or containers can be used for this.

Finally, there’s nothing stopping folks from making command-line tools available via Flathub or another 3rd-party Flatpak repository. Some are already there. So this could be a potential avenue of improvement too.

But as you can see, the story here is fragmented, with a menu of imperfect options rather than a single unified approach. That’s a valid critique, and it’s something that needs more work if we want an obvious default choice here.

For more information about this topic, see https://community.kde.org/KDE_Linux#Installing_software_not_available_in_Discover

That’s not enough power! I want to change the base OS!

Actually I lied. There’s another option for developers and super power users, one that does allow intermingling stuff: you can use systemd-sysext to overlay files of your choice on top of the base OS.

It’s a really cool tool you might not be aware of. I’ve started using it in KDE Linux to overlay my built-from-source KDE software on top of the base system for development and testing purposes, and it’s just been a super great experience. Way better than compiling stuff to a prefix in $HOME. No more weird random DBus and Polkit failures or stale file conflicts.

Now, this is quite a bit riskier as you can destabilize the OS itself by overlaying broken parts on top of working parts. But undoing any such changes is super simple, since, again, it’s all self-contained. That’s gonna be a common theme here.

However, I think the better answer for “I want to change the base OS” is “please get involved with developing KDE Linux!” That way if your changes are amazing, the whole world can benefit from them, and the burden of maintaining them over time can be shared with others.

See also https://kde.org/linux/#this-is-so-cool-how-can-i-get-involved-with-development

Still not enough power! I need to be able to swap out kernel modules and base packages at runtime!

Wow, you really are sounding like an OS developer. Maybe you want to help us develop KDE Linux? The OS could benefit tremendously from your skills and experience!

That said, there’s some truth to the idea that an immutable OS like KDE Linux isn’t the best choice for doing this kind of really low-level development or system optimization. That’s fine; there are hundreds of other traditional Linux-based operating systems out there that can serve this purpose.

If your goal really is to build your own OS for your own personal or commercial purposes, it’s hard to go wrong with Arch Linux; it’s one of the tools we used to build KDE Linux, in fact. In a lot of ways it’s more of an OS building toolkit than it is an OS itself.

If it’s all Flatpak and containers and stuff, does it really showcase Plasma and KDE software in the best light? Really?

Well, we’re kind of cheating a bit here. A couple KDE apps are shipped as Flatpaks, and the rest you download using Discover will be Flatpack’d as well, but we do ship Dolphin, Konsole, Ark, Spectacle, Discover, Info Center, System Settings, and some other System-level apps on the base image, rather than as Flatpaks.

The truth is, Flatpak is currently a pretty poor technology for system-level apps that want deep integration with the base system. We tried Dolphin and Konsole as Flatpaks for a while, but the user experience was just terrible.

So for the Alpha release, these apps are on the base OS where they can properly integrate with the rest of the system. There’s no reason to torture people with issues that we know won’t be fixed anytime soon!

Other apps not needing as as deep a level of system integration are fine as Flatpaks right now, and we’re engaging with Flatpak folks to see how we can push the technology forward to work better for the deep integration use cases.

This is because one of KDE Linux’s other goals is to be a test-bed for bringing new technologies to KDE. Our software that behaves awkwardly when sandboxed or run on a filesystem other than Ext4 represents something for us to fix, because those technologies aren’t going away. We need to be embracing that future, not ignoring it. KDE Linux both helps and forces us to do it.

This should be exciting. New technology is fun! You get to help guide the future. Let’s not get caught up yelling at clouds here!

I’m a KDE developer. Why should I migrate to KDE Linux, and how does KDE development work?

Easy setup, speed, safety, DBus and Polkit finally work properly, space savings, consistent platform targets, and more. There’s a lot to like. See also https://kde.org/linux/#im-a-kde-developer-why-should-i-use-kde-linux-and-how-does-kde-development-work

Forget the haters, this project is cool! How can I help?

Great! For starters, install it on your computers. 🙂 We’re looking to get more feedback from daily drivers. The Matrix room is a great place to get in touch with us.

You can help out with some of the tasks and projects mentioned at https://community.kde.org/KDE_Linux#Current_state. Those are high priority. And lots more easier, lower-priority tasks can be found here. You can submit Issues or Merge Requests on invent.kde.org.

And finally, help spread the news! If you couldn’t tell, I’m really excited about this project, and I think a lot of other folks will be as well… once they hear about it!

Friday, 5 September 2025

Welcome to a new issue of This Week in Plasma!

This week, KDE contributors from around the world are traveling to Akademy, KDE’s annual conference. I myself am on a train right now as I write these words (though hopefully not still there when you read them), on my way to meet with fellow KDE people for a week of working, planning, and social bond strengthening! Expect a light report next Saturday, or none at all.

Nevertheless, this week, folks managed to be productive anyway. We’ve got a new feature, some UI improvements, bug fixes, efficiency Improvements… the works!

Notable New Features

Plasma 6.5.0

The “Flatpak Permissions” page in System Settings has grown into a more general “Application Permissions” page by additonally letting you configure settings related to the XDG portal system, such as taking screenshots, accepting remote control requests, and more! (David Redondo, link)

System Settings app permissions page

Implemented support for the XDG Wallpaper portal, which allows portal-using apps to requests to change the desktop and lock screen wallpaper. (David Redondo, link)

Notable UI Improvements

Plasma 6.5.0

The focus stealing prevention settings on System Settings’ Window Behavior page now do sensible things on Wayland. At one end, “Extreme” requires a valid activation token for every focus request. On the other end, “None” ignores them completely, allowing every activated window to immediately take focus. The default setting is “Low”, which should result in fewer failed activations now, while still not letting apps go nuts and steal focus all the time. (Xaver Hugl, link 1 and link 2)

System Settings’ Day/Night Cycle page (which is where the Night Light timing settings moved to) now lets you enter times in AM/PM style, if that’s what the rest of your system shows and uses. (Vlad Zahorodnii, link)

AM/PM times visible on System Settings’ Day/Night Cycle page

You’re no longer required to manually create a remote desktop account for remote-desktop purposes; now your existing user account works as expected, and you can just supply its credentials to the client app. (David Edmundson, link)

Discover is now more verbose about what it’s doing while fetching updates, so it doesn’t seem stuck and you can tell which source is being slow and gumming up the works. (Aleix Pol Gonzelez, link)

Improved keyboard navigation in the Kicker Application Menu widget when no apps are marked as favorites. (Christoph Wolk, link)

The monospace font you choose on System Settings’ Fonts page is now synced to GTK apps. (Reilly Brogan, link)

System Settings’ Tablet page now warns you if you try to use it to configure a tablet that’s being managed by a custom user-space tablet driver, because these can conflict and produce odd results. (Joshua Goins, link)

Frameworks 6.18

Improved the visuals of how toolbars load themselves in various Kirigami-using apps and System Settings pages. (Marco Martin, link)

Notable Bug Fixes

Plasma 6.4.5

Improved the reliability with which screen settings are chosen and restored. (Xaver Hugl, link)

Plasma 6.5.0

The Night Light feature no longer somewhat distorts the colors in screenshots and screen recordings. (Xaver Hugl, link)

Fixed an issue in KWin that caused dragging-and-dropping items in Firefox’s bookmarks sub-menus to not work properly. (Vlad Zahorodnii, link 1 and link 2)

Fixed an issue in KWin’s Zoom effect that caused the cursor to use the wrong shape when it passed over a zoomed-in area of an XWayland-using app that would normally use a different cursor shape. (Xaver Hugl, link)

Frameworks 6.18

Fixed a case where various Kirigami-using apps and System Settings pages could crash under certain circumstances. (Nicolas Fella, link)

Fixed an issue in draggable list items throughout Kirigami-using apps and System Settings pages that prevented them from being dragged upwards in a way that would require scrolling the view. (M. Sadık Uğursoy, link)

Fixed an issue that prevented the “File already exists!” dialog from appearing when you try to rename a file on the desktop to have the same name as another file there. (Pan Zhang, link)

Other bug information of note:

Notable in Performance & Technical

Plasma 6.5.0

Added support for “Underlays”, which promise to improve efficiency in GPUs that support it. (Xaver Hugl, link)

Made KWin’s blur effect per-view, which looks better when screencasting. (Xaver Hugl, 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.

Let’s go for my web review for the week 2025-36.


Your Phone Already Has Social Credit

Tags: tech, surveillance, politics

Interesting point of view. We point to China’s system, but it’s of course already in Western countries too… we just like to lie about it.

https://www.thenexus.media/your-phone-already-has-social-credit-we-just-lie-about-it/


The Web We Lost

Tags: tech, web, social-media, criticism, culture

This is already an old article now. Still the core of it rings true. The optimistic note at the end of it didn’t come to pass though.

https://www.anildash.com/2012/12/13/the_web_we_lost/


Default search engine: Wikipedia

Tags: tech, web, search, wikipedia

The idea is interesting… Seeing how the search engine space is degrading quickly I’m tempted to try this actually.

https://paste.sr.ht/~awal/2310cfca431e9f723df281d02558eaebd77e2091


Are We Decentralized Yet?

Tags: tech, social-media, fediverse, bluesky, decentralized

Nice and clear indicators of how decentralized the fediverse and the “atmosphere” really are.

https://arewedecentralizedyet.online/


Passwords are okay, impulsive Internet isn’t

Tags: tech, security, vendor-lockin

This is quite a rant. Now I admit I’m not in love with passkeys and this piece shows quite well a lot of arguments against them.

https://www.dedoimedo.com/life/passwords-passkeys.html


What Every Argument About Sideloading Gets Wrong

Tags: tech, hardware, system, vendor-lockin, foss

Interesting point, let’s not forget those devices indeed don’t give us enough access to run whatever operating system you want on them.

https://hugotunius.se/2025/08/31/what-every-argument-about-sideloading-gets-wrong.html


Processors are getting wider

Tags: tech, hardware, cpu

Interesting trend in the CPU space. We’re getting more simultaneous instructions with the passing generations.

https://lemire.me/blog/2025/09/01/processors-are-getting-wider/


SQLite’s Durability Settings are a Mess

Tags: tech, databases, safety, sqlite

This is indeed an area which could be better handled in SQLite. It needs to be carefully checked when introduced in a project.

https://www.agwa.name/blog/post/sqlite_durability


Git exclude, a handy feature you might not know about

Tags: tech, git, tools

A nice git trick, there are options between the global .gitignore file and the local ones in the repository.

https://marijkeluttekes.dev/blog/articles/2025/09/03/git-exclude-a-handy-feature-you-might-not-know-about/


Tags: tech, python, multithreading, asynchronous

Its use cases are indeed limited. It’s a success for network IO. For everything else, the free threading might be the path forward once it stabilizes.

https://tonybaloney.github.io/posts/why-isnt-python-async-more-popular.html


Sharing a mutable reference with Python

Tags: tech, rust, python, type-systems, bindings

This is not an easy case, even with the support of PyO3. This short article gives a nice blueprint to share a reference between Rust and Python.

https://blog.lilyf.org/posts/python-mutable-reference/


A practical introduction to parsing

Tags: tech, parsing, rust

Need a refresher on how to write a parser? This is a good one. Also gives a few ideas of Rust libraries you can use to make the task easier.

https://jhwlr.io/intro-to-parsing/


Destructure as a Reminder

Tags: tech, design, pattern, type-systems, refactoring, rust

It’s indeed a nice little pattern to use when the type system allows for exhaustiveness checks of destructure operations. Allows to gracefully handle extension of structs in the future.

https://home.expurple.me/posts/destructure-as-a-reminder/


Rust ints to Rust enums with less instructions

Tags: tech, rust, type-systems, memory

Due to the strict type system this kind of conversion is not necessarily a given. There are ways though, and you can even keep it performing well.

https://sailor.li/ints-to-enums


Wild Performance Tricks

Tags: tech, rust, compiler, performance, optimization

Nice bag of tricks for better Rust performance at low level. The compiler is indeed helping quite a bit here.

https://davidlattimore.github.io/posts/2025/09/02/rustforge-wild-performance-tricks.html


A tour of dyn Trait

Tags: tech, rust, type-systems

Nice chapter to better understand Rust dyn traits (also called trait objects).

https://quinedot.github.io/rust-learning/dyn-trait.html


Adding #[derive(From)] to Rust

Tags: tech, rust, pattern, language

This is indeed a welcome improvement in my opinion. It’s nice to get a glimpse of the process of adding such features in Rust.

https://kobzol.github.io/rust/2025/09/02/adding-derive-from-to-rust.html


Structured bindings in C++17, 8 years later

Tags: tech, c++, type-systems

We got this nice feature a while ago now. It deserved to be used more, and it keeps improving.

https://www.cppstories.com/2025/structured-bindings-cpp26-updates/


std::exchange Patterns: Fast, Safe, Expressive, and Probably Underused

Tags: tech, c++

A good reminder to use std::exchange more. Years after it’s been introduced it’s clearly still underused.

https://www.fluentcpp.com/2020/09/25/stdexchange-patterns-fast-safe-expressive-and-probably-underused/


Leaky 🕳 Lambdas

Tags: tech, c++

It’s indeed quite possible to sneak in some symbols even in capture less lambdas. It all makes sense in the end.

http://videocortex.io/2016/leaky-closures-captureless-lambdas/


We need to seriously think about what to do with C++ modules

Tags: tech, c++, standard, criticism

Yes, this one feature in the standard doesn’t seem to reap much benefits… It’s sad that it got there.

https://nibblestew.blogspot.com/2025/08/we-need-to-seriously-think-about-what.html


Triangle Grids

Tags: tech, game, mathematics, geometry

A little article about a different type of grids for strategy games. Some of the consequences are very interesting.

https://kvachev.com/blog/posts/triangular-grid/


Physically based rendering from first principles

Tags: tech, graphics, 3d, pbr, shader, physics, mathematics

Nice deep dive into the theory behind PBR approaches.

https://imadr.me/pbr/


Video Game Blurs (and how the best one works)

Tags: tech, graphics, shader, game, gui, 3d

Very interesting exploration of the various types of blurs used in games and GUIs. Starting simple then building up all the way to the Dual Kawase Blur… and a bit beyond.

https://blog.frost.kiwi/dual-kawase/


Implementing a foil sticker effect

Tags: tech, graphics, shader, pbr

Nice effect, well explained with a shader implementation.

https://www.4rknova.com/blog/2025/08/30/foil-sticker


Making XML human-readable without XSLT

Tags: tech, xml, html, xslt, javascript, css

This is indeed a nice trick. There are ways without XSLT, it might even be less painful.

https://jakearchibald.com/2025/making-xml-human-readable-without-xslt/


Style your underlines

Tags: tech, web, frontend, css, ux

We got many options nowadays. Most of them are likely better than just making the underline disappear on links.

https://adactio.com/journal/22084


You Don’t Need Animations

Tags: tech, ux, animation

Some good point in there. For sure you don’t want to animate everything.

https://emilkowal.ski/ui/you-dont-need-animations


Look Out For Bugs

Tags: tech, codereview, debugging

Indeed, carefully reading larger chunks of code and looking for the historical context around it can go a long way in finding bugs.

https://matklad.github.io/2025/09/04/look-for-bugs.html


Replacing a cache service with a database

Tags: tech, architecture, databases, caching

Databases do improve and provide more “cache like” features, but such caches are still needed for the time being.

https://avi.im/blag/2025/db-cache/


Presentation Domain Data Layering

Tags: tech, architecture

A short and to the point reminder on how to manage properly a “layer cake” architecture.

https://martinfowler.com/bliki/PresentationDomainDataLayering.html


On Wheels and Reinvention

Tags: tech, dependencies, supply-chain, complexity

Sometimes, it’s indeed better to not pull an extra dependency.

https://taggart-tech.com/reinventing-wheels/


Do the simplest thing that could possibly work

Tags: tech, architecture, complexity

Good reminder of this important but imperfect guide to software design. There is some ambiguity on what “simplest” actually means. Still it helps keeping in mind that simple is rarely easy to find.

https://www.seangoedecke.com/the-simplest-thing-that-could-possibly-work/


Software gardening

Tags: tech, craftsmanship

It’s been around for a long while now. This is an interesting way to complete the software craftsmanship view which didn’t quite capture the “living ecosystem” side of our field.

https://codingjourneyman.com/2015/08/03/software-gardening/


How Long Are Your Feedback Loops? (Are You On an Agile Death March?)

Tags: tech, agile, project-management

This is indeed one of the core questions on you “agile” project management. If the feedback loops are very long, you’re in for trouble.

https://www.jrothman.com/mpd/2025/09/how-long-are-your-feedback-loops-are-you-on-an-agile-death-march/


Imposter Syndrome

Tags: tech, leadership, management, psychology, imposter-syndrome

This is a widespread syndrome. It’s not only in our industry of course but has real consequences in terms of leadership.

https://mikefisher.substack.com/p/imposter-syndrome


30 minutes with a stranger

Tags: sociology, psychology

Nice visualization of a study where people are paired with strangers for a 30 minutes conversation. It’s a fascinating social experiment with neat outcomes.

https://pudding.cool/2025/06/hello-stranger/



Bye for now!