web-dev-qa-db-fra.com

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

Je viens de lire Meet Etcher, un élégant outil de gravure d'images USB Open Source . Il parle de télécharger une AppImage.

Oui, Linux; les packages Linux sont distribués sous la forme d'un fichier .appimage pour les distributions 32 bits et 64 bits, et doivent s'exécuter sur toutes les principales distributions Linux, sans aucun problème. L'équipe ne prévoit actuellement pas de fournir un programme d'installation natif .deb (ou .rpm).

Que sont les AppImages? Comment diffèrent-ils des clichés?

210
DK Bose

Informations de base

En ce qui concerne l'installation

Je cite la page du projet appImage ici:

AppImages peut être téléchargé et exécuté sans installation ni besoin de droits root.

Le rendant exécutable

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

chmod a+x exampleName.AppImage

L'exécuter

Vous pouvez exécuter une application image comme suit:

./exampleName.AppImage

Information additionnelle

À propos de appImage

Vous pouvez trouver des informations générales sur appImage ici .

Je cite la page du projet appImage ici:

L'idée clé du format AppImage est un fichier app = un. Chaque AppImage contient une application et tous les fichiers que l'application doit exécuter. En d'autres termes, chaque AppImage n'a pas de dépendances autres que celles incluses dans le ou les systèmes d'exploitation de base ciblés.

Wikipedia ajoute

AppImage (et les prédécesseurs klik et portablelinuxapps) n’installe pas de logiciel au sens traditionnel du terme (c’est-à-dire qu’il ne place pas les fichiers partout dans le système).

Il utilise un fichier par application. Chacune est autonome: elle inclut toutes les bibliothèques dont dépend l'application et qui ne font pas partie du système de base. À cet égard, cela s'apparente à la "virtualisation d'application". On peut utiliser un fichier AppImage même s’ils ne sont pas des super-utilisateurs ou qu’ils utilisent un CD live. Les fichiers AppImage sont souvent plus simples que la compilation et l’installation d’une application, puisqu’aucune installation n’a eu lieu. Le fichier AppImage est une image compressée montée temporairement pour permettre l'accès au programme, sans avoir à l'extraire ni à modifier le système sous-jacent.

Le README.md du AppImageKit-project offre de nombreuses informations supplémentaires telles que Cas d'utilisation , l'espace du problème et les objectifs .

Cas d'utilisation

  • En tant qu'utilisateur, je souhaite accéder à une page de téléchargement en amont, télécharger une application de l'auteur d'origine et l'exécuter sur mon système de bureau Linux, exactement comme je le ferais avec une application Windows ou Mac.

  • En tant que testeur, je veux pouvoir obtenir la dernière version d'une application bleeding-Edge à partir d'un serveur de build continu et la tester sur mon système, sans avoir besoin de compiler et sans craindre de gâcher mon système.

  • En tant qu'auteur d'application ou ISV, je souhaite proposer des packages pour les systèmes de bureau Linux, comme je le fais pour Windows et OS X, sans qu'il soit nécessaire de l'introduire "dans" une distribution et sans avoir à créer des millions de distributions différentes.

Objectifs

  1. Soit simple.

    AppImage se veut un format très simple, facile à comprendre, à créer et à gérer.

  2. Maintenir la compatibilité binaire.

    AppImage est un format pour la distribution de logiciels binaires. Les logiciels fournis en tant que AppImage sont conçus pour être aussi compatibles binaires que possible avec autant de systèmes que possible. Le besoin de (re) compilation de logiciels devrait être grandement réduit.

  3. Soyez distribution-agostique.

    Une AppImage doit s'exécuter 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 pouvez cibler Ubuntu 9.10, openSUSE 11.2 et Fedora 13 (et versions ultérieures) en même temps, sans avoir à créer et à gérer des packages distincts pour chaque système cible.

  4. Supprimez le besoin d'installation.

    AppImages contient l'application dans un format lui permettant de s'exécuter directement à partir de l'archive, sans avoir à être installée au préalable. Ceci est comparable à un Live CD. Avant les Live CD, les systèmes d’exploitation devaient être installés avant de pouvoir être utilisés.

  5. Gardez les applications compressées tout le temps.

    Comme l’application reste tout le temps empaquetée, elle n’est jamais décompressée sur le disque dur. L'ordinateur décompresse l'application à la volée tout en y accédant. Étant donné que 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 rapidité, en plus d'économiser de l'espace. En outre, le temps nécessaire à l'installation est entièrement supprimé.

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

    Les AppImages sont "relogeables", permettant ainsi à l'utilisateur de les stocker et de les exécuter à partir de n'importe quel emplacement (y compris les CD-ROM, les DVD, les disques amovibles, les clés USB).

  7. Rendre les applications en lecture seule.

    Étant donné que AppImages est en lecture seule de par sa conception, l'utilisateur peut être raisonnablement certain qu'une application ne se modifie pas d'elle-même pendant son fonctionnement.

  8. Ne nécessite pas de recompilation.

    Il est possible de créer AppImages à partir de fichiers binaires existants, sans recompilation. Cela accélère considérablement le processus de création d'AppImage, aucun compilateur n'étant impliqué. Cela permet également aux tiers de conditionner les applications à source fermée en tant qu'AppImages. (Néanmoins, il peut être avantageux pour les développeurs d’applications en amont de compiler à partir de la source spécifiquement dans le but de générer une AppImage.)

  9. Gardez le système d'exploitation de base intact.

    Comme AppImages est destiné à fonctionner sur des systèmes standard qui n'ont pas été spécialement préparés par un administrateur, AppImages peut ne nécessiter aucune préparation inhabituelle du système d'exploitation de base. Par conséquent, ils ne peuvent pas compter sur des correctifs de noyau spéciaux, des modules de noyau ou des applications qui ne sont pas fournies avec les distributions ciblées par défaut.

  10. Ne nécessite pas de racine.

    Etant donné que les applications AppImages sont destinées à être exécutées par les utilisateurs finaux, ils ne doivent pas requérir l’installation ou l’utilisation d’un compte administrateur (root). Ils peuvent cependant être installés par un administrateur (par exemple, dans des scénarios multi-utilisateurs) si vous le souhaitez.

