In September 2024, the annual KDE conference Akademy was held in Würzburg. I've been to all Akademies from 2004-2020 (except 2005). Then came Covid, private life, etc. So it was kind of special that I finally made it to Würzburg again, which was just a ~2h ride away by train. And it was a good decision: Since many KDE contributors (also those who stayed with KDE a for a log time) came to this Akademy. It was a good opportunity to meet old friends again.
And that remided me of a blog post I wrote 15 years ago: The Power of Developer Meetings. In that post I was highlighting the importance of face-to-face meetings. What I wrote back then is still relevant today, so I'll just repeat:
Social aspect: You get to know the other developers involved in the project in real life, which is a great motivation factor and simplifies communication a lot.
Productivity: Since you are sitting next to each other discussions about what to do and how to do what are very focused. It’s amazing how quickly a project can evolve this way. (I still haven’t seen such focused work in companies yet, even 15 years later).
Knowledge Transfer: Since participants are experts in different areas, discussions lead to knowledge transfer. This is essential, as sometimes developers have very few free time to contributes to a project. Spreading the knowledge helps a lot to keep the project alive.
Steady Contributions: New contributors always pop up, which is in particular very nice. Everyone is welcome to set a patch, get commit access and join development. Experience shows that participants joining developer meetings / conferences usually contribute for years to come.
I enjoyed meeting KWin developers (new and old ones), plasma developers, and Kate developers again (of course!). All in all I am very happy to see the lively community that KDE managed to be for over 25 years - well done!
All of the Maui repositories have the newly released branches and tags. You can get the sources right from the Maui group: https://invent.kde.org/maui
MauiKit 4 Frameworks & Apps
With the previous version released, MauiKit Frameworks and Maui Apps were ported to Qt6; however, some regressions were introduced, and those bugs have now been fixed with this new revision.
Some of the changes and improvements were taking longer, so we skipped the February release and moved it to May, so here it is. With an ever-improving MauiKir set of frameworks powering the set os Maui Apps.
MauiKit Frameworks
A script element has been removed to ensure Planet works properly. Please find it in the original post.
The MauiKit controls templates for list and grid elements have been reviewed, and any binding loops have been squashed. Also, those elements such as GridBrowserDelegate, ListBrowserDelegate, ListItemTemplate, GridItemTemplate set their implicit sizes correctly.
It is now possible for third parties to create custom styles that adapt to MauiKit. Creating a custom QQC2 style is quite simple; to preserve Maui visuals, the new style should use MauiKit properties for setting colors, and elements, margins, padding, and sizing, etc. To allow this, please refer to MauiMan property allowCustomStyling. see [https://api.kde.org/mauikit/mauikit/html/classStyle.html]
Add more resize-edges to the ApplicationWindow in CSD mode
MauiKit ImageViewer type has gained more properties for finer control
MauiKit now disables effects when the software renderer is used.
In nested and composed controls, use the background of the top root element.
Fixes creating dialogs from component types.
TabView and Page controls now support grouped properties for the tabBar and header and footer columns, respectively, to tweak the margins. see [headerContainer.margins: 10]
The PageLayout control can now split the header elements into the footer, but also pick which section of the header will be moved when split, by using the property splitSection. see [https://api.kde.org/mauikit/mauikit/html/classPageLayout.html]
Tweak and better translucency effects for the Page and TabBar headers and footers. (To disable effects, refer to the MauiMan Theme property: enableEffects)
The Nitrux CSD theme has been improved to be more compact visually
The ToastArea for notifications is now keyboard navigable.
MauiKit-Filebrowsing fixes Tagging regressions and multithreading crashing issues.
MauiKit-Terminal fixes and supports for translucency, signaling current working directory changes, exposing background and foreground colors properties, and updating the touch area.
MauiKit-Documents fixes the search results highlights and supports initial text selection.
MauiKit-ImageTools now makes use of the KEviv2 library wrapper for managing image metadata editing. Includes a new image editor based on OpenCV, and improves upon the existing interface for text detection in images OCR.
MauiKit-ImageTools improves the keyboard navigation on its custom controls.
MauiKit-FileBrowsing, the Tagging interface, now emits the right signals upon new tag creations. Improve the OpenWith dialog with an informative header. Improve keyboard navigation and multiple file selection in FileBrowser component using keyboards.
Currently, the set of Maui Apps amounts to over 10+ apps. For this release, the focus has been to improve the experience in the main set of apps, such as Index, Pix, Statio, while keeping up to date with the other ones.
The apps now have better keyboard navigation support, include new features, and a cohesive layout/design where the app’s main content is put on the front by using a modern “floaty” style.
Pix now includes, in the viewer, OCR auto recognition, along with a ui/ux for quickly selecting the text found in images. A new image editor backed by OpenCV , improved navigation patterns, fixed GPS browsing, and a metadata reader and editor now using KDE’s library kexiv2. You can also quickly navigate multiple images from the editor, and in desktop environments, Pix supports opening an image per window.
Here you can watch Pix OCR in action:
The Pix image editor is coming from MauiKit-ImageTools, and for this initial release, it has the basic image manipulation controls, such as brightness, contrast, sharpness, etc. And some experimental filters. Upcoming versions should start adding up much more controls for more detailing editing. Algo object recognition is planned for upcoming releases by using OpenCV.
Station, the terminal emulator, now better supports command shortcuts in a new sidebar, which is useful for touch-based input. The sidebar is integrated using the new floaty style.
For those who fancy a good-looking terminal, Station brings back support for the translucency effect under Plasma. The screenshots below show Station on a PinePhone and a desktop under Plasma using the effect.
From previous releases, Station, can now launch and open URLs from the output by right-clicking on the selected text string. The touch area for mobile screens has been fixed, and the gesture shortcuts work great, and a bottom toolbar with common “keys” is available and responsive to the current program running, for example is running “nano” the keys will be relevant to that.
Index, out file manager, now has an action bar floating over the browser for quickly performing actions.
Index comes with improvements in the contextual menus when applying actions to multiple files and keyboard navigation.
A more focused UI design.
Index, Pix, and Vvave remember the last tag used and suggest it.
Notifies when a file has been tagged and allows opening the given tag from the notification
Fixes to the creation and destruction of dialogs.
The embedded terminal can now be manually synced by using the context menu or the ‘Ctrl+.’ keyboard shortcut
Buho now supports opening notes in different windows in desktop mode. And exposes a server method for third-party apps to save notes to it quickly, for example, Pix is now using this interface to save the text found in an image to a note in Buho.
Shelf, using MauiKit-Documents, now has text selection support and improved found text highlights.
You can follow the project on Mastodon or X to keep up to date on the changes being made. And if you are planning to work on an app for Linux and considering MauiKit for the UI, please do not hesitate to reach up to us for help, advice, or suggestions. Some updates coming from X follow:
Nowadays it is getting more and more popular to write Qt applications in Python using a binding module like PySide6. One reason for this is probably Python's rich data science ecosystem which makes it a breeze to load and visualize complex datasets. In this article we focus (although not exclusively) on the widespread plotting library Matplotlib: We demonstrate how you can embed it in PySide applications and how you can customize the default look and feel to your needs. We round off the article with an outlook into Python plotting libaries beyond Matplotlib and their significance for Qt.
Being the workhorse for more than a decade, it took me by surprise that Qt 5 is going to run out of support tomorrow. Honestly, Qt 6 was released in late 2020 and I prefer using modern code bases that use features from the C++17 and C++20 standards. So, no reason to hold me back.
I am pleased to announce the release of KDE Stopmotion 0.9.0. It consist of the Qt 6 port and has no additional features or bug fixes. Quite boring, it does not even look nicer or different at all. Many thanks to Florian Satzger and Mark Penner for helping with the port when I got stuck.
Behind the curtain, we use KDE CI templates for the build pipeline, increased the minimum required version numbers for Qt, CMake and C++, and some minor warnings got fixed. We are back using semantic versioning. New features are added with an increased minor version number. Increased patch numbers are for bug fixes only.
Adding sound does not work properly, this is a known bug.
You can create the tar ball using the 0.9.0 Git tag.
Get involved!
I was super happy to receive help with the Qt 6 port. It is so cool to work with strangers and achieve so much. Being united by the desire to create powerful software, is a strong motivation.
I am desperately looking for more people to get involved in KDE Stopmotion. If you are looking for a place to make a contribution, consider it! Some areas for contributors come to my mind:
Use more modern libraries to grab the images from cameras. We have several options and some of these are unmaintained for years. Adding more recent options would be great.
Starting with integration into KDE's software stack. Stopmotion is still in the incubation phase. The software uses Qt but not KDE frameworks or other things from the ecosystem like handling the translations or a neat integration of the documentation.
Improving our test automation would be great.
The code base is 20 years old. Some C++ patterns used in the code might no longer be the best choice and a replacement with C++20 code might improve the quality.
Welcome to a new issue of "This Week in KDE Apps"! Every week we cover as much as possible of what's happening in the world of KDE apps.
This week we look at the usability improvements landing in NeoChat, and KClock; important bug fixes in Akonadi; performance improvements in KTorrent and new features in Kate and KRDC.
Getting back to all that's new in the KDE App scene, let's dig in!
Volker Krause added support for MOTIS instances without OSM street routing capabilities (link). This is the case for the backup instance of Transitous.
Volker also upstreamed various parts of Itineray and KTrip to KPublicTransport to be able to reuse them in both applications. This include the vehicle layout view (link 1, link 2 and link 3) and the DelayRow (link).
In terms of ticket support, Joshua Goins improved the reliability when parsing american airlines tickets (link). Volker improved the Flixbus PDF extractor (link). Additionally, Volker also added onboard API support for Ouigo ES (link).
balooii added a rotation capability to monitor and effect stack tooling (link). They also fixed some artifact issues in the vectorscope tool on high zoom levels (link).
Jean-Baptiste Mardelle added an option to show thumbnails in the markers list dialog (link).
Facundo Almeida fixed an authentification issue when connecting to a server with SFTP and a public key and a keyboard-interactive authentication method (link).
Whale
Carl Schwan continued working on Whale, a QML based file manager, and redesigning the header to look more closely to the current Dolphin design (link).
Martin Marmsoler added the possibility to create nested plots (link).
Martin also improved the axis ticks with a new algorithm to determine the spacing and number of major axis ticks (link).
Finally Martin also fixed a few issues. The cursor dock can now be correctly added when the properties dock is hidden (link). Formulas are correctly updated after importing them (link).
Joshua Goins overhauled how NeoChat restores rooms on space switch (link). Now when you switch spaces, the last room in that space is stored and will be restored.
Joshua also went bug hunting on the message delegates in the timeline and fixed many issues (link). Notably the location map and context menu for non-text messages work again and some wording was improved. Speaking of context menus, Joshua also added a new context menu when right clicking on an avatar (link), added a share action to the maximized delegate (link), and made it possible to access all emojis from the context menu (link).
Joshua also improved the UX for rooms that don't have a canonical alias (link), fixed running NeoChat on Android (link), and reorganized some elements in the room settings (link).
Tobias created a mock server implementation of a Matrix server to use for testing (link).
James Graham made the user id elide in the user detail dialog when it is too long to avoid overflow (link).
Andrey Semashev optimized various hot spots in KTorrent. He reduced the number of allocations for each packet from 3 to 1 (link), optimized the storage of some lists (link), reduced the algorithmic complexity of the file cache from O(log n) to roughly O(1) (link) and fixed some Qt container detaching issues (link).
Andrey Semashev also added support for OpenSSL as the cryptography backend (link).
Philipp Kiemle fixed some UI strings to be HIG complient (link 1 and link 2)
George Florea Bănuș added support for showing the total amount of bytes uploaded or downloaded for a file in the current session (link).
Allen Winter updated the list of DAV providers, removing some defunct providers and adding new ones like Fastmail, SOGo, Citadel, Zoho, and Kopano (link 1, link 2, link 3, ...).
Allen also fixed a crash when trying to update an item (link).
Carl Schwan fixed three crashes related to fetching passwords from the system keyring found via Sentry (link 1, link 2 and link 3), and another crash when trying to load an account with an unknown authentication type (link).
Akonadi Console
Carl Schwan fixed a crash when editing or deleting a tag (link).
KOrganizer KOrganizer is a calendar and scheduling application
Allen Winter removed the Get Hot New Calendar feature from Korganizer (link). It was only featuring school holidays and football season calendars from the 2006-2008 era.
Allen hid the todo list from the KOrganized sidebar when already using the todo view (link) and added an option to show/hide the week numbers in the date navigator (link).
Kleopatra Certificate manager and cryptography app
Tobias Fella improved the success message when uploading a key (link), added a warning when disabling a certificate (link), and added a plural variant to a UI string when verifying multiple signatures from the same file (link).
Games
Chessament - Chess tournament manager
Manuel Alcaraz started incubating Chessament, a chess tournament manager.
For a complete overview of what's going on, visit KDE's Planet, where you can find all KDE news unfiltered directly from our contributors.
Get Involved
The KDE organization has become important in the world, and your time and
contributions have helped us get there. As we grow, we're going to need
your support for KDE to become sustainable.
You can help KDE by becoming an active community member and getting involved.
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. There are many things
you can do: you can help hunt and confirm bugs, even maybe solve them;
contribute designs for wallpapers, web pages, icons and app interfaces;
translate messages and menu items into your own language; promote KDE in your
local community; and a ton more things.
You can also help us by donating. 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 your application mentioned here, please ping us in invent or in Matrix.
Here we are in the year 2025 and every company that wants to grab your money now peddles AI.
Even most search engines will now start with some “AI powered” summary.
Unfortunately, what they give you is just some deep learning intelligence fake.
Just imagine, you don’t read the links yourself, but you pass that to some friend/colleague/… that might be a nice person but is known to, if in doubt, not to tell that he did not understand what he should do, but just returns some random stuff that sounds like it could be true.
That is the state of AI.
Naturally one has trained the models to death on standard questions and problems, ask a semi new model why the sky is blue and you get the same answer as on the Wikipedia, more or less.
But try it different: Ask something that for sure is no training question.
My self serving question, just to see if the standard models know something about Kate (and perhaps me).
Naturally not just ‘me’ invented Kate, but let’s roll with that.
Who invented the Kate editor?
Let’s ask the gemma3 model:
The Kate editor was primarily developed by Michael Hofmann.
Here’s a breakdown of the key figures and the evolution of Kate:
Michael Hofmann (Lead Developer): Hofmann started working on Kate as a personal tool for editing and exploring Markdown. He initially created it as a command-line tool and gradually built out the features we see today. He’s the driving force behind the project and continues to actively maintain and develop it.
Other Contributors: While Hofmann is the central figure, Kate has benefited from significant contributions from a community of developers and designers. Important contributors include:
Matt Butcher: Made significant contributions to the UI design and the editor’s overall look and feel.
Daniel Wani: Was instrumental in the early development and testing.
Key Timeline:
2013-2015: Initial development started by Michael Hofmann as a personal tool.
2015: Kate was released as open-source.
2016: The first desktop version was released.
In short, Michael Hofmann is widely considered the inventor of the Kate editor, but it’s a product of a collaborative effort.
You can find more information about the development history on the Kate editor’s website: katex.app
Ok? No idea where that stems from.
Next try, ask llama3.2:
I couldn’t find any information on who specifically “invented” the Kate editor, but it was primarily developed by Michael Hofmann.
The Kate editor is a command-line text editor that was first released in 2005 and has since become popular among programmers and developers. It’s known for its speed, efficiency, and customization options.
If you’re looking for more information on the history of Kate or its development, I’d be happy to try and help!
A bit better, at least some hint that the answer could be useless.
Half contradicting the first, given there the same person seem to have invented that close to one decade later.
Next try, ask deepseek-r1:
The Kate editor was not invented by a single individual but is instead an open-source project that was primarily developed and designed by Michael Hofmann in 2005. Since then, it has been actively maintained and improved by a community of contributors who have added features, enhanced its functionality, and worked on its documentation.
Kate is known for its simplicity, speed, and ability to perform complex text transformations quickly. It is widely used in development environments and is often bundled with modern IDEs (Integrated Development Environments) like JetBrains Rider for Java and .NET projects.
If you’re looking for more details about Kate or its history, feel free to ask!
Matching a bit the second answer with more interesting random pseudo facts.
Ok, then let’s try the Brave browser AI search:
Kate Editor Inventor
The KDE community developed the KDE Advanced Text Editor, or Kate. It has been a part of the KDE Software Compilation since version 2.2, which was first released in 2001.
That looks at least reasonable.
Let’s put the first sentence of one of the answers in the Brave browser AI search to see what happens then:
The Kate editor was not invented by a single individual but is instead
an open-source project that was primarily developed and designed by
Michael Hofmann in 2005.
You get back:
The Kate editor is part of the KDE free software community and was not invented by a single individual.
Development of Kate began in 2001 with the release of KDE Software Compilation version 2.2.
Michael Hofmann is known for his contributions to the project, but he did not single-handedly create it.
Kate is an advanced text editor that supports syntax highlighting, code folding, and multiple cursors, among other features.
Now you have Michael Hofmann back, as that was in your search prompt.
None of the linked search results tell you a sentences about Michael Hofmann, this was just nicely hallucinated into the summary because it was in the prompt.
I don’t say that AI tooling is useless, deep learning is a very useful tool.
But I am afraid many people will just read the AI summary box above the search results and believe that is a real summary.
No, it is not.
If you rephrase the
The Kate editor was not invented by a single individual but is instead
an open-source project that was primarily developed and designed by
Michael Hofmann in 2005.
to something different, with a different name and perhaps not that nice achievement, you will likely just get a hallucinated confirmation of your query.
And voila: you asked if some thing you heard somewhere is true and more or less get it confirmed because you asked about it.
We then end up here:
I said it because it is the truth.
It is the truth because I said it.
I hope that enough people understand that issue and don’t fall for the trap of only peaking at the AI summary and not actually looking at the search results.
But as it is that convenient, and even I often just read that first, I am afraid that will not be the case.
Naturally the search results themselves were never the fully reliable source of information.
They are weighted and sorted via algorithms that will keep in mind a lot of things that might not be in your interest and even without that, perhaps just the found pages are full of half truths or lies (like this one :)
But the AI summary box just adds one level more that can introduce just any kind of error or bias on top of that.
We're actually going to be using the Do Not Disturb feature in Plasma 6.4.
I say that because previously we had a hack that simply allowed notifications to
display over top of fullscreen windows, and do not disturb was only ever used
if:
Screens are mirrored
During screen sharing
The user invoked it manually
This was a little odd, and led to some inconsistencies. Plus only Plasma knew
about the user's preference to see notifications in fullscreen, and despite
notifications being inhibited reading org.freedesktop.Notifications.Inhibited
would return false.
My impression is that these bugs were not evident before because few people were
actually using the do not disturb feature, thanks to the way we previously
handled notifications with fullscreen applications. Everyone has been hard at
work getting these fixed and hopefully DND will be more useful, predictable, and
reliable! 🎉 😄
It contains bug fixes and graphics improvements on many activities.
It is fully translated in the following languages:
Arabic
Bulgarian
Breton
Catalan
Catalan (Valencian)
Greek
Spanish
Basque
French
Galician
Croatian
Hungarian
Indonesian
Italian
Lithuanian
Latvian
Malayalam
Dutch
Polish
Brazilian Portuguese
Romanian
Russian
Sanskrit
Slovenian
Albanian
Swedish
Turkish
Ukrainian
It is also partially translated in the following languages:
Azerbaijani (90%)
Belarusian (86%)
Czech (98%)
German (87%)
UK English (99%)
Esperanto (99%)
Estonian (88%)
Finnish (93%)
Hebrew (97%)
Georgian (86%)
Macedonian (83%)
Norwegian Nynorsk (92%)
Portuguese (87%)
Slovak (81%)
Swahili (91%)
Chinese Traditional (87%)
You can find packages of this new version for GNU/Linux, Windows, Android, and Raspberry Pi on the download page. Also this update will soon be available in the Android Play store, the F-Droid repository and the Windows store.
We are also releasing GCompris version 4.3.1.
This is a maintenance version for 32bit systems which only contains a few backported bug fixes.
Kirigami Addons is a collection of supplementary components for Kirigami
applications. Version 1.8.0 is a relatively minor release, introducing two new
form delegates along with various quality-of-life enhancements.
New Features
I added two new form delegates: FormLinkDelegate (!343) and FormIconDelegate (!355).
The first one is similar to FormButtonDelegate, but it’s used to display an external link. It’s already used on the About page:
The second one was upstreamed from Marknote and allows the user to pick an icon and display the selected icon.
I also added a password quality checker to FormPasswordFieldDelegate (!345). This is particularly useful when asking users to create an account:
Visual Changes
Kai Uwe Broulik improved avatar rendering. Initials are now always displayed consistently even on small screen (!363).
Kai also fixed an issue on mobile where library information on the About page was being ellipsized (!356).
Balló György fixed several issues when using Kirigami with the QtQuick software rendering backend (!350, !351).
I made the delegates provided by Kirigami Addons now have a slightly larger touch area on mobile (!349). Unfortunately, I also had to remove the small hover animations, as they occasionally caused visual glitches (1d6e84cd).
Convenient New APIs
Joshua Goins added an opened property to ConvergentContextMenu (!352), and I added a close method to allow closing the menu programmatically (!364).
I also added support for trailing items in FormTextFieldDelegate (f996fc6e).
Documentation
Thiago Sueto ported the entire library to QDoc (!354). QDoc provides much better support for QML.
Other Changes
“trapped-in-dreams” significantly improved the performance of the date picker (!360).
Volker Krause updated the project templates to reflect current best practices for Android support (!359).
Packager Section
1.8.0 had an issue with system not having QDoc, but a bug fix release is available as 1.8.1 with the fix for that.