Initial Phoenix analyzer

This commit is contained in:
Mikei386
2026-06-02 20:56:19 +02:00
commit e499bac928
62 changed files with 28893 additions and 0 deletions
+108
View File
@@ -0,0 +1,108 @@
Mini-Dokumentation: Analyzer Kiosk auf Raspberry Pi OS
1. Dienste deaktivieren
sudo systemctl disable --now lightdm.service
sudo systemctl disable --now getty@tty1.service
sudo systemctl reset-failed getty@tty1.service
2. systemd neu laden
sudo systemctl daemon-reload
3. Benutzer vorbereiten
sudo usermod -aG audio,video,input,render analyzer
4. Build-Abhängigkeiten installieren
sudo apt-get update
sudo apt-get install -y pkg-config libasound2-dev curl ca-certificates git build-essential
5. Projekt nach /home/analyzer/Phoenix kopieren
Erwartete Struktur:
/home/analyzer/Phoenix/
|- kiosk-start.sh
|- session.sh
|- www/
|- etc/systemd/system/
| |- analyzer-kiosk.service
| `- analyzer-web.service
`- target/release/phoenix
Hinweis:
- Das Binary target/release/phoenix wird bei Bedarf automatisch gebaut.
6. Skripte ausführbar machen
sudo chmod 755 /home/analyzer/Phoenix/session.sh
sudo chmod 755 /home/analyzer/Phoenix/kiosk-start.sh
7. systemd-Units installieren
sudo cp /home/analyzer/Phoenix/etc/systemd/system/analyzer-kiosk.service /etc/systemd/system/
sudo cp /home/analyzer/Phoenix/etc/systemd/system/analyzer-web.service /etc/systemd/system/
sudo systemctl daemon-reload
8. Dienste aktivieren
sudo systemctl enable analyzer-web.service
sudo systemctl enable analyzer-kiosk.service
9. Dienste starten
sudo systemctl restart analyzer-web.service
sudo systemctl restart analyzer-kiosk.service
10. Prüfen
sudo systemctl status analyzer-web.service --no-pager
sudo systemctl status analyzer-kiosk.service --no-pager
sudo systemctl cat analyzer-kiosk.service
sudo systemctl cat analyzer-web.service
tail -n 80 /home/analyzer/analyzer-kiosk.log
Erwartet:
- Webserver läuft auf Port 80
- Kiosk startet über kiosk-start.sh
- GUI lokal unter http://localhost/
- Phoenix unter http://<pi-ip>:8789
11. Erster Start / Update
- Wenn target/release/phoenix fehlt oder der Rust-Code neuer ist, baut kiosk-start.sh automatisch neu.
- Falls cargo/rustc fehlen oder das System-Rust zu alt ist, versucht kiosk-start.sh eine aktuelle Rust-Toolchain per rustup zu installieren.
- Zusätzlich installiert das Startskript Build-Abhängigkeiten wie pkg-config, libasound2-dev, curl, git und build-essential per apt.
- Ohne pkg-config und libasound2-dev schlägt der ALSA-Rust-Build mit `alsa-sys`/`alsa.pc not found` fehl.
- Mit sehr altem Debian-/Volumio-Rust (`rustc 1.63` o.ä.) schlägt der Build an neueren Crates fehl; deshalb nutzt Phoenix bei Bedarf rustup/stable.
- Währenddessen erscheint die Meldung auf tty1, erst danach startet X/Chromium.
12. Externer Zugriff
- GUI: http://<pi-ip>/
- Phoenix: http://<pi-ip>:8789
13. Referenz-Global-Config setzen
Analyzer:
```bash
mkdir -p /home/analyzer/.config/phoenix
cp /home/analyzer/Phoenix/reference-config/phoenix-global-config.analyzer.json /home/analyzer/.config/phoenix/global-config.json
```
Volumio:
```bash
mkdir -p /home/volumio/.config/phoenix
cp /home/volumio/Phoenix/reference-config/phoenix-global-config.volumio.json /home/volumio/.config/phoenix/global-config.json
```
Danach Phoenix bzw. den Kiosk-Dienst neu starten.
14. Analyzer vs. Volumio
Analyzer:
- Pfad: `/home/analyzer/Phoenix`
- Webserver: `:80`
- GUI lokal: `http://localhost/`
- Kiosk-Session: `session.sh`
Volumio:
- Pfad: `/home/volumio/Phoenix`
- Analyzer-Webserver: `:8088`
- Analyzer-GUI lokal: `http://localhost:8088/`
- Volumio intern: `http://localhost:3000/`
- Kiosk-Session: `session_volumio.sh`
- `toggle-ext`: `/home/volumio/Phoenix/toggle-ext`
Wichtig
- Diese Anleitung geht von Benutzer analyzer und Pfad /home/analyzer/Phoenix aus.
- Wenn Benutzer oder Home anders heißen, müssen die Pfade in analyzer-kiosk.service und analyzer-web.service angepasst werden.