Feed aggregator

This weekend I am contributing to Transitous. You should too.

Planet KDE - Sat, 2024/03/16 - 11:41am
Transitous is a new community-driven routing service. Add your own city and help make it great.

plasmusic-toolbar [Plasma 6 Applets]

KDE Store - Sat, 2024/03/16 - 11:32am
KDE Plasma widget that shows currently playing song information and provide playback controls. - Show the currently playing song's title and...

Dolphin 24.02

Planet KDE - Sat, 2024/03/16 - 10:30am

Since last Dolphin version 23.08, I spent a lot of my time making sure the transition to KF6/Qt6 went smoothly for dolphin and its dependencies and plugins and thanks to many others contributions, in particular Alexander and Nicolas, this went well. The objective being no-one would notice despite much code has changed and this mostly worked out.

Changes

A few behaviors and default have changed.

Files and folders are now selected with a single-click and opened with a double-click. This will mainly affect Neon Users, since most distros already had this behavior default. You can select the single-click-open mode on the first page of systemsettings, as it concerns also Plasma, file/open dialog and other applications.

The extract here option in the menu now has the behavior of the old "extract here and detect subfolders". This makes the menu less heavy on text while making the action more accessible.

Service menus will need some adaptation unfortunately, you will need to Moving them to a new location. Usually mv ~/.local/share/kservices5/ServiceMenus/* ~/.local/share/kio/servicemenus. (Ensure to have destination directory created: mkdir -p ~/.local/share/kio/servicemenus) You can read the updated documentation.

The F10 shortcut now opens the menu, instead of creating a directory. That's an important change to improve accessibility by providing standard shortcuts. You can change it back if you want, and you can also use the the standard shortcut for this action Ctrl+Shift+N.

New features

The settings have been reorganized making it easier to find what you are looking for. The Interface section regroups setitings regarding the UI elements of dolphin, and the view those that influences how the main view will display your files and folders.

Shoutout to Dimosthenis Krallis for pulling it off, this wasn't an easy task especially for a not yet regular contributor.

Thanks to Carl, we got a very nice visual improvement to KDE application with breeze. I really enjoy the change to Dolphin. Looking back at dolphin in plasma5 makes it glaring.

A small new feature, I added, is you can now middle click on a file to open it in the second application associated with its type. Let's say you have an html file you normally open with your browser, but sometimes you want to edit it. Now instead of going to the open-with menu you can middle-click it. This works for scripts as well, opening them in your default editor instead of the second application assoctiated with their type.

This was inspired by the fact that folders benefit from middle-click activations to open new tabs. Making this behavior configurable might make sense, suggestions welcome, but this seems like a sensible default at least.

Felix, my fellow dolphin co-maintainer, did a bunch of ui-refinement, like the free space label in the status bar and some very nice accessibility improvements, including the F10 shorcut change that now triggers the app menu by default.

You can open now open containing folders for files in the Recent Files.

Bug fixed

Akseli Lahtinen made sure to Resort directory size count after refreshing.

And in total 32 were fixed between Dolphin 23.08.05 and Dolphin 24.02.0. 480098 441070 477897 479596 478724 476670 473999 478117 477607 477288 476742 172967 452587 475547 422998 423884 440366 474951 474999 393152 473775 473377 473513 420870 472912 468445 469354 462778 417930 464594 471999 47197

New code, new bugs

Unfortunately whenever you ship new code, you risk introducing new bugs, and even months of testing didn't iron them all.

One I think you could have spotted earlier, was that on X11, panels are hidden after minimizing Dolphin window. Thanks to Nicolas fella, this was swiftly fixed and will reach users in next Dolphin release. In the meantime, this is a good time to learn about the shortcuts for panels:

  • F9: toggle places panel
  • F11: toggle information panel

We now have a need process to build packages for Windows and Mac OS, Dolphin has not made the transition though. I am working on it to bring latest dolphin to its Window and MacOS users.

Spotlight [KWin Effects]

KDE Store - Sat, 2024/03/16 - 9:49am
Shake your mouse, and a spotlight will help you find the...

Completing the KDE Frameworks 6 transition

Planet KDE - Sat, 2024/03/16 - 9:45am

Getting the KDE Mega Relase 6 out was a key milestone in the transition to Qt 6 and KDE Frameworks 6, but it doesn’t mean we are done yet. There’s still components to port and scaffolding to remove.

Porting remaining applications

While KDE Frameworks and Plasma switched completly to Qt 6 with the release, there’s still a number of components in KDE Gear using Qt 5 by default. The following modules still need work:

  • Artikulate
  • Cantor (MR)
  • Kalzium - has Qt6 CI already
  • Kig
  • KmPlot - has Qt6 CI already
  • KTouch (MR)
  • Marble (branch)
  • Minuet - has Qt6 CI already
  • Rocs (QtScript porting MR)
  • Step - has Qt6 CI already
  • KolourPaint (MR)
  • K3b - has Qt6 CI already
  • KMix
  • Kwave
  • Cervisia - partially ported
  • Lokalize (MR)
  • poxml
  • Umbrello
  • KDevelop (MR)
  • KRDC - has Qt6 CI already
  • KImageMap Editor - has partial Qt6 CI already
  • Kamoso
  • Kirigami Gallery (branch)
  • Calindori - CI is Qt6 only but default build is still Qt5?
  • ghostwriter - has Qt6 CI already

This list doesn’t include modules that are basically ported but cannot switch yet due to other things depending on them, ie. there is more than those not released for KF6 yet. Same goes for modules providing plugins that are still needed for both versions.

The complexity of the remaining work here ranges from putting on finishing touches and taking the decision to make the switch all the way to dealing with potentially difficult to port dependencies such as QtScript. So there’s something for everyone here ;)

And then there’s of course even more outside of the KDE Gear release automation that also needs to be looked at, Krita for example recently posted their plans for the migration to Qt 6.

Cleaning up porting aids

But even in the modules released exclusively for Qt6 and KF6 already there is still work to be done, namely removing the remaining uses of porting aids such as Qt5Compat.

While the need for this might not seem that pressing anymore there’s many good reasons for doing this sooner rather than later:

  • We have many people around still familiar with how to do that and its potential pitfalls. That knowledge tends to fade away over time.
  • We pay extra in download, storage and runtime cost for carrying around those dependencies. That matters especially for bundled apps, e.g. for some of our APKs this lead to a 20% size reduction.
  • Future-us will hate us for not doing this, in the same way as we were unhappy about past-us not having cleaned up after themselves during the 4 -> 5 migration.
QtCore5Compat

On the C++ side that’s basically QRegExp, QTextCodec and the SAX XML parsing API.

QTextCodec:

  • Uses for small chunks of UTF-8, Latin-1 or local 8 bit encoded strings can be replaced by QString API (not that common).
  • Use for larger amounts of data or different codecs can be replaced by QStringEncoder and QStringDecoder (the most common case).
  • Uses for listing all codecs needs new API in Qt 6.7 and cannot be replaced just yet (rare).
  • Uses in combination of QTextStream for non-Unicode content have no replacement (fortunately very rare by now).

QRegExp:

  • Fully replaceable by QRegularExpression.
  • Wildcard and exact match support might need changes to the actual expressions, either manually or via corresponding QRegularExpression helper methods (somewhat common by now as most easy case have long been converted).

Things get a bit more tricky for both of those when these types are used in API and thus propagate through larger parts of the code, but fortunately we only have a few of those cases left. The vast majority of uses is very localized.

SAX XML parser:

  • Replaceable by QXmlStreamReader.
  • Can require larger code changes and needs extra care when dealing with XML namespaces.
  • Fortunately rare by now.
Qt5Comapt.GraphicalEffects QML module

The other big part of Qt5Compat are about 25 graphical effects for QML.

  • DropShadow and RectangularGlow can in many cases be replaced by Kirigami.ShadowedRectangle, which is probably the most common case here. MultiEffect covers the rest, ie. shadows on anything else than (rounded) rectangles.
  • LinearGradient in any other orientation than vertical needs a nested and rotated `Rectangle` now to hold the gradient, see e.g. Kirigami.EdgeShadow for an example in horizontal or vertical orientation can be replaced by a Rectangle with associated Gradient (few cases left).
  • For anything else you have to hope that the Qt6 MultiEffect provides a suitable replacement. For the most common cases (blur and opacity masks) that’s the case fortunately, for more exotic effects you might need to get creative.
Plasma5Support

Qt5Compat isn’t the only porting aid though. Plasma5Support is another one to look at, with still hundreds of uses left just within KDE code.

Plasma5Support contains some of the former Plasma Framework functionality, such as the data engines. I have no experience porting away from that myself though, maybe the Plasma team can provide some guidance for that :)

You can help!

In particular removing the remaining porting aid uses in many cases doesn’t need in-depth knowledge of the affected applications but consists of separate and localized changes, so it’s the ideal side-task while waiting for longer compile runs for example.

LXR is a very useful tool for finding the remaining uses and the KDE Development channel on Matrix is the place to ask if you need help. Among my merge requests from the past two weeks you’ll also find 30+ examples for such changes.

Lain login spashscreen [Plasma 6 Splashscreens]

KDE Store - Sat, 2024/03/16 - 8:56am
Lain-inspired login splash screen

Overload login splash [Plasma Splashscreens]

KDE Store - Sat, 2024/03/16 - 8:53am
A cool login splashscreen with a loading animation and geometric line art

Alterra login splash [Plasma Splashscreens]

KDE Store - Sat, 2024/03/16 - 8:53am
Subnautica-inspired login splashscreen

Lagtrain gruvbox login splash [Plasma Splashscreens]

KDE Store - Sat, 2024/03/16 - 8:52am
A boot splashscreen from this video: https://www.youtube.com/watch?v=UnIhRpIT7nc recolored to fit the gruvbox theme

Penrose triangle login splash [Plasma Splashscreens]

KDE Store - Sat, 2024/03/16 - 8:51am
Login splashscreen with a penrose triangle on a purple background

Futura Icon Pack [Full Icon Themes]

KDE Store - Sat, 2024/03/16 - 7:28am
Futura Icon Pack is a Futuristic icon pack for Linux / Unix. Futura inherits / is the combination of some of the popular icon packs: Kora...

Psion [Global Themes (Plasma 6)]

KDE Store - Sat, 2024/03/16 - 6:56am
Psion is not Steampunk. Works well as a setting for Gruvbox Dark themed apps (https://github.com/morhetz/gruvbox) and Buuf icons. Suggested...

Psion [Plasma Color Schemes]

KDE Store - Sat, 2024/03/16 - 6:21am
Part of global theme.

Temporary Virtual Desktops [KWin Scripts]

KDE Store - Sat, 2024/03/16 - 5:50am
Fork of original wsdfhjxc's script, adopted to Plasma 6. Changes to the original script: * No spare empty desktop - New virtual desktop by...

Quick Tile Wide [KWin Scripts]

KDE Store - Sat, 2024/03/16 - 5:41am
Quick Tile Wide allows to tile windows to sides and corners similar to Quick Tile, but places them in 3 columns instead of 2 columns. This is most...

This week in KDE: Dolphin levels up

Planet KDE - Sat, 2024/03/16 - 4:36am

In addition to lots and lots of Plasma 6 stability work and the beginning of Plasma 6.1 feature work, Dolphin received large amount of development this week, resulting in some nice improvements. Check it out!

New Features

KSSHAskPass (which has the best name of any app in the world, change my mind) now supports SK-type SSH keys (Franz Baumgärtner, KSSHAskPass 24.05. Link)

Gave the Web Browser widget the option to always load a specific page every time, or remember the last-browsed-to one (Shubham Arora, Plasma 6.1. Link):

Info Center has a new page showing you technical audio information for debugging purposes (Shubham Arora, Plasma 6.1. Link)

The icon chooser dialog now has a filter so you can see only symbolic icons, or no symbolic icons (Kai Uwe Broulik, Frameworks 6.1. Link):

UI Improvements

Dolphin’s icon once again changes with the accent color (Kai Uwe Broulik, Dolphin 24.02.1. Link)

Most of Dolphin’s bars now animate appearing and disappearing (Felix Ernst, Dolphin 24.05. Link):

Some folders in Dolphin get special view settings applied by default, such as the Trash and Recent Files/Folders locations. Now these special view settings get applied to those folders even if you’re using the “use same view settings for all folders” setting (Jin Liu, Dolphin 24.05. Link)

Dolphin now has a new tab in its settings window for settings about its panels, which were previously hidden away in a context menu. So far just the Information Panel is represented there, but others may be added later! (Benedikt Thiemer, Dolphin 24.05. Link):

Made touch scrolling in Konsole work better (Willian Wang, Konsole 24.05. Link)

Improved the way Konsole’s text cursor scales on Wayland, especially with fractional scale factors (Luis Javier Merino Morán, Konsole 24.05. Link)

Okular already lets you scroll around a document with the hjkl keys. Now if you hold down the Shift key while doing it, it scrolls 10 times faster! (Someone going by the pseudonym “GI GI”, Okular 24.05. Link)

KRunner-powered search fields in Overview and the Search widget show the same search ordering that other ones already do (Alexander Lohnau, Plasma 6.0.2. Link)

The Power and Energy widget now hides its “Show Battery percentage on icon when not fully charged” option when the system has no batteries (Natalie Clarius, Plasma 6.0.2. Link)

With non-random wallpaper slideshows, Plasma now remembers the last-seen one and starts from there the next time you log in (Fushan Wen, Plasma 6.0.2. Link)

Improved keyboard navigation in Kirigami sidebars powered by the GlobalDrawer component (Carl Schwan, Frameworks 6.1. Link)

Increased the size of the “Get new Plasma Widgets” dialog (Me: Nate Graham, Frameworks 6.1. Link)

Bug Fixes

Fixed one source of issues with the lock screen breaking on X11 by showing a black background. There may be more, and we’re on the case for those too (Jakob Petsovits, Plasma 6.0.2. Link)

Fixed a way that the Battery Monitor widget could cause Plasma to crash (Natalie Clarius, Plasma 6.0.2. Link)

Fixed a way that Plasma could crash when you middle-click tasks in the Task Manager, or rapidly left-click on random audio-playing tasks (Fushan Wen, Plasma 6.0.2, Link 1 and link 2)

On X11, clicks no longer get eaten on part of top panels (Yifan Zhu, Plasma 6.0.2. Link)

On X11, lock and sleep inhibitions once again work (Jakub Gocoł, Plasma 6.0.2. Link)

Fixed most of the incorrectly-colored System Tray icons when using mixed dark/light themes. There’s still one remaining source of this that we found, which is also being worked on (Nicolas Fella, Plasma 6.0.2. Link)

You can once again scrub through songs played in Spotify using the Media Player widget (Fushan Wen, Plasma 6.0.2. Link)

Fixed several issues with panel widgets (including Kickoff) incorrectly passing focus to their parent panel when activated (Niccolò Venerandi, Plasma 6.0.2. Link)

Dragging widgets to or from panels no longer sometimes causes Plasma to crash or makes the widget get stuck in ghost form on the desktop (Marco Martin, Plasma 6.0.3. Link 1 and link 2)

On Wayland, adding a second keyboard layout now causes the relevant System Tray widget to appear immediately, rather than only after Plasma or the system was restarted (Harald Sitter, Plasma 6.0.3. Link)

Fixed a way that Bluetooth pairing could fail (Ajrat Makhmutov, Plasma 6.0.3, Link)

On X11, the screen chooser OSD works again (Fushan Wen, Plasma 6.0.3. Link)

Breeze GTK is once again the default GTK theme (Fabian Vogt, Plasma 6.0.3. Link)

Yet again fixed the login sound so that it actually plays (Harald Sitter, Plasma 6.0.3. Link)

Reverted to an older and better way of sending pointer events on Wayland, which fixes multiple issues involving windows and cursors teleporting unexpectedly while dragging to maximize or de-maximize windows (Vlad Zahorodnii, Plasma 6.1. Link 1, link 2, and link 3)

Fixed a bunch of weird cursor issues with GPUs that don’t support variable refresh rate properly (Xaver Hugl, Plasma 6.1. Link)

Fixed a source of xdg-desktop-portal crashes on boot (David Redondo, Frameworks 6.1 Link)

Fixed two issues with the “Get New [thing]” dialogs that caused them to not show installation progress correctly, and get stuck after uninstalling something (Akseli Lahtinen, Frameworks 6.1. Link 1 and link 2)

System Monitor charts now appear properly for users of 10+ year-old Intel integrated GPUs (Arjen Hiemstra, Frameworks 6.1. Link)

More UI elements throughout QtQuick-based KDE software stop animating when animations are globally disabled, which also fixes an issue where Plasma button highlights would disappear with animations are globally disabled (me: Nate Graham, Frameworks 6.1. Link 1 and link 2)

Other bug information of note:

Performance & Technical

Fixed a source of 25-second Plasma startup delays when using KDE Connect with Bluetooth disabled or absent (Simon Redman, the next KDE Connect release, though most distros have already backported it. Link)

Fixed another source of slow Plasma startups caused by using the Bing picture of the day wallpaper (Fushan Wen, Plasma 6.0.2. Link)

KWin now does direct scan-out even for rotated screens (Xaver Hugl, Plasma 6.1. Link)

Reduced the size of all the wallpapers in the plasma-workspace-wallpapers repo by 10 MB (Martin Rys, Plasma 6.1. Link)

Ported Kile to KDE Frameworks 6. Hopefully this should presage a new release soon (Carl Schwan, link)

Automation & Systematization

Wrote a tutorial about setting up your app’s continuous integration system to package and publish to the Windows store (Ingo Klöcker, link)

Added some autotests for X11-specific window behavior (Vlad Zahorodnii, link)

Other

Rewrote a some chunks of text on KDE neon’s website to make it reflect reality: it is a distro, its target users are those who want KDE stuff fast and can tolerate some instability, and you shouldn’t use the package manager to get apps (me: Nate Graham, link 1, link 2, link 3, and link 4)

…And Everything Else

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

How You Can Help

Please help with bug triage! The Bugzilla volumes are extraordinary right now and we are overwhelmed. I’ll be doing another blog post on this tomorrow; for now, if you’re interested, read this.

Otherwise, visit https://community.kde.org/Get_Involved to discover other 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!

As a final reminder, 99.9% of KDE runs on labor that KDE e.V. didn’t pay for. If you’d like to help change that, consider donating today!

Desktop Indicator [Plasma 6 Applets]

KDE Store - Sat, 2024/03/16 - 3:05am
A minimal virtual desktop indicator to be used as an alternative for a Pager.

Buuf Plasma [Full Icon Themes]

KDE Store - Fri, 2024/03/15 - 10:54pm
Buuf is artwork originally drawn by mattahan [https://mattahan.tumblr.com/] and modified by Shirakawasuna...

Buuf Plasma [Full Icon Themes]

KDE Store - Fri, 2024/03/15 - 10:54pm
Buuf is artwork originally drawn by mattahan [https://mattahan.tumblr.com/] and modified by Shirakawasuna...

Fallout Pip-Boy Animation [Plasma 6 Splashscreens]

KDE Store - Fri, 2024/03/15 - 10:46pm
Show the Pip-Boy boot animation as a splashscreen. YouTube video (by thug4life2005): https://youtu.be/p0m51yPbM6I?si=TNLfLGLHfNi2Nm1r