Skip to content

Friday, 9 October 2026

Let’s go for my web review for the week 2026-41.


Wherein the slopbros won’t stop

Tags: tech, ai, machine-learning, gpt, copilot, web, commons, ethics

This is a rant yes but well deserved. Those companies selling giant LLMs are just DDoSing everyone…

https://www.dnalounge.com/backstage/log/2026/10/06.html


That Time I Worked With a Laptop Thief

Tags: tech, theft, law, hardware

Or why you should have a proper inventory. Also shows how having a proper MDM in place can help.

https://blog.pipetogrep.org/2025/07/27/that-time-i-worked-with-a-laptop-thief/


Why I recommend Renovate over any other dependency update tools

Tags: tech, dependencies, tools, foss

It’s really a strong option for dependency updates indeed.

https://www.jvt.me/posts/2024/04/12/use-renovate/


montray: A tray icon and desktop alerts for systemd services and custom health checks

Tags: tech, linux, systemd, monitoring, tools

OK, this is really a neat idea. Seems useful to have a simple check on important tasks on several machines.

https://github.com/dimonomid/montray/


Proving Rust Web Application Correctness with Lean 4

Tags: tech, safety, formal-verification, rust

As usual with such provers the model is fairly constraining. But nowadays it seems to start being usable in more cases. Deriving the Lean code from the source code is nice too.

https://medium.com/@Koukyosyumei/proving-rust-web-application-correctness-with-lean-4-8889583f1e15


Modernizing Utility Software Starts With the Workflow, Not the Technology

Tags: tech, complexity, work

Indeed, it would be way too easy if it was just about rewriting in a new stack. It’s often a question of better alignment with a changed context.

https://www.simplethread.com/modernizing-utility-software-starts-with-the-workflow-not-the-technology/


Redesign without fear

Tags: tech, architecture, refactoring

A bit of an advertisement for the author’s book but the advice makes sense. The strangler fig pattern indeed works at smaller scales. Grow the new API first, test it, then port.

https://blog.ploeh.dk/2026/10/02/redesign-without-fear/



Bye for now!

In September, I traveled to Graz, Austria, to attend KDE's annual conference - Akademy, which also marked KDE's 30th birthday this year.

Unfortunately I fell sick and was not able to celebrate as much as I would have liked. I wasn't able to attend the welcome event, not the first day of the conference. Luckily there was a great video team covering the event so I could enjoy the live streams.

Julius and Farid kindly replaced me on stage for the presentation about Kdenlive, you can view it here.

Screenshot of <nil>
Screenshot of <nil>
Screenshot of <nil>

On the second day, I felt a bit better so was able to attend a few presentations, like the announcement of the new KDE Goals, and be on the group photo :)

This was also an occasion to meet and discuss with some people from the KDE and Qt community.

Kdenlive

We also used this time to make a few Kdenlive meetings since several of us were at the conference. We mostly discussed the ongoing keyframes refactoring, how the UI should look, and reviewed some of the feedback we had, and promo topics. We also managed to finalize and publish our new homepage with highlighted features.

More exciting Kdenlive news will follow soon as our dev community is very active !

Qt for Python 6.12 is here, alongside the Qt 6.12 LTS release. This is the biggest release we have had in a while. If you haven't read what's new in Qt itself, check out the general announcement.

Friday, 9 October 2026

KDE today announces the release of KDE Frameworks 6.31.0.

This release is part of a series of planned monthly releases making improvements available to developers in a quick and predictable manner.

New in this version

Attica
  • Use ECMInstalledLibraryCheck. Commit.
Baloo
  • [Codecs] Replace some pointers with references. Commit.
  • [Codecs] Fix varint helper const correctness. Commit.
  • Kinotify: handle gracefully event overflow. Commit.
  • [Codecs] Drop the undefined const overload of getVarint32Ptr. Commit.
  • [Term] Remove unused Term(const QString&) constructor. Commit.
  • Change internal AdvancedQueryParser class to QueryParser namespace. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
