platform-docs/roadmap/installer-roadmap.md
Thomas Stallinger 2f1300940c docs: record kiosk-UI journey, WLAN autoprovisioning model, and TUXFLOTTE ISO label
Kiosk UI: Chromium was evaluated as an Epiphany alternative (ADR-0005)
after ADR-0004's application-mode approach turned out unusable
end-to-end, then abandoned after four distinct real-boot failures in a
row (ADR-0006) in favor of a hardened plain --profile Epiphany launch.
ADR-0004 amended with the actual fix history (profile directory
creation, application-mode's undocumented web-app requirement,
--private-instance/--profile conflict on the target's Epiphany 50.1
vs. the 43.1 used for local testing). ADR-0007 resolves ADR-0004's
open question: the kiosk web UI and installer.sh never talk directly,
only via the provisioning server.

WLAN autoprovisioning: customer profile gets an "Autoprovisionierung"
flag plus WLAN credentials, driving self-service generation of a
personalized ISO with the credentials baked in as a NetworkManager
profile — works from device one, no persistent on-stick state needed.
Personalizing the build this way also motivated giving the ISO its
own volume label (TUXFLOTTE) instead of the source Fedora label.

Also folds in the EROFS root-cause writeup and the Ubuntu-live-medium
alternative noted for a future ISO rework, and brings
roadmap/installer-roadmap.md's checkboxes in line with actual status.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-22 12:16:25 +02:00

4.3 KiB
Raw Permalink Blame History

Tuxflotte Installer Roadmap

Der Tuxflotte Installer ist der Einstiegspunkt in die Tuxflotte-Provisioning-Plattform.

Seine Aufgabe ist es, Geräte möglichst einfach, reproduzierbar und distributionsunabhängig für die weitere Verwaltung vorzubereiten.

Version 0.2

Ziel: Erste komfortable Installer-Version.

Build

  • ISO-Erzeugung vollständig in build.sh integrieren (kein manueller Zwischenschritt mehr nötig, bestätigt durch den erfolgreichen End-to-End-Boot am 20.07.2026, siehe roadmap/milestones.md)
  • reproduzierbarer Build (gleicher Source-ISO-Hash + gleicher Repo-Stand → gleiches, funktional identisches Ergebnis; kein bit-identisches Ausgabe-ISO als Ziel, da Aufwand/Nutzen dafür nicht lohnt)
  • automatische Verifikation (statische/syntaktische Prüfungen vor dem ISO-Bau: Source-ISO-Hash, GRUB-Configs enthalten Branding, Payload-Struktur vollständig, Execute-Bits auf allen Skripten gesetzt, Bash-Syntax valide. Explizit keine automatisierte Boot-/Laufzeitprüfung — die funktionale Prüfung bleibt bewusst manuell in Proxmox: KI prüft syntaktisch, Mensch prüft Durchführung, siehe roadmap/milestones.md 2026-07-20)

Bootmenü

  • Boot from local disk (siehe architecture/01-layered-provisioning.md)
  • Tuxflotte-Branding (Text/Farbschema im GRUB-Menü; Logo folgt am Plymouth-Bootsplash, siehe architecture/13-live-provisioning-boot.md)
  • eigenes ISO-Label (TUXFLOTTE, siehe architecture/13-live-provisioning-boot.md)

Oberfläche

  • Kiosk-UI (Epiphany statt Terminal, siehe ADR-0004/ADR-0006 — Chromium-Zwischenspiel in ADR-0005 verworfen) — Epiphany startet seit 22.07.2026 zuverlässig; Nachbesserungen (Standardbrowser-Abfrage, deutsche Tastatur, SELinux-Benachrichtigungen) umgesetzt, Boot-Verifikation dieser drei noch ausstehend

Version 0.3

Ziel: Netzwerkgestützter Installer.

Netzwerk

  • WLAN-Unterstützung
  • Netzwerkdiagnose
  • Personalisierte ISO-Generierung mit eingebetteten WLAN-Zugangsdaten und individualisiertem ISO-Label (aus Org-Kennung abgeleitet), ausgelöst über Kundenprofil-Flag „Autoprovisionierung" (siehe architecture/13-live-provisioning-boot.md, Abschnitt „WLAN-Zugangsdaten")

Bootstrap

  • Installationsmedium möglichst früh entfernbar
  • Installationsdaten über den Provisioning Server beziehen
  • Vorbereitung für PXE

Registrierung

  • Geräteaktivierung (siehe architecture/11-device-enrollment.md)
  • Benutzeranmeldung
  • Auswahl von OS- und Konfigurationsprofilen

Version 1.0

Ziel: Vollständiger Einstieg in die Provisioning-Plattform.

Lifecycle

  • Reprovisionierung ohne Installationsmedium
  • PXE-Unterstützung
  • automatische Geräteerkennung

Benutzererlebnis

  • modernes Bootmenü
  • Tuxflotte-Design
  • einfache Bedienung

Langfristige Vision

Hinweis: Der Kerngedanke dieser Vision Distributionspakete werden nicht auf dem Medium mitgeführt, sondern je Installation aus dem Netz gezogen bleibt mit ADR-0003 unverändert bestehen. Für den interaktiven, gebrandeten Ablauf wurde dort jedoch bewusst ein volles Live-Medium statt eines minimalen Boot-Mediums gewählt (siehe architecture/13-live-provisioning-boot.md); das Medium selbst wird dadurch größer, nicht die mitgeführten Installationsdaten der Distribution. Dieser größere Fußabdruck wird für die damit gewonnenen UX-Möglichkeiten bewusst in Kauf genommen.

Der Installer soll kein klassisches Installationsmedium sein.

Langfristig enthält er nur noch die Komponenten, die zum Starten eines Geräts erforderlich sind (Bootloader, Kernel, initrd). Alle weiteren Daten werden über den Provisioning Server bereitgestellt.

Dadurch wird:

  • das Installationsmedium klein und leicht aktuell zu halten,
  • ein einzelner USB-Stick für viele Geräte nutzbar,
  • die Grundlage für PXE-Installationen geschaffen,
  • und eine spätere Reprovisionierung ohne physisches Medium ermöglicht.

Geprüft, für eine spätere ISO-Überarbeitung vorgemerkt (21.07.2026): Ubuntu-basiertes Live-Medium statt Fedora, um den EROFS-Bug (siehe architecture/13-live-provisioning-boot.md) von vornherein zu vermeiden — Ubuntus casper/live-build nutzt weiterhin klassisches SquashFS. Kein Beschluss, nur ein Prüfpunkt für den Fall, dass die ISO ohnehin grundlegend überarbeitet wird.