Planet KDE

Subscribe to Planet KDE feed Planet KDE
Planet KDE | English
Updated: 23 hours 12 min ago

Web Review, Week 2024-40

Fri, 2024-10-04 08:15

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

W3C 30th anniversary clip

Tags: tech, web, history

Excellent clip for the W3C 30th anniversary. Shows the big milestones and evolution of the WWW.

https://www.youtube.com/watch?v=0TfUBuIZkmQ


OpenFreeMap

Tags: tech, foss, map

An excellent service to provide. Let’s hope it stays sustainable, the risk is commercial leeches not giving back a dime. Be responsible, sponsor it if you use it commercially.

https://openfreemap.org/


Why laptop support, why now: FreeBSD’s strategic move toward broader adoption | FreeBSD Foundation

Tags: tech, freebsd, laptop

Unexpected but definitely welcome. Let’s wish them luck in this endeavor.

https://freebsdfoundation.org/blog/why-laptop-support-why-now-freebsds-strategic-move-toward-broader-adoption/


The Public Domain Problem

Tags: tech, copyright, public-domain, commons

Putting things in the public domain voluntarily is indeed more difficult than it should be. The best tool we got is CC0, but it still raises (probably unwarranted) concerns for software.

https://dpk.land/pubdmn.txt


Patent troll Sable pays up, dedicates all its patents to the public!

Tags: tech, patents

Always happy to see a patent troll bite the dust.

https://blog.cloudflare.com/patent-troll-sable-pays-up/


Improving online advertising through product and infrastructure

Tags: tech, mozilla, advertisement, surveillance

Mozilla is clearly loosing its way, this is sad to watch. I guess the forks which remove the online advertising measures will become more popular.

https://blog.mozilla.org/en/mozilla/improving-online-advertising/


Microsoft details security/privacy overhaul for Windows Recall ahead of relaunch

Tags: tech, microsoft, ai, machine-learning, surveillance, privacy

They’re trying a come back… of course they added layers of security to pretend it’s all solved and shiny. They totally ignore the social implications or if something like this even needs to be done. At least one can remove it… for now…

https://arstechnica.com/gadgets/2024/09/microsoft-details-security-privacy-overhaul-for-windows-recall-ahead-of-relaunch/


Don’t believe the hype: AGI is far from inevitable

Tags: tech, ai, machine-learning, gpt, cognition, neuroscience, philosophy, mathematics, logic, research

This is a short article summarizing a research paper at the surface level. It is clearly the last nail in the coffin for the generative AI grand marketing claims. Of course, I recommend reading the actual research paper (link at the end) but if you prefer this very short form, here it is. It’s clearly time to go back to the initial goals of the AI field: understanding cognition. The latest industrial trends tend to confuse too much the map with the territory.

https://www.ru.nl/en/research/research-news/dont-believe-the-hype-agi-is-far-from-inevitable


The insatiable hunger of (Open)AI

Tags: tech, ai, machine-learning, gpt, energy, ecology

If you run the number, we actually can’t afford this kind of generative AI arm race. It’s completely unsustainable both for training and during use…

https://wimvanderbauwhede.codeberg.page/articles/the-insatiable-hunger-of-openai/


New AI trick: ‘synthetic human memories’

Tags: tech, ai, machine-learning, fake, fake-news

Maybe extrapolating a bit more than it should. Still this leads to worrying uses of AI generated images.

https://machinesociety.ai/p/new-ai-trick-synthetic-human-memories


Ethical Applications of AI to Public Sector Problems - Jacob Kaplan-Moss

Tags: tech, ai, machine-learning, ethics

Good article about the ethical implications of using AI in systems. I like the distinction about assistive vs automated. It’s not perfect as it underestimates the “asleep at the steering wheel” effects, but this is a good starting point.

https://jacobian.org/2024/oct/1/ethical-public-sector-ai/


Devs gaining little (if anything) from AI coding assistants

Tags: tech, ai, machine-learning, copilot, productivity

Unsurprisingly the productivity gains announced for coding assistants have been greatly exaggerated. There might be cases of strong gains but it’s still unclear in which niches this is going to happen.

https://www.cio.com/article/3540579/devs-gaining-little-if-anything-from-ai-coding-assistants.html?amp=1


Lies, Damn Lies, And Surveys About AI – ideatrash

Tags: tech, ai, machine-learning, copilot, marketing, criticism

Or why we shouldn’t trust marketing survey… they definitely confuse perception and actual results. Worse they do it on purpose.

https://ideatrash.net/2024/09/lies-damn-lies-and-surveys-about-ai.html


Sorry, GenAI is NOT going to 10x computer programming

Tags: tech, ai, machine-learning, copilot, productivity

How shocking! This was all hype? Not surprised since we’ve seen the referenced papers before, but put all together it makes things really clear.

https://garymarcus.substack.com/p/sorry-genai-is-not-going-to-10x-computer


Inside Elon Musk’s AI party at OpenAI’s old headquarters

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

The arm race is still on-going at a furious pace. Still wondering how messy it will be when this bubble bursts.

https://www.theverge.com/2024/10/3/24261160/elon-musk-xai-recruiting-party-openai-dev-day-sam-altman


I am tired of AI

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

I definitely agree with this. I’m sick of the grand claims around what is essentially a parlor trick. Could we tone down the marketing enough so that we can properly think about making useful products again?

https://www.ontestautomation.com/i-am-tired-of-ai/


Were RNNs All We Needed?

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

OK, this paper picked my curiosity. The limitations of the experiments makes me wonder if some threshold effects aren’t ignored. Still this is a good indication that the question is worth pursuing further.

https://arxiv.org/abs/2410.01201


I-XRAY

