Le programme suit les pratiques actuelles de NixOS, avec une configuration en flake, des secrets chiffrés par sops-nix, une installation automatisée par nixos-anywhere et disko, et un déploiement par deploy-rs ou colmena.
Objectifs
À la fin de la formation, chaque participant sait :
- installer NixOS, modifier sa configuration et revenir à une génération précédente
- organiser la configuration de plusieurs machines dans un flake, avec des modules et des secrets chiffrés
- installer une machine de bout en bout avec nixos-anywhere, disko et une ISO personnalisée
- déployer et mettre à jour un parc en mode push ou en mode pull, et corriger les erreurs courantes
À qui s'adresse cette formation
Une collectivité ou une administration
NixOS est le socle choisi par la DINUM pour Sécurix, un poste de travail durci selon les recommandations de l'ANSSI, et pour Bureautix, qui en dérive un poste bureautique. La formation donne à l'équipe informatique les bases pour suivre ces projets et pour administrer ses propres serveurs sous NixOS, avec une configuration connue, contrôlée et reproductible.
Une entreprise ou une équipe DevOps
L'infrastructure est décrite dans un dépôt Git, relue comme du code, et chaque machine se reconstruit à l'identique. La formation va jusqu'au déploiement d'un parc de serveurs et à sa mise à jour depuis GitLab.
Une équipe qui utilise déjà NixOS
Le programme peut partir de votre propre configuration, pour la réorganiser en flake, gérer les secrets ou automatiser les déploiements.
Formation sur mesure
Le programme de trois jours ci-dessous sert de base. Il se raccourcit en une journée de découverte pour une équipe qui évalue NixOS, ou se recentre sur les points dont votre équipe a besoin.
Organisation
Les éléments à reporter dans votre plan de formation.
| Point | Détail |
|---|---|
| Durée | 3 jours, 21 heures |
| Horaires | 9 h à 12 h 30 et 14 h à 17 h 30, deux pauses de 15 minutes comprises. En intra, les horaires s'adaptent |
| Format | À distance, ou dans vos locaux |
| Groupe | 4 à 8 participants |
| Moyens | Une machine virtuelle par participant, le support de cours et des configurations d'exemple |
| Évaluation | Exercices pratiques à chaque étape, puis installation complète d'une machine le troisième jour |
| Attestation | Certificat de réalisation remis à chaque participant |
Sécurix et Bureautix
Hebeko suit Sécurix et Bureautix et contribue à leur développement. Ces projets sont encore en expérimentation à la DINUM et évoluent vite, nous ne proposons donc pas de formation dédiée. La formation NixOS couvre les notions sur lesquelles ils reposent (flakes, modules, disko, secrets). Elles suffisent pour lire leur configuration et suivre leurs évolutions.
Programme
Jour 1 : Découvrir et installer NixOS
Matin
- Nix et NixOS : déclaratif, reproductible, mises à jour atomiques
- Installation avec l'ISO graphique sur une machine virtuelle
- La configuration :
configuration.nixethardware-configuration.nix
Après-midi
- Générations et retour arrière :
switch,boot,test - Le store : chemins, hachages, closures, profils
- Le langage Nix : lire et écrire les expressions d'une configuration
- Durcissement de base : pare-feu, SSH, utilisateurs, sudo
Jour 2 : De la machine unique à la flotte
Matin
- Passage de la configuration en flake :
flake.nix, inputs,flake.lock - Modules communs et modules par hôte, arborescence multi-hôtes
- Écrire son propre module avec options, avec l'exemple d'un module « compte admin »
Après-midi
- Secrets avec sops-nix : clés age, clés d'hôte, secrets chiffrés dans le dépôt
- Tunnel WireGuard déclaratif : la machine rejoint le serveur VPN au démarrage, avec sa clé privée gérée par sops-nix
- Partitionnement déclaratif avec disko, chiffrement LUKS compris
- ISO personnalisée construite depuis le flake, accès SSH par clé
Jour 3 : Déployer et administrer la flotte
Matin
- Installation de bout en bout en une seule étape avec nixos-anywhere
- Déploiement en mode push avec deploy-rs et colmena, et leurs différences
- Entretien :
nix.gc,nix.optimise, etconfigurationRevisionpour savoir quel commit tourne sur chaque machine
Après-midi
- Mise à jour en mode pull depuis GitLab (
system.autoUpgradesur le flake) - Dépannage : erreurs d'évaluation,
nix log, store ou/bootplein, retour à une génération saine - Selon le temps restant : Home Manager, sauvegarde, supervision, services systemd personnalisés
Questions fréquentes
La formation peut-elle se faire à distance ?
Oui. Elle se déroule dans vos locaux ou à distance, en visio.
Quels sont les prérequis ?
Une bonne pratique de Linux en ligne de commande. Aucune connaissance de Nix n'est demandée.
Peut-on organiser une session pour notre seule équipe ?
Oui. Chaque session est organisée pour une seule organisation, avec des exercices adaptés à votre contexte. Le programme et le tarif sont fixés sur devis.
Suite possible
Pour les bases de l'administration Linux : Formation Linux administrateurs. Pour automatiser une infrastructure existante : Formation DevOps, Ansible, Terraform et CI/CD. Pour NixOS chez Hebeko : NixOS.