[Nix-dev] GHC pointed at the wrong package
Mateusz Kowalczyk
fuuzetsu at fuuzetsu.co.uk
Sat Aug 23 15:15:53 CEST 2014
On 08/23/2014 01:29 PM, Peter Simons wrote:
> Hi Mateusz,
>
> > There are problems in package regex-tdfa-1.2.0:
> > dependency "parsec-3.1.5-ca5ed8f175b69e1a085cfeaf3b95f424" doesn't exist
> > There are problems in package regex-tdfa-rc-1.1.8.3:
> > dependency "parsec-3.1.5-ca5ed8f175b69e1a085cfeaf3b95f424" doesn't exist
>
> the process that generates those IDs in GHC is non-deterministic. Two
> people can compile the same library with the same version of GHC on the
> same type of machine yet end up with two distinct IDs. It doesn't happen
> often, but it does happen.
>
> I'd recommend running
>
> $ nix-store --delete /nix/store/*-haskell-parsec-ghc7.8.3-3.1.5-shared
>
> on all your machines. Then the next build will download these packages
> from Hydra, and you'll have a consistent build again. Note that you may
> have to remove packages from your active profiles to make that deletion
> process succeed.
>
> I hope this helps,
> Peter
>
It's very unfortunate to hear about the package ID stuff. Is there a bug
open?
I managed to resolve the issue by getting rid of my parsec package as
you advised. Unluckily it was depended on all the way from
xmonad-extras. In the end I was able to remove -extras from my system as
my config only needs -contrib, reboot, garbage collect and it works. I
fear if this ever hits something xmonad directly depends on because I'll
have to get rid of my WM to fix the issue…
Perhaps a --force-overwrite flag should be created in nix-store as long
as two hashes match?
Thanks for help!
--
Mateusz K.
More information about the nix-dev
mailing list