Die Übergabe an plasmashell ist nachweislich korrekt — geprüft, dass
${SHELL_PAKET:+-p "$SHELL_PAKET"} zu drei getrennten Wörtern expandiert. Und
beide Shells liegen auf dem Gerät: org.kde.plasma.mobileshell und
org.kde.plasma.nano. Trotzdem meldet plasmashell die Voreinstellung
org.kde.plasma.desktop als 'invalid corona'.
Das ist kein Rate-, sondern ein Ladefehler: plasmashell bekam -p, konnte die
MobileShell nicht laden und fiel zurück. Verdacht ist --no-install-recommends —
bei KDE stecken die QML-Module traditionell in den Empfehlungen, nicht in den
harten Abhängigkeiten. Die Shell ist dann formal da, aber innen hohl. Für einen
Machbarkeitsbeweis sind ein paar hundert MB zu viel das kleinere Übel gegenüber
einem Fehlschlag aus dem falschen Grund.
Zusätzlich wertet das Skript den Rückfall jetzt selbst aus und unterscheidet die
beiden Fälle: meldet plasmashell die ÜBERGEBENE Shell als ungültig, liegt es an
ihr; meldet es die Voreinstellung, ist es ein Rückfall. Davon hängt ab, wo man
weitersucht — bisher sah beides gleich aus.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
In Debian liefert ausgerechnet 'plasma-mobile' keine Shell mit — nur QML-Module
und KWin-Skripte. Die Shell steckt in 'plasma-nano' und heißt org.kde.plasma.nano.
Der aus den KDE-Quellen bekannte Name org.kde.plasma.mobileshell existiert in
Debian nicht.
Auf dem Gerät kam weiterhin 'starting invalid corona org.kde.plasma.desktop' —
das ist plasmashells Standardwert, wenn kein -p übergeben wird. Die Suche fand
also nichts: das Verzeichnis /usr/share/plasma/shells ist leer oder fehlt.
Das Skript gibt sich damit nicht mehr zufrieden, sondern installiert plasma-nano
nach und sucht erneut. Bleibt es dabei, wird der Prüfbefehl genannt und klar
gesagt, dass Versuch A ohne Shell zum Scheitern verurteilt ist — dann zeigt erst
die XFCE-Gegenprobe, ob X-Server und GPU tragen.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Aus dem Gerätelauf, entscheidende Zeile:
starting invalid corona "org.kde.plasma.desktop"
Der Paketname der Mobile-Shell hat sich mit Plasma 6 geändert: aus
org.kde.plasma.phoneshell wurde org.kde.plasma.mobileshell. Der falsche Name
fällt nicht auf — plasmashell startet klaglos, meldet nur beiläufig 'invalid
corona' und zeichnet dann nichts. Von außen sieht das aus wie ein Fehlschlag von
KWin, ist aber keiner: der genestete Compositor lief.
Statt einen Namen fest einzutragen, wird jetzt nachgesehen, welche Shells unter
/usr/share/plasma/shells/ tatsächlich liegen, und in der Reihenfolge
mobileshell, phoneshell, nano, desktop gewählt. Die gefundene Liste wird
protokolliert — beim nächsten Umbenennen sieht man sofort, woran es liegt.
Dazu XCURSOR_THEME gesetzt: ohne das meldet KWin 'Failed to load cursor theme'
und zeichnet gar keinen Zeiger.
Die Beurteilungsfrage fragte nach der Bildschirmtastatur in einem Eingabefeld —
in dem Zustand, in dem sie gestellt wird, gibt es aber gar keine Felder. Sie ist
jetzt nach dem gestaffelt, was tatsächlich zu sehen ist, mit dem X-Cursor auf
schwarzem Grund als eigener Zwischenstand: X11 verbunden, aber nichts zeichnet
darauf. Genau dieser Fall lag hier vor und hatte vorher keine passende Antwort.
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>