Introducing GNOME 3.22: Karlsruhe
GNOME 3.22 is the latest version of GNOME 3, and is the result of 6 months’ hard work by the GNOME community. It contains major new features, as well as many smaller improvements and bug fixes. In total, the release incorporates 22980 changes, made by approximately 775 contributors.
3.22 has been named “Karlsruhe” in recognition of this year’s GUADEC organizing team. GUADEC is GNOME’s primary conference, which is held in Europe each year, and is only possible due to the amazing work of local volunteers.
Flatpak Integration
Flatpak is the next generation application distribution framework for Linux. This technology aims to make it easier to distribute applications for Linux, and thereby increase the number of applications that are available. Flatpak applications have other advantages, too: they are more secure, and can be safely updated without having to reboot.
GNOME 3.22 comes with comprehensive Flatpak support. The Software application is now able to install Flatpak repository files, which means that it is possible to install Flatpak repositories and applications without ever having to use the command line. Numerous other smaller changes makes it easy to install and update Flatpak applications, such as the display of source information for each application, as well as details about whether applications are sandboxed.
GNOME 3.22 also introduces developer tools which allow applications to take full advantage of Flatpak’s security features. This will allow applications to have much greater protections for users in the future.
Rename Multiple Files
The Files application now allows multiple files to be renamed at the same time. This is extremely useful when dealing with collections of similar files, such as videos, music or photos. Files can be renamed using either a template that is applied to each file, or by searching for and replacing parts of all the file names. The template mode allows details from the files to be included as part of their names, such as their creation date, or the track number, artist name or album name for music files.
To use the new feature, simply select multiple files and then either select Rename… from the context menu or press F2.
Photo Sharing
Last release, Photos gained a new set of photo editing features. For 3.22, another critical feature is being introduced: the ability to easily share photos with other people. The new sharing feature allows photos to be shared by uploading them to Google, or by sending them as an email attachment. Further sharing destinations are planned for the future, including a range of social networks.
Photo sharing is fully integrated with Online Accounts, so to upload to Google it is first necessary to add a Google account from the Settings application.
Improved Software
The Software application has an updated look for GNOME 3.22. The landing page has been revamped and now shows more application tiles, and the category section makes browsing a more integral part of the experience. Star ratings are also displayed more prominently, in order to make it easier to find the best applications to install.
Software has other improvements, too. Color coded badges now clearly indicate if an application is Free Software, and the layout of many lists and pages has also been refined.
Wayland Progress
Wayland is the next generation technology for display and input on GNU/Linux. It eliminates graphics glitches, addresses long-standing bugs, and lays the foundation for more secure applications. Wayland also brings new functionality, such as multitouch touchpad gestures.
GNOME’s Wayland support has been steadily maturing over recent releases. In GNOME 3.20, it became usable for the majority of users. Since then, support has continued to improve with the majority of missing features being filled in. This includes support for Wacom graphics tablets, the ability to rotate displays, and support for GNOME’s on-screen keyboard. Numerous smaller issues have also been resolved, making the Wayland experience even more polished.
Improved Files Application
In addition to bulk renaming, the Files application has a large number of other improvements for GNOME 3.22. Compressed file functionality has been directly integrated, so that extracting a compressed file (such as a .zip or .tar.gz file) just requires a double click, rather than using a separate application. New compressed files can also be created, using a variety of formats.
Also in Files, the view and content sorting controls have been overhauled for 3.22. This makes it possible to switch between the grid and list view with a single click and makes the zoom and sorting options much more straightforward. These changes were informed by usability testing performed by Gina Dobrescu as a part of an Outreachy internship.
Other UI enhancements include automatic hiding of the floating status bar, so it doesn’t get in the way, and the inclusion of extra information about connecting to servers, including which file protocols are supported.
Redesigned Keyboard Settings
GNOME’s keyboard settings have been overhauled for 3.22. The list of shortcuts is now easier to browse and the new design eliminates a number of issues with the previous version. A search feature makes it quick to find the shortcut you want, and the process for setting a shortcut provides much clearer feedback.
Redesigned dconf Editor
dconf Editor, the application for browsing and changing settings, has had a design refresh for 3.22. The new version has a simplified interface, based around a path bar. A new “delay mode” allows multiple changes to be made at once. Additionally, several reset options allow either resetting visible settings, or recursively resetting them (for the current folder and any subfolders).
And That’s Not All…
As usual, there are many other smaller improvements in this GNOME release. Here are some of them!
- The new version of Calendar now lets you set alarms for events. It also lets you change which calendar an event belongs to, and event editing has restyled date pickers. In the calendar grid, events can now be moved using drag and drop, and the layout of the year view has been refined.
- Polari, GNOME’s IRC client, is now able to remember and automatically reuse passwords that have been sent to NickServ.
- Maps now uses Mapbox as the supplier of its OpenStreetMap data. This is expected to provide a more reliable service in the future.
- Performance has been dramatically improved in Music. The application now loads faster and the albums grid automatically adjusts to make the best use of the space available.
- Videos now allows playback at different rates. This is useful for various things, such as when listening to talks or taking notes.
- Boxes, the GNOME application for virtual and remote machines, has gained a clone function. This makes it easy to create copies of your boxes.
- Web, the GNOME browser, now has a shortcut window, which makes it easy to discover which keyboard shortcuts are available. A new context menu in the address bar also allows you to “Paste & Go”, and a number of error pages have been redesigned.
- Progress has continued on Books, GNOME’s eBook application, which now has initial support for viewing ePub books. This feature is expected to mature in future releases.
More Information
GNOME 3.22 also has lots to offer developers, and is translated into many languages.
Getting GNOME 3.22
GNOME’s software is Free Software: all our code is available for download and can be freely modified and redistributed. To install it, we recommend that you wait for the official packages provided by your vendor or distribution. Popular distributions will make GNOME 3.22 available very soon, and some already have development versions that include the new GNOME release.
About GNOME
The GNOME Project is an international community supported by a non-profit Foundation. We focus on user experience excellence and first-class internationalization and accessibility. GNOME is a free and open project: if you want to join us, you can.
Developer Information
GNOME 3.22 includes many new features and improvements for those working with GNOME technologies. Read on for more details!
GTK+ Long Term Support
3.22 marks a significant moment in the history of GTK+. While it does not have a .0 version number, 3.22 is the first in a major new stable release series and is the first major GTK+ version since 3.0. Subsequent releases in the 3.22.x series are guaranteed to be API and ABI stable, with new releases being limited to bug and security fixes. These 3.22.x updates will be provided for at least three years. Major development work will continue in a separate release series, which will be consumable by application authors who want the latest features and are happy to deal with a moderate amount of instability.
GTK+ 3.22 makes all the improvements introduced in the 3.x series, such as CSS styling, GTK+ inspector, animations, new widgets and much more, available in a stable form. This new way of organizing GTK+ releases promises to provide long-term stability for application authors who require it, while not impeding the overall speed of GTK+ development. It is being introduced after significant discussion and consultation with GTK+ users. More details can be found on the GTK+ development blog.
Flatpak
Flatpak, previously known as xdg-app, is the next generation technology for application distribution on Linux. While it is an independent project with its own release schedule, the GNOME project plans to make Flatpak an integral part of its application developer experience.
Since the GNOME 3.20 release, Flatpak has made significant progress and has continued to mature. An important milestone has been reached with the introduction of a new set of APIs, called “portals”. These allow sandboxed applications to access resources from the host system.
GNOME 3.22’s developer technologies come with complete support for
portals, through both GLib and GTK+. Supported portals include the file
chooser, printing, URI opening, suspend/log out/idle inhibit, screenshots,
notifications and network status. This allows fully sandboxed applications to be
written for the first time. Portal access is transparent, although
GtkFileChooserNative is recommended over the regular
GtkFileChooser. More information can be found on
Matthias Clasen’s blog post.
More information about Flatpak, including developer documentation and a growing list of Flatpak applications you can try, can be found on flatpak.org.
Builder
GNOME 3.22 is another big release for Builder, with several key pieces of the new IDE falling into place. A new built-in profiler makes it possible to find performance issues in your project, and sees Builder become a multi-function IDE for the first time. The profiler currently supports C and C++, with more language support expected in the future.
Builder’s UI has received some significant polish since 3.20. A new perspective switcher provides a more elegant way to change between modes, and the search bar has been relocated. Most significantly, a new “project bar” provides information about the current project, branch and build profile, and also makes it possible to build and run your project with a single click from anywhere in the IDE.
Other enhancements in Builder 3.22 include:
- A new find and replace feature, which includes the usual options for case sensitive search, regular expressions, and word matching.
- Builder’s code editor now makes it really easy to work with colors, thanks to color highlighting and a new color picker sidebar.
- The pages for creating, cloning and opening projects have been improved, with better layouts and more project creation options.
- A new quick highlight plugin highlights text that matches the current selection.
- The C, XML, and HTML indenters have all been expanded to support more syntax styles.
GTK+ Improvements
In addition to Flatpak portals integration, other improvements in GTK+ 3.22 include:
- CSS blend modes. This is a common CSS feature that allows images to be programmatically transformed. Georges Stavracas, who implemented the feature, has provided more details on his blog.
- GTK+ 3.22 allows graphics tablets to be used with Wayland. Carlos Garnacho has written about how to add support for this to applications.
- GtkGLArea can now be used with either full OpenGL or OpenGL for Embedded Systems (known as OpenGL ES or GLES).
- GdkMonitor is a new more convenient way to get monitor information, and provides richer information than was previously available with GdkScreen.
Additionally, while it is not being introduced in 3.22, major progress has been made on the GTK Scene Graph (GSK) over the past six months. With the new release model described above, the way is clear for this to be integrated into GTK+’s new unstable release series in the near future.
GLib Structured Logging
GLib’s logging API has been reworked to support structured key–value log fields. This makes it easier to add logging and makes it possible to write more powerful logging schemes. It also makes it possible to include more metadata in log messages, such as message IDs.
As a part of this work, GLib’s logging infrastructure has been reorganized around a “writer” function, where an application specifies its logging policy. Log handlers are deprecated in favor of this, which reduces ambiguity about how and where logs should be handled, and eliminates conflicts between log handlers.
GLib will now automatically pass logging data to systemd-journald, if it is running. stdio-based output works as previously, but with the addition of color!
Internationalization
Thanks to members of the worldwide GNOME Translation Project, GNOME 3.22 offers support for more than 39 languages with at least 80 percent of strings translated. User documentation is also available in many languages.
- Basque
- Bosnian
- Brazilian Portuguese
- British English
- Bulgarian
- Catalan
- Catalan (Valencian)
- Chinese (China)
- Chinese (Hong Kong)
- Chinese (Taiwan)
- Czech
- Danish
- Dutch
- Finnish
- French
- Galician
- German
- Greek
- Hebrew
- Hungarian
- Indonesian
- Italian
- Japanese
- Korean
- Latvian
- Lithuanian
- Norwegian Bokmål
- Occitan
- Polish
- Portuguese
- Russian
- Serbian
- Serbian Latin
- Slovak
- Slovenian
- Spanish
- Swedish
- Turkish
- Ukrainian
Numerous other languages are partially supported, with more than half of their strings translated.
Detailed statistics and more information are all available on GNOME’s translation status site. You can also find out how to help translate GNOME.