Vue d'ensemble¶
Version
Page écrite pour pupitre 0.1.35-1.
Cette partie s'adresse à ceux qui installent et exploitent pupitre : technicien d'une collectivité, intégrateur, administrateur du réseau de l'école. Elle décrit ce qui tourne, ce que le réseau doit fournir, comment partir d'une machine vierge et ce que l'on peut adapter sans toucher au code.
Le principe¶
- Une machine virtuelle Debian 13 sert tous les boîtiers d'une salle. Chaque Dell Wyse 1010
devient un siège : une unité systemd
pupitre-seat@N, un affichage virtuelXvfbnuméroté:(100+N)(:101pour le siège 1), un bureau Xfce et un client de protocole,fast_tcp2. Le servicepupitre-managerreconnaît les boîtiers à leur adresse MAC et démarre le siège correspondant. - Le boîtier ne fait tourner aucun logiciel de l'élève. Il affiche des bandes d'image compressées, joue le son et relaie ses ports USB (clavier, souris, clé). Firefox, LibreOffice et les logiciels de l'école tournent dans la VM.
- Le protocole impose la couche 2.
fast_tcp2écrit ses segments TCP à la main sur une socketAF_PACKET, adressés à la MAC du boîtier, et les boîtiers se font connaître par diffusion UDP. La VM doit donc être dans le même domaine de diffusion que les boîtiers : pas de NAT, pas de routeur entre eux. Le détail est dans Architecture et réseau. - Deux modes de session. En mode
fixe, le défaut, chaque siège ouvre directement un bureau sous un compte propre au siège. En modeeleves(depuis 0.1.27), chaque siège affiche un écran de connexion LightDM et chaque élève travaille sous son propre compte local. - On adapte par la configuration, pas par le code : fichier
/etc/pupitre/pupitre.conf, surcharges systemd par siège, briques de contrôle activées parpupitre-controle. Voir Couches personnalisables.
Ce que pupitre ne fait pas¶
- pas de connexion des élèves par un annuaire (AD, LDAP) : comptes locaux seulement ;
- pas de serveur derrière un routeur ou un NAT : la VM doit être dans le domaine de diffusion des boîtiers.
Les chiffres de débit et de dimensionnement sont dans Architecture et réseau.
Parcours de lecture¶
- Architecture et réseau : la salle, la pile d'un siège, les ports, les débits, le dimensionnement de la VM et les préconisations.
- Installation de zéro : de la VM vierge au premier siège, par le paquet ou depuis les sources.
- Couches personnalisables : ce que l'on peut modifier, où, et ce qu'il ne faut pas toucher.
- Versions et fonctionnalités : quelle fonction est arrivée dans quelle version, et les changements de comportement par défaut.
- La partie Fonctionnement interne reprend la documentation détaillée du dépôt, en anglais : le gestionnaire de sièges, le lancement d'un siège, la console web, l'apparence du bureau. Les notes d'installation détaillées restent dans le dépôt : install.md.
Lire cette documentation selon votre version¶
Pupitre évolue vite. Pour que ces pages restent utiles à une installation qui n'est pas à jour, elles suivent trois règles.
Le sélecteur en haut de page change de version. « dernière (main) » suit le développement ; les autres entrées sont les versions publiées, chacune avec la documentation figée telle qu'elle était à sa sortie. Une version n'y apparaît que si elle a été taguée avec sa documentation : les versions antérieures au site n'y figurent pas, la matrice de Versions et fonctionnalités les couvre.
Chaque page annonce sa version dans un encadré « Version » en tête.
Une fonction récente porte la mention « (depuis 0.1.N) ». Si votre version est plus ancienne,
la fonction est absente ou se comporte autrement. Exemple : le mode eleves porte « (depuis
0.1.27) » ; sur une 0.1.26, chaque siège ouvre un bureau sans écran de connexion.
Une fonction peut exister longtemps avant d'être allumée par défaut : la liste est dans Versions et fonctionnalités, avec la façon de connaître la version installée.