GNOME 2.24 Release Notes

1. Introduction

GNOME 2.24 is the latest version of the GNOME Desktop: a popular, multi-platform desktop environment for your computer. GNOME's focus is ease of use, stability, and first class internationalisation and accessibility support. GNOME is Free and Open Source Software and provides all of the common tools computer users expect of a modern computing environment, such as e-mail, groupware, web browsing, file management, multimedia and games. Furthermore, GNOME provides a flexible and powerful platform for software developers, both on the desktop and in mobile applications.

Figure 1GNOME 2.24

The GNOME Desktop is released every six months and contains many new features, improvements, bug fixes and translations. GNOME 2.24 continues this tradition. To learn more about GNOME and the qualities that distinguish it from other computer desktop environments (such as usability, accessibility, internationalisation and freedom) visit the About GNOME page on our website.

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

GNOME 2.24 includes all of the improvements made in GNOME 2.22 and earlier. You can learn more about the changes that happened in GNOME 2.22 from its release notes.

2. What's New For Users

The GNOME Project's focus on users and usability continues in GNOME 2.24 with its hundreds of bug fixes and user-requested improvements. The sheer number of enhancements makes it impossible to list every change and improvement made, but these notes aim to highlight some of the more exciting, user-oriented features in this release.

2.1. Stay in Touch

GNOME 2.24 announces the inclusion of an instant messaging client based off the Telepathy communications framework.

Figure 2Empathy Instant Messenger

Empathy also supports XMPP/SIP audio and video conferencing as available on the Nokia N800/N810 devices (video requires H.263 codecs for GStreamer to be installed). Empathy is a great companion to Ekiga, GNOME's audio/video SIP client (see Section 2.3 ― Ekiga 3.0).

Telepathy provides a common framework for applications to access instant messaging functionality. It can utilise many common protocols including Jabber/XMPP, Google Talk, MSN Messenger and Apple's Bonjour/Rendezvous local network chat.

Any application is able to utilise the instant messaging session. As well as the Empathy client, GNOME 2.24 provides libraries enabling developers to add presence and status information, transfer files or set up sockets (known as Tubes) for collaboration and games over the Internet. See Section 4.4 ― Instant Messaging Libraries for more information on how this technology can be utilised in your application.

2.2. Track Your Time Better

For many people in business, it is crucial that they track how much time they assign to each project and client. Everybody has their own system for this, from keeping a diary to making a guess. It's incredibly tedious. In today's world almost everything you do somehow involves a computer, so GNOME has added a panel application to make tracking your time easier.

Figure 3Set Your Task Quickly

The panel shows you what task you've been working on and for how long. Clicking on the button allows you to change activity and see what activities you've been working on today. If you like, the timer can stop when your computer goes idle.

Activities can be categorised by any grouping you choose: be it the type of activity, client's name or how much you dislike it. You can also view and edit your activity log, insert missing activities and see daily, weekly and monthly graphs to see where you're spending most of your time.

2.3. Ekiga 3.0

Ekiga is a fully-featured SIP audio/video conferencing client for GNOME. As part of GNOME 2.24 we're proud to announce the release of Ekiga 3.0.

Figure 4Ekiga 3.0

As well as a new interface that is centred around your phone book and the presence of your contacts, Ekiga 3.0 features SIP presence support, PBX line monitoring, better video codecs support (H.264, H.263+, MPEG-4 and Theora), accelerated video and optional fullscreen and many SIP-related improvements for robust conferencing.

2.4. File Management

As well as icon and list views, GNOME 2.24 now offers the compact list view, popular in several other desktop environments. Choose the view by selecting View ▸ Compact from the menu (or keyboard shortcut Control+3).

Figure 5The three file views: icon, list and compact

As with icon and list view, the size of the icons in the compact view can be changed using the zoom options in the View menu.

The browser mode of the file manager now supports tabs for rapidly switching between directories within a single browser window.

Figure 6Tabbed Browser Support

Today's modern filesystems are able to handle almost any desired character as part of the filename. Unfortunately this is not the case for the FAT filesystem that is commonly used on many USB thumb drives and portable music players, which is unable to use many common punctuation marks as part of the filename. GNOME 2.24 detects when you are copying files with names that contains characters that cannot be used and automatically converts these characters to a "_" without you having to rename the file yourself.

Automatic filename completion ("tab" completion) has also been improved in GNOME 2.24. Completion of filenames in the location bar using the Tab key is now faster and more predictable. It is also possible to complete any fragment of the path and the interface provides more feedback for when there are no other possible matches available.