Bluez Qt
  • Use ECMInstalledLibraryCheck. Commit.
Breeze Icons
  • Centre the 64px mimetype icons in their canvas. Commit. Fixes bug #508535
  • Centre the 32px mimetype icons in their canvas. Commit. See bug #508535
  • Use ECMInstalledLibraryCheck. Commit.
  • Add a tab-close icon instead of linking to window-close. Commit.
  • Add audio-speakers-bluetooth, and the other names PipeWire asks for. Commit.
  • Draw audio-speakers at 22. Commit.
  • Add Zeal tray icon to status. Commit.
KArchive
  • K7zip: fix integer promotion when decoding numbers. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Fix leak of rootDir in KArchive. Commit.
KAuth
  • Use ECMInstalledLibraryCheck. Commit.
KBookmarks
  • Use ECMInstalledLibraryCheck. Commit.
KCalendarCore
  • Android platform calendar plugin: drop no longer needed version check. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Enable LSAN in CI. Commit.
  • Fix memory leaks with libical 4. Commit.
  • Copy xCal element names during parsing. Commit.
KCMUtils
  • Fix margins of QML kcms. Commit.
  • Qml: rework separator API, deprecate extraFooterTopPadding. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Kpluginproxymodel: return value is a boolean not an int. Commit.
  • Remove unimplemented methods. Commit.
KCodecs
  • [KEncodingProber] Show final confidence in debug output. Commit.
  • [KEncodingProber] Add statistical approach for UTF-16 and UTF-8 detection. Commit.
  • [KEncodingProber] Evaluate pairs of accented/unaccented for Latin1. Commit.
  • [KEncodingProber] Remove filter from Latin1Prober. Commit.
  • [kEncodingProber] Improve Latin1 confidence calculation accuracy. Commit.
  • [KEncodingProber] Fix Latin1 model for pair of accented vowels. Commit.
  • [KEncodingProber] Move Latin1 sequence model out of the loop. Commit.
  • [KEncodingProber] Fix some more Latin1 codepoint classifications. Commit.
  • [KEncodingProber] Add Windows-1252 Spanish and French input test. Commit.
  • [KEncodingProber] Latin1: sharp s "ß" is not capital, fix formatting. Commit.
  • [KEncodingProber] Use uint8_t for MBCS distribution and context analyser. Commit.
  • [KEncodingProber] Fix Big5 state tables. Commit.
  • [KEncodingProber] Extend tests for Big 5 encoding. Commit.
  • Fixes: no matching function for call to... Commit.
  • [KEncodingProber] Deduplicate code to find best prober. Commit.
  • [KEncodingProber] Fix detection of Windows-1252 in WesternEuropean set. Commit.
  • [KEncodingProber] Remove UTF-8/16 support from SBCS group prober. Commit.
  • [KEncodingProber] Remove UTF-8/16 support from MBCS group prober. Commit.
  • [KEncodingProber] Use Universal prober for Chinese/Korean subset detection. Commit.
  • [KEncodingProber] Use Universal prober for Japanese subset detection. Commit.
  • [KEncodingProber] Use Universal prober for Unicode subset detection. Commit.
  • [KEncodingProber] Make subprobers in UniversalProber selectable. Commit.
  • [KEncodingProber] Fix defaulting to UTF-8 even if invalid. Commit.
  • [KEncodingProber] Fix duplicate/skipped UTF-8/UTF-16 probing. Commit.
  • [KEncodingProber] Split ESC / HZ probers, reduce nesting. Commit.
  • [KEncodingProber] Refactor UtfProber to make it reusable. Commit.
  • [KEncodingProber] Make individual SBCS probers selectable. Commit.
  • [KEncodingProber] Add SBCS and 7 bit probers to enum. Commit.
  • [KEncodingProber] Move prober type enum to nsCharSetProber base class. Commit.
  • [KEncodingProber] Simplify high byte / ESC scan. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • [KEncodingProber] Optimize check for sufficient data in JpCntx. Commit.
  • [KEncodingProber] Provide more information in MBCS debug output. Commit.
  • [KEncodingProber] Extend unit tests for CJK. Commit.
  • [KEncodingProber] Verify UTF-8 detection for Japanese/Unicode prober. Commit.
