Note:mutter acts as a composite manager for the desktop, employing hardware graphics acceleration to provide effects aimed at reducing screen clutter. The GNOME session manager automatically detects if your video driver is capable of running GNOME Shell and if not, falls back to software rendering using llvmpipe.

GNOME Sessions

GNOME has three available sessions, all using GNOME Shell.

GNOME is the default which uses Wayland. Traditional X applications are run through Xwayland.

GNOME Classic is a traditional desktop layout with a similar interface to GNOME 2, using pre-activated extensions and parameters. [1] Hence it is more a customized GNOME Shell than a truly distinct mode.

GNOME on Xorg runs GNOME Shell using Xorg.

Starting

GNOME can be started either graphically with a display manager or manually from the console (some features may be missing).

After editing the ~/.xinitrc file, GNOME can be launched with the startx command (see xinitrc for additional details, such as preserving the logind session). After setting up the ~/.xinitrc file it can also be arranged to Start X at login.

Wayland sessions

Note:

An X server—provided by the xorg-server-xwayland package—is still necessary to run applications that have not yet been ported to Wayland.

Wayland with the proprietary NVIDIA driver currently suffers from very poor performance: FS#53284.

In case it does not work as expected, you may try to change [[ -z $XDG_SESSION_TYPE ]] to [[ $XDG_SESSION_TYPE = tty ]].

GNOME applications in Wayland

When the GNOME session is used, GNOME applications will be run using Wayland. For debugging cases, the GTK+ manual lists options and environment variables.

Navigation

To learn how to use the GNOME shell effectively read the GNOME Shell Cheat Sheet; it highlights GNOME shell features and keyboard shortcuts. Features include task switching, keyboard use, window control, the panel, overview mode, and more. A few of the shortcuts are:

Super + m: show message tray

Super + a: show applications menu

Alt + Tab: cycle active applications

