cabal-install, cabal-setup, new world order

Isaac Jones ijones at syntaxpolice.org
Sun Apr 30 21:51:53 EDT 2006


Greetings,

I've just pushed some recent work by Alson Kemp to the cabal
repository.  Alson has integrated the cabal-get tool (by Lemmih) and
dependencies into the cabal source tree.

This brings in a bunch of unwanted dependencies, though, and we'll be
working to trim these out in order to make it a manageable size.

Another thing is that I changed cabal-get to be called cabal-install,
and removed the (never released) old version of cabal-install from the
repo.  The reason is that the role of cabal-get will expand to include
what cabal-install was meant to do.  That is, cabal-install will be
used for installing groups of inter-dependent packages, whether they
are on hackage.haskell.org or on your local machine.  It doesn't do
that yet, though; it can only install stuff from hackage.

Also, Simon pushed his cabal-setup tool.  Cabal-setup is basically
like a boilerplate Setup.lhs, but smarter.

So the Hackage toolchain will look like this:
 * Cabal is the library / package
 * cabal-setup is for building / installing one package.  It's very
   simple
 * cabal-install is for installing a group of packages.  It's pretty
   complex.

If you grab the current darcs head of cabal, you should be able to
"sudo make install" and get each of these tools.  Then copy
etc-cabal-install to /etc/cabal-install, and "cabal-install update" to
get the list of packages, "cabal-install install helloWorld2" _should_
work.  Your milage may vary.

In other news, Duncan Coutts has agreed to become the release manager
for Cabal, and we're working on a 1.1.4 release now, which will be the
version of Cabal that came with ghc 6.4.2.

peace,

  isaac


More information about the Libraries mailing list