December 1, 2005

Tango project aims to clean up the desktop

Author: Nathan Willis

One obstacle for Linux to overcome on the desktop is the lack of a consistent visual interface. While Microsoft Windows and Mac OS X offer users and developers consistent themes, Linux supports a plethora of dissimilar desktop environments and window managers. The Tango Desktop Project is working to change that.

The Tango project is an effort to establish high-usability visual themes for Linux desktops that function consistently across multiple desktop environments. Tango evolved from private discussions between Novell's Jakub Steiner and Mozilla Visual Identity Team lead Steven Garrity. The project went public at the Boston GNOME Summit in October. Project participants are working on specifications for cross-environment themes and a fully compatible theme they hope will be adopted by vendors.

Garrity said his experience with polishing the Firefox user interface convinced him that an effort targeted at Linux desktops would yield similar results: highly beneficial to the end-user experience for a relatively low expense in developer time. Garrity and Steiner sought out the best artists they knew and the team began setting out its goals. At the GNOME Summit they gave a presentation on their work and opened a Web site and mailing list.

Perhaps due to the choice of venues, and Steiner's employment at Novell, the initial participants were predominantly drawn from the community of GNOME contributors -- a fact that led to some early misunderstandings about the project and its intentions.

A few KDE proponents took issue at first with Tango, suggesting on the freedesktop.org xdg discussion list that the Tango project was attempting to override their own work, or of trying to convince independent software vendors that GNOME and Tango were the official Linux desktop standards. Tango representatives were quick to respond, assuring all interested parties that Tango is an open project that actively sought participation from as many projects as possible. Subsequently, contributors from KDE, Xfce, and other projects have come on board.

Participating artists are working on a unified icon theme and a visual style guide to accompany it. Steiner characterizes the theme itself as a test bed for the usability improvements they construct, such as dual-color outline stroking -- a method to make widget and icon silhouettes stand out against any background color.

The theme is designed to strike a balance between the visual appearances of GNOME2 and KDE Crystal, so that in theory application-specific icons will look at home in either, and stray unthemed elements will look good regardless of which theme they appear in. Steiner cites the default Firefox and Thunderbird themes as examples of good cross-environment design; Mozilla-derived applications use their own widgets, but the design does not seem out of place in either KDE or GNOME.

The style guide is intended to document and explain the aesthetic choices in the icon theme so that third-party software developers have a concrete reference should they wish to make their application conform to the unified look and feel. Tango contributors say they will submit the finished theme to the desktop environments and Linux distributions and hope that it will be adopted, but they have not established a timeline.

Garrity says that a modernized, cross-desktop visual theme will appeal to distributions in particular as they have to present a uniform interface across multiple toolkits and platforms. Right now, Linux distributions must re-theme window managers, icon sets, and large standalone packages such as OpenOffice.org in order to present a unified interface.

Indeed there are very few themes designed from the ground up to work with GNOME, KDE, GTK, and Qt. Most popular themes are ported to multiple toolkits, but inevitably such ports suffer from inconsistencies and incompatibilities when compared to natively cross-environment themes.

To mitigate these problems, the Tango project is also working on a pair of specifications of use to any theme. The icon naming specification implements the existing Freedesktop.org Icon Theme Specification and specifies a set of menu item, desktop, and application stock icon names which could be used to ensure any icon theme covers certain base system requirements. The Common Icon Metaphors specification undertakes the more difficult task of finding internationally recognizable and culturally unbiased visual metaphors to use for icon and widget themes.

Garrity and Steiner agree that the specification work is of more importance than the implementation theme the project's contributors are creating. The difficult work for the future will entail composing specifications useful enough for other designers to implement, for independent software vendors to reference, and for large projects and distributions to adopt. The current team is still small, and the project is open for others to join.

Click Here!