basic haskell DistUtils

Ross Paterson
Wed, 16 Jul 2003 10:31:25 +0100

On Tue, Jul 15, 2003 at 04:35:11PM -0400, Isaac Jones wrote:
> For those interested in the LibraryInfrastructure project, I'd like
> you to take a look at some example source code I wrote (about 650 not
> completely beautiful lines) for a haskell-based build and install
> system:
> [...]
> What it does now is build stuff for ghc and make a distribution for
> Hugs.  It can create a packages.conf file for ghc registration, and
> does something funny for hugs registration (see the README).

The CVS version of Hugs has a simpler mechanism than you're assuming
here: a path entry of the form /path/to/dir/* means all immediate
subdirectories of /path/to/dir.

As far as Hugs is concerned, I'm a bit confused.  There seem to be three
ways a Haskell package can be installed on a system:

- installed using the system (e.g. Debian) package manager
- installed by the local administrator in /usr/local (or the equivalent)
- installed by users in their home directories

The last two will want to keep packages separate for easy deletion and
replacement, but it seems wasteful for the first to do so, since the
system package manager keeps track of which files belong to which package.