'''GVFS''' allows the mounting of virtual file systems (e.g. file systems over FTP or SMB) to be used by other applications, including the GNOME file manager Nautilus. This is done with the use of '''FUSE''': a user space virtual file system layer kernel module.

+

設定通常只涵蓋單一使用者，對於剩下的使用者，本篇並不提供建立多使用者系統樣板之教學。

−

To load the FUSE kernel module:

+

=== 系統設定 ===

−

# modprobe fuse

−

Or add the module to the '''MODULES''' array in {{ic|/etc/rc.conf}} so they will load at boot up, e.g.:

To help reduce touchpad interference you may wish to implement the settings below:

−

=== Using Gnome-tweak-tool ===

−

# pacman -S gnome-tweak-tool

+

* Disable touchpad while typing

+

* Disable scrolling

+

* Disable tap-to-click

−

This tool can customize fonts, themes, minimize & maximize buttons and some other useful settings like what action is taken when the lid is closed.

+

==== Network ====

−

A good customization tutorial is http://blog.fpmurphy.com/2011/03/customizing-the-gnome-3-shell.html which explores the power of gsettings.

+

[[NetworkManager]] is the native tool of the GNOME project to control network settings from the shell. It is installed by default as a dependency for {{Pkg|tracker}} package, which is a part of {{Grp|gnome}} group, and just needs to be [[NetworkManager#Enable NetworkManager|enabled]].

−

Version 3.0.3 only works if gnome-shell is installed (OK if forced to fallback mode), bug: https://bugzilla.gnome.org/show_bug.cgi?id=647132

+

While any other [[List_of_applications/Internet#Network_managers|network manager]] can be used as well, NetworkManager provides the full integration via the shell network settings and a status indicator applet {{Pkg|network-manager-applet}} (not required for GNOME).

−

===GDM Customization===

+

==== Online accounts ====

−

# su - gdm -s /bin/bash

+

Backends for the GNOME messaging application {{Pkg|empathy}} as well as the GNOME Online Accounts section of the System Settings panel are provided in a separate group: {{Grp|telepathy}}. See [[#Unable to add accounts in Empathy and GNOME Online Accounts]]. Some online accounts, such as [[ownCloud]], require {{Pkg|gvfs-goa}} to be installed for full functionality in GNOME applications such as [[GNOME Files]] and GNOME Documents [https://wiki.gnome.org/ThreePointSeven/Features/Owncloud].

−

$ dbus-launch

−

This command will print DBUS_SESSION_BUS_ADDRESS and DBUS_SESSION_BUS_PID. We need to export them

The GNOME shell has a search that can be quickly accessed by pressing the {{ic|Super}} key and starting to type. The {{Pkg|tracker}} package is installed by default as a part of {{Grp|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 {{ic|tracker-control -s}}. Search settings can also be configured in the ''System Settings'' panel.

−

$ export DBUS_SESSION_BUS_PID=4283

−

Check to see if dconf-service is running and if not, start it like this

+

The Tracker database can be queried using the ''tracker-sparql'' command. View its manual page {{man|1|tracker-sparql}} for more information.

−

$ /usr/lib/dconf/dconf-service &

+

=== Advanced settings ===

−

====Wallpaper====

+

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 Tweak Tool ({{Pkg|gnome-tweak-tool}}{{Broken package link|replaced by {{Pkg|gnome-tweaks}}}}), a convenient graphical tool which exposes many of these settings.

You will need to point to a file where the gdm user has permission to read, not in your home directory.

+

GNOME settings (which are stored in the DConf database) can also be configured using the [https://developer.gnome.org/dconf/unstable/dconf-editor.html ''dconf-editor''] (a graphical DConf configuration tool) or the [https://developer.gnome.org/gio/stable/GSettings.html ''gsettings''] command line tool. The GNOME Tweak Tool 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.

Since GDM 3 does not care about your gnome keyboard settings, you have to set your layout to Xorg config.

−

See here: [[Beginners'_Guide#Non-US_keyboard]]

−

=== Changing the GTK3 theme using settings.ini ===

+

To install a new theme or icon set, add the relevant {{ic|~/.local/share/themes}} or {{ic|~/.local/share/icons}} respectively (add to {{ic|/usr/share/}} instead of {{ic|~/.local/share/}} for the themes to be available systemwide.) They and other GUI settings can also be defined in {{ic|~/.config/gtk-3.0/settings.ini}}:

−

Similar to {{ic|~/.gtkrc-2.0}} for GTK2+ it is possible to set the GTK3 (Gnome 3) theme via {{ic|${XDG_CONFIG_HOME}/gtk-3.0/settings.ini}}. By default {{ic|${XDG_CONFIG_HOME} }} is interpreted as {{ic|~/.config}}.

+

{{hc|~/.config/gtk-3.0/settings.ini|<nowiki>

+

[Settings]

+

gtk-theme-name = Adwaita

+

# next option is applicable only if selected theme supports it

+

gtk-application-prefer-dark-theme = true

+

# set font name and dimension

+

gtk-font-name = Sans 10

+

</nowiki>}}

−

Only Adwaita theme exists in this moment for gtk3 and is available in '''gnome-themes-standard''' package.

GNOME will use the Adwaita light theme by default however a dark variant of this theme (called the Global Dark Theme) also exists and can be selected using the Tweak Tool or by editing the GTK+ 3 settings file - see [[GTK+#Dark theme variant]]. Some applications such as Image Viewer (''eog'') use the dark theme by default. It should be noted that the Global Dark Theme only works with GTK+ 3 applications; some GTK+ 3 applications may only have partial support for the Global Dark theme. Qt and GTK+ 2 support for the Global Dark Theme may be added in the future.

{{Note | With gnome-tweak-tool version 3.0.3 and later, you can place icon theme you wish to use inside ~/.icons.}}

+

To change the titlebar height, create the following file, adjusting the padding as desired:

−

Usefully, Gnome 3 is able to use Gnome 2 icon themes, which means you're not stuck with the default set. To do this, simply copy your desired icon theme's directory to ~/.icons. For example:

+

{{hc|~/.config/gtk-3.0/gtk.css|

+

.header-bar {

+

padding-top: 3px;

+

padding-bottom: 3px;

+

font-size: 9px;

+

}

−

$ cp -R /home/user/Desktop/my_new_icon_theme ~/.icons

+

.header-bar .button {

+

padding-top: 5px;

+

padding-bottom: 5px;

+

}

−

The new icon theme 'my_new_icon_theme' will now be selectable using the gnome-tweak-tool (under 'Interface'), otherwise it can be set with no need of gnome-tweak-tool by adding the gtk-icon-theme-name entry inside ${XDG_CONFIG_HOME}/gtk-3.0/settings.ini.

−

{{hc|${XDG_CONFIG_HOME}/gtk-3.0/settings.ini|2=

−

.....

−

gtk-icon-theme-name = my_new_icon_theme

−

.....

}}

}}

−

=== Start program automatically after login to GNOME 3 ===

+

====== Titlebar button order ======

−

You can specify which programs to start automatically after login using the '''gnome-session-properties''' tool, which is a part of the '''gnome-session''' package.

{{Tip|The colon indicates which side of the titlebar the window buttons will appear.}}

+

+

====== Hide titlebar when maximized ======

+

+

*[[Install]] {{AUR|mutter-hide-legacy-decorations}}. 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.

+

+

*[[Install]] {{AUR|maximus}}. To start the application, execute ''maximus'' from a terminal. When running, the daemon will automatically maximize windows. It will undecorate maximized windows and redecorate them when they are unmaximized. If you do not want all windows to start maximized, run {{ic|maximus -m}} instead. Note that this will only work with windows decorated by the window manager; applications that use client-side decoration such as [[GNOME Files]] will not be undecorated when maximized.

+

+

===== GNOME Shell themes =====

+

+

The theme of GNOME Shell itself is configurable. To use a Shell theme, firstly ensure that you have the {{Pkg|gnome-shell-extensions}} package installed. Then enable the ''User Themes'' extension, either through GNOME Tweak Tool or through the [https://extensions.gnome.org GNOME Shell Extensions] webpage. Shell themes can then be loaded and selected using the GNOME Tweak Tool.

+

+

There are a number of GNOME Shell themes available [https://aur.archlinux.org/packages.php?O=0&K=gnome-shell-theme&do_Search=Go&PP=50&SB=v&SO=d in the AUR].

+

+

Shell themes can also be downloaded from [http://gnome-look.org/index.php?xcontentmode=191 gnome-look.org].

+

+

==== Desktop ====

+

+

Various Desktop settings can be applied.

+

+

===== Icons on the Desktop =====

+

+

See [[GNOME Files#Desktop Icons]].

+

+

===== 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 {{ic|/home/''username''/Pictures}} folder. If you wish to use a picture not located in this folder, use the commands indicated below.

{{Note|The GNOME Shell browser plugin which allows users to install extensions from [https://extensions.gnome.org extensions.gnome.org] is not compatible with Chrome/Chromium versions 35 and over. Users wishing to install extensions from the webpage will have to use a compatible browser such as [[Firefox]] or [[GNOME Web]].}}

+

+

GNOME Shell can be customized with extensions per user or system-wide.

+

+

The catalogue of extensions is available at [https://extensions.gnome.org extensions.gnome.org]. By a user they can be installed and activated in the browser by setting the switch in the top left of the screen to '''ON''' and clicking '''Install''' on the resulting dialog (if the extension in question is not installed). After installation it is shown in the [https://extensions.gnome.org/local/ extensions.gnome.org/local/] tab, which has to be visited as well to check for available updates. Installed extensions can also be enabled or disabled using {{Pkg|gnome-tweak-tool}}{{Broken package link|replaced by {{Pkg|gnome-tweaks}}}}.

+

+

More information about GNOME shell extensions is available on the [https://extensions.gnome.org/about/ GNOME Shell Extensions about page].

+

+

[[Installing]] extensions via a package makes them available for all users of the system and automates the update process.

+

+

The {{Pkg|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 {{Pkg|gnome-shell-extensions}} package).

+

+

==== Input methods ====

+

+

GNOME has integrated support for input methods through [[IBus]], only {{Pkg|ibus}} and the wanted input method engine (e.g. {{Pkg|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.

+

+

==== 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 Tweak Tool 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''.

+

+

==== Startup applications ====

+

+

To start certain applications on login, copy the relevant {{ic|.desktop}} file from {{ic|/usr/share/applications/}} to {{ic|~/.config/autostart/}}.

+

+

The same effect can be achieved using the Tweak Tool.

+

+

{{Tip|If the plus sign button in the Tweak Tool's Startup Applications section is unresponsive, try start the Tweak Tool from the terminal using the following command: {{ic|gnome-tweak-tool}}. See the following [https://bbs.archlinux.org/viewtopic.php?pid&#61;1413631#p1413631 forum thread].}}

+

+

{{Note|The ''gnome-session-properties'' dialog was removed as of GNOME 3.12. It can be added back by [[install]]ing the {{AUR|gnome-session-properties}} package.}}

+

+

==== Power ====

+

+

The basic power settings that may want to be altered (these example settings assume the user is using a laptop - change them as desired):

The GNOME Tweak Tool, as of version 3.17.1, can optionally ''inhibit'' the ''systemd'' setting for the lid close ACPI event.[http://ftp.gnome.org/pub/GNOME/sources/gnome-tweak-tool/3.17/gnome-tweak-tool-3.17.1.news] To ''inhibit'' the setting, start the Tweak Tool and, under the power tab, check the ''Don't suspend on lid close'' option. This means that the system will do nothing on lid close instead of suspending - the default behaviour. Checking the setting creates {{ic|~/.config/autostart/ignore-lid-switch-tweak.desktop}} which will autostart the Tweak Tool's inhibitor.

+

+

If you do not want the system to suspend or do nothing on lid close, you will need to ensure that the setting described above is '''not''' checked and then configure ''systemd'' with {{ic|1=HandleLidSwitch=''preferred_behaviour''}} as described in [[Power management#ACPI events]].

+

+

===== Change critical battery level action =====

+

+

The System Settings panel only allows the user to choose between ''Suspend'' or ''Hibernate''. To choose another option such as ''Do Nothing'' open the {{ic|dconf-editor}} and navigate to {{ic|org.gnome.settings-daemon.plugins.power}}. Edit the {{ic|"critical-battery-action"}} value to {{ic|"nothing"}}.

+

+

==== Sort applications into application (app) folders ====

+

+

{{Tip|The [https://github.com/prurigro/gnome-catgen gnome-catgen] ({{AUR|gnome-catgen-git}}) script allows you to manage folders through the creation of files in {{ic|~/.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 {{ic|org.gnome.desktop.app-folders}} and set the value of {{ic|folder-children}} to an array of comma separated folder names:

However, certain hotkeys cannot be changed directly via system settings. In order to change these keys, use ''dconf-editor''. An example of particular note is the hotkey {{ic|Alt-}} + {{ic|`}} (the key above {{ic|Tab}} on US keyboard layouts). In GNOME Shell it is pre-configured to cycle through windows of an application, however it is also a hotkey often used in the [[Emacs]] editor. It can be changed by opening ''dconf-editor'' and modifying the ''switch-group'' key found in {{ic|org.gnome.desktop.wm.keybindings}}.

+

+

It is possible to manually change the keys via an application's so-called '''accel''' map file. Where it is to be found is up to the application: For instance, Thunar's is at {{ic|~/.config/Thunar/accels.scm}}, whereas Files's is located at {{ic|~/.config/nautilus/accels}} and {{ic|~/.gnome2/accels/nautilus}} on old release.

+

+

The file should contain a list of possible hotkeys, each unchanged line commented out with a leading ";" that has to be removed for a change to become active.

+

For example to replace the hotkey used by Files to move files to the trash folder, change the line:

+

+

; (gtk_accel_path "<Actions>/DirViewActions/Trash" "<Primary>Delete")

+

to this:

+

+

(gtk_accel_path "<Actions>/DirViewActions/Trash" "Delete")

+

+

The file is regenerated regularly so do not comment the file. The uncommented line will stay but every comment you add will be lost.

+

+

==== Keyboard switch with command ====

+

+

To have keyboard shortcut '''Alt''' + '''Shift''' switch keyboards:

+

+

Open Gnome-Tweak-Tool (or Keyboard Settings, in GNOME 3.16) and set ''Typing'' > ''Modifiers-only input sources'' > ''select Alt-shift''. For more information see also the forum [https://bbs.archlinux.org/viewtopic.php?id=152127 thread].

+

+

==== XkbOptions keyboard options ====

+

+

Using the '''dconf-editor''', navigate to the key named {{ic|org.gnome.desktop.input-sources.xkb-options}} and add desired XkbOptions (e.g. ''caps:swapescape'') to the list.

+

+

See {{ic|/usr/share/X11/xkb/rules/xorg}} for all XkbOptions and {{ic|/usr/share/X11/xkb/symbols/*}} for the respective descriptions.

+

+

{{Note|To enable the {{ic|Ctrl+Alt+Backspace}} combination to terminate Xorg, use the {{Pkg|gnome-tweak-tool}}{{Broken package link|replaced by {{Pkg|gnome-tweaks}}}}. Within the '''Tweak Tool''', navigate to ''Typing > Key sequence to kill the X server'' and select the option {{ic|Ctrl+Alt+Backspace}} from the dropdown menu.}}

+

+

==== De-bind Windows key ====

+

+

By default, the 'Windows key' will open the GNOME Shell overview mode. You can unbind this key by running the command below

+

+

$ gsettings set org.gnome.mutter overlay-key 'Foo'

+

+

=== Disks ===

+

+

GNOME provides a disk utility to manipulate storage drive settings. These are some of its features:

+

+

* '''Enable write cache''' is a feature that most hard drives provide. Data is cached and allocated at chosen times to improve system performance. Not recommended unless the computer has a backup battery pack or is a laptop as data would be lost on power failure.

+

: ''Settings'' > ''Drive Settings'' > ''Write Cache'' > '''On'''

+

* '''Automatic Mount Options''' can mount drives and partitions that are GPT based - will use default, recommended options.

{{Tip|Desktop entries can be hidden by editing the {{ic|.desktop}} files themselves. See [[Desktop entries#Hide desktop entries]].}}

+

+

Use the ''Main Menu'' application (provided by the {{Pkg|alacarte}} package) to hide any applications you do not wish to show in the menu.

+

+

=== Screencast recording ===

+

+

GNOME features built-in screencast recording with the '''Ctrl''' + '''Shift''' + '''Alt''' + '''R''' key combination. A red circle is displayed in the bottom right corner of the screen when the recording is in progress. After the recording is finished, a file named {{ic|Screencast from %d%u-%c.webm}} is saved in the Videos directory. In order to use the screencast feature the gst plugins need to be installed.

The displayed folders are specified in {{ic|~/.config/user-dirs.dirs}} and can be altered with any editor. An execution of {{ic|xdg-user-dirs-update}} will change them again, thus it may be advisable to set the file permissions to read-only.

+

=== Log out delay ===

−

=== Setting the default terminal via console ===

+

To eliminate the default 60 second delay when logging out:

−

{{ic|gsettings}}, which replaces {{ic|gconftool-2}} in Gnome 3, is used to set e. g. the default terminal manually. The setting is relevant for ''nautilus-open-terminal''.

GNOME introduced HiDPI support in version 3.10. If your display does not provide the correct screen size through EDID, this can lead to incorrectly scaled UI elements. As a workaround you can open ''dconf-editor'' and find the key {{ic|scaling-factor}} in {{ic|org.gnome.desktop.interface}}. Set it to {{ic|1}} to get the standard scale.

−

=== Disable accessibility icon in panel ===

+

Also see [[HiDPI]].

−

First deactivate it as startup-service: [[GNOME_3#Start_program_automatically_after_login_to_GNOME_3]]

−

After that create a folder named '''noa11y.icon@panel.ui''' in '''$HOME/.local/share/gnome-shell/extensions'''. In this folder create two files. The first one is named '''extension.js''' and has this content:

+

=== Passwords and keys (PGP Keys) ===

−

const Panel = imports.ui.panel;

−

function main() {

+

You can use the Passwords and Keys program (''seahorse'') to create a PGP key as it is a front end for [[GnuPG]] and installs it as dependency. This may be useful in the future (for instance if to encrypt a file). Create a key as shown below (the process may take about 10 minutes):

The default size of a new terminal can be adjusted in the menu ''Edit > Profile preferences ''.

−

}

+

−

Now restart the gnome-shell (press '''ALT+F2''', type '''r''' and press '''Enter''') and the icon is away. If this extensions stops working adjust the shell-version number in the metadata-file according to your version.

+

==== New terminals adopt current directory ====

+

+

By default new terminals open in the {{ic|$HOME}} directory. To have new terminals adopt the current working directory: {{ic|source /etc/profile.d/vte.sh}}. Add the command to the shell configuration to retain the behaviour. [http://unix.stackexchange.com/questions/93476/gnome-terminal-keep-track-of-directory-in-new-tab]

+

+

==== Pad the terminal ====

+

+

To pad the terminal (create a small, invisible border between the window edges and the terminal contents) create the file below:

+

+

{{hc|~/.config/gtk-3.0/gtk.css|<nowiki>

+

VteTerminal,

+

TerminalScreen {

+

padding: 10px 10px 10px 10px;

+

-VteTerminal-inner-border: 10px 10px 10px 10px;

+

}</nowiki>}}

+

+

==== Disable blinking cursor ====

+

+

Since GNOME 3.8 and the migration to GSettings and DConf the key required to modify in order to disable the blinking cursor in the Terminal differs slightly in contrast to the old GConf key. To disable the blinking cursor in GNOME 3.8 and above use:

+

+

$ gsettings set org.gnome.desktop.interface cursor-blink false

+

+

To disable the blinking cursor in Terminal only use (make sure profile uid is correct one):

Note that {{ic|gnome-settings-daemon}}, from the package of the same name, must be running for this and other settings changes to take effect in GNOME applications - see [[#Configuration]]{{Broken section link}}.

+

+

==== Disable confirmation window when closing Terminal ====

+

+

The Terminal will always display a confirmation window when trying to close the window while one is logged in as root. To avoid this, execute the following:

If the above method doesn't work, you can try disabling the accessibility icon system wide. Edit the file '''/usr/share/gnome-shell/js/ui/panel.js''', find this line:

+

To use custom colours and gradients for your desktop background, you will first need to set either a transparent picture or else a non-existent picture as your desktop background. For instance, the command below will set a non-existent picture as the background.

−

'a11y': imports.ui.status.accessibility.ATIndicator,

−

and comment it out e.g.:

−

/* 'a11y': imports.ui.status.accessibility.ATIndicator, */

−

Afterwards restart the shell.

−

=== Disable bluetooth icon in panel ===

+

$ gsettings set org.gnome.desktop.background picture-uri none

−

First deactivate it as startup-service: [[GNOME_3#Start_program_automatically_after_login_to_GNOME_3]]

−

After that create a folder named '''nobluetooth.icon@panel.ui''' in '''$HOME/.local/share/gnome-shell/extensions'''. In this folder create two files. The first one is named '''extension.js''' and has this content:

+

At this point, the desktop background should be a flat colour - the default colour setting is for a deep blue.

−

const Panel = imports.ui.panel;

+

−

+

For a different flat colour you need only change the primary colour setting:

−

function main() {

+

$ gsettings set org.gnome.desktop.background primary-color <my color>

−

Panel.STANDARD_TRAY_ICON_SHELL_IMPLEMENTATION['bluetooth'] = ''''''';

+

where <my color> is a hex value (such as ''ffffff'' for white).

−

}

+

−

The second one is named '''metadata.json''' and has this content:

+

For a colour gradient, you will also need to change secondary colour setting {{ic|org.gnome.desktop.background secondary-color}} and select a shading type. For instance, if you want a horizontal gradient, execute the following:

If you are using a transparent picture as your background, you can set the opacity by executing the following:

−

"name": "nbluetooth",

+

$ gsettings set org.gnome.desktop.background picture-opacity <value>

−

"description": "Turn off the bluetooth icon in the panel"

+

where value is a number between 1 and 100 (100 for maximum opacity).

−

}

+

−

Now restart the gnome-shell (press '''ALT+F2''', type '''r''' and press '''Enter''') and the icon is away. If this extensions stops working adjust the shell-version number in the metadata-file according to your version.

+

=== Transitioning backgrounds ===

−

=== Middle Mouse Button Emulation ===

+

GNOME can transition between different wallpapers at specific time intervals. This is done by creating an XML file specifying the pictures to be used and the time interval. For more information on creating such files, see the following [http://www.linuxjournal.com/content/create-custom-transitioning-background-your-gnome-228-desktop article].

* {{App|[[Wallpapoz]]|Wallpapoz is a tool that provides dynamic wallpapers for GNOME and Xfce desktops.|https://vajrasky.wordpress.com/|{{AUR|wallpapoz}}{{Broken package link|{{aur-mirror|wallpapoz}}}}}}

+

* {{App|CreBS|A Python/GTK application used to create and set desktop wallpaper slideshows for GNOME.|http://www.obfuscatepenguin.net/|{{AUR|crebs}}{{Broken package link|{{aur-mirror|crebs}}}}}}

−

=== Battery icon ===

+

For setting the XML file as the default background, see [[#Lock screen and background]].

−

To have battery tray icon, install gnome-power-manager package:

−

# pacman -S gnome-power-manager

−

=== Xmonad ===

+

=== Custom GNOME sessions ===

−

Upgrading to Gnome 3 will (most-likely) break your xmonad setup. You can use xmonad again by forcing fallback mode (see below) and creating the following two files:

+

It is possible to create custom GNOME sessions which use the GNOME session manager but start different sets of components ([[Openbox]] with [[tint2]] instead of GNOME Shell for example).

−

{{hc|/usr/share/gnome-session/sessions/xmonad.session|2=

+

Two files are required for a custom GNOME session: a session file in {{ic|/usr/share/gnome-session/sessions/}} which defines the components to be started and a [[desktop entry]] in {{ic|/usr/share/xsessions}} which is read by the [[display manager]]. An example session file is provided below:

+

{{hc|/usr/share/gnome-session/sessions/gnome-openbox.session|<nowiki>

[GNOME Session]

[GNOME Session]

−

Name=Xmonad session

+

Name=GNOME Openbox

−

RequiredComponents=gnome-panel;gnome-settings-daemon;

+

RequiredComponents=openbox;tint2;gnome-settings-daemon;

−

RequiredProviders=windowmanager;notifications;

+

</nowiki>}}

−

DefaultProvider-windowmanager=xmonad

−

DefaultProvider-notifications=notification-daemon

−

}}

−

{{hc|/usr/share/xsessions/xmonad-gnome-session.desktop|2=

+

And an example desktop file:

+

{{hc|/usr/share/xsessions/gnome-openbox.desktop|<nowiki>

[Desktop Entry]

[Desktop Entry]

−

Name=Xmonad GNOME

+

Name=GNOME Openbox

−

Comment=Tiling window manager

+

Exec=gnome-session --session=gnome-openbox

−

TryExec=/usr/bin/gnome-session

+

</nowiki>}}

−

Exec=gnome-session --session=xmonad

+

−

Type=XSession

+

{{Note|GNOME Session calls upon the {{ic|.desktop}} files of each of the components to be started. If a component you wish to start does not provide a {{ic|.desktop}} file, you must create a suitable desktop entry in a directory such as {{ic|/usr/local/share/applications}}.}}

−

}}

+

+

== Troubleshooting ==

+

+

=== Shell freezes ===

+

+

In the event of a Shell freeze (which might be caused by certain appearance tweaks, malfunctioning extensions or perhaps a lack of available memory) restarting the Shell by pressing {{ic|Alt}} + {{ic|F2}} and then entering '''r''' may not be possible.

+

+

In this case, try switching to another TTY ('''Ctrl''' + '''Alt''' + '''F2''') and entering the following command: {{ic|pkill -HUP gnome-shell}}. It may take a few seconds before the Shell successfully restarts. Restarting the shell in this fashion should not log the user out but it is a good idea to try and ensure that all work is saved anyway.

+

+

If this fails, the [[Xorg]] server will need to be restarted either by: {{ic|pkill X}} for console logins or: {{ic|systemctl restart gdm}} for GDM logins. Bear in mind that restarting the Xorg server will log the user out so try to ensure that all work is saved before attempting this.

+

+

=== Incorrect application defaults ===

+

+

When installing applications for the first time you may find that GNOME has the wrong application associated to a certain protocols - for instance, ''easytag'' becomes the folder handler instead of [[GNOME Files]].

+

+

For GNOME Files see the following page: [[GNOME Files#Files is no longer the default file manager]].

+

+

For Document Viewer, run the following command:

+

$ xdg-mime default evince.desktop application/pdf

+

+

For other applications, default handler settings are detailed on the following page: [[Default applications]].

+

+

Optionally, you can [[install]] {{AUR|gnome-defaults-list}}. It will place your configuration file at {{ic|/etc/gnome/defaults.list}}.

+

+

=== Tracker & Documents do not list any local files ===

+

+

In order for Tracker (and, therefore, Documents) to detect your local files, they must be stored in an [http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html XDG compliant directory] (such as 'Documents' or 'Music'). For more information, see [[XDG user directories]].

+

+

You can also configure Tracker to recursively search inside specific directories such as your home directory. These settings can be made using {{ic|tracker-preferences}}.

+

+

=== Unable to add accounts in Empathy and GNOME Online Accounts ===

+

+

Empathy, the engine behind integrated messaging, GNOME Online Accounts, and all other system settings based on messaging accounts will not function correctly unless the {{Grp|telepathy}} group of packages or at least one of the backends ({{Pkg|telepathy-gabble}}, or {{Pkg|telepathy-haze}}, for example) is [[install]]ed. View descriptions of ''telepathy'' components on the [http://telepathy.freedesktop.org/wiki/Components freedesktop.org telepathy wiki].

+

+

{{Note|[[Avahi]] daemon is required for connecting with the People Nearby account, and also in order for some desktop extensions to work correctly like [https://extensions.gnome.org/extension/746/chat-status/ Chat Status]}}

+

+

=== Cannot change settings in dconf-editor ===

+

+

When one cannot set settings in {{pkg|dconf}}, it is possible their dconf user settings are corrupt. In this case it is best to delete the user dconf files in {{ic|~/.config/dconf/user*}} and set the settings in dconf-editor after.

+

+

=== When an extension breaks the shell ===

+

+

When enabling shell extensions causes GNOME breakage, you should first remove the ''user-theme'' and ''auto-move-windows'' extensions from their installation directory.

+

+

The installation directory could be one of {{ic|~/.local/share/gnome‑shell/extensions}}, {{ic|/usr/share/gnome‑shell/extensions}} or {{ic|/usr/local/share/gnome‑shell/extensions}}. Removing these two extension-containing folders may fix the breakage. Otherwise, isolate the problem extension with trial‑and‑error.

+

+

Removing or adding an extension-containing folder to the aforementioned directories removes or adds the corresponding extension to your system. Details on GNOME Shell extensions are available at the [https://live.gnome.org/GnomeShell/Extensions GNOME web site.]

+

+

If you have trouble with uninstalling an extension via [https://extensions.gnome.org/local/ extensions.gnome.org/local], then probably they have been installed as system-wide extensions with the {{Pkg|gnome-shell-extensions}} package. Removing the package again obviously affects all user accounts.

+

+

=== Extensions do not work after GNOME 3 update ===

+

+

{{Note|Please bear in mind that whilst the methods below will allow you to '''try''' and activate an extension with an unsupported version of GNOME Shell, it is by no means a guarantee that the extension will work successfully. The most likely outcome of trying to activate such an extension is that GNOME Shell will crash and then restart.}}

+

+

Before trying the workarounds below, check if an update is available for the extension by visiting [https://extensions.gnome.org/local extensions.gnome.org/local].

+

+

If there is no update for your current GNOME version yet, use the following command to disable version validation for extensions:

Alternatively, you could modify the extension itself, changing the supported shell version to satisfy the version validation. See the method below.

−

The next time you log in, you'll have the ability to choose ''Xmonad GNOME'' as your session.

+

Locate the folder where your extensions are installed. It might be {{ic|~/.local/share/gnome-shell/extensions}} or {{ic|/usr/share/gnome-shell/extensions}}.

−

== Enabling fallback mode==

+

Edit each occurrence of {{ic|metadata.json}} which appears in each extension sub-folder.

−

Your session will automatically start in fallback mode if gnome-shell is not present or if your desktop cannot handle graphics acceleration (such as running in a Virtual Machine or on old hardware). If you want to enable it while having gnome-shell installed, open gnome-control-center. Open System Info > Graphics. Change ''Forced Fallback Mode'' to ''ON''.

+

{| border="0"

+

| Insert: || {{ic|"shell-version": ["3.x"]}}

+

|-

+

| Instead of (for example): || {{ic|"shell-version": ["3.4"]}}

+

|}

−

== Enabling hidden features ==

+

{{ic|"3.x"}} indicates the extension works with every shell version. If it breaks, you will know to change it back.

−

Gnome 3.0 hides a lot of useful options which you can customize with '''dconf-editor''' or '''gconf-editor''' for settings not yet migrated to dconf.

+

=== Keyboard shortcut do not work with only conky running ===

−

=== Changing Hotkeys ===

+

The GNOME shell keyboard shortcuts like {{ic|Alt+F2}}, {{ic|Alt+F1}}, and the media key shortcuts do not work if conky is the only program running. However, if another application like ''gedit'' is running, then the keyboard shortcuts work.

Open nautilus, select any file/directory, then click "Edit" from the menubar, and hover over the "Move to Trash" menuitem.

+

own_window_transparent yes

−

While hovering, push '''delete''', and default accel will be unset. Now push the key that you want to set as accel.

+

own_window_argb_visual yes

−

i.e. Pushing again '''delete''', will make the accel change to "del".

+

own_window_type dock

+

own_window_class Conky

+

own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

−

Make sure you have selected a file, else the "Move to Trash" menuitem will be greyed out.

+

=== Unable to apply stored configuration for monitors ===

−

You should disable "can-change-accels" afterwards, to prevent accidental accel changes.

−

== How to shutdown through the Status menu ==

+

If you encounter this message try to disable the ''xrandr'' {{ic|gnome-settings-daemon plugin}}:

−

For now, the Shutdown option seems to be hidden if the user presses the Status menu on the upper right. If you want to shutdown your system through the Status menu, click on it and then press the '''Alt''' button. The "'''Suspend'''" option will instantly turn into "Power off...", as long as you are pressing the Alt button, which will allow you to properly shutdown your system.

+

$ dconf write /org/gnome/settings-daemon/plugins/xrandr/active false

−

You can also install the "Alternative Status Menu" extension (see the section on Enabling Extensions, below). This will put a permanent "Power Off" option in the Status menu below the usual suspend option.

+

=== Consistent cursor theme ===

−

== Enabling integrated messaging ==

+

See [[Cursor themes#Desktop environments]].

−

Empathy, the engine behind the integrated messaging, and all of the system settings based on your messaging accounts will not show up unless the '''telepathy''' group of packages or at least one of the backends ('''telepathy-gabble''', or '''telepathy-haze''', for example) is installed. These are not included in the default Arch GNOME installs and the Empathy interface doesn't give a nice error message, it just fails to work silently. You can install them:

+

=== Windows cannot be modified with Alt-Key + mouse-button ===

−

# pacman -S telepathy

+

In GNOME 3.6 and above, the mouse button modifier (the key that allows you to drag a window from a location other than the titlebar) is the {{ic|Super}} key instead of the {{ic|Alt}} key which was used in the past. The change was made in response to the following [https://bugzilla.gnome.org/show_bug.cgi?id=607797 bug report].

−

== Enabling extensions ==

+

To change the mouse button modifier back to the {{ic|Alt}} key, execute the following:

Gnome Shell can be customised to an extent with extensions that have been written by others. These provide functionality like having a dock that is always present, and being able to change the shell theme. More details on the functionality of currently available extensions is given [http://www.webupd8.org/2011/04/gnome-shell-extensions-additional.html here] You can use the [https://aur.archlinux.org/packages.php?ID=47501 gnome-shell-extensions-git] package in the AUR to install them or [http://www.archlinux.org/packages/?sort=&q=gnome-shell-extension&maintainer=&last_update=&flagged=&limit=50 install them individually using the [extra] extensions' snapshots] . Restart Gnome to enable them.

+

{{Note|It is not possible to change this with ''System settings'' > ''Keyboard'' > ''Shortcuts''}}

−

If installing the extensions causes Gnome to stop working then you must remove the user-theme extension and and the auto-move-windows extension from their installation directory (could be in ~/.local/share/gnome-shell/extensions or /usr/share/gnome-shell/extensions or /usr/local/share/gnome-shell/extensions). Removing or adding extensions to these directories will remove or install them form the system. More details on Gnome Shell extensions are available [https://live.gnome.org/GnomeShell/Extensions here].

+

=== Slow loading of system icons/slow GDM login ===

−

== Troubleshooting ==

+

Problems with the loading of system icons, such the ones in the title bar of Files, might be solved by executing the following command:

+

# gdk-pixbuf-query-loaders --update-cache

−

=== My screen isn't locked after resume from suspend/hibernate ===

+

Running the aforementioned command may also fix repeated occurrences of the "Oh no! Something has gone wrong!" error screen and/or very slow loading and login with GDM as described in the following [https://bbs.archlinux.org/viewtopic.php?pid=1414157 forum thread].

−

Screen lock does only work when you suspend through gnome status menu. If you suspend or hibernate with powerbutton/etc. you screen is not locked after resume. This problem occours because of an config failure in dconf, so just open dconf-editor and change lock-use screensaver to false (unchecked) in org/gnome/power-manager. Your screen will no be locked after resume, regardless whether you used gnome status menu or power button or key combination.

+

=== Artifacts when maximizing windows ===

−

For more information see bugreport: [https://bugzilla.redhat.com/show_bug.cgi?id=698135#c8 Screen gets no more locked after suspend#Comment 8]

−

=== My GTK2+ apps show segfaults and won't start ===

+

Maximizing windows may cause artifacts as of GNOME 3.12.0 - see the following [https://bbs.archlinux.org/viewtopic.php?id=183617 forum thread] and [https://bugzilla.gnome.org/show_bug.cgi?id=728385 bug report]. A solution is detailed in the following section: [[#Tear-free video with Intel HD Graphics]].

−

That usually happens when '''oxygen-gtk''' is installed. That theme conflicts somehow with GNOME 3's or/and GTK3 settings and when it has been set as a GTK2 theme, the GTK2 apps segfault with errors like:

According to [https://bugzilla.gnome.org/show_bug.cgi?id=711028#c2 this bug report], DRI3 includes the {{ic|buffer_age}} extension that allows GNOME Shell's Mutter compositor to sync windows to vblank in an efficient way. [[Intel graphics#Direct Rendering Infrastructure 3 .28DRI3.29|Enable]]{{Broken section link}} it in the Xorg driver. You can change {{ic|AccelMethod}} to your preference in the configuration file created, but the line must be included when the file is created; otherwise, {{ic|gnome-session}} will crash upon login in a non-Wayland session.

Enabling the [[Intel graphics#Tear-free video|Xorg Intel TearFree option]] is a known workaround for tearing problems on Intel adapters. However, the way this option acts makes it redundant with the use of a compositor (it increases memory consumption and lowers performance, see [https://bugs.freedesktop.org/show_bug.cgi?id=37686#c123 the original bug report's final comment]).

{{Note|1=This workaround has been [https://bugzilla.gnome.org/show_bug.cgi?id=711028#c0 reported] to have side effects and may not fix tearing in all cases.}}

+

GNOME Shell's Mutter compositor has a tweak known to address tearing problems (see [https://bugzilla.gnome.org/show_bug.cgi?id=657071#c1 the original suggestion for this fix] and its mention in [https://bugs.freedesktop.org/show_bug.cgi?id=37686#c59 the Freedesktop bug report]). To enable this tweak, append the following line to {{ic|/etc/environment}}: {{ic|1=CLUTTER_PAINT=disable-clipped-redraws:disable-culling}}. Then restart the Xorg server.

Some laptops have a touchpad lock button that disables the touchpad so that users can type without worrying about touching the touchpad. Currently, it appears that although GNOME can lock the touchpad by pressing this button, it cannot unlock it. If the touchpad gets locked you can run the following to unlock it:

The current "workaround" is to '''remove''' '''oxygen-gtk''' from the system completely and set another theme for your apps.

+

=== GNOME Shell keyboard sources menu not visible ===

−

=== I use the ATI Catalyst driver and I encounter glitches and artifacts while using GNOME Shell ===

+

A menu showing the keyboard input sources (for example 'en' for an English keyboard layout) should be visible next to the status area containing icons for network, volume and power sources. If the keyboard sources menu is not visible, this is probably because you have configured your [[Xorg]] keyboard layout in a way which GNOME does not recognise.

−

For the moment, Catalyst is not proposed to be used while running GNOME Shell. The opensource ATI driver, xf86-video-ati, however, seems to be working properly with the GNOME 3 composited desktop.

+

To ensure that the menu is visible, remove any Xorg keyboard configuration you might have created and set the keyboard locale using [[Keyboard_configuration_in_Xorg#Using_localectl|localectl]].

−

=== I have multiple monitors and the Dock extension appears stuck between them ===

+

Upon running the command and then logging out, you should find that the keyboard input sources menu is visible in GDM and in the GNOME Shell desktop. See [http://blogs.gnome.org/mclasen/2012/09/21/input-sources-in-gnome/ Input sources in GNOME] for more information.

−

If you have multiple monitors configured using Nvidia Twinview, the dock extension may get sandwiched in-between the monitors. You can edit the source of this extension to reposition the dock to a position of your choosing.

+

=== Mouse cursor missing ===

−

Edit '''/usr/share/gnome-shell/extensions/dock@gnome-shell-extensions.gnome.org/extension.js''' and locate this line in the source:

+

When using a separate [[window manager]] with ''gnome-settings-daemon'', the mouse cursor may vanish. Run:

The first parameter is the X position of the dock display, by subtracting 15 pixels as opposed to 2 pixels from this it correctly positioned on my primary monitor, you can play around with any X,Y coordinate pair to position it correctly.

If [[XScreenSaver]] is installed, ensure that it is not running at startup, see [[#Startup applications]].

−

=== There are no event sounds for Empathy and other programs ===

+

=== PulseAudio system-wide causes delay in GNOME and GDM ===

−

The '''sound-theme-freedesktop''' package must be installed for the default event sounds:

−

# pacman -S sound-theme-freedesktop

−

If you're using [[OSS]], you may want to install '''libcanberra-oss''' [https://aur.archlinux.org/packages.php?ID=31163 from AUR].

−

=== Editing hotkeys via can-change-accels fails ===

+

If you are running [[PulseAudio]] in system-wide mode, the PulseAudio 7.0 upgrade breaks [[GDM]] and GNOME.

−

It is also possible to manually change the keys via an application's so-called accel map file. Where it is to be found is up to the application: For instance, Thunar's is at {{ic|~/.config/Thunar/accels.scm}}, whereas Nautilus's is located at {{ic|~/.gnome2/accels/nautilus}}. The file should contain a list of possible hotkeys, each unchanged line commented out with a leading ";" that has to be removed for a change to become active.

+

See [https://bbs.archlinux.org/viewtopic.php?id=203051 this forum post] for more information.

The dash is the "toolbar" that appears, by default, [[wikipedia:GNOME_Shell#Design_components|on the left]] when you click Activities. Applications can be reordered in the dash by dragging and dropping. If this fails, and/or causes GNOME to crash, try [https://bbs.archlinux.org/viewtopic.php?id=171689 changing your icon theme].

−

# pacman -S notification-daemon

−

=== [fallback mode] Panels and applets don't respond to right click to remove, etc, as in GNOME 2 ===

+

== See also ==

−

Check Configuration Editor: /apps/metacity/general/mouse_button_modifier. This modifier key (<Alt>, <Super>, etc) used for normal windows is also used by panels and their applets.

−

=== Show Desktop: ALT+STRG+D does not Work ===

+

* [http://www.gnome.org/ The Official Website of GNOME]

−

The GNOME developers treated the corresponding binding as bug (see https://bugzilla.gnome.org/show_bug.cgi?id=643609) due to Minimization being deprecated. To show the desktop again assign ALT+STRG+D to the following setting:

預設應用程式

Mouse and touchpad

To help reduce touchpad interference you may wish to implement the settings below:

Disable touchpad while typing

Disable scrolling

Disable tap-to-click

Network

NetworkManager is the native tool of the GNOME project to control network settings from the shell. It is installed by default as a dependency for tracker package, which is a part of gnome group, and just needs to be enabled.

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).

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 Tweak Tool (gnome-tweak-tool[broken link: replaced by 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 Tweak Tool 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

GTK+ themes and icon themes

To install a new theme or icon set, add the relevant ~/.local/share/themes or ~/.local/share/icons respectively (add to /usr/share/ instead of ~/.local/share/ for the themes to be available systemwide.) They and other GUI settings can also be defined in ~/.config/gtk-3.0/settings.ini:

Once installed, they can be selected using the GNOME Tweak Tool or GSettings - see below for GSettings commands:

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

Global dark theme

GNOME will use the Adwaita light theme by default however a dark variant of this theme (called the Global Dark Theme) also exists and can be selected using the Tweak Tool or by editing the GTK+ 3 settings file - see GTK+#Dark theme variant. Some applications such as Image Viewer (eog) use the dark theme by default. It should be noted that the Global Dark Theme only works with GTK+ 3 applications; some GTK+ 3 applications may only have partial support for the Global Dark theme. Qt and GTK+ 2 support for the Global Dark Theme may be added in the future.

Window manager themes

The window manager theme (the style of the window titlebars) can be set using the GNOME Tweak Tool or the following GSettings command:

$ gsettings set org.gnome.desktop.wm.preferences theme theme-name

Titlebar height

Note: As of GNOME 3.16, Mutter no longer uses Metacity themes. Instead, the titlebar decorations are themed using GTK+.

To change the titlebar height, create the following file, adjusting the padding as desired:

Titlebar button order

Tip: The colon indicates which side of the titlebar the window buttons will appear.

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.

InstallmaximusAUR. To start the application, execute maximus from a terminal. When running, the daemon will automatically maximize windows. It will undecorate maximized windows and redecorate them when they are unmaximized. If you do not want all windows to start maximized, run maximus -m instead. Note that this will only work with windows decorated by the window manager; applications that use client-side decoration such as GNOME Files will not be undecorated when maximized.

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 Tweak Tool or through the GNOME Shell Extensions webpage. Shell themes can then be loaded and selected using the GNOME Tweak Tool.

Desktop

Icons on the Desktop

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.

Extensions

Note: The GNOME Shell browser plugin which allows users to install extensions from extensions.gnome.org is not compatible with Chrome/Chromium versions 35 and over. Users wishing to install extensions from the webpage will have to use a compatible browser such as Firefox or GNOME Web.

GNOME Shell can be customized with extensions per user or system-wide.

The catalogue of extensions is available at extensions.gnome.org. By a user they can be installed and activated in the browser by setting the switch in the top left of the screen to ON and clicking Install on the resulting dialog (if the extension in question is not installed). After installation it is shown in the extensions.gnome.org/local/ tab, which has to be visited as well to check for available updates. Installed extensions can also be enabled or disabled using gnome-tweak-tool[broken link: replaced by gnome-tweaks].

Installing extensions via a package 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).

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.

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 Tweak Tool 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.

Startup applications

To start certain applications on login, copy the relevant .desktop file from /usr/share/applications/ to ~/.config/autostart/.

The same effect can be achieved using the Tweak Tool.

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

Configure behaviour on lid switch close

The GNOME Tweak Tool, as of version 3.17.1, can optionally inhibit the systemd setting for the lid close ACPI event.[3] To inhibit the setting, start the Tweak Tool and, under the power tab, check the Don't suspend on lid close option. This means that the system will do nothing on lid close instead of suspending - the default behaviour. Checking the setting creates ~/.config/autostart/ignore-lid-switch-tweak.desktop which will autostart the Tweak Tool's inhibitor.

If you do not want the system to suspend or do nothing on lid close, you will need to ensure that the setting described above is not checked and then configure systemd with HandleLidSwitch=preferred_behaviour as described in Power management#ACPI events.

Change critical battery level action

The System Settings panel only allows the user to choose between Suspend or Hibernate. To choose another option such as Do Nothing open the dconf-editor and navigate to org.gnome.settings-daemon.plugins.power. Edit the "critical-battery-action" value to "nothing".

Sort applications into application (app) 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:

Hotkey alternatives

However, certain hotkeys cannot be changed directly via system settings. In order to change these keys, use dconf-editor. An example of particular note is the hotkey Alt- + ` (the key above Tab on US keyboard layouts). In GNOME Shell it is pre-configured to cycle through windows of an application, however it is also a hotkey often used in the Emacs editor. It can be changed by opening dconf-editor and modifying the switch-group key found in org.gnome.desktop.wm.keybindings.

It is possible to manually change the keys via an application's so-called accel map file. Where it is to be found is up to the application: For instance, Thunar's is at ~/.config/Thunar/accels.scm, whereas Files's is located at ~/.config/nautilus/accels and ~/.gnome2/accels/nautilus on old release.

The file should contain a list of possible hotkeys, each unchanged line commented out with a leading ";" that has to be removed for a change to become active.
For example to replace the hotkey used by Files to move files to the trash folder, change the line:

; (gtk_accel_path "<Actions>/DirViewActions/Trash" "<Primary>Delete")

to this:

(gtk_accel_path "<Actions>/DirViewActions/Trash" "Delete")

The file is regenerated regularly so do not comment the file. The uncommented line will stay but every comment you add will be lost.

Keyboard switch with command

To have keyboard shortcut Alt + Shift switch keyboards:

Open Gnome-Tweak-Tool (or Keyboard Settings, in GNOME 3.16) and set Typing > Modifiers-only input sources > select Alt-shift. For more information see also the forum thread.

XkbOptions keyboard options

Using the dconf-editor, navigate to the key named org.gnome.desktop.input-sources.xkb-options and add desired XkbOptions (e.g. caps:swapescape) to the list.

See /usr/share/X11/xkb/rules/xorg for all XkbOptions and /usr/share/X11/xkb/symbols/* for the respective descriptions.

Note: To enable the Ctrl+Alt+Backspace combination to terminate Xorg, use the gnome-tweak-tool[broken link: replaced by gnome-tweaks]. Within the Tweak Tool, navigate to Typing > Key sequence to kill the X server and select the option Ctrl+Alt+Backspace from the dropdown menu.

De-bind Windows key

By default, the 'Windows key' will open the GNOME Shell overview mode. You can unbind this key by running the command below

$ gsettings set org.gnome.mutter overlay-key 'Foo'

Disks

GNOME provides a disk utility to manipulate storage drive settings. These are some of its features:

Enable write cache is a feature that most hard drives provide. Data is cached and allocated at chosen times to improve system performance. Not recommended unless the computer has a backup battery pack or is a laptop as data would be lost on power failure.

Settings > Drive Settings > Write Cache > On

Automatic Mount Options can mount drives and partitions that are GPT based - will use default, recommended options.

Hiding applications from the menu

Use the Main Menu application (provided by the alacarte package) to hide any applications you do not wish to show in the menu.

Screencast recording

GNOME features built-in screencast recording with the Ctrl + Shift + Alt + R key combination. A red circle is displayed in the bottom right corner of the screen when the recording is in progress. After the recording is finished, a file named Screencast from %d%u-%c.webm is saved in the Videos directory. In order to use the screencast feature the gst plugins need to be installed.

Log out delay

Disable animations

To disable Shell animations (such as "Show Applications" and the wave animation in the top left activities hot corner), run:

$ gsettings set org.gnome.desktop.interface enable-animations false

Retina (HiDPI) display support

GNOME introduced HiDPI support in version 3.10. If your display does not provide the correct screen size through EDID, this can lead to incorrectly scaled UI elements. As a workaround you can open dconf-editor and find the key scaling-factor in org.gnome.desktop.interface. Set it to 1 to get the standard scale.

Passwords and keys (PGP Keys)

You can use the Passwords and Keys program (seahorse) to create a PGP key as it is a front end for GnuPG and installs it as dependency. This may be useful in the future (for instance if to encrypt a file). Create a key as shown below (the process may take about 10 minutes):

File > New > PGP Key > Name > Email > Defaults > Passphrase.

Terminal

Change default terminal size

The default size of a new terminal can be adjusted in the menu Edit > Profile preferences .

New terminals adopt current directory

By default new terminals open in the $HOME directory. To have new terminals adopt the current working directory: source /etc/profile.d/vte.sh. Add the command to the shell configuration to retain the behaviour. [4]

Pad the terminal

To pad the terminal (create a small, invisible border between the window edges and the terminal contents) create the file below:

Disable blinking cursor

Since GNOME 3.8 and the migration to GSettings and DConf the key required to modify in order to disable the blinking cursor in the Terminal differs slightly in contrast to the old GConf key. To disable the blinking cursor in GNOME 3.8 and above use:

$ gsettings set org.gnome.desktop.interface cursor-blink false

To disable the blinking cursor in Terminal only use (make sure profile uid is correct one):

Note that gnome-settings-daemon, from the package of the same name, must be running for this and other settings changes to take effect in GNOME applications - see #Configuration[broken link: invalid section].

Disable confirmation window when closing Terminal

The Terminal will always display a confirmation window when trying to close the window while one is logged in as root. To avoid this, execute the following:

Use custom colours and gradients for desktop background

To use custom colours and gradients for your desktop background, you will first need to set either a transparent picture or else a non-existent picture as your desktop background. For instance, the command below will set a non-existent picture as the background.

$ gsettings set org.gnome.desktop.background picture-uri none

At this point, the desktop background should be a flat colour - the default colour setting is for a deep blue.

For a different flat colour you need only change the primary colour setting:

$ gsettings set org.gnome.desktop.background primary-color <my color>

where <my color> is a hex value (such as ffffff for white).

For a colour gradient, you will also need to change secondary colour setting org.gnome.desktop.background secondary-color and select a shading type. For instance, if you want a horizontal gradient, execute the following:

If you are using a transparent picture as your background, you can set the opacity by executing the following:

$ gsettings set org.gnome.desktop.background picture-opacity <value>

where value is a number between 1 and 100 (100 for maximum opacity).

Transitioning backgrounds

GNOME can transition between different wallpapers at specific time intervals. This is done by creating an XML file specifying the pictures to be used and the time interval. For more information on creating such files, see the following article.

Alternatively, a number of tools are available to automate the process:

mkwlppr — This script creates XML files that can act as dynamic wallpapers for GNOME by referring to multiple wallpapers.

Custom GNOME sessions

It is possible to create custom GNOME sessions which use the GNOME session manager but start different sets of components (Openbox with tint2 instead of GNOME Shell for example).

Two files are required for a custom GNOME session: a session file in /usr/share/gnome-session/sessions/ which defines the components to be started and a desktop entry in /usr/share/xsessions which is read by the display manager. An example session file is provided below:

Note: GNOME Session calls upon the .desktop files of each of the components to be started. If a component you wish to start does not provide a .desktop file, you must create a suitable desktop entry in a directory such as /usr/local/share/applications.

Troubleshooting

Shell freezes

In the event of a Shell freeze (which might be caused by certain appearance tweaks, malfunctioning extensions or perhaps a lack of available memory) restarting the Shell by pressing Alt + F2 and then entering r may not be possible.

In this case, try switching to another TTY (Ctrl + Alt + F2) and entering the following command: pkill -HUP gnome-shell. It may take a few seconds before the Shell successfully restarts. Restarting the shell in this fashion should not log the user out but it is a good idea to try and ensure that all work is saved anyway.

If this fails, the Xorg server will need to be restarted either by: pkill X for console logins or: systemctl restart gdm for GDM logins. Bear in mind that restarting the Xorg server will log the user out so try to ensure that all work is saved before attempting this.

Incorrect application defaults

When installing applications for the first time you may find that GNOME has the wrong application associated to a certain protocols - for instance, easytag becomes the folder handler instead of GNOME Files.

Note:Avahi daemon is required for connecting with the People Nearby account, and also in order for some desktop extensions to work correctly like Chat Status

Cannot change settings in dconf-editor

When one cannot set settings in dconf, it is possible their dconf user settings are corrupt. In this case it is best to delete the user dconf files in ~/.config/dconf/user* and set the settings in dconf-editor after.

When an extension breaks the shell

When enabling shell extensions causes GNOME breakage, you should first remove the user-theme and auto-move-windows extensions from their installation directory.

The installation directory could be one of ~/.local/share/gnome‑shell/extensions, /usr/share/gnome‑shell/extensions or /usr/local/share/gnome‑shell/extensions. Removing these two extension-containing folders may fix the breakage. Otherwise, isolate the problem extension with trial‑and‑error.

Removing or adding an extension-containing folder to the aforementioned directories removes or adds the corresponding extension to your system. Details on GNOME Shell extensions are available at the GNOME web site.

If you have trouble with uninstalling an extension via extensions.gnome.org/local, then probably they have been installed as system-wide extensions with the gnome-shell-extensions package. Removing the package again obviously affects all user accounts.

Extensions do not work after GNOME 3 update

Note: Please bear in mind that whilst the methods below will allow you to try and activate an extension with an unsupported version of GNOME Shell, it is by no means a guarantee that the extension will work successfully. The most likely outcome of trying to activate such an extension is that GNOME Shell will crash and then restart.

Alternatively, you could modify the extension itself, changing the supported shell version to satisfy the version validation. See the method below.

Locate the folder where your extensions are installed. It might be ~/.local/share/gnome-shell/extensions or /usr/share/gnome-shell/extensions.

Edit each occurrence of metadata.json which appears in each extension sub-folder.

Insert:

"shell-version": ["3.x"]

Instead of (for example):

"shell-version": ["3.4"]

"3.x" indicates the extension works with every shell version. If it breaks, you will know to change it back.

Keyboard shortcut do not work with only conky running

The GNOME shell keyboard shortcuts like Alt+F2, Alt+F1, and the media key shortcuts do not work if conky is the only program running. However, if another application like gedit is running, then the keyboard shortcuts work.

Consistent cursor theme

Windows cannot be modified with Alt-Key + mouse-button

In GNOME 3.6 and above, the mouse button modifier (the key that allows you to drag a window from a location other than the titlebar) is the Super key instead of the Alt key which was used in the past. The change was made in response to the following bug report.

To change the mouse button modifier back to the Alt key, execute the following:

Note: It is not possible to change this with System settings > Keyboard > Shortcuts

Slow loading of system icons/slow GDM login

Problems with the loading of system icons, such the ones in the title bar of Files, might be solved by executing the following command:

# gdk-pixbuf-query-loaders --update-cache

Running the aforementioned command may also fix repeated occurrences of the "Oh no! Something has gone wrong!" error screen and/or very slow loading and login with GDM as described in the following forum thread.

Artifacts when maximizing windows

Tear-free video with Intel HD Graphics

DRI3

According to this bug report, DRI3 includes the buffer_age extension that allows GNOME Shell's Mutter compositor to sync windows to vblank in an efficient way. Enable[broken link: invalid section] it in the Xorg driver. You can change AccelMethod to your preference in the configuration file created, but the line must be included when the file is created; otherwise, gnome-session will crash upon login in a non-Wayland session.

Note: This workaround has been reported to have side effects and may not fix tearing in all cases.

GNOME Shell's Mutter compositor has a tweak known to address tearing problems (see the original suggestion for this fix and its mention in the Freedesktop bug report). To enable this tweak, append the following line to /etc/environment: CLUTTER_PAINT=disable-clipped-redraws:disable-culling. Then restart the Xorg server.

Window opens behind other windows when using multiple monitors

This is possibly a bug in GNOME Shell which causes new windows to open behind others. To fix this issue, one can run the following command:

Lock button fails to re-enable touchpad

Some laptops have a touchpad lock button that disables the touchpad so that users can type without worrying about touching the touchpad. Currently, it appears that although GNOME can lock the touchpad by pressing this button, it cannot unlock it. If the touchpad gets locked you can run the following to unlock it:

$ xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1

GNOME Shell keyboard sources menu not visible

A menu showing the keyboard input sources (for example 'en' for an English keyboard layout) should be visible next to the status area containing icons for network, volume and power sources. If the keyboard sources menu is not visible, this is probably because you have configured your Xorg keyboard layout in a way which GNOME does not recognise.

To ensure that the menu is visible, remove any Xorg keyboard configuration you might have created and set the keyboard locale using localectl.

Upon running the command and then logging out, you should find that the keyboard input sources menu is visible in GDM and in the GNOME Shell desktop. See Input sources in GNOME for more information.

Mouse cursor missing

When using a separate window manager with gnome-settings-daemon, the mouse cursor may vanish. Run:

No restart button in session menu when screen is locked

PulseAudio system-wide causes delay in GNOME and GDM

If you are running PulseAudio in system-wide mode, the PulseAudio 7.0 upgrade breaks GDM and GNOME.
See this forum post for more information.

GNOME crashes when trying to reorder applications in the GNOME Shell Dash

The dash is the "toolbar" that appears, by default, on the left when you click Activities. Applications can be reordered in the dash by dragging and dropping. If this fails, and/or causes GNOME to crash, try changing your icon theme.