Skip to content

Friday, 27 September 2024

Let’s go for my web review for the week 2024-39.


We have lift-off! Element X, Call and Server Suite are ready!

Tags: tech, matrix, ux

Definitely a big announcement for Matrix. Could it be the beginning of going mainstream? I suspect it’ll be now or never. I’m slightly concerned about the desktop support being apparently ignored, the UX there is far from great still.

https://element.io/blog/we-have-lift-off-element-x-call-and-server-suite-are-ready/


Firefox tracks you with “privacy preserving” feature

Tags: tech, mozilla, privacy, surveillance, gdpr

It was to be expected that complaints against Mozilla could happen in Europe. They’ve been asking for it lately…

https://noyb.eu/en/firefox-tracks-you-privacy-preserving-feature


No Data Lasts Forever

Tags: tech, data, culture, history, ecology

Excellent piece, we’re a civilisation whose culture is built on shifting sands and… toy plastics. Guess what will survive us?

https://lilysthings.org/blog/no-data-lasts-forever/


They stole my voice with AI | Jeff Geerling

Tags: tech, ai, machine-learning, gpt, criticism, law

This is clearly less high profile than the Scarlett Johanssen vs OpenAI one. Still this shows it has the potential to become a widespread (even though shady) practice. This might need some regulation fairly soon.

https://www.jeffgeerling.com/blog/2024/they-stole-my-voice-ai


Forget ChatGPT: why researchers now run small AIs on their laptops

Tags: tech, ai, machine-learning, gpt, science

This is indeed important to be able to run such models locally. Will still require more optimization but it’s slowly getting there. The reproducibility it brings is especially necessary for science.

https://www.nature.com/articles/d41586-024-02998-y


OWASP Top 10 for Large Language Model Applications

Tags: tech, ai, machine-learning, gpt, security, safety

People are putting LLM related feature out there too hastily for my taste. At least they should keep in mind the security and safety implications.

https://owasp.org/www-project-top-10-for-large-language-model-applications/


Millions of Vehicles Could Be Hacked and Tracked Thanks to a Simple Website Bug

Tags: tech, automotive, security

Could we just stop connecting cars with web access for features we don’t really need? Please?

https://www.wired.com/story/kia-web-vulnerability-vehicle-hack-track/


Peering Forward: C++’s next decade

Tags: tech, c++, security, safety

Lots of good stuff definitely coming. This should definitely help make it more approachable to lots of people.

https://github.com/CppCon/CppCon2024/blob/main/Presentations/Peering_Forward_Cpps_Next_Decade.pdf


Eliminating Memory Safety Vulnerabilities at the Source

Tags: tech, c++, rust, security, safety

Excellent proof of why you don’t want to “rewrite it all in Rust”. It’s important to respect the old code and focus on applying safety practices on the new code. This is also why the upcoming changes to C++ are worth it, it might improve the interoperability factor almost for free.

https://security.googleblog.com/2024/09/eliminating-memory-safety-vulnerabilities-Android.html


Committing to Rust in the kernel

Tags: tech, linux, kernel, rust

Despite the drama, Rust is slowly making its way into the kernel.

https://lwn.net/SubscriberLink/991062/b0df468b40b21f5d/


Waiting for many things at once with io_uring

Tags: tech, linux, system

Wondering what io_uring is for? This is a good explanation.

https://mazzo.li/posts/uring-multiplex.html


Overview of cross-architecture portability problems – Michał Górny

Tags: tech, cpu, portability

Nice list of common portability issues one can encounter at the machine architecture level. But don’t be fooled, this doesn’t have implications only for C and C++, those problems leak in higher level languages as well.

https://blogs.gentoo.org/mgorny/2024/09/23/overview-of-cross-architecture-portability-problems/


The Python Package Index Should Get Rid Of Its Training Wheels

Tags: tech, python

Interesting problem I didn’t realize PyPI had. Indeed I hope they start looking into reproducibility issue to reduce the bandwidth and space they use.

https://kristoff.it/blog/python-training-wheels/


Refactoring Python with Tree-sitter & Jedi

Tags: tech, python, refactoring

Interesting trick to help with project wide renames for Python codebases.

https://jackevans.bearblog.dev/refactoring-python-with-tree-sitter-jedi/


