Nix: Запрос пакетов пакетов

Я могу запросить доступные пакеты с nix-env -qa [package], но как мне найти дополнительные пакеты (например, библиотеки), которые зависят от основного пакета и могут быть загружены или установлены отдельно? Пример: Coq (coq-8.6) имеет пакеты coqPackages_8_6.ssreflect и coqPackages_8_6.mathcomp, о которых я не могу получить информацию в Nix AFAIK.


person jaam    schedule 14.06.2017    source источник


Ответы (2)


Я лично никогда не использую nix-env -qa, потому что он очень медленный. Вместо этого, когда я ищу пакет верхнего уровня (приложение), я использую http://nixos.org/nixos/packages.html. Когда (как в вашем вопросе) я ищу пакет не верхнего уровня, я использую автодополнение nix repl. Запустите его с

nix repl '<nixpkgs>'

Теперь введите, например, coqPackages и используйте автозаполнение, чтобы увидеть все доступные версии. Введите coqPackages_8_6. и используйте автозаполнение, чтобы увидеть все доступные пакеты в этом наборе.

person Zimm i48    schedule 14.06.2017
comment
Круто... Кстати, nix-env -iA nix-repl выдал ошибку: атрибут «nix-repl» в пути выбора «nix-repl» не найден (но nix-env -i nix-repl работал) - person jaam; 15.06.2017
comment
Извините, я исправил свой ответ. - person Zimm i48; 15.06.2017
comment
github.com/edolstra/nix-repl говорит, что nix-repl устарела и следует использовать команду nix repl в наши дни, когда пакет был объединен с Nix, начиная с версии 1.12. - person Anton Trunov; 07.09.2018

nix search также можно использовать для поиска пакетов. Кэширование всех доступных пакетов происходит медленно, но поиск в кеше выполняется довольно быстро! Проверьте nix search --help!

person Dominik Schrempf    schedule 28.03.2020