Learn how to work with GNOME, Fedora's primary window manager, and also the version of X that is included with Fedora. Andrew and Paul Hudson look at the fundamentals of X, as well as how to get X to work with any upgrades that might affect it, and also take a look at some of the other Window Managers that are included with Fedora, including KDE and Xfce.

Imagine a world of black screens with white text, or for those of you who remember, green screens with green text. That used to be the primary interface for users accessing computers. Computing has moved on significantly since then and has adopted the graphical user interface, or GUI, as standard on most desktop and workstation platforms.

Fedora is no different and its primary window manager is called GNOME (the Gnu Network Object Model Environment). Based upon the ethos of simplicity by design, GNOME offers a rich and full interface that you can use easily to be productive. The principle design objectives include an intuitive system, meaning that it should be easy to pick up and use, as well as good localization/internationalization support and accessibility.

GNOME is founded upon the X Window System, the graphical networking interface found on many Linux distributions, which provides the basis for a wide range of graphical tools and window managers. More commonly known as just X, it can also be referred to as X11R7 and X11 (such as that found on Mac OS X). Coming from the world-renowned Massachusetts Institute of Technology, X has gone through several versions, each of which has extended and enhanced the technology. The open source implementation is managed by the X.Org foundation, the board of which is made up of several key figures from the open source world.

The best way to think about how X works is to see it as a client/server system. The X server provides services to programs that have been developed to make the most of the graphical and networking capabilities that are available under the server and in the supported libraries. X.Org provides versions for many different platforms, including Linux and Mac OS X. Originally implemented as XFree86, X.Org was forked when a disagreement broke out over certain restrictions that were going to be included in the XFree86 license. Taking a snapshot of code that was licensed under the previous version of the license, X.Org drove forward with its own implementation based on the code. Almost in unison, most Linux distributions turned their back on XFree86 and switched their development and efforts to X.Org.

In this chapter you will learn how to work with GNOME and also the version of X that is included with Fedora. We look at the fundamentals of X, as well as how to get X to work with any upgrades that might affect it, such as a new graphics card or that new flat panel display you just bought. We also take a look at some of the other Window Managers that are included with Fedora, including KDE and Xfce.

The Red Hat and Fedora Desktop

If you have used prior versions of Fedora and indeed Red Hat Linux, you will be more than aware of Bluecurve and perhaps also Clearlooks. Fedora has now settled on a consistent style throughout the whole distribution and has finally done away with the slightly older-looking Bluecurve icon set in favor of the Echo theme. Based on the Clearlooks theme, Fedora now looks better than ever, giving users a beautiful desktop to work with. KDE, another window manager you'll learn about later, has also received some polish, and the two window managers have a consistent look and feel.

The GNOME Desktop Environment

A desktop environment for X provides one or more window managers and a suite of clients that conform to a standard graphical interface, based on a common set of software libraries. When they are used to develop associated clients, these libraries provide graphical consistency for the client windows, menus, buttons, and other onscreen components, along with some common keyboard controls and client dialogs. The following sections discuss the primary desktop environment that is included with Fedora: GNOME.

The GNOME project, which was started in 1997, is the brainchild of programmer whiz Miguel de Icaza. GNOME provides a complete set of software libraries and clients. GNOME depends on a window manager that is GNOME-aware. This means that to provide a graphical desktop with GNOME elements, the window manager must be written to recognize and use GNOME. Some compliant window managers that are GNOME-aware include Havoc Pennington's metacity (the default GNOME window manager), Enlightenment, Compiz, Window Maker, IceWM, and beryl.

Fedora uses GNOME's user-friendly suite of clients to provide a consistent and user-friendly desktop. GNOME is a staple feature of Red Hat Enterprise Linux distribution and Fedora because Red Hat actively supports its development. GNOME clients are found under the /usr/bin directory, and GNOME configuration files are stored under the /etc/GNOME and /usr/share/GNOME directories, with user settings stored in the home directory under .GNOME and GNOME2.

A representative GNOME desktop, running the removable media preferences tool used for setting actions to events, is shown in Figure 3.1.

You can configure your desktop in various ways and by using different menu items under the Preferences menu, which can be found as part of the main Desktop menu. The myriad of configuration options allows you to tailor every aspect of your system's look and feel. In Figure 3.2 you can see a selection of the preferences options available to you.

Figure 3.2 You can customize your Fedora desktop by using the Preference settings that are available in the System, Preferences menu.