Skip to content

Saturday, 25 January 2025

Welcome to a new issue of "This Week in Plasma"! Every week we cover as much as possible of what's happening in the world of KDE Plasma and its associated apps like Discover, System Monitor, and more.

This week the bug-fixing for Plasma 6.3 continued, as well as a lot of new features and UI changes that have been in the pipeline for some time; these will mostly land in Plasma 6.4. There's a lot of cool stuff, so let's get into it!

Notable New Features

Late breaking Plasma 6.3 feature: Discover can now open flatpak:/ URLs. (Aleix Pol Gonzalez, 6.3.0. Link)

The time zone choosers present on System Settings' Date & Time page as well as the Digital Clock widget's settings page have been given a major upgrade: a visual UI using a world map! (Niccolò Venerandi, 6.4.0. Link 1 and link 2)

Notable UI Improvements

When activating the "Restore manually saved session" option on System Settings' Desktop Session page, the corresponding "Save Session" action now appears in Kickoff and other launcher menus immediately, rather than requiring a reboot first. (Marco Martin, 6.3.0. Link)

On System Settings' Users page, the dialogs used for choosing an avatar image are now sized more appropriately no matter the window size, and the custom avatar cropper feature now defaults to no cropping for square images. (Nate Graham, 6.3.0. Link 2 and link 2)

On the System Tray widget's settings window, the table on the Entries page now uses the alternating row color style to make it easier to match up the columns, especially when the window has been made enormous for some reason. (Marco Martin, 6.3.0. Link)

Improved the accessibility of several non-default Alt+Tab switcher styles. (Christoph Wolk, 6.3.0. Link)

Made the top corners' radii and side margins in Kickoff perfect. (Nate Graham, 6.3.0. Link)

Made the Breeze Dark color scheme a bit darker by default. (Thomas Duckworth, 6.4.0. Link)

Adjusted the visualization for different panel visibility modes to incorporate some animations, which makes them clearer. (Niccolò Venerandi, 6.4.0. Link)

You can now scroll on the Media Player widget's seek slider to move it without having to drag with the mouse. (Kai Uwe Broulik, 6.4.0. Link)

Scrolling on the Task Manager widget to switch between tasks is now disabled by default (but can be re-enabled if wanted, of course), as a result of feedback that it was easy to trigger by accident and could lead to disorientation. (Nate Graham, 6.4.0. Link)

Re-arranged the items on the context menu for Plasma's desktop a bit, to improve usability and speed for common file and folder management tasks. (Nate Graham, 6.4.0. Link)

The Audio Volume widget now has a hamburger menu button when used in standalone form, rather than as a part of the System Tray, where it already has one. (Niccolò Venerandi, 6.4.0. Link)

Tooltips for Spectacle's annotation buttons now include details about how to change their behavior using keyboard modifier keys. (Noah Davis, 6.4.0. Link)

Notable Bug Fixes

Fixed a case where the service providing the screen chooser OSD could crash when certain screens were plugged in. (Vlad Zahorodnii, 6.3.0. Link)

Fixed a case where KWin could crash on launch in the X11 session. (Vlad Zahorodnii, 6.3.0. Link)

Fixed a case where Discover would crash when trying to display apps with no reviews. (Fushan Wen, 6.3.0. Link)

Fixed a case where Plasma could crash after creating a new panel with certain screen arrangements. (Fushan Wen, 6.3.0. Link)

Fixed a random KWin crash. (Vlad Zahorodnii, 6.3.0. Link)

Fixed a bug affecting System Settings' Desktop Session page that would cause it to crash upon being opened a second time, and also not show the settings in their correct states. (David Edmundson, 6.3.0. Link 1, link 2)

Fixed several cases where screen positions and other settings might get reset after waking from sleep. (Xaver Hugl, 6.3.0. Link 1, and link 2)

You can once again drag files, folders, and applications to Kickoff's Favorites view to make them favorites, after this broke at some point in the past. In addition, the change also fixes an issue where Kickoff's popup would inappropriately open rather than move out of the way when you dragged another widget over it. (Noah Davis, 6.3.0. Link1 and link 2)

