Linuxgruven > Software > Archived Bits > A Comparative Review of X11 GUI's

A Comparative Review of X11 GUI's


Sept 14, 1999
Updated Jan 30, 2001
Updated May 8, 2002

Ben Hall



KDE 2.1 http://www.kde.org


Okay, I started writing a KDE 2 review at beta 5. Well, it, RC1 and 2, 2.0 and 2.01 have all been released and I haven't ever uploaded my KDE 2 review. So, now 2.1beta1 is out. I'm writing a review about it. It'll be shorter, but it'll make it to the web site, I promise.

I'll break this up into two parts: What's new in KDE2, and what's changed in the 2.1 beta.

KDE2: The Unix Desktop Experience Grows Up

When KDE 1 originally came out in 1998 it marked the beginning of a transition of Unix from a strictly server-based OS to a more friendly useful computing platform. KDE showed that it was possible to harness the power of Unix and still provide a consistent, easy to understand interface to new users. While a lot has changed since 1998, KDE has again rewritten the rules, providing a new benchmark for usability in an interface. This time I'd wager that they are not only challenging other Unix DE's, but indeed the user interface to all popular Operating Systems. I'm not exaggerating here, KDE2 is such a quantum leap forward from the 1.x branch that it's really starting to challenge the interfaces of both the Mac and Windows operating systems. This small team of developers is extremely ambitious and capable. It's a joy to follow their constant evolution.

2.0 Highlights:

There are two main highlights of KDE2: Konqueror, the web-browser/file manager and KOffice, an integrated office suite for KDE.

Konqueror is a great web and file browser. It's power lies in that it's made almost completely of various components. There are presently components for web, ftp, smb, and of course file browsing. Moreover, the web component is of a very high quality, rivaling that of even Mozilla. Konqueror can also natively view any file type viewable by a KDE application. When you click on a PDF file, kGhostview opens a view into the browser. While this sounds similar to MS's embedding it is much more integrated and faster. The transition form one type of document to another is quite seamless. You really have to use it to understand how good it actually is.

I could write a book on konqueror alone it I had the time, so I'd best wrap it up at this point. Be sure to check out my review of Konqueror as well as some screenshots of it in action. A picture really is worth a thousand words.

KOffice is the next area that I'll discuss. It's a complete Office suite, featuring a word-processor, spreadsheet, presentation app, and now a vector- drawing app similar in concept to Visio. While the whole suite is still pre 1.0 it is quite usable. It won't be replacing StarOffice on my system yet, but given how quickly the KDE team moves when they set their mind to something, I'm confident that it'll mature into a very capable suite over the next year.

The rest of the environment has also been significantly overhauled. Really, KDE 2.x bears little resemblance to the 1.x branch. This is a major overhaul, and almost a complete rewrite.

The 2.1 Beta

So, with the momentous 2.0 out of the way, what have they been working on for 2.1? Quite a bit actually.

2.0 has a sophisticated theming capabilities. These have been left largely untapped because of a lack of an easy way to create and distribute a theme. With 2.1, the theme manager is now bundled, so this has been taken care of. Keep your eyes peeled for a proliferation of excellent themes soon.

The whole system also seems to be getting faster, and various components crash far less. Konqueror was a little notorious for being slightly unstable under heavy use, this is largely taken care of now.

Konqueror has been improved in many other areas as well. The Java support seems to work perfectly for me now, and the Netscape plugin support also seems better. I now am able to use Konqueror for about 99% of my web browsing, only slipping into Mozilla for very complex javascript.

Konqueror showed its potential in 2.0, it's a reality now. This is hands down the best browser that I've used in Linux. After waiting for years for Mozilla to become a reality, it's being overshadowed.

Konqueror's local and FTP file browsing abilities have also improved, among other areas you can also now choose to view text and HTML files as small thumbnail previews. This is done in the background, so there's no noticeable speed degradation.

KOffice is also improving. The apps seem more stable, though it's still not going to unseat StarOffice. Kivio (the vector drawing app) is now included as a standard part of KOffice, my thanks go out to The Kompany for donating this.

KDevelop, the excellent Visual C++-like IDE for KDE is also present as a part of the beta. I gather that the porting was quite difficult, and it's still not as featured or stable as the version for KDE 1.x, but I'm sure it'll be solid by the time it's included in the standard KDE distribution.

Overall, KDE2.1 is a great step. While not nearly as revolutionary as 2.0, this release really shows how committed the developers are to going the extra mile for users and developers everywhere. Like 1.1 was to 1.0, 2.1 is to 2.0. It's the release that everyone will really start to use and remember. It's a very solid upgrade. The beta seems to be at least as stable as 2.0, so I'd recommend everyone upgrade from 2.0 to the new 2.1 beta.

