Skip to content

Friday, 2 December 2022

Let’s go for my web review for the week 2022-48.

osquery | Easily ask questions about your Linux, Windows, and macOS infrastructure

Tags: tech, monitoring

This looks like an interesting OS level monitoring solution.

WebAssembly: Go vs Rust vs AssemblyScript :: Ecostack — a developer blog

Tags: tech, webassembly, performance

Little simple benchmark of WebAssembly performances for the most common languages found there. Careful to the payload size though.

Using Rust at a startup: A cautionary tale | by Matt Welsh | Nov, 2022 | Medium

Tags: tech, programming, rust, architecture

Don’t believe claims about Rust (or any other options in fact) being a language for universal use. It has a few spaces where it shines and others where it’ll be a drag. Picking the right language and stack is a multi-factor decision process where the technical advantages of the language itself say less than half of the story.

I am disappointed by dynamic typing • Buttondown

Tags: tech, type-systems, metaprogramming

Interesting take about what could make dynamic typing truly shine if it got all the way to runtime manipulation in a consistent manner. We’re far from it though.

Git Notes: git’s coolest, most unloved­ feature - Tyler Cipriani

Tags: tech, git

Obscure feature definitely but we’re happy it’s there… maybe one day it’ll indeed allow to have much more independence from the code forges.

I/O is no longer the bottleneck

Tags: tech, performance

Definitely this, we have to stop pointing disk I/O so much for performance issues. This is just not really slow anymore. Obviously network is a different story.

Falsehoods programmers believe about undefined behavior

Tags: tech, compiler, c, c++, rust

Undefined behavior do exist and well… they’re really undefined, don’t make any assumption about them.

Cache invalidation really is one of the hardest problems in computer science – Surfing Complexity

Tags: tech, performance, multithreading

Nice summary on the false sharing problem with caches and how it can impact your performances in multithreaded contexts.

Recognizing patterns in memory // TimDbg

Tags: tech, debugging, memory

Interesting set of memory patterns. Didn’t know all of them, some are definitely useful and I already use, I’ll try to look for the others next time I need to.

Massively increase your productivity on personal projects with comprehensive documentation and automated tests

Tags: tech, git, project-management, maintenance

Nice list of things to keep in mind when working on projects, even small personal ones. This greatly improve maintainability in the long run.

Why writing by hand is still the best way to retain information - Stack Overflow Blog

Tags: tech, low-tech, note-taking, book

There’s definitely a tension between something which you can organize and search easily (by typing) and something you can remember better (by hand writing). That’s why I can’t get rid of hand written notes completely, I practice a mix of both depending on the use.

Bye for now!

You Make KDE Possible

KDE's End of Year Fundraiser is officially live! Your donations will help us reach our goals, support our community, fund our events, and show the world how everybody can benefit from KDE software.

Today we have the ambitious goal of raising 20,000€ for KDE. Your donation allows KDE to continue developing the spectacular Plasma desktop and all the apps you need for education, productivity, and creative work. Here are some of the things we have managed to do over the last year thanks to the generosity of donors:

Reaching the World

  • We have welcomed 2785+ people worldwide who have contributed code, art, translations and more.
  • We added/maintained support for 40+ languages for apps and frameworks.
  • We organized and attended 18 community events/sprints.

Building the Products

  • We hosted 1000+ projects and repositories.
  • We continued developing 260+ applications and addons.
  • We pushed out 11+ updates for KDE's Plasma desktop and related environments, such as Plasma Mobile and Plasma Big Screen and applications.
  • We supported 12 hardware platforms.
  • We continued to develop 83 frameworks.

The work of KDE is made possible thanks to the contributions from KDE Community members, donors and corporations that support us. Every individual counts, and every commitment, large or small, is a commitment to Free Software. Head to the KDE's End of Year fundraiser page and donate now.

Want to help more? Join KDE and contribute to building the future of KDE.


KDE’s 2022 year-end fundraiser is now live! Please go donate if you can. 🙂

It’s been several years since we did a fundraiser at the end of the year, and we’re going to be more on the ball about this going forward, given how much the KDE e.V. is expanding hiring. This year’s fundraiser sets the fairly modest goal of 20k €, which will help offset the cost of some of that hiring.

But of course… there’s no reason not to exceed the goal! The more money raised, the more contributors the KDE e.V. can hire directly, effecting the kind of professionalization needed to take KDE to the next level! We have big plans and we can’t do it without your help!