Apps that launch and immediately display a dialog window along with their main window no longer have those windows go missing in the Alt+Tab switcher. (David Edmundson, 6.3.0. Link)

Improved OpenVPN cipher parsing so it won't show cipher types that don't actually exist. (Nicolas Fella, 6.3.0. Link)

Activating a Plasma panel using a keyboard shortcut in the X11 session no longer causes it to bizarrely become a window! (Marco Martin, 6.3.0. Link)

System Settings' Touchpad page is no longer missing some options in the X11 session, depending on how you open it. (Jakob Petsovits, 6.3.0. Link)

Fixed a bug that could cause panels using the Auto-Hide and Dodge Windows settings to briefly get stuck open when activated while a full-screen window was active. (Niccolò Venerandi, 6.3.0. Link)

Right-clicking an empty area of the applications or process table in System Monitor no longer shows a context menu with no appropriate items in it. (Nate Graham, 6.3.0. Link)

Fixed a bug causing a second "System Settings" item to appear on System Settings' own Shortcuts page. (Raphael Kubo da Costa, 6.4.0. Link)

You can once again copy files and folders on the desktop using the Ctrl+C shortcut, after this broke due to an unusual interaction between the desktop and a placeholder message added a few versions ago. (Marco Martin, Frameworks 6.11. Link)

Fixed a case where a Qt bug could cause apps to crash in response to certain actions from the graphics drivers. (David Redondo, Qt 6.8.3. Link)

Other bug information of note:

Notable in Performance & Technical

