Tragbare Apps für Linux?

12

Als ich diese Frage stellte , dachte ich: Gibt es tragbare Apps für Linux? Ich weiß, dass viele einfache Tools eigenständig ausgeführt werden können, aber werde ich bei gängigen Linux-Distributionen auf Sicherheitsbeschränkungen stoßen?

Gibt es angesichts der Verfügbarkeit von Tools usw. auf den meisten Standard-Linux-Systemen überhaupt einen Bedarf dafür?

BEARBEITEN: Zur Verdeutlichung suche ich nach Apps, die ich auf einem vorhandenen Linux-System ausführen kann. Ich möchte nicht das gesamte Betriebssystem mit mir herumtragen, wenn ich nicht muss.

Andy Mikula
quelle

Antworten:

7

Die meisten Anwendungen, die die GNU-Toolkette verwenden, können aus folgenden Quellen erstellt werden:

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

und dann auf einen anderen Computer mit kompatiblen Bibliotheken verschoben.

Linux hat keine Registrierung Viele Anwendungen müssen normalerweise nicht wirklich "installiert" werden. Sie können stattdessen aus der Quelle erstellt werden. Daher ist es absolut sinnlos, "My Specialy Portable © -Anwendungen für Linux" zu erstellen. Ich denke, das interessiert niemanden.

Schauen Sie sich einfach die oberste Antwort auf diese Frage an und Sie werden verstehen, dass das blöde Konzept, Anwendungen "portabel" "nützlich" zu machen, nur in der Welt der Registrierung und proprietärer Anwendungen mit Lizenzverwaltung.

Alex Bolotov
quelle
Vielen Dank! Ich war mir vorher nicht sicher, ob es dumm war, aber du bist diesen Punkt wirklich nach Hause gefahren;)
Andy Mikula
5

Der ./configureTrick funktioniert für einige Anwendungen. Viele Anwendungen codieren das Präfix jedoch in sich selbst und verwenden es dann zur Laufzeit, um unterstützende Dateien zu finden. Sie müssen auch die Möglichkeit haben, ihre gemeinsam genutzten Bibliotheksdateien zu laden (obwohl die LD_LIBRARY_PATHUmgebungsvariable so eingestellt werden kann, dass sie dabei hilft). Dies hat jedoch zur Folge, dass die tragbaren Anwendungen wahrscheinlich nicht sehr portabel sind - sie hängen davon ab, ob sie das angegebene Präfix haben. Dies wird wahrscheinlich an vielen Orten funktionieren (die meisten modernen Distributionen laden Medien ein /media/DISKNAME), verhindert jedoch, dass die Anwendung wirklich portabel und ortsunabhängig ist.

Die Nettoantwort lautet daher, dass das Erstellen portabler Linux-Anwendungen zwar nicht unmöglich, aber voller Feinheiten ist. Ich vermute, dass dies ein wesentlicher Faktor dafür ist, warum es nicht so häufig gemacht wird wie unter Windows. Darüber hinaus wird in öffentlichen Computereinrichtungen (in denen der Großteil des Nutzens für tragbare Anwendungen anfällt) normalerweise kein Linux ausgeführt. Eine bemerkenswerte Ausnahme sind Universitätslabors, aber Sie können dort normalerweise zusätzliche Software in Ihrem Home-Verzeichnis installieren.

Michael Ekstrand
quelle
1

Linux for Travelers verfolgt dieses Thema und bietet verschiedene Tricks, um die Tatsache zu umgehen, dass (noch?) Keine tragbaren Apps für Linux installiert sind - wahrscheinlich aus dem von Ihnen genannten Grund: Wenn Sie bereits über Installationsrechte verfügen, ist das Hinzufügen neuer Anwendungen einfach genug Sie müssen Ihre tragbaren Geräte nicht verwenden.

  • Installieren Sie WINE und führen Sie die Apps von PortableApps.com oder anderswo aus. Dies scheint ein Overkill zu sein, aber Sie können damit eine bereits vorhandene Installation für tragbare Apps verwenden.
  • Führen Sie Damn Small Linux in Ihrer vorhandenen Linux-Installation aus (z . B. unter Ubuntu ). Dies ist nützlich , wenn Sie nicht bereits haben , installieren Sie Berechtigungen auf einem Linux - System gegeben.
Quark
quelle
1

Sie können Portable Linux Apps überprüfen . Laden Sie einfach tragbare Binärdateien herunter und machen Sie sie ausführbar. Alle erforderlichen Abhängigkeiten sind in der Binärdatei enthalten.

Nutzer
quelle
1

Um eine App portabel zu machen, können Sie möglicherweise Symlinks erstellen, die Sie beim Anmelden in den Home-Ordner legen. Die App speichert die Einstellungen über den Symlink zu dem Ort, an den sie führt, beispielsweise zum Flash-Laufwerk. Ich habe dies für tragbare Minecraft-Speicher verwendet.

Andrew Wonnacott
quelle
1

Das Problem beim Ausführen von Apps auf vorhandenen Linux-Systemen besteht darin, dass Apps häufig für die Verwendung gemeinsam genutzter Bibliotheken kompiliert werden. Es gibt viele Linux-Distributionen und viele Versionen von Basisbibliotheken. Wenn Sie Glück haben, hat das vorhandene Linux-System dieselben Versionen und Ihre App wird mit der richtigen Version der Bibliotheken verknüpft. Wenn nicht, wird es nicht funktionieren. Eine Problemumgehung wäre das Kompilieren der benötigten Apps mit statisch verknüpften Bibliotheken. Dies führt jedoch zu viel größeren Programmgrößen.

vtest
quelle
1

Eine andere Sichtweise auf Ihre Frage ist der Begriff der heutigen Startups, die häufig einmal clientseitigen Code schreiben und dann Frameworks nutzen, um die Synthese von Clients für iOS, Android und das Web zu vereinfachen. Hier ist die Geschäftslogik portabel, wird jedoch von diesem Tool automatisch portiert. Es gibt viele solcher Frameworks, Meteor ist eines.

Auf diese Weise hat ein erheblicher Teil aller in App Stores gefundenen Apps dieses tragbare Erbe.

Um diese Idee weiter zu verwischen, haben wir jetzt WebAssembly, mit der Sie Ihren Browsercode (der per Definition Javascript ist) in einer wachsenden Anzahl statisch kompilierter, traditionell serverseitiger Sprachen schreiben können, die analysiert werden, um Javascript für den Client zu synthetisieren.

Sie fragen nach Linux-Apps, aber mit Tools wie Electron, bei denen es sich effektiv um eine grafische Benutzeroberfläche oder eine Befehlszeile handelt, die um NodeJS gewickelt ist, erlebt die Idee von tragbaren Linux-Apps eine Explosion von Auswahlmöglichkeiten

Scott Stensland
quelle
0

Es gibt einen neuen Spieler auf dem Spielfeld, AppImage . Anwendungen werden als einzelne Datei gepackt, wobei alle Abhängigkeiten enthalten sind, sodass sie unabhängig von der zugrunde liegenden Verteilung ausgeführt werden können.

Bei AppImageHub gibt es ein Repository mit App-Bildern .

DevSolar
quelle