这是this Haskell包。对于这个包,NixOS有一个distribution。
如果存在NixOS的这种发行版,那么将相同的软件包安装到安装了Nix软件包管理器的Ubuntu上会很容易吗?
如果是,怎么样?
如果没有,为什么不呢?
答案 0 :(得分:2)
对于这个包,有一个NixOS的发行版。
NixOS没有分发版。 NixOS是构建在Nix包管理器之上的实际Linux发行版。您的链接只显示了他们的Hydra构建农场,用于构建各种nix包。
如果存在NixOS的这种发行版,那么将相同的软件包安装到安装了Nix软件包管理器的Ubuntu上会很容易吗?
同样,不存在这样的分布。如果您想在Ubuntu发行版中使用Nix,那么您可以只安装Nix包管理器,并可以使用nix-env
工具安装任何包。安装Haskell text
包的示例:
nix-env -i -A nixpkgs.haskellPackages.text
答案 1 :(得分:0)
问题的答案可以在Nixpkgs user manual中找到。我引用了“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
将使您可以运行该程序包。