Appimage

Le format de paquets Appimage (voir sur Wikipédia) permet de distribuer des logiciels de manière portable sur n’importe quelle distribution Linux, y compris Ubuntu.

Le but est de pouvoir déployer des applications par une procédure simple, assurant une grande compatibilité et évitant d’altérer le système hôte.

Avantages

La grande force du format Appimage réside dans le fait qu’il n’exige aucun pré-requis – sauf bien sûr une connexion à Internet pour récupérer les fichiers Appimage :

  • Installation par un compte utilisateur standard : aucun droit d’administration n’est nécessaire ;
  • Gestion par un seul fichier de tout le logiciel : aucun paquet et aucune bibliothèque ne sont à installer au préalable, à part le paquet libfuse2. Le paquet embarque ses propres dépendances. Cela permet à des logiciels assez anciens de continuer à fonctionner alors que, pour des raisons d’obsolescence, leurs dépendances ont été retirées des versions plus récentes du système Ubuntu. À l’inverse, cela permet aussi de disposer de manière anticipée d’une nouvelle version non encore déployée sur Ubuntu.

Inconvénients

Le format AppImage a 6 principaux inconvénients :

  1. Pas d’automatisation de la mise à jour : les nouvelles fonctionnalités et les corrections de failles de sécurité seront disponibles dans les nouvelles versions à récupérer et à déployer de manière manuelle ;
  2. Pas d’intégration au système : à moins que l'installation soit gérée par l'application AppImage elle-même (ce qui est rarement le cas), aucune entrée ne sera ajoutée dans le menu des applications, et si l'AppImage ne l'a pas intégrée aucune icône ne sera affichée pour l'application une fois lancée (en fonction du pack d'icônes utilisée elle sera par exemple remplacée par un engrenage). Certains utilitaires tels que AppImage Launcher permettent de remédier à ces deux premiers inconvénients – voir ci-dessous la section concernant l'intégration au bureau ;
  3. Fichier plus volumineux : un paquet AppImage embarque ses dépendances. Cela conduit à un plus grand nombre de fichiers inclus et à un plus grand espace occupé par rapport à l’équivalent au format .deb ;
  4. Démarrage moins rapide : le lancement du logiciel s’avère un peu plus lent que pour un logiciel classique au format .deb issu des dépôts ;
  5. Sécurité plus incertaine : un éditeur de distribution contrôle les paquets qu’il publie dans ses dépôts. Cela réduit le risque de logiciels fortement défectueux ("bogués") ou fortement agressifs (logiciels espions, …). Un fichier AppImage est généralement téléchargé depuis Internet, sans le contrôle d’une équipe de distribution. Le logiciel récupéré représente ainsi un danger de sécurité plus marqué.

Au-delà des avantages et inconvénients, certains (rares) logiciels sont publiés uniquement dans ce format. Le choix ne se pose alors plus.

En résumé, l’installation se déroule en 5 étapes :

  1. installer le paquet libfuse2, ou au terminal : sudo apt install libfuse2 (a faire seulement à l'installation de votre 1er AppImage )
  2. Récupérer le fichier AppImage du logiciel souhaité, en le téléchargeant sur Internet ;
  3. Déposer le fichier dans un répertoire quelconque (on recommande généralement de créer un répertoire ~/Applications1)) ;
  4. Autoriser son exécution (clic-droit sur le fichier AppImage → Propriétés → Permissions → Autoriser l’exécution) ;
  5. (Optionnel) créer un lanceur qui fera apparaître le programme dans votre menu des applications. Sinon, pour démarrer le fichier AppImage, double-cliquer l’icône du fichier dans son répertoire.

Automatisation : l’application AppImageLauncher permet aussi de gérer les points 4 et 5 (autoriser l’exécution et créer un raccourci dans le menu d’Ubuntu). La télécharger au format .deb sur le site du développeur (normalement la version AMD64 conviendra). Puis l’installer, la démarrer (AppImage Launcher Settings) et la paramétrer. Désormais un programme résident scrute le démarrage de toute AppImage. Ainsi, dès un premier lancement (par un clic sur l’icône associée) :

  • le fichier AppImage est activé en exécution ;
  • une icône est créée dans le menu Ubuntu sans vous poser de question ;
  • le programme AppImage est déplacé dans le répertoire que vous aurez défini dans les paramètres de AppImage Launcher ;
  • enfin, si l’application au format AppImage présente une fonctionnalité de mise à jour distante, une offre de mise à jour vers une éventuelle nouvelle version vous sera proposée.

AppImageLauncher simplifie donc fortement l’installation et la mise à jour des fichiers AppImage.

Se procurer le fichier

Il faut tout d'abord se procurer le fichier AppImage de l'application qu'on veut utiliser. Vous pouvez le télécharger, ou l'amener sur votre ordinateur via une clé USB. Les fichiers en question n'ont hélas pas toujours l'extension .appimage ce qui ne facilite pas la compréhension de ce format par les débutants.

AppImage est le seul format de packaging existant sans gestionnaire de paquet ni dépôt : il faut chercher les applications en ligne soi-même, faites attention à la fiabilité du site sur lequel vous vous procurez l'AppImage.

Si on peut ponctuellement se procurer des logiciels Appimage sur le site officiel du développeur de l'application, sachez qu'il existe un « Appimage Store » officiel. Le AppimageHub officiel Linux.
Il y a aussi le site https://apprepo.de qui en propose bon nombre en précisant bien À vos risques et périls

Des logiciels comme par exemple Krita2), Subsurface, kdenlive ou Openshot fournissent les fichiers AppImage directement sur leur page web officielle, on peut donc leur faire confiance.

Arduino, Blender, Chromium, Firefox ou encore LibreOffice disposent aussi d'une installation par AppImage si besoin, mais de manière moins officielle3).

Modification des permissions

Tout d'abord, placez vos fichiers AppImage dans un dossier où ils pourront rester : si vous les supprimez par erreur, l'application sera supprimée !

Il va falloir rendre le fichier exécutable. Cela peut être fait :

  • Graphiquement (clic-droit sur l'AppImage → Propriétés → Permissions → Autoriser l'exécution) ;
  • En ligne de commande (pour une application fictive nommée truc) :
    chmod a+x truc.appImage
Le format AppImage est en fait une archive, qui contient le logiciel et toutes les bibliothèques dont il dépend, si vous oubliez de le rendre exécutable, l'archive se montera comme un simple disque amovible, explorable avec un gestionnaire de fichiers !

Pour lancer un AppImage, il existe 4 possibilités :

  1. double cliquer sur le fichier AppImage.
  2. en ligne de commande, taper le nom du programme avec tout le chemin qui y mène. Par exemple pour Audacity, si ce dernier se trouve dans un répertoire /Documents/appimage/, il faudra taper : ~/Documents/appimage/audacity-linux-3.1.3-x86_64.AppImage
  3. Créer automatiquement un lanceur dans le menu des applications Ubuntu via le programme Appimage Launcher (cf. chapitre 2).
  4. Créer manuellement un lanceur, qu'on placera dans le répertoire caché ~/.local/share/applications/, et qui apparaitra ainsi dans le menu des applications Ubuntu. Pour créer ce lanceur, créer un fichier au format texte que vous appellerez nom_du_programme.desktop. Dans ce fichier, collez les commandes suivantes (l'exemple ci-dessous est avec le programme Audacity, adaptez-le à vos besoins) :
[Desktop Entry]
Encoding=UTF-8
Type=Application
Categories=Audio;AudioVideo;
Name=Audacity
Comment=Editions de fichiers audio
Exec=/home/<votre_nom_utilisateur>/Documents/appimage/audacity-linux-3.1.3-x86_64.AppImage
Icon=audacity
StartupNotify=false
Terminal=false
Hidden=false

Pour supprimer une application installée par ce format, il suffit de supprimer son fichier AppImage, tout simplement. Effacez aussi le lanceur (s'il existe), qui est probablement dans ~/.local/share/applications/.

Les logiciels fournis dans ce format ne sont pas réellement installés sur le système, et ne sont donc pas présents dans les menus, il faut manuellement créer un lanceur vers le fichier AppImage concerné.

Certains logiciels (comme Etcher, Motrix ou Molotov) proposent, au moment de la première utilisation, de créer un lanceur automatiquement, ça reste cependant une pratique peu répandue.

Nous vous conseillons de créer un dossier AppImage dans Documents et y sauvegarder également les icônes de vos applications, afin de faciliter la création des lanceurs.

Il existe des applications d'intégration des paquets Flatpak, Snap, AppImage et des application hébergées sur le Github. Concernant l'Intégration de AppImage au sein des différentes interfaces graphiques d'Ubuntu :

AppImage Pool

AppImage Pool est un client graphique simple pour AppImageHub. Il est disponible en AppImage, ainsi que sur le dépôt Flathub et peut donc s'installer en suivant cette procédure puis en installant le paquet io.github.prateekmedia.appimagepool.

Il permet de parcourir et de télécharger des AppImages depuis un dépôt centralisé. Puis d'intégrer les AppImages à l'environnement de bureau et de les mettre à jour ou de les désinstaller.

Il propose de définir chaque répertoire indépendamment, pour les AppImages, pour les launchers, et pour les icônes.

Gear Lever

Gear Lever permet d'intégrer les AppImages au bureau, en téléchargeant des îcones et créant des lanceurs. Il est aussi disponible sur le dépôt Flathub et peut donc s'installer en suivant cette procédure puis en installant le paquet it.mijorus.gearlever.

Il permet de choisir le répertoire des AppImages et y enregistre les icônes dans un sous-répertoire .icons. Il détecte les AppImages dans les launchers existants, il faut malheureusement ajouter les autres manuellement un par un.

AppImageLauncher

AppImageLauncher est le gestionnaire généralement recommandé pour la gestion des paquets AppImages.4)5)

Télécharger le paquet précompilé *.deb sur la page Github dédiée AppImageLauncher release builds.

Cette application déplacera les icônes dans les répertoires correspondants si elles existent, mais n'en créera pas. Si l'AppImage n'en intègre pas, une roue crantée sera affichée en guise d’icône pour l'application (en fonction de votre pack d'icône).

Go AppImage

Go AppImage est un ensemble d'outils incluant appimaged et appimagetool.

Il est possible d'utiliser appimaged en complément de AppImageLauncher. Pour l'installer après avoir installé AppImageLauncher :

wget "https://github.com/AppImage/appimaged/releases/download/continuous/appimaged-x86_64.AppImage"

rendez vous dans votre dossier personnel

 sudo chmod a+x appimaged-x86_64.AppImage
sudo ./appimaged-x86_64.AppImage --install

Bauh

Bauh est une alternative à Appimaged et AppImageLauncher, avec lesquels il est incompatible, qui gère de plus flatpak et snap.

Si vous avez installé AppImageLauncher manuellement et que vous désirez suivre nos recommandations et souhaitez installer Bauh afin de bénéficier d'un gestionnaire stable pour les fichiers Snaps, Flatpak et AppImage, entrer cette commande dans un terminal :

sudo find / -type f -name "[Aa]pp[Ii]mage[Ll]auncher" -exec rm -f '{}' \;
sudo find / -type f -name "[Aa]ppimaged" -exec rm -f '{}' \; 

En effet, vous devez désinstaller toute trace de ces deux logiciels avant l'utilisation du module AppImage de Bauh.
Rendez-vous sur la page de Bauh.

AppImageUpdate

AppImageUpdate permet de mettre à jour automatiquement certaines AppImages.

A partir d'Ubuntu 22.04, la facilité d'emploi des fichiers AppImage a commencé à se dégrader.

Ubuntu 22.04

Ubuntu 22.04 n'inclue plus la librairie "libfuse.so.2" (mais la v3). Pour pouvoir exécuter des AppImage il est nécessaire d'installer libfuse2 via "sudo apt install libfuse2"), mais cela crée parfois la casse du bureau Gnome ! (Ref).

Ubuntu 24.04

Ubuntu 24.04 n'inclue plus la librairie "libfuse.so.2" (mais la v3). Pour pouvoir exécuter des AppImage il semble nécessaire d'installer libfuse2 via "sudo apt install libfuse2t64"). Réf


Contributeurs : roschan, krodelabestiole


2)
Exemple d'application disponible au format AppImage : https://krita.org/fr/telechargement/krita-desktop/
3)
Le site https://bintray.com/probono/AppImages fournit des AppImages pour divers logiciels, avec l'aval et la confiance d'appimage.org
4)
Documentation officielle : Integrating AppImages into the desktopAppImageLauncher
5)
se référer à Easily Run And Integrate AppImage Files With AppImageLauncher
— site : Linuxuprising.com ; auteur : logix ; date : 17 juillet 2018.
  • appimage.txt
  • Dernière modification: Le 25/07/2024, 17:42
  • par krodelabestiole