I Like Makefiles

Tags: tech, tools

What can I say? I love Makefiles as well.

https://switowski.com/blog/i-like-makefiles/


git-absorb: git commit –fixup, but automatic

Tags: tech, tools, version-control, git

Ooh! This looks like a really neat improvement. I wonder how reliable this is, I’ll definitely test it.

https://github.com/tummychow/git-absorb


similar, but different

Tags: tech, software, design

Nice short post about cohesion in software design. Also gives clue about what proxy we can use to gauge this cohesion.

https://explaining.software/archive/similar-but-different/


Resilient Microservice Applications, by Design, and without the Chaos

Tags: tech, architecture, microservices, reliability, research

I’m obviously not in love with the complexity this type of architecture brings. That being said, this thesis brings an interesting approach to better detect failure scenarios in such systems.

https://christophermeiklejohn.com/publications/cmeiklej_phd_s3d_2024.pdf


Conway’s law

Tags: tech, architecture, organization, conway

This law is unfortunately too little known. Here is a nice and short primer. Be careful though, it’s short but packed with information, might require more reading around the concepts highlighted in this article.

https://ncatlab.org/nlab/show/Conway%27s+law


DORA Metrics At Work. How we doubled our team’s delivery…

Tags: tech, project-management, quality, metrics

When I read the content of this article I wonder how useful the metrics really were. I mean clearly they helped the team realize which changes to bring… but the practice changes were all somewhat conventional in a way. You go a long way when you focus on quality and create the space for it.

https://medium.com/booking-com-development/dora-metrics-at-work-46c835a86a89



Bye for now!

Wednesday, 25 September 2024


A large pile of paper and documents

As KDE grows, so does the interest in each of its projects. Gathering all KDE news in one place no longer works. The volume of updates coming from the KDE community as a whole has become too large to cover in its entirety on the Dot. With this in mind, we are archiving the Dot, but keeping its content accessible for historical reasons.

The news coming out of the community was curated and edited for the Dot. The current rate of news items being published today would've not only made that impractical, but would have also led to things being unjustly left out, giving only a partial view of what was going on.

But we are not leaving you without your source of KDE news! We have figured out something better: we have worked with KDE webmasters to set up a blogging system for contributors. You can now access Announcements, Akademy, the Association news, and the news from your favorite projects directly, unfiltered, unedited, straight from the source.

Or... If you want to keep up with what is going on in ALL KDE projects and news on a daily (often hourly) basis, use the Planet! Access it on the web or add an RSS feed to your reader. You can also follow KDE news as it happens in our Discuss forums and talk about it live with the rest of the community. You can even follow @planet.kde.org@rss-parrot.net on Mastodon to stay up to date.

If you just want the highlights, check out our social media:

Krita 5.2.5 has a critical bug (493774), please dowload Krita 5.2.6 instead!

Krita 5.2.5 is here, bringing over 50 bugfixes since 5.2.3 (5.2.4 was a Windows-specific hotfix). Major fixes have been done to audio playback, transform mask calculation and more!

In addition to the core team, special thanks to Maciej Jesionowski, Ralek Kolemios, Freya Lupen, Michael Genda, Rasyuqa A. H., Simon Ra and Sam James for a variety of fixes!

