These are not really standards
Note: freedesktop.org is not a standards body.
Draft specifications that have pretty good de facto adoption/agreement:
- Desktop base directory spec details how desktops should locate files at runtime.
- Desktop Entry specification describing information about an application such as the name, icon, and description. These files are used for application launchers and for creating menus of applications that can be launched.
- Menu specification specifies how menus are built up from desktop entries.
- The shared MIME database contains common MIME types, descriptions, and rules for determining the types of files.
- The Icon Theme specification proposed specification for a common way to store icon themes.
- Free Media Player Specifications deal with standard ways to store and read metadata across players and media formats.
- The startup-notification-spec describes a mechanism to allow desktop environments to track application startup, to provide user feedback and other features.
- The Trash specification provides a common way in which all "Trash can" implementations should store, list, and undelete trashed files.
- The Autostart specification describes how applications can be started automatically after the user has logged in and how media can request a specific application to be executed or a specific file on the media to be opened after the media has been mounted.
- The XML Bookmark Exchange Language, or XBEL, is an Internet "bookmarks" interchange format.
X-related specifications:
- DnD is the drag-and-drop specification shared between ?GTK+ and ?Qt. A local copy of the spec resides on the wiki. Work on revisions are in progress.
- Window manager specification standardizes extensions to the ICCCM between X desktops; we are also working to merge these extensions into the ICCCM itself as appropriate.
- The XEmbed proposed specification for inter-application embedding of controls.
- X clipboard explanation is not a formal specification, but explains our consensus on how the X clipboard works. Qt and GTK+ both follow this document.
- UTF8_STRING selection format for interchange of UTF-8 data.
Draft specifications that are new and not yet widely used, though they may be used by one or more desktops or desktop applications:
- The MIME Applications specification (deciding which application should be used to open a file).
- The Icon Naming specification proposed specification for a common way to name icons and their contexts in an icon theme.
- StatusNotifierItem - a proposal for cleaning up the notification area/panel.
- The XSETTINGS proposed specification for cross-toolkit configuration of user settings.
- The X Direct Save (XDS) protocol specifies how to save a file by dragging to a file manager window.
- The System tray protocol proposed specification for a "notification area" feature. Notes from the XDevConf meeting.
- The Recent File specification proposed specification for storing lists of recently used files.
- The Thumbnail management specification proposed specification for storing file thumbnails (copy available here).
- Proposal for an extension to the ICCCM selections mechanism allowing xclipboard-like tools to limit the amount of transferred data.
- The Cursor Conventions specification is a draft specification that seeks to standardize usage and names for mouse cursors.
- The File URI specification defines how to interpret file:// URIs, as used for drag and drop and other desktop uses.
- The Clipboard manager specification describes a way for a clipboard manager to store clipboard data when applications quit.
- The GHNS and DXS specs describe a collaborative data exchange platform based on the HTTP protocol and web service interaction.
- ICC Profiles in X Specification
- The Open Collaboration Services specification describes an API to integrate community web sites with the desktop.
- The DesktopCouch specification describes record formats for integrating CouchDB in the desktop, already being used by some applications, like Evolution, Tomboy and Firefox
- Sound Theme Spec is a specification proposal for sound theme and sound naming.
- The Help Specification specifies a standard location and URI scheme of installed help documents.
- File Manager D-Bus Interface, a common way to interact with the desktop's file manager.
- The OpenRaster specification describes an open exchange format for layered raster-based graphics.
If you feel any of these specs should be moved among the "standard", "de facto", and "proposed" categories, please let us know on xdg-list@lists.freedesktop.org.
X protocol extensions:
- See http://www.x.org/releases/current/doc/index.html#protocol for the latest X protocol extension specs.
Specifications currently in the planning/requirements-gathering stages:
- Shared File Metadata Spec (reading/writing/searching file based metadata)
- Shared configuration system (a desktop-neutral replacement for gconf and similar).
- Shared default keyboard shortcuts (every application running should use the same keys for Save, Quit, etc).
- Audio files meta data (apps that deal with audio files should use same abbreviations when dealing with the meta data)
- Bidirectional scripts (support for bidirectional scripts like Arabic and Hebrew in desktop software)
- Proposed Help Spec (The beginnings of a specification for how to find help files.)
- Shortcut to a database connection (The proposal of a specification for how to store information about remote database connections; currently used by Kexi: www.kexi-project.org)
- Desktop configuration Spec (A D-BUS protocol and schema specification for desktop configuration)
- Desktop Bookmark Spec (A storage format for bookmarks used by file selectors and applications; it should supercede the Recent File specification; currently used by GTK)
- Desktop Language Checking Spec (a spec for spell and grammar checking)
- MPRIS Media player remote interfacing specification A media player DBus interfacing specification
- Composite retained drawing protocol
- OpenICC Directory Proposal for placing and finding colour related files in a system
- The Application Package Specification is designed to provide a desktop neutral way to package an application. Installation is not required.
- DBPC - DBus for process control is layer above DBUS which define a standard set of objects, interfaces and methods for use in process control. It will provide a common standard for industrial communication, especially between HMI, SCADA and field electronic equipement.
- Secret Storage Spec is a draft of an API for securely storing secrets using a D-Bus service.
Retracted Specifications
- The Desktop Color Scheme specification is a draft specification that defines names for colors to be used for rendering user interface elements. It also provides an algorithm for generating a matching set of colors from a single base color (The colorscheme spec has been pulled on request of its authors).
