Pourquoi Nix ? (exemples)
Nix a beaucoup d'utilisations possibles pour les développeurs et les adminsys. Mais aussi certains pour les utilisateurs Linux qui aiment expérimenter.
- Bénéficier du plus grand repository du monde (il y a également un équivalent à l'AUR s'appellant le NUR et qui n'est pas compté dans les chiffres)
- Ne pas avoir à se soucier des dépénences des paquets, on peut installer tout ce que l'on veut sans qu'il y ai le moindre conflit de versions
- Sur NixOS, ne pas avoir à se soucier de quoi que ce soit car toute config peut être rollback
- Ne pas avoir à utiliser root pour installer des paquets
- Essayer des logiciels sans pour autant les installer dans son environnement (avec
nix-shell
) - Créer des environnements de build ou de développement (plus besoin d'utiliser Docker ou virtualenv pour ça) (avec
nix-shell
ounix develop
) ainsi il est très aisé de pouvoir utiliser n'importe quel version de n'importe quoi sans devoir se soucier de quoi que ce soit. - Décrire un environnement de manière déclarative dans un fichier de config, ainsi tous les autres collaborateur·ice·s pourront avoir l'exact même environnement de build et de développement que vous (fini les "ça marche sur mon ordi")
- Créer des images docker très minimales (sans avoir à utiliser de Dockerfile), reproductible (un même Dockerfile n'arrive pas toujours à la même image à cause des updates, cependant un même flake.nix arrivera toujours au même résultat bit pour bit)
- Créer une image cloud de manière déclarative (imaginez "coder" votre serveur en quelques lignes)
- Faire des tests de ses configurations
Démos
Vous pouvez trouver des démos des exemples donnés juste avant :
- Sur le site nixos.org
- Sur la chaine YouTube OpenTechLab