I know I’ve asked for a lot of donations recently, so if you’re feeling tapped out, this is a good time to go nudge your friends and family members who you’ve converted to KDE over the years! 😉 Help KDE challenge the big dogs and win!

Wednesday, 30 November 2022

In two weeks, the board of KDE e.V. – and take note that photo of me is before 3 years of COVID-hair – will convene in Berlin for one of our board sprints.

The board meets weekly online, using the Big Blue Button infrastructure that KDE has for meetings, online get-togethers, virtual sprints and hybrid conferences. In an hour or two we get through the week’s “needs doing now” and “approve this request from the membership or community” items. But some things are not very well suited for online discussion. Sometimes we need to physically sign papers (Germany, old-fashioned, etc.). And of course, drinking tea together is what really makes a team.

Hmm, yes, there is “tea” in team. Make mine a Yunnan FOP.

But it’s not just all fun and games. Actually, hardly any: we get to spend 10 hours a day at the office over a weekend doing KDE e.V. board and administrative stuff. In the evening, though, we’ll meet up with some KDE folks in and around Berlin and potentially consume more tea.

(And when in Germany I always stock up on a handful of typically German products, like knödel – a good KDE name, although I can’t imagine an application carrying it)

Updates in Plasma Mobile for September to November 2022

The Plasma Mobile team is happy to announce the result of all the project's development work carried out in September and November of 2022.

Plasma Mobile Gear

We have decided to migrate the releases of Plasma Mobile applications to KDE Gear, starting with KDE Gear 23.04. This means that Plasma Mobile Gear will be discontinued in the future, and Plasma Mobile applications will follow the release schedule of most other KDE applications, simplifying packaging. To prepare for this, an ongoing effort was made to ensure all applications have proper Bugzilla categories created.


Akademy 2022 was held in Barcelona, and Devin and Bhushan presented some of the work in the project in the following talk:

Several Plasma Mobile BoF (birds-of-feather) meetings were also held. More details about them can be read over at Devin's blog.


Plasma 5.27 will be released on February 9th, 2023. This will be the last Plasma 5 release, with work after that being focused on Plasma 6!

Action Drawer

Devin added a feature that lets you tap the media player so that the audio source app window opens. He also fixed the quicksettings so that it now always opens the mobile settings application. Several issues with the mobile data quicksetting not accounting for certain scenarios were also fixed; and he also worked on fixing the marquee label in the WiFi quicksetting, stopping them from overflowing when multiple network devices are attached.

Devin fixed the close button not being usable while an application is launching.

Halcyon (Homescreen)

Devin fixed some performance issues when scrolling in the grid app list. This should improve performance a lot on slower devices.

Yari fixed support for the Meta key, and it should now properly bring up the homescreen when pressed.


Devin did some performance refactoring, and also set the clock text to bold to improve contrast.


Aleix fixed wakeups while the screen is off and the device is rotated. Rotations are now only tracked when the display is on.


Xaver added support for device panel orientations. This means that devices like the OnePlus 5 (which has an upside-down mounted display) will now have the orientation correct by default, and not inverted for touch input.


The bug that led to shell configurations sometimes being wiped at start has been fixed in the upcoming Plasma 5.26.4 release.

Seshan worked on an updated design for the power menu, and it now includes a logout button.

New Power Menu design


Devin spent time addressing feedback through the KDEReview process, in preparation for moving the application to the KDE Gear release cycle. These changes include:

  • The settings dialog being switched to use a window in desktop mode
  • The scrollbars being added to views
  • Re-implementing the location list reordering to be much nicer to use
  • Many bugfixes
Weather view
Locations list
Add location page


Devin also spent time on the Recorder app, addressing feedback through the KDEReview process in preparation for moving the application to the KDE Gear release cycle. These changes include:

  • The Recorder page now uses a fullscreen layout
  • The recording player layout has been reworked to be easier to use
  • The settings dialog is a window in desktop mode
  • Recordings now start immediately when the record button is pressed
  • You can now export recordings to a different location
  • A bug that added suffixes to recorded file names for no reason was corrected
  • Many bugfixes and UX improvements
Recording list
Recording page
Player page
Settings page
Desktop settings


Devin fixed an issue where looping timers could have multiple ongoing notifications and the user was not able to dismiss them.


Devin did some bug fixing work on the terminal application. He fixed command deletion not saving in certain cases, and also fixed the bug which made the whole window to close when Ctrl-D was pressed.


