Welcome to Planet KDE
This is a feed aggregator that collects what the contributors to the KDE community are writing on their respective blogs, in different languages
Tuesday, 29 March 2022
Tuesday, 29 March 2022. Today KDE releases a bugfix update to KDE Plasma 5, versioned 5.24.4.
Plasma 5.24 was released in February 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:
- Sddm/lockscreen: Fix weird behaviour. Commit.
- Plymouth KControl: Substantially bump the helper timeout. Commit. Fixes bug #400641
- Systemsettings runner: Ensure that we match keywords case insensitively. Commit. Fixes bug #451634
Hey there!
This is my fifth status update for Season of KDE 2022.
This time, I have updates on the automation side of things. I got a preliminary version of the required GitLab pipelines working.
Pipeline for Updating Manifests
I got my hands dirty with Docker and added the Flatpak External Data Checker image over on Quay. The image was used over on my Gitlab repositories. This let me run "actions", similar to what we have on GitHub, but on GitLab too. Since we're not relying on the official FEDC image, I can control what all goes into the image and add extra dependencies that would be required. (like curl)
Currently, the script is in bash. I plan to port it to Python, as it will be much easier to maintain and work with.
The script is expected to loop through all manifests in the repository and run FEDC on each one of them while capturing FEDC output to detect which packages have been updated. It then does some cleanup and sorts it to get the final list. With all the changes, it will finally commit and create a merge request over on the repository. To avoid creating multiple merge requests for the same set of updates, the script will check if there is an existing merge request already. To help in this, it adds a short hash in the merge request title, which lets it cross-check the set of updates and decide whether to create a new merge request or not.
The repository can be found here -> https://gitlab.com/flyingcakes/kde-flathub-master. Actual update script is in the updater.sh
file in this repo.
Pipeline for Application CI
To goal here is to do a Flatpak build for KDE applications whenever they receive a new commit or merge request. We currently have similar CI pipelines running, but they are only for FreeBSD and OpenSuse. I plan to add a third job there, which will build the application inside Flatpak environment, and provide a way to install and test those builds on a local machine.
The inspiration for this has been taken from similar pipelines that run on Gnome GitLab. In essence, on every run, we fetch the application's Flatpak manifest, replace its source link with the latest commit and try a build. If the build succeeds, we upload its .flatpakref
file as an artefact.
My implementation for this is still in an alpha phase and will need some more work to become viable for regular use on KDE applications.
The testing repository for this can be found here -> https://gitlab.com/flyingcakes/kdiff-v2/
Follow up on Checker Data Additions on GitHub
In my last post, I described how I'm adding checker data to manifests hosted on GitHub. I have added the data to most applications. The bigger ones like Krita and KdenLive are still missing data. This should be fixed in due time.
We noticed some issues with it, which seems to be related to FEDC itself. It sometimes creates repeated pull requests for the same package.
Other issues were caused because I had inadvertently provided wrong links in checker data.
None of the issues caused any inconvenience though. The maintainers have been thoroughly verifying pull requests to ensure nothing unexpected goes into the actual application. I fixed those minor issues as and when we got to know about them.
Links to Pull Requests
Adding checker data
- Index : https://github.com/flathub/org.kde.index/pull/3
- Itinerary : https://github.com/flathub/org.kde.itinerary/pull/9
- KAlgebra : https://github.com/flathub/org.kde.kalgebra/pull/3
- KDiamond : https://github.com/flathub/org.kde.kdiamond/pull/44
- KCalc : https://github.com/flathub/org.kde.kcalc/pull/23
- KCacheGrind : https://github.com/flathub/org.kde.kcachegrind/pull/29
- KGeoTag : https://github.com/flathub/org.kde.kgeotag/pull/2
- KFourInLine : https://github.com/flathub/org.kde.kfourinline/pull/2
- KDiff3 : https://github.com/flathub/org.kde.kdiff3/pull/2
- KFind : https://github.com/flathub/org.kde.kfind/pull/3
- KGeography : https://github.com/flathub/org.kde.kgeography/pull/44
- Kid3 : https://github.com/flathub/org.kde.kid3/pull/3
- Kasts : https://github.com/flathub/org.kde.kasts/pull/2
- KolorPaint : https://github.com/flathub/org.kde.kolourpaint/pull/53
- Labplot2 : https://github.com/flathub/org.kde.labplot2/pull/4
- KTrip : https://github.com/flathub/org.kde.ktrip/pull/5
- Kile : https://github.com/flathub/org.kde.kile/pull/2
- Kongress : https://github.com/flathub/org.kde.kongress/pull/3
- Kompare : https://github.com/flathub/org.kde.kompare/pull/1
- Kiten : https://github.com/flathub/org.kde.kiten/pull/21
- Koko : https://github.com/flathub/org.kde.koko/pull/4
- Konversation : https://github.com/flathub/org.kde.konversation/pull/23
- KPhotoAlbum : https://github.com/flathub/org.kde.kphotoalbum/pull/2
- Konquest : https://github.com/flathub/org.kde.konquest/pull/22
- Kontrast : https://github.com/flathub/org.kde.kontrast/pull/18
- KRDC : https://github.com/flathub/org.kde.krdc/pull/2
- KRename : https://github.com/flathub/org.kde.krename/pull/2
- KStars : https://github.com/flathub/org.kde.kstars/pull/1
- KTorrent : https://github.com/flathub/org.kde.ktorrent/pull/30
- KSquares : https://github.com/flathub/org.kde.ksquares/pull/42
- KRuler : https://github.com/flathub/org.kde.kruler/pull/3
- KSudoku : https://github.com/flathub/org.kde.ksudoku/pull/44
- KTuberling : https://github.com/flathub/org.kde.ktuberling/pull/54
- KTurtle : https://github.com/flathub/org.kde.kturtle/pull/21
- KUIViewer : https://github.com/flathub/org.kde.kuiviewer/pull/2
- KWordQuiz : https://github.com/flathub/org.kde.kwordquiz/pull/43
- Lokalize : https://github.com/flathub/org.kde.lokalize/pull/29
- Marble : https://github.com/flathub/org.kde.marble/pull/22
- Massif Visualizer : https://github.com/flathub/org.kde.massif-visualizer/pull/7
- Kontact : https://github.com/flathub/org.kde.kontact/pull/62
- Minuet : https://github.com/flathub/org.kde.minuet/pull/33
- NeoChat : https://github.com/flathub/org.kde.neochat/pull/13
- Kubrick : https://github.com/flathub/org.kde.kubrick/pull/42
- KTouch : https://github.com/flathub/org.kde.ktouch/pull/36
- Nota : https://github.com/flathub/org.kde.nota/pull/1
- Okular : https://github.com/flathub/org.kde.okular/pull/147
- Okteta : https://github.com/flathub/org.kde.okteta/pull/9
- Pix : https://github.com/flathub/org.kde.pix/pull/4
- Skrooge : https://github.com/flathub/org.kde.skrooge/pull/23
- Subtitle Composer : https://github.com/flathub/org.kde.subtitlecomposer/pull/2
- Tellico : https://github.com/flathub/org.kde.tellico/pull/2
- Palapeli : https://github.com/flathub/org.kde.palapeli/pull/45
- KLettres : https://github.com/flathub/org.kde.klettres/pull/20
- KNetWalk : https://github.com/flathub/org.kde.knetwalk/pull/43
- KNavalBattle : https://github.com/flathub/org.kde.knavalbattle/pull/42
- KLines : https://github.com/flathub/org.kde.klines/pull/42
- Klickety : https://github.com/flathub/org.kde.klickety/pull/43
- KJumpingCube : https://github.com/flathub/org.kde.kjumpingcube/pull/44
- KillBots : https://github.com/flathub/org.kde.killbots/pull/42
- Kigo : https://github.com/flathub/org.kde.kigo/pull/41
- Kig : https://github.com/flathub/org.kde.kig/pull/21
- KGoldRunner : https://github.com/flathub/org.kde.kgoldrunner/pull/41
- KGet : https://github.com/flathub/org.kde.kget/pull/4
- Tokodon : https://github.com/flathub/org.kde.tokodon/pull/1
- Vvave : https://github.com/flathub/org.kde.vvave/pull/2
Other minor fixes
- Nota - Fix for filename without extension : https://github.com/flathub/org.kde.nota/pull/3
- Pix - Add filename for applet window button : https://github.com/flathub/org.kde.pix/pull/15
- Labplot2 - Remove checker data for labplot and cfitsio : https://github.com/flathub/org.kde.labplot2/pull/12
- Itinerary - Fix link for poppler : https://github.com/flathub/org.kde.itinerary/pull/11
- Koko - Fix exiv2 checker data : https://github.com/flathub/org.kde.koko/pull/6
Monday, 28 March 2022
The upcoming Fedora release 36 (due end of April 2022) and beyond, and ELN (Enterprise Linux Next, what would become RHEL) will have default Malayalam script fonts as RIT Rachana
and Meera New
fonts. In addition, Sundar
, TNJoy
, Panmana
and Ezhuthu
fonts are now available in the official repositories. This brings Malayalam fonts that are modern (Unicode 13 compatible), well-maintained, having perfect complex-script shaping and good metadata to the users of Fedora, RHEL, CentOS & downstream OSen. I have made all the necessary updates in the upstream projects (which I maintain) and packaged them for Fedora (which also I maintain).
Update: thanks to Norbert Preining, all these fonts are also available for ArchLinux!
![](http://webcf.waybackmachine.org/web/20220331065554im_/https://rajeeshknambiar.files.wordpress.com/2022/03/rit-fonts-sample-1-1.png?w=975)
RIT Rachana
and Meera New
fonts will be default serif and sans-serif fonts for Malayalam. smc-rachana-fonts and smc-meera-fonts are deprecated as they are unmaintained.
All the fonts can be installed from your favourite package managers (GNOME Software, Discover, dnf
etc.).
![](http://webcf.waybackmachine.org/web/20220331065554im_/https://rajeeshknambiar.files.wordpress.com/2022/03/gnome-software-rit-fonts.png?w=713)
The packages can be installed using dnf
via:
sudo dnf install -y rit-*-fonts
This change in Fedora required many well orchestrated steps:
- Packaging & building RIT fonts according to latest font packaging guidelines
- Set as default serif/sans-serif fonts for Malayalam in
langpacks
- Set as default serif/sans-serif fonts for Malayalam in
fedora-comps
- Propose the ChangeRequest which is then discussed & approved by Fedora Engineering Steering Committee (FESCO).
I would like to especially thank Parage Nemade for coordinating all the changes and relevant engineering procedures, and Pravin Satpute for initial discussions; in helping to complete these updates in time for Fedora 36.
Sunday, 27 March 2022
This week some of the in-progress work on touch gestures was merged, and now the edge swipe gesture to trigger KWin’s Overview and Desktop Grid effects will follow your fingers, just like you’d expect!
Big thanks to Marco Martin for implementing this improvement, which will be in Plasma 5.25. More is in the pipeline too, including finger-following touchpad gestures for the Overview effect and virtual desktop Slide effect. Hopefully I’ll be able to announce them as finished next week.
15-Minute Bugs Resolved
Current number of bugs: 76, down from 79. Current list of bugs
When you have a vertical panel and a horizontal panel, the horizontal panel no longer overlaps and hides buttons on the edit mode toolbar for the vertical panel (Oleg Solovyov, Plasma 5.24.3; this actually went in two weeks ago but I didn’t notice it!)
Logging into Plasma no longer becomes slower the more images you’ve added to your wallpaper settings (Aleix Pol Gonzalez, Plasma 5.25)
Dragging a panel from one screen edge to another no longer sometimes causes it to disturbingly get stuck in the middle of the screen (Fushan Wen, Plasma 5.25)
New Features
When sharing a folder using Samba, there is now a folder permission helper window to help you get the permissions right (Slava Aseev, kdenetwork-filesharing 22.08)
Bugfixes & Performance Improvements
KRunner-powered searches are now case-insensitive when matching text for System Settings pages, so you can find them more easily (Alexander Lohnau, Plasma 5.24.4)
When running the Plasma Wayland session in a VM, clicking on something now causes the click to actually go to the correct place, rather than being slightly offset (Xaver Hugl, Plasma 5.24.4)
Applying various boot splash screens in System Settings now works (Harald Sitter, Plasma 5.24.4)
“Get New [thing]” dialogs once again work when you’re using your system in a language other than English (Alexander Lohnau, Frameworks 5.93)
Menus for text fields in QtQuick apps no longer show a separator as the first item or make space for invisible items (Gabriel Karlsson, Frameworks 5.93)
The arrows in shortcuts windows in QtWidgets-based apps are now high-dpi compatible (Someone going by the pseudonym “snooxx ” Frameworks 5.93)
User Interface Improvements
The menu items in Dolphin’s Back/Forward menu now show icons (Kai Uwe Broulik, Dolphin 22.08):
![](http://webcf.waybackmachine.org/web/20220331065554im_/https://pointieststick.files.wordpress.com/2022/03/icons-in-dolphin-history-menu.png)
The bar that shows a disk’s usage level in Dolphin is now always visible, rather than only appearing on hover (Kai Uwe Broulik, Frameworks 5.93)
![](http://webcf.waybackmachine.org/web/20220331065554im_/https://pointieststick.files.wordpress.com/2022/03/bars.png)
The Battery and Brightness applet’s power profiles slider now shows its two extreme states with icons, and indicates the current mode with text above the slider like other sliders do. This prevents text from ever getting cut off in languages that use very long words for “Power Save,” “Balanced,” and “Performance.” (Ivan Tkachenko and Manuel Jesús de la Fuente, Plasma 5.25):
Lists of recent documents now implement a FreeDesktop standard that governs this, which means they are now synced with GTK/GNOME apps. So for example you can open a file in Gwenview and it will appear as a recent document in the “Open File” dialog in GIMP! (Méven Car and Martin Tobias Holmedahl Sandsmark, Frameworks 5.93
…And everything else
This blog only covers the tip of the iceberg! Tons of KDE apps whose development I don’t have time to follow aren’t represented here, and I also don’t mention backend refactoring, improved test coverage, and other changes that are generally not user-facing. 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
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 https://community.kde.org/Get_Involved 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.
Saturday, 26 March 2022
Over the past two weeks I attended a number of sessions of the Wikidata Data Reuse Days 2022 and presented KDE’s use of Wikidata in our travel apps there. Here are some of the things I found particularly interesting from a KDE perspective.
Data
With Wikidata modeling the whole world and then some, several sessions focused on available datasets in specific domains and their use cases.
Language Models
Wikidata’s lexeme database allows creating language models that we simply did not have available for FOSS software a couple of years ago. This can be useful for text input and text correction, but also for education software around language learning.
Scribe is an example for using that to build a virtual keyboard specifically for second language users helping you to use the right plural form, conjunctives, prepositions or gender forms (talk details).
Could be worth looking into for Sonnet, Plasma Mobile’s virtual keyboard and/or KDE Edu.
Consumer Advice
A very different but no less interesting dataset is Open Food Facts (talk details). That contains information about food related products and their ingredients, healthiness and environmental impact.
This allows building apps that based on a product barcode help you check whether a specific product is compatible with allergies or other food intolerances (particularly useful when the packing is labeled in a language you don’t understand), or to help you pick healthier or more sustainable alternatives while shopping.
Plasma Mobile’s barcode scanning app Qrca already offers to open the corresponding Open Food Facts entry when encountering an EAN code, but there is quite likely room for a deeper integration.
Open Food Facts also has two similar sister projects, Open Beauty Facts for cosmetics, and the even more general Open Product Facts.
Tooling
Besides datasets, tools or techniques to work with Wikidata were equally important topics.
One new tool that could be interesting for us is the Mismatch Finder which allows to report potential data quality issues found by automatic checks against other sources (talk details). That’s something we do for example when bringing Wikidata and OSM data together for generating the public transport line meta data in KPublicTransport.
Adapting the debug output of our data processing tools to produce a machine readable format consumable by the Mismatch Finder shouldn’t be a big deal, and certainly promises more quality improvements than posting issues in blog posts.
Wikidata use in KDE Itinerary and KTrip
While there is no recording of my talk, at least the slides are available here.
The normal weekly post will be delayed a day. Consider it extra time to merge your changes.
Friday, 25 March 2022
Given the great work others did already on the Qt 6 porting of KDE Frameworks, let’s take a look at Kate & KWrite on Qt 6.
With only minor patches, both applications now run on the current master state of KDE Frameworks and Qt 6.2.
Close to all functionality is available, I think the only stripped out part is the hot new stuff upload for snippets and I didn’t test the Konsole part.
I would not consider this to be already usable, during trying to type this blog with Qt 6 Kate I got random hangups during completion on Wayland. That will need debugging. But for people wanting to improve the Qt 6 experience it is a good enough starting point.
The CI on our GitLab instance will now compile the Qt 6 variant, too, that means we will see compilation regressions.
Kate on Qt 6.2
KWrite on Qt 6.2
Help wanted!
You want to help us with making the Qt 6 version a thing you can actually use?
Show up and contribute.
Comments?
A matching thread for this can be found here on r/KDE.
Let’s go for my web review for the week 2022-12.
Amazon intentionally made it difficult to cancel Prime subscription in secret project | The Independent
Tags: amazon, gafam, design
Prime example of dark patterns in the wild (pun intended).
https://www.independent.co.uk/tech/amazon-prime-subscription-cancel-secret-project-b2038207.html
Web3 is centralized (and inefficient!)
Tags: tech, blockchain, web3, scam
Yet another (well deserved) rant aiming at web3. The decentralized claim is indeed preposterous. I hope no one is being fooled.
https://www.neelc.org/posts/web3-centralized/
All The Music: the Megamix
Tags: tech, legal, commons, culture, music
Very interesting initiatives… I wonder what they will lead to legal wise.
https://www.royvanrijn.com/blog/2022/03/all-the-music-megamix/
Support open source that you use by paying the maintainers to talk to your team
Tags: tech, foss, sustainability
Now that’s an interesting idea to give back money to maintainers… can be sustainable only if enough company do this on a regular basis though.
https://simonwillison.net/2022/Feb/23/support-open-source/
Why Don’t You Use …
Tags: tech, supply-chain, architecture, complexity, community
Interesting list of criteria about why you might not use some piece of tech. Also delves into why this is often not public knowledge.
https://www.brendangregg.com/blog/2022-03-19/why-dont-you-use.html
Decrypting your own HTTPS traffic with Wireshark – Trickster Dev
Tags: tech, tcp, debugging
Interesting tip to ease the pain of dealing with HTTPs when using Wireshark.
https://www.trickster.dev/post/decrypting-your-own-https-traffic-with-wireshark/
6 Universal Readable Code Tricks To Improve Your Coding Skills • Python Land Blog
Tags: tech, programming, craftsmanship, static-analyzer
Bunch of good advice. In a way it boils down to: name things properly and use static analysis tools extensively. Still, couple of nice operational guidelines which work in most languages.
https://python.land/readable-code
Watch Enemies – State-of-the-art digital humans | Unity Demo
Tags: tech, 3d
Real-time rendering is catching up fast… Even humans are being very realistic now, we’re almost out of the uncanny valley now.
https://unity.com/demos/enemies
Dimensions of Power
Tags: team, sociology, politics, power
You think you don’t use power on others? Think again, this can be more subtle than you think. Keep it in mind, be mindful and try to use your advantages fairly.
https://medium.com/@kentbeck_7670/dimensions-of-power-15ac9fa0c590
First photos from James Webb telescope better than expected.
Tags: science, physics
Exciting times ahead. I’m eager to know what it’ll help us find out.
https://cosmosmagazine.com/space/exploration/first-photos-james-webb-telescope/
Bye for now!
Wednesday, 23 March 2022
We are happy to announce the release of Qt Creator 7!
![](http://webcf.waybackmachine.org/web/20220331065554im_/https://track.hubspot.com/__ptq.gif?a=149513&k=14&r=https%3A%2F%2Fwww.qt.io%2Fblog%2Fqt-creator-7-released&bu=https%253A%252F%252Fwww.qt.io%252Fblog&bvt=rss)