Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
appimage [Le 19/05/2024, 12:07]
Dadu042 [Ubuntu 24.04]
appimage [Le 17/05/2025, 20:04] (Version actuelle)
krodelabestiole [Avantages] typo / lien fuse
Ligne 2: Ligne 2:
  
 {{ https://​upload.wikimedia.org/​wikipedia/​commons/​thumb/​7/​73/​App-image-logo.svg/​220px-App-image-logo.svg.png?​100}} {{ https://​upload.wikimedia.org/​wikipedia/​commons/​thumb/​7/​73/​App-image-logo.svg/​220px-App-image-logo.svg.png?​100}}
- 
 ====== Appimage ====== ====== Appimage ======
  
Ligne 13: Ligne 12:
 ==== Avantages ==== ==== 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 :+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 ;​   * **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 [[apt>​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 dune nouvelle version ​non encore ​déployée sur Ubuntu.+  * **Gestion par un seul fichier de tout le logiciel** :​ aucun paquet et aucune bibliothèque ne sont à installer au préalable, à part le paquet ​''​[[apt>​libfuse2]]''​ ou ''​[[apt>​libfuse2t64]]''​ (voir [[#​Installer une Appimage|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 ==== ==== Inconvénients ====
  
-Le format **AppImage** a principaux inconvénients :+Le format **AppImage** a principaux inconvénients :
  
-  - **Pas dautomatisation 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 ;​ +  - **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 ;​ 
-  - **Pas dintégration au système** : ​en l’occurrencepas d’entrée ajoutée le menu des applications. ​Notons ​que l’utilitaire ​**AppImage Launcher** ​permet ​de remédier ​aux deux premiers inconvénients ​cités ​– cf. la section ​infra sur l’installation +  - **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]] 
-  - **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// +  - **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]] 
-  - **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 +  - **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]] 
-  - **Sécurité plus incertaine** :​ un éditeur de distribution contrôle les paquets quil 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 dune équipe de distribution. Le logiciel récupéré représente ainsi un danger ​de sécurité ​plus marqué.+  - **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.
  
-Au-delà ​des avantages et inconvénients,​ certains (rares) logiciels sont publiés uniquement dans ce format. Le choix ne se pose alors plus.+<note important>​ 
 +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. 
 +</​note>​
  
-===== Installer ​un appimage ​=====+===== Installer ​une Appimage ​=====
  
-En résumé, l’installation se déroule en étapes :​ +L'installation se déroule en quelques ​étapes :​ 
-  - installer le paquet ​[[apt>​libfuse2]], ou au terminal ​**sudo ​apt install libfuse2** (a faire seulement ​à l'installation de votre 1er AppImage ​+  - À partir de la version Ubuntu ​[[:​noble|Noble 24.04]], l'[[:tutoriel:​comment_installer_un_paquet|installation du paquet]] ''​[[apt>​libfuse2t64]]''​ est un pré-requis ​à l'utilisation d'une Appimage (à faire une seule fois sur chaque système Ubuntu). Pour Ubuntu [[:​jammy|Jammy 22.04]], c'est le paquet ''​[[apt>​libfuse2]]''​ qu'il faut [[:​tutoriel:​comment_installer_un_paquet|installer]]. Il était installé par défaut sur les versions précédentes. 
-  - Récupérer le fichier AppImage du logiciel souhaité, en le téléchargeant sur Internet ;+  - 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 [[:​git#​principaux_depots_git|forge Git]]) ;
   - Déposer le fichier dans un répertoire quelconque (on recommande généralement de créer un répertoire ''​~/​Applications''​(([[wpfr>​Stack Exchange Network|Ask Ubuntu]] : //​[[https://​askubuntu.com/​a/​1106044|Where should I put .Appimages files?​]]//​))) ;​   - Déposer le fichier dans un répertoire quelconque (on recommande généralement de créer un répertoire ''​~/​Applications''​(([[wpfr>​Stack Exchange Network|Ask Ubuntu]] : //​[[https://​askubuntu.com/​a/​1106044|Where should I put .Appimages files?​]]//​))) ;​
-  - Autoriser son exécution (//clic-droit sur le fichier AppImage -> Propriétés -> Permissions -> Autoriser ​lexécution//​) ;​ +  - Autoriser son exécution (clic-droit sur le fichier AppImage -> //Propriétés// -> //Permissions// -> autoriser ​l'//exécution//​) ;​ 
-  - (Optionnel) créer un [[raccourci-lanceur|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.+  - (Optionnel) créer un [[:raccourci-lanceur|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** ​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** [[https://​github.com/​TheAssassin/​AppImageLauncher/​releases|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) :+<note tip> 
 +**Automatisation** : l’application **[[#AppImageLauncher]]** ou le service **[[#​go_appimageappimaged|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 ;​   * le fichier AppImage est activé en exécution ;​
   * une icône est créée dans le menu Ubuntu sans vous poser de question ;   * 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 +  * le programme AppImage est déplacé dans le répertoire que vous aurez défini dans les paramètres 
-  * enfin, ​__si__ ​lapplication 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. +  * 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. 
-**AppImageLauncher** simplifie ​donc fortement l’installation et la mise à jour des fichiers AppImage.+Ces logiciels simplifient ​donc fortement l’installation et la mise à jour des fichiers AppImage. 
 +</​note>​
  
 ==== Se procurer le fichier ==== ==== Se procurer le fichier ====
Ligne 97: Ligne 101:
 ===== Intégration au bureau ===== ===== Intégration au bureau =====
  
-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 [[:​raccourci-lanceur|créer un lanceur]] vers le fichier AppImage concerné.+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 [[:​raccourci-lanceur|créer un lanceur]] vers le fichier AppImage concerné.
  
 <​note>​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. <​note>​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.+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.
 </​note>​ </​note>​
  
-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 :+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 ====
Ligne 114: Ligne 118:
 Il propose de définir chaque répertoire indépendamment,​ pour les AppImages, pour les //​launchers//,​ et pour les icônes. Il propose de définir chaque répertoire indépendamment,​ pour les AppImages, pour les //​launchers//,​ et pour les icônes.
  
-==== Gear Lever ====+==== Levier de vitesse (Gear Lever en VO) ====
  
 **[[https://​github.com/​mijorus/​gearlever|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 [[https://​flathub.org/​apps/​it.mijorus.gearlever|Flathub]] et peut donc s'​installer en suivant [[:​tutoriel:​installer_application_flatpak|cette procédure]] puis en installant le paquet ''​it.mijorus.gearlever''​. **[[https://​github.com/​mijorus/​gearlever|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 [[https://​flathub.org/​apps/​it.mijorus.gearlever|Flathub]] et peut donc s'​installer en suivant [[:​tutoriel:​installer_application_flatpak|cette procédure]] puis en installant le paquet ''​it.mijorus.gearlever''​.
Ligne 120: Ligne 124:
 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. 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 ​====+==== Go AppImage / appimaged ​====
  
-**[[https://​github.com/​TheAssassin/AppImageLauncher|AppImageLauncher]]** est le gestionnaire généralement recommandé pour la gestion des paquets AppImages.(([[https://​appimage.org|Documentation officielle]] : //​Integrating AppImages into the desktop// -> //[[https://​docs.appimage.org/​user-guide/​run-appimages.html#appimagelauncher|AppImageLauncher]]//))((se référer à [[https://​www.linuxuprising.com/​2018/​04/​easily-run-and-integrate-appimage-files.html|Easily Run And Integrate AppImage Files With AppImageLauncher]] ​ \\ — site : Linuxuprising.com ; auteur : logix ; date : 17 juillet 2018.))+[[https://​github.com/​probonopd/go-appimage|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'[[:environnements|environnement de bureau]]. C'est une solution plus moderne que **[[#​AppImageLauncher]]**, et généralement recommandée.
  
-Télécharger le paquet précompilé *.deb sur la page Github dédiée ​//[[https://​github.com/​TheAssassin/AppImageLauncher/releases|AppImageLauncher release builds]]//.+La procédure pour l'​installer est décrite en anglais ​sur [[https://github.com/​probonopd/​go-appimage/​blob/​master/​src/​appimaged/​README.md|cette page]] : 
 +<​code>#​ 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</​code>​ 
 + 
 +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 [[:​raccourci-lanceur|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 ====
  
-==== Go AppImage ​====+**[[https://​github.com/​TheAssassin/​AppImageLauncher|AppImageLauncher]]** et **[[#​go_appimageappimaged|appimaged]]** sont les gestionnaires généralement recommandés pour la gestion des paquets AppImages.(([[https://​appimage.org|Documentation officielle]] : //​Integrating AppImages into the desktop// -> //​[[https://​docs.appimage.org/​user-guide/​run-appimages.html#​appimagelauncher|AppImageLauncher]]//​))((se référer à [[https://​www.linuxuprising.com/​2018/​04/​easily-run-and-integrate-appimage-files.html|Easily Run And Integrate ​AppImage ​Files With AppImageLauncher]] ​ \\ — site : Linuxuprising.com ; auteur : logix ; date : 17 juillet 2018.)) Ils ne sont cependant pas compatibles l'un avec l'​autre !
  
-[[https://​github.com/probonopd/go-appimage|Go AppImage]] est un ensemble d'​outils incluant **[[https://​github.com/​probonopd/go-appimage/blob/master/src/​appimaged/​README.md|appimaged]]** et [[https://​github.com/​probonopd/​go-appimage/​blob/​master/​src/​appimagetool/​README.md|appimagetool]].+Télécharger le paquet compilé ''​.deb''​ sur la page Github dédiée ​//​[[https://​github.com/​TheAssassin/AppImageLauncher/releases|AppImageLauncher release builds]]// (la version AMD64 convient sur les ordinateurs classiques)Puis l’installer,​ la démarrer (**AppImage Launcher Settings**) ​et la paramétrerDésormais un programme résident scrute le démarrage de toute AppImage pour procéder automatiquement à son intégration au système.
  
-Il est possible d'utiliser appimaged ​en complément de AppImageLauncherPour l'installer **après avoir installé AppImageLauncher** : +<note warning>​Cette application déplacera les icônes dans les répertoires correspondants si elles existent, mais n'​en ​créera pasSi 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).</note>
-<code bash>​wget "​https://​github.com/​AppImage/​appimaged/​releases/​download/​continuous/​appimaged-x86_64.AppImage"</​code>​ +
-rendez vous dans votre dossier personnel +
-<code bash> sudo chmod a+x appimaged-x86_64.AppImage</​code>​ +
-<code bash>​sudo ./​appimaged-x86_64.AppImage --install</code>+
  
 ==== Bauh ==== ==== Bauh ====
Ligne 154: Ligne 180:
  
 ===== Problèmes connus ===== ===== Problèmes connus =====
-A partir d'​Ubuntu 22.04, la facilité d'​emploi des fichiers AppImage a commencé à se dégrader. 
  
-==== Ubuntu ​22.04 et plus ==== +==== FUSE ==== 
-Ubuntu 22.04 n'inclue ​plus la librairie ​"libfuse.so.2" ​(mais libfuse.so.3). 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 !.+ 
 +A partir de la version [[:​jammy|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 [[https://​github.com/​TheAssassin/​type3-runtime|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|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'[[:​tutoriel:​comment_installer_un_paquet|installer ​le paquet]] ''​[[apt>libfuse2]]''​, mais cela crée parfois la casse du bureau Gnome !((voir ce [[https://​bugs.launchpad.net/​ubuntu/​+source/​fuse/​+bug/​1717878|rapport de bug]])) 
 + 
 +=== Ubuntu 24.04 ===
  
-==== Ubuntu 24.04 ==== +Ubuntu ​[[:​noble|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'[[:​tutoriel:​comment_installer_un_paquet|installer ​le paquet]] ''​[[apt>libfuse2t64]]''​.((It's FOSS : //[[https://​itsfoss.com/​cant-run-appimage-ubuntu/​|Can't Run AppImage on Ubuntu? Here's How to Fix it]]//))
-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"). [[https://​itsfoss.com/​cant-run-appimage-ubuntu/ ​Ref]]+
  
 ===== Voir aussi ===== ===== Voir aussi =====
  • appimage.1716113259.txt.gz
  • Dernière modification: Le 19/05/2024, 12:07
  • par Dadu042