According to the feedback obtained after the previous incoming call screen updates, Alexey introduced support for changing the answer controls. He provided buttons, and a selection of asymmetric and symmetric answer swipes. He also implemented call duration and caller id support for the incoming call screen with updates both for the daemon and GUI logic.

Marco, along with Alexey, fixed an issue when there was no ringtone when the phone was in lock screen mode without an additional notification. Marco also helped Alexey improve KWin's logic when parsing application privileges, like the lock screen overlay.

Volker introduced initial support for the Qt6 CI builds.

Devin ported Dialer settings to the new form components.

Dialer answer buttons
Dialer asymmetric answer swipe
Dialer symmetric answer swipe
Dialer answer control settings


Michael added attachment previews to notifications. He also made it so that image attachment previews are shown in the chat's list. Another thing he implemented is support for tapback reactions. There is now a confirmation dialog before deleting a chat conversation to prevent accidental deletion of a conversation. Michael also made it so that MMS messages can be downloaded even when wifi is also connected.

Sending tapbacks


Aleix worked on a more helpful homepage that better displays featured applications.


Carl ported Tokodon's settings to the new form components. He also updated the timeline by automatically cropping and rounding the images, improving the typography and fixing some sizing issues.

Volker fixed multiple bugs in the timeline and reduced the transfer volume on a "warm" start-up by 80%. For the technical details, you might want to read his blog post: Secure and efficient QNetworkAccessManager use

New timeline view
New settings


Tobias has made a lot of progress on end-to-end encryption. You can read more about it in his blog post: NeoChat, encryption, and thanks for all the olms

But that's not all, aside from the end-to-end encryption implementation, there was also a lot of changes to NeoChat's configuration settings. James and Carl ported many settings to the new form components. James additionally created a new settings component for managing your notifications settings directly from NeoChat. Gary Wang made it possible to configure a proxy for NeoChat. Tobias improved the settings on Android (hiding the irrelevant settings).

Tobias implemented a basic developer tool that allows inspecting raw matrix events.

Carl added a confirmation dialog when signing out and Tobias added another confirmation dialog when enabling end-to-end encryption.

Tobias rewrote the account switcher to make it easier to switch between accounts.

Channels list
General settings
Notification settings


Bart added support for streaming to Kasts and episodes can now be listened to without the need to download them first. For people that don't care about downloading episodes, there is a new setting allowing you to select streaming over downloading. If this setting is activated, it will show streaming buttons on the UI instead of download and play buttons.

Kasts with the "Prefer streaming" setting activated


Devin did some major fixes to the cellular network settings module, ensuring that the toggle state always matches the one used in the shell. He also improved behavior for when there is no SIM, as well as added more helpful messages if an APN is not configured. Some UI issues on the APN page were also fixed.

Devin also fixed accent colors being set from the wallpaper not working in the colors settings module.


Devin fixed some issues with the new account setup. At Akademy we discussed sharing code between Kalendar and Raven.

Łukasz fixed the edit button showing on the time page even when no entries are listed.


Jonah implemented a lyrics view in the player, and made it possible to filter recent search queries. He also added real album cover images instead of monochrome icons in all song lists.

Mathis made a few UI improvements, including rounded images and new list headers.

AudioTube showing an artist's page
AudioTube filtering through known songs

Actions for each song (like add to queue, etc.) are now in a popup menu. This allows you to favorite songs without having to play them.


Want to help with the development of Plasma Mobile? Take Plasma Mobile for a spin! Check out the device support for each distribution and find the version which will work on your phone.

Our documentation gives information on how and where to report issues. Also, consider joining our Matrix channel, and let us know what you would like to work on!

Tuesday, 29 November 2022

Tuesday, 29 November 2022. Today KDE releases a bugfix update to KDE Plasma 5, versioned 5.26.4.

Plasma 5.26 was released in October 2022 with many feature refinements and new modules to complete the desktop experience.

This release adds three weeks' worth of new translations and fixes from KDE's contributors. The bugfixes are typically small but important and include:

  • Bluedevil: Install translated documentation from po/ too. Commit.
  • Discover: Prefer openining the installed version of an app. Commit. Fixes bug #461664
  • Discover Packagekit: check free space when update size changes. Commit.
View full changelog

Monday, 28 November 2022

