Motivé par les problèmes avec les modifications ad-hoc lors de l'utilisation d'Ansible, l'auteur a choisi d'installer NixOS sur un serveur, ce qui offrait un contrôle plus précis sur les paquets et les utilisateurs. Le processus d'installation de NixOS a impliqué l'utilisation de nixos-infect, la copie de la configuration générée, la création d'un flake et le déploiement des modifications à l'aide de nixos-rebuild. Pour exécuter un service Go sur le serveur, l'auteur a défini la configuration du service dans un seul fichier .nix, permettant la création dynamique d'utilisateurs et le stockage persistant. Malgré la complexité de la syntaxe du langage Nix, l'auteur a apprécié la fiabilité et la gestion centralisée de la configuration offerte par NixOS. Cependant, des questions subsistent quant aux vérifications spécifiques effectuées pendant nixos-rebuild et à un workflow simplifié pour déployer les mises à jour de service. Dans l'ensemble, l'auteur considère NixOS comme prometteur, malgré les défis rencontrés dans le débogage et l'apprentissage de la syntaxe du langage.
jvns.ca
Some notes on NixOS
