#26 Contact Me

• Curated by Felix

Update on what happened across the GNOME project in the week from January 07 to January 14.

Core Apps and Libraries

GNOME Contacts

Keep and organize your contacts information.

nielsdg says

GNOME Contacts has been ported to GTK 4 and libadwaita, making sure it nicely fits in with a lot of other core apps in GNOME 42.

Mutter

A Wayland display server and X11 window manager and compositor library.

robert.mader says

Thanks to Jonas Ådahl we now support the new Wayland dmabuf feedback protocol. The protocol (for communication between clients and Mutter) together with some improvements to Mutters native backend (communication between Mutter and the kernel) allows a number of optimizations. In Gnome 42 for example, this will allow us to use direct scanout with most fullscreen OpenGL or Vulkan clients. Something we already supported in recent versions, however only in very selective cases. You can think of this as a more sophisticated version of X11 unredirect, notably without tearing. What does this mean for users? The obvious part is that it will squeeze some more FPS out of GPUs when running games. To me, the even more important part is that it will help reduce energy consumption and thus increase battery life for e.g. video players. When playing a fullscreen video, doing a full size extra copy of every frame takes up a significant part of GPU time and skipping that allows the hardware to clock down. What does this mean for developers? Fortunately, support for this protocol is build into OpenGL and Vulkan drivers. I personally spent a good chunk of time over the last two years helping to make Firefox finally use OpenGL by default. Now I’m very pleased to get this efficiency boost for free. Similarly, if you consider porting your app from GTK3 to GTK4 (the later using OpenGL by default) this might be a further incentive to do so. What next? In future versions of Gnome we plan to support scanout for non-fullscreen windows. Also, users with multi-GPU devices can expect to benefit significantly from further improvements.

Libadwaita

Building blocks for modern GNOME apps using GTK4.

Alexander Mikhaylenko reports

Builder and Logs now support the upcoming dark style preference.

GJS

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 made GObject interfaces enumerable, so you can now do things like Object.keys(Gio.File.prototype) and get a list of the methods, like you can with other GObject types.
  • Evan also fixed a memory leak with callbacks.
  • Marco Trevisan and myself landed a large refactor involving type safety.
  • Chun-wei Fan kept everything buildable on Windows.
  • Thanks to Sonny Piers, Sergei Trofimovich, and Eli Schwartz for various other contributions.

Cantarell

Jakub Steiner says

GNOME’s UI typeface, Cantarell, has gotten a new minisite at cantarell.gnome.org. We finally have a canonical place for the font binary downloads, but the site also demos the extensive weight coverage of the variable font. I’m happy the typeface now has a respectable home for the amount of work Nikolaus Waxweiler has poured into it in the past few years. Thank you!

Circle Apps and Libraries

Secrets

A password manager which makes use of the KeePass v.4 format.

Maximiliano says

Secrets, formerly known as Password Safe, version 6.0 was just released, featuring the recent GTK 4 port, libadwaita, and OTP support. Due to the rename now it is under org.gnome.World.Secrets in Flathub.

gtk-rs

Safe bindings to the Rust language for fundamental libraries from the GNOME stack.

Bilal Elmoussaoui announces

gtk4-rs has now a Windows MSVC CI pipeline. This will ensure the bindings builds just fine and avoid regressions for Windows users that want to build applications using GTK4 and Rust.

Gaphor

A simple UML and SysML modeling tool.

Arjan announces

In our upcoming release Gaphor, based on popular demand, we now support diagram types! If you create an activity diagram, for example, it adds diagram info to the upper left of the diagram and collapses the toolbox to only show the relevant tools for that diagram.

Fragments

Easy to use BitTorrent client.

Felix announces

I added context menus to Fragments to make common actions easier and faster to perform. These are primarily intended for desktop users, but can also be activated on touchscreens by long pressing and holding.

Commit

An editor that helps you write better Git and Mercurial commit messages.

sonnyp announces

Commit message editor now use GtkSourceView which allows for new features and improvements. It’s also now available to translate on Weblate.

Third Party Projects

sonnyp announces

Tobias Bernard and I started working on Playhouse an HTML/CSS/JavaScript playground for GNOME.

There is no release yet but contributions and feedback welcome.

Powered by GTK 4, GJS, libadwaita , GtkSourceView and WebKitGTK !

Corentin Noël announces

We are happy to announce the first public alpha release of libshumate, the GTK4 Map widget library announced in 2019. This first unstable release contains everything one need to embed a minimal Map view. This library completely replaces libchamplain which was using Clutter and now provides a native way to control maps in GTK4. Application developers are encouraged to use libshumate and report any issue that might occur or any missing feature to the library.

flxzt announces

I have been working on it for a while, but now it is ready for an announcement: Rnote is a vector-based drawing app to create handwritten notes and to annotate pictures and PDFs. It features an endless sheet, different pen types with stylus pressure support, shapes and tools. It also has an integrated workspace browser and you can choose between different background colors and patterns. It can be downloaded as a flatpak from flathub

dabrain34 announces

GstPipelineStudio aims to provide a graphical user interface to the GStreamer framework. From a first step in the framework with a simple pipeline to a complex pipeline debugging, the tool provides a friendly interface to add elements to a pipeline and debug it.

Phosh

A pure wayland shell for mobile devices.

Guido says

Panzer Sajt added support for non-numeric passwords to phosh. Some bits of Sam Hewitt’s ongoing style refresh is also already visible in the video as is the new VPN indicator in the top-bar:

Documentation

Emmanuele Bassi announces

I merged the initial batch of beginner tutorials for the GNOME Developer Documentation website. They are meant to be used as a bridge between the HIG and API references, providing useful information about UI elements with code examples in multiple programming languages. More to come in the future!

Miscellaneous

Sophie Herold announces

The app pages on apps.gnome.org are now coming with a more exciting header design. Further, page rendering times have been optimized and a few issues with right-to-left scripts have been fixed. The latter surfaced with the newly added Hebrew translation.

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!