A desktop environment is a suite of software that provides the basic services expected in a GUI. Most desktop environments also provide a development framework for building applications that interoperate with these services and with each other. A desktop environment can be integrated with the operating system, as in Microsoft Windows, integrated with the window system, as in BeOS or Mac OS X, or independent, as under X11.
There are four basic components common to all desktop environments: a window manager, a file manager, a program launcher or panel, and a control panel or other configuration interface. It is customary on X11 to also offer a display manager. In desktop environments with heavy system integration, these can often be the basic interface to these functions provided by the operating system. In addition to these basic services most desktop environments come with a number of applications integrated with the basic components. Common such inclusions are text editor, a web browser, a calculator, and a Solitaire game.
On X11, some standalone window managers, such as Window Maker and FVWM, provide most of what would be expected from a minimal desktop environment. However, these programs are not considered desktop environments. Not only do they lack development environments, they usually lack a file manager and often also a control panel. Additionally, on X11, it is usual for the components of a desktop environment to be usable (somewhat) independently of the others. These window managers are too monolithic for this to be possible.
The major desktop environments for X11 are:
Other desktop environments under development for X11 are:
A comparison of X11 desktop environments can be found at http://xwinman.org/ .
This writeup is copyright 2004 D.G. Roberge and is released under the Creative Commons Attribution-NonCommercial-ShareAlike licence. Details can be found at http://creativecommons.org/licenses/by-nc-sa/2.0/ .