Flipping the Linux switch: Desktop environments vs. window managers
Picture this: It's late at night. You've restarted your computer. The optical drive is whirring contentedly, but you have butterflies in your stomach. Tonight is the night you install Linux for the first time.You choose your language, and then your keyboard layout. This is pretty easy, so far. A partitioner works its magic on your hard disk, either resizing your Windows partition or wiping it completely.
Suddenly you are blindsided by the question: Which default desktop environment would you like to install?
Do you know? Do you care? What in the blazes is a desktop environment, anyway? How is that different from a window manager? When is it more appropriate to use one over the other?
Simply put, a desktop environment in Linux is, well, what "Windows" is to Windows. It's the coordinated interface that is your desktop. It's a complete package of graphical applications that sits on your X (graphical) server which in turn sits on an imposing, cold, command line. Linux desktop environments (such as GNOME and KDE) are robust (window manager fans may go so far as to say "bloated") series of applications designed to work together. GNOME is based on the GTK+ toolkit, and KDE is based on Qt. A little confusing? Fear not. We'll cover GNOME and KDE (and the controversy that surrounds them) in more detail in the next two weeks.

A window manager is a seemingly simple concept. It's a graphical interface that simply (are you sitting down for this?) manages windows. Most window managers, to the new Linux user, look exceedingly sparse. There are no recognizable panels, and often times no taskbars or visible menus. There may be a few mysterious applets associated with the window manager. It may not be readily apparent how to move or resize windows.

There are are few things you need to take into consideration. The first matter is hardware. You can use a full-bodied desktop environment on a machine that is (much) older or has less than wonderful specifications, and it might run fine. More than likely, though, it'll be a slow, frustrating experience. Older hardware is a relative term: KDE 3.5 will run fine on 512 megs of RAM with a fast enough processor (around 1 Ghz), and might be tolerable on half that, depending on what else you have running in the background. GNOME is a little less resource intensive, and a slightly slower processor with 256 megs of RAM would be workable for most.
A machine with less than 128 megs of RAM would be a prime candidate for a window manager. It'll run a lot faster, and even though it has more of a learning curve, increases your chance of a positive Linux experience.
The other consideration, of course, is how you're going to use the machine. A machine that is used solely for a dedicated task (such as a personal video recorder or file server) should be focusing most of its processing power on the task at hand... not on running background processes for applications you're not going to use. In these cases, you'll likely want a window manager.
Enlightenment, Fluxbox and WindowMaker are popular window managers, but there are literally dozens of them. Chances are good there are more than a few in your distribution's repositories, so that you'll be able to install one quickly and (fairly) painlessly. They're so lightweight that trying out a couple on an older piece of hardware or installing one alongside a desktop environment to play with won't cause noticeable drag on your system.
Most new Linux users feel more at home with the Windows and Mac-esque feel of a desktop environment, and we'd recommend at least starting with one if at all possible. While the majority of new users opt for KDE or GNOME, Xfce is a great choice should your hardware be straddling the system requirements fence. Desktop environments give a powerful, cohesive overview of what your shiny new (or not so new) Linux box can do.












Comments
13
Subscribe to commentsgeneralguyDec 18th 2007 6:14PM
Technically KDE's wm is kwin and GNOMES is metacity, I think. Compiz is another wm. A desktop environment can be small as well, like xfce.
freaktechDec 19th 2007 8:49AM
Compiz is a little more then a windows manager. It is also a composite manager. Not something you would want to run without the desktop enviroment.
airdrikDec 20th 2007 12:35PM
While compiz does take care of all of the wm tasks, it comes lacking when it comes to being used as a stand-alone wm. Primarily it lacks some sort of menu or easy method of selecting and launching applications (usually taken care of by the desktop environment with which compiz is run).
PeterDec 18th 2007 8:36PM
Nice overview of windows managers and desktop environments. Cleared thing up for me.
By the way, the link to xfce.org is broken...
Kristin ShoemakerDec 18th 2007 8:46PM
Thanks Peter! The link has been fixed for Xfce (pesky "w" key).
RumbleDec 18th 2007 8:48PM
Nice informative article. People need to know the basics.
Alex MDec 19th 2007 10:51AM
I'm with Rumble: nice introductory piece. I'll keep an eye out for the rest of the series!
manutiDec 19th 2007 3:21AM
Yeah XFCE rockss.
LockeDec 19th 2007 2:07PM
Excellent post and very good info for those new to Linux. I am personally dedicated to letting people know anything that could help them to have a positive Linux experience rather than try it once and give up, and have written up my own post on the subject and linked you within. Check out my take on the matter at http://lockenet.blogspot.com/2007/12/desktop-environments-vs-window-managers.html and please let me know what you think. Cheers!
Post On FireDec 19th 2007 9:29PM
Good to share this information, people need to have more knowledge about this...!!!
Richard ChapmanDec 23rd 2007 11:53PM
Yeah, it's going to take a lot of information along with a big hammer to overcome two decades of "one size fits all" operating systems. No dear Toto, "We're not in Kansas anymore".
BobCFCDec 19th 2007 6:12PM
Even though I have a monster 8gb PC I still play around with lightweight software in the search for lower latency and instant response times.
Lately I've been trying tiled window mangers such as AWM (awesome window manager). Tiled windows don't float but automatically maximise to fill the space, you usually have one big pane on the left and two or three small panes on the right.
No overlapping. No alt-tabbing. It's an interesting model and works great with multiple xterm sessions.
davemcDec 22nd 2007 2:15AM
Since there are so many different distro's, with many specializing in various DE's and WM's, it might perhaps be better to focus on reviewing some of those, ie. Ubuntu for GNOME, SUSE for KDE, Wolvix or Xenwalk for XFCE, Elive for e17, Fluxbuntu or DSL for Fluxbox, PuppyLinux for (ICEWM?), etc. Although some folks DO try out different WM's within thier chosen distro after some time, those environments are typically very plane jane and many come with a good deal of config issues since no developmental work has gone into them from the mother distro. Most people are more likely to try out a livecd of a distro which spec's in one they are interested in to get a real feel for what a fully working and tweaked out WM environment is all about.