[xmonad] Re: Extensible programs & defaults: the Gosling Emacs experience

Braden Shepherdson Braden.Shepherdson at gmail.com
Thu Jul 31 02:50:16 EDT 2008

That was an interesting read, indeed. Certainly the xmonad faithful 
agree that one of its greatest strengths is the power of Haskell 
configuration. I suspect I wouldn't want to use most of your personal 
xmonads, because everyone's is tuned to their machine, distro, usage and 

On one hand, PlainConfig as the standard configuration for newcomers 
accomplishes a lot of the simplification side. The move to having an 
xmonad.hs will still be a sharp change, but we're throwing new users 
straight into that already, so this is hardly worse.

But simplifying the early configuration process and removing the GHC 
dependency are only part of the puzzle. The idea of getting our defaults 
right and providing a strong first impression is important too.

The point where this is most obvious comes to mind from #xmonad support 
patterns: ManageDocks! Practically everybody uses them, and there is 
occasionally confusion about how to set it up. It could be far simpler. 
Granted, it will be so with PlainConfig, should be as simple as adding 
"avoidStatusBars = 1" or some similar syntax. But I imagine the 
experience of pasting configs and needing so much help from #xmonad just 
to do such an apparently simple and common thing isn't the best first 
experience. Though it does highlight the politeness and competence of 
#xmonad, which is a positive, it should still be easier for newcomers to 
manage that one, ideally on their own.

If it weren't already abundantly clear from my championing of 
PlainConfig, I definitely support the idea of making xmonad more 
accessible to the new user, though of course without sacrificing the 
high-end flexibility we know and love.

I have nightly builds of core and contrib working. I'll create a 
modified version of the scripts that combines them into a single bundle, 
that will install a complete ~/.xmonad/xmonad.conf, with every setting 
there, commented, and set to the default, for maximum ease of use. Then 
the next quick project is adding more modules (ManageDocks, 
EwmhDesktops, and some other favourites) into PlainConfig's repertoire. 
Finally the xmonad.conf -> xmonad.hs compiler is the last step toward a 
complete system on that front.

Hopefully this doesn't seem like hijacking the thread. It's all in the 
vein of making xmonad the best experience possible, for new and old users.

Braden Shepherdson

More information about the xmonad mailing list