Lokale KI-Station fuer Zorin OS: Bash-Installer + Docker Compose (Ollama 0.30.7, Open WebUI 0.9.6, n8n 2.25.7), drei roemische Berater als Ollama-Modelfiles, Theme via gsettings, Desktop-Shortcuts. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
35 lines
1.4 KiB
Bash
Executable file
35 lines
1.4 KiB
Bash
Executable file
#!/usr/bin/env bash
|
||
# Prüft, ob der Rechner für die Roman Station geeignet ist.
|
||
set -euo pipefail
|
||
|
||
warn() { printf '\033[1;33m[HINWEIS]\033[0m %s\n' "$*"; }
|
||
fail() { printf '\033[1;31m[FEHLER]\033[0m %s\n' "$*"; exit 1; }
|
||
|
||
# Zorin OS?
|
||
# shellcheck disable=SC1091
|
||
. /etc/os-release
|
||
if [ "${ID:-}" != "zorin" ]; then
|
||
if [ "${ROMAN_SKIP_OS_CHECK:-0}" = "1" ]; then
|
||
warn "Kein Zorin OS erkannt (${PRETTY_NAME:-unbekannt}) — Prüfung per ROMAN_SKIP_OS_CHECK übersprungen."
|
||
else
|
||
fail "Dieses Script ist für Zorin OS gebaut (gefunden: ${PRETTY_NAME:-unbekannt}). Erzwingen mit: ROMAN_SKIP_OS_CHECK=1"
|
||
fi
|
||
fi
|
||
|
||
# Arbeitsspeicher
|
||
ram_gb="$(awk '/MemTotal/ {printf "%d", $2/1024/1024}' /proc/meminfo)"
|
||
[ "$ram_gb" -ge 8 ] || fail "Mindestens 8 GB RAM nötig, gefunden: ${ram_gb} GB."
|
||
[ "$ram_gb" -ge 16 ] || warn "Nur ${ram_gb} GB RAM — die Station läuft, aber bleib bei kleinen Modellen (3–4B)."
|
||
|
||
# Freier Speicherplatz
|
||
free_gb="$(df -BG --output=avail "$HOME" | tail -1 | tr -dc '0-9')"
|
||
[ "$free_gb" -ge 25 ] || fail "Mindestens 25 GB freier Speicher nötig, gefunden: ${free_gb} GB."
|
||
|
||
# Internet
|
||
curl -fsS --max-time 10 https://hub.docker.com >/dev/null 2>&1 \
|
||
|| fail "Keine Internetverbindung — wird für den Download der Container gebraucht."
|
||
|
||
# sudo-Rechte
|
||
sudo -v || fail "sudo-Rechte werden für die Installation benötigt."
|
||
|
||
printf '\033[1;32m[OK]\033[0m Systemprüfung bestanden (%s GB RAM, %s GB frei).\n' "$ram_gb" "$free_gb"
|