Changes since 5.2.3:

  • Correctly adjust audio playback when animation framerate is changed.
  • Fix no layer being activated on opening a document (Bug 490375)
  • [mlt] Fix incorrect usage of get_frame API (Bug 489146)
  • Fix forbidden cursor blinking when switching tools with shortcuts (Bug 490255)
  • Fix conflicts between mouse and touch actions requested concurrently (Bug 489537)
  • Only check for the presence of bt2020PQColorSpace on Windows (Bug 490301)
  • Run macdeployqt after searching for missing libs (Bug 490181)
  • Fix crash when deleting composition
  • Fix scaling down image with 1px grid spacing (Bug 490898)
  • Fix layer activation issue when opening multiple documents (Bug 490843)
  • Make clip-board pasting code a bit more robust (Bug 490636)
  • Fix a number of issues with frame generation (Bug 486417)
  • A number of changes related to qt6 port changes.
  • Fix black canvas appearing when "Limit animation frame size" is active (Bug 486417)
  • WebP: fix colorspace export issue when dithering is enabled (Bug 491231)
  • WebP: preserve color profile on export if color model is RGB(A)
  • Fix layer selection when a layer was removed while view was inactive
  • Fix On-Canvas Brush Editor's decimal sliders (Bug 447800, Bug 457744)
  • Make sure file layers are updated when image size or resolution changes (Bug 467257, Bug 470110)
  • Fix Advanced Export of the image with filter masks or layer styles (Bug 476980)
  • Avoid memory leak in the advanced export function
  • Fix mipmaps not being regenerated after transformation was finished or cancelled (Bug 480973)
  • [Gentoo] Don't use xsimd::default_arch in the pixel scaler code
  • KisZug: Fix ODR violation for map_*
  • Fix a crash in Filter Brush when changing the filter type (Bug 478419)
  • PSD: Don't test reference layer for homogenous check (Bug 492236)
  • Fix an assert that should have been a safe assert (Bug 491665)
  • Set minimum freetype version to 2.11 (Bug 489377)
  • Set Krita Default on restoring defaults (Bug 488478)
  • Fix loading translated news (Bug 489477)
  • Make sure that older files with simple transform masks load fine & Fix infinite loop with combination of clone + transform-mask-on-source (Bug 492320)
  • Fix more cycling updates in clone/transform-masks combinations (Bug 443766)
  • Fix incorrect threaded image access in multiple clone layers (Bug 449964)
  • TIFF: Ignore resolution if set to 0 (Bug 473090)
  • Specific Color Selector: Update labels fox HSX (Bug 475551)
  • Specific Color Selector: Fix RGB sliders changing length (Bug 453649)
  • Specific Color Selector: Fix float slider step 1 -> 0.01
  • Specific Color Selector: Fix holding down spinbox arrows (Bug 453366)
  • Fix clone layers resetting the animation cache (Bug 484353)
  • Fix an assert when trying to activate an image snapshot (Bug 492114)
  • Fix redo actions to appear when undoing juggler-compressed actions (Bug 491186)
  • Update cache when cloning perspective assistants (Bug 493185)
  • Fix a warning on undoing flattening a group (Bug 474122)
  • Relink clones to the new layer when flattening (Bug 476514)
  • Fix onion skins rendering on layers with a transform masks (Bug 457136)
  • Fix perspective value for hovering pixel
  • Fix Move and Transform tool to work with Pass-Through groups (Bug 457957)
  • JPEG XL: Export: implement streaming encoding and progress reporting
  • Deselect selection when pasting from the clipboard (Bug 459162)

Tuesday, 24 September 2024

I’m pleased to announce the immediate availability of Plasma Browser Integration version 2.0 on the Chrome Web Store and Microsoft Edge Add-ons page. This release updates the extension to Manifest Version 3 which will be required by Chrome soon. The major version bump reflects the amount of work it has taken to achieve this port.

Dark blue space background with stars, a cute dragon wearing a red bandana with a "K" on it, sitting ontop of the Earth which has a blue network cable plugged in whose lose end is squiggling around the KDE Plasma logo
Konqi surfing the world wide web

Plasma Browser Integration bridges the gap between your browser and the Plasma desktop. It lets you share links, find browser tabs and visited websites in KRunner, monitor download progress in the notification center, and control music and video playback anytime from within Plasma, or even from your phone using KDE Connect!

Despite the version number, there aren’t many user-facing changes. This release comes with the usual translation updates, however. Since this release doesn’t bring any advantage to Firefox users over the previous 1.9.1, it will not be provided on the Mozilla add-ons store.

We have taken the opportunity of reworking the extension manifest to make the “history” permission mandatory. When the browser history KRunner module was originally added, the permission was optional as we feared it might scare users away when presented with a scary permission warning when updating the extension.

(also see the Changelog Page on our Community Wiki)

Sunday, 22 September 2024

Since dolphin-plugins 24.05, you can git clone from dolphin with dolphin-plugins git plugin.

Once the plugins are installed and Git is enabled in the context menu settings, you have this context menu action available:

And this shows this git clone dialog (with my french locale):

You can paste a git repository url and it will fetch its branches. If you happen to have a url in your clipboard or a git clone command line, it will directly extract it as the repository url.

