GNOME 2.14 Release Notes

1. What's New For Users

The GNOME Project's focus on users and usability continues in GNOME 2.14 with its hundreds of bug fixes and user-requested improvements. But the sheer number of enhancements make it impossible to list every change and improvement that have been made. This page hopes to highlight some of the more exciting user-oriented features in this release of GNOME.

1.1. Performance Improvements

Just as you would tune your car, our skilled engineers have striven to tune many parts of GNOME to be as fast as possible. Several important components of the GNOME desktop are now measurably faster, including text rendering, memory allocation, and numerous individual applications. Faster font rendering and memory allocation benefit all GNOME and GTK+ based applications without the need for recompilation.

Some applications have received special attention to make sure they are performing at their peak. GNOME Terminal, the terminal emulator for the GNOME desktop, has been optimized in several ways to make it faster and, at the same time, more resource efficient. The GNOME Log Viewer now starts up over 20 times faster than before.

Figure 1GNOME Terminal performance improvements between GNOME 2.12 and 2.14. Time taken is the time to print a list of all English words to the screen.
Figure 2Log Viewer performance improvements between GNOME 2.12 and 2.14. Time taken to start the application and read a 2.9MB log file.

1.2. Richer Searching

The GNOME file manager, Nautilus, now offers a powerful search interface available by pressing (Ctrl-F) on the desktop or in a file manager window.

Figure 3Search with Nautilus

Searches are easily constructed and can then be saved in a folder or on the desktop. Saved searches can then be opened like a folder at a later date.

If the Beagle search framework is available, Nautilus will take advantage of it for faster, more contextual searching.

1.3. More Help

The GNOME help browser also includes new features for searching help and documentation installed on your machine. Now with access to both GNU Info and traditional UNIX manpages, as well as GNOME's high quality documentation, it is possible to search most of the documentation included on your system quite rapidly.

Figure 4Search Help, view GNU Info files and read manpages

Like with the file manager, users who have the Beagle search framework available will be able to utilize it for even faster and more accurate searching.

1.4. Ekiga

Ekiga, formerly known as GNOME Meeting, is GNOME's voice and video-over-IP client. Ekiga supports both the SIP and H323 protocols. SIP, a popular protocol used in Google Talk, Asterisk, and many other software and hardware VoIP devices, is a recent addition to Ekiga. H323 is an older communications protocol, used in Microsoft Netmeeting and some telecommunications hardware.

Ekiga also features STUN support to allow traversal through many types of firewalls, including Network Address Translating (NAT) firewalls. This means that you can use Ekiga to make and receive calls without having a public IP address or forwarding ports from your router.

Figure 5Making a SIP call with Ekiga

Users can also setup an account with which will provide them with a SIP address they can use on the Internet to make and receive calls from anywhere.

1.5. Improved Window Management

Several new features have been added to Metacity to improve window management. Window edges now have a magnetic attraction, making it possible to "click" windows together. Multiple monitor (head) handling has been improved in Metacity. Metacity will now attempt to displace windows that want to appear across a monitor boundary onto one monitor or the other.

To help administrators and users of multiple machines from the same X server, the hostname of windows which are not running locally will be displayed in the title bar. This is especially useful when changing settings on machines graphically to ensure that you're making changes on the correct machine.

Figure 6Running an identical window locally and remotely

1.6. Deskbar

New to GNOME is the Deskbar. Power users, keyboard enthusiasts and users of the old panel command line will find this replacement incredibly powerful and easy to use. Deskbar uses plugins (written in Python) to provide search functionality for programs, files, folders, bookmarks, contacts and much more. Deskbar can also use the live search functionality of Google Live, Yahoo and Beagle.

Figure 7Searching for 'net'

Deskbar has both an in-panel mode, and a collapsed mode for use on vertical panels or panels with little free space. To search you simply press (Alt-F3) and enter some terms. You can also browse or search your command history.

1.7. Login Improvements

There have been many new improvements to the login system (GDM). The performance tweaking seen throughout the desktop has also found its way into the login system. There is also a new enhanced "Options" button in the login greeter that allows for quick access to various login functions. A new "secure remote" feature has been added so that users can connect to a X server securely and easily. The look of the login greeter has also improved by allowing for more user customization.

Figure 8It is now easier than ever to change your login preferences in the totally redesigned GDM preferences window.

Note: The file used by users to set their GDM configuration settings has changed from /etc/gdm/gdm.conf to /etc/gdm/custom.conf. For more information see the GDM Project page.

1.8. Fast User Switching

GNOME 2.14 includes support for fast user switching throughout the desktop. Both the logout and unlock screen dialogs offer the option to switch to another user. A menu can also be added to the panel allowing quick access to user switching.

Figure 9Fast user switching from the panel
Figure 10Switch users from a locked session

1.9. Shared Calendaring

