commercialhaskell/stack

Nix integration should use GC roots

Open

#3479 aperta il 9 ott 2017

Vedi su GitHub
 (8 commenti) (9 reazioni) (0 assegnatari)Haskell (848 fork)batch import
component: nixhelp wanted

Metriche repository

Star
 (4060 star)
Metriche merge PR
 (Merge medio 14h 21m) (12 PR mergiate in 30 g)

Descrizione

Usual scenario:

  1. build stack project with Nix
  2. sometime later you run nix-store --gc or nix-collect-garbage
  3. you run into following error:
/home/user/.stack/setup-exe-cache/x86_64-linux-nix/Cabal-simple_mPHDZzAJ_1.24.2.0_ghc-8.0.2: streamingProcess: runInteractiveProcess: exec: does not exist (No such file or directory)

This means that nix libraries that the file was compiled with are missing from nix store.

Best way to prevent this is to create Nix GC roots. Also stack could double check that those libraries are still intact.

Guida contributor