Configuring the GNOME SlackBuild Desktop
Last Updated: May 07 2008
This page is meant to be a small reference page for users new to GNOME, or to GNOME SlackBuild. It highlights some of the most useful configuration settings that many users will want to, and even need to configure, in order to get the most out of their GNOME SlackBuild desktop.
Avahi Zeroconf
Avahi is a system which facilitates service discovery on a local network. This means that you can plug your laptop or computer into a network and instantly be able to view other people who you can chat with, find printers to print to or find files being shared. The system daemon that makes all this happen is not configured to start automatically at each system boot. If you would like to enable the Avahi Zeroconf system with GNOME, you will need to enable the daemon. You can do this by running:
$ chmod +x /etc/rc.d/rc.avahidaemon $ chmod +x /etc/rc.d/rc.avahidnsconfd
The system /etc/rc.d/rc.local
will start these services if they are executable. You can also start the service by hand by running:
$ . /etc/rc.d/rc.avahidaemon start $ . /etc/rc.d/rc.avahidnsconfd start
If you wish to later disable Avahi, remove the executable flag from the above scripts.
New: We now include the Zerconf Service Browser GNOME panel applet which allows you to easily search and connect to local network services, such as WebDAV, VNC remote sessions, ssh, http, telnet and DAAP multimedia.
Missing Menus?
In order to prevent KDE and GNOME from interfering with each other’s menus, we have placed the GNOME Standard menu structure in
/etc/gnome/xdg
. Some users, by not starting GSB GNOME in a proper fashion, may find that their menus have gone missing. The package gnome-session installs a file /etc/X11/xinit/xinitrc.gnome
, and this file ought to be copied to your user’s home directory (~/.xinitrc) in order to use startx to start an X session.
NOTE: There have been some reports that menus are missing when starting GSB GNOME. The cause may be due to the xinitrc failing to honour the environment setting XDG_CONFIG_DIRS without first exporting the variable. You may need to add export XDG_CONFIG_DIRS=/etc/xdg:/etc/gnome/xdg
to your xinitrc.gnome
. Note the export at the start of the line.
In this startup script is an environment variable. By specifying this in a custom startup script, your GSB GNOME session will be able to find its menus.
export XDG_CONFIG_DIRS=/etc/xdg:/etc/gnome/xdg
GNOME sessions started through GDM will have this variable defined for them. Please make sure to have the latest gnome-session and gnome-desktop package installed.
Configuring Audio
Pulseaudio is now installed as the default GNOME SlackBuild sound server. Pulseaudio has many cool features for your desktop, including transferring the audio to a different machine, changing the sample format or channel count and mixing several sounds, or changing the volume for different applications all running at one. For instance, you can turn the volume down on music playing in the background while turning up the volume for a game or movie playing in the foreground.
In order to get sound in your GNOME Desktop:
- You’ll need to “Enable software sound mixing (ESD)” from your Sound control panel. This starts pulseaudio (which has replaced esd). For new users, this is on by default. If you have a previous GNOME setup and have this disabled, you may notice a lack of sound. 🙂
- Make sure that the “PulseAudio Sound Server” devices are choosen in your Device panel. GSB GNOME is now configured by default to use Pulseaudio, so applications like Rhythmbox, Totem, etc, will use it. However, you may have to set it manually to PulseAudio when upgrading from a previous GNOME version. You can also switch between using PulseAudio, ALSA, etc, by choosing from the “Devices” menu in the Sound Control Panel.
The padevchooser is configured to autostart, and you can access all the fancy options and features of pulseaudio directly from your GNOME panel.
Note: PulseAudio works great with Avahi! It will allow you to discover and browse remote sound servers, or even share your sound server and speakers with other users.
NetworkManager
By default, NetworkManager and the NetworkManager panel applet are disabled. This is to prevent any accidental conflict with previous system networking configurations. Luckily, however, NetworkManager and the GNOME Panel applet are very easy to enable.
System Daemon ↑
If you haven’t rebooted after installing GNOME SlackBuild, you might want to. NetworkManager and the applet install a few configuration files into the dbus system messaging system, and this daemon will need to be restarted. Restarting the system is one method, the other method of course is simply to restart the system service. On Slackware, you need to switch to the /etc/rc.d/
directory, and run
$ ./rc.messagebus restart
This will reload the dbus configuration. After this you will need to make the rc.networkmanager
script executable. You can do this, while still within the /etc/rc.d/
directory by running:
$ chmod +x rc.networkmanager
The rc.networkmanager script is run by rc.local at system boot. Making this file executable will allow the NetworkManager daemon, as well as a dbus-capable wpa_supplicant daemon (for wireless networks) to run at system startup. To start the NetworkManager daemon immediately, run:
$ ./rc.networkmanager start
This will start the NetworkManager and wpa_supplicant daemon. But how do you actually come to use the software? That’s where the NetworkManager GNOME panel applet comes in. After logging in the GNOME Desktop Environment, “Network Manager” can be found in the GNOME Menu under “Applications” and “Internet”. Clicking this will start the panel applet. You will then be able to select various networks detected and decide which one to connect to. You may also be asked for a password for the GNOME Keyring. The keyring will store all the separate passwords for each of the networks (if they require one) in a wallet. The keyring password you supply will then be asked again when you connect to the networks a second time. You will then need only remember this one password, and not all the individual passwords for all the different networks.
Proper Permissions
Because Slackware does not come with PAM support, NetworkManager needs to be configured with default group-level permissions. This means that users will not be able to connect to the NetworkManager daemon, or use the panel applet until they have added themselves to the netdev group in /etc/group
.
As root, you will need to edit the /etc/group
file and add in user names to the netdev group.
GNOME Panel Applet
You can find the NetworkManager applet in the “Applications” and “Internet” menu. You may also wish that the NetworkManager GNOME Panel applet start every time you log in. If this is the case, there are two ways. You could use the GNOME Session Manager from the GNOME Control Panel, or else create a softlink in your home directory to autostart the NetworkManager applet.
If the directory doesn’t already exist, you will need to create it.
$ mkdir -p ~/.config/autostart $ cd ~/.config/autostart $ ln -s /usr/share/applications/nm-applet.desktop
This will force the NetworkManager applet to start with your gnome-session. If you would like to make this applet start system-wide, then create the link in your /usr/share/gnome/autostart
directory.
Tracker (or Beagle) Desktop Search
Tracker is a tool designed to extract information and metadata about your personal data so that it can be searched easily and quickly. By using Tracker, you no longer have to remember where you’ve left your files. To locate a file you only need to remember something about it, such as a word in the document or the artist of the song. This is because as well as searching for files in the traditional way, by name and location. There is a background daemon that runs idly in the background cataloguing and indexing all the files within the configured directories. In order to enable tracker (or beagle), you will need to start up these daemons. You can load these at the start of your GNOME Session with the following.
(If the directory doesn’t already exist, you will need to create it.)
$ mkdir -p ~/.config/autostart $ cd ~/.config/autostart $ ln -s /usr/share/applications/tracker-applet.desktop
This will configure the GNOME Tracker applet to appear on the panel at the next session start. If you would like to start the applet manually, you need to run:
$ tracker-applet
After the applet has start, you will need to configure the directories that the indexing service will keep an eye on for updates. You can do this by using the “Preferences” dialog after right-clicking on the panel applet.
Compiz
GNOME SlackBuild includes Compiz-fusion, which is a compositing window manager that uses 3D graphics acceleration via OpenGL. It provides various new graphical effects and features on any desktop environment, including GNOME. It is the result of the re-unification of the Beryl-project and the community around the Compiz Window Manager. It seeks to provide an easy and fun-to-use windowing environment, allowing use of the graphics hardware to provide impressive effects, amazing speed and unrivalled usefulness.
Using Compiz with GNOME SlackBuild
GNOME SlackBuild comes with both an /etc/X11/xinitrc.gnome
, which is the X startup script for a gnome-session with Metacity as the default window manager. We have also provided an /etc/X11/xinitrc.compiz-gnome
script to use the compiz window manager instead. First be sure to have your video card properly configured for AIGLX. There is lots of information about doing this on the web, both for Nvidia or ATI drivers.
Using startx
If you prefer startx
rather than GDM to start your X session, then you should copy one of the both (whichever you prefer) to your ~/.xinitrc
. You can then tweak the scripts to your convenience.
Using GDM
If you use GDM, then you will find a “Compiz GNOME” in the list under the “Sessions” menu. This will start the compiz window manager instead of the Metacity window manager, which is started by the default “GNOME” session.
The compiz-manager script
This script will check your settings and detect whether compiz can run, and if so, start it up. Otherwise, the script will start metacity instead. It tends to be more fail proof than simply running compiz. If you are unsure whether compiz will start on its own, start a default “GNOME” session with metacity and test using this script.
$ /usr/bin/compiz-manager
This script will start up compiz and the gtk-window-decorator, and give some debugging information to help you detect why compiz cannot start up properly. If compiz starts without any trouble, then you will find it easier to switch to one of the above listed methods, either copying /etc/X11/xinit/xinitrc.compiz-gnome
to your home directory, or use the “Compiz GNOME” session from GDM
Compiz and ATI Video Drivers
Using the latest ATI proprietary drivers (fglrx) released January 18th, 2008, you should be able to get compiz working quite well. AIGLX is now supported by the driver, and using compiz-fusion 0.6.2 it is both quite stable and rather fast. If mostly works out-of-the-box, however, you’ll need to tweak your
xorg.conf
a small bit in order to fix a few graphical issues with fonts and icons. Make sure your xorg.conf file has the below in the Device section.
Section "Device" Identifier "aticonfig-Device[0]" Driver "fglrx" Option "XAANoOffscreenPixmaps" "true" Option "EnableDepthMoves" "on" Option "VideoOverlay" "on" Option "TexturedVideo" "True" Option "TexturedVideoSync" "True" EndSection
The above should allow you to use compiz-fusion and ATI fglrx drivers with success.
GNOME Display Manager (GDM)
GDM (the GNOME Display Manager) provides an alternate display manager for the X Window System. The X Window System by default uses the XDM display manager. However, resolving XDM configuration issues typically involves editing a configuration file. GDM allows users to customize or troubleshoot settings without having to resort to a command line. Users can pick their session type on a per-login basis. GDM also features easy customisation with themes.
If you would like to enable GDM on system boot, you will need to edit /etc/inittab
and change the default run level from 3 to 4.
# Default runlevel. (Do not set to 0 or 6) id:4:initdefault:
Then, run xwmconfig
and select the GNOME entry.
If you are interested in installing new GDM themes, your best starting point is then GDM Themes available from GNOME-Look.org. Just download the tarballs to a temporary directory and use the GDM theme installer you can find from the GDM main login screen.
You can also find the GNOME Display Manager manual here.
KDE
We try our best to be able to provide a GNOME distribution that works well alongside KDE, the desktop that comes by default with Slackware, without modifying the default settings too much, or by over patching the source software. There are a few things that a GNOME SlackBuild user can do to make the integration a little nicer between the two desktop.
KDE Display Manager
By default, GDM is the preferred display manager of Slackware. When entering runlevel 4, which starts the display manager, Slackware first tries GDM, secondly KDM, and lastly XDM. GDM is configured to properly start a GNOME session by running the /etc/X11/xinit/xinitrc.gnome
script. On the other hand, KDE comes configured with the bare minimum gnome session script which will not work with GNOME SlackBuild. If you prefer KDM, and would like to start a gnome session, you will need to modify:
/usr/share/apps/kdm/sessions/gnome.desktop
You will need to change the line:
Exec=gnome-session
to:
Exec=/etc/X11/xinit/xinitrc.gnome
Your other option is to copy /usr/share/xsessions/gnome.desktop
to /usr/share/apps/kde/sessions
. This will correct the default session script run by KDM and will start a full and proper GNOME session.
KDE or Xfce Menus
The default GNOME menus have been configured in GNOME SlackBuild to exclude KDE and XFCE menu items to avoid clutter and general ugliness. Some users may find that they would like to access their KDE menu items from the GNOME menus. We have provided a package to do this for you. You will need to install the some GNOME GSB menus packages.
slapt-get --install gnome-menus-kde
This package is based on gnome-menu-extended by AriszlĂł, and places a submenu in the GNOME menus for easy access to KDE applications. If you would like to restore the previous “exclusive” menu, you’ll need to (as root) remove the gnome-menus-kde package.
The above applies for Xfce menus; instead of gnome-menus-kde, install or remove the package gnome-menus-xfce
Printing
The easiest way of using printing with the GNOME Desktop is via CUPS. CUPS uses the Internet Printing Protocol (“IPP”) as the basis for managing print jobs and queues and adds network printer browsing and PostScript Printer Description (“PPD”) based printing options to support real-world printing. GNOME SlackBuild comes with the system-config-printer utility, which has been borrowed from RedHat. It can can be used to configure a CUPS server (often the local machine) using the standard CUPS API. The tool is written in Python, using pygtk for the graphical parts. It is largely the same as using the CUPS web interface for configuring printers, but has the advantage of being a native application rather than a web page. It allows for easy installing of new printers, configuring your existing printers, and supports basic pop-up notification of low ink, and other messages.
In order to use system-config-printer, you must make sure that the CUPS daemon is running in the background. You can start the CUPS services for Slackware at system start by making the rc script executable.
$ chmod +x /etc/rc.d/rc.cups
If you use a HP printer, you may also wish to install the hplip and qt Slackware packages for HP printer support.
GNOME System Tools
Formerly known as the Ximian Setup Tools, the GST are a fully integrated set of tools aimed to make easy the job that means the computer administration on an UNIX or Linux system. They’re thought to help from the new Linux or UNIX user to the system administrators. The GNOME System Tool use System-Tool-Backends, which are backends to provide an common DBus interface to all platforms to modify or read the system configuration in a distro independent fashion. System Tools Backends offers a generic and easy way for desktop applications to read and modify configuration details.
In order for users to use these tools (found in the Administration menu under the System menu on the GNOME panel), their usernames must be added to the stb-admin group.
USB Device Permissions
There are many applications available in GNOME SlackBuild that you will want to use in order to access your pluggable devices, from external USB drives, to digital cameras, MP3 players, iPods and so forth. These devices will not work unless you have added the username to the
/etc/group
group permissions. As root, run vigr
and add your name to the plugdev group. Afterward, you will need to make sure that you logoff and logon for the changes to take effect.
Game Scoring
To get proper scoring working with gnome-games, you have to add the user name to group “games”.