Wait to go KDE, you're doing it again!




Gnome 1.2.x http://www.gnome.org


Gnome the "Desktop Environment" was born of a project old-gnome whose goal was to give a common look and feel to Unix GUI apps using a totally free (GPL) toolkit, GTK used by the Gimp. When KDE started to really gain acceptance, OpenSource diehards shifted the goal of the project to compete directly with KDE as a complete environment.

Unlike KDE, Gnome doesn't come with a WindowManager. Instead, there are published specifications that developers can follow to make their WindowManager "Gnome-aware." At the moment, no WindowManager is completely Gnome-aware, though Enlightenment is very close, and BlackBox, WindowMaker, and IceWM are also close follow-ups.



By default, if you use RedHat 6.0 or later, your Gnome Environment will consist of the Gnome Panel, a file manager, gmc, and the Enlightenment or Sawmfish (Nee Sawmill) WindowManager.



Gnome, as an environment, is quite similar to KDE. Like KDE, it has an integrated file manager, the excellent Midnight Commander. The Gnom-ized version of MC (gmc) offers great file management, and implements a virtual filesystem that treats tar files, bzip's, zip files, ftp sites, NFS mounts, and Samba SMB shares as the same basic file system. This level of abstraction is simply wonderful. While the console version seems to pull it off perfectly, the Gnome version seems to be a little slow, and unstable. The stability of Gnome improves by leaps and bounds with each release.



Gnome is a truly beautiful environment, and is extremely configurable. It, combined with Enlightenment, offers a fresh look at GUI's. However, Gnome has its drawbacks. First, it is less stable than KDE. Secondly, it is a younger project, and it's lack of polish is blatantly apparent after using it for a while. It reminds me much more of what I think of when I think of Linux. It is geared towards the advanced user/programmer/hobbyist/purist rather than being geared towards "Mom" as is the case with KDE. While it has no integrated browser, it accepts Motif hints, so Drag & Drop with Netscape is possible. Also, Mozilla is using Gtk as its toolkit, so when it gets finished, it should integrate very nicely with Gnome.



Gnome grows up: HelixCode (aka Xinian)



While this is old news now, Helix Code has been making a very slick install of Gnome for almost all Linux distros as well as for Solaris. Their influence on the Gnome Project has really brought Gnome up to speed. It's now a very polished, mostly professional looking DE. It's also been gaining in poplarity in traditional Unix space. Sun, HP and IBM have all pledged to support Gnome Development and use it as their default DE, rather than the venerable CDE.

Eazel also looks to be making positive inroads with it's file manager Nautilus. It is meant to be a replacement for GMC and offers features similar to KDE's Konqueror file manager/web browser. It will utilize Mozilla for the browsing engine and will integrate heavily with Eazel's on-line products. Under current testing so far, Nautilus has offered a lot more hype than substance. Really, Konqueror does almost all of what they're aiming for, and it's fast, stable and available today. Nautilus as of my lest testing (Late December 2000) was still very much alpha quality, and no real competition yet.

Noteworthy Gnome Apps:



Gnumeric - Gnumeric is a very basic spreadsheet program that shows great progress. One of the original Gnome Apps, it has been a testing ground to show what's new with Gnome. It can import Excel files, writes natively to XML, and offers extensive CORBA embedding, allowing a user to easily add drawing canvas items to their spreadsheet.



Gnumeric now prints, a necessary feature added around July or August. It does so using the new Gnome-print architecture. Even if you don't use a spreadsheet, it's worth keeping this program current so you know what to expect from other Gnome apps. Also, Gnumeric is extensible via Python scripts. This means that adding functionality is easy, and portable. Having said all of this I will admit that it's not a replacement for StarCalc yet...



AbiWord - A nice, stable, basic Word Processor, AbiWord lacks many features one would expect, such as page numbers, styles, reveal codes, and fancy formatting. Yet, it can import RTF and Word97 files, writes XML and HTML, and is establishing itself as a fixture in OpenSource development. It is slowly turning itself into a very slick product, and has much potential.



GnoRPM - This is a GUI front-end to rpm, similar in concept to kpackage. GnoRPM is RedHat's replacement to Glint. It is searchable, and allows a user to install, uninstall, upgrade, or query an RPM package. It's a great little application that also offers the ability to synch with some FTP site, ensuring that you stay current on all bug fixes and security issues. It's accessible as bot a stand-alone app, and as an extension to gmc.



Gnometoaster - Gnometoaster is the best CDR package that I have ever used. I was so amazed by it that I offered to write the user's manual. It is a great program that has totally converted my from using Windows as my CD Creation platform. It lets you do drag & drop CD creation either internally, or using gmc. You can write audio tracks on the fly using any of CD Audio tracks, Wav files or MP3's. It's a great program that is getting better with each release.



Screem - Site CrEation EnvironMent. This web site editor is the closes thing to a site management package that you'll find in Linux. It offers syntax highlighting, and a great HTML reference. It is only a few months old, and is still quite unstable, but it is coming along nicely, and makes managing large sites much easier.



GnomeCal - This little calendar program is the best I've ever used! It's very light, and not as feature-rich as Outlook, but it has scheduling feature, multiple views, has a to-do list, and reads and writes the vCalendar standard as its default file type. This means that it is compatible with Outlook, Netscape Calendat, and KDE's Organizer.

To sum things up, KDE is more polished, more stable, and offers a good all-in-one solution to the end-user, while Gnome is more interesting, more forward thinking, less polished, and more to Unix's roots. Rather than wanting to replace everything, Gnome hopes to work well along side Emacs, Vi, and whatever other Unix program someone might use.



Personally, I think that KDE SHOULD be the eventual default, but that Gnome, as it stabilizes, will win out in the end. For now, it's very fun to watch the two camps leapfrog with features. They copy the outstanding features of the other as they evolve, so there is nothing lost in the end. I don't use either, myself. Instead, I use a combination. Presently, I am using BlackBox as a WindowManager, KFM for file management, both GnoRPM and Kpackage, as well as the console rpm. I use Netscape and KFM for browsing, and have a perfect way of getting things done. It works well for me, but not for everyone. After all, Linux is about choice. No one would argue about a lack of that.




XFCE 3.x http://www.xfce.org


Billed as the Third Choice in the Desktop Environment game, XFCE is an interesting suite of applications that is growing into a nice environment whose emphasis on simplicity and speed is a welcome change to the all-or-nothing approach taken by the other "Big Two."

XFCE started out as a simple application bar that resembled CDE and could be used as a basic desktop switcher and program launcher. In version 2.0, it incorporated its own WindowManager, XFWM, which was based on FVWM. It also included a pager, sound program, and the ability to change its colours. It was originally written using Xforms, a GUI toolkit that, like QT, was easy to use, but lacked an open license. In version 3.0, Olivier, the author of XFCE, has made a big leap. He rewrote everything using Gtk, added the ability to modify Gtk themes, and added a file manager, Xftree (Based heavily on another file manager, XTree.)

I started using XFCE at around version 2.4 (when it was using XForms.) I had just come to university and was being introduced to computing life outside of Windows. After seeing Solaris for the first time, I was intrigued by the interface. When I tried Linux I was disappointed that all it gave me a poor Win95 Imitation. (This was fvwm95, the default with RH 4.2)

Anyway, eventually (once I figured out what a WindowManager was) I found XFCE. Since then I have used it on and off. Mostly on.

When KDE 2.0 came out I got all wrapped up with that, and after using KDE for about six months straight I once again found myself using XFCE, which had gained many new features, had gotten even more stable, and yet had somehow not grown exponentially in size or memory usage.

I've been using XFCE full time for about four months again, and have decided that the whole Gnome vs. KDE thing is just not for me.

Xfce, while not nearly as comprehensive as the "big two", just works. It's simple, it's fast, the keyboard navigation is top notch, as is both the user and developer community.

Okay, enough of the glowing mini-review, here are some tips for the author (and others new to xfce)

  • If you left-click on the desktop you can select "User Menu." In here you can access your Gnome and KDE menus, so you don't have to know what kpaint is called, you can just select "User Menu" -> KDE -> Graphics -> Paint. Similarly, you can do User Mneu -> GNOME -> Graphics -> The GIMP
  • You can also add your own items to User Menu. In fact, the no-nonsense menu editor, while very simple, is one of the best menu editors I've used. It's fast, doesn't slow me down, and I don't have to worry about the eye candy of menu icons.
  • You don't need to open an xterm to launch an app. You can also either left click ont the desktop and click "Run Program" or simply hit ALT-F12.
  • XFCE comes with a slew of _very_ useful programs. Of particular interest are XFTree and XFSamba. XFSamba is a GUI for, you guessed it, samba! Like the rest of XFCE, it just works. I've tried Gnomba, but it often crashes on me, Konqueror's SMB ioslave never seems to work right for me, but xfsamba never has failed me. Check it out.

XFtree is my favorite gtk file manager. Again, it's not fancy (Like Nautilus, or even gmc) but it works very well. It's the file manager I use most after the excellent console version of MC. Best of all, Edscott Wilson Garcia, who wrote xfsamba, has been working heavily on xftree and is improving it daily. He's even working on drag and drop between xfsamba and xftree.

There are other useful xfce utilities too! XFglob is a great file search tool, xfdiff is a nice graphical diff program, and there's other good stuff being added too.

I especially suggest using XFce for people who are interested in a light computing environment. A configuration that I am using on almost all of my machines now is the following:

DE/WM: XFce
File Manager/Desktop icons: Rox filer/XFtree
Web Browser: Galeon, Opera or Dillo
Mail Client: Sylpheed or Evolution
Word Processor: AbiWord, Applix or WP8 (or CrossOver's Office if you can afford it.)
Other Desktop apps: Gnumeric, JPilot

I have two machines set up this way: An Athlon 900 with 768MB of RAM and an old Laptop. A P233 with 64MB RAM. I find that the above works perfectly on either. Initially I set XFce/Rox/Sylpheed/Dillo up just for the laptop. At the time I was using KDE on the big machine. Then I realized how much all of the fancy integration costs. KDE was unusable on the laptop, Gnome without Nautilus or GMC was okay, but XFce etc. put them all to shame. I also recently set Sarah's machine up this way. She too finds it very usuable, and has had no complaints. She has made this switch from Windows 2000, which she found too slow.

Rox is a great file manager that complements Xfce well. It's blindingly fast, has lots of features normally only associated with Natilus or Knoqueror, and is very tiny.

If I was going to create a distribution tomorrow I would use the above setup as the default rather than KDE or Gnome. The apps are great, but the overall weight of the system is just too much. I find XFce on my Debian Potato laptop is finally about as fast as Win95 was on the same machine. Oh, and PCMCIA actually works better on that machine in Linux than it did in Windows.

Honestly, XFce and Rox are such nice programs, I'm really shocked that more people don't use them. They're fast, the developers are responsive, and the programs are small and stable. I used to cringe when people would tell me that they were installing Linux onto a machine with lower specs than my laptop. It doesn't have to be that way.

As for the apps, most Gtk apps that I use seem to be as fast as you could expect. Xmms, Gnumeric, abiword, jpilot, even gimp are all quite fast considering what they do. Personally, I'm impressed that the author got StarOffice to work as well as he did. I tried OpenOffice on my laptop. I started it up, a few minutes later the HD was still thrashing. I gave up and logged out. Works great on the Athlon, though, and build 642 seems a bit faster. Applix and WordPerfect 8 are _much_ faster. In fact, I'd argue that recent builds of AbiWord aren't actually much speedier than WordPerfect 8 for Linux. XFCE keeps getting better. Very handy utilities are added fairly regularly. These aren't earth-shatteringly complex, skinable, anit-aliased monster programs, but small , convenient tools that just work well. While I appreciate the work that goes into a large scall project like KDE or Gnome, it's quite nice to take a look at what else is out there. There's a lot of good stuff if you go looking.

If you're disillusioned by the Gnome KDE controversy, check this out! Because it uses GTK, D&D between other GTK apps is allowed, and adding items to the launch bar is a simple job of dragging from either Gmc or Xftree to the bar. It's that easy!






Enlightenment 0.16 http://www.enlightenment.org


And now for something completely different.

Enlightenment, like Linux, is one of those projects that comes around every so often, and changes the way people think about the tool they're using. Enlightenment is a completely different way of looking at Window Managers. It isn't meant to be the fastest (though it CAN be very fast) or the most feature-rich (though it CAN be exceptionally feature-rich) it is simply meant to be the most off-beat, most configurable, and most original WindowManager available. In this respect, it is an unequivocal success.



Enlightenment can be anything you want it to be. It can be very fancy, it can be very plain. It can be very slow, or very fast. If you plan it right, E can run faster than any other Window Manager I've used, with the exception of BlackBox.



Enlightenment is what you want it to be. I've set mine up to look like a Mac, BeOS, Win9x, FVWM, or anything else under the sun. My favourite theme has been AbsoluteE. It is an earthy version of the BeOS with the functioning buttons (Minimize, Max, and close) hidden away. E can import your KDE and Gnome menu's, and is the most Gnome compliant WindowManager available. The author, Rasterman, was an employee of RedHat until a little while ago. Since his bitter departure, E has gotten MUCH cooler, and looks to replace Gnome as a Desktop Environment, as he will be adding a file manager, and Panel capabilities already exist. Also, since Rasterman left RedHat for VA Research, support for KDE hints have been implemented. This means that E falls in to the same category as BlackBox and WindowMaker, as they are all KDE and Gnome aware!



Enlightenment may turn you off when you first look in to it, but stick with it. It's a refreshing change from both complete UI's, and traditional Window Managers. Its themeability is unparalleled, and it can be a vers stable and fast environment. The new pager and icon box found in 0.16 are a really interesting concept, redefining how people display open windows. IF your machine has a little muscle, and you want to try something new, give it a spin.






BlackBox 0.51.3 http://blackbox.alug.org/


This is the WindowManager that I'm using on my desktop as I write this. It takes the exact opposite view to most WindowManagers, as it tries as hard as it can to be extremely small, and ultra-efficient. The binary is only 170k, the sources are about the same size, and it is the absolute fastest WindowManager that I've ever used. It doesn't require GTK, QT, or anything fancy. The total code, start to finish, is only 14000 lines. For comparison, Enlightenment's source tarball (with themes) is roughly 6MB compressed.

Despite the small size, BlackBox packs a lot of features. It is themeable, though you can't use pixmaps. This means that, for a theme, you can only configure colours, gradients, and backgrounds. Besides being fast and themeable, BlackBox is ICCCM compliant, and completely understands KDE Hints. As well, if you download a small patch, it can be Gnome-compliant.



The menus, which consist of straight text files, can't yet be configured using any special GUI programs, but are very easy to understand and configure. Scripts exist to convert your KDE and Gnome menus to the BlackBox format.



As fun as E is, as feature-rich as KDE is, and as slick as XFCE is, it's very refreshing to use a Window Manager that is as small and fast as this. It really speeds up your applications when you ditch all of the overhead.



BlackBox binaries exist for most distributions, check it out!






WindowMaker 0.63 http://www.windowmaker.org


This NEXTstep look-alike has garnered quite the following. It is a very nice compromise for a WindowManager. It's quite snappy, rather configurable, themeable, supports KDE and Gnome hints, and looks quite nice. It also makes use of Dock-apps, small applets that perform limited tasks, such as drive mounting, network monitoring, mail monitoring, cd-players, and other such tasks. I've used it in many scenarios, though it is not my favourite Window Manager. It's very easy to set up, as there are several nice GUI programs out there.

WindowMaker is a nice, elegant, stable window manager that offers new users a totally different look that is still intuitive, and configurable. As a bonus, it was one of the first Window Managers to offer themes. While not as complete as E themes, WindowMaker themes are easy to set up and install, and offer the new user a customizable work environment.




FVWM http://www.fvwm.org


This is a very old WindowManager that was once very original and forward thinking. It has been the base for many other programs, but is really showing its age. It will never die off, but is slowly fading to the background. If you run Linux, you've almost certainly got it on your system, but I really try to avoid it, as there are many better alternatives out there.


IceWM http://www.fvwm.org


IceWM is the runner-up in Gnome compliance, second only to Enlightenment. Unlike E, it's pretty boring. It is themeable, but not nearly as configurable as E. It's goal is to be fast, stable, Gnome compliant, and to look a lot like MS Windows.

While it's not the most visually appealing WindowManager, it is very stable, and a good way to use Gnome, as an environment. It really does reach all of its design goals. There is an available program, IcePref, that is a great visual tool for setting up all options of IceWM.






AfterStep http://www.afterstep.org


The original free NEXTstep implementation, AfterStep, like FVWM has been around for a long, long time. It is a nice WindowManager, but if you're starting out, I'd check in to WindowMaker instead.




SawMill/Sawfish http://www.dcs.warwick.ac.uk/~john/sw/sawmill/index.html


I learned about this one after reading an article on Slashdot. It is a really neat WindowManager, and I think that it will take over as being the preferred Gnome WindowManager. Since Raster, from Enlightenment fame, has had a major falling out with both RedHat and Gnome's lead developer Miguel Di Iacaza, I think that they'll be ditching E pretty soon. Sawmill looks to be a pretty good candidate for a replacement. As a stand-alone WindowManager, it is VERY boring. It really doesn't do anything special. It has no native pager, but supports themes and virtual windows. It really screams for the Gnome Panel and Gmc, though, as it's pretty bare without. Combine it with the aforementioned Gnome components, though, and you're left with a dead-ringer for E. Since the developers have blatantly stolen some popular E-Themes, you maybe won't even notice the switch. (Well, it's faster.)

So, if you're tired of E, but like gnome, and want your good 'Ole Absolute-E theme and Brushed Metal theme, check it out. It really is pretty slick.