Flexible for a Fluxbox? – Lightweight X Window Manager for UNIX / Linux

by Leonardo Sanchez on January 15, 2010

One of the many great things about using UNIX or a UNIX-like operating system is the ability to tailor your environment to your liking. If you want a full-fledged GUI with all the bells and whistles then Gnome, KDE, or LXDE are probably for you.

But, if you want something less resource intensive that offers a greater degree of control then Fluxbox Window Manager is what you’re looking for.

Introduction to Fluxbox

Fluxbox Window Manager was forked from Blackbox 0.61.1 and is written in C++. It is a lightweight window manager for X11 that uses floating windows (as opposed to tiling like Xmonad or awesome). Some of Fluxbox’s features include the slit, toolbar, system tray, tabbed windows, the apps file, the keys file, and a fully customizable root menu. It stores its configuration files in ~/.fluxbox/.

If you need more in-depth information about customization then check out the Fluxbox wiki or use the man pages.

Fluxbox Slit

The slit is an application dock. Some applications, such as Frostwire and Transmission, can be docked rather than minimized. If you’re on a laptop you may want an application that monitors your battery usage or if your machine has limited resources you may want to monitor RAM and swap usage. If you’re running a mail server you may want an application that sits in the slit to tell you whether or not you have mail. The possibilities for the slit are endless.

The dockapps website has a plethora of useful applications that can sit comfortably in the slit.

Fluxbox Toolbar

The toolbar is where minimized windows end up and it can be made to fill the bottom of the screen or be transparent. It also houses a clock, which can be customized to use 12 or 24 hour time format, the system tray, and buttons to allow you to switch workspaces. It can be further customized to only show certain applications or remove the arrows that let you switch workspaces. Its all up to you, the user.

Fluxbox System Tray

The system tray is part of the toolbar. Its similar to the notification area used in the Gnome Desktop Environment. Programs like Pidgin will create small icons that call the system tray home. Pidgin, in particular, has an icon that flashes when you receive a new message.

Fluxbox Apps File

The apps file is located at ~/.fluxbox/apps and dictates the behavior of certain windows. It can be used to make a window initially sticky (appears on all workspaces), shaded, tabbed, and can even dictate a window’s dimensions.

The Fluxbox wiki has a great entry on editing the apps file.

Fig: Thunar file manager – showing tabbed windows feature in fluxbox

Fluxbox Keys File

The keys file is located at ~/.fluxbox/keys and dictates keyboard and mouse shortcuts. This is very handy for users that prefer to do most of their work with a keyboard.

I use it for custom functions. I have key bindings for xkill (stop a frozen application), Firefox, Thunar, and other of my favorite applications. I bind them all to the Mod4 key, which on most keyboards looks like the windows logo. The “Mod4 k :exec xkill” entry in the keys file basically means that pressing the Windows key (Mod4) and the k key will run the xkill program. You can replace “k” and “xkill” to bind just about any program to a key binding of your choice!

Fluxbox Root Menu

The root menu shows up when you right click on your background. It has a menu of installed applications and can be fully customized to your liking. Its configuration file is stored at ~/.fluxbox/menu by default. However, I would suggest that you change this by editing the ~/.fluxbox/init file. Change the session.menuFile entry from ~/.fluxbox/menu to a path of your choosing.

Fig: Fluxbox Window Manager Root Menu

Personally, I prefer to keep things simple and keep my menu at ~/.fluxbox/my_menu but you can name your menu file “potatoes” if it makes you happy. My reasoning behind using a different menu is that the fluxbox-generate_menu program always writes to ~/.fluxbox/menu and if you’ve gone out of your way to customize this file then you will not be very happy when fluxbox-generate_menu overwrites it.

There are several GUI tools you can use to customize the menu but I prefer editing it manually. You can change certain defaults that fluxbox-generate_menu uses by editing the ~/.fluxbox/menuconfig file.

The basic syntax of the fluxbox menu is very simple and human readable. It is explained in great detail at the Fluxbox wiki.

Fig: Full screen-shot of fluxbox window manager for X (click on image to enlarge)


Linux Sysadmin Course Linux provides several powerful administrative tools and utilities which will help you to manage your systems effectively. If you don’t know what these tools are and how to use them, you could be spending lot of time trying to perform even the basic administrative tasks. The focus of this course is to help you understand system administration tools, which will help you to become an effective Linux system administrator.
Get the Linux Sysadmin Course Now!

If you enjoyed this article, you might also like..

  1. 50 Linux Sysadmin Tutorials
  2. 50 Most Frequently Used Linux Commands (With Examples)
  3. Top 25 Best Linux Performance Monitoring and Debugging Tools
  4. Mommy, I found it! – 15 Practical Linux Find Command Examples
  5. Linux 101 Hacks 2nd Edition eBook Linux 101 Hacks Book

Bash 101 Hacks Book Sed and Awk 101 Hacks Book Nagios Core 3 Book Vim 101 Hacks Book

{ 11 comments… read them below or add one }

1 JuanPablo January 17, 2010 at 11:24 am
2 princelai January 18, 2010 at 5:39 am

what’s the different between openbox and fluxbox?

