haskell - 尼克斯外壳 : How to list the installed Haskell package versions

标签 haskell nix

作为一个非nix'er,我安装了最新版本的https://github.com/reflex-frp/reflex-platform 。我认为在这个 nix-shell 中工作是一次很好的体验。

现在我想知道这个 shell 中安装和使用了哪些版本的 Haskell 软件包。经过一番谷歌搜索后,我发现了一个如下形式的 nix-env 命令:

nix-env -f '<nixpkgs>' -qaPA haskellPackages|grep reflex-dom

此命令为我提供了 reflex-dom 的版本 reflex-dom-0.3。但我从here知道在我的 nix shell 中,我使用最新版本的 reflex-dom 0.4。所以我假设上面的命令只是列出了可用的 Hackage 包。

仅获取已安装的 Haskell 软件包及其版本的正确 nix-env -q 命令是什么?。

(我使用了 --installed 选项,但我从未得到任何返回)

最佳答案

您可以在进入 shell 后尝试 nix-store -q --references $out 。然而,这将在输出中混合 haskell 和非 haskell 依赖项。

这是应用了过滤器的完整示例:

$ nix-store -q --references $out\ |当读p时;做 du -a $p | grep -q ghc && 回显 $p;完毕

关于haskell - 尼克斯外壳 : How to list the installed Haskell package versions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43854235/

相关文章:

haskell - Haskell堆栈图像容器在Docker运行时执行

haskell - 使用foldl反转列表?

Nix 和服务的运行和停止

virtualbox - 在 configuration.nix 中从 nixos-unstable 安装 virtualbox 模块

macos - 在没有 T2 芯片的 Mac 上的 FileVault 加密启动卷上,在 macOS Catalina 和 Big Sur 上安装 Nix 时出错

haskell - 推断类型不明确

haskell - 跟踪 `map` 的进度

haskell - 为什么这个 Haskell 在扩展时会提示类型不明确?

ruby - 如何使用具有 native 扩展的 Nix 构建 Ruby Gem

python - 如何使用 nix-shell 启用可选的构建依赖项?