Tags: tech, social-media, scam, ai, machine-learning

Doxxing will get easier and easier. Con men are likely paying attention.

https://docs.google.com/document/d/1iWCqmaOUKhKjcKSktIwC3NNANoFP7vPsRvcbOIup_BA/mobilebasic


Hacking Kia: Remotely Controlling Cars With Just a License Plate

Tags: tech, automotive, security

More details about the KIA security issue. Clearly securing the embedded systems is not worth much if it is then all exposed via unsafe web services.

https://samcurry.net/hacking-kia


Attacking UNIX Systems via CUPS, Part I

Tags: tech, linux, security

This one is definitely a bad one. Looks like CUPS is a weak part of the ecosystem, especially when coupled with zeroconf. I wouldn’t be surprised to see macOS being affected too.

https://www.evilsocket.net/2024/09/26/Attacking-UNIX-systems-via-CUPS-Part-I/


Collaborative Text Editing with Eg-walker: Better, Faster, Smaller

Tags: tests, crdt, collaborative

This could be a game changer to collaborative editing. Clearly a good competitor to CRDTs, should make it easier to build such features without a central server.

https://arxiv.org/abs/2409.14252


Modes Considered Harmful

Tags: tech, distributed, reliability

Interesting point. You likely need to be careful with fallback modes especially in distributed systems. They might bring even more issues when the system is already under stress.

https://a-nickels-worth.dev/posts/modesharm/


std::array in C++ isn’t slower than array in C

Tags: tech, c++, programming, safety, performance

If you still needed to be convinced you need to use std::array and std::span, here is the proof.

https://pvs-studio.com/en/blog/posts/cpp/1164/


Code Generation in Rust vs C++26

Tags: tech, c++, rust, metaprogramming

Interesting comparison of the different choices made in Rust and the upcoming C++26 for code generation. It’s fascinating how they managed to have such facilities in Rust while having no introspection. C++ going the opposite direction will have a very different feel both in term of use or of implementation.

https://brevzin.github.io/c++/2024/09/30/annotations/


The Fastest Mutexes

Tags: tech, multithreading, performance, system

Nice results. Interesting implementation too. I wonder if some of it will make its way to the glibc or musl.

https://justine.lol/mutex/


Less htmx is More

Tags: tech, web, frontend, htmx

As it gets more adoption people are figuring out ways to use htmx properly and not abuse what should be niche features.

https://unplannedobsolescence.com/blog/less-htmx-is-more/


Three small proposals for putting “hyper” back in the hypertext

Tags: tech, web, frontend, html, htmx

Interesting proposals, let’s see how far they go. They could bring most of the benefits of htmx and similar straight in HTML.

https://alexanderpetros.com/triptych/


Changelogs and Release Notes

Tags: tech, foss, project-management

We keep saying they’re not the same. This article does a good job highlighting the differences and explaining why you need both.

https://harihareswara.net/posts/2024/changelogs-and-release-notes/


Learning to Call BS

Tags: tech, product-management

Good idea on how product managers should behave to facilitate requirements handling. I wish more of them would do this.

https://kevinyien.com/blog/bs.html


The world will need less energy after the energy transition

Tags: tech, energy, ecology, economics

Interesting analysis… I wonder if and how Jevons paradox will get in the way though.

https://www.sustainabilitybynumbers.com/p/electrification-energy-efficiency


Bye for now!

Categories: FLOSS Project Planets

KDE e.V. and Kdenlive team are looking for contractors

Fri, 2024-10-04 06:00

KDE e.V., the non-profit organization supporting the KDE community, and the Kdenlive team are looking for proactive contractors to implement some features in the Kdenlive video editor. Two positions are currently open:

  • OpenTimelineIO integration: this will require implementing a C++ module in Kdenlive to allow importing and exporting using this open standard, to allow exchanging project files with other applications. Please see the job ad for more details about this contracting opportunity.

  • Audiowaveform integration: this will require rewriting the code used to generate and display the audio waveforms in Kdenlive using the audiowaveform library. This should bring faster and more precise waveforms in the timeline. Please see the job ad for more details about this contracting opportunity. We are looking forward to your application.

Categories: FLOSS Project Planets

QCoro 0.11.0 Release Announcement

Fri, 2024-10-04 06:00
SPDX-License-Identifier: GFDL-1.3-or-later --> QCoro 0.11.0 Release Announcement

A long over-due release which has accumulated a bunch of bugfixes but also some fancy new features…read on!

As always, big thanks to everyone who reported issues and contributed to QCoro. Your help is much appreciated!

QCoro::LazyTask<T>

The biggest new features in this release is the brand-new QCoro::LazyTask<T>. It’s a new return type that you can use for your coroutines. It differs from QCoro::Task<T> in that, as the name suggest, the coroutine is evaluated lazily. What that means is when you call a coroutine that returns LazyTask, it will return imediately without executing the body of the coroutine. The body will be executed only once you co_await on the returned LazyTask object.

This is different from the behavior of QCoro::Task<T>, which is eager, meaning that it will start executing the body immediately when called (like a regular function call).

