Flatpak exécute les applications dans un bac à sable, un environnement qui limite leur accès au système. Pour ouvrir un fichier, un portail peut transmettre à l’application celui que vous avez choisi ; une autorisation persistante du système de fichiers, elle, donne accès à un chemin tant qu’elle reste active. Les données de l’application et les fichiers d’installation de Flatpak se trouvent aussi dans des emplacements différents.

La portée compte : si l’application a besoin d’un seul fichier, le portail évite de lui accorder d’emblée un accès durable à tout un dossier.

Les permissions Flatpak n’ont pas toutes la même portée

Par défaut, une application Flatpak ne peut accéder sur l’hôte qu’à son environnement d’exécution, à ses propres fichiers, à son dossier de données (~/.var/app/$FLATPAK_ID) et à son propre dossier d’environnement d’exécution. Seuls ces deux derniers emplacements sont accessibles en écriture. L’accès au réseau et aux périphériques est également refusé par défaut ; l’accès aux processus et à D-Bus est limité. La documentation Flatpak sur les permissions décrit ces limites et le rôle des portails.

Un portail intervient lorsqu’une personne choisit une ressource, par exemple un fichier dans une fenêtre de sélection. L’application reçoit alors l’accès à cette ressource choisie. Une autorisation persistante du système de fichiers s’applique plutôt à un chemin défini. Si l’application doit retrouver un dossier sans vous redemander de le sélectionner, accordez l’accès au chemin nécessaire et choisissez le mode lecture seule quand cela suffit. Dans Flatpak, le suffixe :ro indique un accès en lecture seule.

L’autorisation home ne donne pas accès à ~/.var/app, qui contient les données propres aux applications. Le chemin ~/.local/share/flatpak doit, lui, être demandé explicitement. Cela évite de confondre l’accès au dossier personnel avec l’accès à ces répertoires particuliers.

Pour un fichier ponctuel, privilégiez le portail ; pour un accès durable, limitez l’autorisation au chemin nécessaire et à la lecture seule si possible.

Choisir l’interface selon la tâche

Chris Titus Tech montre en anglais les réglages de permissions de Flatseal, l’ajout de chemins et la réinitialisation des modifications.

Flatseal permet de modifier les dérogations du bac à sable, notamment les autorisations de fichiers. Le guide d’Ouest-France présente Flatpak KCM comme un moyen de gérer les autorisations de portail mémorisées dans KDE Plasma. Ces interfaces répondent à des besoins différents : le portail accorde un accès à une ressource choisie, tandis qu’une dérogation modifie les permissions persistantes de l’application.

TâcheApprocheOutil ou interfacePortée concernée
Ouvrir un fichier choisi dans une fenêtre de sélectionAccès médié par un portailPortail de l’applicationLa ressource sélectionnée
Donner un accès durable à un dossierDérogation ciblée, en lecture seule si cela suffitFlatsealLe chemin autorisé
Gérer des autorisations de portail mémorisées dans KDE PlasmaGérer les autorisations dans les paramètres du bureauFlatpak KCMLes accès de portail mémorisés
Repérer ou nettoyer les données d’une application désinstalléeGérer les données propres aux applicationsWarehouseLes données d’application

Les données d’application ne sont pas l’installation

Le dossier ~/.var/app/$FLATPAK_ID contient les données propres à une application. Les déploiements Flatpak installés pour un utilisateur se trouvent dans $HOME/.local/share/flatpak/ ; l’emplacement par défaut d’une installation pour tout le système est /var/lib/flatpak. La référence des commandes Flatpak distingue ces emplacements. Si vous cherchez les données laissées par une application, c’est le dossier propre à cette application qui est pertinent ; les installations et environnements d’exécution relèvent des deux autres emplacements.

Warehouse sert à gérer les applications et leurs données. Sa fiche Flathub décrit aussi le nettoyage de données inutilisées laissées après la désinstallation et la gestion de snapshots. Elle affiche la version 2.2.0 ainsi que les architectures aarch64 et x86_64. La fiche Warehouse sur Flathub associe ces détails à l’application io.github.flattool.Warehouse.