383 votes

Qu'est-ce qu'une "AppImage" ? Comment puis-je l'installer ?

Je viens de lire Etcher, un outil libre et élégant de création d'images USB . Il parle du téléchargement d'un AppImage.

Oui, Linux ; les paquets Linux sont distribués sous la forme d'un .appimage pour les distributions 32 et 64 bits, et devraient fonctionner sans problème sur les principales distributions Linux. L'équipe ne prévoit pas actuellement de fournir un installateur natif .deb (ou .rpm).

Que sont les AppImages ? En quoi diffèrent-elles des snaps ?

448voto

dufte Points 11524

Informations de base

Concernant l'installation

Je cite ici la page du projet appImage :

Les AppImages peuvent être téléchargées et exécutées sans installation ou besoin de de droits root.

Le rendre exécutable

Vous pouvez rendre l'appImage exécutable comme suit :

chmod a+x exampleName.AppImage

L'exécution

Vous pouvez exécuter une appImage comme suit :

./exampleName.AppImage

Informations complémentaires

À propos d'appImage

Vous pouvez trouver quelques informations générales sur appImage aquí .

Je cite ici la page du projet appImage :

L'idée clé du format AppImage est qu'une application = un fichier. Chaque AppImage contient une application et tous les fichiers dont l'application a besoin pour fonctionner. En d'autres termes, En d'autres termes, chaque AppImage n'a aucune dépendance autre que ce qui est inclus dans le(s) système(s) d'exploitation de base ciblé(s).

Wikipedia ajoute

AppImage (et ses prédécesseurs klik et portablelinuxapps) n'ont pas installent pas de logiciel au sens traditionnel (c'est-à-dire qu'ils ne mettent pas de fichiers partout dans le système).

Il utilise un fichier par application. Chacun d'entre eux est autonome : il inclut toutes les bibliothèques dont l'application dépend et qui ne font pas partie du système de base. À cet égard, il est similaire à la "virtualisation d'application". On peut utiliser un fichier AppImage même s'il n'est pas un super-utilisateur, ou s'il utilise un CD live. Les fichiers AppImage sont souvent plus simples que de compiler et d'installer une application, car aucune installation n'est nécessaire. application, car aucune installation n'a lieu. Le fichier AppImage est une image compressée qui est temporairement montée afin de permettre l'accès au au programme, mais sans avoir à l'extraire ou à modifier le système sous-jacent. système sous-jacent.

El README.md de la Projet AppImageKit offre beaucoup d'informations supplémentaires comme Cas d'utilisation , l'espace du problème et objectifs .

Cas d'utilisation

  • En tant qu'utilisateur, je veux aller sur une page de téléchargement en amont, télécharger une application de l'auteur original, et l'exécuter sur mon système de bureau Linux comme je le ferais avec une application Windows ou Mac.

  • En tant que testeur, je veux pouvoir obtenir la dernière version de pointe d'une application à partir d'un serveur de construction continue et la tester sur mon système, sans avoir à compiler et sans craindre d'endommager mon système.

  • En tant qu'auteur d'application ou ISV, je veux fournir des paquets pour les systèmes de bureau Linux comme je le fais pour Windows et OS X, sans avoir besoin de les intégrer dans une distribution et sans avoir à construire pour des milliards de distributions différentes.

