Cabal and installing packages.
daan at cs.uu.nl
Fri Dec 3 14:19:22 EST 2004
Keean Schupke wrote:
> Simon Marlow wrote:
>> If you're on a system with a good package manager (i.e. *BSD, Debian,
>> Gentoo) then the plan is that this is all handled by the system package
>> manager. We don't want to duplicate that work, and we want to coexist
>> with the system's package tools as much as possible. Cabal will make it
>> easy to generate package skeletons for these systems.
I just wanted to say that I do agree with Keean here: A *simple* install
manager for Haskell modules with a central repository would be great!
Having said that, there are strong reasons for not doing this. The most
important one is that a good package manager is not trivial and there
already exist good package manager for many systems.
Still, for 90% of all potential Haskell libraries, we can get away with
a fraction of the effort of building a real package manager. This can
really work, as long as we stick with a *simple* solution that is
clearly described and whose limits are well defined. If someone requests
something beyond the limits, we redirect to the OS package manager.
With a clear and simple design, an implementation should not require
too much effort or resources. (Actually, as I said before, a clear
design with well defined limits is probably essential or otherwise the
implementor will never be done :-)
Now, I do not propose to do this myself :-), but I surely think that if
there is anyone interested on this list on doing this, it would make a
great project. I really feel that a simple installation system for
Haskell would help to move the language forward.
All the best,
> I find that even on package managed systems I use CPAN to install perl
> modules... I would have thought a nice central repository on haskell.org
> (with mirrors of course) where users can contibute their packages, that
> would be built into a Haskell package tool would be useful even for
> systems where there is package management.
> I find that debian/gentoo etc do not have all the packages available
> for say perl, and it is nice to have a consistant interface on any
> I think the ability to do (something like)
> > cabal install <package-name>
> and have everything done automatically would be a real advantage for
> beginners, ie:
> - download mirror list from haskell.org
> - find closest mirror using DNS tld
> - download package
> - resolve dependancies (ie call "cabal install" for each required
> not on the system)
> - configure package
> - compile package
> - install package (globally if root, locally if normal user)
> also the ability to do queries like:
> > cabal list-packages -- lists all packages available from central
> > cabal find someRandomFunction -- returns name of package which
> exports given function
> To do some of the cleverer queries would require a custom server
> (perhaps darcs can do
> some/all of this)...
> Libraries mailing list
> Libraries at haskell.org
More information about the Libraries