#29 New Year, New Calendar

• Curated by Felix

Update on what happened across the GNOME project in the week from January 28 to February 04.

Core Apps and Libraries


A simple calendar application.

Georges Stavracas (feaneron) announces

I have ported most of GNOME Calendar to GTK4, and it will likely be ready in time for the GNOME 42 release.


Core system user interface for things like launching apps, switching windows, system search, and more.

Ivan Molodetskikh announces

The screen recording part of the new screenshot UI has been merged for GNOME 42. Now there are only a few utility things left to merge, some design tweaks and bug fixes.

TheOPtimal says

Rounded corners have been removed in GNOME 42,. This should help with performance in the future.

For technical reasons, see here


The low-level core library that forms the basis for projects such as GTK and GNOME.

Philip Withnall says

Christian Hergert has landed support for property binding groups and signal groups to GLib, which allow multiple bindings or signal connections to be connected/disconnected to a GObject at once


Use the GNOME platform libraries in your JavaScript programs. GJS powers GNOME Shell, Polari, GNOME Documents, and many other apps.

ptomato announces

In GJS this week,

  • Evan Welsh switched on support for WeakRef and FinalizationRegistry in our runtime. Use these with care, but they may offer some solutions to problems with circular references.
  • Marco Trevisan made it possible to pass BigInt values to GObject-introspected functions with 64-bit parameters. This way, you can finally work with large numbers that cannot be accurately stored as a JS Number value and pass them correctly into C. For example, GLib.Variant.new_int64(2n ** 62n)
  • To go along with this, I added GLib.MAXINT64_BIGINT, GLib.MININT64_BIGINT, and GLib.MAXUINT64_BIGINT constants to the GLib module.
  • I fixed a bug that broke passing the NONE Gdk.Atom value into a function.

As the feature freeze approaches, look for some performance fixes and some exciting developments around modules in next week’s edition!

Third Party Projects

nirbheek says

GStreamer 1.20 has been released after almost 1½ years of work. Some of the highlights that might be interesting to GNOME developers are:

  1. Development in GitLab switched to a single git repository containing all the modules, and the development branch was switched from master to main.
  2. GstPlay: new high-level playback library, replaces GstPlayer
  3. Runtime compatibility support for libsoup2 and libsoup3 (libsoup3 support is experimental)
  4. The new VA-API plugin implementation va was fleshed out with more decoders and new postproc elements
  5. AV1 hardware decode support was added to the old VA-API plugin vaapi, the new VA-API plugin va, and Intel Media SDK msdk
  6. Video decoder subframe support
  7. Smart encoding (pass through) support for VP8, VP9, H.265 in encodebin and transcodebin
  8. Audio support for the WebKit Port for Embedded (WPE) web page source element
  9. Many WebRTC improvements, including video decoder automatic packet-loss, data corruption, and keyframe request handling
  10. More software video conversion fast-paths
  11. Linux Stateless CODEC support gained MPEG-2 and VP9
  12. mp4 and Matroska muxers now support profile/level/resolution changes for H.264/H.265 input streams (i.e. codec data changing on the fly)
  13. Lots of new plugins, features, performance improvements and bug fixes

For more details including improvements on Windows, Android, iOS, macOS, and Embedded Linux, see the GStreamer 1.20 release notes.

sonnyp says

Announcing Workbench ! - An application to learn and prototype with GNOME development.

Features GTK/CSS live preview. Please note that this is still a work in progress but I’m gathering feedback before release.

See here for instructions.

Powered by GJS, Vte, GTK4, libadwaita and GtkSourceView.

Thanks Tobias Bernard for the icon !

dabrain34 reports

GStPipelineStudio 0.2.0 is out !! 🎇 Hope you’ll enjoy it !! Here is the release notes: https://gitlab.freedesktop.org/dabrain34/GstPipelineStudio/-/tags/0.2.0

Martin Lund reports

I’ve just released lxi-tools v2.0.

lxi-tools is a collection of open source software tools for managing network attached LXI compatible test instruments such as modern oscilloscopes, power supplies, spectrum analyzers, etc.

Features include automatic discovery of test instruments, sending SCPI commands, grabbing screenshots from supported instruments, benchmarking SCPI message performance, and powerful scripting for test automation. Both a command-line tool and a GUI tool are available.

The v2.0 release marks a total rewrite of the lxi-gui application using GTK4 / libadwaita which renders it a very modern GUI application. The script feature makes use of gtksourceview which made it really easy to integrate a custom script editor with useful editing features. I think the combination of these technologies have helped make lxi-gui easier to use and look amazing despite the nature of the application - managing complex test instruments.

See https://lxi-tools.github.io for more details and how to get involved with the project.


A pure wayland shell for mobile devices.

Guido reports

Last week we released phosh 0.15.0 featuring

  • Swipeable notification frames
  • VPN quicksetting, authentication and status icon
  • Support for arbitrary passwords

and more. Check the full release notes for more details and contributors.

Since then we merged more style updates by Sam Hewitt affecting the lock screen and OSD:


Maximiliano reports

Libsecret documentation has been ported to gi-docgen, it can now be found at https://gnome.pages.gitlab.gnome.org/libsecret/.


Building blocks for modern GNOME apps using GTK3.

Alexander Mikhaylenko announces

Maximiliano has ported libhandy docs to gi-docgen and significantly cleaned them up

GNOME Shell Extensions

Simon Schneegans says

The just-for-fun GNOME Shell extension Burn-My-Windows added support for window-open effects! Furthermore, it now includes a Broken-Glass effect, added preview buttons to the effect configuration pages, and brings translation support. Watch the trailer: https://youtu.be/L2aaNF_rPHo

Advendra Deswanta says

I made GNOME Shell Extension called Lock Screen Message. It’s a simple extension that lets you add your message to the lock screen. It has same functionality as Android lock screen owner info and now it’s available on GNOME Shell Extensions.


sonnyp announces

Some of us in Berlin sonnyp, Tobias Bernard, verdre, robert.mader and zeenix gathered for a hackaton last weekend, it was tons of fun and the opportunity to share, learn and make progress on

  • GNOME OS: testing, disk encryption, install guide for developers
  • GNOME Shell: hardware video encoding, fractional scaling, better multi-GPU support, debugging, centering new windows
  • Divers: new apps, zbus, homed support

More on those later, stay tuned 😌

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!