It’s fall, the leaves are on the ground, there are pumpkins on the table (and my local vegetable farm has blogged that the seasons are so screwed up due to climate change that it is no longer predictable which veggies show up when) and so, stew and hearty soup season is upon us.

“If I was to become a vegetarian, what kind of stew would we eat?” was a question kid[1] (the only one still at home) put to me. Good question. I have vague ideas about lentils and celery root and beans and tahin, but nothing as concrete as my beef stew recipe (1 chunk of cow, 1 bottle of beer, 6 onions, 1 potato and seasoning). It bears investigating.

Since kid[0] left the house – and they were the principled vegetarian here – we’ve relapsed to flexitarian habits, 1 meat, 6 vegetarian dinners a week with an accidentally-vegan thrown in with some regularity.

As an odd coincidence, both SMBC and my (paper!) paper NRC published something about eating invasive species this week. Household consensus is that if the cook cuts themself while making dinner, it’s still vegetarian.

I’ll leave you with a concrete recipe (if you come over this evening, this is what’s for dinner).

  • 1 pumpkin
  • 6 carrots
  • 2 potatoes
  • 2 bouillion cubes
  • 1 tablespoon curry powder, the nasty yellowish stuff from the supermarket
  • 2 tablespoons dried parsley or chives

Put all but the parsley in a big pot. Add water to just about cover the veggies. Boil softly for 20-25 minutes. Staafmix the heck out of it (um .. puree? I have not used this particular kitchen utensil in an English-speaking kitchen, so I wouldn’t know what verb to use for “apply a staafmixer until smooth”). Stir in the parsley.

Serve with fresh-baked bread.

A KIO worker for accessing iOS devices through the Apple File Conduit service.

Dolphin file manager showing the directory contents of an iPhone. Folders include "Apps", "Books", "DCIM" (Camera), "Documents", "Downloads", and 8 more.
Dolphin browsing the contents of an attached iPhone

While there have been several projects like this for both KDE 4 and Frameworks 5, this one has been written on top of the latest KIO classes and will be officially part of the next KDE Gear release. It is now part of the kio-extras module, which also houses the Android counterpart for transferring files over the MTP protocol.

Thanks to prior work in Solid, KDE’s hardware abstraction Framework, an iPhone plugged in to the computer will be shown in the Disks & Devices applet and Dolphin’s Places sidebar like any other external storage medium. I also submitted a small fix to UPower so that the device’s name rather than vendor and type is shown in the battery applet.

It supports browsing both the general file system as well as documents shared by apps through the House Arrest API. If you’re like me and prefer cable over cloud and wireless, please give it a try and report any bugs you might encounter! You just need to build the solid and kio-extras modules and make sure libimobiledevice-dev (naming will vary depending on your Linux distro) package is installed. You can also grab a build with this feature enabled fresh from the latest KDE neon Unstable edition or SUSE Krypton starting today.

If you don’t have any iOS device, you can still support KDE development by donating! ;)

Saturday, 26 November 2022

This week we have a lot of large and impactful user interface improvements across multiple apps and Plasma, not to mention progress on the big bugs!

New Features

Dragon Player–KDE’s venerable minimalistic video and audio player–has undergone a major UI overhaul, including adopting KHamburgerMenu and a welcome screen, a streamlined and more intuitive set of default toolbar buttons, and less glitchy behavior when opening videos in the Plasma Wayland session (Harald Sitter, Dragon Player 23.04, Link 1, link 2, link 3, link 4, link 5, and link 6):

There’s still a bit more polishing to do, but now this app is sleek as hell!

Filelight now has a list view on the left side of the window, providing a simple text-based method of viewing size information. This also fixes multiple bugs with the tooltips and eliminates blurriness in the radial graph view! (Harald Sitter, Filelight 23.04. Link):

Ark now supports extracting Stuffit .sit archives (Elvis Angelaccio, Ark 23.04. Link)

There’s now a new “Touchscreen” page in System Settings that lets you disable touchscreens and choose which physical screen their input gets mapped to (Nicolas Fella, sponsored by TU Dresden, Plasma 5.27. Link)

In the Plasma Wayland session, screens now get a default scale factor that more appropriately matches their DPI, based on what kind of device they are (me: Nate Graham, Plasma 5.27. Link)

You can now autostart apps multiple times (e.g. to launch multiple instances of it) and it also shows you the paths where autostarted scripts live (Thenujan Sandramohan, Plasma 5.27. Link)

