Welcome to the October and November 2020 Edition of the update series where we detail what our developers have been working on recently. Each change listed here is what developers on the project have merged and want to show the world.
GNOME Web & WebKit
GNOME Web and WebKit have seen some exciting new changes in October. To start off, WebKitGTK now has gamepad support implemented by ChangSeok Oh. Thanks to their work, you will be able to use your favorite gamepads to play games in WebKitGTK-based browsers such as GNOME Web starting next March.
GNOME Web has also received a new icon designed by Tobias Bernard that better fits in with GNOME’s icon set.
Geary
Julian Sparber polished off the responsive work for Geary which has landed on mainline. This means Geary now fits better on smaller screens, and this can be tested in the nightlies.
GNOME Games
Adrien Plazas has added support for playing Dreamcast games to GNOME Games. It is powered by the Flycast Libretro core and it supports both the .gdi and .cdi formats.
You will be able to use it in the next stable version to be released in March 2021.
Fractal
Christopher Davis has been working on a slight styling overhaul to be more in line with newer Adwaita styling and recent app designs.
A large merge request from Alejandro Dominguez changed Fractal’s backend to use matrix-rust-sdk instead of a custom API module. Alejandro is also working to refactor how Fractal handles all the UI and interactions between the UI and the internal machinery. The main target is to make Fractal snappier, and more flexible for future development.
Librsvg
Librsvg is a vectorial (SVG) rendering library. Its test suite is now in Rust, and the CI has been intensively optimised: it used to take an hour and a half to build the library, and now only takes 13 minutes!
GTK4 and GTK3 and Rust
The GTK team has been working hard this month again. GTK4 now talks nicely with assistive technologies thanks to the new AT-SPI backend. The Emoji chooser and other emoji handling related improvements have been performed.
macOS can now run GTK4 applications, thanks to the new GDK backend. GTK4 changed the way UIs are drawn and the existing backend for GTK3 could not be reused.
Bilal Elmoussaoui and Sophie Herold have been working on fixing the null-ability annotations in GTK4 before the 4.0 release. Bilal has also put in a large amount of work for subclassing support, further filling out the types gtk-rs users can subclass. Christopher Davis also added initial support for composite templates to the gtk4-rs and gtk-rs bindings.
If you want to get started with the GTK4 bindings, check out the GitHub repository. There you can find examples and links to API documentation.
GNOME Circle
A new initiative for third party apps has launched, called GNOME Circle. This initiative supports apps and libraries that use the GNOME platform. Circle is meant to showcase all the amazing third-party apps and libraries within the GNOME ecosystem, and support the independent developers creating them.
Developers who are using the GNOME platform can apply to have their projects included in GNOME Circle. When their project is approved, they qualify for benefits including:
- Promotion and advertising
- Contributors qualify for GNOME Foundation membership
- Optional inclusion in the Circle Gitlab group
To learn more and see the apps included, you can visit https://circle.gnome.org/.
Third-Party Applications
Starting this edition, we will be showcasing third-party applications, including those in GNOME Circle.
Introducing Health
Rasmus Thomsen created an application to follow your weight and steps count! It accepts
both manual input and synchronisation with Google Fit devices.
If you’re interested in contributing to the project or using it, visit the GitLab repository.
Introducing Souk
Souk is a flatpak-based app store, written with GTK4 and Rust. It’s written from the ground up to be an app store that works both on desktop and on mobile devices like the PinePhone, PineTab, and Librem 5.
If you’re interested in contributing to the project or using it, visit the GitLab repository.
Conclusion
We hope to that this was useful. If any of these projects seem useful to you or you would like to contribute, please don’t hesitate to join us via IRC or Matrix or post on https://discourse.gnome.org. As usual donations would be appreciated as well to help support the development of GNOME.