2.5. Do More With Deskbar

The Deskbar in GNOME 2.24 adds several exciting new plugins: a calculator, Google Search (and code search), Yahoo! and Wikipedia suggestions plus updating of Twitter and identi.ca.

Figure 7Deskbar

Also new is the ability to easily download and install new plugins directly from the Deskbar repository on the World Wide Web.

2.6. New Screen Resolution Controls

More and more computers (especially laptops) are gaining support for multiple monitors (known as multihead). Users need to be able to connect a second monitor, either as a clone (e.g. a projector for giving presentations) or as an extension of their desktop.

GNOME 2.24 has upgraded its screen resolution controls to make this possible. Utilising the new XRandR 1.2 specification from X.Org, this dialogue enables users to easily set up individual monitors in a number of configurations. Monitors are named and the names appear in the top left corner of the screen for easy identification.

Figure 8New Screen Resolution Controls

Changes are applied immediately. No restart of GNOME is required.

XRandR 1.2 Driver Compatibility

Some X.Org video drivers do not currently support XRandR 1.2 and so will not be able to take advantage of these features. One such driver is the proprietary nVidia X driver.

2.7. New Sound Theme Support

Sound themes in GNOME are now handled by libcanberra, which implements the Freedesktop.org Sound Theme and Naming Specification. Sound themes can now be installed like icon themes. Using libcanberra also means that an application's alert sounds are less likely to interfere with your music player or movie player, so you can leave those important alert sounds switched on while watching a fullscreen movie.

Figure 9Sound Theme Support

2.8. Better Digital TV

Powered by the GStreamer multimedia framework, GNOME 2.22 introduced digital television (DVB) capabilities into its Movie Player. Determined to make things even better, developers have worked to enhance this support by adding support for multiple DVB tuners (watch multiple channels at once) and better troubleshooting diagnostics.

They have also worked to improve out-of-the-box (zero configuration) support for the majority of infrared remote controls (using the LIRC framework). This makes it even easier to chill out instead of writing that important report.

Also featuring in GNOME 2.24, support for high-resolution YouTube videos and support for remote (non-local) text subtitling.

2.9. Extra Pretty

GNOME wants to make your computer look good, which is why we work hard on our themes and artwork. For GNOME 2.24 we ran a competition to collect some of the most intruiging desktop backgrounds our contributors have produced and we've shared our favourites with everyone.

Figure 10Attractive Backgrounds

3. What's New In Accessibility

GNOME has a passion for making software available to everyone, including users and developers with impairments that can make it harder to use their computer. To help, GNOME created the GNOME Accessibility Project and an accessibility framework that is now a standard on libre desktops.

GNOME 2.24 continues to build on its prior accessibility credentials with several improvements.

3.1. Better Keyboard Navigation

Since GNOME 2.0, it has been possible to focus the GNOME Panel using the key combination Control+Alt+Tab. A user could then use the Tab key to move between items on the panel, except for the notification icons.

Since GNOME 2.24 it is now possible to navigate to a notification icon using only the keyboard.

Keyboard navigation has also been improved in the file manager. Selection of files using the keyboard is now linear rather than rectangular.

3.2. Improved Mouse Accessibility

GNOME 2.22 introduced special accessibility enhancements for controlling the mouse. These have been further improved in GNOME 2.24:

  • mouse accessibility now works with multiscreen setups;
  • dwelling can now be enabled by dwelling on a special area of the optional dwelling panel application; and
  • the drawing of gestures is now visible on the screen.

3.3. Better Screenreading

GNOME and its partners have worked hard to improve accessibility and screenreading support for both GNOME 2.24 and many popular third party applications.

Text-to-speech and braille device support is now vastly improved for Java applications, OpenOffice.org, Mozilla Thunderbird, Pidgin, GNOME's Help Browser and the GNOME Panel. Users are now made aware of unfocused dialogues when switching to an application.

There has also been a lot of work to integrate GNOME's screen reading technology with ARIA-enabled web browsers, starting with Mozilla Firefox.

Also new is automatic selection of the synthesised voice based on the system language, support for verbalised links, echo by sentence and optional tutorial messages.

4. What's New For Developers

The following changes are important for developers using the GNOME 2.24 developer platform. If you're not interested in changes for developers, you can skip forward to Section 5 ― What's New In Mobile.

4.1. Preparing for GLib/GTK+ 3.0

In order to begin preparing developers for GLib and GTK+ 3.0, upcoming releases of both libraries will include flags to enforce stricter compatibility.

