Skip to content

Welcome to Planet KDE

This is a feed aggregator that collects what the contributors to the KDE community are writing on their respective blogs, in different languages

Tuesday, 31 January 2023

Flatpak applications are based on runtimes such as KDE or Gnome Runtimes. Both of these runtimes are actually based on Freedesktop SDK which contains essential libraries and services such as Wayland or D-Bus.

Recently there were a lot of discussion about supply chain attacks, so it might be interesting to ask how Freedesktop SDK was built. The answer can be found in freedesktop-sdk repository:

- kind: ostree
  url: freedesktop-sdk:releases/
  gpg-key: keys/freedesktop-sdk.gpg
  track: runtime/org.freedesktop.Sdk.PreBootstrap/x86_64/21.08
  ref: 0ecba7699760ffc05c8920849856a20ebb3305da9f1f0377ddb9ca5600be710b

So it is built using an older version of Freedesktop SDK image. There is now an approved merge request that completely reworks bootstrapping of Freedesktop SDK. It uses another intermediate docker image freedesktop-sdk-binary-seed that bridges the gap between freedesktop-sdk and live-bootstrap.

So what is this live-bootstrap? If you look at parts.rst you’ll see that it is a build chain that starts with 256 byte hex assembler that can build itself from its source and also 640-byte trivial shell that can read list of commands from the file and executes them. Then it proceeds building 130 (as of the moment of writing) other components and in the process builds GCC, Python, Guile, Perl and lots of other supporting packages. Furthermore, each component is built reproducibly (and this is checked using SHA256 hash).

Some caveat: at the moment freedesktop-sdk-binary-seed still uses older binary of rustc to build rustc but in principle one could leverage mrustc to build it. Or possibly rust-gcc will become more capable in future versions and will be able to bootstrap rustc.

So unless your flatpak application uses rust, it will soon be buildable from sub 1 KiB binary seed.

QCoro 0.8.0 Release Announcement

This is a rather small release with only two new features and one small improvement.

Big thank you to Xstrahl Inc. who sponsored development of new features included in this release and of QCoro in general.

And as always, thank you to everyone who reported issues and contributed to QCoro. Your help is much appreciated!

The original release announcement on

Improved QCoro::waitFor()

Up until this version, QCoro::waitFor() was only usable for QCoro::Task<T>. Starting with QCoro 0.8.0, it is possible to use it with any type that satisfies the Awaitable concept. The concept has also been fixed to satisfies not just types with the await_resume(), await_suspend() and await_ready() member functions, but also types with member operator co_await() and non-member operator co_await() functions.

QCoro::sleepFor() and QCoro::sleepUntil()

Working both on QCoro codebase as well as some third-party code bases using QCoro it’s clear that there’s a usecase for a simple coroutine that will sleep for specified amount of time (or until a specified timepoint). It is especially useful in tests, where simulating delays, especially in asynchronous code is common.

Previously I used to create small coroutines like this:

