[arch-haskell] Re: [extra] haskell-parallel

Xyne xyne at archlinux.ca
Sat Oct 12 07:37:40 UTC 2013

Peter Simons wrote:

> Hi Xyne,
>  > If Cabal can install different versions alongside each other, can't
>  > we do that with Pacman too?
> Pacman cannot install two different versions of the same package at the
> same time, where "package" really means "$pkgname". Cabal, however, can
> do that. We can work around this limitation by encoding a package's
> version number into the $pkgname. If we'd want to install parsec 2.x and
> 3.x at the same time, we could simply offer two packages called
> "haskell-parsec2" and "haskell-parsec3". Obviously, the more granularity
> we'd want to provide, the more awkward our package names would become.

I don't mean that the versions would be included in the names, e.g.
"haskell-foo-1.4", "haskell-foo-1.5" (that is overly kludgy). I mean that
"haskell-foo" would contain foo 1.4, foo 1.5 and whatever other versions of
foo that one could reasonably expect. Again, I'm just thinking out loud and I
see possible problems with it already such as "bloat" from multiple versions,
etc. It's mostly just curiosity about how Cabal manages to install the actual
files on the system. We should be able to mirror this in the package itself.

Even if we don't provide packages containing multiple versions, it might be
useful if we find a way to create them. We could then write user tools that
generate custom packages to satisfy per-user dependencies, e.g. the tool would
create a custom "haskell-foo" package that contains foo 1.4 and foo 1.5 to
satisfy all dependencies.

More information about the arch-haskell mailing list