--- Begin Message ---
Subject: |
Ghc 8.6.5 fails to find core package database |
Date: |
Sat, 17 Aug 2019 17:21:08 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 |
Installing only 'ghc 8.6.5' (Glasgow Haskell compiler) and sourcing
'~/.guix-profile/etc/profile' leads to ghc not finding core modules.
('ghci' doesn't find System.IO for instance).
This is due to $GHC_PACKAGE_PATH not containing ghc 8.6.5's
package.conf.d, but
instead ghc 8.4.3's database.
Note: Not setting this variable leads to a working ghc (will search in
default
location), but is required to install additional packages via guix.
The issue might come from guix/profiles.scm:812, since
(module-ref (resolve-interface '(gnu packages haskell)) 'ghc)
evaluates to <package ghc@8.4.3 gnu/packages/haskell.scm:445> in my repl.
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#37064: Ghc 8.6.5 fails to find core package database |
Date: |
Mon, 09 Sep 2019 22:05:43 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
Hi again,
Timothy Sample <address@hidden> writes:
> Gabriel Giamarchi <address@hidden> writes:
>
>> Installing only 'ghc 8.6.5' (Glasgow Haskell compiler) and sourcing
>>
>> '~/.guix-profile/etc/profile' leads to ghc not finding core modules.
>> ('ghci' doesn't find System.IO for instance).
>>
>> This is due to $GHC_PACKAGE_PATH not containing ghc 8.6.5's
>> package.conf.d, but
>> instead ghc 8.4.3's database.
>>
>> Note: Not setting this variable leads to a working ghc (will search in
>> default
>> location), but is required to install additional packages via guix.
>>
>> The issue might come from guix/profiles.scm:812, since
>> (module-ref (resolve-interface '(gnu packages haskell)) 'ghc)
>> evaluates to <package ghc@8.4.3 gnu/packages/haskell.scm:445> in my repl.
>
> Good catch. I can confirm this is the issue, but I’m not sure how to
> fix it. We could try to find GHC from the profile rather than
> unconditionally using a certain package. However, that would not help
> if someone were to install GHC 8.4 and 8.6 in the same profile.
I took another look at this and we were wrong! The main issue here is
that I made a mistake in the GHC 8.6 package definition, and it was
setting GHC_PACKAGE_PATH incorrectly. This should be fixed as of commit
83aa656217. Sorry for the trouble.
Note that you will likely run into trouble trying to use other
Guix-provided Haskell packages with GHC 8.6, as they are all built with
GHC 8.4. AFAIU, this is not something that GHC supports.
-- Tim
--- End Message ---