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 pour utiliser un fichier Appimage, autre que bien sûr une connexion à Internet, ainsi que la librairie FUSE :

  • 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 ou libfuse2t64 (voir ci-dessous) quand il ne l'est pas déjà. L'Appimage embarque ses propres dépendances. Cela permet à des applications assez anciennes 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 pas encore disponible dans les dépôts officiels d'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 défectueux (bugués) ou malveillants (logiciels espions, malwares, etc.). Un fichier AppImage peut être téléchargé depuis n'importe quel site Internet, sans le contrôle d'une équipe de distribution. Le logiciel récupéré représente ainsi un risque de sécurité notable.
Dans ces conditions mieux vaut généralement lui préférer les formats snap et Flatpak, qui offrent les mêmes avantages sans la plupart des inconvénients (dépôts centralisés, mises à jour automatiques).
Cependant au-delà de ces avantages et inconvénients, certains (rares) logiciels sont publiés uniquement dans ce format. Le choix ne se pose alors plus.

L'installation se déroule en quelques étapes :

  1. À partir de la version Ubuntu Noble 24.04, l'installation du paquet libfuse2t64 est un pré-requis à l'utilisation d'une Appimage (à faire une seule fois sur chaque système Ubuntu). Pour Ubuntu Jammy 22.04, c'est le paquet libfuse2 qu'il faut installer. Il était installé par défaut sur les versions précédentes.
  2. Récupérer le fichier AppImage du logiciel souhaité, en le téléchargeant sur Internet (attention à la confiance qu'on accorde au site : vérifier l'utilisation du protocole HTTPS, et que le nom de domaine soit bien celui de l'éditeur ou d'une forge Git) ;
  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ésPermissions → 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 sur le fichier depuis un gestionnaire de fichiers.
Automatisation : l’application AppImageLauncher ou le service appimaged permettent de gérer les points 4 et 5 automatiquement (autoriser l’exécution et créer un raccourci dans le menu d’Ubuntu) :
  • 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 ;
  • 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 est proposée.

Ces logiciels simplifient 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 sont généralement directement des applications exécutables, et pas des installateurs. Ils ne sont pas directement intégrés au système, et ne sont par exemple 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 répertoire AppImage dans Documents et y sauvegarder également les icônes de vos applications, afin de faciliter la création des lanceurs.

Il existe diverses applications d'intégration des paquets AppImage au sein des différentes interfaces graphiques d'Ubuntu, entre lesquelles il faut choisir (elles sont généralement incompatibles les unes avec les autres) :

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.

Levier de vitesse (Gear Lever en VO)

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.

Go AppImage / appimaged

Go AppImage est un ensemble d'outils développés par le créateur du format Appimage incluant appimaged. Celui-ci est un service permettant de rendre exécutable et d'intégrer automatiquement les applications Appimage à l'environnement de bureau. C'est une solution plus moderne que AppImageLauncher, et généralement recommandée.

La procédure pour l'installer est décrite en anglais sur cette page :

# Supprimer les éventuels outils pré-existants susceptibles d'entrer en conflit
systemctl --user stop appimaged.service || true
sudo apt-get -y purge appimagelauncher || true
[ -f ~/.config/systemd/user/default.target.wants/appimagelauncherd.service ] && rm ~/.config/systemd/user/default.target.wants/appimagelauncherd.service

# Videz le cache
rm "$HOME"/.local/share/applications/appimage*

# Installez Firejail si vous le souhaitez (fournit des fonctionnalités de sandboxing)

# Téléchargez
mkdir -p ~/Applications
wget -c https://github.com/$(wget -q https://github.com/probonopd/go-appimage/releases/expanded_assets/continuous -O - | grep "appimaged-.*-x86_64.AppImage" | head -n 1 | cut -d '"' -f 2) -P ~/Applications/
chmod +x ~/Applications/appimaged-*.AppImage

# Lancez
~/Applications/appimaged-*.AppImage

Le fichier ~/Applications/appimaged-***.AppImage est un wrapper pour les autres AppImages (une "pseudo application" qui sert à lancer les applications réelles).

On peut vérifier le bon fonctionnement du service avec la commande :

systemctl --user status appimaged

Ce service détecte les fichiers AppImage téléchargés, les rend exécutables, et créé automatiquement un lanceur appimagekit_***.desktop dans le répertoire ~/.local/share/applications (donc une icône / raccourci pour l'application). Ce lanceur est aussi supprimé ou mis à jour automatiquement avec le fichier AppImage de l'application.

AppImageLauncher

AppImageLauncher et appimaged sont les gestionnaires généralement recommandés pour la gestion des paquets AppImages.4)5) Ils ne sont cependant pas compatibles l'un avec l'autre !

Télécharger le paquet compilé .deb sur la page Github dédiée AppImageLauncher release builds (la version AMD64 convient sur les ordinateurs classiques). 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 pour procéder automatiquement à son intégration au système.

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).

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.

FUSE

A partir de la version Jammy 22.04, Ubuntu n'inclut plus la librairie FUSE en version 2 (libfuse.so.2), qui est pourtant nécessaire à l'exécution des anciennes Appimages, malheureusement encore souvent d'actualité.

Les nouvelles Appimage (de type 3) sont conçues pour fonctionner avec la librairie FUSE en version 3, qui est désormais installée par défaut sur Ubuntu.

Ubuntu 22.04

Ubuntu Jammy 22.04 n'inclut plus la librairie libfuse.so.2 (mais la version 3). Pour pouvoir exécuter une ancienne AppImage il est nécessaire d'installer le paquet libfuse2, mais cela crée parfois la casse du bureau Gnome !6)

Ubuntu 24.04

Ubuntu Noble 24.04 n'inclut plus non plus la librairie libfuse.so.2 (mais aussi la version 3). Pour pouvoir exécuter une ancienne AppImage il est nécessaire d'installer le paquet libfuse2t64.7)


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 17/05/2025, 20:04
  • par krodelabestiole