Objectifs

  1. Soyez simple.

    AppImage est conçu comme un format très simple, facile à utiliser. facile à comprendre, à créer et à gérer.

  2. Maintenir la compatibilité binaire.

    AppImage est un format de distribution de logiciels binaires. Le logiciel empaquetés en AppImage sont destinés à être aussi compatibles que possible avec possible avec le plus grand nombre de systèmes possible. La nécessité de (re-)compilation des logiciels devrait être considérablement réduite.

  3. Soyez agnostique en matière de distribution.

    Une AppImage doit fonctionner sur tous les systèmes d'exploitation de base (distributions). pour lesquels elle a été créée (et les versions ultérieures). Par exemple, vous pourriez cibler Ubuntu 9.10, openSUSE 11.2, et Fedora 13 (et les versions ultérieures) en même temps, sans avoir à créer et maintenir des paquets séparés pour chaque distincts pour chaque système cible.

  4. Supprimer le besoin d'installation.

    Les AppImages contiennent l'application dans un format qui lui permet de s'exécuter directement directement à partir de l'archive, sans avoir à l'installer au préalable. Cela est comparable à un Live CD. Avant les Live CD, les systèmes d'exploitation devaient d'abord être être installés avant de pouvoir être utilisés.

  5. Gardez les applications compressées en permanence.

    Étant donné que l'application reste toujours emballée, elle n'est jamais décompressée sur le disque dur. L'ordinateur décompresse l'application l'application à la volée lorsqu'il y accède. Comme la décompression est plus rapide que la lecture du disque dur sur la plupart des systèmes, cela présente un avantage en termes de vitesse, en plus du gain d'espace. de vitesse en plus de l'économie d'espace. De plus, le temps nécessaire à l'installation est entièrement supprimé.

  6. Permet de placer des applications n'importe où.

    Les AppImages sont "relocalisables", ce qui permet à l'utilisateur de les stocker et de les exécuter à partir de n'importe quel endroit (y compris les CD-ROM, les DVD, les remova et de les exécuter à partir de n'importe quel endroit (y compris les CD-ROMs, les DVDs, les disques amovibles, clés USB).

  7. Rendez les applications en lecture seule.

    Comme les AppImages sont en lecture seule par conception, l'utilisateur peut être raisonnablement qu'une application ne se modifie pas pendant son fonctionnement.

  8. Ne nécessite pas de recompilation.

    Les AppImages doivent pouvoir être créées à partir de binaires déjà existants, sans avoir besoin de les recompiler. Cela accélère grandement le processus de création des processus de création d'AppImages, puisqu'aucun compilateur ne doit être impliqué. Ce site permet également à des tiers d'empaqueter des applications à source fermée en tant que AppImages. (Néanmoins, il peut être bénéfique pour les développeurs développeurs d'applications en amont de construire à partir des sources but de générer une AppImage).

  9. Ne touchez pas au système d'exploitation de base.

    Puisque les AppImages sont destinées à fonctionner sur des systèmes ordinaires qui n'ont pas qui n'ont pas été spécialement préparés par un administrateur, les AppImages ne nécessitent pas préparation inhabituelle du système d'exploitation de base. Par conséquent, elles ne peuvent pas compter sur des patches spéciaux du noyau, des modules du noyau, ou n'importe quelles applications qui ne sont pas fournies avec les distributions ciblées en par défaut.

  10. Ne nécessite pas de racine.

    Comme les AppImages sont destinées à être exécutées par les utilisateurs finaux, elles ne devraient pas nécessiter un compte administratif (root) pour être installé ou utilisé. Elles Cependant, elles peuvent être installées par un administrateur (par exemple, dans des scénarios multi-utilisateurs) si cela est souhaité. dans des scénarios multi-utilisateurs) si cela est souhaité.

52voto

probono Points 1049

Avant de pouvoir exécuter une AppImage, vous devez la rendre exécutable. Il s'agit d'une fonctionnalité de sécurité de Linux. Il y a deux façons principales de rendre une AppImage exécutable :

Utilisation de l'interface graphique

How to make an AppImage executable

o

Utilisation de la ligne de commande

chmod a+x Some.Appimage

Maintenant, double-cliquez sur votre fichier pour l'exécuter OU cliquez sur le bouton droit de la souris > Exécuter.

30voto

Logan Serman Points 11537

L'idée de base peut sembler similaire entre les deux systèmes, mais il existe quelques différences de conception entre les snaps et Appimages.