This was spearheaded by Nikolai Krasheninnikov, thanks. I participated a bit as well and reviewed it.

There is still opportunity to improve the git implementation, like having a better commit dialog. That would be a nice and simple new contributor opportunity :)

The Skrooge Team announces the release 2.33.0 version of its popular Personal Finances Manager based on KDE Frameworks.

Changelog

  • Correction bug 485366: Differnce in different Report-Selections (2)
  • Correction bug 484156: "Monthly Report" Last month grahic failure
  • Correction bug 489784: Importing a QIF the account type is changed
  • Correction bug 492287: Skrooge 2.32.0 freezes while opening existing .skg files, but import is fast
  • Correction bug 493062: Another Problem with QIF and Character "/"
  • Correction bug: Fix mimetype of .sta file
  • Correction bug: Remove dependency on QCA. So, old password protected files are no more supported.
  • Correction bug: Fix translation issue in "Incomes vs Expenditures" dashboard widget

Welcome to the second post in our "This Week in KDE Apps" series! If you missed it we just announced this new series last week and our goal is to cover as much as possible of what's happening in the KDE world and complete Nate's This Week in Plasma.

This week we had a new Ruqola, KDE's Rocket.chat client, release and a new GCompris release. There is also news regarding NeoChat, KDE's Matrix chat client; Itinerary, the travel assistant that lets you plan all your trips; the Dolphin file browser; Marble, KDE's map application application; the Okular document view and more.

Let's get started!

Dolphin

Dolphin now ensures that the Trash always correctly shows all trashed files of all connected storage devices, even if they get dynamically connected or disconnected. (Akseli Lahtinen, 24.12.0. Link)

Made the lists of recent files and locations update more reliably. (Méven Car, 24.12.0. Link)

Filelight

Resolved a bug that caused the graphs to sometimes be mis-rendered until hovered with the pointer. (Harald Sitter, 24.12.0. Link)

Itinerary

Itinerary can now handle geo:// URLs by opening the "Plan Trip" page with a pre-selected arrival location. This is supported both on Android and Linux. (David Redondo, 24.12.0. Link)

Itinerary now defaults to showing the new two-level trips/timeline view. (Volker Krause, 24.12.0. Link)

Itinerary Trip List
Itinerary Trip Details

Trip groups can now be restored from backups. (Volker Krause, 24.12.0. Link)

KDE PIM

Fixed a crash when auto-discovery of or connection to Exchange Web Resources has failed (Daniel Vrátil, 24.08.2. Link)

Okular

Implemented support for more types of items in comboboxes of PDF forms. (Pratham Gandhi, 24.12.0. Link)

Improved the speed and correctness of printing for the common case of not needing to rasterize the document and not needing to print annotations. (Oliver Sander, Albert Astals Cid, and Nicolas Fella sponsored by TU Dresden, 24.12.0. Link)

Improved the UX of digitally signing a document (Nicolas Fella sponsored by TU Dresden, 24.12.0. Link)

Spectacle

Improved visual quality for screenshots taken at non-fractional scale factors. (Noah Davis, 24.08.2. Link)

Marble

Marble was ported to Qt6. (Gilles Caulier & Carl Schwan, 24.12.0. Link)

The Kirigami UI — which was last updated in 2017 — was significantly rewritten and modernized. (Carl Schwan, 24.12.0. Link).

Marble Maps
Additional information
Layers Options in Marble Maps

NeoChat

The NeoChat team meet at the Matrix Conference in Berlin which ended up being productive! Learn more at Carl's mastodon post.

Fix two semi-common crashes reported to Sentry. (Tobias Fella & James Graham, 24.08.2. Link 1, Link 2, Link 3)

An F-Droid build is again available in KDE's F-Droid repository. (Tobias Fella & Volker Krause)

Fixed various visual papercuts for NeoChat on Android and Plasma Mobile. (Carl Schwan, 24.08.2 and 24.12.0. Link, Link, Link, Link, ...)

KDE Connect

The Ping and Find Remote Device plugins were ported to Kotlin. (TPJ Schikhof, Link 1, Link 2)

LabPlot

Add possibility to apply functions on curves directly on the plot. This makes it is possible to, for example, calculate the differences between curves, scale or shift curves, etc. (Martin Marmsoler. Link)

