diff --git a/ai-box/bootstrap.sh b/ai-box/bootstrap.sh index f7f9c56..c559c68 100755 --- a/ai-box/bootstrap.sh +++ b/ai-box/bootstrap.sh @@ -100,24 +100,22 @@ else warn "Treiber installiert, aber nvidia-smi antwortet nicht → REBOOT noetig." DRIVER_ACTIVE=0 else - # Vor dem Install pruefen ob's einen Kandidaten gibt. Self-Heal: das schnelle - # -qq-Update oben indiziert non-free manchmal nicht sauber (InRelease-Cache) — - # dann hier ein volles apt-get update erzwingen und erneut pruefen. - have_candidate() { apt-cache policy nvidia-driver 2>/dev/null | grep -qE '(Candidate|Installationskandidat): [0-9]'; } - if ! have_candidate; then - warn "Kein Kandidat — erzwinge vollstaendiges 'apt-get update' und pruefe erneut…" - apt-get update - fi - if ! have_candidate; then - echo - warn "nvidia-driver hat KEINEN Installationskandidaten — 'non-free' ist nicht wirksam." - warn "Aktive Components-/deb-Zeilen:" - grep -rhE '^[Cc]omponents:' /etc/apt/sources.list.d/*.sources 2>/dev/null | sed 's/^/ /' || true - grep -E '^deb ' /etc/apt/sources.list 2>/dev/null | sed 's/^/ /' || true - die "non-free in den APT-Quellen aktivieren (s.o.), dann Script erneut ausfuehren." - fi + # KEIN separater Kandidaten-Check — die apt-cache-Ausgabe ist locale-/pipe- + # fragil (hat faelschlich "kein Kandidat" gemeldet). Der Install IST der Test: + # direkt installieren; schlaegt er fehl, einmal volles apt-get update + Retry, + # dann erst mit Diagnose abbrechen. warn "Installiere nvidia-driver (zieht Kernel-Modul via DKMS, dauert)…" - apt-get install -y -qq nvidia-driver firmware-misc-nonfree >/dev/null + if ! apt-get install -y nvidia-driver firmware-misc-nonfree; then + warn "Install fehlgeschlagen — volles 'apt-get update' + zweiter Versuch…" + apt-get update + if ! apt-get install -y nvidia-driver firmware-misc-nonfree; then + echo + warn "nvidia-driver liess sich nicht installieren. Aktive Quellen:" + grep -rhE '^[Cc]omponents:' /etc/apt/sources.list.d/*.sources 2>/dev/null | sed 's/^/ /' || true + grep -E '^deb ' /etc/apt/sources.list 2>/dev/null | sed 's/^/ /' || true + die "Pruefe 'apt-cache policy nvidia-driver' + Netz/non-free." + fi + fi ok "nvidia-driver installiert" DRIVER_ACTIVE=0 fi