QCoro::LazyTask<int> myWorker() { qDebug() << "Starting worker"; co_return 42; } QCoro::Task<> mainCoroutine() { qDebug() << "Creating worker"; const auto task = myWorker(); qDebug() << "Awaiting on worker"; const auto result = co_await task; // do something with the result }

This will result in the following output:

mainCoroutine(): Creating worker mainCoroutine(): Awaiting on worker myWorker(): Starting worker

If myWorker() were a QCoro::Task<T> as we know it, the output would look like this:

mainCoroutine(): Creating worker myWorker(): Starting worker mainCoroutine(): Awaiting on worker

The fact that the body of a QCoro::LazyTask<T> coroutine is only executed when co_awaited has one very important implication: it must not be used for Qt slots, Q_INVOKABLEs or, in general, for any coroutine that may be executed directly by the Qt event loop. The reason is, that the Qt event loop is not aware of coroutines (or QCoro), so it will never co_await on the returned QCoro::LazyTask object - which means that the code inside the coroutine would never get executed. This is the reason why the good old QCoro::Task<T> is an eager coroutine - to ensure the body of the coroutine gets executed even when called from the Qt event loop and not co_awaited.

For more details, see the documentation of QCoro::LazyTask<T>.

Defined Semantics for Awaiting Default-Constructed and Moved-From Tasks

This is something that wasn’t clearely defined until now (both in the docs and in the code), which is what happens when you try to co_await on a default-constructed QCoro::Task<T> (or QCoro::LazyTask<T>):

co_await QCoro::Task<>(); // will hang indefinitely!

Previously this would trigger a Q_ASSERT in debug build and most likely a crash in production build. Starting with QCoro 0.11, awaiting such task will print a qWarning() and will hang indefinitely.

The same applies to awaiting a moved-from task, which is identical to a default-constructed task:

QCoro::LazyTask<int> task = myTask(); handleTask(std::move(task)); co_await task; // will hang indefinitely!` Compiler Support

We have dropped official support for older compilers. Since QCoro 0.11, the officially supported compilers are:

  • GCC >= 11
  • Clang >= 15
  • MSVC >= 19.40 (Visual Studio 17 2022)
  • AppleClang >= 15 (Xcode 15.2)

QCoro might still compile or work with older versions of those compilers, but we no longer test it and do not guarantee that it will work correctly.

The reason is that coroutine implementation in older versions of GCC and clang were buggy and behaved differently than they do in newer versions, so making sure that QCoro behaves correctly across wide range of compilers was getting more difficult as we implemented more and more complex and advanced features.

Other Features and Changes

A coroutine-friendly version of QFuture::takeResult() is now available in the form of QCoroFuture::takeResult() when building QCoro against Qt 6 (#217).

QCoro::waitFor(QCoro::Task<T>) no longer requires that the task return type T is default-constructible (#223, Joey Richey)

Bugfixes
  • Suppress Clang error when building against Android NDK <= 25 (#204, Daniel Vrátil)
  • Fixed missing QtGui dependency in QCoroQuick module (#209, Andreas Sturmlechner)
  • Fixed QCoroIODevice::write() always returning 0 instead of bytes written (#211, Daniel Vrátil)
  • Fixed unchecked std::optional access in QCoroIODevice::write
  • Fixed awaiting on signal emission with qCoro() would resume the awaiter in the sender’s thread context (#213, Daniel Vrátil)
  • Fixed build wilth clang 18 due to missing #include <exception> (#220, Micah Terhaar)
  • Fixed crash when QNetworkAccessManager is destroyed from a coroutine awaiting on a network reply (#231, Daniel Vrátil)
Full changelog

See changelog on Github

Support

If you enjoy using QCoro, consider supporting its development on GitHub Sponsors or buy me a coffee on Ko-fi (after all, more coffee means more code, right?).

Categories: FLOSS Project Planets

obsidian.md to-do list calendar subscription

Thu, 2024-10-03 20:00
I am huge fan of obsidian.md and just other day I was trying to “convert” Akseli. One pain point he mentioned that it does not quite allow him to get reminders for the todo list created in obsidian. I have been doing little bit of “hack” to workaround this, and I thought I’d write a blog post about this so that others can also make use of it. How to use this First of all, following plugins are used (ignore PlantUML)
Categories: FLOSS Project Planets

KStars v3.7.3 is Released

Thu, 2024-10-03 15:07

KStars v3.7.3 is released on 2024.10.03 for Windows, MacOS & Linux. It's a bi-monthly bug-fix release with a couple of exciting features.

Extension Interface

Ed Lee contributed the Extension Interface for KStars.

Extensions are small programs that can be added to interact with KStars/Ekos/INDI in order to provide extra functions and features. Extensions are separate from KStars. They are not provided as part of this software. Only a means to call them is provided for convenience. Make sure that you understand the requirements and risks of using an extension.


Three extensions are ready for release:

  • FireCapture launcher (FC_launcher): disconnects the current primary camera INDI driver and launches FireCapture. Upon close restarts the INDI driver.
  • KStars Backup (KS_backup): provides a GUI for the archiving and restoration of KStars/INDI (and optionally others) configuration directories to/from .tar.gz archives/
  • Sirial_EEA: provides live stacking of the preview job from the Capture Module and displays it auto-stretched in the Ekos preview window.

Each extension must have a companion configuration file also located in the extensions directory, named the same as the executable with the addition of a .conf eg: an extension named example must also have a configuration file named example.conf A configuration file is a plain text file that provides configuration settings to the extension program and usage information to the user. A configuration file is only valid if it contains a line starting with: minimum_kstars_version=x.y.z The x.y.z is the minimum release of KStars that the extension is designed/tested against. This value is checked against the current KStars KSTARS_VERSION macro defined in version.h and must be equal or lower for the extension to be considered valid. The extension should also check that this minimum_kstars_version string matches what it expects.

Optionally each extension can also provide an icon file for display in the Extension drop down list. Again the naming should match the extension executable with a valid file extension (.jpg, .bmp, .gif, .png or .svg) and be placed in the same extensions directory. A default icon is used for any extension that does not provide it's own icon.

Several new DBus functions/signals are added to enable general extension use and for a specific upcoming extension.
Multi-Target SchedulerWolfgang Reissenberger continued the development of multi-camera acquisition and now scheduling with many exciting updates!
Multi-Camera SchedulingWith this new release it is possible to create and run schedules for two or more optical trains in parallel within the same KStars instance. All mount related events like slewing, dithering, alignment and meridian flip are synchronized, i.e. capturing on all optical trains takes these events into account.
Lead and follower jobsIf you want to run capturing on multiple optical trains in parallel, you need to decide, which of the optical trains is the lead job, which defines the target and the scheduling criteria. All other optical trains will be follower jobs, for which only the capture sequence to be used is relevant.
Job SynchronizationEkos ensures that no mount motion happens while one of the optical trains is capturing to avoid star trails.

In case of dithering, the capture module decides what to do as soon as dithering is requested, depending on the setup of the lead job. If the remaining capture time of a follower train is more than 50% of the lead job exposure time, capturing of the follower train is stopped and restarted after dithering. If the remaining capture time is less than 50%, the Capture module waits for the follower to finish its capture.

For the meridian flip and re-alignment: both are controlled by the lead job. All running follower capturing sequences are stopped and restarted after a successful completion of the respective action.
Recommendations
  • The lead job should have the longest exposure times, especially if dithering is used.
  • If you use re-focusing, consider to not suspend guiding during focusing, since the other optical train might capture in parallel.
  • Configure the same optical train in the Align module that you use in the lead job. This is important if you use the re-alignment check option of the scheduler.
Do not use the Force re-alignment before re-starting jobs, since each new iteration of the lead job stops capturing of the follower trains. Consider using Verify captured image position every n frames instead, since this option triggers re-alignment only if it is necessary.Adhoc focus with Multi-Camera setupsWolfgang Reissenberger added support for simultaneous parallel focusing when you are running multi-camera setup. It would be a good idea to disable Suspend Guiding so that guiding is unaffected when focusing operation commences.Invent Multi-Star Guide Star

Hy Murveit introduced an experimental Multi-Star parameter. In the original (conservative) multi-star guiding implementation, although many stars contributed to the computed guiding drift computation, there still was one more important star that anchored the scheme.

With this change, all the guide stars contribute equally to the guiding calculations. This removes the risk that an unfortunate selection of a double star for the more-important main guide star would degrade performance.

Improvements & Bug fixes
Categories: FLOSS Project Planets

August/September in KDE Itinerary

Thu, 2024-10-03 04:45

A lot has happened again around KDE Itinerary since the previous summary post two month ago: A new two-level trip/timeline view, extended public transport location search, a new website and more public transport data coverage to name just a few things.

New Features Per-trip timeline

The probably biggest change is the replacement of the single combined timeline view that Itinerary had since its beginning with a two-level view consisting of a list of trips and a per-trip timeline view.

Trip list view.

Work on prerequisites for this has been featured in the past two summary blog posts already, such as the more explicit trip grouping controls and the staging area for about to be imported data.

Per-trip actions.

As trip grouping has become more relevant with this, there’s now multiple ways to explicitly control this:

  • Merge two adjacent trips.
  • Split an existing trip.
  • Select which trip newly added content belongs to.
New transport icons

Another visually very noticeable change are the new transport icons by Andy Betts, replacing the previously used incoherent mix of different icon styles.

Breeze icons for modes of transport. Extended location search

The location picker for public transport searches can now also search for addresses instead of just stop names. Whether a result is a stop or an address can be distinguished by an icon, and more information about location results are shown when available (such as city, state/region and/or country), to help with identifying different places with the same name.

Searching for public transport stops and addresses.

Address search is only supported with the Transitous backend so far.

Another new way of getting to a location for a public transport search is via geo: URIs passed from other applications, which Itinerary can now handle on Linux and on Android.

Infrastructure Work New Website

Thanks to work by Carl on allowing to customize the automatically generated apps.kde.org pages, Itinerary now has a much nicer website, reusing some of the great content created for the KDE for Travelers page.

Transitous

The work on Transitous and MOTIS would deserve its own post, so this is just scratching the surface here, focusing on changes most impactful for Itinerary users.

  • New base schedule coverage in France, Latvia, Lithuania, Montenegro, Poland, Serbia, Turkey and USA.
  • New real-time data coverage in Croatia and Germany.
  • Support for via routing, transfer time settings and GTFS shapes in MOTIS (which yet has to be made available to our clients though).
  • Upgraded hardware thanks to an SSD donation, which should improve routing performance.
Matrix-based trip synchronization

The foundational work around explicit trip management in the past months has also cleared the path for synchronizing trips over Matrix. As mentioned in a previous post the work on this has now started.

Synchronization increases the requirements on precise change tracking and change notification, and it adds another path how data can change. The current implementation has been a bit sloppy in that regard, and improvements for this have already been integrated. This should fix timeline entries not updating correctly after an edit or receiving public transport data updates.

Fixes & Improvements Travel document extractor
  • New or improved extractors for BlablaBus, booking.com, DB, Entur, Eurostar, Eventim, Flixbus, Italo, Koleo, MAV, Reisnordland ferries, Reservix, SNCB, SNCF, Sunnycars, United Airlines and VDV e-tickets.
  • Support for importing Deutsche Bahn journey sharing links.

All of this has been made possible thanks to your travel document donations!

Public transport data
  • Added access to BLS (Basel, Switzerland) and KVB (Cologne, Germany) public transport data.
  • Fixed access to BVG (Berlin, Germany) and ZVV (Zürich, Switzerland) public transport data.
  • Fixed missing intermediate stops in French long-distance trains, caused by incomplete data reported by ÖBB.
  • Migrated to a new train coach layout API in Germany, increasing the coverage for regional and local trains as well as increasing the level of detail for vehicle feature information such as the quantity rather than just the presence of bike or wheelchair spaces.
  • Improve data merging when location names are provided in localized and ASCII-transliterated forms.
Indoor map
  • Improved display of semi-transparent logos in dark mode in element info dialog.
  • Avoid element info dialog resizes during logo or image loading.
  • Show bus station quay numbers on the map.
Bus station quay numbers. Itinerary app
  • Fix some combo boxes not opening correctly in mobile mode.
  • Use the more compact seat display from the timeline view also on details pages.
  • Fix particularly long URLs not being detected as such during importing.
  • Allow to create events in any OSM building.
  • Fix showing arrival/departure times for disembark-only intermediate stops.
  • Android’s dark mode is now respected automatically.
  • Allow editing flight boarding groups.
  • Show per-day sections in public transport journey search results.
How you can help

Feedback and travel document samples are very much welcome, as are all other forms of contributions. Feel free to join us in the KDE Itinerary Matrix channel.

Categories: FLOSS Project Planets

Use `ripgrep-all` / `ripgrep` to improve search in Dolphin

Wed, 2024-10-02 06:30

In the next release of Dolphin, the search backend (when Baloo indexing is disabled) will be faster and support more file types, by using external projects ripgrep-all and ripgrep to do the search. Merge Request

What are ripgrep and ripgrep-all?

ripgrep is a fast text search tool that uses various optimizations including multi-threading (compared to grep and Dolphin's internal search backend which are single-threaded).

ripgrep-all, quote its homepage, is "ripgrep, but also search in PDFs, E-Books, Office documents, zip, tar.gz, etc.".

How to enable it

Install the ripgrep-all package from your distribution's package manager (which should also install ripgrep). Then Dolphin will automatically use it for content search, when Baloo is disabled.

If your distribution doesn't provide ripgrep-all, you can also try installing ripgrep. Then Dolphin will use it for content search, but without the additional file type support.

Limitations
  • It only works in content search mode, and when Baloo content indexing is disabled. File name search still uses the internal backend.

  • It only works in local directories. When searching in remote directories (e.g. Samba, ssh), the internal search backend is used. Although we can run ripgrep in remote directories through the kio-fuse plugin, testing shows it can be 3 times slower than the internal backend, so it's not used.

  • It doesn't work on Windows. Although both ripgrep and ripgrep-all have releases for Windows, I personally don't have Windows experience to integrate them. Merge request to enable it on Windows is welcome.

Customization

You can change the command line with which Dolphin calls the external tools. Copy /usr/share/kio_filenamesearch/kio-filenamesearch-grep to ~/.local/share/kio_filenamesearch/, and modify the script there. The script contains comments on the calling convention between Dolphin and it, and explanations on the command line options.

One option you might want to remove is -j2. It limits the number of threads ripgrep (and ripgrep-all) uses to 2. Using more threads can make the search much slower in hard disks (HDD). I tried to detect HDD automatically, but it's not reliable, so I went with a conservative default. It's still faster than the internal backend, but if you have an SSD, you can remove the option to unlock the full speed of ripgrep.

You can also use a different external tool. (E.g. the silver search (ag). Or a full-text search engine other than Baloo) Just make sure it outputs paths separated by NUL. Usually a -0 option will do that.

More customization

You can even modify the script so that you can specify different external tools in the search string. For example, you can insert the following code before the original code that calls ripgrep-all:

...(line 1-33) --run) if test "$2" = "@git"; then exec sh -c 'git status -s -z|cut -c 4- -z' fi ...

Then if you search for "@git" in a git directory, it will show you changed files.

Future works

There are quite a lot to improve in Dolphin's search (when not using Baloo). The content search should also search in file names. The search string is currently interpreted as a regular expression, but a fuzzy match or shell globbing seems to be a more sensible default (probably with regexp as an option). Hopefully future works will address these issues.

Categories: FLOSS Project Planets

Tales from the Akademy

Tue, 2024-10-01 19:15

This being my first post on the KDE sphere (or any other sphere), it was supposed to be just a touch of contact with the world of blogging. But since time pass by in a blast, let's just summarize how I lived my third one in-person Akademy 2024.

Würzbug. Back to Germany

This year's Akademy happily got me back to Germany, which has become like a second home and a place I like to visit at least once a year (yeah, I missed the Dürüms).

I had bought the D-Ticket, which allowed my to board any public transport immaginable (well, except for ICE trains, but I haven't heard much good about them either) for bare 49€. It brought me some memories back as a student in Dresden, enjoying the same perks with the Semesterticket, just on a regional scope. Thanks to Itinerary and its route planner I was able to make it to Würzburg even an hour earlier than anticipated (less 20min train delay which I've heard it's currently quite a good metric).

After having my hotel booking cancelled last minute due to needed repair works, I had booked an appartment because the hotel prices were a bit over the top. I was really lucky to find that just around the corner I had a bus stop to go to the venue, and also Andy Betts and Richard Wagner as ilustrious neighbors. And one of the best rated Dönner places in the city. Very lucky indeed!

The Talks

It's hard to make a better summary of the Talks days that our very own Promo Team's report, which I agree with on many points.

What I particulary felt on these Akademy's talks was a high focus into the future. Some words were thematically present along most of the talks: story, product, and impact.

The story we as the KDE community want to tell is not just a bunch of code packages that live in an ethereal world to be grabbed by a few enthusiasts or distros, but a full useful product for the end users, an inviting environment for fellow developers, and a reliable asset for manufactures on their very concrete hardware.

There were many reveals and surprises to achieve this goal. Projects that had been incubating for some time, were now made public on this Akademy: the KDE OS Codename Banana by Harald Sitter, the Next Project and design system by Andy Betts and the Union theme engine by Arjen Hiemstra.

Some talks addressed the social and environmental impact of the technology we create. The one that specially got to me was the small story Nicole Teal told at her lightning talk. How a group of kids gave many "older" PCs a new life installing KDE, while learning new skills and making community, felt really true and a spur to continue contributing to FOSS. It really matters.

From the technical talks, I enjoyed "What is color, anyway" by Xaver Hugl, and unfortunately had to miss some other ones (Python and Rust integration with Qt). This is the hardest part, where you cannot just .clone() yourself and attend to two talks at the same time. Maybe I would have learnt to do that if I had attended the Rust presentation? (yeah, sorry bad Rust dad joke)

It was also on Sunday when Aniqa and Carl took me by surprise to agains my will happily answer to a small video interview. Just joking, it was fun. Just preemptively preparing myself for when the final video comes out and I can see what words I did babble :D.

The BoFs

After a very intense weekend of talks and the social event and post-event on Sunday, I took the Monday's morning off to have some rest. In the evening, Andy and Manuel showed me a bit more about the design system they're using and the icon exporter Manuel has been developing to streamline the process between designers and the final product. Amazing stuff!

I also started a draft of this very blog post, which wasn't much successful as you can imagine by its final release date.

The big BoF day for me was mostly Tuesday, where I focussed on the Plasma and the VDG ones, though I missed those on KWin's roadmap and window tiling, due to competing schedules. During the Plasma BoF, we could experiment in real time, the step-by-step process of realeasing the Plasma 6.1.5 version, thanks to Jonathan, our Plasma release manager.

Finally, on Thursday I got to enjoy the brand new Sticker BoF. Besides me not having any stickers on my own to share, and being mostly minimalistic when it comes to decoration, I had a great time and ended up sticking my laptop up and about, including an very limited unit of the Sticker BoF's sticker. Thanks Kieryn for organizing it. Of course, Carl won the sticker's award 😄.

On a more personal level, I regret a bit not having participated more on some of the BOFs. Most of my KDE's contributions this summer have been improvements on very niche aspects: the Weather widget and the tool to preview keyboard layouts (tastenbrett), so I felt a bit "out of the loop" on the more general and pressing matters in Plasma.

The Socials

Where the Akademy really shines is in putting together some hundreds of amazing people with some common interests, that in the end happen to make the best software products and computing ecosystem out there.

It is a real warp of space and time. On the Welcome Event I got to meet Eva Brucherseifer, one of the attendants and founders of the very first Akademys, and also recent joiners to the community I only knew via chat or MR interactions.

When the Biergarten that was booked for the Sunday Social Event did cancel due to a storm warning, I could immediately check two things:

  • that the Weather Widget did correctly report the Warnung vor starkem Gewitter
  • and that the local organizing team went the extra mile to make the Akademy a success, even against the elements. Beer, pizzas and good people was all required to have an enjoyable evening.

Finally I was really happy to meet again with friends from the previous Akademys and the Plasma Sprint in 2023, sharing opinions on widespread topics, suchs as immovable OSes, ingenuous ways to open a beer bottle, keyboard input methods, or the torture and punishment customs of German cities in medieval times.

Thanks to the organizing team, the speakers, the attendants, the patrons and the whole KDE Community which made possible yet another amazing Akademy!

Categories: FLOSS Project Planets

Kraft Version 1.2.2

Tue, 2024-10-01 15:35

Kraft (Github) is the desktop app making it easy to create offers and invoices quickly and beautifully in small companies. It is targetted to the free desktop and runs on Linux.

This is the release announcement of the new Kraft version 1.2.2. This is a small service release that fixes a few bugs and CI issues.

Right after this release, the branch with significant changes for Kraft 2.0 will be merged to master. These changes will make Kraft ready for sharing documents across private file clouds and with that enable use cases for distributed use via internet, along with other significant feature updates.

Details about the next big release with version number 2.0 can be read on the Github Discussion page.

Any feedback and contribution is highly appreciated.

Categories: FLOSS Project Planets

GSOC: Week 8 to Week 16

Tue, 2024-10-01 08:30

The End is here!

The long journey of GSoC (which got streched into 16 weeks) is nearing to an end. And in this blog, I will share a few of the things I have done, and some of the things I have left to do. Let’s start with the main works.

Snap KCM! It’s here!

I have finally succeeded to create a KCM for snaps. This is written using C++, Qt (Qml), Kirigami, Snapd-Glib Api. The flow is something like this

Categories: FLOSS Project Planets

Qt Creator 14.0.2 released

Tue, 2024-10-01 06:54

We are happy to announce the release of Qt Creator 14.0.2!

Categories: FLOSS Project Planets

Google Summer of Code 2024

Tue, 2024-10-01 06:06

Programmes like Season of KDE (SoK) and Google Summer of Code (GSoC) provide a great opportunity for young talent to become part of the open source community and contribute to open source projects. LabPlot, and KDE in general, has a long history and experience in managing GSoC projects and has benefited from various contributions. In recent years we have taken a break from GSoC, mostly due to personal reasons and time constraints. After a successful SoK 2024 programme this year we decided to participate in GSoC2024 again.

This year we had Israel Gladima and Kuntal Bar who spent 3 months with us working on quite challenging projects aimed at addressing two major feature gaps in LabPlot, namely Python scripting and visualisation of 3D data. These two development topics had already been the subject of several discussions and even initial implementations on our part, but we never managed to finalise them and make these features available to our users. Based on the already available results of the last years’ work, we decided to re-initiate these projects and work on them during GSoC2024. Despite the technical challenges and complexity of these projects, Kuntal and Israel did a very good job this summer and delivered amazing results.

We refer you to their blog posts here and here for more details of the work that has been done. In the coming weeks and months we’ll continue to work to finalise these features and get them ready for the first release. The LabPlot team would like to thank Israel and Kuntal and we’re looking forward to your contributions in the future!

Categories: FLOSS Project Planets

Translating Qt Applications

Tue, 2024-10-01 04:43

Translating a Qt application, can be a daunting task. This is an overview from Qt 5 to Qt 6 and what new functionality Qt 6.7 brings.

Continue reading Translating Qt Applications at basysKom GmbH.

Categories: FLOSS Project Planets

Tellico 4.0.1 Released

Mon, 2024-09-30 20:22

Tellico 4.0.1 is available, with a couple bug fixes.

Improvements and Bug Fixes
Categories: FLOSS Project Planets

KDE's Akademy 2024: Building Culture and Memories

Mon, 2024-09-30 20:00
The event Another year, another Akademy; and what an incredible experience it continues to be! KDE’s Akademy 2024 was my 7th in a row (5 in-person and 2 online), and I’m continually struck by how much we all gain, both individually and as a community, from coming together at this annual event. The opportunity to connect with over 100 contributors from across the KDE ecosystem, all passionate about the future of our projects, is something truly special.
Categories: FLOSS Project Planets

Krita 5.2.6 Released!

Mon, 2024-09-30 20:00

Krita 5.2.6 fixes a critical error with pass-through group layers (https://bugs.kde.org/show_bug.cgi?id=493774).

Download Windows

If you're using the portable zip files, just open the zip file in Explorer and drag the folder somewhere convenient, then double-click on the Krita icon in the folder. This will not impact an installed version of Krita, though it will share your settings and custom resources with your regular installed version of Krita. For reporting crashes, also get the debug symbols folder.

Note: We are no longer making 32-bit Windows builds.

Linux

The separate gmic-qt AppImage is no longer needed.

(If, for some reason, Firefox thinks it needs to load this as text: right-click on the link to download.)

MacOS

Note: We're not supporting MacOS 10.13 anymore, 10.14 is the minimum supported version.

Android

We consider Krita on ChromeOS as ready for production. Krita on Android is still beta. Krita is not available for Android phones, only for tablets, because the user interface requires a large screen.

Source code md5sum

For all downloads, visit https://download.kde.org/stable/krita/5.2.6/ and click on "Details" to get the hashes.

Key

The Linux AppImage and the source .tar.gz and .tar.xz tarballs are signed. You can retrieve the public key here. The signatures are here (filenames ending in .sig).

Categories: FLOSS Project Planets

Open Source Conferences in September

Sun, 2024-09-29 14:00

After having participated to both Qt Contributor Summit and Akademy, I ended up going to a few more conferences in September.

Nextcloud Conference

I went to Nextcloud Conference just after going back from Akademy. Unfortunately I was quite tired from Akademy and Qt Contributor Summit and I only stayed Saturday morning. Still it was great to meet some old colleagues there.

Group photo of the Nextcloud conference

Matrix Conference

The Matrix Conference happened the weekend after the Nextcloud conference. This was the first Matrix Conference and a gathering of all types of actors involved in Matrix. From the grassroots community to companies deploying Matrix based solutions to their customers. The NeoChat team was there and we were super productive into bringing back the Android version, thanks to the help of Volker Krause. This resulted in many patches in NeoChat itself but also one patch in Kirigami.

Special mention to the food and coffee offered at the conference, which was always excellent and either vegan or vegetarian. Outside of the venue, food was also execellent with a lot of middle eastern food choice.

Here some photos of the event and the food:

Donuts Hacking at the conference venue Hacking at C-Base Food outside of the venue Linux Days Dornbirn

It was my second time going to the Linux Days in Dornbirn and while the weather wasn’t as welcoming as last time, the local Linux community was again super welcoming!

During the event, I did a talk in German about Plasma 6. This was my first time doing a talk in German and I hope I did okay. I also hosted a KDE stand with Simon Österle, who offered his help with the stand. His help has been invaluable to me, so huge thanks to him.

Like last year, after the conference, all helpers, presenters and stand holders went to a local restaurent to enjoy Käsespätzle. It was again delicious.

Here some photos of the event and the food:

Banner at the entrance of the Linux Days Steam Deck and Plasma Mobile The new KDE Banner Linux Days dinner menu Käsespätzle Apfelstrudel Bodensee on the way to Austria Bodensee from the train on the way back A script element has been removed to ensure Planet works properly. Please find it in the original post. A script element has been removed to ensure Planet works properly. Please find it in the original post.
Categories: FLOSS Project Planets

Conferences in September

Sun, 2024-09-29 14:00

After having participated to both Qt Contributor Summit and Akademy, I ended up going to a few more conferences in September.

Nextcloud Conference

I went to Nextcloud Conference just after going back from Akademy. Unfortunately I was quite tired from Akademy and Qt Contributor Summit and I only stayed Saturday morning. Still it was great to meet some old colleagues there.

Group photo of the Nextcloud conference

Matrix Conference

The Matrix Conference happened the weekend after the Nextcloud conference. This was the first Matrix Conference and a gathering of all types of actors involved in Matrix. From the grassroots community to companies deploying Matrix based solutions to their customers. The NeoChat team was there and we were super productive into bringing back the Android version, thanks to the help of Volker Krause. This resulted in many patches in NeoChat itself but also one patch in Kirigami.

Special mention to the food and coffee offered at the conference, which was always excellent and either vegan or vegetarian. Outside of the venue, food was also execellent with a lot of middle eastern food choice.

Here some photos of the event and the food:

Donuts Hacking at the conference venue Hacking at C-Base Food outside of the venue Linux Days Dornbirn

It was my second time going to the Linux Days in Dornbirn and while the weather wasn’t as welcoming as last time, the local Linux community was again super welcoming!

During the event, I did a talk in German about Plasma 6. This was my first time doing a talk in German and I hope I did okay. I also hosted a KDE stand with Simon Österle, who offered his help with the stand. His help has been invaluable to me, so huge thanks to him.

Like last year, after the conference, all helpers, presenters and stand holders went to a local restaurent to enjoy Käsespätzle. It was again delicious.

Here some photos of the event and the food:

Banner at the entrance of the Linux Days Steam Deck and Plasma Mobile The new KDE Banner Linux Days dinner menu Käsespätzle Apfelstrudel Bodensee on the way to Austria Bodensee from the train on the way back A script element has been removed to ensure Planet works properly. Please find it in the original post. A script element has been removed to ensure Planet works properly. Please find it in the original post.
Categories: FLOSS Project Planets

This Week in KDE Apps

Sun, 2024-09-29 10:30
New KCron Settings UI, Krita 2.2.5 released, and more

Welcome to the third post in our “This Week in KDE Apps” series! If you missed it, we just announced this new series two weeks ago, 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 new releases of Amarok and Krita. There is also news regarding KDE Connect, the link between all your devices; Kate, the KDE advanced text editor; Itinerary, the travel assistant that lets you plan all your trips; Marble, KDE's map application; and more.

Let's get started!

Amarok

Amarok 3.1.1 was released. 3.1.1 features a number of small improvements and bug fixes, including miscellaneous fixes for toolbars and the return of tag dialog auto-completions — functionality that initially got lost during the Qt5/KF5 port. However, most of the work has again happened under the hood to improve the codebase's Qt6/KF6 compatibility.

See the full announcement for more information

Itinerary

Itinerary now supports search for places (e.g. street names) in addition to stops. (Code: Jonah Brüchert, Icon: Mathis Brüchert, 24.12.0. Link)

Itinerary now shows the date of the connection when searching for a public transport connection. (Jonah Brüchert, 24.12.0. Link 1, link 2)

Digikam

A new face detection algorithm based on YuNet is now available. (Michael Miller, Link)

Kate

The debug plugin now works on Windows! (Waqar Ahmed, 24.12.0. Link)

The debug plugin is now much more usable. (Waqar Ahmed, 24.12.0. Link 1, link 2, link 3)

Kate context menu will now show relevant external tools. (Waqar Ahmed, 24.12.0. Link)

KCron

The System Settings page was ported to QML and given a fancy new UI! (Evgeny Chesnokov, 24.12.0. Link)

KDE Connect

Fixed the Bluetooth support for KDE Connect. (Rob Emery, 24.12.0. Link 1, link 2)

Keysmith

Keysmith now has an "About" page. (Plata Hill, 24.12.0. Link)

Kleopatra

Kleopatra now supports OpenPGP v5 keys. (Ingo Klöcker, 24.12.0. Link 1, link 2)

Krita

Krita 5.2.5 was released and is 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! Read more.

LabPlot

LabPlot implements a new type of plot: Process Behavior Chart (X-Chart), (Alexander Semke, Link)

Marble

Marble Maps, the QML version of Marble, has a new icon. (Mathis Brüchert, 24.12.0. Link)

Fixed a major source of visual glitches in the QML version of Marble when looking at the Earth globe. (Carl Schwan, 24.08.2. Link)

Marble Behaim — a special version of Marble to look at the oldest globe representation of the Earth known to exist — now also works on desktop thanks to Kirigami, and all the additional information and credits are now displayed using a standard "About" page. (Carl Schwan, 24.12.0. Link)

Marble's KRunner integration, Plasma Widget and the Wallpaper plugin are now fully ported to Plasma 6. (Carl Schwan, 24.12.0. Link)

NeoChat

On modern versions of Android, NeoChat will now request the correct permission to send system notifications. (James Graham, 24.12.0. Link)

Spectacle

Spectacle now respects your custom save file format as expected when using the "Save As" functionality. (Noah Davis, 24.08.2. Link)

Others

Valentyn Bondarenko updated several screenshots of KDE apps:

Eamonn Rea made more Kirigami applications 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.

Categories: FLOSS Project Planets

Amarok 3.1.1 released

Sun, 2024-09-29 05:40

The Amarok Development Squad is happy to announce the immediate availability of Amarok 3.1.1, the first bugfix release for Amarok 3.1 "Tricks of the Light"!

3.1.1 features a number of small improvements and bug fixes, including miscellaneous fixes for toolbars and the return of tag dialog autocompletions, a functionality that initially got lost during the Qt5/KF5 port. However, most of the work has again happened under the hood to improve the codebase's Qt6/KF6 compatibility. For the 3.2 version coming up later this year, the KDE frameworks dependency will be raised to 5.108. This should allow replacing the remaining deprecated KF5 functionalities; one of the final barriers preventing Qt6/KF6 based builds from succeeding.

Changes since 3.1.0 CHANGES:
  • Most of the context view QML items ported from QtControls 1 to QtControls 2
  • Default to no fadeout on pause and stop (BR 491603)
BUGFIXES:
  • Actually show the file browser panel toolbar
  • Fix track editor autocompletions (BR 491520)
  • Ensure home icon is shown in browser breadcrumb widgets (BR 491354)
Getting Amarok

In addition to source code, Amarok is available for installation from many distributions' package repositories, which are likely to get updated to 3.1.1 soon, as well as the flatpak available on flathub.

Packager section

You can find the tarball package on download.kde.org and it has been signed with Tuomas Nurmi's GPG key.

Categories: FLOSS Project Planets

Pages