GNOME(1)GNOME(1)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 exe
cuted from your X initialization file. If your system is
configured to use gdm (the GNOME display and login man
ager) 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 win
dow 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 pro
grams and documents. Drag and drop is an important part
of the system; we have tried to make the system as intu
itive 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 num
ber 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 infor
mation 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 doc
ument 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 inter
faces 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.
Bonobo
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
code.com/tech/bonobo.php3
GNOME is window manager independant. This means that the
GNOME desktop and the GNOME tools will work with any win
dow manager. Window manager can optionally provide a num
ber 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 ori
gins 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 applica
tions. 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 free
dom[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 rec
ognized 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 Pro
gram (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 lan
guage 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 devel
opment of the GNOME project.
We made releases of the GNOME source base since the begin
ning 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 develop
ment 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 applica
tions will continue to work in the future.
In May, 1999, International GNOME support was launched: a
company that offers contractual support for the GNOME sys
tem 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 con
tinous updated distribution of GNOME for various operating
systems).
In November 1999, Eazel was introduced to the GNOME commu
nity (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 foun
dation 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.
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 <list
name>-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 develop
ments 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.
gnome-components-list@gnome.org
Discussions about Bonobo: the component and compound docu
ment architecture of GNOME.
cvs-commits-list@gnome.org
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
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 soft
ware 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)
GNOME 1.2 GNOME(1)