QCoro::Task<> timer(std::chrono::milliseconds timeout) {
    QTimer timer;
    co_await timer;

Now we can do the same simply by using QCoro::sleepFor().

Read the documentation for QCoro::sleepFor() and QCoro::sleepUntil() for more details.


A small helper coroutine that allows a piece of function to be executed in the context of another thread.

void App::runSlowOperation(QThread *helperThread) {
    // Still on the main thread

    const QString input = ui->userInput.text();

    co_await QCoro::moveToThread(helperThread);
    // Now we are running in the context of the helper thread, the main thread is not blocked

    // It is safe to use `input` which was created in another thread

    // Move the execution back to the main thread
    co_await QCoro::moveToThread(this->thread());
    // Runs on the main thread again

Read the documentation for QCoro::moveToThread for more details.

Full changelog

See changelog on Github

Git support in Kate landed almost 2 years ago but so far it is undocumented. I am writing this article in order to fill this gap and hopefully make more people aware of the git related features that Kate has.

To be able to use git functionality you need to enable at least two plugins

  • Project plugin (commit / status / branch compare / stashing / file history)
  • Documents Plugin (file history)
  • Git blame (git blame support)

Once the project plugin is enabled and you are in a git repository, you will have the git toolview in your left sidebar:



The toolview shows git status of the git repository of the currently open document. There are 4 "top level" nodes as you can see. Staged refers to the files that are staged and will be committed if you run git commit ... **Modified **refers to the files that you were already present in your repository but you changed them. **Conflict **refers to the files that have conflicts. Finally, **Untracked **files are those files which your repository doesn't know about.

On the right edge, you can see +1, -2 (numstat) which basically shows you the number of changes in each file.

To be able to Stage/Unstage a file, you can just double click on a file and it will get staged if it was unstaged or unstaged if it was staged. But this can be tedious if you have a lot of files to stage so you can use the context menu (right click menu) to stage/unstaged many files at once:





  • Stage Selected Files will stage all the files in the selection
  • Remove Selected Files will remove all the files!
  • Stage All will all stage all the files
  • Unstage All will all unstage all the files
  • Discard All will discard all your changes!!
  • Show Diff will open a diff of all the files under that node.
  • Show in External Git Diff Tool will open your configured git diff-tool. See
  • Open at HEAD will open the file and show you its contents as they are currently committed i.e., at HEAD. This can be useful if you have many changes in your file and you want to see what the unmodified file looks like

Each top level node shows the number of files in it on the right side. For e.g., in the above screenshot it is 117 for the Untracked node.

Once you have staged a file, you can commit it either from the gui or command line as you wish. If you want to commit via the gui just click the Commit button at the top. Which will show you the following dialog:


Nothing much to say about it. There are two checkboxes at the bottom left corner.

  • Amend will amend the commit instead of adding a new one

  • Sign Off just adds a sign off message in the commit description

Once you click commit changes will be committed asynchronously and you will see a message about it in the Output toolview at the bottom


Once you have committed the changes, you can push them from the gui via the button with up arrow.


The command displayed in the line edit will be executed as is to push the changes. Similarly you can pull in the changes with the button with down arrow.

Sometimes the git status can be slightly out of date. In that case you can manually trigger a refresh by clicking the button at top right corner:


In addition to the basic stuff, there are some more features that can be access from the hamburger menu under the refresh button:


  • Refresh - refreshes git status

  • Amend Last Commit opens the commit dialog with 'amend' mode checked and last commit already loaded

  • Checkout Branch allows you to change current branch or create a new branch

  • Delete allows you to delete branches.

  • Compare Branch With can be used to compare current branch with a branch of your choice

  • Open Commit will open the specified commit in the Commit toolview. You can then browse all the changed files in that commit.

  • Stash offers git stash functionality

Current Branch

Current branch can be seen in the bottom right corner in the statusbar. The shown branch will be refreshed on changing the file and will always correspond to the repository the current file belongs to. This features is only available in current master (23.04 unreleased)


If you click the branch, it will allow you to change the branch or create a new one.

Commit Toolview

Commit toolview is useful to browse the changes inside a commit. It lists all the changed files in a commit on the left side in the below screenshot along with the number of changes in each file. On clicking a file, the diff of that file for the selected commit will be shown.


File History

You can browse the git history of a file by either right clicking in the Project tree or the Documents plugin tree and selecting Show File Git History


Once you click that, a new toolview will open with a list of commits particular to that file.


Clicking a commit will show the diff for that commit.

If you want to see all the changes in the commit, right click and select Show Full Commit. This will open the selected commit in Commit toolview which I showed above. (23.04 unreleased)

Staging Lines and Hunks

Lines and hunks can be staged from the diff viewer. Simply click "Show diff" on any file in the Git Widget and you will see the following.


You can then right click on a line and then stage that particular line or hunk.

Git Blame

If you have enabled the git blame plugin, it will show the git blame for each line as you click the line:


If you click on the blame, you will see a popup which shows the details of that commit. You can also open that commit in the Commit toolview if you want to explore the changes in that commit.


A matching thread for this can be found here on r/KDE.

Monday, 30 January 2023

KDE's getting started page on documentation states:

KDE documentation is written in DocBook XML.

Historically, this was probably a good decision. Who does not remember that XML was so much easier to read, parse, and work with compared to binary or virtually any propitiatory file format?

KDE is aiming to bump its major version to 6. This might be a good time to reflect whether DocBook should serve as the sole official documentation language. Well, I would like to open this to an optional second language.

I don't mind what the second language could be; possible candidates are reStructuredText / Sphinx, Markdown, AsciiDoc -- among others. I don't want to convert DocBook to any other format. But giving projects some choice, might help.

I am by far not the only person with regard to a replacement of DocBook: DigiKam recently switched to Sphinx for their user documentation after 20 years of using DocBook. Krita uses Sphinx for five years and Kdenlive for over a year. By the way, the Linux kernel left DocBook for Sphinx, too.

What do you think? This would be a good topic for an Akademy BoF. Where should we discuss this in the meantime?

Updates in Plasma Mobile from November - January

The Plasma Mobile team is happy to announce all the new developments carried out in the project from November to January!


As announced in the last blog post, we had decided to migrate the releases of Plasma Mobile applications to KDE Gear, starting with KDE Gear 23.04 (in April).

Because of this, we will now decouple the blog post format from any sort of software release schedule, and try to get one out at least on a bi-monthly basis!

The blog post you are currently reading still coincides though with the release of Plasma Mobile Gear 23.01, which is the last Mobile Gear release.

Plasma 5.27

Plasma 5.27, the last in the Plasma 5 series, will be released on February 14th, 2023. Work will then shift to Plasma 6 from then on, with the Plasma 5.27 branch only receiving bug fixes.


A major cause of crashes with the lockscreen when multiple lockscreen requests were received in a short amount of time, was fixed (Devin Lin, Plasma 5.26.5, Link).

Fixed wallpaper displaying in kscreenlocker. This allowed us to remove a slow workaround. (Devin Lin, Plasma 5.27, Link 1, Link 2)

An issue was fixed where only part of the bottom edge of the screen was usable for the gesture with landscape on phones and tablets. (Devin Lin, Plasma 5.27, Link)


Some issues with the mobile shell during rotation were investigated, which allowed for some issues with infinite loops to be fixed. (Devin Lin, Plasma 5.27, Link)

The issue where translations not being picked up and created for large parts of the mobile shell was also fixed. (Devin Lin, Plasma 5.27, Link)


The sidebar was changed to be tab bar-based. This saves a lot of horizontal space in the application. (Devin Lin, Mobile Gear 23.01, Link)

A possible scenario where an alarm ring would be triggered when a timer is paused was fixed (bug found in Plasma shell). (Devin Lin, Plasma 5.27, Link)

The timer add minute button was fixed. (Devin Lin, Mobile Gear 23.01, Link)

PlasmaTube (Youtube client)

The backend was ported to be libmpv-based, which greatly improves video playback and allows for seeking. (Devin Lin, Mobile Gear 23.01, Link)

The application was redesigned, giving it the ability to have videos playing while navigating other pages. (Devin Lin, Mobile Gear 23.01, Link and many more commits...)

PlasmaTube on mobile
PlasmaTube homepage
PlasmaTube playing video


Support was added for CLI arguments when launching the application, to start from certain folders. or run commands immediately. (Devin Lin, Mobile Gear 23.01, Link)

An issue where Ctrl-D would quit the entire application, rather than just a single tab was fixed. (Devin Lin, Mobile Gear 23.01, Link)

Raven Mail

Devin is in the process of rewriting the mail sync backend to not depend on Akonadi. Work is steadily progressing, but will likely be months away from initial completion.

Alligator (RSS Reader)

The interface was reworked to make better use of space for widescreen configurations. (Devin Lin, Mobile Gear 23.01, Link)

Alligator Desktop
Alligator Mobile

Spacebar (SMS/MMS)

Spacebar has seen several UI enhancements:

  • Devin Ported the settings page to use mobile form components.
  • Added a button to quickly scroll down to most recent message. The button also shows the number of new messages that have arrived since scrolling up.
  • Michael improved how the members of a conversation are displayed. Spacebar now show how many more people are in conversation if all members cannot be displayed in the chats list and also on the page header of the current conversation.
  • Added page to display all the members in current conversation and add new members.
  • Fix contacts list scrolling not working.

Spacebar also received various performance improvements:

  • Opening Spacebar is now faster as a result of the chats list query now being 5-10x faster or more in some cases.
  • Smoother scrolling through messsages.
  • The chats list is no longer fully reloaded every time a change happens (i.e., a message arriving).

The backend daemon also got some work done:

  • Now using the modem country code for consistent formatting of phone numbers. This also prevents guessing the regional code incorrectly.
  • Now verifing that received message timestamps are valid to prevent chronologically misordered messages.
  • Due to some some recent changes by cetain carriers, the user agent is now faked for sending/recieving MMS.
  • Now getting interface name and DNS servers directly from modem.
  • Moved send message logic and MMS network logic into daemon. This prevents incomplete sending of a message if the client app gets closed or switched to a different conversation during the message sending process.
  • Handle missing url id in notification messages. This should fix a MMS downloading issue that was caused by some carriers not including this.
Spacebar new member display and chat details page
Spacebar new scroll down button

Kasts (Podcast)

Kasts has seen a lot of development since the last release.

The header bar player controls have been redesigned, partly based on the design of Elisa. The header bar is resizeable and can be fully collapsed to just a minimal toolbar. (Bart De Vries, Mobile Gear 23.01, Link)

The left sidebar menu in desktop mode has been redesigned. It's now using similar buttons to the ones used in the bottom navigation bar in mobile mode. (Devin Lin, Mobile Gear 23.01, Link)

The audio backend has been re-written from scratch. It can now handle multiple backends: libVLC, gstreamer and Qt Multimedia. Kasts will use libVLC as default backend when available, which should solve common issues: volume control is now available through the main toolbar and seeking should no longer make the audio hang. (Bart De Vries, Mobile Gear 23.01, Link)

The settings menu was ported to the new form components. (Devin Lin, Mobile Gear 23.01, Link)

Support for chapter images was added. (Tobias Fella, Mobile Gear 23.01, Link)

Timestamps mentioned in episode descriptions are now clickable, which will make the audio jump to that point in the episode. (Bart De Vries, Mobile Gear 23.01, Link)

Images in headers are now clickable. This will open a fullscreen view of the image in question. (Bart De Vries, Mobile Gear 23.01, Link)

The subscribe button is now disabled when a podcast has just been added (Bart De Vries, Mobile Gear 23.01, Link)

Several issues with right-to-left language layouts were solved. (Bart De Vries, Mobile Gear 23.01, Link)

Kasts new header and sidebar design
Kasts new header bar in collapsed mode
Kasts new settings design showing audio backend selection
Kasts showing chapter images
Kasts showing fullscreen episode chapter image
Kasts mobile interface showing clickable timestamps
Kasts new header in maximized mode

Kalk (Calculator)

Kalk has seen lots of bug squashing and UI improvements in these three months.

Expression, calculation history and result preview font size is now reactive to window size. (Michael Lang, Mobile Gear 23.01, Link)

The number pad hover color is now showing consistently even if the cursor is on the button text. (Michael Lang, Mobile Gear 23.01, Link)

The number pad hover is disabled on mobile to prevent a button from being incorrectly highlighted on touch screens. (Michael Lang, Mobile Gear 23.01, Link)

The tail of longer calculation result is now clipped instead of the head. (Michael Lang, Mobile Gear 23.01, Link)

We fixed the bug that causes the backspace button to delete functions character by character. It now properly deletes the whole function with one click. (Michael Lang, Mobile Gear 23.01, Link)

nput and result text no longer overlap in landscape mode. (Michael Lang, Mobile Gear 23.01, Link)

The function drawer no longer opens by default on startup, and there is no weird function drawer auto close animation on startup. (Michael Lang, Mobile Gear 23.01, Link)

Switching between the history page and the calculation page no longer causes infinite new pages being added to page stack. (Zekiah A, Mobile Gear 23.01, Link)

The function drawer indicator is now hidden in landscape mode (Dnt Dnt, Mobile Gear 23.01, Link)

The result is automatically cleaned if the input is empty (Šimon Rataj, Mobile Gear 23.01, Link)

The float point precision is kept between input string to mpfr conversion (Han Young, Mobile Gear 23.01, Link Link)

The application data including icon and bug report address has been updated (Devin Lin, Mobile Gear 23.01, Link)

The haptic feedback on the number pad has been reduced (Devin Lin, Mobile Gear 23.01, Link)

Koko (Image viewer)

Carl updated Koko to use the new settings component. He also added a confirmation dialog before discarding image edits and fixed the full screen and slideshow mode not working.

Koko new highlight effect in the the album view
Koko new settings page
Koko dialog for discarding non-saved edits

Tokodon (Mastodon client)

Since the last Plasma Mobile update in November, Tokodon received multiple big releases and now supports custom emojis, searching, hashtags handling, a conversation view, polls and account editing. For the full release announcements, please check out 22.12 and 23.01. Another big release should happen in a few days, so stay tunned!

Tokodon new timeline design
Tokodon search feature
Polls in Tokodon
Account editing

Arianna (Ebook reader)

Carl and Niccolò Venerandi started working on an ePub reader created using Kirigami that should also target the PineNote.

There is no releases yet, but Arianna is already in a usable state. Aside from the ePub viewer, it already supports searching inside books, and has a basic library management with reading progress tracking.

Arianna library management
Arianna epub reading and searching
Arianna on the PineNote

NeoChat (Matrix client)

NeoChat will now show notifications for all accounts, and not just the active one. There is also a new "compact" mode for the room list, and the room permission settings can now be configured directly from NeoChat.

It is also now possible to search in the room history, but only on non end-to-end-encrypted chats for now.

Emojis and Reactions have been significantly improved.

And finally NeoChat's developers fixed several crashes around user invitations and various other small bugs.


KWeather has seen many bug fixes. Locations in the location page can now be dragged, and its UI/UX has been improved. The settings page has also seen a number of bug fixes. The plasmoid now works with the latest version of KWeatherCore. (Devin Lin, Han Young)

AudioTube (Youtube Music client)

Mathis implemented a blurred sidebar that turns into a bottom bar on mobile devices. He also redesigned the search popup.

Audiotube new search bar

AudioTube now only shows one page at a time instead of multiple stacked pages, making it visually less cluttered and fixing the issue where sometimes only half of the page was displayed

Audiotube single page view

On mobile, the bottom drawer now shows the information about the selected song.

Audiotube bottom drawer on mobile

Théophile Giligien made it possible to remove items from the recently played section and from your search history.

Jonah took the first steps to make AudioTube Qt6 compatible. He also fixed a bug that made it impossible to play songs

Kirigami Addons

Carl and Mathis worked on a new search popup field component for KirigamiAddons. API doc

Joshua added an "About KDE" section to the AboutPage.

About KDE page


Want to help with the development of Plasma Mobile? We are desperately looking for new contributors, beginners are always welcome!

Take Plasma Mobile for a spin! Check out the device support for each distribution and find the version which will work on your phone.

Even if you do not have a compatible phone or tablet, you can also help us out with application development, which can be easily done from a desktop!

View our documentation, and consider joining our Matrix channel, and let us know what you would like to work on!

Our issue tracker documentation also gives information on how and where to report issues.

Sunday, 29 January 2023

The XRechnung format is a E-Government standard for electronic invoicing. At some point it will be mandatory for every company dealing with German governmental partners to send the invoices in this XML format.

Many commercial vendors have already caught up and provide ways to generate XRechnung formatted documents with their software. However, to my knowledge, the availability of open source end user software is very limited. Since the standard itself is at least very open and transparently documented, so I think it is worthwhile to also support it with free software on the desktop.

Kraft, the desktop software for invoicing and efficient office work in the small enterprise, supports export of XRechnung documents since a while.

Over the weekend I created a new little project that adds a viewer for XRechnung documents called xrview.

XRechnung Invoices Viewer

A german city was looking for something to evaluate processes in a Linux- and KDE based productivity work environment.

Technically it is not very sophisticated: It renders the provided XML file using XSL styles officially provided by the Koordinierungsstelle für IT-Standards in a two step process to HTML, which is displayed in a web view. Some values of interest are extracted from the XML and displayed in a detail pane on the left side.

This is just a POC and has to be continued, but the time was good to kickstart this project.

Maybe anybody is interested to create a PR to help to improve digitalization in Germany?

Saturday, 28 January 2023

Haruna version 0.10.3 is out. You can get it now on flathub:

flathub logo

Availability of other package formats dependes on your distro and the people who package Haruna.

💰 If you use the app and want it to improve make a donation: GitHub Sponsors | Liberapay | PayPal

Issues should be reported on, but make sure to fill in the template and provide as much info as possible.



  • Playlist:
    • added options to, open m3u files, add files and urls, sort, clear and save the playlist
    • added context menu for the playlist items
    • added setting to remember playlist state
    • removed rowHeight setting
    • fixed "Increase font size when fullscreen" setting not working
  • Recent files: fixed ordering, showing duplicates, clearing and adding when list is full
  • Added command line option to override the ytdl format selection setting (this option is overwritten if the GUI setting is changed)
  • Added option to set a default cover for music files
  • Added MPRIS thumbnail
  • Added setting for subtitles to be rendered in black borders
  • Fixed OSD showing without text


  • Fixed not auto playing next file in playlist, when current file ends
  • Fixed opened file not playing when "Auto load videos from same folder" setting is disabled


  • Fixed crash when "Maximum recent files" setting was set to zero


  • Fixed last played file not being remembered sometimes
  • Fixed durations longer than 24 hours not displaying correctly and messing up with chapter labels
  • Chapters menu has been rewritten to be more responsive with lots of chapters
  • Fixed opening relative paths from a playlist file
  • Fixed opening files containig # characters
Witch Wells, AZ Snow
Witch Wells, AZ Snow

It has been a very busy few weeks as we endured snowstorm after snowstorm!

I have made some progress on the Mycroft in debian adventure! This will slow down as we enter freeze for bookworm and there is no way we will make it into bookworm as there are some significant issues to solve.

  • lingua-franco uploaded and accepted
  • pako uploaded and accepted
  • speechpy-fast uploaded
  • fitipy ready to upload

On the KDE side of things:

  • Plasma-bigscreen uploaded and accepted
  • skanpage uploaded and in NEW

In the Snap arena, I have made my first significant contribution to snapcraft upstream! It has been a great learning experience as I convert my Ruby knowledge to Python. Formatting is something I need to get used to!

Snaps have been on hold due to the kde-neon extension not having core22 support and the above pull request fixes that. Meanwhile, I have been working on getting core20 apps ( 22.08.3 final KDE apps version for this base. ) rebuilt for security updates.

As many of you know, I am seeking employment. I am a hard worker, that thrives on learning new things. I am a self starter, knowledge sponge, and eager to be an asset to < insert your company here > !

Meanwhile, as interview processes are much longer than I remember and the industry exploding in layoffs, I am coming up short on living expenses as my unemployment lingers on. Please consider donating to my gofundme. Thank you for your consideration.


The team is in full-on bugfixing mode and we’re knocking out issues left and right in preparation for the Plasma 5.27 final release! I bet everyone reading can find at least one fix for a bug that’s annoyed them at some point, because we have a few big ones here! We want this to be the best, most stable, most awesome Plasma 5 release ever, so folks are happy with it for 8 months or longer before Plasma 6 drops.

We did manage to sneak in some feature work too (you know us!) including screen recording for Spectacle! Check it out:

New Features

Spectacle now includes video recording on Wayland! (Aleix Pol Gonzalez, Spectacle 23.04. Link):

Spectacle main window showing a tab bar on the right with the tabs "Screenshot" and "Recording", demonstrating the new screen recording functionality

OpenConnect VPNs now support double-authentication mode using SAML authentication (Rahul Rameshbabu, Plasma 6.0, Link)

By default, the tooltips for all of our various clock widgets now show seconds, just in case you need to see them quickly, but don’t want the overhead of manually turning on the display of settings. This is also configurable, of course! (Alessio Bonfiglio, Plasma 6.0. Link 1 and link 2)

When you’re using the Unsplash Picture of the Day wallpaper plugin, you can now choose to only show results from the “Cyber” category (David Elliott, Plasma 6.0. Link):

Plasma desktop wit wallpaper depicting a  turquoise colored sci-fi subway station from Unsplash's "cyber-world", with Plasma's configuration window open in front of it demonstrating how to configure Plasma to show these kinds of wallpapers

User Interface Improvements

When you have the filter bar open in Dolphin and it’s filtering the view, clicking on a Places panel for the current view entry now resets the filter and shows you everything (Serg Podtynnyi, Dolphin 23.04. Link)

Spectacle’s “Capture the current pop-up only” checkbox is no longer present on Wayland, because it doesn’t do anything there (me: Nate Graham, Spectacle 23.04. Link)

System Settings’ Icons page now shows a “Help” button that takes you to the documentation for it (Natalie Clarius, Plasma 5.27. Link)

It’s now possible to delete Global Themes right from the grid view in System Settings, without having to go into the “Get New Global Themes…” window to do it, just like in most other System Settings pages for choosing visual theming options (Fushan Wen, Plasma 6.0 Link)

Scrolling over scrollbars (not dragging them; actually scrolling over them) now works consistently in QtQuick-based apps. And they also look better when using a right-to-left language, to! (Ivan Tkachenko, Frameworks 5.103. Link 1 and link 2)

Significant Bugfixes

(This is a curated list of e.g. HI and VHI priority bugs, Wayland showstoppers, major regressions, Plasma 5.27 beta bugs, etc.)

Spectacle FINALLY no longer includes itself in screenshots taken without a 1-second or longer delay using the main window (David Redondo, Spectacle 23.04. Link)

Under certain circumstances, Discover no longer always crashes on launch unless its cache folder (~/.cache/discover) is empty (Fabian Vogt, Plasma 5.24.8. Link)

KWin can no longer sometimes crash when you rapidly resize a quick-tiled window adjacent to another quick-tiled window (Vlad Zahorodnii, Plasma 5.27. Link)

Fixed a recent regression in the Plasma Wayland session that could cause GTK apps to succeed at sending clipboard data to Plasma only once and then fail on all subsequent times (David Redondo, Plasma 5.27. Link)

GTK4 apps are no longer double-scaled when using screen scaling (Luca Bacci, Plasma 5.27. Link)

When you’ve set up a window rule that wants to move a window to a screen location that doesn’t exist (e.g. because that location is on another screen that’s no longer connected), it will no longer be moved to an offscreen location where it’s open but inaccessible; instead the rule simply doesn’t execute at all until the location it wants to move the window to exists again (Xaver Hugl, Plasma 5.27. Link)

When an app requests that the system inhibit the system from going to sleep–and only from going to sleep–Plasma no longer inappropriately inhibits screen locking too (Kai Uwe Broulik, Plasma 5.27. Link)

In the Plasma Wayland session, fixed another bug that could cause you to be unable to choose a screen resolution other than your screen’s native resolution (Vlad Zahorodnii, Plasma 5.27. Link)

In the Plasma Wayland session, GTK2 apps minimized to their System Tray icon can now be restored (Fushan Wen, Plasma 5.27. Link)

Fixed a variety of subtle bugs in desktop widget positioning, so your widgets should FINALLY no longer move slightly every time you start the system (Marco Martin, Plasma 5.27. Link)

In the Notifications widget, the “show more” text FINALLY no longer ever overlaps other notifications in the history (Marco Martin, Plasma 5.27. Link)

If you’ve resized the Kickoff Application Launcher’s popup, searching in it no longer sometimes resets it to the default size (Fushan Wen, Plasma 5.27. Link)

After installing a new font, clicking on the “OK” button for the “job’s finished” message now makes it go away as expected (me: Nate Graham, Plasma 5.27. Link)

The entire system will no longer sometimes (but especially when using the Btrfs filesystem) hang while Flatpak apps are installed or updated (David Redondo, Frameworks 5.103. Link)

Fixed a whole buttload of weird, random-seeming clipboard issues in the Plasma Wayland session (David Redondo, Frameworks 5.103. Link 1, link 2, link 3, and link 4)

Other bug-related information of interest:

Automation & Systematization

Added UI tests to the Kirigami.Avatar component to make sure it always works as expected when clicked or tapped (Ivan Tkachenko, Frameworks 5.103. Link)

…And everything else

This blog only covers the tip of the iceberg! If you’re hungry for more, check out, where you can find more news from other KDE contributors.

How You Can Help

Please test the Plasma 5.27 beta! Bug reports filed against the beta version (5.26.90) get looked at and prioritized. It really helps. And of course, if you’re a developer, fixing those bugs is massively impactful too. You might also want to check out our 15-Minute Bug Initiative. Working on these issues makes a big difference quickly!

Otherwise, visit to discover ways to be part of a project that really matters. Each contributor makes a huge difference in KDE; you are not a number or a cog in a machine! You don’t have to already be a programmer, either. I wasn’t when I got started. Try it, you’ll like it! We don’t bite!

And finally, KDE can’t work without financial support, so consider making a donation today!

Friday, 27 January 2023

Let’s go for my web review for the week 2023-04.

jwz:’s 25th anniversary

Tags: tech, mozilla

Well, happy birthday!

Tags: tech, copyright, law

It seems this isn’t necessary after all. At most if you like it you can put the year of creation of the copyrighted content, but the range and bumping it really isn’t necessary.

My Husband Was Right About DVDs All Along

Tags: tech, culture, vendor-lockin

Yes, streaming isn’t forever… it’s getting clear lately. That’s why I still have CDs of the music I really like.


Tags: tech, ai, machine-learning, art

Such generative models are getting more and more accessible. You can play with them using a few lines of python now.

Summer Afternoon

Tags: tech, browser, 3d

A very neat 3D experiment in the browser. The 3D abilities in this context made a lot of progress lately.

Hyperscale in your Homelab: The Compute Blade arrives | Jeff Geerling

Tags: tech, hardware, self-hosting

This is an interesting new family of hardware. Definitely to keep an eye on for homelabs.

Everything You Need to Know About std::variant from C++17 - C++ Stories

Tags: tech, c++, programming

Nice primer on std::variant. Covers all the bases of how to use it properly.

Language agnostic source code exploration and analysis - sylver-dev/sylver-cli

Tags: tech, static-analyzer, rust

Looks like an interesting (even though young) tool to make your own linters and to analyze code source.


Tags: tech, tests, docker

Looks like an interesting tool to deal with dependencies in some tests.


Tags: tech, project-management, agile, kanban, scrum

Interesting points about agile and lean approaches. In my view they tend to complete each other, that said the diagnostic of Scrum as practiced in most places today is not Agile is very true. So beware about what you’re doing, is it folklore? is it dogmatic? or do you really apply values and principles?

3 Tips to Learn any New Skill Faster - by Kunal Sarkar

Tags: learning

I’m not in full agreement with the content, mostly the social media bit. The following your curiosity on the other hand… definitely spot on.

MiniMit : the Minitel is back - Ulule

Tags: tech, hardware, minitel, funny

Don’t underestimate the Minitel, it is still the future! ;-) (content mostly in french)

Bye for now!