GLib, GTK+ and ATK 3.0 will require that only top-level headers (e.g. glib.h, gobject.h, gio.h) are included in applications. This change is important to allow individual headers to be removed, renamed and rearranged without affecting source code compatibility for applications.

To allow developers to test their applications for compatibility now, new compile-time options have been provided: G_DISABLE_SINGLE_INCLUDES for GLib, GTK_DISABLE_SINGLE_INCLUDES for GTK+ and ATK_DISABLE_SINGLE_INCLUDES for ATK.

Simply pass these as compile-time flags when building your application (e.g. -DG_DISABLE_SINGLE_INCLUDES) to ensure that your application is correct.

Further Compatibility Testing

GLib, GTK+ and associated libraries also provide other compile-time options that you can use to test compatibility with GTK+ 3.0.

You can disable support for deprecated symbols and classes that will be removed in version 3.0 by defining the following when compiling: ATK_DISABLE_DEPRECATED, PANGO_DISABLE_DEPRECATED, G_DISABLE_DEPRECATED, GDK_PIXBUF_DISABLE_DEPRECATED, GDK_DISABLE_DEPRECATED and GTK_DISABLE_DEPRECATED for ATK, Pango, GLib, GdkPixbuf, GDK and GTK+ respectively.

You can test that your program only uses functions that properly support multihead (multiple monitor) systems by defining GDK_MULTIHEAD_SAFE and GTK_MULTIHEAD_SAFE.

4.2. GLib 2.18

GNOME 2.24 is the first version of GNOME release to depend on GLib 2.18.

GLib 2.18 features better support for providing context in string translations with C_() and NC_() macros as well as additional API in GIO.

A complete list of new symbols is available for GLib and GIO.

4.3. GTK+ 2.14

GNOME 2.24 is the first GNOME release to depend on GTK+ 2.14.

An important change in this version of GTK+ is that all widgets that inherit from GtkAdjustment (e.g. spinbuttons and sliders) now strictly enforce their range as [lower, upper - page size], as per the documentation. If you want to ensure a range of [lower, upper], set page_size to 0.

Glade and GTK+ 2.14

All versions of Glade (including 3.4.1) currently create GtkSpinButton, GtkHScale and GtkVScale with a page_size of 10 by default. Developers should check any Glade files they have created to ensure the page size is a value that makes sense.

A new class, GtkMountOperation has been provided for passing to g_volume_mount. GtkMountOperation is a GMountOperation that is able to display an authentication dialogue to the user if required.

A portable method for opening files and other URIs using the default application is now available using the function gtk_show_uri(), rather than having to depend on libgnome. GDK now provides an implementation of GAppLaunchContext for handling graphical applications (including startup notification and focus stealing prevention), GdkAppLaunchContext.

Also new in GTK+ 2.14 is a GFile-based API for GtkFileChooser and the ability for GtkBuilder to build fragments of an XML tree.

A complete list of new symbols is available for GTK+ and GDK.

4.4. Instant Messaging Libraries

Along with its new instant messaging client (see Section 2.1 ― Stay in Touch), GNOME 2.24 includes the libraries libempathy, libempathy-gtk and telepathy-glib that can be used to integrate instant messaging features into any GNOME application.

4.5. Deskbar

The Match interface now includes two new methods: set_snippet and get_snippet. If a snippet is set it will be displayed in a new line underneath the match's get_verb value.

The Action interface has gained a new method get_tooltip. Overriding this method allows a tooltip to be shown when the user hovers the mouse over a match or action.

5. What's New In Mobile

GNOME 2.24 is the first release of the GNOME Mobile development platform. GNOME Mobile brings standard desktop components together to provide a core platform on which distributors and handheld manufacturers can build rich programming environments.

The GNOME Mobile platform is the technological heart of numerous Linux-based mobile device platforms including Maemo, the ACCESS Linux Platform, the LiMo reference platform, Ubuntu Mobile, Moblin and Poky.

