Flatpak, un format de paquets universel
Le logiciel flatpak est un utilitaire (intégré aux logithèques graphiques, ou bien utilisable en ligne de commande) pour la gestion de paquets, le déploiement de logiciels, et l'isolement d'applications (sandboxing).
Il fournit un environnement isolé du reste du système (sandbox), où l'utilisateur peut faire fonctionner des applications de manière sûre :
- le risque pour la stabilité est moindre (les paquets existants ne sont pas modifiés par l'installation des applis) ;
- il n'y a pas de conflits de dépendances (en contrepartie, ça prend plus de place que les paquets des dépôts) ;
- le risque pour la sécurité est moindre : les applications au format Flatpak demandent la permission de l'utilisateur pour accéder au matériel (webcam, clefs USB, …) et aux fichiers de l'utilisateur ("bac à sable").
Inconvénients : le démarrage est un peu plus lent, et la taille sur disque est plus importante.
Le projet est mené par freedesktop.org depuis 2014, jadis sous le nom de xdg-app
, le but étant de faciliter la distribution d'applications par des développeurs tiers sur toutes les distributions.
Depuis 2017, beaucoup d'applications populaires ont été rendues disponibles au format Flatpak : Blender, Skype, Spotify, LibreOffice, Pitivi, certaines applications KDE, beaucoup d'applications GNOME, beaucoup d'applications elementaryOS, etc.
Des applications récentes en cours de développement actif sont parfois même disponibles presque uniquement sous forme de Flatpak !
Installation
Installation de l'utilitaire flatpak
Pour utiliser flatpak il faut installer le paquet flatpak.
Intégration aux logithèques
- Le paquet gnome-software-plugin-flatpak permet de gérer les logiciels Flatpak depuis la logithèque GNOME.
- Le paquet plasma-discover-flatpak-backend permet de gérer les logiciels Flatpak depuis la logithèque KDE.
Ajout du dépôt Flathub
Les logiciels Flatpak ne viennent pas des dépôts de Canonical (qui soutient plutôt snap), mais d'autres dépôts. Il faut référencer les dépôts qui nous intéressent avant de pouvoir installer quoi que ce soit sur Ubuntu.
Flathub est le principal dépôt de logiciels au format Flatpak : il est maintenu par des tiers de confiance et intègre l'énorme majorité des applications disponibles en Flatpak. On peut explorer celles-ci en ligne sur ce site Internet, mais pour l'intégrer à l'utilitaire Flatpak et lister et gérer ses applications avec la logithèque ou depuis le terminal, il faut ajouter Flathub comme source de logiciels avec cette commande :
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
GNOME Logiciels intégrera désormais les programmes disponibles sur ce dépôt (mais la logithèque Ubuntu ne les affichera pas).
Pour installer d'autres dépôts, voir le tutoriel dédié à l'installation des dépôts flatpak.
Utilisation
La commande flatpak
a de nombreuses utilisations possibles (pour le développement et la construction de paquets, pour la gestion avancée de dépôts et des environnements d'exécution, etc.) mais en tant qu'utilisateur, quelques usages en particulier sont à souligner.
man flatpak
ne vous donne pas d'informations directement utiles, mais une liste de sous-pages (flatpak-install, flatpak-update, flatpak-info, etc.) indépendantes.
Faites alors (par exemple) :
man flatpak-run
pour plus d'informations sur le lancement des applications.
Installation de logiciels
Voir le tutoriel dédié.
1. Soit directement à partir du site Flathub (ce site est également un magasin d'application).
2. Soit à partir de Gnome Software (si le plugin logithèque a bien été installé). Les logiciels flatpak y sont mélangés avec les logiciels au format .deb. On peut les reconnaître sur la page du logiciel : la zone source indique le dépôt : dl.flathub.org pour flathub, par exemple.
3. Soit en ligne de commande :
flatpak install identifiant.du.logiciel
par exemple :
flatpak install warpinator
Le premier logiciel que vous installerez sera peut-être long à installer car le système téléchargera un environnement d'exécution, qui pourra être réutilisé par les logiciels en format Flatpak installés par la suite.
Si plusieurs dépôts ont été ajoutés au système (ou qu'on y trouve plusieurs versions - beta et stable), les différents choix sont présentés, et vous choisissez celui qui vous convient. Par exemple :
flatpak install maps
Looking for matches… Remotes found with refs similar to ‘maps’: 1) ‘flathub’ (system) 2) ‘flathub-beta’ (user) Which do you want to use (0 to abort)? [0-2]: 1 Similar refs found for ‘maps’ in remote ‘flathub’ (system): 1) app/io.github.rinigus.PureMaps/x86_64/stable 2) app/org.gnome.Maps/x86_64/stable Which do you want to use (0 to abort)? [0-2]: 2 org.gnome.Maps permissions: ipc network fallback-x11 wayland x11 dri dbus access [1] system dbus access [2] [1] org.freedesktop.secrets, org.gnome.OnlineAccounts, org.gnome.evolution.dataserver.AddressBook10, org.gnome.evolution.dataserver.Calendar8, org.gnome.evolution.dataserver.Sources5, org.gnome.evolution.dataserver.Subprocess.Backend.* [2] org.freedesktop.GeoClue2, org.freedesktop.NetworkManager ID Branch Op Remote Download 1. org.gnome.Maps.Locale stable i flathub < 11,7 MB (partial) 2. org.gnome.Maps stable i flathub < 5,7 MB Proceed with these changes to the system installation? [Y/n]: y
Le cas présenté est intentionnellement plus bavard que la moyenne.
Avec les versions plus anciennes de flatpak, l'installation devait préciser le dépôt du logiciel :
flatpak install dépôt nom-du-logiciel
Mais l'actuel version de flatpak se débrouille pour trouver par le seul nom du logiciel, quitte à vous proposer un choix si plusieurs options sont trouvées.
Connaître les logiciels installés
Au terminal, tapez :
flatpak list
Lancement de logiciels
Les logiciels apparaissent avec les autres dans vos menus, normalement. Toutefois la mise à jour de la liste des logiciels peut nécessiter un redémarrage du système. Le lancement via flatpak run permet de contourner cette nécessité de redémarrage lors des installations fraîches vous pourrez utiliser votre application sans attendre qu'elle s'inscrive dans la liste des applications lancées en mode graphique.
Vous pouvez aussi les lancer via le terminal avec la commande suivante :
flatpak run identifiant.du.logiciel
Mise à jour des logiciels
Les logiciels en format Flatpak sont mis à jour de la même manière que les autres par la logithèque (onglet "Mises à jour").
Pour mettre à jour manuellement les applications en ligne de commande :
flatpak uninstall --unused
flatpak update
Désinstallation de logiciels
Les logiciels en format Flatpak peuvent être désinstallés de la même manière que les autres par la logithèque (onglet "Installées").
Une application au format flatpak peut être aussi retirée avec la commande
flatpak uninstall identifiant.du.logiciel
Pour supprimer les dépendances obsolètes c'est l'option –unused à coupler avec uninstall
flatpak uninstall --unused
Exemple :
ID Branch Op 1. [-] org.freedesktop.LinuxAudio.LadspaPlugins.swh 19.08 r 2. [-] org.freedesktop.Platform.GL.default 19.08 r 3. [-] org.freedesktop.Platform.GL.nvidia-440-100 1.4 r 4. [-] org.freedesktop.Platform.GL.nvidia-450-66 1.4 r 5. [-] org.freedesktop.Platform.GL.nvidia-450-80-02 1.4 r 6. [-] org.freedesktop.Platform.GL.nvidia-455-38 1.4 r 7. [-] org.freedesktop.Platform.GL.nvidia-455-45-01 1.4 r 8. [-] org.freedesktop.Platform.VAAPI.Intel 19.08 r 9. [-] org.kde.Platform 5.14 r 10. [-] org.kde.Platform.Locale 5.14 r Uninstall complete.
Fichiers de configuration
Les fichiers de configuration des logiciels installés ne sont pas dans les répertoires "classiques" ~/.config ou ~/.local, ils sont dans ~/.var
Problèmes rencontrés
Lanceurs et icônes
Les icônes et fichiers .desktop
des applications Flatpak ne se trouvent pas dans /usr/share/
comme d'habitude, mais dans /var/lib/flatpak/exports/share/
.
Il est alors probable que vos thèmes d'icônes et certains utilitaires de paramétrage des menus ne soient pas en mesure de gérer ce fonctionnement.
Thème
Les versions de Flatpak antérieures à mi-2017 ne prennent pas en compte le thème de l'utilisateur, et n'autorisent donc que le thème Adwaita (ou Adwaita-dark).
La solution à ce problème n'existe que dans les versions de Flatpak postérieures à mi-20171).
Pour les versions plus récentes, référez-vous au paragraphe dédié du tutoriel d'installation.
L'application se ferme peu après avoir été ouverte
- Installer flatseal.
- Sélectionner l'application incrimnée.
- Activer l'option "peut fonctionner en arrière-plan".
Désinstallation
Pour supprimer la prise en charge des applications au format flatpak, il suffit de supprimer le paquet flatpak
.
Si vous l'aviez ajouté (version 16.04 seulement), n'oubliez pas de retirer le PPA après désinstallation.