KColorScheme
  • KColorSchemeManager: drop code variant for Qt < 6.10. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
KCompletion
  • Use ECMInstalledLibraryCheck. Commit.
  • [mem leak] action and qactiongroup parent to this. Commit.
KConfig
  • KConfigSourceGenerator: Add explicit moc include when we use macros that need moc generation. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Fix writing empty path entries. Commit. Fixes bug #487212
  • 'Open' should have CTRL(O). Commit.
  • Kstandardshortcut: refactor internal shortcut handling. Commit.
  • KStandardShortcut: Fix using a null key sequence for removed shortcuts. Commit. Fixes bug #518683
KConfigWidgets
  • KLanguageButton: fix repainting issues. Commit.
  • KLanguageButton: fix the language menu overflow. Commit. Fixes bug #471293
  • Use ECMInstalledLibraryCheck. Commit.
  • Kstandardaction remove whatsthis for ShowMenubar action. Deduplicate "show" "menubar" text. Commit.
  • Fix test to work with Qt 6.12. Commit.
KContacts
  • Use ECMInstalledLibraryCheck. Commit.
KCoreAddons
  • About: Prefer AppStream data from the same prefix. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Kjob: Expose type as QML. Commit.
  • Introducing KSafeStringError. Commit.
  • Properly support Format::LongMode in formatTime(). Commit.
  • CMake config file: ensure ECM's UDev/LibMount find modules w/ static builds. Commit.
KCrash
  • Use ECMInstalledLibraryCheck. Commit.
KDav
  • Fix documentation formatting. Commit.
  • Add DavPushUnregisterJob for unsubscribing dav push notifications. Commit.
  • Add davpushregistrationjob for subscribing DavPush notifications. Commit.
  • Add DavItemsSyncJob that fetches only changed items using sync-token. Commit.
  • Add detection of sync-tag property in collection fetch. Commit.
  • Add DavPushDontNotify to item and collection operations. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Fix CI tests by closing conncetions after each requests. Commit.
  • Fix since version. Commit.
KDBusAddons
  • Use ECMInstalledLibraryCheck. Commit.
KDeclarative
  • Use ECMInstalledLibraryCheck. Commit.
KDE Daemon
KDE SU
  • Use ECMInstalledLibraryCheck. Commit.
KDNSSD
  • Use ECMInstalledLibraryCheck. Commit.
KDocTools
  • Kde-include-common.xsl.cmake fix build warning "failed to load" "pt-BR.xml". Commit.
KFileMetaData
  • Fix abort in malformed file. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • FFmpegExtractor: Extract Apple-proprietary metadata. Commit.
  • FFmpegExtractor: Extract GPS latitude and longitude. Commit.
  • FFmpegExtractor: Extract creation time. Commit.
  • Fix exception crash on malformed files. Commit.
KGlobalAccel
  • Use ECMInstalledLibraryCheck. Commit.
KGuiAddons
  • Use ECMInstalledLibraryCheck. Commit.
  • CMake config file: update wayland dep checks w/ static builds. Commit.
KHolidays
  • Use ECMInstalledLibraryCheck. Commit.
  • Update Belgian (French-speaking) holidays. Commit.
KI18n
  • KF6I18nQml: list Qt6::QmlIntegration in public link interface. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • The old URL stopped being valid. Commit.
KIconThemes
  • Deprecate KIconLoader::loadScaledIcon overload with int type size arg. Commit.
  • KIconLoader::loadIcon/loadScaledIcon(): forward directly to implementation. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
KIdletime
  • Use ECMInstalledLibraryCheck. Commit.
