0

这是这个Haskell 包。对于这个包,有一个NixOS发行版。

如果存在这样的 NixOS 发行版,那么在安装了 Nix 包管理器的 Ubuntu 上安装相同的包是否容易?

如果是,如何?

如果不是,为什么不呢?

4

2 回答 2

2

对于这个包,有一个 NixOS 发行版。

NixOS 没有发行版。NixOS 是构建在 Nix 包管理器之上的实际 Linux 发行版。您的链接只显示了他们用于构建各种 nix 包的 Hydra 构建农场。

如果存在这样的 NixOS 发行版,那么在安装了 Nix 包管理器的 Ubuntu 上安装相同的包是否容易?

同样,不存在这样的分布。如果你想在你的 Ubuntu 发行版中使用 Nix,那么你可以只安装 Nix 包管理器,并且可以使用该nix-env工具安装任何包。text安装 Haskell包的示例:

nix-env -i -A nixpkgs.haskellPackages.text
于 2015-07-08T23:13:38.310 回答
0

您的问题的答案可以在Nixpkgs 用户手册中找到。我引用了“8.5.1。如何安装 Haskell 包”中的相关内容:

我们将所有与 Haskell 相关的包保存在一个名为 的单独属性集中haskellPackages,以下命令将列出该属性集:

$ nix-env -f "<nixpkgs>" -qaP -A haskellPackages
haskellPackages.a50         a50-0.5
haskellPackages.abacate     haskell-abacate-0.0.0.0
haskellPackages.abcBridge   haskell-abcBridge-0.12
haskellPackages.afv         afv-0.1.1
haskellPackages.alex        alex-3.1.4
haskellPackages.Allure      Allure-0.4.101.1
haskellPackages.alms        alms-0.6.7
[... some 8000 entries omitted  ...]

要将这些软件包中的任何一个安装到您的配置文件中,请通过它们的属性路径(第一列)引用它们:

$ nix-env -f "<nixpkgs>" -iA haskellPackages.Allure ...

任何 Haskell 包的属性路径对应于 Hackage 上该特定包的名称:包 cabal-install 具有属性 haskellPackages.cabal-install,依此类推。

在您的特定情况下,这意味着运行

nix-env -f "<nixpkgs>" -iA haskellPackages.SourceGraph

或者

nix-shell -p haskellPackages.SourceGraph

将使该软件包可供您运行。

于 2017-01-19T21:03:35.167 回答