Bootstrap auf dem OnePlus 7 Pro bestanden. Turnip ist nachweislich aktiv —
vulkaninfo meldet 'Turnip Adreno (TM) 640', also nicht nur installiert, sondern
tatsächlich der genutzte Treiber. Damit steht für S1 der schnellste GPU-Pfad zur
Verfügung, ohne virgl-Proxy.
Beide Stolpersteine sind mit dokumentiert, auch der unschöne: proot-distro
verlangt python3.13, installiert ist 3.14, und weder Nachinstallieren noch
Vollupgrade beheben das — die Paketquelle liefert einen unstimmigen Satz. Der
Verweis python3.13 auf 3.14 ist ein Behelf und steht als solcher im Protokoll,
samt Hinweis, dass er beim nächsten Update von proot-distro wieder aufbrechen kann.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Meine Anweisung 'sudo apt install scrcpy' war falsch: scrcpy ist in bookworm gar
nicht enthalten, und wo es existiert (ab trixie-backports) liegt es in contrib
statt main. 'Paket kann nicht gefunden werden' war also die richtige Antwort des
Systems, kein Konfigurationsfehler.
Das Projekt liefert ein eigenständiges Linux-Paket. Gegen das System geprüft:
keine fehlenden Bibliotheken, läuft ohne root. Installiert wird nach ~/.local,
Rückbau mit --deinstallieren.
Wichtiger Teil ist der erzeugte Starter: das Paket bringt ein eigenes adb mit,
hier 37.0.0 gegen 36.0.0 im System. Trifft ein abweichendes adb auf einen
laufenden Server, beendet es ihn — und kappt damit mitten in der Arbeit die
WLAN-Verbindung zum Telefon. Der Starter schiebt scrcpy deshalb dasselbe adb
unter, das auch die Provisioning-Skripte benutzen.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Auf der Bildschirmtastatur eines Telefons lässt sich nicht arbeiten. Zwei Wege,
die sich ergänzen: SSH für alles Textliche, scrcpy für alles, was man sehen muss —
Beweis S1 zeigt sich nur auf dem Bildschirm, die Kamera in S3 prüft man im Browser.
tools/dev-ssh.sh richtet Termux' sshd ein (Port 8022, weil eine gewöhnliche App
keine Ports unter 1024 belegen darf). Schlüssel vor Passwort: ein Passwort auf der
Bildschirmtastatur einzutippen ist mühsam, und wer es sich deshalb kurz wählt, hat
einen offenen Dienst im WLAN. provision.sh legt den öffentlichen Schlüssel des
Rechners deshalb gleich mit ab.
Über sshfs lassen sich die Dateien des Telefons im Editor des Rechners öffnen —
kein Hin- und Herkopieren mehr.
docs/entwicklung.md beschreibt beides samt Richtung der Änderungen: entwickelt
wird auf dem Rechner, das Telefon führt nur aus und holt per git pull. Genau
deshalb kommt per adb auch nur das Startskript aufs Gerät.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Vier Beweise, die das Projekt tragen, als eigenständig lauffähige Skripte:
S1 Plasma Mobile in proot über genestetes kwin_wayland im X11-Backend.
Fällt selbsttätig auf startplasmamobile und dann auf XFCE zurück, damit
ein Fehlschlag eindeutig Plasma zuzuordnen ist und nicht der Umgebung.
S2 Mikrofon über PulseAudio mit OpenSL-Quelle. Misst den Pegel statt nur die
Dateigröße — der typische Fehlschlag ist eine formal korrekte WAV-Datei
voller Stille.
S3 Virtuelle PipeWire-Kamera per GStreamer-pipewiresink, ohne Kernel-Modul.
Setzt die Firefox-Einstellung vorab, damit der Test nicht an einem
vergessenen Häkchen scheitert.
S4 Intent-Handoff mit lauffähiger Mini-Bridge: xdg-open-Handler für geo:,
tel: und sms:, Token-Authentifizierung, feste Liste erlaubter Schemata.
provision/provision.sh setzt die Hintergrundbeschränkungen per ADB und benennt,
was ADB nicht kann und von Hand erledigt werden muss.
Dokumentiert sind auch die sieben verworfenen Wege — Waydroid, AVF, QEMU, SIP,
APK-Daten-Redirect, Fenster-Durchreichung und der Android-Server — mit Belegen,
damit sie nicht erneut durchdacht werden müssen.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>