Learn about the greatest new features of the upcoming GNOME 47 desktop environment.
The GNOME 47 desktop environment is released on September 18, 2024. Being the final release of 2024, it’s packed up with some great features, which were long due anyway. Many features in this release are actually visible and aesthetics in nature.
In this article, I will touch upon a few of them which are visible at the surface & a few core updates.
GNOME 47: Key Features
GNOME Shell and Mutter
Hardware encoding for screencasts
GNOME 47 brings significant enhancements to video playback performance, especially on Intel and AMD hardware. By leveraging VA-API (Video Acceleration API) and the vapostproc library, GNOME can now offload colour conversion tasks to specialized hardware, resulting in smoother video playback and reduced CPU load. This feature is particularly beneficial for users who frequently work with high-resolution video content or engage in video editing tasks, including screencasting.
Additionally, GNOME now enforces the use of DMAbuf (Direct Memory Access buffer) with the explicit modifier API, ensuring more efficient memory management and data transfer between the CPU and GPU. This change paves the way for better integration with hardware-accelerated video codecs and improved overall system performance.
Add low-power encoding pipeline to screen recorder
Recognizing the growing importance of power efficiency, this release introduces a low-power encoding pipeline for the screen recorder. This feature leverages VA-API’s low-power encoder profiles, such as vah264lpenc, which rely entirely on fixed-function hardware blocks. By offloading the encoding process to dedicated hardware, GNOME can significantly reduce power consumption during screen recording sessions. The low-power encoding pipeline is automatically selected on hardware capable of supporting it, taking precedence over the existing H.264 VA-API pipeline.
Build GNOME without X11
If you ever compiled GNOME before, you probably know that you needed X11 for building and restarting the shell. It never worked for Wayland. This changes in the new GNOME 47. This release introduces a build option that enables compiling Mutter, the core compositor, without X11 or XWayland support. This option, can be enabled by passing the flags -Dx11=false -Dxwayland=true -Dwayland=true
.
This change simplifies the build process, enabling a leaner codebase.
Improved rendering while running headless GNOME
Another feature in GNOME 47, tackles an important issue for those running GNOME in headless mode, which is commonly used in server environments or containerized setups. The fix ensures that hardware-accelerated rendering works seamlessly even when running without a physical display attached.
Previously, the compositor process faced difficulties accessing the necessary render nodes, leading to potential rendering issues or performance degradation. By directly querying udev for render node devices, this update eliminates the need for the compositor to open /dev/dri/card*, which could fail in certain headless scenarios. Additionally, it optimizes resource usage by disabling the multi-threaded feature of the dummy KMS instance, which is not required in a headless environment.
Overall, this change enhances the stability and efficiency of GNOME’s rendering capabilities in headless mode, benefiting users who rely on such setups for various purposes, such as remote desktop solutions or specialized applications. You can read in detail about this here.
Legacy X11 Apps follows libadwaita styles
This update brings a welcome enhancement to the visual consistency of GNOME’s user interface, particularly for legacy X11 applications running on the desktop. Currently, window decorations (such as titlebar, borders, and controls) for traditional X11 applications use the default GTK 4 theme, which can appear inconsistent with the modern libadwaita styling employed by most core GNOME applications. By incorporating libadwaita for rendering X11 window decorations, this feature ensures that legacy applications requesting server-side decorations will automatically adopt the libadwaita styling.
This means that when you enable the dark mode in GNOME, for instance, these X11 applications will seamlessly honor the libadwaita theme, maintaining a cohesive and polished look across the entire desktop environment.
Files
New file chooser
The new file chooser in GNOME 47 is a major overhaul of the file chooser used when saving files in GTK-based applications. The new file chooser features a completely redesigned interface, with the new file name appearing at the bottom of the window and a red button indicating that a file with the same name already exists.
The new file chooser also includes several new features, such as the ability to star files, zoom in and out, and cache file name thumbnails. It also allows saving files with admin privileges, saving files to GNOME online accounts, and using the same click policy and file name entry field as the Nautilus file manager.
Additionally, the new file chooser will always use the same File Chooser window, regardless of the context in which it is used. This means that all file chooser windows will have the same look and features, providing a more consistent user experience.
The new file chooser also includes a context menu for renaming and creating new folders, and it will always use either icon or list view, depending on user preferences. This update simplifies the file saving process and provides a more streamlined and consistent user experience for GTK-based applications.
Files sidebar
The Files 47 update brings a redesigned Files sidebar, making it more intuitive and customizable for users. The Network, Home, Recent, Starred, and Trash locations have been moved to the top section, while bookmarks are now placed in the middle. This change allows for easier access to frequently used directories.
Moreover, users can now remove and rearrange all bookmarks, including the default places entries, which have been integrated into the bookmarks section. This new feature provides users with greater flexibility in organizing their favourite directories and accessing them quickly.
New modal dialogs everywhere
GNOME 47 introduces a new Libadwaita dialog style for the New Folder Creation dialog, which features a modern and sleek design. This new style will be adopted by other dialogs in future GNOME releases, providing a consistent user interface.
The dialogues open up with a smooth animation effect. This new dialog style can be seen in the File Deletion confirmation dialog, Power Off dialog, and Authentication dialog as well. The cancel button has been removed, and the close button in the window controls is now used to cancel the dialog. The create button has also been moved below, making it more prominent and accessible.
Network View
GNOME 47 brings a significant improvement for managing network connections and devices within the Files application. With this release, a new “Network” tab has been introduced in the left pane in Files, which separates network-related items from the “Other locations” tab. The new “Network” tab displays connected devices, previous devices, and available network devices, making it easier for users to manage their network connections and devices within the GNOME desktop.
This update also introduces the “NautilusNetworkDirectory” and “NautilusInternalPlaceFile” for managing internal locations that are not known to GIO/GVfs. The “NautilusInternalPlaceFile” provides basic file attributes, such as display name and type, to internal locations, which removes the need to add special cases for such locations all around. This update simplifies the management of internal locations and provides a more consistent user experience within the Files application.
Other small updates
The floating bar in Files (when you select an item or items) will no longer be tucked directly in the corner (bottom – right) but instead will have a small margin from the edge. This change will make the floating bar look less out of place and more visually appealing, providing a better user experience for those using GNOME on smaller screens.
Settings
GNOME 47 brings several improvements to the GNOME Settings (gnome-control-center) that enhance the user experience and provide more customization options.
Firstly, GNOME 47 now supports an accent colour by default, with a total of 9 colour options available. You can access this feature from the Appearance page in Settings, allowing you to personalize your desktop with their preferred colour scheme.
In the Sound page, you can now choose the audio output configuration, providing greater flexibility in managing their sound settings.
Additionally, the Accessibility > Pointing and Clicking option now includes a new feature called “Active Windows on Hover.” This option highlights the active window when the mouse pointer hovers over it, making it easier for users to navigate and manage multiple open windows.
Lastly, the New User Add dialog has been completely revamped in GNOME 47. While some users may find the new version more visually appealing, it’s worth noting that the earlier version was simple and required fewer clicks to add a new user.
Software and Web
GNOME Software seems mostly porting work in libadwaita controls, performance upgrades and fixes.
The Web 47 browser now has the ability to automatically fill in fields on web pages, making it easier and faster to complete online forms. Additionally, the browser now includes a privacy report feature that allows users to see which websites are tracking them and how they can protect their privacy.
Users can also import passwords and bookmarks from CSV files, making it easier to switch to GNOME from other desktop environments. The bookmarks have been improved with new sorting options, search functionality, and a more intuitive interface for managing and organizing them.
Custom CSS properties
With GNOME 47, custom CSS properties are now available, allowing developers to define reusable values and improve the flexibility of their GTK applications. This feature enables developers to create more customized and visually appealing applications with less code.
Additionally, the new CSS engine in GNOME 47 loads CSS files much faster than previous versions, resulting in improved performance and a smoother user experience.
Wallpapers
Like every GNOME releases, you may get a few new wallpapers. I am not sure which ones are the new for this release. But I guess, these are the new additions as per the source repo at GitLab.
Download
You can try this version using the GNOME OS. You can download the ISO image from the below link and use it in GNOME Boxes (Flatpak).
Alternatively, you can try using Fedora 41 development ISO from here.
Wrapping Up
Distribution-wise, you will get this version in Fedora 41, Ubuntu 24.10 when releases on October 2024.
Overall, it is a great release considering many user-centric changes. The Wayland updates are the key highlights. The Files improvements are also excellent.
Via Changelog, GitLab