Alt + ` (the key above Tab on US keyboard layouts): cycle windows of the application in the foreground

Alt + F2, then enter r or restart: restart the shell in case of graphical shell problems (only in X/legacy mode, not in Wayland mode).

Tip: To make Alt+Tab switch applications only in current workspace, you can set current-workspace-only to true:

Legacy names

Note: Some GNOME programs have undergone name changes where the application's name in documentation and about dialogs has been changed but the executable name has not. A few such applications are listed in the table below.

Tip: Searching for the legacy name of an application in the Shell search bar will successfully return the application in question. For instance, searching for nautilus will return Files.

Configuration

The GNOME System Settings panel (gnome-control-center) and GNOME applications use the dconf configuration system to store their settings.

You can directly access the dconf database using the gsettings or dconf command line tools. This also allows you to configure settings not exposed by the user interfaces.

Up until GNOME 3.24 settings were applied by the GNOME settings daemon (located at /usr/lib/gnome-settings-daemon/gnome-settings-daemon), which could be run outside of a GNOME session.

GNOME 3.24 however replaced the GNOME settings daemon with several separate settings plugins /usr/lib/gnome-settings-daemon/gsd-* which were later moved to /usr/lib/gsd-*. These plugins are now controlled via desktop files under /etc/xdg/autostart (org.gnome.SettingsDaemon.*.desktop). To run these plugins outside of a GNOME session you will now need to copy/edit the appropriate desktop entries to ~/.config/autostart.

The configuration is usually performed user-specific, this section does not cover how to create configuration templates for multiple users.

System settings

Color

The daemon colord reads the display's EDID and extracts the appropriate color profile. Most color profiles are accurate and no setup is required; however for those that are not accurate, or for older displays, color profiles can be put in ~/.local/share/icc/ and directed to.

Night Light

GNOME comes with a built-in blue light filter similar to Redshift. You can enable and customise the time you want to enable Night Light from the display settings menu. Furthermore, you can tweak the kelvin temperature with the following dconf setting, where 5000 is an example value:

Tip: To change the daytime temperature in a Wayland session install this extension.

Date & time

If the system has a configured Network Time Protocol daemon, it will be effective for GNOME as well. The synchronization can be set to manual control from the menu, if required.

To show the date in the top bar, execute:

$ gsettings set org.gnome.desktop.interface clock-show-date true

Additionally, to show week numbers in the calendar opened on the top bar, execute:

$ gsettings set org.gnome.desktop.calendar show-weekdate true

Default applications

Upon installing GNOME for the first time, you may find that the wrong applications are handling certain protocols. For example, totem opens videos instead of a previously used VLC. Some of the associations can be set from system settings via: Details > Default applications.

Network

While any other network manager can be used as well, NetworkManager provides the full integration via the shell network settings and a status indicator applet network-manager-applet (not required for GNOME).

Note: Hidden wireless networks set up with networkmanager's nmtui do not connect automatically. You need to create a new profile using GNOME control center in order to restore auto-connect capabilities for that network.

Search

The GNOME shell has a search that can be quickly accessed by pressing the Super key and starting to type. The tracker package is installed by default as a part of gnome group and provides an indexing application and metadata database. It can be configured with the Search and Indexing menu item; monitor status with tracker-control. It is started automatically by gnome-session when the user logs in. Indexing can be started manually with tracker-control -s. Search settings can also be configured in the System Settings panel.

The Tracker database can be queried using the tracker-sparql command. View its manual page tracker-sparql(1) for more information.

Advanced settings

As noted above, many configuration options such as changing the GTK+ theme or the window manager theme are not exposed in the GNOME System Settings panel (gnome-control-center). Those users that want to configure these settings may wish to use the GNOME Tweaks (gnome-tweaks), a convenient graphical tool which exposes many of these settings.

GNOME settings (which are stored in the DConf database) can also be configured using the dconf-editor (a graphical DConf configuration tool) or the gsettings command line tool. The GNOME Tweaks does not do anything else in the background of the GUI; note though that you will not find all settings described in the following sections in it.

Appearance

Themes

GNOME uses Adwaita by default. To apply Adwaita dark only to GTK+2 applications use the following symlink:

$ ln -s /usr/share/themes/Adwaita-dark ~/.themes/Adwaita

To select new themes (move them to the appropriate directory and) use GNOME Tweaks or the GSettings commands below:

For the GTK+ theme:

$ gsettings set org.gnome.desktop.interface gtk-theme theme-name

For the icon theme:

$ gsettings set org.gnome.desktop.interface icon-theme theme-name

Note: The window manager theme follows the GTK+ theme. Using org.gnome.desktop.wm.preferences theme is deprecated and ignored.

Hide titlebar when maximized

Installmutter-hide-legacy-decorationsAUR. It changes a default setting in the window manager, so as to automatically hide the titlebar on legacy (non-headerbar) apps when they are maximized or tiled to the side.

GNOME Shell themes

The theme of GNOME Shell itself is configurable. To use a Shell theme, firstly ensure that you have the gnome-shell-extensions package installed. Then enable the User Themes extension, either through GNOME Tweaks or through the GNOME Shell Extensions webpage. Shell themes can then be loaded and selected using the GNOME Tweaks.

Apps grid folders

Tip: The gnome-catgen (gnome-catgen-gitAUR) script allows you to manage folders through the creation of files in ~/.local/share/applications-categories named after each category and containing a list of the desktop files belonging to apps you would like to have inside. Optionally, you can have it cycle through each app without a folder and input the desired category until you Ctrl-c or run out of apps.

In the dconf-editor navigate to org.gnome.desktop.app-folders and set the value of folder-children to an array of comma separated folder names:

Autostart

Tip: If the plus sign button in the Tweaks's Startup Applications section is unresponsive, try start the Tweaks from the terminal using the following command: gnome-tweaks. See the following forum thread.

Desktop

Icons on the Desktop

Up until GNOME 3.28, icons on the desktop were provided by Files which would draw a transparent window over the desktop containing the icons. As of GNOME 3.28 this functionality has been removed and desktop icons are no longer available in GNOME. Possible workarounds include using Nemo (a fork of Files which still has desktop icons functionality) or installing gnome-shell-extension-desktop-iconsAUR, which replicates the desktop icon functionality available in GNOME 3.26 and prior, but with some minor differences. For more information, please see the following Arch forum thread.

Lock screen and background

When setting the Desktop or Lock screen background, it is important to note that the Pictures tab will only display pictures located in /home/username/Pictures folder. If you wish to use a picture not located in this folder, use the commands indicated below.

Disable top left hot corner

Extensions

The catalogue of extensions is available at extensions.gnome.org. They can be installed and activated in a browser by setting the switch in the top left of the screen to ON and clicking Install on the popup window (if the extension in question is not installed). Installed extensions may be seen at extensions.gnome.org/local, where available updates can be checked. Installed extensions can also be enabled or disabled with gnome-tweaks.

GNOME Shell can be customized with extensions per user or system-wide. Installing extensions with pacman makes them available for all users of the system and automates the update process. The gnome-shell-extensions package provides a set of extensions maintained as part of the GNOME project (many of the included extensions are used by the GNOME Classic session). Users who want a taskbar but do not wish to use the GNOME Classic session may want to enable the Window list extension (provided by the gnome-shell-extensions package).

Fonts

Tip: If you set the Scaling factor to a value above 1.00, the Accessibility menu will be automatically enabled.

Fonts can be set for Window titles, Interface (applications), Documents and Monospace. See the Fonts tab in the Tweaks for the relevant options.

For hinting, RGBA will likely be desired as this fits most monitors types, and if fonts appear too blocked reduce hinting to Slight or None.

Input methods

GNOME has integrated support for input methods through IBus, only ibus and the wanted input method engine (e.g. ibus-libpinyin for Intelligent Pinyin) needed to be installed, after installation the input method engine can be added as a keyboard layout in GNOME's Regional & Language Settings.

Power

When you are using a laptop you might want to alter the following settings:

Don't suspend, when laptop lid is closed

The settings panel of GNOME doesn't provide an option for the user, to change the action, when laptop lid is closed. However gnome-tweaks can override the setting applied by systemd, on the tab General turn off the switch Suspend when laptop lid is closed. The system will therefore not Suspend to RAM (S3) on lid close.

To change the lid switch action system-wide, ensure that the setting described above is not turned off and edit the systemd settings in /etc/systemd/logind.conf. To turn off suspend on lid close, set HandleLidSwitch=ignore, as described in Power management#ACPI events.

Change critical battery level action

The settings panel does not provide an option for changing the critical battery level action. These settings have been removed from dconf as well. They are now managed by upower. Edit the upower settings in /etc/UPower/UPower.conf. Find these settings and adjust to your needs.