A new feature in Evolution 2.6 is shared calendaring over CalDAV. The CalDAV shared calendar protocol is implemented by a number of groupware servers, including the freely available Hula server.

Figure 11Viewing a shared calendar from Hula

1.10. Smarter Bookmarking

The Epiphany Web Browser continues to make browsing the world wide web easier. New in this release is the automatic construction of bookmark hierarchies. This reduces the burden of handling large bookmark collections, but retains the simpler topic-based system of bookmark management popular in Epiphany. Topics are now much easier to select and create; Epiphany will even suggest topics based on past usage.

Figure 12Improved bookmark management and stylesheet control

Also in this release is support for user-defined stylesheets, providing improved accessibility and user control over page presentation. Behind the scenes Epiphany can now use Firefox, Mozilla or XULRunner as its backend. If you're using NetworkManager, Epiphany will be able to automatically detect your network settings.

1.11. Better Editor

Gedit continues to provide the usability of a simple text editor with all the features you need to develop applications or websites. Features in Gedit 2.14 include improved handling of multiple documents and writing to remote files. For example Gedit now allows for the seamless browsing and editing of SFTP, FTP and WebDAV directories directly from the file browser. It also has improved syntax highlighting of HTML, PHP, PSP and much more. These features combine to make Gedit a powerful text editor that can handle all the tasks that users require.

Figure 13Gedit can handle multiple source files easily, opening and saving them locally or over a network

Also new is the ability to write plugins for Gedit in Python. This allows the functionality of Gedit to be extended and customized easily, even if you're not a strong programmer. Some useful plugins that come with Gedit include one to execute external commands, support for tag-based completion, and an interactive Python console.

Figure 14Plugins dialog showing the properties for the External Commands plugin

1.12. Image Viewer

The GNOME Image Viewer has a new navigation-driven toolbar. Now when you open an image, you can easily view other images from the same directory.

Figure 15Easy navigation through images from same directory

1.13. Integrated Screensaver

GNOME now features an integrated screensaver. GNOME Screensaver is compatible with the "hacks" popular in Xscreensaver, but also has lots of new features unavailable in Xscreensaver. Applications that are aware of GNOME Screensaver will be able to communicate with it to set properties like "do not blank screen" over a standard interface. Dialogs such as the unlock screen dialog are now translatable into native languages and accessible to users with disabilities. These accessibility enhancements allow users with disabilities to easily unlock their displays and are part of the ongoing accessibility improvements being made to the entire GNOME Desktop.

Figure 16Configuring GNOME Screensaver properties

Users who wish to continue using Xscreensaver will still be able to do so and should consult their vendor's documentation on the specifics.

1.14. Latest GStreamer

GNOME 2.14 utilizes the technology of GStreamer 0.10. The GStreamer multimedia framework is a powerful, pluggable audio and video framework used on Linux and UNIX desktops as well as in embedded devices. This latest major version of GStreamer is faster and more stable than its predecessors. Issues like synchronization of audio and video across different devices has been addressed, as has threading and the dynamic handling of multimedia plugins. You can find out more about GStreamer from the GStreamer website.

All of the multimedia applications that ship with GNOME have been upgraded to take advantage of the latest GStreamer; including Totem, Sound Juicer, and Volume Control.

GStreamer 0.10 will also allow users to take advantage of multimedia plugins distributed by third-party vendors. This will allow vendors to offer support for licensed codecs where a free codec is not available or distributable (for legal reasons). These may include support for AC3, WMA, MP3 and more. A licensed, yet freely available MP3 plugin for GStreamer 0.10 is already being made available by Fluendo, a long-time supporter of GStreamer.

1.15. Easy Configuration

GNOME prides itself on being easy to configure and offering users simple choices while still remaining flexible. A number of elements in the GNOME control center have been made easier so that you can set the preferences you want quickly and easily.

Figure 17Set preferred applications by choosing from a list or entering a command.
Figure 18Select from a list of available sounds or select your own file from the file system.

2. What's New For Administrators

As of GNOME 2.14, the GNOME Project now includes an Administration Suite, which is a collection of tools that are aimed squarely at systems administrators. The two new tools that form the beginnings of this suite are incredibly powerful and should help administrators in both large corporate deployments and situations where machine lockdown is required.

2.1. Pessulus - Lockdown Editor

Pessulus is a lockdown editor that allows administrators to easily disable certain features of the GNOME desktop, as may be desired in corporate environments and Internet cafés. While lockdown features have now been available in GNOME for many years, Pessulus makes it far easier for administrators to perform these tasks.

Figure 19Using the lockdown editor to prevent system shutdown by users

Some of the features that can be disabled include:

  • Command-line access
  • The ability to shut down or reboot the machine
  • Access to specific protocols in the web browser
  • The ability to edit the GNOME panels

2.2. Sabayon - Profile Editor

