Update on what happened across the GNOME project in the week from May 01 to May 08.
GNOME Core Apps and Libraries
Glycin
↗
Sandboxed and extendable image loading and editing.
Sophie (she/her)
says
Automatically running tests on GitLab has now been a standard for a while. But tracking performance metrics is much less common.
Glycin
now started running
basic performance tests
on
bencher.dev
’s bare metal runners, which will hopefully provide comparable results.
As of now, the benchmarks are only covering the overhead of the loader stack, by loading a 1px PNG, and the binary file sizes for glycin loaders and the thumbnailer. But the tests should be easy to expand. The benchmarks are always run for commits in the main branch, and can be manually started for merge requests. This way it will be possible to track performance improvements and catch regressions early.
Third Party Projects
Christian
says
🎉 Gitte 0.2.0 is out!
This week, Gitte 0.2.0 was released with a big focus on interactive rebasing and polishing everyday Git workflows.
The biggest addition is interactive rebasing directly from the commit log. Commits can now be reordered via drag & drop, dropped, reworded, edited during a paused rebase, or squashed and fixuped without leaving the GUI.
Remote operations like push, pull, fetch and clone now use the Git CLI internally, improving credential handling and protocol support. The diff view font is now configurable, and repositories can be opened directly from the terminal using commands like
gitte ~/Code/projects/Gitte
.
This release also adds a unified stash dialog for workflows that require stashing changes, ahead/behind indicators for the current branch, double-click checkout for local branches, and improved merge commit information in the log viewer. There are also a few small easter eggs hidden throughout the app.
On the translation side, Gitte now includes a German translation and a Ukrainian translation by Dymko. The release also includes AUR packaging documentation contributed by Kainoa Kanter, alongside many bug fixes and smaller refinements across the application.
Bilal Elmoussaoui
reports
I have released the first version of
gobject-linter
, previously known as goblint.
This release brings a lot of new functionality: Meson integration for accurate dead code detection (functions, enum variants, structs, struct fields and more) via the new
dead_code
rule,
mis-exported public types
detection,
inconsistent function signatures
checking, and a
type_style
rule to enforce consistent use of either GLib type aliases (
gint
,
gfloat
,
gdouble
) or their C equivalents across your codebase. Two new GObject introspection rules for verifying
missing since annotations
and the exported public APIs are
bindings friendly
.
It also supports diff-scoped linting via
--diff -
so you can incrementally integrate it into large existing projects.
The release is also available on
crates.io
Jeffry Samuel
announces
Nocturne 1.0.0 has been released!
Nocturne is a modern music player that can play songs from your OpenSubsonic, Jellyfin and local libraries.
It includes features such as audio visualizers, equalizers and automatic lyric fetching.
Some of the new features in 1.0.0 are:
-
Support for changing max bitrate
-
Support for replay gain
-
Added option to show sidebar player
-
Compatibility with word for word lyrics
-
Faster and more stable interface
-
Gapless playback
-
Grouping of songs in albums by their disc
-
Added option to show dynamic background in the main window
-
Much more
mas
says
Hi, finally released my first app, Press!
With has a very straight-forward interface to compress huge music libraries with ease.
You might like it because:
-
Compresses multiple files simultaneously
-
Never takes destructive actions
on the source
(but it can replace files on the destination if you want)
-
Avoids re-compressing a file (if you just want to add a new album, it compresses just that one, not your entire library)
-
Import basically any format GStreamer can take!
-
Export to mp3, m4a, or ogg
-
Move other non-auto files with you
-
You can add custom formats with a bit of GStreamer know-how
It really is a one-stop solution to compress music to portable devices.
I’d love to hear feedback and
suggestions
.
Get it on Flathub
or
check the source code
.
Oh and, it uses libadwaita, vala, and GStreamer.
JumpLink
announces
The type-definitions generator
ts-for-gir
produces the typings used to write GNOME applications in TypeScript. It can now experimentally run directly on
GJS
, without Node.js.
This is made possible by the new experimental
GJSify
framework, which provides Node.js and Web APIs on top of GJS. Its long-term goal is to make as much of the JavaScript / TypeScript ecosystem as possible available to GJS applications.
bhack
announces
I’d like to introduce Mini EQ, a new small GTK/Libadwaita app for PipeWire desktops.
Mini EQ is a system-wide parametric equalizer. It creates a PipeWire filter-chain sink with builtin biquad filters, routes desktop playback through it with WirePlumber, and provides a compact 10-band fader workflow. It also supports Equalizer APO/AutoEq preset import and an optional spectrum analyzer through the PipeWire JACK compatibility layer.
The project is now available on Flathub, with source and packaging published on GitHub.
Flathub:
https://flathub.org/apps/io.github.bhack.mini-eq
GNOME Shell extension:
https://extensions.gnome.org/extension/9803/mini-eq-controls/
Source:
https://github.com/bhack/mini-eq
Anton Isaiev
announces
RustConn is a GTK4/libadwaita connection manager for SSH, RDP, VNC, SPICE, Telnet, MOSH, and more.
Versions 0.12.8–0.13.7 were shaped heavily by user feedback. What started as a personal tool is now used daily by sysadmins and DevOps teams — and their reports drive the roadmap.
Key additions:
Local Shell in Flatpak — fully working host shell via flatpak-spawn with real PTY and job control.
RDP dynamic resize — in-place resolution change via Display Control Channel, no reconnect needed; automatic fallback for legacy servers.
RDP Autotype — type text as keystrokes into remote sessions, bypassing clipboard restrictions.
Drag & Drop — file paths into terminals, files to RDP clipboard.
Smart Folders & Dynamic Folders — filter connections by tag/protocol/pattern, or generate them from external scripts.
Virt-viewer .vv file support — open SPICE/VNC files from Proxmox, oVirt, libvirt directly.
CLI —format json|csv|table — machine-readable output for scripting and AI agents.
GNOME HIG audit — restructured menus, unified dialogs, accessible labels across all windows.
Flatpak CLI auto-versioning — 7 bundled CLI tools now resolve latest versions from upstream automatically.
Homepage:
https://github.com/totoshko88/RustConn
Flathub:
https://flathub.org/en/apps/io.github.totoshko88.RustConn
Shell Extensions
Miklós Zsitva
says
Matrix Status Monitor v7 improves room handling, notifications, and profile actions in GNOME Shell.
Matrix Status Monitor v7 is now available on GNOME Extensions, bringing a noticeably smoother experience for Matrix users running GNOME Shell. This release focuses on making the extension feel more responsive and more native to the desktop, while keeping the panel UI lightweight and fast.
The biggest change is the new weight-based room sorting system, which replaces the old timestamp-only approach. Rooms are now ranked by highlights, unread counts, direct messages, favourites, visit frequency, and recency, so the most relevant conversations surface first.
v7 also adds a clear idle/active separator in the room list, plus async menu rebuilds via GLib.idle_add to avoid blocking the UI during updates. On top of that, the extension now sends GNOME desktop notifications through MessageTray, with event ID deduplication so the same message does not trigger repeated alerts.
The profile header has been expanded as well: it now shows the user avatar, display name, user ID, plus one-click copy and QR toggle actions. The avatar loading path was also extended to handle a larger profile icon size, which helps the header feel more polished and distinct from room rows.
Overall, v7 is a refinement release that makes the extension feel more reliable, more readable, and more useful in daily GNOME use. If you want, I can also turn this into a shorter GNOME Extensions changelog blurb or a more formal release note.
https://extensions.gnome.org/extension/9328/matrix-status-monitor/
That’s all for this week!
See you next week, and be sure to stop by
#thisweek:gnome.org
with updates on your own projects!