[Nix-dev] haskell dev environment, ghc non-determinism and binary cache interaction

Peter Simons simons at cryp.to
Mon May 11 14:20:48 CEST 2015


Hi Miguel,

 > package binary-0.7.4.0 is broken due to missing package
 >   array-0.5.0.0-470385a50d2b78598af85cfe9d988e1b,
 >   base-4.7.0.2-bfd89587617e381ae01b8dd7b6c7f1c1,
 >   bytestring-0.10.4.0-d6f1d17d717e8652498cab8269a0acd5,
 >   ...

these errors occur sometimes, when Haskell libraries from different
sources are mixed, i.e. some libraries come from hydra.cryp.to, others
from hydra.nixos.org, and some were compiled locally. This is a design
problem in GHC. Check out [1] for further details (including how to
recover from this situation).

 > I have also tried uninstalling everything, garbage collecting and
 > installing again building from source (no binary cache flags), but
 > some package would refuse to build (haskell package she).

Right, "she" doesn't compile:

  src/Imports.lhs:15:19: Not in scope: ‘catch’

If you wouldn't have run into the problem with inconsistent binaries,
then your build would have eventually failed because of this, but you
probably never reached the point where Nix would try to install "she".


 > I wonder how the current installed packages managed to build in the
 > binary cache, but don't build on my machine.

I don't see any successful builds of "she" on hydra.

Best regards,
Peter


[1] https://github.com/NixOS/nixpkgs/issues/7792



More information about the nix-dev mailing list