[xmonad] Recommended setup for coding

Quentin Moser moserq at gmail.com
Sat Jan 23 06:20:46 EST 2010


If you aren't planning anything large-scale, you can use any XMonad
install and create
modules in your ~/.xmonad/lib directory, which is in the search path
when XMonad compiles your config. So, for example:

~/.xmonad/lib/XMonad/Layout/ANewLayout.hs
~/.xmonad/lib/XMonad/Util/SomeUtilityStuff.hs

You can import these in your xmonad.hs as if they were part of
xmonad-contrib. Using the same hierarchy as the rest of XMonad also
makes it easy to integrate your modules into the xmonad-contrib darcs
repo if/when you think they're worth it.


There are a number of problems with this simple method though:

* XMonad will recompile _all_ your imported lib/* modules on each
recompile, so you can't keep too
  much stuff in there. It will also compile them without optimizations
to reduce the recompilation time,
  and Haskell without optimization isn't really that fast anymore.

* You can't modify current modules in this way (unless you want to
"overlay" them with a completely
  new one).

* You still need to cabal-install the darcs version when you want to
publish patches, since you need
  to test them at least once against the current head.


So if you find yourself writing a lot of modules, or sending patches
to xmonad-contrib regularly, you'll need to work with cabal-install
and the xmonad-contrib darcs repo. It's still fairly simple:

* Perform your modifications in the darcs directory.
* Type "cabal install" at its top-level when you're done with a change.
* "xmonad --recompile" to recompile your xmonad.hs using the new lib.
* And you're working in a darcs repo, so you have version control handy.

As for the Haskell Platform, it contains cabal-install so if you can't
find a cabal-install package for Ubuntu you can install that instead.,
but there's nothing else you need in it.


Hope it helps

Quentin

On Sat, Jan 23, 2010 at 10:50 AM, Ralph Hofmann <hofmann2004 at arcor.de> wrote:
> I would like to try some haskell coding with xmonad. What is the best
> xmonad install for this purpose?
>
> Is it essential to use the cabal version? What is your opinion about the
> "Haskell Platform" instead of ghc -->
> http://sporkcode.wordpress.com/2009/07/11/installing-the-haskell-platform-in-ubuntu/?
>
> So far i am using ghc/xmonad-0.9.1 from debian sid, installed on ubuntu
> 9.10. If possible i would like to keep this unchanged, because
> everything works fine.
>
>
> Ralph
>
> _______________________________________________
> xmonad mailing list
> xmonad at haskell.org
> http://www.haskell.org/mailman/listinfo/xmonad
>


More information about the xmonad mailing list