Certains "grands" qui me viennent à l'esprit sont :

  1. Sécurité en termes de confinement : Les paquets Snap s'exécutent dans un bac à sable, et ils ne sont pas autorisés à s'en échapper pour atteindre d'autres parties du système qu'ils devraient no toucher. Il s'agit d'une couche de sécurité plus forte qui fonctionne parallèlement au système de la permission. Évidemment, c'est un peu frustrant au début (et aussi plus tard), mais si vous y pensez en termes d'administration système, c'est ce qu'un administrateur veut pour ses utilisateurs.

  2. Sécurité : Installer des logiciels pris sur le net est aussi sûr que d'aller lécher des poteaux dans la rue. Parfois il ne se passe rien, parfois vous avez de très gros problèmes de santé. Les paquets Snap ont leurs propres dépôts, qui sont contrôlés par Canonical, comme les dépôts standards habituels d'Ubuntu. Vous pouvez installer .deb de l'extérieur, mais ce sera votre choix et non un problème de conception.

  3. インストール : Les AppImages sont censées être l'équivalent des "exécutables portables de Windows". Toutes les bibliothèques sont autonomes et tout utilisateur peut simplement télécharger et exécuter l'une d'entre elles. D'un autre côté, snap sont de véritables paquets, et ils doivent être installés (en tant que root ou avec sudo ) via le gestionnaire de paquets approprié ( snap install tic-tac-toe lance une erreur : il faut sudo !)

  4. Déménagement : Pour supprimer un package snap, vous devez utiliser le gestionnaire de packages snap remove ... avec les autorisations nécessaires pour le faire. Les AppImages, par contre, sont juste "là". Si un utilisateur ne veut pas de cette AppImage ? Il suffit de supprimer le fichier et il disparaît.

Bien que je recommande vivement d'être prudent lors de l'utilisation d'AppImages, j'en utilise personnellement certaines.

Je les trouve particulièrement utiles sur mon système de travail, où je ne dispose pas de root (seul l'administrateur a cet accès) mais j'ai besoin de la dernière version d'un logiciel particulier que, heureusement, le développeur a fourni sous forme d'Appimage.

J'ai un peu peur qu'ils contiennent effectivement un code malveillant, j'ai donc vérifié autant que possible l'identité de l'éditeur. Je ne suis pas sûr à 100% que ce logiciel soit bénin, mais j'ai fait tout ce que je pouvais.

18voto

probono Points 1049

Alors que snap se concentre uniquement sur Ubuntu, AppImage est multi-distribution et fonctionne également sur Fedora, Debian, OpenSUSE, CentOS, etc.

AppImage n'a besoin d'aucun support d'exécution ou d'infrastructure de la part de la distribution Linux et fonctionne donc presque partout. Il permet aux auteurs d'applications d'envoyer leurs logiciels directement aux utilisateurs de Linux, comme ils le font pour Windows et OS X, sans que Canonical ou qui que ce soit d'autre ne s'interpose entre l'auteur du logiciel et l'utilisateur final.

Si une application est fournie au format AppImage, l'utilisateur peut se rendre sur le site web de l'auteur original pour la télécharger, par exemple, MuseScore de https://musescore.org/en/download . Rendez l'AppImage exécutable (soit à l'aide de votre gestionnaire de fichiers, soit à l'aide d'un logiciel de gestion de fichiers). chmod a+x ./yourAppImage ), vous pouvez alors exécuter l'application en double-cliquant simplement.

7voto

insign Points 197

Les images d'applications nécessitent FUSE pour fonctionner. Filesystem in Userspace (FUSE) est un système qui permet aux utilisateurs non-roots de monter des systèmes de fichiers.

Installer le FUSE

De nombreuses distributions ont une configuration FUSE fonctionnelle prête à l'emploi. Cependant, si cela ne fonctionne pas pour vous, vous devrez peut-être installer et configurer FUSE manuellement.

Par exemple, sur Ubuntu :

sudo apt-get install fuse
sudo modprobe fuse
sudo usermod -a -G fuse $USER

Par exemple, sur openSUSE :

sudo zypper install fuse

Repli sur soi

Si vous ne voulez pas installer FUSE, vous pouvez monter ou extraire l'AppImage.

Pour monter l'AppImage et exécuter l'application, il suffit d'exécuter

sudo mount -o loop Some.AppImage /mnt
/mnt/AppRun

Si cela ne fonctionne pas, vous pouvez avoir une expérience type 2 AppImage . Ceux-ci exigent que vous passiez -o offset=... à la mount commande. Exécutez l'AppImage avec --appimage-offset pour trouver le numéro correct pour le décalage.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X