1.6 KiB
Provisionnement modulaire
Organisation
hosts/
bureautix-01.nix -> users/alice.nix
bureautix-02.nix -> users/bob.nix
bureautix-03.nix -> users/mike.nix
users/
alice.nix
bob.nix
mike.nix
Le moteur commun se trouve dans modules/ et workstation-setup/. Il ne doit pas être modifié lorsqu'un nouvel utilisateur est ajouté.
Ajouter un utilisateur
Créer une nouvelle fiche dans users/, par exemple users/claire.nix, avec un identifiant UNIX et un nom affiché.
Ajouter un poste
Créer une fiche dans hosts/, par exemple hosts/bureautix-04.nix, qui importe configuration.nix et la fiche utilisateur souhaitée, puis définit networking.hostName.
Ajouter ensuite ce poste à nixosConfigurations dans flake.nix.
Premier passage depuis v1.8.7
La première migration peut être validée sans Flake afin d'activer les fonctionnalités nix-command et flakes dans le système :
sudo nixos-rebuild build \
-I nixos-config=/home/localadm/nixos-workstations/hosts/bureautix-01.nix
Puis :
sudo nixos-rebuild switch \
-I nixos-config=/home/localadm/nixos-workstations/hosts/bureautix-01.nix
Pour bureautix-01, le comportement reste celui de la v1.8.7 et l'utilisateur reste Alice.
Utilisation Flake
Créer une fois le verrou de dépendances :
nix flake lock
Puis construire un poste :
sudo nixos-rebuild build --impure --flake .#bureautix-02
Et l'appliquer :
sudo nixos-rebuild switch --impure --flake .#bureautix-02
--impure est nécessaire tant que /etc/nixos/hardware-configuration.nix reste local au poste et hors du dépôt.