KImageformats
  • Enable LSAN in CI. Commit.
  • EXR: store of "adobe_rsrc" attribute with XMP/EXIF/Resolution data. Commit.
  • EXR: support for metadata saved by Photoshop. Commit.
  • ANIHandler::nextImageDelay: Protect against overflow. Commit.
  • Autotests: add AVIF image-grid image to read test. Commit.
  • Ossfuzz: update libaom to 3.15.0. Commit.
  • EXR: fix alpha channel imperpretation. Commit.
  • EXR: RGB / YC subtype support. Commit.
KIO
  • Use d-pointer for RenameFileWarningDialog. Commit.
  • Kfileplacesview: elide the name of a place once, not on every paint. Commit.
  • KFileItem: share one QMimeType per name across items. Commit.
  • Renamefiledialog: let Enumerate keep the old file name. Commit. See bug #460626
  • Ktrash: report errors and exit non-zero on --empty/--restore failure. Commit. See bug #444719. See bug #413360
  • File_unix: unify FSTAT declaration. Commit.
  • Deletejobtest: watch the file tree, not the progress reports. Commit.
  • Kdirlistertest: share the worker that lists a search result. Commit.
  • Fix build with Qt 6.11.2 on Android. Commit.
  • Kurlnavigator "Copy Location" is the text used when you right click on file. Commit.
  • KCoreDirLister: update search results when a file is deleted or renamed. Commit. Fixes bug #392456
  • Thumbnail cache: Prevent repeated creation of already created thumbnails. Commit. See bug #526038
  • Krecentdocument: Reuse an already-known MIME type for recent-documents bookkeeping. Commit.
  • Kmountpoint: Consider all non-local fuse filesystems as slow in KMountPoint::probablySlow. Commit.
  • KNewFileMenu: resolve symlink targets when creating a new link. Commit. Fixes bug #525084
  • Copyjob: add a private header for tests. Commit.
  • [ftp] Synthesize missing '.' directory entries. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Fix since version for rename warning API. Commit.
  • Workers/ftp: implement proper file modification timestamps using RFC3659. Commit. Fixes bug #510976
  • Kdirlister: keep entries that share a name but not a url. Commit. Fixes bug #524791
  • Kemailclientlauncherjob: handle characters % , '. Commit.
  • Kurlrequester: Fix mem leak in slotOpenDialog. Commit.
  • Git-blame-ignore-revs: add insertServices reorganisation commit. Commit.
  • Kfileitemactions: move insertServices and insertServicesSubmenus closer to where they are used. Commit.
  • Ftpd: expand the directory the mock server is given. Commit.
  • Ftpd: require stringio for the mock server. Commit.
  • Widgets: Update RenameFileWarningDialog since version. Commit.
  • Widgets: Rename RenameFileWarning to RenameFileWarningDialog. Commit.
  • Widgets: rely on KConfig autosync for rename warnings. Commit.
  • Widgets: make rename warning dialogs window-modal. Commit.
  • Widgets: replace rename warning callback with QObject API. Commit.
  • Kio: use 'accepted' instead of 'proceed' in confirmRenameWarning. Commit.
  • Add KIO::confirmRenameWarning() helper for consistent rename confirmations. Commit.
  • File: copy one file through one routine. Commit.
  • File: put the content transfer of a copy in one place. Commit.
  • Fix build error by adding include in file_unix_copy.cpp. Commit.
  • File: move the copying code to its own source file. Commit.
  • Copyjob: stop counting the file being copied as one that is done. Commit.
  • Copyjob: report one percentage per report. Commit.
  • Kurifiltersearchprovider: parent QActionGroup to the actions menu. Commit.
  • Copyjob: three corrections to taking a skipped file off the byte total. Commit.
  • KFileItem: detect locally mounted remote filesystems in isSlow(). Commit. Fixes bug #460127
  • Trash: Watch physical trash directories for changes. Commit. Fixes bug #465581
  • Copyjob: stop counting a skipped directory as one that was processed. Commit.
  • Copyjob: take a skipped file out of the byte total. Commit.
  • Copyjob: count a file the user skipped as one the job is done with. Commit.
  • Copyjob: publish the byte total whichever way the stating phase ends. Commit.
  • Copyjob: keep the percentage of a move inside 100. Commit.
  • Copyjob: let a test say how often a job reports. Commit.
  • Copyjob: count the files a move skipped, not the sources it renamed. Commit.
  • Unexport private method in PreviewJob. Commit.
  • Fix documentation syntax. Commit.