Kate

Improved the visuals of Kate's inline code formatting tooltips. The content of these tooltips can now also be displayed in a special context tool view which can be enabled in the Behavior settings (Karthik Nishanth, 24.12.0. Link)

GCompris

GCompris 4.2 is out with some bug fixes and graphical improvements for multiple activities. More information is available in the release announcement.

Ruqola

Ruqola 2.3.0 — the KDE Rocket.chat client — is out with an administrator mode, a new welcome page, and better support for the custom markdown syntax of Rocket.chat. More information is available in the release announcement.

Other

Eamonn Rea made many Kirigami application remember their size across launches:

...And Everything Else

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

Get Involved

The KDE organization has become important in the world, and your time and contributions have helped achieve that status. As we grow, it’s going to be equally important that your support become sustainable.

We need you for this to happen. 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 help KDE continue bringing Free Software to the world.

Saturday, 21 September 2024


The beta of Kubuntu Oracular Oriole (to become 24.10 in October) has now been released, and is available for download.

This milestone features images for Kubuntu and other Ubuntu flavours.

Pre-releases of Kubuntu Mantic Minotaur are not recommended for:

  • Anyone needing a stable system
  • Regular users who are not aware of pre-release issues
  • Anyone in a production environment with data or workflows that need to be reliable

They are, however, recommended for:

  • Regular users who want to help us test by finding, reporting, and/or fixing bugs
  • Kubuntu, KDE, and Qt developers
  • Other Ubuntu flavour developers

The Beta includes some software updates that are ready for broader testing. However, it is an early set of images, so you should expect some bugs.

We STRONGLY advise testers to read the Kubuntu 24.10 Beta release notes before installing, and in particular the section on ‘Known issues‘.

You can also find more information about the entire 24.10 release (base, kernel, graphics etc) in the main Ubuntu Beta release notes and announcement.



To enable Flatpaks in KDE’s Discover in Kubuntu 24.10, run this command:

sudo apt install flatpak plasma-discover-backend-flatpak


To enable the largest Flatpak repository, run this command:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo


Log out and log back in (or restart) to re-initialize the XDG_DATA_DIRS variable, otherwise, newly installed Flatpak apps will not run or appear in the startup menu.

The core Plasma team has entered full-on bug-fixing mode until Plasma 6.2.1, and what a week of bug-fixes it was! We’re nailing regressions reported in the beta release as they appear, as well as older bugs we didn’t manage to get to yet. I’m incredibly impressed with the team and their tremendous work this week!

In addition, a few features and UI changes postponed from Plasma 6.2 have started to land in 6.3.

Notable New Features

Plasma’s Widget Explorer sidebar now gives you the opportunity to remove all instances of a widget, which can help when you have a stuck widget hidden somewhere (Niccolò Venerandi, Plasma 6.3.0. Link):

Notable UI Improvements

With multiple screens showing wallpaper slideshows, the transition times for each screen’s slideshow are now synced so they happen at the same moment (Sebastian Meyer, Plasma 6.3.0. Link)

Loosened the criteria for mouse button re-binding, so for example you can now swap the “Back” and “Middle Click” buttons (Paul Dann, Plasma 6.3.0. Link)

The Emoji Selector window now remembers its window position (on X11) and size (me: Nate Graham, Plasma 6.3.0. Link)

For notifications that you can pause, the “Pause” button now becomes a “Resume” button after you press it, instead of being checkable (me: Nate Graham, Plasma 6.3.0. Link)

In Plasma’s Networks widget, networks you’re not connected to no longer have Configure buttons, because clicking on them didn’t actually do anything useful anyway (me: Nate Graham, Plasma 6.3.0. Link)

The checkboxes on System Settings’ Bluetooth page have been replaced with switches, because they’re for instant-apply settings (Christoph Wolk, Plasma 6.3.0. Link)

Notable Bug Fixes

Fixed a bug that could cause System Settings to crash when leaving its Wallpaper page (Méven Car, Plasma 6.2.0. Link)

Fixed a bug that could cause Plasma to crash under certain circumstances when applying certain global themes (Nicolas Fella, Plasma 6.2.0. Link)

Fixed a case where plasma-browser-integration-host (the process that communicates with web browsers that have Plasma Browser Integration installed) could crash when windows were closed (Méven Car, Plasma 6.2.0. Link)

Closing a Plasma widget while a tooltip for one of its UI elements is open no longer causes the tooltip to remain visible and awkwardly jump to the panel itself; now the tooltip also disappears as you would expect. This also fixes a related crash (Niccolò Venerandi, Plasma 6.2.0. Link 1 and link 2)

Fixed a bug that could cause the logout process to get stuck on a black screen on X11 (David Edmundson, Plasma 6.2.0. Link)

Moving a window to another virtual desktop using a method that does not switch to that desktop no longer leaves no window focused on the current desktop (David Edmundson, Plasma 6.2.0. Link)

Fixed a bug that caused real-fake-session-restore to not work properly on Wayland (David Edmundson, Plasma 6.2.0. Link)

The footer on Discover’s updates page no longer sometimes gets visually broken (Harald Sitter, Plasma 6.2.0. Link)

When configuring Plasma’s Digital Clock widget to show seconds and using 24-hour time, the time display no longer gets cut off on narrow vertical panels (Akseli Lahtinen, Plasma 6.2.0. Link)

Fixed an issue that could cause Plasma’s edit mode to misbehave in strange ways when there are widgets on the desktop and auto-hide panels (Marco Martin, Plasma 6.2.0. Link)

Plasma’s “Minimize All Windows” widget no longer sometimes fails to restore them on Wayland; now this always works (Christoph Wolk, Plasma 6.2.0. Link)

System Settings once again remembers its window size, position (on X11), and maximization state as expected (Akseli Lahtinen, Plasma 6.2.0. Link)

On X11, you can now open the color scheme editor on System Settings’ Colors page more than once (Albert Astals Cid, Plasma 6.2.0. Link)

Fixed the “two clicks to rename” feature on the Plasma desktop when using systemwide double-click mode so that it works properly (Christoph Wolk, Plasma 6.2.0. Link)

Fixed a bug that caused it to be impossible to change power profiles in the Plasma widget under certain circumstances. There may be other such bugs too BTW; this only fixed one of them (Jakob Petsovits, Plasma 6.2.0. Link)

KWin’s global “Move Mouse to Focus” shortcut now does something more sensible on Wayland by moving the pointer to the focused window instead of the top-left corner of the screen (Xaver Hugl, Plasma 6.2.0. Link)

The Audio Volume widget can once again display its complex view (rather than a dumb giant icon) when placed in an extremely thick panel (Christoph Wolk, Plasma 6.2.0. Link)

Made it possible to translate four labels on System Settings’ Touchpad page which were previously untranslatable and hence always shown in English (Victor Ryzhykh, Plasma 6.2.0. Link)

Plasma’s feature to sync your keyboard’s LED color with the system’s accent color (where supported) can now be permanently disabled if you don’t use it or like it (Natalie Clarius, Plasma 6.2.0. Link)

When using an auto-hide Plasma panel, it can no longer be accidentally opened invisibly while in KWin’s Overview effect, which would also cause it to briefly get stuck open after leaving Overview (Xaver Hugl, Plasma 6.2.0. Link)

Plasma’s Power and Battery widget no longer sometimes mis-labels batteries on systems with removable batteries or multiple batteries (Oliver Beard, Plasma 6.2.0. Link)

Fixed a bug that caused some Plasma widgets’ pop-ups to not have their top corners rounded as intended (Niccolò Venerandi, Plasma 6.2.0. Link)

Throughout QtQuick-based KDE software, pressing a keyboard’s “Show Menu” key now opens the menu under the focused item if there is one, rather than always opening it under the cursor (Evgeny Chesnokov, Frameworks 6.7. Link)

Throughout KDE software, the “Upload to Imgur” sharing plugin now only lets you try to upload file types that Imgur actually supports (Nicolas Fella, Frameworks 6.7. Link)

The informational tooltips seen all over the place in System Settings that you can access by clicking on a little button with the info symbol on it no longer flickers between visible and invisible if it opens right under the cursor (Ismael Asensio, Frameworks 6.7. Link)

