commercialhaskell/stack

Nix integration should use GC roots

开放

#3,479 创建于 2017年10月9日

 (8 条评论) (9 个反应) (0 位负责人)Haskell (848 个派生)batch import
component: nixhelp wanted

仓库指标

星标
 (4,060 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

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.

贡献者指南