Kirigami
  • GlobalDrawerActionItem: port away from QQC Impl. Commit.
  • Forms/cards: Fix label visibility for fullWidth form entries. Commit.
  • Forms: Don't indent other form entries for fullWidth: true. Commit.
  • Delegates/TitleSubtitleWithActions: Pass through textFormat. Commit.
  • Columnview: Fix rapid touch taps not working by fasttracking anim. Commit. Fixes bug #523866
  • Check whether applicationWindow is a function and not undefined. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Set CMAKE_MODULE_PATH directly to ECM_MODULE_PATH. Commit.
  • Kirigami_add_tests: initialize _extra_args variable in all cases. Commit.
  • Remove unused Kirigami_EXTRA_LIBS variable. Commit.
  • Fix usage of misnamed KF_INSTALL_TARGETS_DEFAULT_ARGS. Commit.
  • Enums: Add api doc for MessageType. Commit.
  • Doc: adjust example for Badge and add screenshot. Commit.
  • Doc: fix broken example of PlaceholderMessage. Commit.
  • Doc: adjust example for Chip and add screenshot. Commit.
  • ActionsMenu: Tie loader's visibility to its action's visibility. Commit. Fixes bug #525225
  • ActionsMenu: Tie separator's visibility to its action's visibility. Commit. Fixes bug #525225
  • Controls: fix submenus on collapsed GlobalDrawer. Commit.
  • Controls: avoid shadowing property. Commit.
  • Controls: avoid unqualified lookups in private drawer items. Commit.
  • Remove unused imports. Commit.
  • Forms: use application singleton. Commit.
  • Assert types. Commit.
  • Use stronger types. Commit.
  • Controls/private: make CallBackWrapper named type. Commit.
  • Controls: qualify parent properties. Commit.
  • Add textFormat property to other delegates. Commit.
  • Delegates/IconTitleSubtitle: Add textFormat property and pass through to TitleSubtitle. Commit.
  • PlatformTheme: Insert frameContrast to the data. Commit. Fixes bug #525364
KItemModels
  • Add more missing doc for QML interfaces. Commit.
  • Ksortfilterproxymodel: Improve documentation. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
KItemViews
  • Use ECMInstalledLibraryCheck. Commit.
KJobWidgets
  • Use ECMInstalledLibraryCheck. Commit.
KMime
  • Use ECMInstalledLibraryCheck. Commit.
KNewStuff
  • Use ECMInstalledLibraryCheck. Commit.
KNotifications
  • Fix handling of deleted audio notifications. Commit. Fixes bug #525380
  • Use ECMInstalledLibraryCheck. Commit.
  • CMake config file: ensure ECM's Canberra find module w/ static builds. Commit.
  • Merge audio plugin into other plugins. Commit.
KNotifyConfig
  • Use ECMInstalledLibraryCheck. Commit.
KPackage
  • Use ECMInstalledLibraryCheck. Commit.
KParts
  • Use ECMInstalledLibraryCheck. Commit.
KPeople
  • Remove no longer needed moc include. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
KPlotting
  • Use ECMInstalledLibraryCheck. Commit.
KPTY
  • Use ECMInstalledLibraryCheck. Commit.
KQuickCharts
  • LegendDelegate: Force name to be plain text. Commit.
KRunner
  • AbstractRunnerTest: Utilize std::make_unique rather than calling .reset. Commit.
  • Port away from deprecated QSortFilterProxyModel::invalidateFilter. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
