- By Grant Gross -
When my colleague Robin "Roblimo" Miller asked readers to name their favorite under-publicized Open Source projects, I was skeptical when one reader named XFce, yet another desktop environment for Unix-like operating systems.
After all, Linux already has two giant, competing desktop environment projects, Gnome and KDE, and a handful of smaller desktop-related projects. I like having options, but I've used KDE and Gnome (the Enlightenment window manager scares me a little but looks pretty darned cool) and found them perfectly useable. So why does the world need another desktop environment for Linux?
It turns out that when XFce chief programmer Oliver Fourdan started the project in 1996, there wasn't a lot of competition around. The KDE project was still in alpha and Gnome was still a twinkle in Miguel de Icaza's eye.
Fourdan, a French developer who works his day job at embedded Linux company Anfora, explains how XFce got started: "Back in late 1996, I'd started working on HP workstations that used CDE and I really liked that interface. I was very disappointed with Microsoft Windows 95 and its 'Start Menu,' so I found the concept of the toolbar in CDE very much more convenient. I had been using Linux since 1994, so it sounded natural to me to try to reproduce a concept I liked, on Linux. And at that time, there were no other projects like this--well at least, none really usable."
He continues: "When finally KDE came out, I thought about dropping XFce, but KDE didn't meet my expectations. It was using too much memory and the look was not
what I was looking for (remember, at that time, KDE wasn't themeable, neither was XFce, but at least I knew the code of XFce so I could make it look like I wanted).
"Later, Miguel (de Icaza) sent me a mail about a project he was starting (that was
GNOME actually). He was looking for a toolbar like the one in XFce, but it needed a rewrite so it could be based GTK+ (at that time, I wasn't using GTK+ which was not yet stabilized, I mean it was GTK
Fourdan says he's not sure why XFce, which currently has about 14 regular contributors working on it, hasn't gotten the publicity or developer interest that KDE or Gnome have.
"Probably because they are better in public relations than me," he says. "And they probably have more time for this kind of stuff. The little time I have, I spend it on coding. When the KDE and GNOME projects started, their authors immediately communicated (to the community). I didn't, not because I did not want to, but mainly because I did not know where to post."
As Fourdan has already hinted, he keeps up with the project because he thinks it works better than the competition in some ways. I decided to take it for a test drive. After downloading XFce 3.8.14 (a simple rpm download and install; I rebooted Mandrake 8.0 and XFce appeared on the login menu), it's difficult for me to understand why XFce doesn't get as much publicity as Gnome or KDE. While Fourdan and his small crew aren't spending their time developing office suites or browsers, they have produced a desktop environment that's about as easy to use as KDE or Gnome, and maybe in some ways, more intuitive.
Fourdan claims several advantages over the big boys. He says XFce uses less computer resources than his competitors. Although he admits memory footprint is not easy to compare, his last benchmarks showed XFce using roughly half of the memory of GNOME 1.2, and about a third of KDE 2.0 running the same functions.
Here's his email signature: "XFce is a lightweight desktop environment for various *NIX systems. Designed for productivity, it loads and executes applications fast,
while conserving system resources. XFce is all free software, released
under GNU General Public License."
I didn't notice a difference between XFce and KDE, but running StarOffice, Netscape, xchat and a couple of other programs on Mandrake 8.0 probably isn't enough heavy lifting to tax my VA Linux Startx SP2 with 256MB of RAM and a 600Mhz processor. So far, I've had two copies of Netscape 6.2, StarOffice 5.2, xchat, Kpaint, The Gimp, and several terminals running at once with no noticeable problems.
Fourdan says he notices the difference in speed with a new laptop. "I recently purchased a laptop with a powerful CPU that comes with one of those recent Trident video cards, and since Trident doesn't allow the XFree86 guys to write an Open Source accelerated driver for that chip (which is definitely a shame, but that's another story), I'm
running X non-accelerated," he says. "And here you can tell that Xfce is faster
that GNOME or KDE."
He lists one more advantage: "Other than the speed and reduced memory footprint, one big advantage of XFce is that it doesn't try to reproduce the Microsoft Windows look and feel, but one may not see it as an advantage. That's a matter of taste."
It took me all of five minutes to start using XFce after doing most of my desktop computing in KDE for the past two years. The default settings have a taskbar on the bottom, very similar to the Gnome or KDE taskbars. In the default, when you minimize an application window, it closes into a little icon on the right side of the screen, instead of in the bottom toolbar. For me, this felt more natural, instead of cluttering up the toolbar, but I come to Linux from years of Macintosh use, so it may be a Mac thing. Double-clicking on the application icons on the side toolbar certainly feels Mac-like to me.
One minor trouble I had was adding applications to the bottom toolbar, which had about two dozen programs included in the default. Included was Netscape 4.77 for a browser, the version that came with my boxed set of Mandrake 8.0, instead of Netscape 6.2 I had installed earlier this week. I also wanted to add StarOffice to the bottom toolbar; the toolbar word-processing choices were AbiWord and Nedit.
Because I was emailing Fourdan anyway, I asked him. But it's quite easy once you find the "add icon" menu option above each toolbar icon.
Of course, when I want to run any program not in the toolbar, I just open up a new X-Terminal and type in the name of the application. Who said the command line was hard to understand?
The advantage of the more extensive toolbar menu in KDE is you can easily browse through your applications if you don't know what exactly you're looking for. With XFce's stripped-down default toolbar, you have to at least know the name of an application to boot it with a terminal, or go digging through your hard drive. I spent a couple of minutes the other night trying to think of the KDE program I could use to resize an image. Of course, once I remembered, I opened a terminal in XFce, typed in "kpaint" and was resizing within seconds.
Readers tell me I can also access both the KDE and Gnome menus and run a program without a terminal by left-clicking on the desktop, which pretty much solves any criticism of XFce I originally had.
I'm considering switching full-time to XFce from KDE, which is a testament to Fourdan and his small band of developers when you compare them to the hundreds of contributors to KDE.
Next up for the XFce team is a new major release, including a totally rewritten window manager that's more configureable, Fourdan says. "XfFe 3.x is pretty stable, so it's time to start a new version, something totally unstable," he jokes.
If he has any goals for the project, more publicity would be nice, he says, so he could attract more developers. He's looking for programmers who know C and GTK+ because XFce doesn't use any of the Gnome libs. "C is the standard accross Xfce components. Good knowledge of X low level API is always good, because if you know how things work at the lower level, your code will be naturally better."
It's tough to tell how many users XFce has -- the desktop environment has been included in some versions of SuSE -- but it averages 100 to 200 downloads a day. Fourdan says he's happy to give *nix users another choice.
"Obviously, I'm glad that other people use and appreciate XFce, and find
it useful, but I'm not looking for 'world domination,' " he says. "Let's say
that GNOME and KDE are very good for all the people who like some kind
of full featured interface, and for the others, there are Enlightenment,
WindowMaker, XFce and a lot of others. That's what I want, giving people
another choice. One good thing about Linux and X is that you can run
GNOME apps along with KDE apps on top of XFce or any other window manager."