Thoughts after a few months of xmonad

To be honest, when I first installed xmonad, I didn’t think I would like it. I felt it had too high of a learning curve and wouldn’t be worth my initial investment. I was quite wrong, I think my search for the “perfect window-manager” may be over, at least for now.

Xmonad is a dynamic tiling window manager. It’s basic job is to manage placement of your windows, however, it can be extended to incorporate many other features such as virtual desktops, transparency and panels. By default Xmonad comes with a very minimal install, you will have no window decorations or status bars. Most users will require some level of customization to reach the desired level of functionality.

Xmonad is configured using a haskell configuration file, which you will recompile and then reload (on-the-fly, no logout required). Rinse & repeat as necessary. I’ve personally always been a bit afraid of haskell’s syntax, and still don’t really understand any of it, but I’ve figured enough out to properly configure my setup. I spent the better part of a few weekends deep in the documentation for xmonad and pulling different bits from any other xmonad.hs file I could find online. Many times this resulted in a non-working configuration, but sure enough I figured it out. Right now my configuration is working, is somewhat documented and (I think) has a decent framework to add extra functionality later on.

Most users would also like to have a panel, or even a place for status icons to sit. Following the minimalistic approach, Xmonad does not include these features in it’s core. When there is a will, there’s a way though. Xmobar is the software I am using to provide a system panel. Trayer is the software I use to provide a status icon area. Both pieces of software are very well documented, and in my experience, very easy to integrate with your Xmonad configuration

As far as performance and stability, I don’t recall having any issues whatsoever. Even at the times when my system is under a full load, xmonad still performs quickly and reliably. I also don’t think xmonad has ever actually crashed on me, except for a few botched config files of my own doing. It definitely puts your mind at ease when you feel like the system is rock solid beneath you.

Going back to the extra functionality, I haven’t found anything more I could want. Sure, I spent a week or two adding all the bells & whistles to mess around. And sure enough, I’d end up removing them to clear some of the clutter. I’ve decided to take a bare-bones approach to window-management from now on.

Xmonad Desktop July 2011

Xmonad Desktop July 2011

Xmonad Homepage
Xmobar Homepage
My xmonad.hs
My xmobarrc

15 Comments

  1. Stian says:

    Is that Steam in your tray?

    • Nick says:

      It definitely is. I’ve actually found that Steam seems to run very well using wine. So far I have been able to run Team Fortress 2, Counter-Strike: Source and Civilization IV: Beyond The Sword through Steam with very minimal tweaking.

      I’ve been very impressed with the gaming situation on linux now as opposed to a few years ago. Much improvement has been made, especially in the area of running windows games on linux.

  2. Thanks for posting such a nicely documented xmonad configuration file. Can you also share with us your ~/.xinitrc. Just want to know what config you are using for the trayer.

  3. Dawne Arleth says:

    I will be coming back to your blog for more soon.

  4. Flora says:

    Not bad at all fllaes and gallas. Thanks.

  5. Precious says:

    I might be beating a dead horse, but thank you for positng this!

  6. Cyb says:

    Are xmonad alive? I’m waiting for new realeases (with bugfixes for java issues) since 2009 )-:
    But it still rocks

  7. Portnov says:

    @Cyb
    It’s live and active, but there really were no any releases since 2009. If you want latest version, get it from darcs (darcs get http://code.haskell.org/xmonad; darcs get http://code.haskell.org/XMonadContrib). Gwern is about to release 1.0 in near future, but there are only plans. Nobody knows when that release will be done.

    As for Java applications issues, it’s not a xmonad bug, but Java one. See http://www.haskell.org/haskellwiki/Xmonad/Frequently_asked_questions#Problems_with_Java_applications.2C_Applet_java_console, for example.

  8. pligg.com says:

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

  9. Dig.gr says:

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

  10. The Archist » Blog Archive » Thoughts after a few months of xmonad…

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

  11. pixzz.com says:

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

  12. smses.com says:

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

    The Archist » Blog Archive » Thoughts after a few months of xmonad…

  13. Thank you for some other wonderful post. The place else may anyone get that kind of info in such a perfect method of writing? I have a presentation next week, and I am on the search for such information.

Leave a Reply