KService
  • Use ECMInstalledLibraryCheck. Commit.
  • Keep the shortest inheritance level when merging duplicate offers. Commit.
KStatusNotifieritem
  • Use ECMInstalledLibraryCheck. Commit.
  • Remove unimplemented method + not existing forward declaration. Commit.
KSVG
  • Use ECMInstalledLibraryCheck. Commit.
KTextEditor
  • Autotests: Verify when opening test files. Commit.
  • Vi-mode: Allow numpad digits to be used as count. Commit.
  • .kde-ci.yml - use run-installed-library-check-on with platform list. Commit.
  • Keep m_cursor & m_displayCursor better in sync. Commit. Fixes bug #525170
  • A11y: Fix text boundary offsets. Commit. Fixes bug #523883
  • Vi-mode: Add binary format to addition commands. Commit.
  • Vi-mode: Fix behavior of operation commands on numbers. Commit.
  • Vi-mode: Implement addition/substraction commands for visual modes. Commit.
  • Ensure we do some initial reload if we just enabled auto reload in the prompt. Commit. Fixes bug #524241
  • Move color theme selector to 'View' as that is view local. Commit. Fixes bug #518920
  • Use ECMInstalledLibraryCheck. Commit.
  • Vi-mode: Fix motion for the backspace key. Commit.
  • KateIconBorder: Fill the blank area at the end. Commit.
  • Escape file path before using it as error text. Commit.
  • Add missing include. Commit.
KTextTemplate
  • Use ECMInstalledLibraryCheck. Commit.
KTextWidgets
  • Use ECMInstalledLibraryCheck. Commit.
KUnitConversion
  • Use ECMInstalledLibraryCheck. Commit.
  • CMake config file: add missing dep checks for static builds. Commit.
  • Fix typos. Commit.
KUserFeedback
  • Use ECMInstalledLibraryCheck. Commit.
KWallet
  • Use ECMInstalledLibraryCheck. Commit.
  • Ksecretd: Rename setter for clarity. Commit.
  • Use enum instead of int in function signature. Commit.
  • Ksecretd: Drop unused entryUpdated signal. Commit.
  • Ksecretd: Don't call emitEntryUpdated in writePassword. Commit.
  • Ksecretd: Drop redundant writeEntry function. Commit.
  • Ksecretd: Preserve entry type in setLabel. Commit.
  • Ksecretd: Remove unneeded null check in internalClose. Commit.
  • Ksecretd: Use find_if in KSecretD::findWallet. Commit.
  • Ksecretd: Simplify destruction. Commit.
  • Ksecretd: Drop KWalletTransaction::OpenFail. Commit.
  • Ksecretd: Manage KWalletTransaction as move-only type. Commit.
  • Ksecretd: Use QScopedValueRollback. Commit.
  • Ksecretd: Remove empty KWalletTransaction dtor definition. Commit.
  • Ksecretd: Drop Unknown transaction type. Commit.
  • Ksecretd: Drop dead code in transaction handling. Commit.
  • Ksecretd: Use QFuture for changing password. Commit.
  • Ksecretd: Use QFuture for opening the wallet. Commit.
KWidgetsAddons
  • KActionMenuTest::testActionMenu: fix leaking util widget instance. Commit.
  • KDatePickerTest/KDateComboBoxTest: use QTest's static initMain() utility. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • KCharSelectData::openDataFile: Check open succeeds. Commit.
KWindowSystem
  • Use ECMInstalledLibraryCheck. Commit.
KXMLGUI
  • Kxmlguiwindow: don't hardcode bug report address. Commit.
  • Only add noMerge to the menu if we're really saving a merged menu. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
Modem Manager Qt
  • Fix since version in documentation. Commit.
  • Update manager interface to latest MM API. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
Network Manager Qt
  • Use ECMInstalledLibraryCheck. Commit.