260
dufte

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

Quelques "gros" qui me viennent à l'esprit sont:

  1. Sécurité , en termes de confinement . Les packages de capture s'exécutent dans un bac à sable et ils ne sont pas autorisés à en sortir et à atteindre d'autres parties du système qu'ils ne devraient pas . Il s'agit d'une couche de sécurité renforcée s'exécutant parallèlement au système d'autorisations. Évidemment, il est un peu frustrant de gérer cela au début (et aussi plus tard), mais si vous y réfléchissez en termes d’administration système, c’est ce qu’un administrateur souhaite pour ses utilisateurs.

  2. Sécurité. L’installation de logiciels provenant du réseau est aussi sûre que de lécher des poteaux dans les rues. Parfois, rien ne se passe, parfois, vous avez de très gros problèmes de santé. Les paquetages instantanés ont leurs propres référentiels, contrôlés par Canonical, comme les référentiels Ubuntu standard habituels. Vous pouvez continuer et installer les fichiers .deb de partout, mais ce sera votre choix et non un problème de conception.

  3. Installation. Les AppImages sont censées être l'équivalent des "exécutables portables de Windows". Toutes les bibliothèques sont autonomes et n'importe quel utilisateur peut simplement télécharger et exécuter l'une de celles-ci. D'autre part, les packages snap sont des packages appropriés, et ils doivent être installés (en tant que root ou avec Sudo) via le gestionnaire de packages apposite (snap install tic-tac-toe génère une erreur: il faut Sudo!).

  4. Suppression. Pour supprimer un package d'instantané, vous devez utiliser le gestionnaire de packages snap remove ... avec les autorisations appropriées. Les images, en revanche, elles ne sont que "là-bas". Donc, tout utilisateur ne veut pas cette Appimage? Il/elle supprime simplement le fichier et il est parti.

Bien que je suggère fortement de faire preuve de prudence lors de l'utilisation d'Appimages, j'utilise personnellement certaines d'entre elles moi-même.

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

J'ai un peu peur que du code malveillant soit effectivement contenu dans celui-ci, j'ai donc vérifié autant que possible l'identité de l'éditeur. Je ne suis pas sûr à 100% que ce logiciel soit sans danger, mais j'ai fait tout ce que je pouvais.

22
dadexix86

Avant de pouvoir exécuter une AppImage, vous devez la rendre exécutable. Ceci est une fonctionnalité de sécurité Linux. Il existe deux méthodes principales pour créer un exécutable AppImage:

1. Utiliser l'interface graphique

How to make an AppImage executable

ou

2. Sur la ligne de commande

chmod a+x Some.Appimage

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

17
probono

Alors que Snap se concentre uniquement sur Ubuntu, AppImage est une distribution croisée et fonctionne également sur Fedora, Debian, OpenSUSE, CentOS, etc.

AppImage n'a besoin d'aucun support d'exécution ni d'infrastructure de la distribution Linux et s'exécute donc pratiquement partout. Il permet aux auteurs d'applications d'envoyer leur logiciel directement aux utilisateurs de Linux, comme Windows et OS X; sans Canonical ou qui que ce soit d'autre "entre" l'auteur du logiciel et l'utilisateur final.

Si une application est fournie au format AppImage, un utilisateur peut accéder au site Web de l'auteur d'origine pour le télécharger, par exemple, MuseScore de https://musescore.org/fr/download . Rendez l’application AppImage exécutable (à l’aide de votre gestionnaire de fichiers ou de chmod a+x ./yourAppImage). Vous pouvez ensuite exécuter l’application simplement en double-cliquant dessus.

16
probono

Les images nécessitent le fusible pour fonctionner. Système de fichiers dans l'espace utilisateur (Fuse) est un système qui permet aux utilisateurs non root de monter des systèmes de fichiers.

Installer le fusible

De nombreuses distributions ont une configuration de fusible opérationnelle prête à l'emploi. Toutefois, 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

Se retirer

Si vous ne souhaitez pas installer Fuse, vous pouvez monter ou extraire AppImage.

Pour monter AppImage et exécuter l'application, exécutez simplement

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

Si cela ne fonctionne pas, vous pourriez avoir un expérimental type 2 AppImage . Pour cela, vous devez passer -o offset=... à la commande mount. Exécutez AppImage avec --appimage-offset pour trouver le numéro correct pour le décalage.

5
insign

Suivez les étapes ci-dessous:

  • Faites un clic droit sur la AppImage
  • Cliquez sur Propriétés
  • Cliquez sur les autorisations
  • Puis cliquez sur Autoriser l'exécution du fichier en tant que programme

Utilisation du terminal:

chmod u+x <appimage>

Vous pouvez en lire plus ici: https://citguru.hashnode.dev/heres-how-to-install-appimage-on-linux-cjwxozb1n003o1rs17epqop6g

0
Oyetoke Tobi