From The Linux Foundation
Revision as of 19:47, 24 April 2006 by ImportUser (Talk)

(diff) ←Older revision | view current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

This page is intended to act as a home page for the Destkop subproject. This will provide all the relevant information and activities happening within the project. Please see DesktopRelease for further information regarding release 3.1 and current status.


Charter for the Subproject

At high level the charter for the Destkop subproject is to provide

  • Increased focus on libraries needed by desktop applications like GTK/Gnome, Qt/KDE, more X, imaging etc.
  • Focused work on LSB relevant desktop issues – easier for interested parties to participate
  • Forum to discuss non-binary topics relevant to application behavior
Examples: installation issues (lsbinstall etc.), menu subsystem integration etc.


To understand the requirements for this project we started with the analysis of more than 100 desktop related Linux applications. As a result of this analysis we have identified the following candidates for future LSB releases based solely on usage. These libraries will be analyzed as per LSB criteria.

  • GTK set of libraries (GLIB, ATK, Pango and GTK packages)
  • Some gnome libraries (gnomeui-2, gnome-2, glade-2, gconf-2, gnomevfs-2, bonoboui, bonobo, gnomeprint)
  • XML libraries: xml2
  • Font libraries: freetype2
  • Imaging libraries (png12, jpeg)
  • Crypto libraries (crypto, ssl, krb5)
  • Other libraries (popt)

Library version information

For some of the libraries following table shows the package and library versions used by some of the distros. First column indicates the package name and second the library version.

NLD9 SP2 Ubuntu 5.04 RHEL 4 Suse 9.3Pro RedFlag4.1 SP2 RC1 Neoshine 2.0.2 build12 Mandriva 10.2
JPEG libjpeg-6.2.0-731.2 62.0.0 libjpeg-6b-9 62.0.0 libjpeg-6b-33 62.0.0 libjpeg-6.2.0-738 62.0.0 libjpeg-6b 62.0.0 libjpeg-6b-26 62.0.0 libjpeg62-6b-34 62.0.0
PNG libpng-1.2.5-182.11 1.2.5 libpng12-0 1.2.8rel-1 libpng-1.2.7-1 1.2.7 libpng-1.2.8-3 1.2.8 libpng-1.2.2-25 1.2.2 libpng-1.2.2-16 1.2.2 libpng3-1.2.8 1.2.8
XML2 libxml2-2.6.7-28.4 2.6.7 libxml2-2.6.17-0 2.6.17 libxml2-2.6.16-6 2.6.16 libxml2-2.6.17-4 2.6.17 libxml2-2.6.2-1 2.6.6 libxml2-2.6.2-12 2.6.6 libxml2-2.6.17 2.6.17
GTK gtk2-2.4.14-0.5 2.4.14 libgtk2-2.6.4-0 2.6.4 gtk2-2.4.13-14 2.4.13 gtk2-2.6.4-6 2.6.4 gtk2-2.4.0-1 2.4.0 gtk2-2.4.1-11 2.4.1 libgtk+2.6.4 2.6.4
Freetype freetype2-2.1.7-53.6 6.3.5 libfreetype6-2.1.7-2.3 6.3.5 freetype2-2.1.9-4 6.3.7 freetype-2.1.9-1 6.3.7 freetype-2.1.4-7 6.3.3 freetype-2.1.4-1 6.3.3 libfreetype6-2.1.9-6 6.3.7
fontconfig fontconfig-2.2.92..-8.16 1.0.4 fontconfig-2.2.3-4 1.0.4 fontconfig-2.2.99 1.0.4 fontconfig-2.2.3-7 1.0.4 fontconfig-2.2.1-3 1.0.4 fontconfig-2.2.0-243 1.0.4 fontconfig-2.3.1-2 1.0.4
Openssl openssl-0.9.7d-15.14 0.9.7 openssl-0.9.7e-3 0.9.7 openssl-0.9.7a-43.2 0.9.7a openssl-0.9.7e-3 0.9.7 openssl-0.9.7a-33.4 0.9.7a openssl-0.9.7a-2 0.9.7a openssl-0.9.7e-5.1.102 0.9.7
libGL XFree86-Mesa- 1.2 X 1.2 Mesa-libGL-6.8.2 1.2 Mesa-6.8.2 1.2 X X X X xorg.x11-6.8.2 1.2
libGLU XFree86-Mesa- 1.3 X 1.3 Mesa-libGL-6.8.2 1.3 Mesa-6.8.2 1.3 X X X X libMesaGLU1-5.0.2 1.3


