Define clean Debian bootstrap requirements for native installer
This commit is contained in:
@@ -134,3 +134,10 @@ Der verifizierte Erstbuild liegt in `state/runtime-verification`;
|
|||||||
`state/runtime/<Build-ID>` verweist intern darauf, damit seine Build-RPATHs
|
`state/runtime/<Build-ID>` verweist intern darauf, damit seine Build-RPATHs
|
||||||
erhalten bleiben. Beide Verzeichnisse gehören ausschließlich Deck und bleiben
|
erhalten bleiben. Beide Verzeichnisse gehören ausschließlich Deck und bleiben
|
||||||
bei Updates bestehen. Künftige Builds entstehen direkt unter `state/runtime`.
|
bei Updates bestehen. Künftige Builds entstehen direkt unter `state/runtime`.
|
||||||
|
|
||||||
|
## Installation als Produktanforderung
|
||||||
|
|
||||||
|
Der native Installer muss ein frisches Debian vollständig vorbereiten. Siehe
|
||||||
|
[verbindlicher Umfang und Abnahme](deploy/NATIVE_INSTALL_REQUIREMENTS.md).
|
||||||
|
Vorhandene Werkzeuge auf Athena dürfen nicht als allgemeine Voraussetzung
|
||||||
|
versteckt bleiben. Der Docker-Testinstaller ist kein fertiger nativer Installer.
|
||||||
|
|||||||
+10
-2
@@ -1,4 +1,4 @@
|
|||||||
# Athena Deck auf Debian installieren
|
# Athena Deck: derzeitiger Docker-Testinstaller
|
||||||
|
|
||||||
Eigenständige Installation ohne WireGuard-Modul und ohne Änderungen am bestehenden
|
Eigenständige Installation ohne WireGuard-Modul und ohne Änderungen am bestehenden
|
||||||
Athena-Router. Der Installer installiert den aktuellen Deck-Anwendungsstand;
|
Athena-Router. Der Installer installiert den aktuellen Deck-Anwendungsstand;
|
||||||
@@ -6,7 +6,15 @@ Modellkatalog, Downloads und llama.cpp-Buildverwaltung sind aktiv. Das Docker-Im
|
|||||||
enthält das CUDA-Build-Toolkit; der Debian-Host wird nicht verändert. Zielprodukt
|
enthält das CUDA-Build-Toolkit; der Debian-Host wird nicht verändert. Zielprodukt
|
||||||
bleibt ein nativer systemd-Dienst. Modellstarts sind noch nicht angebunden.
|
bleibt ein nativer systemd-Dienst. Modellstarts sind noch nicht angebunden.
|
||||||
|
|
||||||
## Voraussetzungen
|
## Ziel: native Installation auf frischem Debian
|
||||||
|
|
||||||
|
Der endgültige Installer muss alle Voraussetzungen selbst einrichten können,
|
||||||
|
einschließlich Python, Build-Werkzeugen, CUDA und Dienstbetrieb. Docker ist
|
||||||
|
keine Voraussetzung des Zielprodukts. Der aktuelle Testinstaller erfüllt dies
|
||||||
|
noch nicht. Verbindlicher Umfang und Abnahme:
|
||||||
|
[Native Installationsanforderungen](deploy/NATIVE_INSTALL_REQUIREMENTS.md).
|
||||||
|
|
||||||
|
## Voraussetzungen des aktuellen Testinstallers
|
||||||
|
|
||||||
- Debian 12 oder 13, Python 3 und root/sudo.
|
- Debian 12 oder 13, Python 3 und root/sudo.
|
||||||
- Docker Engine >= 28, bereits eingerichtet und erreichbar.
|
- Docker Engine >= 28, bereits eingerichtet und erreichbar.
|
||||||
|
|||||||
@@ -0,0 +1,58 @@
|
|||||||
|
# Verbindlicher Installationsumfang: frisches Debian
|
||||||
|
|
||||||
|
Athena Deck muss auf einem frischen, unterstützten Debian mit Internetzugang und
|
||||||
|
root/sudo installierbar sein. Docker, Python, Compiler, CUDA und ein vorhandener
|
||||||
|
Athena-Router dürfen für das native Produkt nicht vorausgesetzt werden.
|
||||||
|
|
||||||
|
Der aktuelle `install.sh` ist nur der Docker-Testinstaller und erfüllt dieses
|
||||||
|
Ziel noch nicht. Diese Datei ist der verbindliche Umfang für seinen nativen
|
||||||
|
Nachfolger, keine Behauptung einer bereits implementierten Installation.
|
||||||
|
|
||||||
|
## Vom nativen Installer einzurichten
|
||||||
|
|
||||||
|
- Python-Laufzeit, CA-Zertifikate, Git und Download-Voraussetzungen.
|
||||||
|
- C/C++-Compiler, Make, CMake und benötigte Entwicklungsbibliotheken
|
||||||
|
(derzeit unter anderem OpenSSL); Versionen anhand des unterstützten
|
||||||
|
llama.cpp-Buildstands prüfen.
|
||||||
|
- Passendes CUDA-Build-Toolkit für die tatsächlich erkannten GPUs, einschließlich
|
||||||
|
gemischter GPU-Generationen. Toolkit und Host-Treiber getrennt behandeln.
|
||||||
|
- NVIDIA-Treiber auf Neuinstallationen: vorhandenen Zustand und Kompatibilität
|
||||||
|
prüfen, erforderliche Einrichtung nachvollziehbar anbieten. Kein blindes
|
||||||
|
Überschreiben vorhandener Treiber. Erforderlichen Neustart melden, niemals
|
||||||
|
automatisch neu starten; Installation danach fortsetzen können.
|
||||||
|
- Eigener unprivilegierter Dienstbenutzer, private Zustandsverzeichnisse,
|
||||||
|
Modellablage, versionierte Build-Verzeichnisse und passende Dateirechte.
|
||||||
|
- Nativer systemd-Dienst mit geregeltem Start/Stopp, Kindprozess-Cleanup,
|
||||||
|
Ressourcenlimits, Bereitschaftsprüfung und Autostart.
|
||||||
|
- Ersteinrichtung von Oberflächenkennwort und API-Token ohne Standardkennwort
|
||||||
|
oder Ausgabe von Geheimnissen. Kein ungeschütztes Beanspruchen des Servers.
|
||||||
|
- Wiederholbarer Installationsablauf, Wiederaufnahme nach Fehlern sowie
|
||||||
|
Update-/Rückfallmechanismus ohne Verlust von Zugangsdaten, Modellen und Builds.
|
||||||
|
|
||||||
|
Die vollständige Build-Umgebung wird installiert. Die Auswahl der llama.cpp-
|
||||||
|
Version, der eigentliche Build und spätere Updates bleiben über die GUI möglich.
|
||||||
|
Modellgewichte werden nicht ungefragt heruntergeladen. Produktionsprofile,
|
||||||
|
Modelle oder Pfade des heutigen Athena-Servers sind keine Installationsvoraussetzung.
|
||||||
|
WireGuard ist eine optionale, ausdrücklich ausgewählte Komponente.
|
||||||
|
|
||||||
|
## Grenzen auf bereits genutzten Servern
|
||||||
|
|
||||||
|
Neuinstallation und bestehende Installation müssen unterschieden werden.
|
||||||
|
Vorhandene Router, Container, GPUs nutzende Dienste, Netzwerk-/Firewallregeln und
|
||||||
|
WireGuard-Gateways werden nicht ungefragt verändert. Änderungen an Paketen,
|
||||||
|
Treibern und Diensten werden vor Ausführung konkret angezeigt. Auf der heutigen
|
||||||
|
Athena bleiben Host-Pakete und Treiber unverändert; Entwicklung weiterhin isoliert.
|
||||||
|
|
||||||
|
## Abnahme vor Freigabe
|
||||||
|
|
||||||
|
1. Installation auf frischem unterstütztem Debian ohne Python/Docker/Build-Tools.
|
||||||
|
2. CPU-Pfad sowie NVIDIA-Pfad mit RTX 3060 und RTX 5080 prüfen.
|
||||||
|
3. Ersteinrichtung, Anmeldung, Hardwareanzeige und systemd-Neustart prüfen.
|
||||||
|
4. llama.cpp über die GUI herunterladen, für erkannte GPU-Architekturen bauen,
|
||||||
|
Version prüfen und Auto-Fit ausführen.
|
||||||
|
5. Abbruch, fehlendes Netz, wenig Speicher, notwendiger Treiberneustart und
|
||||||
|
Wiederaufnahme prüfen; keine automatischen Host-Neustarts.
|
||||||
|
6. Wiederholte Installation, Update und Rückfall mit erhaltenem Zustand prüfen.
|
||||||
|
|
||||||
|
Erst nach diesen Prüfungen darf die Dokumentation den Installer als für ein
|
||||||
|
frisches Debian vollständig geeignet bezeichnen.
|
||||||
Reference in New Issue
Block a user