danielrolls.nix
nix-install
To jest rola Ansible, która instaluje menedżera pakietów nix. W chwili pisania tego tekstu, wszystkie inne role, które widziałem, instalują nix dla jednego użytkownika. Ta rola uruchamia instalację wieloużytkownikową, co jest zalecane przez podręcznik, aby zapewnić izolację budowy. Rola wspiera aktualizację wersji nix, dla których nix jest odinstalowany, aby umożliwić działanie instalatora. Ta rola jest również niezwykle prosta, a zatem łatwa do dostosowania.
Wymagania
Powinna działać z dowolną dystrybucją Linuksa, która używa systemd. Testowano ją na Ubuntu.
Zmienne roli
nix_version -- Wersja nix, którą należy pobrać i zainstalować. Jeśli nie jest ustawiona, rola weźmie ostatnią przetestowaną wersję nix.
installer_checksum -- Suma kontrolna dla binarnego instalatora. Będziesz musiał to zmienić, jeśli zmienisz wersję nix, która jest pobierana. Najłatwiej jest pozwolić na błąd i naprawić go, ponieważ komunikat błędu jest jasny i podaje nową wartość sumy kontrolnej do skopiowania.
nix_commands -- Opcjonalna lista poleceń powłoki do uruchomienia w środowisku z nix oraz działającym demonem nix.
flakes -- Ustaw na włączenie poleceń nix flake.
config -- Opcjonalnie przekaż dodatkową konfigurację, aby dodać ją do pliku konfiguracyjnego nix.
Przykładowy playbook
Ten przykład instaluje nix dla wszystkich użytkowników na myhost:
- hosts: myhost
roles:
- role: danielrolls.nix
Ten przykład również instaluje nix dla wszystkich użytkowników na myhost, a następnie instaluje i uruchamia nix-info. Zobacz stronę główną NixOS dla przykładów poleceń do uruchomienia.
- hosts: myhost
roles:
- role: danielrolls.nix
nix_commands:
- "nix-shell -p nix-info --command nix-info"
Licencja
MIT
Informacje o autorze
Installs the nix package manager with the daemon as recommended.
ansible-galaxy install danielrolls.nix