We used the following steps to finalize the roadmap for the first release of LSB desktop module.

  • Step 1: Extensive analysis of both OSS and propritery applications for their library usage. This helped us identify the candidates discussed above. This is an ongoing process. Feedback and participation is highly recommended.
  • Step 2: Analyze each library using LSB criteria. Certain candidates like openssl (stability reasons) are dropped. Since libqt fails the current licensing criteria, it is

in question. However, Please see LicenseCriteria for a discussion on amending this particular crtierion.

  • Step 3: Work with relevant community to identify interface candidates for the spec
  • Step 4: Analyze multiple applications to understand most commonly used functions for a given library. This will help us focus our attention to specific interfaces for developing test suite for the library.

Next steps

  • Packaging and installation requirements for applications

Roadmap for Desktop module releases

Following is the current status for the desktop module roadmap.

For the Dec 2005 release (spec ready for review)

We will devide the deliverables in the following categories:

  • Inclusion of libraries and symbols in LSB
  • Full I18N support (see bug 904 for details)
  • Others; comments welcome.

Set of libraries

Following are the libraries currently being planed to be included with the first version of the desktop module.

  • Self:Freetype: Freetype 2 is a software font engine that is designed to be small, efficient, highly customizable and portable while capable of producing high-quality output (glyph images). It can be used in graphics libraries, display servers, font conversion tools, text image generation tools, and many other products as well..
  • Dependencies: none
  • Current version: 2.1.9
  • GTK libraries
  • Glib/GObject/GModule: These libraries provide core utility functions used by all GNOME programs.
  • ATK: ATK is the Accessibility ToolKit. These interfaces are intended to be used by AT (Accessible Technology) programs to provide services needed for users with accessibility needs.
  • Pango: Pango provides a framework for the layout and rendering of internationalized text.
  • GTK+/GDK/GdkPixbuf: These interfaces provide base widgets, drawing, and image processing functionality.
  • LibXml2: This library allows to manipulate XML files. It includes support to read, modify and write XML and HTML files. There is DTDs support this includes parsing and validation even with complex DtDs, either at parse time or later once the document has been modified. The output can be a simple SAX stream or and in-memory DOM like representations. In this case one can use the built-in XPath and XPointer implementation to select subnodes or ranges. A flexible Input/Output mechanism is available, with existing HTTP and FTP modules and combined to an URI library.
  • Dependencies: none
  • Current version: 2.6.19
  • Image libraries
  • Self:libjpeg: It is a library for handling the JPEG (JFIF) image format.
  • Dependencies: none
  • Current version: 6b
  • LibPng: It is the official PNG reference library. It supports almost all PNG features, is extensible, and has been extensively tested for over nine years.
  • Dependencies: zlib
  • Current version: 1.2.8

Following are the libraries currently being discussed for inclusion in the first release of desktop module.

  • LibQt libraries: LSB WG and FSG are considering the licensing criteria update proposal. Pending that ratification and trolltech schedule alignment, libQt will be standardized as a part of LSB desktop first release.
  • OpenSSL libraries: There are two issues currently discussed around this library set. Readiness of OpenSSL libraries for LSB (potentially including the parts of the library in first release and the remainder in the second release). LSB WG is also finalizing the resource committments around this library.

Other features

  • Full I18N support (see bug 904 for details)

For the H2 2006 release

The next release will be targeted for second half of 2006, potentially with LSB 4.0. The plans will get better baked as we collect more data from application developers. At this time, we see the following candidates:

  • Multimedia libraries
  • Security libraries like Kerberos, OpenSSL etc.

Goal for Desktop suproject

Provide at least 80% library coverage for at least 80% of D/T applications by the end of ’06 (LSB 4.0)