These are not really standards
Note: freedesktop.org is not a standards body.
Draft specifications that have pretty good de facto adoption/agreement:
* <a href="http://www.newplanetsoftware.com/xdnd/">DnD</a> is the drag-and-drop specification shared between <span class="createlink"><a href="https://secure.freedesktop.org/write/www/ikiwiki.cgi?page=GTK%2B&from=Specifications&do=create" rel="nofollow">?</a>GTK+</span> and <span class="createlink"><a href="https://secure.freedesktop.org/write/www/ikiwiki.cgi?page=Qt&from=Specifications&do=create" rel="nofollow">?</a>Qt</span>. A <a href="./XDND/">local copy</a> of the spec resides on the wiki. <a href="./XDNDRevision/">Work on revisions</a> are in progress. * <a href="./wm-spec/">Window manager specification</a> standardizes extensions to the ICCCM between X desktops; we are also working to merge these extensions into the ICCCM itself as appropriate. * The <a href="./xembed-spec/">XEmbed</a> proposed specification for inter-application embedding of controls. * <a href="./clipboards-spec/">X clipboard explanation</a> is not a formal specification, but explains our consensus on how the X clipboard works. Qt and GTK+ both follow this document. * <a href="http://www.pps.jussieu.fr/~jch/software/UTF8_STRING">UTF8_STRING</a> selection format for interchange of UTF-8 data. * <a href="http://pyxml.sourceforge.net/topics/xbel/">The XML Bookmark Exchange Language</a>, or XBEL, is an Internet "bookmarks" interchange format. * <a href="./desktop-entry-spec/">Desktop Entry specification</a> 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. * <a href="./menu-spec/">Menu specification</a> specifies how menus are built up from desktop entries. * <a href="./basedir-spec/">Desktop base directory spec</a> details how desktops should locate files at runtime. * The <a href="./icon-theme-spec/">Icon Theme specification</a> proposed specification for a common way to store icon themes. * <a href="./free-media-player-specs/">Free Media Player Specifications</a> deal with standard ways to store and read metadata across players and media formats.
Draft specifications that are new and not yet widely used, though they may be used by one or more desktops or desktop applications:
* The <a href="./icon-naming-spec/">Icon Naming specification</a> proposed specification for a common way to name icons and their contexts in an icon theme. * The <a href="./shared-mime-info-spec/">shared MIME database</a> contains common MIME types, descriptions, and rules for determining the types of files. * The <a href="./xsettings-spec/">XSETTINGS</a> proposed specification for cross-toolkit configuration of user settings. * The <a href="./direct-save/">X Direct Save</a> (XDS) protocol specifies how to save a file by dragging to a file manager window. * The <a href="./systemtray-spec/">System tray protocol</a> proposed specification for a "notification area" feature. <a href="./SystrayAndAppletsMeeting/">Notes from the XDevConf meeting</a>. * The <a href="./recent-file-spec/">Recent File</a> specification proposed specification for storing lists of recently used files. * The <a href="http://triq.net/~jens/thumbnail-spec/index.html">Thumbnail</a> management specification proposed specification for storing file thumbnails (<a href="http://people.freedesktop.org/~vuntz/thumbnail-spec-cache/">copy available here</a>). * Proposal for an <a href="./clipboards-extension-spec/">extension to the ICCCM selections mechanism</a> allowing xclipboard-like tools to limit the amount of transferred data. * The <a href="./startup-notification-spec/">startup-notification-spec</a> describes a mechanism to allow desktop environments to track application startup, to provide user feedback and other features. * The <a href="./cursor-spec/">Cursor Conventions specification</a> is a draft specification that seeks to standardize usage and names for mouse cursors. * The <a href="./file-uri-spec/">File URI specification</a> defines how to interpret <a href="file://">file://</a> URIs, as used for drag and drop and other desktop uses. * The <a href="./clipboard-manager-spec/">Clipboard manager specification</a> describes a way for a clipboard manager to store clipboard data when applications quit. * The <a href="./trash-spec/">Trash specification</a> provides a common way in which all "Trash can" implementations should store, list, and undelete trashed files. * The <a href="./autostart-spec/">Autostart specification</a> 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 <a href="http://ghns.freedesktop.org/spec/">GHNS and DXS specs</a> describe a collaborative data exchange platform based on the HTTP protocol and web service interaction. * <a href="./icc_profiles_in_x_spec/">ICC Profiles in X Specification</a> * The <a href="./open-collaboration-services/">Open Collaboration Services</a> specification describes an API to integrate community web sites with the desktop. * The <a href="./desktopcouch/">DesktopCouch</a> specification describes record formats for integrating <a href="http://couchdb.apache.org">CouchDB</a> in the desktop, already being used by some applications, like Evolution, Tomboy and Firefox * <a href="./sound-theme-spec/">Sound Theme Spec</a> is a specification proposal for sound theme and sound naming. * The <a href="./help-spec/">Help Specification</a> specifies a standard location and URI scheme of installed help documents. * <a href="./file-manager-interface/">File Manager D-Bus Interface</a>, a common way to interact with the desktop's file manager. * The <a href="./OpenRaster/">OpenRaster specification</a> 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 email@example.com.
Proposed X extensions:
* <a href="../Software/FixesExt/">X Fixes Extension</a> is a draft specification for changes in how the device independent parts of the X server works. * <a href="../Software/XDamage/">X Damage Extension</a> is a draft specification for an extension to allow applications to track modified areas within a window or pixmap. * <a href="../Software/CompositeExt/">X Composite Extension</a> is a draft specification for an extension that moves sub-trees of the window hierarchy to off-screen memory, permitting access to and manipulation of those bits, including constructing the parent window contents programmatically rather than automatically. * <a href="../Software/XEvIE/">X Event Interception Extension</a> is a draft specification for an extension to allow a client program to intercept all input events. (<a href="http://www.freedesktop.org/~ajax/xevie/xevie.html">link</a>)
The above four extensions are deployed as of Xorg 6.8. Damage and Fixes are enabled by default, while Composite and XEvIE must be enabled by the user at runtime.
Specifications currently in the planning/requirements-gathering stages:
* <a href="./shared-filemetadata-spec/">Shared File Metadata Spec</a> (reading/writing/searching file based metadata) * <a href="./mime-actions-spec/">MIME run actions</a> (deciding which application should be used to open a file). * <a href="./config-spec/">Shared configuration system</a> (a desktop-neutral replacement for gconf and similar). * <a href="./default-keys-spec/">Shared default keyboard shortcuts</a> (every application running should use the same keys for _Save_, _Quit_, etc). * <a href="./audio-metadata-spec/">Audio files meta data</a> (apps that deal with audio files should use same abbreviations when dealing with the meta data) * <a href="./bidi-spec/">Bidirectional scripts</a> (support for bidirectional scripts like Arabic and Hebrew in desktop software) * <a href="./help-system/">Proposed Help Spec</a> (The beginnings of a specification for how to find help files.) * <a href="./db-shortcut-spec/">Shortcut to a database connection</a> (The proposal of a specification for how to store information about remote database connections; currently used by Kexi: www.kexi-project.org) * <a href="./desktop-config-spec/">Desktop configuration Spec</a> (A D-BUS protocol and schema specification for desktop configuration) * <a href="./desktop-bookmark-spec/">Desktop Bookmark Spec</a> (A storage format for bookmarks used by file selectors and applications; it should supercede the <a href="./recent-file-spec/">Recent File</a> specification; currently used by GTK) * <a href="./desktop-language-checking-spec/">Desktop Language Checking Spec</a> (a spec for spell and grammar checking) * <a href="./mpris-interfacing-specification/">MPRIS Media player remote interfacing specification</a> A media player DBus interfacing specification * <a href="./Composite-retained-drawing/">Composite retained drawing protocol</a> * <a href="http://www.oyranos.com/wiki/index.php?title=OpenIccDirectoryProposal">OpenICC Directory Proposal</a> for placing and finding colour related files in a system * The <a href="../ApplicationPackageSpec/">Application Package Specification</a> is designed to provide a desktop neutral way to package an application. Installation is not required. * <a href="./DBPC/">DBPC - DBus for process control</a> 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. * <a href="./secret-storage-spec/">Secret Storage Spec</a> is a draft of an API for securely storing secrets using a D-Bus service. * <a href="./StatusNotifierIcon/">StatusNotifierIcon</a> - a proposal for cleaning up the notification area/panel.
* The <a href="./colorscheme-spec/">Desktop Color Scheme specification</a> 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**).