freedesktop.org (fd.o), formerly X Desktop Group (XDG),[1][2] is a project to work on interoperability and shared base technology for free-software desktop environments for the X Window System (X11) and Wayland on Linux and other Unix-like operating systems. Although freedesktop.org produces specifications for interoperability, it is not a formal standards body.[3]

freedesktop.org
Type of site
Software development management system
Available inEnglish
Created byHavoc Pennington
URLwww.freedesktop.org/wiki/ Edit this at Wikidata
CommercialNo
LaunchedMarch 2000; 24 years ago (2000-03)
Current statusOnline

The project was founded by Havoc Pennington, a GNOME developer working for Red Hat in March 2000. Widely used open-source X-based 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 (xdg-utils), a set of common interfaces for desktop environments.[4] freedesktop.org joined the X.Org Foundation in 2019.[5][6] Some of the project's servers are hosted by Portland State University.[7]

Hosted projects

edit

freedesktop.org provides hosting for a number of relevant projects.[8][9] These include:

Windowing system and graphics

edit

Software related to windowing systems and graphics in general

Other

edit

Also, Avahi (a free Zeroconf implementation) started as a fd.o project but has since become a separate project.

Base Directory Specification

edit

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

User directories

edit

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

XDG_DATA_HOME
For user application's own data files
Default to $HOME/.local/share
XDG_CONFIG_HOME
For user's app configuration files
Default to $HOME/.config
XDG_STATE_HOME
For user-specific app session data, which should be stored for future reuse
Default to $HOME/.local/state
May include logs, recently used files, application-specific information (e.g. window layout, views, opened files, undo history, etc.), akin to session data that should be stored by app by request of system session manager, like X session manager
XDG_CACHE_HOME
For user-specific apps cache files
Default to $HOME/.cache
XDG_RUNTIME_DIR
For user-specific app runtime files like sockets which must not survive reboot and full logout/login cycles

System directories

edit
XDG_DATA_DIRS
Colon-separated list of preference-ordered paths to search for data files in
Default to /usr/local/share/:/usr/share/
XDG_CONFIG_DIRS
The same as above but for config files
Default to /etc/xdg/

Stated aims

edit

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 (git[16] and CVS[17]), web hosting, Bugzilla, mailing lists, and other resources to free software projects that work toward the above goals.

See also

edit

References

edit
  1. ^ "X desktop group".
  2. ^ "Freedesktop.org, home of the X Desktop Group". Archived from the original on 2001-02-02. Retrieved 2013-08-26.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  3. ^ "Specifications". freedesktop.org. Retrieved 2023-10-27.
  4. ^ Portland points desktop Linux at $10 billion market Archived October 12, 2006, at the Wayback Machine, DesktopLinux.com, 11 October 2006
  5. ^ "X.Org To Join Forces With FreeDesktop.org While Foundation Elections Hit A Snag". Retrieved 9 September 2021.
  6. ^ Larabel, Michael (11 April 2019). "X.Org To Join Forces With FreeDesktop.org While Foundation Elections Hit A Snag". Phoronix. Retrieved 2023-10-27.
  7. ^ "Welcome to freedesktop.org". Freedesktop.org. Retrieved 27 October 2023.
  8. ^ "FreedesktopProjects". freedesktop.org. Retrieved 2013-09-22.
  9. ^ "Software". freedesktop.org. Retrieved 2013-09-22.
  10. ^ "Glamor". freedesktop.org. 17 May 2013. Retrieved 31 October 2015.
  11. ^ "Pixman". pixman.org.
  12. ^ Wallen, Jack (6 December 2011). "DIY: Get top-quality open source security tools in one distro". News, Tips, and Advice for Technology Professionals. Archived from the original on 2021-04-18. Retrieved 2019-06-21.
  13. ^ "[ANNOUNCE] libinput 0.4.0". freedesktop.org. 2014-06-24.
  14. ^ a b XDG Base Directory Specification, freedesktop.org, accessed: 2021-05-15.
  15. ^ "XDG Base Directory - ArchWiki". wiki.archlinux.org. Retrieved 2021-10-08.
  16. ^ "freedesktop.org git". Gitweb.freedesktop.org. Retrieved 2013-09-22.
  17. ^ "ViewVC Repository Listing". WebCVS.freedesktop.org. Archived from the original on 2013-10-08. Retrieved 2013-09-22.

Sources

edit
edit