We are still actively working on the spam issue, the wiki may be restored to an earlier date and account creation may be disabled.
A Desktop Environment provides a framework for developing modules. On top of that, a full featured desktop environment contains a myriad of components which work together to provide the user with a working environment. Amongst the most important, we can list the theme engine and the window manager.
Primarily, what a DE means to you is how you interact with the desktop. Systems such as Windows and Macintosh only have one user interface to use. The GNU/Linux systems have many User Interfaces to choose from, with about four mainstream ones in use. Of course, there are thousands you can choose from.
Back in the 1980's, both *nix and DOS systems would have these shells that could run over the system. Windows 1.0 started as one of these shells. Now everything is locked down into what they think you should be using. GNU/Linux never adopted this philosophy. If you feel the need to make a new Desktop Environment, tell us. We'll be happy to try it out!
Good DEs are modular and will allow the users to mix and match and switch any of their modules with another of their choice. Running multiple Desktop Environments without uninstalling others is one mere file edit away.
Window managers (WMs) are X clients that provide the border around a window. The window manager controls the appearance of an application and how it is managed: typically the border, titlebar, size, and ability to resize a window are handled by a wm. Many window managers provide other functionality such as places to stick dockapps, menus to configure the WM and other useful things.
Window managers generally do not provide extras like desktop icons, which are commonly seen in desktop environments (though it is possible to add icons in a WM with another program).
Due to the lack of extras, WMs are much lighter on system resources, although you could also use them as yet another module of a full-fledged desktop environment with nothing but a little technical expertise.
1. Stacking (aka floating)
- Provides the traditional desktop metaphor used in commercial operating systems like Windows and OS X. Windows act like pieces of paper on a desk, and can be stacked on top of each other.
- These "tile" the windows side-by-side so that none are overlapping. They usually make very extensive use of key-bindings and have less (or no) reliance on the mouse. Tiling window managers may be manual, offer predefined layouts, or both.
- A type that can dynamically switch between tiling or floating window layout.
(The WMs listed below are the most common found in /g/ ricing threads. Go ahead and set one up with as all the smugness and Chinese cartoon girls your heart can muster.)