nix

nix-install

Galaxy

Это роль Ansible, которая устанавливает пакетный менеджер nix. На момент написания все другие роли, которые я видел и которые устанавливают nix, устанавливают его для единственного пользователя. Эта роль запускает установку для нескольких пользователей, как рекомендуется в инструкции для обеспечения изоляции сборки. Роль поддерживает обновление версий nix, для которых nix удаляется, чтобы установить новую версию. Эта роль также очень простая, и поэтому ее легко адаптировать.

Требования

Это должно работать с любой Linux дистрибуцией, использующей systemd. Тестировалось на Ubuntu.

Переменные роли

nix_version -- Версия nix, которую нужно скачать и установить. Если не задано, эта роль возьмет последнюю протестированную версию nix.

installer_checksum -- Контрольная сумма для бинарного файла установщика. Вам нужно будет изменить это, если вы поменяете версию nix, которая загружается. Проще всего позволить этому провалиться и исправить ошибку, так как ошибка ясная и предоставляет новое значение контрольной суммы для копирования.

nix_commands -- Необязательный список команд оболочки для выполнения в среде с nix и работающим демоном nix.

flakes -- Установите, чтобы включить команды nix flake.

config -- Необязательно передать дополнительные настройки, чтобы добавить их в файл конфигурации nix.

Пример Playbook

Этот пример устанавливает nix для всех пользователей на myhost:

- hosts: myhost
  roles:
    - role: danielrolls.nix

Этот пример также устанавливает nix для всех пользователей на myhost и затем устанавливает и запускает nix-info. Смотрите главную страницу NixOS для примеров команд для выполнения:

- hosts: myhost
  roles:
    - role: danielrolls.nix
      nix_commands:
      - "nix-shell -p nix-info --command nix-info" 

Лицензия

MIT

Информация об авторе

Профиль на Github

О проекте

Installs the nix package manager with the daemon as recommended.

Установить
ansible-galaxy install danielrolls/nix-install
Лицензия
mit
Загрузки
4501
Владелец