Freedesktop.org
Encyclopedia
freedesktop.org is a project to work on interoperability and shared base technology for free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 desktop environment
Desktop environment
In graphical computing, a desktop environment commonly refers to a style of graphical user interface derived from the desktop metaphor that is seen on most modern personal computers. These GUIs help the user in easily accessing, configuring, and modifying many important and frequently accessed...

s for the X Window System
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...

 (X11) on Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 and other Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 operating systems. It was founded by Havoc Pennington
Havoc Pennington
Robert Sanford Havoc Pennington is an American computer engineer and entrepreneur.He is known in the free software community due to his work on HAL , GNOME, Metacity, GConf, and D-BUS.- Career :...

 from Red Hat
Red Hat
Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....

 in March 2000.

The organisation focuses on the user. There are many development frameworks for X, and this is unlikely to change. The organisation seeks to ensure that differences in development frameworks are not user-visible.

The most widely used free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 X desktops, GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...

, KDE
KDE
KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...

 and Xfce
Xfce
Xfce is a free software desktop environment for Unix and other Unix-like platforms, such as Linux, Solaris, and BSD – though recent compatibility issues have arisen with regard to BSD Unix platforms...

, are working closely with the project. In 2006 the project released Portland
Portland Project
The Portland Project is an initiative taken to establish a greater Linux foothold in the desktop market. It aims at resolving a number of key factors that are believed to reduce the adoption rate of Linux distributions as desktop operating systems....

 1.0 (xdg-utils), a set of common interfaces for desktop environments.

freedesktop.org was formerly known as the X Desktop Group, and the acronym "XDG" remains common in their work.

Hosted projects

freedesktop.org provides hosting for a number of relevant projects. These include:
  • X.Org Server
    X.Org Server
    X.Org Server refers to the X server release packages stewarded by the X.Org Foundation,which is hosted by freedesktop.org, and grants...

    : the official reference implementation of X11. The current version is a fork of XFree86
    XFree86
    XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and is now available for many other operating systems and platforms. It is free and open source software under the XFree86 License version 1.1. It is developed by the...

     before the latter changed its license.
  • D-Bus
    D-Bus
    In computing, D-Bus is a simple inter-process communication open-source system for software applications to communicate with one another. Heavily influenced by KDE2–3's DCOP system, D-Bus has replaced DCOP in the KDE 4 release. An implementation of D-Bus supports most POSIX operating...

    , a message bus akin to KDEs DCOP
    DCOP
    DCOP, which stands for Desktop COmmunication Protocol, is a light-weight interprocess and software componentry communication system. The main point of this system is to allow applications to interoperate, and to share complex tasks...

     or GNOME's Bonobo
    Bonobo (computing)
    Bonobo is a component model for creating reusable software components and compound documents. It was created by the company Ximian for compound documents used in GNOME....

    .
  • Drag-and-drop
    Drag-and-drop
    In computer graphical user interfaces, drag-and-drop is the action of selecting a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object...

    : X drag and drop still does not work consistently.
  • HAL
    HAL (software)
    HAL was a software project providing a hardware abstraction layer for Unix-like computer systems.HAL is now deprecated on GNU/Linux systems, with functionality being merged into udev as of 2008–2010...

     (Hardware Abstraction Layer) is a consistent cross-operating system
    Operating system
    An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

     layer; it has been deprecated and replaced by udev
    Udev
    udev is the device manager for the Linux kernel. Primarily, it manages device nodes in /dev. It is the successor of devfs and hotplug, which means that it handles the /dev directory and all user space actions when adding/removing devices, including firmware load.-History:udev was new in Linux...

    .
  • fontconfig
    Fontconfig
    Fontconfig is a computer program library designed to provide system-wide font configuration, customization, and application access. Fontconfig is written and was originally maintained by Keith Packard...

     is a library for font discovery, name substitution, etc.
  • Xft
    Xft
    Xft, the X FreeType interface library, is a free computer program library written by Keith Packard. As of version 2.1, it is licensed under a quasi-BSD license....

    , anti-aliased fonts using the FreeType
    FreeType
    FreeType is a software library written in C that implements a font rasterization engine. It is used to render text on to bitmaps and provides support for other font-related operations.-Details:...

     library, rather than the old X core fonts.
  • Cairo
    Cairo (graphics)
    cairo is a software library used to provide a vector graphics-based, device-independent API for software developers. It is designed to provide primitives for 2-dimensional drawing across a number of different backends...

    , a vector graphics library with cross-device output support.
  • Direct Rendering Infrastructure
    Direct Rendering Infrastructure
    In computing, the Direct Rendering Infrastructure is an interface and a free software implementation used in the X Window System to securely allow user applications to access the video hardware without requiring data to be passed through the X server. Its primary application is to provide...

    , or DRI, is an interface used in the X Window System
    X Window System
    The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...

     to securely allow user applications to access the video hardware without requiring data to be passed through the X Server.
  • GStreamer
    GStreamer
    GStreamer is a pipeline-based multimedia framework written in the C programming language with the type system based on GObject.GStreamer allows a programmer to create a variety of media-handling components, including simple audio playback, audio and video playback, recording, streaming and editing...

     is a cross-platform
    Cross-platform
    In computing, cross-platform, or multi-platform, is an attribute conferred to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms...

     multimedia framework
    Multimedia framework
    A multimedia framework is a software framework that handles media on a computer and through a network. A good multimedia framework offers an intuitive API and a modular architecture to easily add support for new audio, video and container formats and transmission protocols...

    .
  • Mesa 3D
    Mesa 3D
    Mesa 3D is an open source 3D computer graphics library that provides a generic OpenGL implementation for rendering three-dimensional graphics on multiple platforms. It was initially developed by Brian Paul in August 1993, and is still maintained by him today...

    , an implementation of OpenGL
    OpenGL
    OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...

    .
  • XCB
    XCB
    In computing, XCB is a C language binding for the X Window System. It is implemented as free software and aims to replace Xlib. The project was started in 2001 by Bart Massey....

    , an Xlib
    Xlib
    Xlib is an X Window System protocol client library written in the C programming language. It contains functions for interacting with an X server. These functions allow programmers to write programs without knowing the details of the protocol...

     replacement.
  • GTK-Qt engine
    GTK-Qt
    The GTK-Qt Theme Engine is a project allowing GTK+ to use Qt widget styles. Aimed primarily at KDE users, it uses Qt to draw the widget into an offscreen buffer, then draws a copy of the contents of this buffer onscreen.- External links :** at KDE-Look.org...

    , a GTK+ 2 engine which uses Qt
    Qt (toolkit)
    Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...

     to draw the widgets, providing the same look and feel
    Look and feel
    In software design, look and feel is a term used in respect of a graphical user interface and comprises aspects of its design, including elements such as colors, shapes, layout, and typefaces , as well as the behavior of dynamic elements such as buttons, boxes, and menus...

     of KDE applications to GTK+2 applications.
  • Poppler
    Poppler (software)
    In computing, Poppler is a free software library used to render PDF documents. It is used by the PDF viewers of the open source GNOME and KDE desktop environments, and its development is supported by freedesktop.org....

    , a PDF rendering library.
  • Wayland
    Wayland (display server)
    Wayland is a display server protocol for the Unix-like operating systems and a library for Linux implementing that protocol.Wayland provides a method for compositing window managers to communicate directly with applications and to communicate directly with video and input hardware...

    , a lightweight display server which intends to provide perfect GUI experiences (user can never see tearing, lag, redrawing and flicker) for the Linux desktop.


