nix helper
nh — это современный CLI-инструмент, разработанный для улучшения и расширения функциональности стандартных команд NixOS. Он предоставляет более удобный и информативный способ управления системой, включая сборку конфигураций, очистку системы и поиск пакетов.
Основные возможности
Пересборка конфигураций системы и Home Manager
nh переосмысливает команды nixos-rebuild и home-manager, предоставляя:
- интерактивное дерево сборки с использованием
nix-output-monitor - подробный дифф изменений пакетов с помощью
nvd - флаг
--askдля предварительного просмотра изменений перед их применением - поддержку специализаций, автоматически определяя текущую активную специализацию и применяя соответствующую конфигурацию
Очистка системы
Команда nh clean предоставляет расширенные возможности очистки:
- удаление устаревших GC-объектов
- автоматическую очистку с возможностью настройки параметров, таких как сохранение последних N дней или определённого количества поколений
- интеграцию с NixOS через модуль, позволяющий настроить регулярную очистку системы
Быстрый поиск пакетов
nh search обеспечивает молниеносный поиск пакетов в Nixpkgs, превосходя по скорости стандартные инструменты поиска благодаря использованию ElasticSearch-клиента.
Удобный REPL
Команда nh repl запускает интерактивную сессию с предзагруженными пакетами из Nixpkgs, облегчая тестирование и изучение пакетов.
Дополнительные функции
- поддержка флейков и классических конфигураций:
nhработает как с flake-конфигурациями, так и с традиционными configuration.nix - автоматическое определение специализаций: утилита может автоматически определить текущую специализацию системы, основываясь на содержимом файла /etc/specialisation, и применить соответствующую конфигурацию