You can now configure Folder View to show hidden files if you want (Willyanto, Plasma 5.27. Link)

System Settings’ Drawing ‘Tablet’ page now lets you map physical buttons on your drawing tablet’s pen to keyboard shortcuts (Aleix Pol Gonzalez, Plasma 5.27. Link)

User Interface Improvements

When you unlock the screen by providing your fingerprint, you no longer have to redundantly click an “Unlock” button afterwards (Janet Blackquill, Plasma 5.26.4. Link)

The way you choose or change a location in the Weather widget is now simpler and more direct (Ismael Asensio, Plasma 5.27. Link)

When using the Canadian weather provider, the Weather widget’s layout is now much better and clearer, and no longer sometimes gets visually cut off (Ismael Asensio, Plasma 5.27. Link):

On System Settings’ Users page, the way you choose fingers to use for fingerprint authentication is now much more visually intuitive. In addition, you can now un-enroll individual fingers, and when you change your password, you’ll no longer see the “passwords don’t match” message until after you click the “Set Password” button, or a few seconds after you stop typing (Janet Blackquill and Devin Lin, Plasma 5.27. Link 1, link 2, and link 3):

On System Settings’ Display Configuration page, screens are now required to be touching and not partially overlapping, which prevents various weird bugs from being able to happen (David Redondo, Plasma 5.27. Link)

The Audio Volume widget’s tooltip no longer unnecessarily tells you that output is playing on “Speaker” when there’s only one output device, and instead mentions the fact that you can scroll over the icon to change the volume (me: Nate Graham, Plasma 5.27. Link 1 and link 2):

Breeze-themed Plasma popups now have a larger corner radius that matches the corner radius for windows (Niccolò Venerandi, Frameworks 5.101. Link):

The Breeze Icon theme now includes a themed icon for SimpleScreenRecorder (Manuel Jesús de la Fuente, Frameworks 5.101. Link):

Significant Bugfixes

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

In the Plasma Wayland session, tapping a touchscreen after disconnecting an external screen no longer crashes KWin (Xaver Hugl, Plasma 5.26.4. Link)

Plasma notifications no longer have inappropriately sharp top corners (Niccolò Venerandi, Plasma 5.26.4. Link)

In the Plasma X11 session, disabling compositing no longer leaves an empty area around Plasma Panels (Niccolò Venerandi, Plasma 5.26.4. Link)

Searching using the KRunner-powered search in Overview no longer sometimes crashes KWin (Alexander Lohnau, Plasma 5.27. Link)

Landed a better fix for the problem of maximized XWayland apps sometimes having a one-pixel empty border on the right screen edge in the Plasma Wayland session (Aleix Pol Gonzalez, Plasma 5.27. Link)

Other bug-related information of interest:

Automation & Systematization

Added some autotests surrounding Plasma wallpaper loading and assignment (Fushan Wen, Plasma 5.27. Link)

Added some autotests around the KFileFilterCombo UI component (Nicolas Fella, Frameworks 5.101. KFileFilterCombo. Link)

Changes not in KDE that affect KDE