Global shortcuts for activating Kickoff no longer break if you restart Plasma with plasmashell --replace (David Edmundson, Frameworks 6.7. Link). Also, friendly reminder that if you’re using Plasma’s systemd startup integration — which you probably are since it’s on by default for distros that ship systemd — the correct way to restart Plasma is systemctl restart --user plasma-plasmashell.service.

Other bug information of note:

Notable in Performance & Technical

In Discover, moved the processing of app ratings to another thread so it can’t block the UI thread and make the app feel slow and laggy when the network is slow (Aleix Pol Gonzalez, Plasma 6.2.0. Link)

Launching an app that lacks a .desktop file (e.g. an app packaged as an AppImage) no longer causes a brief screen freeze whose length is proportional to the size of the app’s executable (Vlad Zahorodnii, Plasma 6.2.0. Link)

Optimized how KDE software in general finds mountpoints, which can result in a significant speed-up for various apps’ file-based use cases — up to 80% for one of them! (Kai Uwe Broulik, Frameworks 6.7. Link)

How You Can Help

Please test the Plasma 6.2 beta release! We’ve focused a lot on stability for this release and want to make sure we haven’t missed anything big before the final release in about a month. Your bug reports do not go into a black hole; we triage every one! So enthusiastic testing and bug reporting is encouraged. 🙂 I’ve noticed fewer bug reports for this beta than previous ones, and I don’t believe for an instant that it’s because the release is already perfect! Go out there and file those bug reports!

Otherwise, visit https://community.kde.org/Get_Involved to discover additional 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! Or consider donating instead! That helps too.

Friday, 20 September 2024

This blog post provides the heads-up about planned tablet input changes that are brewing for Plasma 6.3. KWin provides support for the tablet input protocol, but things are different on the client side. Some apps support it, some do not. If an application supports the tablet input protocol, great, it will receive tablet input events as is. On the other hand, if the application does not support the tablet input protocol, then KWin will fake tablet input as pointer input. In Plasma 6.3, KWin will stop doing that and I think that we should briefly talk what led us to such a decision and what impact it will have.

Originally, when the tablet input protocol support had landed in KWin, there were still pretty few applications and toolkits that supported it. Emulating tablet input was a fairly reasonable decision, otherwise you would have likely not been able to use tablet in the Plasma Wayland session at all. As time went by, more and more clients gained native support for the tablet protocol. Unfortunately, in meanwhile, we had also started noticing various issues with tablet emulation.

So, what’s the reasonable thing to do about it? Fix the bugs of course. And we did. But there is still a set of issues that cannot be addressed without bringing more complexity in already too complex code that we are struggling to keep afloat. Enough is enough.

Q: What’s new in 6.3?

A: Starting since 6.3, tablet input emulation will be deprecated and disabled by default. Note that you can enable it back by setting the KWIN_WAYLAND_EMULATE_TABLET=1 environment variable.

Q: When will tablet input emulation be dropped?

A: There is no concrete milestone at the moment.

Q: What does it mean to you? (as a user)

A: Hopefully, nothing. The major toolkits such as GTK, Qt, and SDL already provide support for the tablet protocol, so does Xwayland. So, you should be able to use tablet without any issues in X11 applications or Wayland native applications that use the aforementioned toolkits. Chromium/Electron still does not provide native support for tablet input on Wayland, but it’s also worth noting that most of those applications run through Xwayland by default unless the user sets some command-line arguments.

If your favorite application does not work with tablets, please tell it to the developers of that application so they know that there’s demand for such an operation mode.

Q: What should I do? (as a toolkit developer)

A: Please add support for tablets! If your toolkit already supports the tablet input protocol, wonderful, no work to do. \o/

Q: Is KWin alone by stopping emulating tablet input?

A: No, it is not. Mutter (the Wayland compositor in GNOME Shell) doesn’t emulate tablet input either.

Closing words

Deprecating tablet emulation is disappointing but the options that we have are not great either. It’s either bring in more complexity in order to fix the existing issues (plus even more code to ensure that the pointer focus is managed correctly when using both pointer and tablet) into an already too complex codebase or just do nothing special about applications that don’t opt in into tablet input. Hopefully, the remaining applications and toolkits that still miss tablet support add it in the near future. If you have more thoughts about it, please reach out to us at our matrix room.