The initial GNOME Mobile release set consists of:

  • Core Infrastructure

    • GLib— provides the core application building blocks for portable libraries and applications written in C. It provides the core object system used in GNOME, the main loop implementation and a large set of utility functions for strings and common data structures.
    • DBus— a message bus system providing a simple way for applications to talk to one another and coordinate process lifecycles.
  • System Infrastructure

    • BlueZ— a modular, complete and standards-compliant Bluetooth stack which includes several graphical utilities for GNOME;
    • Evolution Data Server (DBus port) — manages access to the user's calendar, tasks and address book both locally or via many popular network protocols;
    • Telepathy— a unified framework for providing instant messaging, voice and video over IP and point-to-point sockets (Tubes) to user applications;
    • Avahi— multicast-DNS stack providing zeroconf service discovery on the local network;
    • GStreamer— rich multimedia framework that provides simple cases such as audio/video playback and streaming as well as complex cases like capture, mixing and non-linear editing;
    • SQLite— simple, high-performance transactional SQL database that can be easily embedded in applications;
    • GConf— enables the storage and retrieval of configuration preferences;
    • Matchbox— a window manager for non-desktop X11 environments such as handhelds, set-top boxes or any device where screen resolution, input mechanisms or system resources are limited;
    • gio and GVFS— provides a virtual filesystem API which supports a vast selection of services including FTP, SFTP (SSH), WebDAV, NFS and SMB/CIFS;
  • User Interface

    • GTK+— a feature-rich cross-platform toolkit for creating graphical user interfaces with an easy-to-use API.
    • Pango— provides services to GTK+ for laying out and rendering text, with an emphasis on internationalisation.
    • ATK (accessibility toolkit)— ensures basic accessibility is available for all GTK+ widgets, allowing accessibility tools full access to view and control applications.
    • Cairo— a 2D vector graphics library designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available. Cairo provides a simple API similar to PostScript.
  • Language Bindings

    All of the GNOME Mobile platform libraries are available through native C APIs, or through high-quality language bindings providing the full power of the libraries with idioms familiar to developers of other high-level programming languages. The following languages are fully supported:

    • C
    • C++
    • Python

GNOME is committed to supporting these platforms, and will be making downloadable, testable virtual machine images of distributions based on GNOME Mobile 2.24, such as Poky, Moblin and Ubuntu Mobile, to allow developers to test the platform and port applications.

6. Internationalisation

Thanks to members of the worldwide GNOME Translation Project, GNOME 2.24 offers support for 45 languages with at least 80 percent of strings translated, including the user and administration manuals for many languages.

Supported languages:

  • Albanian
  • Arabic
  • Basque
  • Bengali (India)
  • Brazilian Portuguese
  • Bulgarian
  • Catalan
  • Chinese (China)
  • Chinese (Hong Kong)
  • Chinese (Taiwan)
  • Czech
  • Danish
  • Dutch
  • Dzongkha
  • English (US, British, Canadian)
  • Estonian
  • Finnish
  • French
  • Galician
  • German
  • Greek
  • Gujarati
  • Hebrew
  • Hungarian
  • Italian
  • Japanese
  • Korean
  • Lithuanian
  • Macedonian
  • Malayalam
  • Marathi
  • Norwegian Bokmål
  • Polish
  • Portuguese
  • Punjabi
  • Russian
  • Serbian (Cyrillic and Latin)
  • Slovenian
  • Spanish
  • Swedish
  • Tamil
  • Thai
  • Turkish
  • Ukrainian
  • Vietnamese

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

Translating a software package as large as GNOME into a new language can be an overwhelming task for even the most dedicated translation team. For this release six language teams have put in a stellar effort, increasing the completeness of their translations by more than 10%. Congratulations to the Kannada, Maithili, Marathi, Pashto, Croatian and Tamil teams for your hard work.

Detailed statistics and more information are available on GNOME's translation status site.

7. Installing GNOME

You can try out GNOME 2.24 with the LiveCD, which contains all of the software included in GNOME 2.24 on a single CD. You can boot your computer directly from the LiveCD without installing anything. The LiveCD can be downloaded from the GNOME BitTorrent site.

To install or upgrade your machine to GNOME 2.24, we recommend you install official packages from your vendor or distribution. Popular distributions will make GNOME 2.24 available very soon, and some already have development versions with GNOME 2.24 available. You can get a list of distributions that ship GNOME and discover the latest versions 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.24.x to build GNOME 2.24.x. There is also JHBuild, which is designed to build the latest GNOME from SVN. You can use JHBuild to build GNOME 2.24.x by using the gnome-2.24 moduleset.

While it is possible to build GNOME directly from the release tarballs, we strongly recommend the use of one of the build tools above.

8. Looking Forward to GNOME 2.26

Development doesn't stop with GNOME 2.24. Work has already begun on GNOME 2.26, due to be released exactly six months after 2.24.

GNOME's roadmap details the developers' plans for the next release cycle, and the GNOME 2.26 release schedule will appear soon.

9. Credits

These release notes were compiled by Davyd Madeley 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.