In QtQuick-based apps, scrollable views where all content fits horizontally no longer shows a pointless horizontal scrollbar anyway. We had previously worked around this bug in most KDE apps, but now it’s fixed upstream so we don’t have to anymore! (David Redondo, Qt 6.4.2, but backported to the KDE Qt patch collection. 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

If you’re a developer, check out our 15-Minute Bug Initiative. Working on these issues makes a big difference quickly! Otherwise, have a look at 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!

Finally, consider making a tax-deductible donation to the KDE e.V. foundation.

A new release is now available! – with internationalization – supporting multiple languages, introducing new libraries and apps, a more cohesive look-and-feel, and improvements to the current stack of apps.

Today, we bring you a new special report on the Maui Project’s progress.

Maui 2.2.0 was released about three months ago, and since then, we have added new features, bug fixes, and improvements to the Maui set of apps and frameworks; the Maui Shell components and new apps have been updated and pushed for a new release. The following blog post will cover changes and highlights from the last three months, which pave the road for a Maui Desktop environment for convergence.


To follow the Maui Project’s development or say hi, you can join us on Telegram:

We are present on Twitter and Mastodon:

Thanks to the KDE contributors who have helped translate the Maui Apps!


You can get the stable release packages [APKs, AppImage, TARs] directly from the KDE downloads server at

And if you are feeling a bit curious about the Maui DE, you can download a new Manjaro-based image for **testing** the project’s current state.

Note: Please be aware that this is an ISO image from a third-party.

What’s new?

Translations, new apps, more features, bug fixes, and consistency updates, among many other goodies. So let’s start:

There are new additions to the Maui Project, such as MauiKit CalendarMauiKit Documents, and Arca, and new apps getting ready for their first stable releases, such as Fiery browser, Strike IDE, Booth camera app, Agenda calendar, and some others.

These development months have been busy shaping the core stack of apps and libraries for Maui DE, updating all the libraries used by Maui apps; MauiKit Frameworks hits a new stable version, 2.2.1: with translations and more convergent-ready components.

The Maui Apps now look even better, with merged ToolBars into the TabBars, cleaner menus, and translucency effects; you can check out the previous progress report leading to this new release to find out about even more new stuff packed into this new release:

Maui Report 19

The release schedule was updated to better keep in sync with the development workflow of the project. To check the new release plans, you can go to the end of this blog post.

MauiKit Frameworks 2.2

Maui Demo

We rewrote the demo app, and after some initial work, it will list all the available controls in MauiKit Core with short detailed HIG text and code snippets. This app is still a work in progress and will continue to be developed in the upcoming weeks.



The style received paper-cut fixes to more controls to keep the consistency among all the expected states, such as hovered, checked, pressed, etc., for the TextFieldSwitchesSlidersCheckBoxesComboBox, etc.

  • The ToolBar control gained a default row layout for quickly placing items on it.
  • New style for the Tumbler control with mouse-wheel support.

Controls – [2.2.1]

  • We refined the AbouDialog control with a more popping style and more credit information from authors, translators, libraries, links, etc.
  • The ApplicationWindow now has a sane minimum width and height to avoid setting the size to an unusable state.
  • MauiApp now connects to CaskServer to request drop shadows when using CSD under Maui Shell.
  • A cleaner ContextualMenu placement on Mobile mode, and remove hard border lines.
  • The ComboBox has been refactored and now follows the ContextualMenu placement and style.
  • By default, the GridBrowserDelegate is now flat on desktop mode for a cleaner look and feel.
  • The ToolBar and TabBar are slimmer and adjust to the height of their content.
  • The line separators are now more subtle.
  • Apps no longer display window controls in full-screen mode if the user enabled CSD.
  • GalleryRoll and the CollageItem controls now have a consistent font size and style.
  • When building MauiKit, it now generates the .aar package for its Java functionality to integrate into Android.
  • Fixes the KI18n usage for translations.
  • Fix to issue showing duplicated entries on the hidden menu in the SelectionBar control.
  • Support added for images in the QRC for ImageColors.

A script element has been removed to ensure Planet works properly. Please find it in the original post.

FileBrowser, TextEditor, ImageTools, and Accounts – [2.2.1]

The frameworks received the necessary fixes for supporting translations via KI18n and the KDE’s infrastructure.

  • The TextEditor component gained an optional spell checker thanks to KF5 Sonnet.
  • ImageTools gained support for editing, adding, and removing EXIF metadata.
  • FileBrowser now supports .po file type for the text mime-types.
  • The search functionality in the FileBrowser component now shows the progress of file operations.

Documents & Calendar – [1.0.0]

Two new frameworks join the MauiKit group: Documents for viewing PDF, comic books, and EPubs files; and Calendar for calendar support with multiple time and date-related controls.

A script element has been removed to ensure Planet works properly. Please find it in the original post.

Maui Apps

During this cycle, we focus on making the current apps more stable by correcting errors from reported bugs, making the current features more accessible, and shaping the apps to match their desktop alternatives. We have updated the files for Appstream to the latest releases.

Index – [2.2.1]

The Index file browser for desktops, tablets, and phones. Using the KIO library supports browsing networks, devices, and disks. A list and grid view are available, with support for making a composite selection of files from the selection bar, an optional embedded terminal, split views, and multiple tabs; Index allows quick previewing of a bunch of file types within the app and much more.

From the last report, these are some of the new updates included:

  • Translations​​​​​​​​​
  • The quick places section in the sidebar is not flat.

VVave – [2.2.1]

The VVave (read as Wave, by the way) is a music player and a music collection manager with different views to browse your collection. With it, you can edit the music metadata, create “playlists” using MauiKit tags and even stream music from your NextCloud server instance. Vvave has a stylish focus mode and takes care of downloading your music artwork.

Some updates include:

  • Fix the main playlist artwork header padding.
  • Translations.

Pix – [2.2.1]

Pix is an image viewer, image editor, and image collection manager. With it, you can make quick edits to your images, like rotating and cropping and modifying the metadata information; create collections to organize your images; and browse them by folders in a stylish fashion.

  • More extensive previews in the folders and tags views.
  • Simplify the viewer’s view.
  • Translations.

Buho – [2.2.1]

Buho is a simple note-taking app with support for syncing with NextCloud server instances.

  • Translations.

Nota – [2.2.1]

Nota is a simple text editor with support for split views, multiple tabs, listing recent files, syntax highlighting support for multiple languages, an optional embedded terminal, and much more.

  • Translations.

Station – [2.2.1]

The Station terminal emulator now supports split views, multiple tabs, touch gestures, and custom command shortcuts.

  • Translucency testing feature.
  • Fix typos.
  • Single instance server – can now be invoked with the initial working directory.
  • Refactored the custom shortcuts command dialog.
  • Cleaner tab bar.
  • Translations.

Communicator – [2.2.1]

Communicator is a contacts manager app.

  • Translations.

Shelf – [2.2.1]

The Shelf document viewer supports PDFs, Comic book archives, and soon EPUB eBooks.

  • Now uses the MauiKit Documents library to display PDF and comic book archives.
  • Comic book archives are now working for the Android version.
  • Translations.

Clip – [2.2.1]

The Clip video player and video collection manager.

  • Translations.
  • Fix the installation command.

Fiery [1.0.1]

Fiery is the web browser.

  • Translations.

Booth – [1.0.1]

Booth is a camera app with support for scanning QR codes and the expected functionality of a camera app with a bunch of settings.

  • Users can toggle off QR scanning.
  • Translations.

Strike – [1.0.1]

The Strike IDE is an upcoming C++ and CMake-based application to build projects.

  • Translations.
  • We’ve fixed the build-bar implementation.

Bonsai – [1.0.1]

Bonsai is a Git version control manager with initial support for browsing your local repositories, and in the works to become much more feature rich.

  • Translations.

Agenda – [0.1.0]

Agenda is a calendar app.

  • Translations.
  • Create events and display them in the views – thanks to Akonadi.
  • Now uses the MauiKit-Calendar library.


A script element has been removed to ensure Planet works properly. Please find it in the original post.

Arca – [0.1.0]

  • Initial working version with support for opening archives.
  • Preview archive files within the app.
  • Insert new files into the archive.

A script element has been removed to ensure Planet works properly. Please find it in the original post.

Maui Settings – [1.0.1] & MauiMan – [1.0.1]

The translucency feature is now hooked to the MauiMan property enableEffects and exposed on the Maui Settings app.

A script element has been removed to ensure Planet works properly. Please find it in the original post.

Maui Shell & Cask Server & Maui Core – [0.5.6]

The CaskServer gained support for handling drop shadow requests per app; the blurred background is also in the works.

Cask is now hooked to CaskServer’s new options for drawing the requested drop shadows.

The Cask calendar card is now using the new MauiKit Calendar lib.

Cask chrome now correctly sets the border radius.

A script element has been removed to ensure Planet works properly. Please find it in the original post.



Here is a quick reminder of the project’s immediate future goals:

  • Fully utilize CMake. [Done]Developers can build apps and the framework with CMake for all targeted platforms.
  • More feature-rich applications. [In Progress]Pix image editor and GPS location browsing.
  • VVave’s metadata editor and cloud streaming.
  • Index – feature-rich file management.
  • Better integration with Android. Idle states and background playback.
  • Improve data synchronization using NextCloud. [Pending]Only Buho and VVave have initial support.
  • For 2.1, We will add support for Pix as well. [Pending]
  • Improve performance. [In progress]We have split the MauiKit framework into different components.
  • MauiKit::Core controls are faster and more coherent.
  • 5X faster startup times for Maui Apps
  • Improve the UI cohesion on all supported platforms. [In Progress]We continuously improve Maui Style.
  • Move beta apps to stable. [In Progress]Shelf and Clip have been moved to stable, missing Sol (now Fiery), Booth, Strike, and Bonsai.
  • NX SC is available at

New release schedule

The post Maui 2.2.1 Release appeared first on MauiKit — #UIFramework.