Deux modes d’installation. Un système déclaré.
Nixorium transforme la configuration de la salle en systèmes NixOS complets sur le contrôleur. Une machine vide utilise PXE ou l’ISO officielle NixOS via USB/SSH vérifié ; une machine installée reçoit une mise à jour distincte avec Colmena. Le travail quotidien s’exécute localement.
- 01Évaluer
- 02Compiler
- 03Distribuer
Installer, mettre à jour ou démarrer localement.
Le contrôleur prépare les deux modes de distribution, sans être un serveur de bureau à distance pour la salle. Chaque poste installé exécute son propre système NixOS et ses applications.
Installation PXE ou USB/SSH
PXE charge l’installateur sur plusieurs machines. USB/SSH vérifie une ISO officielle NixOS lorsque le démarrage réseau est indisponible. Les deux parcours rejoignent le système signé et la vérification Disko.
Suivre les deux parcours d’installation ↓Déploiement du système
Colmena se connecte par SSH, les clients récupèrent les chemins préparés du store depuis Harmonia et NixOS active une nouvelle génération.
Suivre le parcours de mise à jour ↓Démarrage et applications locales
Le poste démarre depuis son disque et exécute le bureau localement. PXE, l’installation USB, Colmena et la vue de classe ne participent pas à l’exécution courante des applications.
Voir le bureau des élèves →Framework et configuration de la salle séparés.
L’installation initiale génère la configuration de la salle : un dépôt privé qui fixe la version de Nixorium. Les réglages et identifiants de la salle relèvent de responsabilités distinctes du framework public.
- 01 · Environnement live
Choisir la source et le disque du contrôleur
Le contrôleur démarre depuis l’ISO officielle NixOS (Minimal ou Graphical) en UEFI avec Internet. L’installation initiale résout la source Nixorium choisie, applique le clavier de console, recueille les comptes et réglages régionaux, puis confirme le disque à effacer.
- 02 · Configuration de la salle
Créer le dépôt privé de la salle
La configuration est générée depuis le modèle et fixe Nixorium comme source amont. La machine installée démarre en mode contrôleur seul, avec les comptes et réglages régionaux choisis ; le réseau de la salle reste inactif.
- 03 · Gestion de la salle
Définir la salle lorsque le réseau est prêt
Après redémarrage, Installation → Network boot (PXE) recueille la topologie, crée les clés manquantes, active le contrôleur et prépare les clients configurés. Les clés privées restent sur le contrôleur.
Nixorium
Modules, installateurs, réglages par défaut et fonction générant le parc, tous versionnés.
Version fixée par la configuration de la salleVotre salle
Réglages de la salle, personnalisations des postes, ressources, empreintes de mots de passe et clés publiques du cache et de SSH.
Les clés privées restent sur le contrôleurSystèmes nommés
Les configurations évaluées et les artefacts utilisés pour l’installation et le déploiement.
Une source unique pour l’état souhaitéLa configuration fixe la version de Nixorium et de ses dépendances. Changer une valeur ne modifie pas directement une machine en marche : cela change l’entrée à partir de laquelle le système concerné est évalué et compilé.
lab-settings.jsonTopologie gérée, noms des rôles locaux, empreintes de mots de passe, réseau, langue, clavier, page d’accueil et autres valeurs typées de la salle.
lab-software.jsonDéclarations de paquets avec portées explicites : partagée, contrôleur, groupe de clients ou client individuel.
workspace-profile.jsonL’environnement des élèves : dock, apparence, extensions et réglages VS Code et navigateur par défaut, modifiés dans l’éditeur TUI guidé et restaurés à chaque démarrage.
flake.lockLes révisions exactes de Nixorium et des paquets NixOS. Update Nixorium et Update system and packages ne les changent qu’après vérification.
modules/ + assets/Réglages avancés des postes, du développement, des profils personnels, des machines, de l’identité visuelle, de l’éditeur et du bureau, propres à la salle.
keys/ + controller secretsLes clés publiques autorisées du cache et de SSH peuvent être versionnées. Les clés privées correspondantes restent hors des commits sur le contrôleur et sont installées par le processus géré.
Installation initiale du contrôleur Flake de déploiement Schéma de configuration Générateur du parc
Évaluer, compiler et publier.
- 01
Évaluer la salle
La configuration génère un système NixOS nommé pour chaque client, une configuration distincte du contrôleur, un environnement de démarrage réseau, les métadonnées Colmena et un paquet d’installation autonome.
- 02
Compiler sur le contrôleur
Les entrées fixées et la configuration partagée produisent chaque système client avec toutes ses dépendances, les artefacts de démarrage PXE et l’installateur distant USB/SSH indépendant de la cible.
- 03
Publier dans le LAN
Harmonia expose des chemins signés du store Nix. PXE publie sa chaîne de démarrage ; USB/SSH transfère un assistant vérifié dans l’ISO officielle NixOS. Les clients utilisent les résultats préparés localement plutôt que de les résoudre et compiler depuis Internet.
Deux parcours vers une installation locale.
PXE est conseillé pour plusieurs machines. USB/SSH installe une machine identifiée physiquement sans démarrage réseau. Aucun des deux n’est un déploiement courant ; tous deux remplacent le disque cible après vérification explicite.
Le Wi-Fi peut être incompatible avec PXE selon le matériel, le firmware et le réseau. USB/SSH accepte Ethernet ou Wi-Fi : le contrôleur doit joindre le client live par SSH, et le client doit accéder au cache signé.
Suivre le parcours PXE
- 01DHCP + ProxyDHCP
Découvrir le service de démarrage
Le DHCP de l’établissement continue d’attribuer les adresses. Le processus dnsmasq de Nixorium ne répond qu’aux requêtes de démarrage réseau et oriente le firmware UEFI vers le contrôleur.
- 02TFTP
Passer à iPXE
Le firmware reçoit un petit exécutable UEFI iPXE. iPXE reçoit ensuite le script de démarrage généré par le même contrôleur.
- 03HTTP
Charger l’environnement d’installation
Le script télécharge par HTTP le noyau NixOS et le ramdisk initial préparés. Le ramdisk contient le code de l’installateur propre au déploiement.
- 04Disko + NixOS
Installer le poste sélectionné
L’opérateur identifie le PC et confirme le disque cible. Disko applique le schéma UEFI et Btrfs déclaré ; NixOS installe la configuration de ce PC à partir des chemins signés fournis par Harmonia.
- 05Disque local
Quitter l’installateur réseau
Après installation, le poste démarre depuis son disque. PXE sert à installer et recréer le système, pas à chaque démarrage courant.
Suivre le parcours de l’ISO officielle NixOS via SSH
- 01ISO officielle NixOS
Démarrer localement une session live
L’opérateur démarre NixOS 26.05 (Minimal ou Graphical) en UEFI, se connecte par Ethernet ou Wi-Fi, définit un mot de passe temporaire et lit l’IP et l’empreinte Ed25519 sur la console physique.
- 02Identité SSH fixée
Associer l’identité physique et logique
Le contrôleur vérifie cette empreinte exacte avant l’authentification par mot de passe, installe une clé propre à l’opération et associe un client configuré à la session live.
- 03Cache Harmonia signé
Préparer un système précis
Le contrôleur compile le système sélectionné avec toutes ses dépendances. Le client live n’accepte que les chemins signés par ce contrôleur et ne se rabat jamais sur Internet.
- 04Disko + NixOS
Vérifier et remplacer un disque
Le support de démarrage est exclu. L’opérateur choisit explicitement un disque admissible et confirme une vérification liée à la session physique, à l’hôte logique, à la révision et au disque.
- 05Redémarrage et vérification séparés
Démarrer le système installé
Une fois l’installation terminée, l’opérateur retire la clé USB ou la fait passer après le disque dans l’ordre de démarrage, autorise séparément le redémarrage et vérifie l’hôte installé et sa révision exacte. Les identifiants Wi-Fi de la session live ne sont pas copiés : prévoyez la connexion du système installé avant la vérification.
Le client ne contacte Internet dans aucun des deux parcours.
Les artefacts PXE ou l’assistant distant et tous les chemins signés du store Nix viennent du contrôleur, par le trafic local autorisé. Le contrôleur a toutefois besoin d’Internet pour l’installation initiale et les nouvelles entrées ; Nixorium ne s’authentifie pas auprès des portails captifs et ne contourne pas les règles du réseau.
Source du service PXE Source de l’installateur client Source du partitionnement
Déployer avec Colmena.
Une fois le poste installé, le déploiement courant le joint par SSH à son adresse statique dans la salle. Il ne refait pas l’installation du disque par PXE ou USB/SSH.
- 01ModifierModifier ou mettre à jour la configuration de la salle
- 02CompilerProduire les systèmes sélectionnés sur le contrôleur
- 03DistribuerExposer les chemins signés du store via Harmonia
- 04DéployerColmena joint un client ou le groupe de la salle par SSH
- 05ActiverNixOS enregistre la nouvelle génération du système
La configuration du contrôleur est appliquée séparément. L’opérateur choisit ensuite un ou plusieurs clients configurés ; il est conseillé de tester d’abord un poste représentatif.
Définitions des machines Colmena Configuration du cache des clients Générations NixOS et retour en arrière
Composants et responsabilités.
Nixorium installe et configure ces composants lors de la préparation de la salle.
Sur un écran étroit, faites défiler horizontalement pour lire toutes les colonnes. Vous pouvez aussi sélectionner le tableau et utiliser les flèches.
| Composant | Rôle dans Nixorium | Phase |
|---|---|---|
| Nix + NixOS | Fixer les entrées, valider les modules, compiler des systèmes complets et conserver les générations activées. | Définition et compilation |
| Système de modules NixOS + mkLab | Valider la configuration et générer les configurations du contrôleur, des clients, du démarrage réseau, de l’installateur et du déploiement. | Évaluation |
| Compilateur et store Nix | Compiler les systèmes complets et les artefacts de démarrage depuis la définition fixée sur le contrôleur. | Compiler |
| Harmonia | Distribuer les chemins signés du store Nix depuis le contrôleur aux clients sur le réseau local. | Installation et mise à jour |
| dnsmasq, TFTP, HTTP et iPXE | Diriger les clients UEFI vers le noyau et le ramdisk préparés sans remplacer le DHCP de l’établissement. | Installer |
| OpenSSH + installateur distant | Vérifier une ISO officielle NixOS, associer son empreinte physique à un client configuré et lancer une installation vérifiée dont les traces survivent à un redémarrage. | Installer |
| Disko | Appliquer le schéma déclaré de partitions et de systèmes de fichiers au disque confirmé par l’opérateur. | Installer |
| Colmena + OpenSSH | Cibler un client ou le groupe de la salle et coordonner l’activation distante depuis le contrôleur. | Mettre à jour |
| Générations NixOS | Enregistrer les configurations activées pour qu’une génération précédente reste disponible en cas de retour en arrière. Free disk space conserve les dix plus récentes sur chaque ordinateur, et le menu de démarrage en affiche dix au maximum. | Activation |
| age | Chiffrer par une phrase secrète la sauvegarde du contrôleur : configuration avec son historique Git, clés privées et clés des ordinateurs de confiance. | Sauvegarde |
| Vue de classe | Montre à l’enseignant les écrans des élèves et fait passer verrouillage, partage d’écran et distribution de fichiers par l’accès SSH existant ; elle n’installe ni ne déploie de systèmes NixOS. | Gestion de la salle |
Limites du réseau et de la confiance.
- Connexion du contrôleur
- Internet est nécessaire pour l’installation initiale et pour les nouvelles entrées logicielles qui ne sont pas encore disponibles.
- Connexion des clients
- Un accès direct à Internet n’est pas nécessaire pour l’installation ou les mises à jour préparées ; il faut en revanche accéder au contrôleur par le LAN autorisé.
- Adressage PXE
- Les artefacts de démarrage générés utilisent l’adresse DHCP du contrôleur. Si elle change avant une session de démarrage réseau, ils doivent être reconstruits.
- Identité USB/SSH
- L’opérateur doit être présent pour démarrer l’ISO officielle NixOS, lire localement son IP et son empreinte Ed25519, choisir le disque et gérer le support d’installation.
- Déploiement courant
- Colmena joint les clients installés par SSH à leurs adresses statiques dans la salle.
- Démarrage et disque
- L’installateur standard actuel exige x86_64 UEFI et efface le disque cible confirmé par l’opérateur.
- Confiance et contrôle
- Signatures du cache, comparaison physique des empreintes, clés SSH, configuration, sélection des cibles, vérification du disque et déploiement restent sous la responsabilité de l’opérateur.
- Limites des identifiants
- Les clients reçoivent les éléments publics autorisés. Les identifiants privés du cache et de SSH restent sur le contrôleur, hors du code public versionné.
- Sauvegarde du contrôleur
- La sauvegarde chiffrée contient tout le nécessaire pour remplacer le contrôleur sans réinstaller les clients. Gardez le fichier et sa phrase secrète séparément : quiconque possède les deux peut gérer la salle.
- Supervision de la salle
- L’agent de la vue de classe s’exécute dans la session de l’élève sur un socket privé et n’ouvre aucun port réseau. Le contrôleur ne l’atteint que par son accès SSH existant, et GNOME affiche son avertissement de partage pendant la capture de l’écran.