Also, Avahi
Avahi (software)
Avahi is a free zeroconf implementation, including a system for multicast DNS/DNS-SD service discovery. It is licensed under the GNU Lesser General Public License ....

 (a free Zeroconf
Zeroconf
Zero configuration networking , is a set of techniques that automatically creates a usable Internet Protocol network without manual operator intervention or special configuration servers....

 implementation) started as a fd.o project but has now moved elsewhere.

Stated aims

The aim of the project is not to legislate formal standards. Rather, it aims to catch interoperability issues much earlier in the process.
  1. Collect existing specifications, standards and documents related to X desktop interoperability and make them available in a central location;
  2. Promote the development of new specifications and standards to be shared among multiple X desktops;
  3. Integrate desktop-specific standards into broader standards efforts, such as Linux Standard Base
    Linux Standard Base
    The Linux Standard Base is a joint project by several Linux distributions under the organizational structure of the Linux Foundation to standardize the software system structure, including the filesystem hierarchy, used with Linux operating system...

     and the ICCCM;
  4. Work on the implementation of these standards in specific X desktops;
  5. Serve as a neutral forum for sharing ideas about X desktop technology;
  6. Implement technologies that further X desktop interoperability and free X desktops in general;
  7. Promote X desktops and X desktop standards to application authors, both commercial and volunteer;
  8. Communicate with the developers of free operating system kernels, the X Window System itself, free OS distributions, and so on to address desktop-related problems;
  9. Provide source repositories (git
    Git (software)
    Git is a distributed revision control system with an emphasis on speed. Git was initially designed and developed by Linus Torvalds for Linux kernel development. Every Git working directory is a full-fledged repository with complete history and full revision tracking capabilities, not dependent on...

     and CVS
    Concurrent Versions System
    The Concurrent Versions System , also known as the Concurrent Versioning System, is a client-server free software revision control system in the field of software development. Version control system software keeps track of all work and all changes in a set of files, and allows several developers ...

    ), web hosting, Bugzilla
    Bugzilla
    Bugzilla is a Web-based general-purpose bugtracker and testing tool originally developed and used by the Mozilla project, and licensed under the Mozilla Public License....

    , mailing lists and other resources to free software projects that work toward the above goals.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK