Abhängigkeitsanalyse
1. Gambas3 (IDE + Runtime + Komponenten)
Das Projekt ist eine Gambas3-GUI-Anwendung. Folgende Komponenten werden benötigt (aus .project):
Komponente	Paket (Arch Linux)
Gambas3-IDE	gambas3-ide
Gambas3-Runtime	gambas3-runtime
gb.image	gambas3-gb-image
gb.gui	gambas3-runtime (enthalten)
gb.form	gambas3-gb-form
gb.form.dialog	gambas3-gb-form-dialog
gb.settings	gambas3-gb-settings
2. C-Compiler (für ulanziread.c)
ulanziread.c benötigt gcc und libc (Header stdint.h, fcntl.h, etc. – in glibc enthalten).
- Arch: gcc (im Base-Devel enthalten)
- Debian/Ubuntu: build-essential (enthält gcc + libc-dev)
Derzeit liegt bereits ein vorkompiliertes ulanziread-Binary im Projekt. Der C-Compiler wird nur zum Neukompilieren gebraucht.
3. Externes Tool: ulanzi-niri
Das Projekt startet ulanzi-niri run als Daemon. Dieses Tool muss separat installiert sein:
- GitHub: https://github.com/lan-taverne/ulanzi-niri
- Ein vorkompiliertes Binary liegt unter ~/.local/bin/ulanzi-niri oder muss selbst gebaut werden (Go-Projekt).
4. Systemberechtigungen
Das Gerät /dev/hidraw* muss lesbar sein – entweder als root oder per udev-Regel, die den Benutzer in die Gruppe input aufnimmt:
sudo usermod -aG input $USER
(Neuanmeldung erforderlich)
Installationsanleitung (Arch Linux / CachyOS)
Schritt 1: Gambas3 installieren
sudo pacman -S gambas3-ide gambas3-gb-form gambas3-gb-form-dialog gambas3-gb-image gambas3-gb-settings
Für Debian/Ubuntu:
sudo apt install gambas3 gambas3-gb-form gambas3-gb-form-dialog gambas3-gb-image gambas3-gb-settings
Schritt 2: (Optional) C-Compiler – nur bei Neukompilierung von ulanziread
sudo pacman -S base-devel
oder (Debian/Ubuntu):
sudo apt install build-essential
Falls das Binary nicht passt, neu kompilieren:
gcc -O2 -o ulanziread ulanziread.c
Schritt 3: ulanzi-niri installieren
# Go installieren (falls nicht vorhanden)
sudo pacman -S go

# Tool klonen und bauen
git clone https://github.com/lan-taverne/ulanzi-niri.git
cd ulanzi-niri
go build -o ~/.local/bin/ulanzi-niri .
Oder ein vorkompiliertes Binary in ~/.local/bin/ ablegen.
Schritt 4: Projekt öffnen / bauen
# In der IDE öffnen
gambas3 U-Studio.gambas

# Oder direkt per Kommandozeile bauen (ohne IDE):
# gbc3 wurde mit gambas3-dev-tools installiert
In der Gambas3-IDE:
1. U-Studio.gambas öffnen (File → Open Project → Datei auswählen)
2. F5 drücken (Run) oder Projekt → Kompilieren → Ausführen
Schritt 5: Benutzerberechtigungen
sudo usermod -aG input $USER
Danach abmelden und neu anmelden (oder neustarten).
Kurzfassung (alles auf einmal)
# 1. Gambas3 + Build-Tools
sudo pacman -S gambas3-ide gambas3-gb-form gambas3-gb-form-dialog gambas3-gb-image gambas3-gb-settings go base-devel

# 2. ulanzi-niri bauen
git clone https://github.com/lan-taverne/ulanzi-niri.git /tmp/ulanzi-niri
cd /tmp/ulanzi-niri && go build -o ~/.local/bin/ulanzi-niri .

# 3. Benutzer in input-Gruppe
sudo usermod -aG input $USER
echo "✅ Bitte aus- und wieder einloggen!"

# 4. Projekt öffnen
gambas3 ~/Pfad/zu/U-Studio/U-Studio.gambas
Wichtiger Hinweis: Beim ersten Start sucht deckstart.sh automatisch nach dem HID-Gerät (/dev/hidraw* mit ID_MODEL=ulanzi). Das Ulanzi D200X muss angeschlossen sein, damit die Live-Tastenerkennung funktioniert.
# Todos
[✓] Abhängigkeiten analysieren (Gambas3, C-Compiler, externe Tools)
[✓] Installationsanleitung erstellen
+ Thought: 253ms
Die Analyse ist abgeschlossen. Die Anleitung liegt als Klartext oben vor.
Kernerkenntnisse:
- Gambas3 ist die einzige zwingende Abhängigkeit (mit 5 Sub-Komponenten)
- ulanziread liegt bereits vorkompiliert bei; gcc wird nur optional benötigt
- ulanzi-niri muss separat von GitHub installiert werden
- input-Gruppe für den Zugriff auf /dev/hidraw* ist erforderlich
- Zielsystem ist Arch Linux (CachyOS), aber die Paketnamen für Debian/Ubuntu sind ebenfalls in der Anleitung vermerkt