Sabayon allows administrators to set up user profiles inside a live, interactive GNOME session. When a profile is created or edited, a nested GNOME session is started up, which the administrator can use to change GConf default and mandatory keys in their own GNOME session.

Figure 20Sabayon editing a user profile

Within the nested window a system administrator can create personalized profiles based on job description (e.g. receptionist, data entry clerk, programmer, human resources manager, etc.). These profiles can then be saved and deployed to various desktop machines with ease, saving the system administrator time. The profiles can also be modified and fine tuned as needed based on user feedback and since they are in a centralized location, allow for easy maintenance and deployment.

3. What's New For Developers

The GNOME 2.14 Developers' Platform provides a stable base for independent software developers to create third-party applications. GNOME and its platform are licensed to allow the creation of both free and proprietary software to run on top of GNOME.

Libraries in the GNOME Platform are guaranteed to be API and ABI stable for the rest of the GNOME 2.x release series. Libraries in the GNOME Desktop do not have this guarantee, but most remain consistent from release to release.

3.1. GSlice

As of GLib 2.10, the GSlice allocator replaces the older GMemChunk and GTrashStacks APIs available in GLib. GSlice is very similar to the kernel slab allocator and allows for fast, memory-efficient allocation of small structures (e.g. GList elements, GtkWindow structures). GSlice also has none of the locking overhead of GMemChunk, which makes it much faster in multithreaded applications.

Figure 21Memory allocator performance allocating and freeing 1 million GList elements in 1 (red), 5 (yellow), 10 (green) and 20 (blue) threads.

GMemChunk has been reimplemented to transparently use GSlice, but the GMemChunk API is considered deprecated.

To allocate memory with the GSlice allocator, use the call g_slice_new (MyStructure);, which will return a pointer (ptr). To free memory allocated with GSlice, use the function g_slice_free (MyStructure, ptr);.

GSlice uses a scalable, thread-local cache of slices of different sizes. For large memory requirements, GSlice will transparently and automatically use the g_malloc allocator for you, so developers do not have to choose the most efficient allocator themselves.

3.2. Service Registration

The latest GNOME now offers a way for developers to register their applications to be started up automatically when GNOME starts. To do this, you only need to install a .desktop file in $prefix/share/gnome/autostart/, /etc/xdg/autostart/ or ~/.config/autostart/. If you want to install a service, but disable it by default, you can add the property X-GNOME-autostart-enabled = False.

There are some caveats to registering services in this way:

  • Applications that register themselves with the session in some other way (e.g. nautilus, gnome-panel, vino) should not also register themselves in this way.
  • Session managed applications will not be handled cleanly, so ensure that you pass the --sm-disable flag on your Exec line.

4. Internationalization

Thanks to members of the worldwide GNOME Translation Project, under the leadership of Christian Rose and Danilo Šegan, GNOME 2.14 offers support for 45 languages (at least 80 percent of strings translated).

Supported languages:

  • Albanian (5 million speakers)
  • Basque (580,000)
  • Bengali (189 million)
  • Brazilian Portuguese (175 million)
  • Bulgarian (9 million)
  • Catalan (7 million)
  • Chinese (Hong Kong)
  • Chinese (Taiwan) (40 million)
  • Chinese Simplified (over 1 billion)
  • Czech (11 million)
  • Danish (5.3 million)
  • Dutch (over 21 million)
  • English (341 million)
  • Estonian (1 million)
  • Finnish (over 5 million)
  • French (over 75 million)
  • Galician (3 million)
  • German (100 million)
  • Greek (15 million)
  • Gujarati (46 million)
  • Hindi (370 million)
  • Hungarian (14.5 million)
  • Indonesian (230 million)
  • Italian (60 million)
  • Japanese (over 125 million)
  • Korean (75 million)
  • Lithuanian (4 million)
  • Macedonian (2 million)
  • Nepali (16 million)
  • Norwegian Bookmal (5 million)
  • Persian
  • Polish (44 million)
  • Portuguese (43 million)
  • Punjabi (60 million)
  • Romanian (26 million)
  • Russian (170 million)
  • Serbian (10 million)
  • Slovak (5 million)
  • Spanish (over 350 million)
  • Swedish (9 million)
  • Thai (60 million)
  • Turkish (150 million)
  • Ukrainian (50 million)
  • Vietnamese (68 million)
  • Welsh (575,000)

Note that Basque, Bengali, Chinese (Hong Kong), Estonian and Persian are new supported languages in GNOME 2.14, thanks to the hard work of their translators. Also noteworthy are that British and Canadian English are supported.

Many other languages are partially supported, with more than half of their strings translated.

5. Installing GNOME

You can try out GNOME 2.14 via the LiveCD which contains all of the software included in GNOME 2.14 on a single CD. It can be downloaded from the GNOME BitTorrent site or GNOME FTP.