Fixed a bunch of memory leaks in KScreen. (Vlad Zahorodnii, 6.3.0. 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:

You can also help us by making a donation! Any monetary contribution — however small — 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.

Friday, 24 January 2025

Fixed a major crash bug in our apps that use webengine, I also went ahead and updated these to core24 https://bugs.launchpad.net/snapd/+bug/2095418 andhttps://bugs.kde.org/show_bug.cgi?id=498663

Fixed okular
Can’t import certificates to digitally sign in Okular https://bugs.kde.org/show_bug.cgi?id=498558 Can’t open files https://bugs.kde.org/show_bug.cgi?id=421987 and https://bugs.kde.org/show_bug.cgi?id=415711

Skanpage won’t launch https://bugs.kde.org/show_bug.cgi?id=493847 in –edge please help test.

Ghostwriter https://bugs.kde.org/show_bug.cgi?id=481258

Kalm - Breathing techniques

New KDE Snaps!

Kalm – Breathing techniques

Telly-skout – Display TV guides

Kubuntu: Plasma 5.27.12 has been uploaded to archive –proposed and should make the .2 release!

I hate asking but I am unemployable with this broken arm fiasco. If you could spare anything it would be appreciated! https://gofund.me/573cc38e

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


No billionaires at FOSDEM

Tags: tech, fosdem, foss, politics

I think this is a very welcome protest at FOSDEM. This keynote would be a shame on the conference. Unfortunately I already planned to not attend FOSDEM this year, but if you are: please participate to this sit-in.

https://drewdevault.com/2025/01/16/2025-01-16-No-Billionares-at-FOSDEM-please.html


Decentralized Social Media Is the Only Alternative to the Tech Oligarchy

Tags: tech, social-media, politics

This is indeed clear, the centralized web platforms are fragile by default. They are very prone to capture, this is what just happened.

https://www.404media.co/decentralized-social-media-is-the-only-alternative-to-the-tech-oligarchy/


I’ve been advocating for RSS support, and you should too

Tags: tech, rss

You like RSS feeds? Ask for them!

https://reedybear.bearblog.dev/ive-been-advocating-for-rss-support-and-you-should-too/


The PC is Dead: It’s Time to Make Computing Personal Again

Tags: tech, business, politics, DRM, surveillance, vendor-lockin

Very nice editorial. It’s clear that the level of trust in the technologies we depend on is low… but that’s not due to the technologies themselves it’s more about the business practices around them. In the end the solution will have to be political, in the meantime we ought to support the good players.

https://www.vintagecomputing.com/index.php/archives/3292/the-pc-is-dead-its-time-to-make-computing-personal-again


Block AI scrapers with Anubis

Tags: tech, ai, machine-learning, gpt

There was a time when scraping bots were well behaved… Now apparently we have to add software to actively defend against AI scrapers.

https://xeiaso.net/blog/2025/anubis/


Introducing Versara

Tags: tech, ai, machine-learning, gpt

Yet another attempt at protecting content from AI scrapers. A very different approach for this one.

https://versara.ai/about


PostgreSQL Anonymizer

Tags: tech, databases, postgresql, data, anonymity, gdpr

A nice extension for Postgres allowing to ease the protection of personal information.

https://postgresql-anonymizer.readthedocs.io/en/stable/


Oh Shit, Git!?!

Tags: tech, version-control, git

Stuck in a state you don’t like with Git? Here is a list of funny recipes.

https://ohshitgit.com/


Git Trailers | Alchemists

Tags: tech, version-control, git, tools

This article is feature packed, lots of great ideas to exploit git trailers. This can help automate some workflows easily.

https://alchemists.io/articles/git_trailers


Interrupting scripts without tracebacks

Tags: tech, programming, python

Nice trick for cleaner interruptible python scripts indeed.

https://mathspp.com/blog/til/interrupting-scripts-without-tracebacks


isd (interactive systemd) — a better way to work with systemd units

Tags: tech, systemd, tools

Looks like a really nice tool to work with systemd services. It also integrates with my trusty lnav for the journal handling. I’ll definitely give it a try going forward.

https://isd-project.github.io/isd/


Building a tiny Linux from scratch

Tags: tech, linux, system, minimalism

Nice experiment in minimalism. It’s nice to see we can still build tiny systems like that.

https://blinry.org/tiny-linux/


C stdlib isn’t threadsafe and even safe Rust didn’t save us

Tags: tech, system, c, rust, safety, multithreading

A harsh reminder that getenv is not thread safe…

https://www.edgedb.com/blog/c-stdlib-isn-t-threadsafe-and-even-safe-rust-didn-t-save-us


Prototyping in Rust

Tags: tech, programming, rust

A bit long and a bit too much framed in a “vs Python” fashion for my taste. That said it contains good advice on how to prototype or start simple with Rust. It’s aligned with some of the advice I give as well. People tend to turn to low level details too quickly forcing themselves into a corner. There are better ways to handle it.

https://corrode.dev/blog/prototyping/


How I think about Zig and Rust

Tags: tech, rust, zig, system

Interesting article. There’s clearly space for both languages indeed. They’ll end up having each their own ecological niches, probably with some overlap.

https://lewiscampbell.tech/blog/250117.html


Type Inference in Rust and C++

Tags: tech, type-systems, rust, c++

Very nice explorations of the different behaviours type systems can have around inference.

https://herecomesthemoon.net/2025/01/type-inference-in-rust-and-cpp/


The Essence of Successful Abstractions

Tags: tech, complexity, type-systems

Nice musing on how a type system can be a way to tame complexity or at least isolate it explicitly in one place.

https://v5.chriskrycho.com/journal/essence-of-successful-abstractions/


Generating an infinite world with the Wave Function Collapse algorithm

Tags: tech, 3d, mathematics

Really cool procedural environment generation.

https://marian42.de/article/infinite-wfc/


Issues with Color Spaces and Perceptual Brightness — John Austin

Tags: tech, colors, vision

Color perception keeps being a fascinating and difficult topic.

https://johnaustin.io/articles/2025/issues-with-cielab-and-perceptual-brightness


Moving on from React, a Year Later

Tags: tech, web, frontend, react, backend, performance, complexity

It becomes clear that there are more and more reasons to move back to simpler times regarding the handling of web frontends.

https://kellysutton.com/2025/01/18/moving-on-from-react-a-year-later.html


Additional Testing After Refactoring - by Kent Beck

Tags: tech, tdd, tests

Pointing out an important dilemma indeed. Which tests to keep over time? What to do with redundancies?

https://tidyfirst.substack.com/p/additional-testing-after-refactoring


The Documentation System

Tags: tech, documentation, writing

Interesting proposal of structure for technical documentation.

https://docs.divio.com/documentation-system/


Tags: tech, project-management, risk

Or why it can be dangerous to label medium the high likelihood low impact risks and the low likelihood high impact ones. One category is to be completely avoided while the other brings learning opportunities.

https://jacobian.org/2025/jan/17/two-flavors-of-medium-risk/


Master the Art of the Product Manager ‘No’

Tags: tech, product-management, funny

Nice tricks to say no when people push to get something in a product. 😉

https://letsnotdothat.com/


Training or Learning? - Congruent Change

Tags: learning, teaching

OK, this is advertisement to their PSL workshops. That being said the quote from Hoverstadt is important, this and the feedback of one of their attendees: “I can honestly say I learned at least as much from other participants”. This is exactly what I’m trying to foster when I design learning experiences.

https://www.congruentchange.com/training-or-learning/



Bye for now!

Thursday, 23 January 2025

The third International Calligraphy Festival of Kerala (ICFK) took place in October 2024, and I was invited to run a session. I had the fortune to see many exemplary calligraphers all over the world come together and demonstrate their work over three days of the festival.

Renowned Malayalam calligrapher Narayana Bhattathiri organizes the conference every year, and it was amazing to witness that many of the speakers and calligraphers were sharing the responsibilities and taking active role in the organization and execution of the sessions. The audience and speaker participation and interactions were warmly welcoming. The demographics was very distributed — students, professionals, calligraphers; and of all ages and genders.

An epiphany

During the session by Prof. G.V. Sreekumar when he asked the participants to write the word ‘സൂര്യൻ’ (the Sun); I took a survey of the writings. What I found was that the older generation all wrote the word in traditional Malayalam orthography; and a large number of younger generation also wrote it in traditional orthography. The latter group were not taught in schools to read or write in traditional script (the text books are all in broken/reformed script). Intrigued how they were familiarized with the traditional orthography, I had questioned how they knew to write in this fashion. The answers were categorized into:

  1. They saw their parents write in traditional orthography.
  2. They saw their grandparents write in traditional orthography (but their parents write in reformed script).
  3. Most strikingly, some youngsters were sure this was the ‘correct’ way of writing and yet they could not explain how or from where they learnt it.

The response from the third category is very interesting: because they learnt the script ‘organically’ and it is imbibed in their identity — which is what the definition of ‘culture’ is. The revelation is that; the script belongs to its people and no matter what the government decrees about (ref: Kerala govt orders about script reform in 1971 and 2022).

The session

Together with type designer Athul Jayaraman, I had a joint session on typography. Athul focused more on the type design and I had elaborated more on Malayalam script (traditional orthography), and font engineering & techniques.

The Mathrubhumi news team also interviewed both of us and published a two-part series of the interview on their new site:

The experience

Of the many conferences I have been to, ICFK 2024 was one the best un-conferences in my experience. I met a lot of exemplary, yet humble & approachable, calligraphers (some of them gave me their autographed booklets, thank you!), learnt a lot and enjoyed thoroughly.

Ruqola 2.4.1 is a feature and bugfix release of the Rocket.chat messenger app.

Ruqola 2.4.1

  • Fix typing support (new API)
  • Exclude string starting with /* or // as Rocket chat command (avoid error)
  • Don't copy text when preview is hidden
  • Fix Market apps support
  • Fix search user (Allow to use '@') when inviting users in Room
  • Inform when we don't have database history for a specific Room
  • Fix clicking in url in text in preview url
  • Don't allow to create two tokens with same name
  • Don't show clear button in lineedit when it's readonly

URL: https://download.kde.org/stable/ruqola/
Source: ruqola-2.4.1.tar.xz
SHA256: e5adb0806e12b4ce44b55434256139656546db9f5b8d78ccafae07db0ce70570
Signed by: E0A3EB202F8E57528E13E72FD7574483BB57B18D Jonathan Riddell jr@jriddell.org
https://jriddell.org/jriddell.pgp

Wednesday, 22 January 2025

Hey all

Here is another video recap of what happened in the last few weeks with the design system for Plasma. I review icon work and some considerations to take when designing icons.

There is a review of our current state or affairs, a proposal for a sprint and working with PenPot.

Sunday, 19 January 2025

Is Manjaro ARM dead?

Some of you might have noticed. Updates to Manjaro ARM packages are far between these days. Actually it has been far between updates since I left the project in March 2023.

So this begs the question: Is Manjaro ARM dead?

Lets take a look at the current status.

No new images

The last round of release images for all the major platforms Manjaro ARM supports was done in February 2023, release version 23.02. And I have heard that most of them break the installation after the first update.

The only images I have seen that has had any kind of new release since I left, are the Pinephone based ones. But they are still considered Beta (after 4 years!).

ARM download are no longer prominent on the website

Manjaro.org got a new fancy website a little while ago. This website hides the ARM images, so you have to really look for them to find them. Here's how you find them on the new website:

manjaro.org -> Download button -> Go back a step in the submenu that says Products > Download > x86 by pressing the Download entry -> Press the Download button in the second section called For Phones And Embedded.

Now you can see and download the ARM images.

Very few package updates

The Raspberry Pi specific packages have been updates steadily by Ray Sherman, the maintainer. But all the other Manjaro specific packages are only updated rarely or not at all.

Even the package updates from Arch Linux ARM is not done very often anymore. So the package repository in general is in a very bad out-of-date state.

Is it maintained?

With all these points, I would conclude that it is not really maintained anymore. Ray asked the Manjaro project management about this and was told that the ARM branch no longer has a manager and therefore it was no longer a priority by the Manjaro team.

To me, that sounds like it has died a slow and quiet death.

I would not recommend Manjaro ARM to anyone anymore, because of the state it is in. It's a sad conclusion, as I started the project with Josh Crowder back in 2016 and we loved working on it.

One of my leisure time activities is to develop KMyMoney, a personal finance management application. Most of my time is spent on development, testing, bug reproduction and fixing, user support and sometimes I even write some documentation for this application. And of course, I use it myself on a more or less daily basis.

One of the nice KMyMoney features that helps me a lot is the online transaction download. It’s cool, if you simply fire up your computer in the morning, start KMyMoney, select the “Account/Update all” function, fill in the passwords to your bank and Paypal accounts when asked (though also that is mostly automated using a local GPG protected password store) and see the data coming in. After about a minute I have an overview what happened in the last 24 hours on my accounts. No paper statement needed, so one could say, heavily digitalized. At this point, many thanks go out to the author of AqBanking which does all the heavy work dealing with bank’s protocols under the hood. But a picture is worth a thousand words. See for yourself how this looks like:

A recording of my daily download procedure

The process is working for a long time and I have not touched any of the software parts lately. Today, I noticed a strange thing happening because one of my accounts showed me a difference between the account balance on file and the amount provided by the bank after a download. This may happen, if you enter transactions manually but since I only download them from the bank, there should not be any difference at all. Plus, today is Sunday while on the day before everything was just fine. First thought: which corner case did I hit that KMyMoney is behaving this way and where is the bug?

First thing I usually do in this case is to just close the application and start afresh. No way: same result. Then I remembered, that I added a feature the day before to the QIF importer which also included a small change in the general statement reader code. Of course, I tested things with the QIF importer but not with AqBanking. Maybe, some error creeped into the code and causes this problem. I double checked the code and since it dealt with tags – which are certainly not provided by my bank – it could not be the cause of it.

So I looked at the screen again:

New data must have been received because the date in the left column changed and also the amount of the colored row changed but not the one in the row above which still shows the previous state. The color is determined by comparing the balance information with the one in the row above. So where is/where are the missing transaction(s)?

Long story short: looking at the logs I noticed, that the online balance was transmitted but there was no transaction at all submitted by the bank. And if I simply take the difference between the two balances it comes down to a reimbursement payment which I expect to receive.

Conclusion: no bug in KMyMoney, but the bank simply provided inconsistent data. Arrrrgh.