在NixOS上将Haskell Stack强制为版本1.7。*

时间:2018-06-23 19:34:25

标签: haskell haskell-stack nixos

上下文。

  1. 我正在运行NixOS,stack中包含configuration.nix
  2. 运行stack --version会产生Version 1.6.3 x86_64
  3. 但是我需要版本>=1.7来编译团队正在研究的最新Haskell软件包。
  4. nixpkgs搜索的当前版本为1.6.5,但该版本太旧了。
  5. 我认为通常在非NixOS上,您可以在主文件夹中运行“堆栈升级”,但这似乎不起作用。

问题:是否有人知道如何强制NixOS上的堆栈编译为版本,即1.7.1

1 个答案:

答案 0 :(得分:0)

添加此覆盖应该可以解决问题: ((自我:超级:{   haskellPackages = super.haskellPackages.extend     (本人:hsuper:{       堆栈=(hsuper.callHackage“堆栈”“ 1.7.1” {})               .overrideScope(hself2:hsuper2:{         Cabal = hself2.Cabal_2_2_0_1;         hpack = hself2.hpack_0_28_2;       });     }); }) 这样可以在Nixpkgs master上成功构建堆栈。它可以作为stack属性或haskellPackages.stack属性使用。