[Haskell-cafe] Info on dependencies among libs distributed with ghc?

Ivan Lazar Miljenovic ivan.miljenovic at gmail.com
Mon Apr 21 07:06:16 UTC 2014

On 21 April 2014 15:40, Magnus Therning <magnus at therning.org> wrote:
> On Mon, Apr 21, 2014 at 08:18:20AM +1000, Ivan Lazar Miljenovic wrote:
>> On 21 April 2014 02:11, Magnus Therning <magnus at therning.org> wrote:
>>> I'm working on the packaging of Ghc for Arch Linux and the
>>> packaging of Ghc 7.8 was in place about a week ago.  It was
>>> delivered with `Cabal` 1.18, and already now there's a 1.20
>>> available, which is required by the latest version of
>>> `cabal-install` :(
>>> Ghc 7.8 comes with quite a few other basic libraries.  Are there
>>> any dependencies between these libraries besides the obvious one on
>>> `base`?
>>> In other words, can I update Cabal without running into the
>>> diamond-dependency problem?
>> The only time I've had a problem with Exherbo packages is that some
>> of them (e.g. haskell-docs) require using the version of Cabal
>> shipped with GHC (I think it was to have consistency with the
>> version of Cabal that Haddock was built with); as long as the Arch
>> packages can specify "use GHC's Cabal" for the few cases which it's
>> necessary then you shouldn't have a problem.
> That is exactly the kind of situation I want to avoid :)
> I have no problem re-compiling everything that depends on Cabal, but I
> want that recompile to result in a situation where neither the user
> (nor me) need to ever ask "Which of the installed Cabal versions
> should I use to compile this program?".

I think cabal-install can get away with this because it ensures the
same version of Cabal is used throughout, as the .cabal file for
haskell-docs doesn't explicitly state that it requires the same
version of Cabal as used by Haddock.

So if Arch's dependency resolver is smart enough, this might work.

Ivan Lazar Miljenovic
Ivan.Miljenovic at gmail.com

More information about the Haskell-Cafe mailing list