Oxygen Icons
  • 48x48 and 64x64 versions of the koko app icon. Commit.
  • Add scalable svgz variant of koko icon. Commit.
  • Add koko icon. Commit.
  • Initial experiment on plasma-studio icon. Commit.
  • Improved version. Commit.
  • Fix missing fill:none on zeal-tray symbolic icon. Commit.
  • Fix hardcoded black stroke color in disk/drive 32x32 symbolic icons. Commit.
  • New icons. Commit.
Prison
  • Use ECMInstalledLibraryCheck. Commit.
  • Add separate CMake config file for KF6PrisonScanner. Commit.
Purpose
  • JobDialog: Fix translation call when cancelling. Commit. See bug #525866
  • Use ECMInstalledLibraryCheck. Commit.
  • Plugins/bluetooth: Escape html. Commit.
QQC2 Desktop Style
Solid
  • Use ECMInstalledLibraryCheck. Commit.
  • Always check that we don't pass a nullptr to CFRelease. Commit.
Sonnet
  • Core/Settings: Make a few functions invokable. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
Syndication
  • Use ECMInstalledLibraryCheck. Commit.
Syntax Highlighting
  • Perl: Missing operators, fix END section, operators style, heredoc languages, POD fix. Commit.
  • Systemd unit: update to systemd v262. Commit.
  • Use ECMInstalledLibraryCheck. Commit.
  • Zsh: prefer 'Parameter Expansion Operator' to 'Control' for ',' in subscript (i.e. $foo[1,2]). Commit.
  • Zsh: remove identical contexts or replaces rules with . Commit.
  • Zsh: fix some forms of floating number using separator. Commit.
  • Zsh: use Base style for anything that refers to base change and BaseN for associated numbers. Commit.
  • Zsh: use 'Replacement String' style in ${foo/patt/rep}. Commit.
  • Zsh: glob: enclosed characters: fix ']', '-' and '!' at the beginning of the pattern. Commit.
  • Zsh: replace ' &tab;' with '&ws;' entity. Commit.
  • Zsh: fix subscripting expansion followed by modifier (i.e. ${s:1:4:h}). Commit.
  • Zsh: glob modifier: add :f, :F, :w and :W ; :s behaves like with brace parameter. Commit.
  • Zsh: add f, F, w and W modifiers with variable when braces are absent. Commit.
  • Zsh: remove :x and :& modifier with variable when braces are absent. Commit.
  • Zsh: fix :s modifier with variable when braces are absent. Commit.
  • Zsh: fix subscript chain with variable when braces are absent, the second and subsequent ones are patterns. Commit.
  • Zsh: remove VarNameParam+ context and replace its use with VarNameSubstLen. Commit.
  • Zsh: add brace command substitution of zsh-5.10: ${ cmd }, ${|cmd} and ${{param} cmd}. Commit.
  • Zsh: add $[...] equivalent to arithmetic expansion $((...)). Commit.
  • Zsh: fix subscript and variable substring. Commit.
  • Zsh: fix glob subscript after modifier when braces are absent (i.e. $x:h[...]). Commit.
  • Zsh: fix digits after modifiers h and t when braces are absent (i.e. $foo:h3). Commit.
  • Zsh: fix value of character in arithmetic context (i.e. ##c and #word). Commit.
  • Use offscreen plugin for the one UI test. Commit.
  • Add LRC Lyrics syntax highlighting. Commit.
Threadweaver
  • Use ECMInstalledLibraryCheck. Commit.

Thursday, 8 October 2026

Agents Edit QML, But Don’t See the Result Without Building, Compiling, and Running

AI agents can make many UI changes in a single iteration. AI agents edit files, maybe run a build, and then report success. Every change can costs a full rebuild and relaunch, or it goes unchecked by the developer. Qt's QML Live Preview MCP tool makes autonomous AI agent work transparent for the developer at a low token expense: it runs the app and hot reloads changed QML files, without a rebuild and without a restart.

Over 180 individual applications plus dozens of programmer libraries and feature plugins are released simultaneously as part of KDE Gear.

Today they all get new bugfix source releases with updated translations, including:

  • kdev-python: Fix undefined behavior in popExpression() (Commit, fixes bugs #525418)
  • kmail: Fix a crash when sending signed email (Commit, fixes bugs #525868)
  • plasmatube: Fix protocol being chopped off urls (Commit, fixes bug #525299)

Distro and app store packagers should update their application packages.

Wednesday, 7 October 2026

Qt for MCUs 2.12.3 LTS has been released and is available for download. This patch release provides several bug fixes and other improvements while maintaining source compatibility with Qt for MCUs 2.12 (see Qt for MCUs 2.12 LTS released). This patch release is stability and user workflow focused and does not add any new functionality. Below are some highlights of the improvements introduced. A comprehensive list of changes can be found here. 

Tuesday, 6 October 2026

We know that one of the biggest challenges for embedded UI/UX designers is to see their design vision through to the final product. That’s why earlier this year, we launched Figma to Qt: a plug-in that helps designers craft, preview, verify, and approve Qt applications without ever leaving Figma.

Writing this blog today feels a bit unreal. Six months ago, if you had told me I'd be attending Akademy in-person, 3000 miles from home - I probably wouldn't have believed you. And yet, here we are.

So I attended Akademy 2026, in Graz - and my experience was truly remarkable. I learnt a lot about the KDE Community, met some amazing people and returned with a fresh boost of motivation to keep contributing to the KDE Community! It also happened to be my first trip to Europe, and it really lived up to the expectations!

The Conference

The talks were fun & informative and gave us a chance to catch up with everything going on in the community, which happens to be quite vast. Some talks went deep into technical aspects, some gave us rapid fire project updates, some discussed future plans and goals, whereas some were about the community and its values. The new KDE goals were also revealed, which was cool to witness live!

Out of all, some talks really stood out to me, including the one on desktop UX by Scott Jenson, KaDAI by Eva Brucherseifer & Jan Mühlig, and the history of KDE code by Cornelius Schumacher.

But what was more interesting were the many conversations, short and long, that happened with various people. It was also a pleasure to finally meet my SoK mentor, Carl Schwan in person! It was fun meeting some experienced people from the community, including Lydia, Bhushan, Aniqa, Richard Gustavsen from Qt, Áron and many more!

Everything Else

With how beautiful Austria is, whatever time we had to explore felt too little. Still, we managed to see around Graz, Vienna, Hallstatt and Riegersburg. Cycling around Graz was really fun, especially in the mountainous outskirts. Vienna and its buildings were as grand as one would imagine. The Graz old town was also quite happening and picturesque. Hallstatt (albeit really cold) was absolutely beautiful and pristine. Riegersburg offered a glimpse into rural Austria and the Zotter chocolate factory.

Apart from the conference there were some other fun events also part of Akademy, including the welcome event, KDE's 30th birthday party and a day trip.

Here are some of my best clicks from the trip :)

Screenshot of <nil>
Screenshot of <nil>
Screenshot of <nil>
Screenshot of <nil>
Screenshot of <nil>
Screenshot of <nil>
Screenshot of <nil>

I am really grateful to the KDE e.V. for sponsoring my trip, without which it wouldn't have been possible! Also, huge shoutout to my companions and new found friends - Srisharan V. S., Tushar Gupta, Ansh Singhal and Ojas Maheshwari :)

Looking forward to working with the community and making this my first Akademy of many more to come!

Monday, 5 October 2026

Camp KDE at FOSSY 2026: Vancouver Edition

I just got to writing this blog post, regarding FOSSY 2026 in Vancouver, where I co-ran the Camp KDE track, gave a talk, sat on a panel, and spent a decent chunk of the weekend standing behind a table full of stickers. Here’s how it went.

The Camp KDE booth at FOSSY 2026 with everyone who helped out

The Camp KDE booth at FOSSY 2026 with everyone who helped out