Des applications portables pour Linux?

12

Poser cette question m'a fait réfléchir - existe-t-il des applications portables disponibles pour Linux? Je sais que de nombreux outils simples peuvent être exécutés de manière autonome, mais vais-je rencontrer des limitations de sécurité avec les distributions Linux courantes?

Compte tenu de la disponibilité des outils, etc. sur la plupart des systèmes Linux par défaut, y a-t-il même un besoin pour cela?

EDIT: Pour clarifier, je cherche des applications que je peux exécuter sur un système Linux existant - je ne veux pas transporter tout le système d'exploitation, si je ne le dois pas.

Andy Mikula
la source

Réponses:

7

La plupart des applications qui utilisent la chaîne d'outils GNU peuvent être construites à partir de sources comme ceci:

./configure --prefix=[directory which will contain your 'portable' application]
make
make install

puis déplacé vers un autre ordinateur avec des bibliothèques compatibles.

Linux n'a pas de registre de nombreuses applications n'ont généralement pas vraiment besoin d'être `` installées '', elles peuvent être construites à partir de la source, donc rendre "My Specialy Portable © applications pour Linux" est absolument inutile, donc je pense que personne ne s'en soucie.

Il suffit de regarder la réponse la plus élevée pour cette question et vous comprendrez ce concept stupide de rendre les applications «portables» «utiles» uniquement dans le monde des applications de registre et propriétaires avec gestion des licences.

Alex Bolotov
la source
Merci! Je n'étais pas sûr que c'était stupide avant, mais vous avez vraiment ramené ce point à la maison;)
Andy Mikula
5

L' ./configureastuce fonctionnera pour certaines applications. De nombreuses applications, cependant, codent le préfixe en elles-mêmes, puis l'utilisent au moment de l'exécution pour trouver les fichiers de prise en charge. Ils doivent également pouvoir charger leurs fichiers de bibliothèque partagée (bien que la LD_LIBRARY_PATHvariable d'environnement puisse être définie pour aider à cela). Le résultat de ceci, cependant, est que les applications portables ne seront probablement pas très portables - elles dépendront du préfixe spécifié. Cela fonctionnera probablement dans de nombreux endroits (la plupart des supports de montage de distributions modernes sur /media/DISKNAME), mais cela empêche l'application d'être vraiment portable et indépendante de l'emplacement.

La réponse nette est donc que la création d'applications Linux portables, bien que non impossible, est remplie de subtilités. Je soupçonne que c'est un facteur majeur qui explique pourquoi cela ne se fait pas autant que sur Windows. De plus, les installations informatiques publiques (d'où provient l'essentiel des avantages des applications portables) ne fonctionnent généralement pas sous Linux. Les laboratoires universitaires constituent une exception notable, mais vous pouvez généralement y installer des logiciels supplémentaires dans votre répertoire personnel.

Michael Ekstrand
la source
1

Linux for Travellers suit ce sujet et a plusieurs astuces pour contourner le fait qu'il n'y a pas (encore?) D'installations portables destinées à Linux - probablement pour la raison que vous avez mentionnée: si vous avez déjà des privilèges d'installation, l'ajout de nouvelles applications est assez facile pour ne pas avoir besoin d'utiliser vos portables.

  • Installez WINE et exécutez les applications depuis PortableApps.com ou ailleurs. Cela semble exagéré, mais cela vous permet d'utiliser une installation d'applications portables que vous avez déjà.
  • Exécutez Damn Small Linux dans votre installation Linux existante (par exemple sur Ubuntu ). Celui-ci est utile si vous ne disposez pas déjà de privilèges d'installation sur un système Linux donné.
quark
la source
1

Vous pouvez vérifier les applications Linux portables . Téléchargez simplement les binaires portables et rendez-les exécutables. toutes les dépendances nécessaires sont incluses dans le binaire.

utilisateur
la source
1

Pour rendre n'importe quelle application portable, vous pourriez être en mesure de créer des liens symboliques que vous placez dans le dossier d'accueil lorsque vous vous connectez; l'application enregistrera les préférences via le lien symbolique où qu'elle mène, par exemple le lecteur flash. Je l'ai utilisé pour les sauvegardes portables de Minecraft.

Andrew Wonnacott
la source
1

Le problème avec l'exécution d'applications sur les systèmes Linux existants est que souvent les applications sont compilées pour utiliser des bibliothèques partagées. Il existe de nombreuses distributions Linux et de nombreuses versions des bibliothèques de base. Si vous êtes chanceux, le système Linux existant aura les mêmes versions et votre application sera liée à la bonne version des bibliothèques. Sinon, cela ne fonctionnera pas. Une solution de contournement serait de compiler les applications dont vous avez besoin avec des bibliothèques liées statiquement, mais cela conduit à des tailles de programme beaucoup plus grandes.

vtest
la source
1

Un autre point de vue sur votre question est la notion de startups qui écrivent souvent une fois du code côté client puis exploitent des cadres pour faire le gros du travail de synthèse de clients pour iOS, Android et le Web. Ici, la logique métier est portable mais elle est automatiquement portée par cet outillage. Il existe de nombreux cadres de ce type, Meteor en est un.

De cette façon, une proportion importante de toutes les applications trouvées dans les magasins d'applications possède cet héritage portable.

Pour brouiller davantage cette idée, nous avons maintenant WebAssembly qui vous permet d'écrire le code de votre navigateur (qui est par définition javascript) dans un nombre croissant de langages côté serveur compilés statiquement et qui sont analysés pour synthétiser javascript pour cibler le client.

Vous posez des questions sur les applications linux mais avec des outils comme Electron qui est en fait une interface graphique ou une ligne de commande enroulée autour de nodejs, l'idée d'applications linux portables connaît une explosion de choix

Scott Stensland
la source
0

Il y a un nouveau joueur sur le terrain, AppImage . Les applications sont regroupées dans un fichier unique, avec toutes les dépendances incluses, de sorte qu'elles peuvent être exécutées quelle que soit la distribution sous-jacente.

Il existe un référentiel d'images d'applications sur AppImageHub .

DevSolar
la source