Für eine einzelne Datei ist ein Portalzugriff meist die engere Wahl; wiederkehrenden Zugriff richtest du als möglichst begrenzte, bei Bedarf schreibgeschützte Dateisystemfreigabe ein. Flatpak führt Desktop-Apps in einer Sandbox aus, die ihren Zugriff auf das Host-System einschränkt. Der Unterschied: Ein Portal kann den Zugriff an eine ausgewählte Datei binden, eine Dateisystemfreigabe gilt dauerhaft für einen Pfad.
Welche Zugriffsrechte hat eine Flatpak-App?
Standardmäßig kann eine App auf ihre Laufzeitumgebung, ihre eigenen Programmdateien, ihr eigenes Verzeichnis unter ~/.var/app/$FLATPAK_ID und ihr eigenes Laufzeitverzeichnis zugreifen. Schreibbar sind nur die beiden app-eigenen Verzeichnisse. Netzwerk- und Gerätezugriff sind standardmäßig gesperrt; der Zugriff auf Prozesse und D-Bus ist eingeschränkt. Die Flatpak-Dokumentation erklärt die Sandbox-Grenzen und Berechtigungen.
Wenn ein Programm eine Datei öffnen soll, kann ein Portal den Zugriff auf die Datei vermitteln, die du im Dateiauswahldialog auswählst. Dafür muss die verwendete Anwendung beziehungsweise ihr Werkzeug den Portalweg unterstützen. Eine dauerhafte Freigabe gibst du dagegen für einen Dateisystempfad frei. Wähle dafür möglichst einen einzelnen Ordner statt des gesamten persönlichen Verzeichnisses und, wenn die App nichts ändern muss, nur Lesezugriff. Die Endung :ro kennzeichnet einen solchen schreibgeschützten Zugriff.
Gib nur den Pfad frei, den die App braucht. Wenn sie Dateien nicht ändern muss, reichen Leserechte.
Auch eine Freigabe für home öffnet nicht automatisch alle Flatpak-Daten: ~/.var/app ist davon ausgenommen. Auf ~/.local/share/flatpak muss eine App ausdrücklich Zugriff erhalten. Flatpak führt diese Pfadregeln in der Dokumentation zu Dateisystemberechtigungen auf.
Welches Werkzeug passt zu deiner Aufgabe?
Flatseal verwaltet dauerhafte Sandbox-Freigaben, etwa für bestimmte Dateisystempfade. In KDE Plasma wird Flatpak KCM als Oberfläche zum Verwalten gespeicherter Portalberechtigungen beschrieben. Das sind unterschiedliche Aufgaben: Eine Portalberechtigung betrifft einen vermittelten Zugriff; eine Dateisystemfreigabe ändert den dauerhaft verfügbaren Pfad.
| Deine Aufgabe | Passender Zugriff oder Ansatz | Werkzeug oder Oberfläche | Was du damit verwaltest |
| Eine einzelne, selbst ausgewählte Datei öffnen | Zugriff über ein Portal | Dateiauswahldialog der App | Die ausgewählte Datei statt eines pauschal freigegebenen Ordners |
| Wiederholt auf einen Ordner zugreifen | Möglichst eng begrenzte, wenn passend schreibgeschützte Dateisystemfreigabe | Flatseal | Einen dauerhaft freigegebenen Pfad |
| Gespeicherte Portalberechtigungen in KDE Plasma verwalten | Portalberechtigungen verwalten | Flatpak KCM | Vom Portal gespeicherte Freigaben |
| App-Daten nach einer Deinstallation aufräumen | Nicht mehr benötigte App-Daten prüfen und entfernen | Warehouse | App-Daten, nicht automatisch die getrennt abgelegten Flatpak-Installationen |
Wo Flatpak App-Daten und Installationen ablegt
App-spezifische Nutzerdaten liegen unter ~/.var/app/$FLATPAK_ID. Flatpak-Installationen für den eigenen Benutzer befinden sich unter $HOME/.local/share/flatpak/; die standardmäßige systemweite Installation liegt unter /var/lib/flatpak/. Dort sind also andere Daten abgelegt als in den app-spezifischen Verzeichnissen. Die Flatpak-Befehlsreferenz beschreibt die Installationsorte.
Wenn nach einer Deinstallation Speicherplatz belegt bleibt, ist daher das app-spezifische Datenverzeichnis ein anderes Ziel als eine Installation mit Anwendungen und Laufzeitumgebungen. Warehouse verwaltet Apps und App-Daten und kann laut Flathubs Warehouse-Eintrag auch ungenutzte Daten finden und bereinigen; der Eintrag führt außerdem Snapshots auf.