Freedesktop.org


freedesktop.org, formerly X Desktop Group, is a project to work on interoperability and shared base technology for free-software desktop environments for the X Window System and Wayland on Linux and other Unix-like operating systems. Although freedesktop.org produces specifications for interoperability, it is not a formal standards body.
The project was founded by Havoc Pennington, a GNOME developer working for Red Hat in March 2000. Widely used open-source Desktop projects, such as GNOME, KDE's Plasma Desktop, and Xfce, are collaborating with the freedesktop.org project. In 2006, the project released Portland 1.0, a set of common interfaces for desktop environments. freedesktop.org joined the X.Org Foundation in 2019. Some of the project's servers are hosted by Portland State University.

Hosted projects

freedesktop.org provides hosting for a number of relevant projects. These include:

Windowing system and graphics

Software related to windowing systems and graphics in general

Other

Also, Avahi started as a fd.o project but has since become a separate project.

Base Directory Specification

XDG Base Directory Specification introduces a range of variables where user-specific files used by programs should be found. Many tools and applications utilize these variables by default.

User directories

Besides the variables mentioned below, XDG BDS also specifies that users' local binary files may be installed into. Systems compliant with the spec are expected to make this directory available in their CLI's environment variable.

System directories


Stated aims

The project aims to catch interoperability issues much earlier in the process. It is not for legislating formal standards. Stated goals include:
  • Collect existing specifications, standards, and documents related to X desktop interoperability and make them available in a central location.
  • Promote the development of new specifications and standards to be shared among multiple X desktops.
  • Integrate desktop-specific standards into broader standards efforts, such as Linux Standard Base and the ICCCM.
  • Work on the implementation of these standards in specific X desktops.
  • Serve as a neutral forum for sharing ideas about X desktop technology.
  • Implement technologies that further X desktop interoperability and free X desktops in general.
  • Promote X desktops and X desktop standards to application authors, both commercial and volunteer.
  • 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.
  • Provide source repositories, web hosting, Bugzilla, mailing lists, and other resources to free software projects that work toward the above goals.