I clicked 'click here to enlarge' but I'm still the same size!

Eight Reasons Why Fluxbox Is My Favorite Desktop

Date/Time Permalink: 04/05/09 04:06:31 pm
Category: Reviews

It happened again, this time at Tech Republic. They ask the question "Which Linux desktop would you show to a new user to impress them?" and the answers are limited to 3 versions of KDE, 2 versions of Gnome, 2 variations of Enlightenment... and Fluxbox once again is left lurking in the shadowy anonymous depths of the dreaded option "other".

What the hell does Fluxbox have to DO to get some love around here?

Fluxbox logo

For that matter, what does Window Maker, FVWM, iceWM, and the other diverse Linux-native desktops have to do? You occasionally find somebody who stumbles upon the inconceivable notion that XFCE exists alongside KDE and Gnome, but basically Linux desktops suffer from the same misconception that plagues the rest of technology: binary thinking. There is a maximum of Two (2) choices in any topic, because one brain can't seem to handle the complexity of thinking about more than two. (Microsoft or Apple, Mac or PC, Visual Basic or C++, Democrat or Republican, Coke or Pepsi, God or Devil) Even Linus Torvalds seems to not be aware of anything beyond KDE and Gnome.

Well, bust that. If you haven't tried Fluxbox yet, you don't know what you're missing, and here's why:

#1: FAST!!!

There's a very good reason why Fluxbox is the default desktop in lightweight Linux distros like Damn Small Linux: It is one of the fastest desktops out there. You can't appreciate what a difference this makes until you try the same program on either system. You know when you start Firefox on KDE and you have a few minutes to twiddle your thumbs while the system crunches until it displays Firefox? That doesn't happen on lightweight window managers like Fluxbox. Click - BAM! - it's open. Fluxbox is also ideal for old hardware and new hardware with limited resources, for this reason.

#2: Stylish

Now, point #1 could hold just as well for Blackbox, IceWM, heck, even Ratpoison. But Fluxbox takes the extra step of making the desktop look good. XFCE can look good in a tasteful cute way and KDE always looks good in a flashy, gaudy way, but only the Fluxbox desktop can consistently be described as "sleek and sexy". Fluxbox.org's own screenshots page doesn't even do it justice; check out the shots at DeviantArt, a site which owes its roots to the software skinning community. Box-Look also sports some Fluxbox theme bling.

#3: Simple

With all the complaints you hear out there about Linux being hard to learn, this should be an especially compelling point: you can learn Fluxbox in about a day, period. There's a man page, another man page on creating your own theme, a few text files in your home directory under the '.fluxbox' menu, and that's it. If you want extra features, there's third-party downloads galore. The whole system is set up with the 'plug-in' mentality. It has far fewer features than its competitors, but you can add what you need and not be annoyed by having the features you don't need. The first rule of design is that it is uncluttered, even to having no desktop icons by default.

#4: Easy text file setup

Don't knock the text file method until you've tried it! For example, to make your own menu, you only need to know:

  • System-special commands get square brackets [].
  • Titles for entries get parenthesis ().
  • Programs to be launched get curly brackets {}.
  • System-special commands include [begin] [end] [submenu] [separator]. There's others, but the system includes them by default at the end, and there's no reason to mess with them.
  • You can include program-specific options between the curly-brackets {}. Anything you'd type from a command-line to launch something can go right into the brackets.

An excerpt from my own menu:

      [exec] (xscreensaver) {xscreensaver-demo}
      [exec] (CDplayer)     {gnome-cd}
      [exec] (Totem)        {totem}
      [exec] (pickBG)       {~/code/script/wish/pickBG}
      [exec] (FB_BG.py)     {~/code/python/FB_BG.py}

[submenu] (Office)
      [exec] (Abiword)      {abiword}
      [exec] (Gedit)        {gedit}
      [exec] (Evince)       {evince}
      [exec] (NVU)          {/usr/local/share/nvu-1.0/nvu}

...and so on. Begin a new submenu with [submenu], end it with [end]. There, you've learned menu editing. It even passes the Notepad test. How long did it take you to figure out menu customization in KDE and Gnome, or, God forbid, XFCE?

#5: No default keys

This is a pet peeve I have with other desktops. A, well, kind of flaming pet rage, actually. Especially with KDE, whose developers are absolutely DETERMINED to define a default action for EVERY possible keyboard combination you could ever think of, no matter how piddling and pedantic that action is. Alt-shift-tab-SysRq? No, they thought of that one too. That's the command to make it unmount all USB media while changing the desktop icon theme to Pumpkin Pie while whistling "Singing in the Rain" and readjusting your monitor to 640x480. Here, look at this screenshot from a recent KDE system:

Somebody's a real smart-ass

I've never seen a keyboard in my entire life that has an F13 key, but if we invent one, Trolltech has already pounced on it and demanded first dibs. You know what happens when we define every action for the desktop? There are no keys left for applications. I can't hit a key in a program without KDE going, "Oh! He wants to change the theme! Quick, stick a big, fat, slow dialog in his face on top of his application!" You know what it takes to disable keyboard shortcuts in KDE? Click each one and then confirm the "Are You SUUUUURE?" dialog one at a time for all 16,491 key combinations. You could replace waterboarding with this.

Fluxbox doesn't do this to me. So I'll just have to get my abuse the old-fashioned way, from paying a dominatrix.

#6: Tabs

Another pet peeve I have is programs which don't understand the concept of tabs. Gnome is better about this; both Gnome Terminal and the text editor GEdit use tabs for opening multiple sessions/ files. For those programs which haven't joined the 21st century yet, Fluxbox has this little tab it sticks onto a window, which you can drag onto another window's tab and poof, they become one united super-window with as many applications or files as you want. It can also let you specify windows to auto-group whenever they open. Here's an example of the Gimp, with tool options tabbed to the main panel and six image files tabbed together:

500% smarter than other window managers

Considering how many people out there complain about multiple windows being opened, this is quite a perk. That's Fluxbox design in a nutshell: so smart, it even makes up for the shortcomings of other programs.

#7: The Slit

Let me try saying this with a straight face: Do you want to see my slit? Here it is:

Surprisingly clean, isn't it?

The slit holds dockapps, those cute little square programs that also run in the panels of Gnome, KDE, and XFCE desktops and in the Window Maker dock. With Fluxbox, the slit can be hung from any edge of the desktop space in any direction, can be themed, can be made transparent, and can be made to auto-hide and pop up on mouse-over. Once again, it's smartened up with a minimalist design with plug-ins you can add.

For those who will ask: The slit is showing pclock (clock), wmmemmon (RAM monitor), cputnik (CPU monitor), wmhdplop (disk read/write monitor), wmnet (network monitor), and wmix (sound volume control). Also before anyone asks: Dockapps are a mess! Some are packaged with distros, some have to be compiled, some need to be updated... You're on your own! Until either Dockapps.org gets updated or somebody whacks together a one-stop distribution point that's as easy to use as Firefox's add-on site.

#8: It gets out of your way!

What other annoyances doesn't Fluxbox have? It doesn't take extra time to start up with a splashy opening. It doesn't declare 1000 dumb sounds for every trivial event (KDE, 1000 confirmed dialogs to disable, waterboarding, dominatrix), it doesn't require a whole suite of programs to go with its environment... it does exactly what so many interface pundits out there say they want: it's happy to be invisible. Two days into your first Fluxbox trial, and you will forget it's there!

PS: While I'm on the subject, there is the XWM Guide I have on this site. It's about three, maybe four years out of date by now (since I ported it from an old site). It's badly aged and on my list for an overhaul. So, yeah.

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

suddenly the moon