[Haskell-cafe] A few questions on using Cabal

2005-03-31 Thread Niklas Broberg
I've just started experimenting with the new Cabal system, and I must
say it's really sweet. Thanks a lot to all involved!

After trying it on some simple tasks I have collected a few questions:

* What about 'setup uninstall'? Surely there should be an automatic
way of uninstalling packages and executables?

* Is there some way to direct the installation of a package to an
auxiliary package-conf file, i.e. separate from the 'global' and
'user' package databases?
E.g. 'runhaskell Setup.hs register --package-conf=foo.conf' (doesn't work)

* Is there some way to bundle several packages into a single
installation unit? Similar to how you can specify several executables,
or executables and a library package, I would want a way to say that a
bundle will install several (possibly interrelated) packages at the
same time.

* If I specify a library package and an executable in the same cabal
bundle, where the executable uses the library, the files that make up
the library get compiled twice. Once when setting up the package, and
then again when compiling the executable. How come?

That's all for now, possibly more to come later. =)

/Niklas
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] A few questions on using Cabal

2005-03-31 Thread Isaac Jones
Niklas Broberg [EMAIL PROTECTED] writes:

 I've just started experimenting with the new Cabal system, and I must
 say it's really sweet. Thanks a lot to all involved!

Yay!

 After trying it on some simple tasks I have collected a few questions:

 * What about 'setup uninstall'? Surely there should be an automatic
 way of uninstalling packages and executables?

We'd like to do this eventually, but it doesn't work yet.  A lot of
people are using cabal as a layer under the OS package system (like in
Debian) so the package manager handles removing the package itself.

 * Is there some way to direct the installation of a package to an
 auxiliary package-conf file, i.e. separate from the 'global' and
 'user' package databases?
 E.g. 'runhaskell Setup.hs register --package-conf=foo.conf' (doesn't work)

No way to do this yet either... patches welcome :) That should be a
pretty easy thing to add; a half hour for someone who knows how the
command-line parser works.

 * Is there some way to bundle several packages into a single
 installation unit? Similar to how you can specify several executables,
 or executables and a library package, I would want a way to say that a
 bundle will install several (possibly interrelated) packages at the
 same time.

Nope.  This is also on the todo list, but we're not sure how it'll
look yet.  We were calling such things shipments to distinguish them
from packages.

We wanted to get basic packages working first, and the next goal is to
get the package database (Hackage) online.  That's proceeding nicely,
thanks to Lemmih.

 * If I specify a library package and an executable in the same cabal
 bundle, where the executable uses the library, the files that make up
 the library get compiled twice. Once when setting up the package, and
 then again when compiling the executable. How come?

Beacuse this is a bit of a workaround.  Don't complain too much or I
think Ross will kick me.  The right way to do this is probably with
shipments.

 That's all for now, possibly more to come later. =)

So the short answer is that there are still some things that make
cabal less convinient than it could be, but we've got them in mind,
and we're happy to accept patches to add them!


peace,

  isaac
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe