Desktop Environments. Window Managers. GNOME. MATE. KDE, Unity, XFCE. TWM, i3, AwesomeWM… You’ve probably seen these words thrown about across this, and many other Linux websites that have something to do with Linux desktops.
All of these items are Window Managers and some are Desktop Environments.
What’s a Window Manager?
Put simply, a Window Manager is the system that gives the graphical desktop its look and feel as well as sometimes providing the framework for all the apps you use.
What is a Desktop Environment?
A desktop environment takes the Window Manager to the next level. Not all Window Managers have fully fledged desktop environments, however for new users to Linux, it is best to focus only on desktop environments.
For example, the GNOME desktop provides apps like Nautilus, a built in file manager. It also includes a calendar, a notepad, the control panel/settings app and many other basic apps you would expect as part of a desktop environment.
The framework mentioned earlier is the application programming language that developers can write in, in order to display the graphical apps you see in your screen. For example, the GNOME desktop uses the GTK+ language. KDE uses the Qt language and so forth.
Is there any sense in their names?
- GNOME traditionally stood for GNU Network Object Model Environment. It’s currently on Version 3.
- KDE stands for the ‘K Desktop Environment’. KDE started in 1998 and is currently on Version 4. It uses a desktop manager called Plasma.
- MATE is a desktop based on GNOME2. It stands for “MATE Advanced Traditional Environment”.
- Unity is the default desktop environment in Ubuntu Desktop Linux. It replaced GNOME around the time that GNOME3 came out.
There are many other desktop environments (DEs) available for Linux. These are just a few popular ones.
I’ve heard that Window Managers use something called X, or X Windows. What’s that?
The X Window Manager, X11, xorg, XFree86 and others are variants of the rudimentary display ‘server’ which is part of any graphical (GUI) system in Linux/UNIX. For a newbie friendly intro to X, read our article on it here.