To install or upgrade your machine to GNOME 2.14, we recommend you install official packages from your vendor or distribution. Popular distributions will be making GNOME 2.14 available very soon and some already have development versions with GNOME 2.14 available. You can get a list of distributions who ship GNOME and the latest version they ship on our Get Footware page.

If you are brave and patient and would like to build GNOME from source, we recommend you use one of the build tools. GARNOME builds GNOME from release tarballs. You will need GARNOME 2.14.x to build GNOME 2.14.x. There is also jhbuild which is designed to build the latest GNOME from CVS. You can also use jhbuild to build GNOME 2.14.x by using the gnome-2-14 moduleset.

For those who really want to compile the entire desktop by hand, the order to compile the modules in is: libxml2, libxslt, gnome-common, intltool, scrollkeeper, gtk-doc, glib, libIDL, ORBit2, libbonobo, fontconfig, Render, Xrender, cairo, Xft, pango, atk, shared-mime-info, gtk+, gconf, desktop-file-utils, gnome-mime-data, avahi, dbus, hal, gnome-vfs, audiofile, esound, libgnome, libart_lgpl, libglade, libgnomecanvas, libbonoboui, hicolor-icon-theme, icon-naming-utils, gnome-icon-theme, gnome-keyring, libgnomeui, startup-notification, gtk-engines, gnome-themes, gnome-doc-utils, gnome-desktop, libwnck, libgpg-error, libgcrypt, libtasn1, opencdk, gnutls, libsoup, mozilla, evolution-data-server, gnome-python/pygobject, pycairo, gnome-python/pygtk, gnome-menus, gnome-panel, gnome-session, vte, gnome-terminal, libgtop, gail, libxklavier, gstreamer, liboil, gst-plugins-base, gucharmap, system-tools-backends, gnome-applets, metacity, libgsf, libcroco, libgnomecups, libgnomeprint, libgnomeprintui, librsvg, eel, nautilus, control-center, yelp, bug-buddy, gtksourceview, gnome-python/pyorbit, gnome-python/gnome-python, nautilus-cd-burner, gst-plugins-good, libmusicbrainz, iso-codes, totem, gnome-media, gnome-python/gnome-python-desktop, gedit, eog, gconf-editor, gnome-utils, gnome-system-monitor, gnome-netstatus, gcalctool, zenity, at-spi, libgail-gnome, gnome-speech, gnome-mag, gnopernicus, gok, epiphany, gob2, gnome-games, gnome-user-docs, file-roller, gnome-system-tools, gnome-nettool, vino, gnome-volume-manager, gnome-backgrounds, sound-juicer, gtkhtml, evolution, evolution-webcal, evolution-exchange, ekiga, poppler, evince, dasher, gnome-keyring-manager, deskbar-applet, fast-user-switch-applet, gnome-screensaver, pessulus, sabayon.

This list is provided purely for reference and we strongly urge anyone looking to compile GNOME from source to consider using one of the build tools listed above.

6. Looking Forward to GNOME 2.16

Naturally, development doesn't stop with GNOME 2.14. Six months from the day that GNOME 2.14 is released GNOME 2.16 will follow and build on the fantastic base of its predecessor.

Things to look forward to in GNOME 2.16 include:

  • GTK+ 2.10, which includes much work from Project Ridley
  • Cairo 1.2 based theming
  • Support for compositing, alpha blending, drop shadows, window transparency and more
  • Integrated power management support via GNOME Power Manager
  • New widgets for developers including notification and printing widgets

More on the development roadmap of GNOME 2.16 will appear shortly as development starts getting under way. Watch for details on our development page.

Figure 22GNOME Power Manager, slated to appear in GNOME 2.16

7. Getting Involved

Helping GNOME is a rewarding, satisfying, and positive experience. You will join with hundreds of dedicated enthusiasts from all walks of life and places on the globe. Skilled and motivated contributors to GNOME may find new doors and opportunities open for them in the form of recognition, speaking appearances, and gainful employment.

As a user, your contribution to GNOME can be as simple as filing good bug reports in our bug tracking system, Bugzilla. The simple bug assistant will be able to guide you through filing your first bugs with us. You may also like to consider joining our Bugsquad, a team of dedicated bugmasters who triage and categorize common bugs, to help developers. You or your business can also become a Friend of GNOME.

For developers, a lot of exciting progress is being made daily in our active developer groups - accessibility, documentation, usability, translation, web, testing, graphics, performance, desktop and platform development. For more information read our guide on how to Join GNOME.

Join us today and see what a difference you can make.

A. Credits

These release notes were compiled by Davyd Madeley and edited by Bob Kashani with extensive help from the GNOME community. On behalf of the community, we give our warmest thanks to the developers and contributors who made this GNOME release possible.

This work may be freely translated into any language. If you wish to translate it into your language, please contact the GNOME Translation Project.