3 Yorik January 18, 2010 at 1:41 pm

I love fluxbox… It’s so simple to configure, so fast and so gorgeous… I especially like the pseudo-transparency abilities, which IMHO have many advantages. I wrote a post about fluxbox and pseudotransparency some time ago: http://yorik.uncreated.net/guestblog.php?2009=293

4 Neal January 18, 2010 at 8:10 pm

currently i use xfce lightweight desktop but will try fluxbox sometime

5 Jens January 20, 2010 at 1:02 pm

openbox and fluxbox were both based on blackbox, but openbox is now completely rewritten, since 3.0 .
Unfortunately fluxbox isn’t developed any further since Sep.08, but it’s my favourite WM for years.

6 Jens January 20, 2010 at 6:14 pm

thanx, Ramesh ;-)

7 efaistos January 28, 2010 at 11:44 am

@juan : agree I cant use antyhing else than “awesome” window manager ;)

8 Ramesh Natarajan February 2, 2010 at 1:44 am

@Juan,

I’ll check-out the “awesome” window manager. Thanks for notifying us about it.

@Jens,

Thanks for explaining the difference between Openbox and Fluxbox.

For those who are interested, visit blackbox window manager.

9 the dsc July 18, 2010 at 6:12 pm

How sad that fluxbox has been halted for so long, I was just thinking about going back to it from openbox, to which I changed due to some problems I was having with fluxbox, back in 2008 I guess. :-/

I was actually thinking about creating some monstrous concatenation of sed commands to convert openbox menu to fluxbox… well, at least I won’t waste any time trying to do that, then…

I miss most the feature of being able to create tabs on the title bar of any application. If I’m not mistaken, OB developers disdain this feature, they say it’s a circumvention for poor UIs on various applications, those are the ones that should have tabs, if tabs are to be needed. But what I used to find interesting was exactly the fact that you can have two different *programs* under “the same window”. I think it was the most original and interesting idea ever implemented in a DM or WM. I’m not sure, but I guess KDE4 has it these days. I’d hardly use it though, unless I can trim it down and customize to the point that anyone would think I’m using openbox or fluxbox without closer examination. And I don’t know if that’s possible.

I also liked the fact that fluxbox had a built-in toolbar/panel, which was better than fbpanel or tint2. I don’t know if there’s anything on OB that I’d miss in a stable FB. Perhaps pipe-menus, but I think it may be doable on FB too.

I hope pekwm evolves or even forks into something like FB used to be… it seems somewhat lighter, like OB, but with easier configuration files, like FB… but the last time I tried, some variables were lacking to have an ideal configuration on stuff like focus just by hovering with the mouse (you need a delay of a few msec at least).

“Awesome” is somewhat the opposite, regarding tabs-for-windows I guess… it may be quite good if you have so many monitors that you barely need to use windows, you use monitors instead…

10 aMoLk. August 31, 2010 at 10:48 am

I have been using fluxbox for a lot of years now; it is (for me) the most convenient window managers ever. I just really like the window management features that fluxbox has to offer along with the keyboard shortcuts. Fluxbox features combined, have never seen before or since in a WM. I’ll list my favorites here:

- Tiny, Minimalistic, 4-5 config files can manage everything. My .fluxbox directory is 624KBs, and that includes styles, backgrounds and pixmaps. talk about small. It does what it does, and does it very well. and it does nothing else. With fluxbox, you keep the core desktop clean and fast, and then you can use whatever apps you want, smaller or bigger. Gnome/KDE/XFCE/LXDE have a totally different approach.

- Great looking themes (i.e. styles), which are also tiny.

- Ability to arrange windows (you can assign a shortcut for this Win+a), will tile all unminimized windows for the best fit. E.g. if you have terminals open, press win+a, and it will cover the screen with just those 2 windows, with 1 window covering top half, and the other covering the bottom half. Similarly, I redefine all the keys to my liking. I have tried many WMs, but few provide me the options, that fluxbox does.

- Tabs: they sure can come in handy. I use them a lot, when I have way too many windows open, like 20 xterm windows, Tabs+ workspaces, make life easy.

- Slit: I came from WindowMaker, so I felt at home with the slit and the windowmaker dock apps. I don’t use it anymore though, because it takes too much space (on netbook).

- Remember Window Decorations: fluxbox makes it so easy. If you want certain apps to not have title bar, border etc, then you can just define those in the apps file. I like no decorations on terminals.

Too bad fluxbox, is not being developed anymore, but really its a blessing in disguise, why would anyone try to add more code, to what already seems perfect. Gnome/KDE/LXDE/XFCE on the other hand like to add bloat and continue adding.

11 demo September 1, 2010 at 1:22 pm

~/.fluxbox/apps owns all <3
helps alot to get an epic desktop without all the fuss, ie; transparent terminals embedded to the desktop (no borders) by simply adding 2 or 3 lines to a config.

Running fluxbox on debian squeeze at the moment. I think, the day i first found fluxbox i have loved it since, no matter how many times i install gnome, or kde or whatever, i always end up going back to fluxbox.

Leave a Comment

Previous post:

Next post: