GNOME

NAME
SYNOPSIS
DESCRIPTION
ARCHITECTURE
HISTORY
MAILING LISTS
BUGS
AUTHOR

NAME

GNOME − The GNU Network Object Model Environment

SYNOPSIS

gnome-session

DESCRIPTION

The gnome-session program launches and initializes the GNOME desktop environment. This program is usually executed from your X initialization file. If your system is configured to use gdm (the GNOME display and login manager) you can start your GNOME session by selecting the Gnome login profile.

If the special WINDOW_MANAGER environment variable is set, the gnome-session system will use that as the session window manager. Otherwise it will default to your system’s configured window manager.

GNOME is a collection of libraries and applications. A collection of these form the GNOME Desktop: an easy to use, yet powerful desktop environment for Unix systems. You can find up to date information about GNOME in http://www.gnome.org. You can find more information about the GNU project in http://www.gnu.org.

From a user’s point of view, the GNOME desktop consists of a desktop metaphor, a file manager and an easy way to launch applications installed on the system. Various desktop tools are provided with the GNOME desktop to take advantage of a computer system.

GNOME’s desktop metaphor allows the desktop to be used as a place to temporarily storing files, shortcuts to programs and documents. Drag and drop is an important part of the system; we have tried to make the system as intuitive as possible.

The session management in GNOME will automatically restore all of the applications you were running when you log in into the system again. With session managed applications, the user can turn off or logout from the system and when he logs in again, he will see the same desktop he had before.

GNOME supports themes that allow users to change the skin of an application: the look of applications in the GNOME desktop can be configured to look in the way that more pleases the user: it is just a few mouse-clicks away. You can choose from a wide range of GTK themes. A web site has been devoted to this: http://gtk.themes.org

ARCHITECTURE

The GNOME architecture addresses a number of problems and missing features found on Unix systems and it uses a number of components to achieve this:

glib

This is the foundation library that provides portability functions, a collection of reusable abtract types for C programmers and a main loop abstraction. For more information see http://www.gtk.org/rdp/glib/book1.html

ORBit

This is the CORBA implementation used in GNOME. CORBA provides basic RPC functionality and it is the foundation for the component model and the compound document and document model systems. For more information see http://www.labs.redhat.com/orbit.

GTK+

This is the GUI toolkit used by GNOME. It works on Unix and Win32 systems and other ports are being worked on to lighter windowing systems. You can find more information on http://www.gtk.org/

gtk-engines

The GTK+ toolkit has support for changing the apperance of application by providing support for themes and theme engines. See http://gtk.themes.org for a collection of readily-available themes.

Imlib

The graphics library used to load, save, manipulate and render images in GNOME applications. It includes routines to do fast drawing and use a limited set of colors from low-end displays. We expect this library to be replaced soon with the more modern libart.

libart_lgpl

An imaging library used for implementing various high-quality imaging components in GNOME.

gnome-libs

These libraries are the core libraries that provide the uniformity of the applications. They are divided in five: libgnome (for non-GUI dependant code), libgnomeui (for GUI dependant code), zvt (the xterm terminal emulator), gtk-xmhtml (an HTML rendering engine) and libgnorba that implements the CORBA object activation and registry.

libglade

This library enables programmers to create their interfaces using the Glade GUI desginer and loading at runtime the user interfaces.

gnome-print

The GNOME printing architecture implements a Postscript imaging model with two extensions: alpha transparency and anti-aliasing (all of this is done by using the libart_lgpl imaging library.

gnome-xml

This library provides GNOME application with an API to load, parse and walk an XML file.

Docbook

GNOME documentation is written in the Docbook SGML DTD. You can find more about this at http://nis-www.lanl.gov/~rosalia/mydocs/docbook-intro.html

GNU gettext

GNOME uses the GNU gettext to allow applications to be localized for various countries and languages.

GNOME is window manager independant. This means that the GNOME desktop and the GNOME tools will work with any window manager. Window manager can optionally provide a number of features that will make the user’s desktop a more pleasant experience. The GNOME window manager hint spec is available at: http://www.gnome.org/devel/gnomewm/book1.html

HISTORY

There were two projects that lead to the creation of origins of what became the GNOME project: the libapp project and the old-GNOME project. The former was a project to provide standard workstation-like services to applications. The old-GNOME project was intended to provide a component model for Unix systems. These were projects some of us had discussed but never actually implemented.

Enter KDE, a project that wanted to make Unix usable as a desktop machine. Sadly they chose the proprietary and non-free toolkit Qt as the foundation for their work. It was a giant step backwards in terms of software freedom[1].

In response, the GNOME project was started later to create a completely free desktop environment, and various early ideas were reused.

Early talks about the creation of GNOME involved some recognized free software leaders: Erik Troan and Mark Ewing of Red Hat software, Richard Stallman of the Free Software Foundation, and Peter Mattis and Spencer Kimball of the GIMP project. We launched the project after considering the various alternatives that could be tried.

The original call for developers, which included the team of programmers working on the GNU Image Manipulation Program (GIMP [GIMP]), the Guile mailing list and the free software mailing lists. This is important because the mix of people that were part of the original GNOME team had a good background on free software issues, graphics and language design.

Red Hat created the Advanced Development Laboratories division on January 1998 (http://www.labs.redhat.com). RHAD labs was initially created to help out in the development of the GNOME project.

We made releases of the GNOME source base since the beginning of the project. During the development of GNOME, the group has produced a number of libraries that are useful to provide integration, and consistency troughout the system.

GNOME 1.0 was released after eighteen months of development in March 1999. Updates and fixes are continously released; At the time of this writing, the GNOME 1.0 series is at version 1.0.5.

GNOME 1.0 marks the contract between GNOME developers and the user base to provide a stable API on top of which new applications can be developed. Software developers will be able to take advantage of all the functions available in the library, and they can be sure that their applications will continue to work in the future.

In May, International GNOME support was launched: a company that offers contractual support for the GNOME system. Their web page is at http://www.gnome-support.com.

MAILING LISTS

There are various mailing lists used by the GNOME project to coordinate the development of GNOME, you can subscribe to these lists by sending mail to the <listname>-request@domain address and put in the body of your message the word "subscribe".

gnome-announce-list@gnome.org

Where general announcements about the GNOME system are done. A good way of staying in touch with the developments of the system

gnome-list@gnome.org

General discussion of the GNOME system.

gnome-devel-list@gnome.org

Discussions on the development of the GNOME system and on writing GNOME applications.

gnome-gui-list@gnome.org

Discussion about user interface improvements for the GNOME system.

There are many other lists that discuss specific parts of the project, for a complete list, check http://www.gnome.org/mailing-lists

BUGS

To report bugs or suggestions you would like to see in the GNOME system, please use the command gnome-bug to send us information about the problem you are experimenting, or go directly to our bug tracking system on the Web at http://bugs.gnome.org

AUTHOR

GNOME has been developed by a large number of free software programmers, users and enthusiasts on the Internet. The guname program lists some of the contributors to the system.

This manual page has been written by Miguel de Icaza (miguel@gnu.org)