簡體   English   中英

在NixOS上強制Haskell Stack為版本1.7。*

[英]Forcing Haskell Stack to be Version 1.7.* on NixOS

語境。

  1. 我正在運行NixOS,我的configuration.nix包含了stack
  2. 運行stack --version產生Version 1.6.3 x86_64
  3. 但我需要Version >=1.7才能編譯我的團隊正在研究的最前沿的Haskell包。
  4. nixpkgs搜索的當前版本是1.6.5 ,無論如何都太舊了。
  5. 我認為通常在非NixOS上你可以在你的主文件夾中運行“堆棧升級”,但這似乎不起作用。

問:有沒有人知道如何強制NixOS上的堆棧編譯成版本,即1.7.1

添加此疊加層應該可以解決問題:

(self: super: {
  haskellPackages = super.haskellPackages.extend
    (hself: hsuper: {
      stack = (hsuper.callHackage "stack" "1.7.1" {})
              .overrideScope (hself2: hsuper2: {
        Cabal = hself2.Cabal_2_2_0_1;
        hpack = hself2.hpack_0_28_2;
      });
    });
})

這成功地在Nixpkgs master上構建stack 它將作為stack屬性或haskellPackages.stack屬性提供。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM