A Desktop Environment is hard to define without referring to itself. Something that provides a unified look and feel (as a WindowManager would) but on top of that, a desktop environment provides set of tools for managing logins/sessions/applications and perhaps even a toolkit for creating other applications. MicrosoftWindows' desktop environment is Explorer.

For Linux, there are two obvious contenders in this field:

  • the K Desktop Environment, KDE.
  • the GNU Object Model Environment, GNOME.

The concept dates back to Sun's CDE, the Common Desktop Environment. It was the graphical environment that Solaris was based on. It includes the login manager, the session manager, the window manager, and various desktop tools.

Note: You don't have to run a desktop environment, even if you want to run KDE or GNOME software. As long as you have the correct libraries installed, then you can run the applications on top of whatever window manager you want, or if you're really suicidal, without one at all. Some people find them work quicker and more efficiently without the bloat of one, but for most LinuxOnTheDesktop situations you are going to want to select one or the other of the two common options.