GNOME - The GNU Network Object Model Environment
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 gnomesession
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
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 mouseclicks
away. You can choose from a wide range of GTK themes. A web
site has been devoted to this: http://gtk.themes.org
The GNOME architecture addresses a number of problems and missing features
found on Unix systems and it uses a number of components to
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
ORBit [Toc] [Back]
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
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/
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 [Toc] [Back]
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.
An imaging library used for implementing various high-quality imaging
components in GNOME.
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.
This library enables programmers to create their interfaces using the
Glade GUI desginer and loading at runtime the user interfaces.
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.
This library provides GNOME application with an API to load, parse and
walk an XML file.
Docbook [Toc] [Back]
GNOME documentation is written in the Docbook SGML DTD. You can find
more about this at http://nis-www.lanl.gov/~rosalia/mydocs/docbook-
GNU gettext [Toc] [Back]
GNOME uses the GNU gettext to allow applications to be localized for
various countries and languages.
Bonobo [Toc] [Back]
Bonobo is the GNOME architecture for creating reusable software components
and compound documents. It was designed and implemented to
address the needs and problems of the free-software community for
developing large-scale applications.
More information can be found at http://www.helix-
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
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.
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
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 and components 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, 1999, International GNOME support was launched: a company that
offers contractual support for the GNOME system founded by Nat Friedman
and Miguel de Icaza.
In October, 1999 an updated version of GNOME codenamed "October GNOME"
was released with many bug fixes and improvements. This new version of
GNOME also included Glade and libGlade as part of the platform
In October 1999, GNOME Support became Helix Code, Inc.
(http://www.helixcode.com) and started work on Evolution (an integrated
groupware solution) and Helix GNOME (a continous updated distribution
of GNOME for various operating systems).
In November 1999, Eazel was introduced to the GNOME community
(http://www.eazel.com) founded by Andy Hertzfeld, Bart Decrem and Mike
Boich to provide a new desktop for GNOME: the Nautilus project.
Also in November, the Bonobo component system started to become used in
the GNOME project, and it became the foundation for various of the most
advanced GNOME projects.
In March 2000, Mathieu Lacage organized the "GNOME Users and Developers
European Conference" (http://www.guadec.enst.fr) in the Telecom, Paris
school in Paris, France. More than a hundred GNOME hackers got
together to discuss the state of GNOME and its future.
In March 2000, The GNOME Steering Committee was created to overwsee the
development and deployment of GNOME 2.0
In May 2000, GNOME 1.2 codenamed "Bongo GNOME" was released to the public.
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".
Where general announcements about the GNOME system are done. A good
way of staying in touch with the developments of the system
General discussion of the GNOME system.
Discussions on the development of the GNOME system and on writing GNOME
Discussion about user interface improvements for the GNOME system.
Discussions about Bonobo: the component and compound document architecture
Used to keep track of changes to the GNOME CVS source code repository.
There are many other lists that discuss specific parts of the project,
for a complete list, check http://www.gnome.org/mailing-lists
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
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 (email@example.com)
GNOME 1.2 GNOME(1)
[ Back ]