{{tag>Xenial Bionic tutoriel application format paquet}}
{{ https://i.imgur.com/epoTNSU.png?100}}
====== Tutoriel : installer une application avec Flatpak ======
Le système [[:Flatpak]] permet le déploiement de logiciels, la gestion de paquets et la virtualisation d'applications sur ordinateurs personnels. Il fournit un environnement isolé du reste du système (//sandbox//), où l'utilisateur peut faire fonctionner des applications de manière mieux sécurisée.
Les paquets logiciels flatpak fonctionnant sur toutes les distributions linux, on trouve sur le principal dépôt (Flathub) des logiciels en nombre, qui ne sont même parfois disponibles que dans ce format.
Ce tutoriel vous expliquera comment utiliser [[:Flatpak]] pour installer des logiciels.
{{ https://i.imgur.com/Ezy1wRU.png?600 |Les logiciels Eolie, Lollypop, GNOME Recipes et Peek sont distribués au format flatpak}}
===== Pré-requis =====
La gestion des paquets flatpak n'est (par défaut) pas installée sur un système Ubuntu, mais est simple à ajouter.
1. Il faut [[:tutoriel:comment_installer_un_paquet|Installer]] le gestionnaire **[[:flatpak]]**, par exemple en cliquant sur **[[apt>flatpak]]** (ou via un **sudo apt install flatpak**). Ce paquet est le paquet de base, qui permet aux logiciels à ce format de s’exécuter.
2. Si vous désirez voir les logiciels en format //flatpak// dans la [[:gnome-software|logithèque]], vous pouvez aussi installer une extension :
* Ubuntu ou autre variante : **[[apt>gnome-software-plugin-flatpak]]**
* Kubuntu : **[[apt>plasma-discover-flatpak-backend]]**
3. Enfin, ajoutez à votre système au moins un dépôt de logiciel flatpak : le principal est le dépôt flathub. Pour l'ajouter, tapez dans un terminal :
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
===== Installation de logiciels =====
Il existe 3 façons classiques d'installer un logiciel flatpak.
1. __Par votre logithèque__ : si vous avez installé l’extension pour votre logithèque (cf. "pré-requis") vous pouvez aller dans celle-ci, et chercher votre logiciel désiré. S'il existe dans différents formats (par exemple flatpak et .deb), vous le verrez plusieurs fois. Vous reconnaîtrez les flatpak car le dépôt est indiqué sur la page du logiciel en bas à droite dans la zone **source** : **dl.flathub.org** pour le dépôt flathub, par exemple).
2. __Par la logithèque Flathub__ : Flathub dispose de sa propre logithèque en ligne ([[https://flathub.org/apps|ici]]), il vous suffit de chercher l'application puis de cliquer dessus pour l'installer.\\
{{ :tutoriel:flatpak-flathub.png?500 |La logithèque en ligne Flathub.}}
3. __Par la ligne de commande__ :
flatpak install flathub nom-du-logiciel
par exemple :
flatpak install flathub org.gnome.Lollypop
On peut mettre plusieurs noms d'applications dans la même commande :
flatpak install flathub com.uploadedlobster.peek com.valvesoftware.Steam
Quand on ne connaît pas clairement l'identifiant complet du logiciel, on tape juste la commande d'installation avec son nom simple, et la ligne de commande vous propose la liste de ce qui peut correspondre dans le dépôt. Il vous reste à choisir dans la liste éventuelle : un même logiciel peut-être présenté en plusieurs versions, par exemple une version de test et une version stable. Par exemple (ici il y a un seul choix) :
(chris - 5.11.0-18-generic) ~ : flatpak install flathub lollypop
Looking for matches…
Found ref ‘app/org.gnome.Lollypop/x86_64/stable’ in remote ‘flathub’ (user).
Use this ref? [Y/n]:
Quelques exemple de noms sur flathub :
^ Nom dans le dépôt ^ Application ^
| com.spotify.Client | Client de bureau [[:Spotify]] |
| org.gnome.Eolie | Navigateur web [[:Eolie]] |
| org.libretro.RetroArch | [[:emulation|Émulateurs]] RetroArch (retrogaming) |
| io.github.GnomeMpv | GNOME MPV (interface GTK+ 3 pour le lecteur multimédia [[:MPV]]) |
| com.uploadedlobster.peek | Peek (enregistreur de GIF) |
| org.gnome.Lollypop | Lecteur musical [[:Lollypop]] |
| net.sourceforge.chromium-bsu | Le jeu vidéo libre Chromium-BSU |
| net.sourceforge.TuxFootball | Le jeu vidéo 2D TuxFootball |
| org.gtk.Gtk3theme.Arc-Dark | Le [[:tutoriel/personnaliser_gnome|thème GTK+ 3]] "Arc-Dark" |
| com.valvesoftware.Steam | Plateforme de jeux vidéo [[:Steam]] |
==== Les runtimes ====
Pour s'exécuter, les applications qu'on installera auront besoin d'un //runtime// (**routine d'environnement d'exécution**(([[wpfr>Environnement d'exécution]]))). Certains logiciels que vous installez en ont besoin. Ne soyez pas donc surpris si lors de l'installation d'un nouveau logiciel, une confirmation vous est demandée pour l'installation d'un //environnement d'exécution//. Celle-ci reste automatique, donc pas d'implication de votre part, sinon une approbation.
L'installation d'une application est assez courte, mais celle d'un //environnement d'exécution// peut prendre plus de temps. Heureusement, des applications distinctes utilisent souvent le même //environnement d'exécution//.
Ainsi, si vous voulez installer quelque chose depuis le dépôt ''kdeapps'', il faudra **peut-être** au préalable ajouter le dépôt des environnements d'exécution exigés par les applications KDE :
flatpak remote-add kderuntime --if-not-exists http://distribute.kde.org/kderuntime.flatpakrepo
== Où trouver les routines d'environnement pour les applications hors dépôts (téléchargement direct) ==
Si vous avez suivi les procédures d'intégrations décrites précédemment, il vous suffit de faire une recherche sur ''freedesktop'' et ''runtime'' dans votre logithèque.
La liste des runtimes disponibles se trouve dans la documentation du Flatpak, au chapitre « [[https://docs.flatpak.org/fr/latest/available-runtimes.html|Runtimes disponibles]] » —{routines d’environnement disponibles}
===== Utiliser vos logiciels =====
Pour lancer graphiquement les applications installées, passez par votre menu habituel des applications, comme indiqué **[[tutoriel:comment_lancer_application|ici]]**.
Via le [[:terminal]], la [[:commande_shell|commande]] est :
flatpak run nom.du.logiciel
===== Mise à jour =====
N'oubliez pas de mettre régulièrement à jour vos logiciels :
flatpak update
===== Désinstaller les logiciels =====
La commande est :
flatpak uninstall nom.du.logiciel
Si vous avez installé avec l'option ''%%--user%%'', il faudra remettre cette option à la désinstallation.
Si des environnements d'exécutions ou des données restent installées, utilisez la commande
flatpak uninstall --unused
Si plus aucun logiciel installé n'en provient, vous pouvez retirer le dépôt avec la commande
flatpak remote-delete nom-du-depot
===== Niveaux de privilèges =====
La plupart des commandes liées à //flatpak// possèdent une option d’installation ''%%--user%%'', par opposition à l'option par défaut ''%%--system%%'' (qui est active si on ne précise rien).
Il s'agit d'une option de sécurité qui limite les droits d'accès au système du logiciel que vous venez d'installer. Par exemple :
flatpak install --user flathub org.gnome.FeedReader
installe [[:feedreader|FeedReader]] **uniquement pour l'utilisateur courant**. Les fichiers relatifs à cette application sont alors stockés dans ''~/.local/share/flatpak/app/org.gnome.FeedReader'' au lieu de ''/var/lib/flatpak/app/org.gnome.FeedReader'' comme ça aurait été le cas normalement. Les autres comptes utilisateurs installés sur l’ordinateur (s'il y en a) __n'auront alors pas accès à l'application__.
===== Options intéressantes =====
==== Ajouter un autre dépôt flatpak====
Le concept de "dépôt" flatpak est parfois désigné par le terme "remote" (ce qui signifie "à distance").
Si Flathub est le dépôt dominant, il existe d'autres dépôts Flatpak, le système ayant été pensé pour être décentralisé. La syntaxe générale de la commande est
flatpak remote-add --if-not-exists nom_du_dépôt https://adresse-du-dépôt.flatpakrepo
Le dépôt des applications [[:KDE]] est ainsi :
flatpak remote-add kdeapps --if-not-exists https://distribute.kde.org/kdeapps.flatpakrepo
==== Installation depuis un fichier ====
Certains distributeurs de logiciels vont proposeront plutôt un fichier ''.flatpakref'' qui s'installe ainsi :
flatpak install --from adresse/du/fichier.flatpakref
L'adresse du fichier peut être le chemin du fichier parmi les documents sur votre disque, ou bien une adresse internet (URL).
Cette technique vous demandera, en cours d'installation, d'ajouter les dépôts nécessaires.
==== Installation d'un dépôt pour un seul utilisateur ====
Pour installer un logiciel pour un utilisateur spécifique, on doit ajouter un dépôt pour cet utilisateur avec l'option ''%%--%%user'' (même quand le dépôt a déjà été installé au niveau du système) :
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Vous pouvez installer tous les remotes et tous les logiciels uniquement pour l'utilisateur courant, ainsi tout sera dans votre dossier personnel. Étant donné le volume potentiel de certains environnements d'exécution, il peut être pratique d'optimiser un peu où les installer.
=== Supprimer un dépôt du système ===
flatpak remote-delete name
par exemple pour flathub :
flatpak remote-delete flathub
===== Problèmes connus =====
==== Thèmes ====
Si votre logiciel n'a pas le bon thème, il est alors conseillé d'installer le thème depuis //flathub//. Exemples :
flatpak install flathub org.gtk.Gtk3theme.Ambiance
flatpak install flathub org.gtk.Gtk3theme.Communitheme
Pour lister les thèmes il suffit de taper la commande :
flatpak remote-ls flathub | grep org.gtk.Gtk3theme
[[https://www.linuxuprising.com/2018/05/how-to-get-flatpak-apps-to-use-correct.html|Source]]
==== Emplacements inaccessibles ====
Si un emplacement n'est pas accessible à partir de l'application, n'hésitez pas à le rapporter comme un bug auprès du développeur de l'application (lien dans le "À propos" de l'application).
==== Traduction ====
Les traductions sont normalement installées avec l'application. Si ce n'est pas le cas, installez le paquet ayant le nom de l'application mais avec la terminaison ".Locale" :
flatpak install flathub org.gnome.Games.Locale
===== Voir aussi =====
* [[https://flatpak.org/|Site officiel flatpak.org]]
* [[https://flathub.org/|L'accueil de flathub.org]]
* [[:Paquet]]
* La page dédiée à [[:Flatpak]]
* **(en)** [[https://www.omgubuntu.co.uk/2017/07/7-flatpak-apps-can-install-right-now-flathub|article d'OMG Ubuntu à propos de l'installation de l'installation par flatpak]]
* La "concurrence" : [[:apt ]], [[:snap]], [[:appimage]]
* [[https://flatpak.org/apps.html|Applications disponibles sur flatpak.org]]
* **(en)** [[https://community.kde.org/Guidelines_and_HOWTOs/Flatpak|Tutoriel pour installer les applications KDE]]
----
//Contributeurs : [[:utilisateurs/roschan]]
, ...//