Difference between revisions of "GNOME"
|Line 60:||Line 60:|
== Installing to a new system ==
== Installing to a new system ==
Enable testing in the same way as above.
Enable testing in the same way as above.
Revision as of 13:00, 26 April 2011
For GNOME 3, the GNOME Project has started from scratch and created a completely new, modern desktop designed for today's users and technologies. In GNOME 3:
- There is a new default modern visual theme and font
- The Activities view which provides an easy way to access all your windows and applications
- Built-in (integrated) messaging desktop services
- A more subtle notifications system and a more discreet panel
- A fast Activities search feature
- A new System Settings application
- ... and more features like: window tiling (Aero Snap like), an improved Nautilus etc.
[more details on the GNOME3 website]
- 1 Introduction
- 2 Upgrade from the current gnome 2.32
- 3 Installing to a new system
- 4 Using the shell
- 5 Customization
- 5.1 Using Gnome-tweak-tool
- 5.2 Setting an icon theme
- 5.3 GDM
- 5.4 Changing the GTK3 theme using settings.ini
- 5.5 Start program automatically after login to GNOME 3
- 5.6 Removing folders from the "Computer" section in Nautilus's Places sidebar
- 5.7 Setting the default terminal via console
- 5.8 Setting Nautilus to Use Location Bar Entry
- 6 Enabling fallback mode
- 7 Enabling hidden features
- 8 How to shutdown through the Status menu
- 9 Enabling integrated messaging
- 10 Enabling extensions
- 11 Troubleshooting
GNOME3 comes with two interfaces, gnome-shell (the new, standard layout) and fallback mode. gnome-session will automatically detect if your computer is capable of running gnome-shell and will start fallback mode if not.
Fallback mode is very similar to the GNOME 2.x layout (while using gnome-panel and metacity, instead of gnome-shell and Mutter).
If you are on fallback mode you can still change the window manager with your preferred one.
Upgrade from the current gnome 2.32
Enable testing repo.
Edit /etc/pacman.conf and uncomment testing.
#testing uncommented [testing] Include = /etc/pacman.d/mirrorlist
For 64 bit systems you must also add the multilib repository below the code above. It will look like this.
#testing uncommented with multilib repository enabled for 64bit systems. [testing] Include = /etc/pacman.d/mirrorlist [multilib] Include = /etc/pacman.d/mirrorlist
# pacman -Syu
Important: You will end up with a system that has GNOME 3.x fallback mode. To install the new shell:
# pacman -S gnome-shell
Installing to a new system
Enable testing in the same way as above.
# pacman -Syu testing/gnome
For additional applications
# pacman -Syu testing/gnome-extra
Daemons and modules needed by GNOME
The GNOME desktop requires one daemon, DBUS for proper operation.
To start the DBUS daemon:
# /etc/rc.d/dbus start
Or add these daemons to the DAEMONS array in Template:Filename so they will start on boot up, e.g.:
DAEMONS=(syslog-ng dbus network crond)
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 Template:Filename so they will load at boot up, e.g.:
For better desktop integration GDM is recommended (but other login managers, such as SLiM also work, see Policykit section).
# pacman -S gdm
Check out Display_Manager to learn how to start it correctly.
exec ck-launch-session gnome-session
Now GNOME will start when you enter the following command:
Using the shell
# pacman -S gnome-tweak-tool
This tool can customize fonts, themes, minimize & maximize buttons and some other useful settings like what action is taken when the lid is closed.
A good customization tutorial is http://blog.fpmurphy.com/2011/03/customizing-the-gnome-3-shell.html which explores the power of gsettings.
Setting an icon theme
Usefully, Gnome 3 is able to use Gnome 2 icon themes, which means you're not stuck with the somewhat drab default set. To do this, simply copy your desired icon theme's directory to /usr/share/icons. For example:
$ cp -R /home/user/Desktop/my_new_icon_theme /usr/share/icons
The new icon theme 'my_new_icon_theme' will now be selectable using the gnome-tweak-tool (under 'Interface').
# su - gdm -s /bin/bash $ dbus-launch
This command will print DBUS_SESSION_BUS_ADDRESS and DBUS_SESSION_BUS_PID. We need to export them
$ export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-Jb433gMQHS,guid=fc14d4bf3d000e38276a5a2200000d38 $ export DBUS_SESSION_BUS_PID=4283
Check to see if dconf-service is running and if not, start it like this
$ /usr/lib/dconf/dconf-service &
$ GSETTINGS_BACKEND=dconf gsettings get org.gnome.desktop.background picture-uri $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri "file:///usr/share/backgrounds/gnome/SundownDunes.jpg"
Turning off the sound
$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.sound event-sounds false
Changing the GTK3 theme using settings.ini
[Settings] gtk-theme-name = Adwaita gtk-fallback-icon-theme = gnome gtk-application-prefer-dark-theme = true # applicable only if selected theme supports it
It may be necessary to restart one's DE or WM for the settings to be applied.
Start program automatically after login to GNOME 3
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.
The displayed folders are specified in Template:Filename and can be altered with any editor. An execution of Template:Codeline will change them again, thus it may be advisable to set the file permissions to read-only.
Setting the default terminal via console
The commands for urxvt run as daemon:
gsettings set org.gnome.desktop.default-applications.terminal exec urxvtc gsettings set org.gnome.desktop.default-applications.terminal exec-arg "'-e'"
Setting Nautilus to Use Location Bar Entry
If you want to enter path locations manually in Nautilus you can press ctrl+l. To make this persistent you can use gsettings.
gsettings set org.gnome.nautilus.preferences always-use-location-entry true
Enabling fallback mode
Your session will automatically start in fallback mode if gnome-shell is not present. 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.
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.
In dconf-editor, enable org.gnome.desktop.interface "can-change-accels".
An example of changing the delete hotkey: Open nautilus, select any file/directory, then click "Edit" from the menubar, and hover over the "Move to Trash" menuitem. While hovering, push delete. The accel should change from "ctrl+del" to "del".
Make sure you have selected a file, else the "Move to Trash" menuitem will be greyed out. You should disable "can-change-accels" afterwards, to prevent accidental accel changes.
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.
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.
Enabling integrated messaging
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:
# pacman -S telepathy
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 here You can use the gnome-shell-extensions-git package in the AUR to install them. Restart Gnome to enable them.
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 here.
My GTK2+ apps show segfaults and won't start
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:
(firefox-bin:14345): GLib-GObject-WARNING **: invalid (NULL) pointer instance (firefox-bin:14345): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed Segmentation fault
The current "workaround" is to remove oxygen-gtk from the system completely and set another theme for your apps.
I have multiple monitors and the Dock extension appears stuck between them
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.
Edit /firstname.lastname@example.org/extension.js and locate this line in the source:
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.
There are no event sounds for Empathy and other programs
The sound-theme-freedesktop package must be installed for the default event sounds:
# pacman -S sound-theme-freedesktop
Editing hotkeys via can-change-accels fails
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 Template:Filename, whereas Nautilus's is located at Template:Filename. 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.