KDE + Snap-Firefox: „Access to the file was denied“ bei lokalen HTML-Dateien
Unter KDE Plasma kann es vorkommen, dass lokale .html
-Dateien nicht mehr im Snap-Firefox geöffnet werden. Stattdessen erscheint die Fehlermeldung:
Während Webseiten normal im Browser aufgehen, schlagen lokale HTML-Dateien mit diesem Fehler fehl.
Ursache: KDE + kioexec + Snap-Sandbox
Das Problem liegt nicht an Firefox selbst, sondern an der Kombination aus KDE, kioexec und der Snap-Sandbox:
- KDE startet lokale Dateien standardmäßig über
kioexec
. kioexec
kopiert die Datei in einen temporären Pfad wie~/.cache/kioexec/krun/...
.- Snap-Firefox läuft in einer Sandbox und hat keinen Zugriff auf diesen Cache-Ordner.
- Ergebnis: „Access to the file was denied“.
Zusätzlich können Programme wie Wine (winebrowser.exe) die Browser-Zuordnung überschreiben und für zusätzliche Verwirrung sorgen, wenn plötzlich statt Firefox ein falscher Handler eingetragen wird.
Debugging-Schritte
Um die Fehlerquelle einzugrenzen, haben wir folgende Kette genutzt:
- Prüfen, welcher Default-Browser hinterlegt ist
“`bashxdg-settings get default-web-browser
– ergab geany.desktop
statt Firefox. lol
xdg-mime query default x-scheme-handler/http
xdg-mime query default text/html
– HTTP/HTTPS stand auf Firefox, aber text/html
war falsch.
ls /var/lib/snapd/desktop/applications/ | grep firefox
cat /var/lib/snapd/desktop/applications/firefox_firefox.desktop | grep MimeType
bestätigt: firefox_firefox.desktop
existiert und enthält text/html
.
xdg-open index.html
führte direkt zur Fehlermeldung „Access to the file was denied“ durch kioexec
.
Loesung
Der Fix besteht darin, KDE anzuweisen, Firefox direkt mit der Datei aufzurufen, ohne Umweg über kioexec
. Das geht mit:
kwriteconfig5 --file kdeglobals --group General --key BrowserApplication "firefox %u"
kquitapp5 plasmashell && kstart5 plasmashell