The GNOME desktop environment
is built in a modular manner with API-stable
platform modules and less API-stable
Desktop modules can be transitioned to platform modules as they mature.
The Damned Lies about GNOME
translation site describes the GNOME modules:
"Modules are separate libraries or applications, with one or more branches of development included. They are usually taken from CVS, and we keep all relevant information on them (Bugzilla details, web page, maintainer information,...)." The site contains an extensive
list of modules
for the current GNOME 2.22 release.
On August 4, 2008,
list of modules to be included
in the upcoming GNOME 2.24 was posted.
A quick tour of the new modules to be included follows:
"Empathy consists of a rich set of reusable instant messaging widgets, and a GNOME client using those widgets. It uses Telepathy and Nokia's Mission Control, and reuses Gossip's UI. The main goal is to permit desktop integration by providing libempathy and libempathy-gtk libraries. libempathy-gtk is a set of powerful widgets that can be embeded into any GNOME application."
- project hamster:
"Project Hamster is time tracking for masses. It helps you to keep track [of] how much time you have spent during the day on activities you have set up.
Whenever you change from doing one task to other, you change your current activity in Hamster. After a while you can see some statistics of how many hours you have spent on what. Maybe print it out, or export to some suitable format, if time reporting is a request of your employee."
"Clutter is an open source software library for creating fast, visually rich and animated graphical user interfaces.
Clutter uses OpenGL (and optionally OpenGL ES for use on Mobile and embedded platforms) for rendering but with an API which hides the underlying GL complexity from the developer."
- libcanberra, announced
here, is a lightweight sound event library that implements the XDG
sound theming/naming specs.
(from an LWN article):
"Mounting removable filesystems, CDs, USB devices, and the like, is a
classic example of a root-only task that some non-privileged users might be
allowed to perform. In the past, various mechanisms using groups or mount
options in /etc/fstab have been used with some success, but the mechanisms
were specific to mounting and did not provide the flexibility that some
administrators would like. Network configuration - particularly for
wireless networking - is another common task that users might be allowed to
PolicyKit is an attempt to centralize these kinds of decisions into a
single policy file that the administrator can use to set the kinds of
access regular users should be allowed."
There's also a few modules which were not accepted this time around:
"Conduit is a synchronization application for GNOME. It allows you to synchronize your files, photos, emails, contacts, notes, calendar data and any other type of personal information and synchronize that data with another computer, an online service, or even another electronic device.
Conduit manages the synchronization and conversion of data into other formats."
Conduit was partially rejected due to an incomplete UI, but allowed as an
external dependency for use by other applications.
It should be ready for inclusion in GNOME 2.26.
The plan is to replace the
html rendering engine with Webkit in time for GNOME 2.26.
- libgda (part of Gnome-DB):
"Libgda is a database abstraction layer which hides all the database backend specifics from the user, offering a simple interface to each supported database (MySQL, PostgreSQL and SQLite are fully functional while Oracle and MDB are useable and missing features) to run queries."
Libgda is required by the
Anjuta IDE, it will either
be included optionally or bundled with Anjuta.
There is, of course, a lot more to GNOME 2.24 than a few new modules; see
the roadmap for more
information. This GNOME release is currently scheduled for
to post comments)