Есть ли способ вывести все параметры конфигурации в мой файл configuration.nix?

Я хочу установить причал на NIXOS. Я могу установить его через system.systemPackages, но не могу запустить его автоматически (services.jetty не определен)

Я не хочу спрашивать здесь каждый вариант, поэтому я хочу знать, есть ли документация или способ распечатать каждый вариант в разделе услуг?

Я посмотрел здесь, и я не могу найти там ничего

1 ответ

Ответить на заголовок вашего вопроса; NixOS nixos-option Утилита позволит вам узнать, какие атрибуты вашего configuration.nix оценить.

Я не знаю, предоставляет ли NixOS явный способ напечатать все это, но вы, вероятно, могли бы сделать это самостоятельно довольно легко, используя ту же функцию, которую NixOS использует внутри для оценки configuration.nix. IIRC вам нужно будет позвонить с { modules = [ /etc/nixos/configuration.nix ]; }, Затем вы можете использовать встроенный в Nix toXML функциональность для получения оцененного конфига в печатаемую строку. builtins.toXML или --xml флаг для nix-instantiate оба возможных способа получить доступ к этой функциональности.

Я должен сказать, что если вы сделаете это, будет много xml.

Но я думаю, что это не совсем ваш вопрос. Похоже, вы просто хотите проверить, каковы все доступные предопределенные сервисы NixOS? Приложение параметров конфигурации в руководстве по NixOS содержит эту информацию.

Однако, если вы ищете сервисное подразделение для Jetty, похоже, что в настоящее время его нет.

Я ничего не знаю о Джетти, но я думаю, что вы могли бы написать свой собственный довольно легко (я написал несколько для себя и нашел это довольно просто). Эта запись в вики NixOS дает пример сервисного модуля nixos systemd. Вы также можете просмотреть все другие модули NixOS, чтобы следить за тем, как они написаны. И, конечно же, обратитесь к соответствующим системным справочным страницам.

Кстати, если вы сделаете это, то обнаружите, что вам не нужно объявлять двоичный модуль в systemPackagesпотому что его путь привязан к системному модулю, так что вы просто взаимодействуете с ним.

Другие вопросы по тегам