我在macOS和(非NixOS)Linux上使用Nix。我想给Nix一个包或属性名称,并告诉我
我实质上是在寻找与Homebrew的brew info packagename
相当的Nix。
如何让Nix给我这些信息?
答案 0 :(得分:1)
也许有更好的方法,例如使用nix-env
,但我通常为此目的使用nix repl
。
$ nix repl '<nixpkgs>'
Welcome to Nix version 2.2.2. Type :? for help.
Loading '<nixpkgs>'...
Added 10069 variables.
nix-repl> docker-c[TAB]
docker-compose docker-credential-gcr
nix-repl> docker-compose.version
"1.23.1"
答案 1 :(得分:1)
使用CLI上的nix-env
,我认为我们目前(相对)方便地可以做到的最好的就是JSON或XML:
$ nix-env --query --available --attr nixpkgs.hello --meta --json
# Or in terse form:
$ nix-env -qaA nixpkgs.hello --json
输出或输入都不是人类友好的,典型的Nix可用性...
.nix
文件的路径被列为position
,在REPL中也如罗伯特的简洁答案中的hello.meta.position
所示。值得一提的是nix edit nixpkgs.hello
,用于打开文件。