Fast jeder kennt die Portable Apps für Windows und den Mac.
Unter Linux gibt / gab es mit klik und anderen Varianten ähnliche Versuche, die allerdings beinahe alle nicht mehr aktuell sind. Ich habe mich mal drangesetzt und ein bisschen herumexperimentiert mit zunächst statisch gelinkten Programmen und versucht diese "portable" zu machen.
Das erste was mir da in den Sinn kam ist der vor kurzem erschienene Firefox Browser in der Version 3.6.
Da ich nunmal ein User eines auf Ubuntu basierenden Systems bin und ich normalerweise Software sehr gerne ausprobiere bevor ich sie dann direkt installiere, wollte ich den Firefox mal ausprobieren und hab mir das Tarball von der offiziellen Seite geschnappt und dann mal in mein Home Verzeichnis ausgepackt.
Zum Testen dachte ich mir wäre es vielleicht klug, dass es seine config nicht über mein aktuelles .mozilla Profilverzeichnis kopiert und habe es mit einer kleinen aber feinen Umgebungsvariable dazugebracht einen temporären Ordner für das Speichern von Konfigurationen zu verwenden.
Zusammen mit dieser Idee hab ich mich dann rangesetzt und eine 1 Click ausführbare Firefox Datei geschrieben, die den Browser in ein temporäres Verzeichnis kopiert und von dort ausführt. Die bisherige Config bleibt dabei unberührt und alle Daten die dieser Firefox speichert landen im /tmp Verzeichnis. Falls der Browser geschlossen wird entfernt er natürlich richtigerweise die angefallenen Sitzungsdaten und den angelegten temporären Ordner in /tmp .
Ich denke das ist eine recht elegante Methode um Programme die statisch gelinkt sind zu testen ohne viel Aufwand zu verschwenden.(also alle Mozilla Applikationen z.B. Skype, Opera usw. sollten auch klappen) Einzige Abhängigkeit neben den normalen Firefox Abhängigkeiten ist GNU Tar mit der Möglichkeit bzip2 Archive zu entpacken (alle aktuellen Distris können das).
In Zukunft könnte ich mir vorstellen auch eine Option anzubieten die das im home Ordner gespeicherte Mozilla Profil übernimmt, um z.B. Extensions auf ihre Tauglichkeit mit der neuen Software zu testen, ohne dass Veränderungen dort direkt hineingeschrieben werden. Dies wäre mit Hilfe von UnionFS elegant realisierbar. Nicht immer ganz Narrensicher dafür auch möglich (man nimmt einen kleinen Zeitverlust in Kauf) man dupliziert das Mozilla Profil und löscht die Kopie falls gewollt nach der Sitzung.
Zum Testen und ausprobieren habe ich auch eine nicht statische Software ausprobiert, wie Transmission 1.82, dass es derzeit nicht in den Repos von Ubuntu weder Karmic noch Lucid gibt. Es funktioniert unter einem normalen Ubuntu, dass bereits alle Abhängigkeiten von Transmission erfüllt sehr gut auf die gleiche Art und Weise wie der Firefox. Die Portierbarkeit auf Systeme die die Abhängigkeiten aber nicht erfüllen ist erwartungsgemäß gering. Hier müssten wahrscheinlich die aus Klik und anderen Projekten entstandenen Ideen umgesetzt werden um solche Probleme auf den Zahn zu fühlen. Aber das will ich so weit wie möglich umgehen, indem ich die Software speziell für einen Linux Distributionsreigen anpasse. Da die meisten Linux Distris derzeit eh beinahe immer alle die gleichen Systemlibraries benutzen würde das auch (theoretisch) gehen. Doppelte Libraries die zum einen mitgeliefert werden und zum anderen auch im System evtl. vorhanden sind stören zwar etwas mein Gemüt, währen aber verkraftbar.
Download des Firefox Scripts gibts hier: Download (9.5 MB)
Update: Download des Thunderbird Scripts : Download (10 MB)
Anweisung um es laufen zu lassen. Einfach ausführen. (Ausführbar muss es evtl. gemacht werden)
Hier ein Video, dass das ganze nochmal anschaulich zeigt und erklärt:
Was haltet ihr von der Idee von Portable Apps unter Linux (respektive der Ubuntu/Debian Distribution) ?
Unter Linux gibt / gab es mit klik und anderen Varianten ähnliche Versuche, die allerdings beinahe alle nicht mehr aktuell sind. Ich habe mich mal drangesetzt und ein bisschen herumexperimentiert mit zunächst statisch gelinkten Programmen und versucht diese "portable" zu machen.
Das erste was mir da in den Sinn kam ist der vor kurzem erschienene Firefox Browser in der Version 3.6.
Da ich nunmal ein User eines auf Ubuntu basierenden Systems bin und ich normalerweise Software sehr gerne ausprobiere bevor ich sie dann direkt installiere, wollte ich den Firefox mal ausprobieren und hab mir das Tarball von der offiziellen Seite geschnappt und dann mal in mein Home Verzeichnis ausgepackt.
Zum Testen dachte ich mir wäre es vielleicht klug, dass es seine config nicht über mein aktuelles .mozilla Profilverzeichnis kopiert und habe es mit einer kleinen aber feinen Umgebungsvariable dazugebracht einen temporären Ordner für das Speichern von Konfigurationen zu verwenden.
Zusammen mit dieser Idee hab ich mich dann rangesetzt und eine 1 Click ausführbare Firefox Datei geschrieben, die den Browser in ein temporäres Verzeichnis kopiert und von dort ausführt. Die bisherige Config bleibt dabei unberührt und alle Daten die dieser Firefox speichert landen im /tmp Verzeichnis. Falls der Browser geschlossen wird entfernt er natürlich richtigerweise die angefallenen Sitzungsdaten und den angelegten temporären Ordner in /tmp .
Ich denke das ist eine recht elegante Methode um Programme die statisch gelinkt sind zu testen ohne viel Aufwand zu verschwenden.(also alle Mozilla Applikationen z.B. Skype, Opera usw. sollten auch klappen) Einzige Abhängigkeit neben den normalen Firefox Abhängigkeiten ist GNU Tar mit der Möglichkeit bzip2 Archive zu entpacken (alle aktuellen Distris können das).
In Zukunft könnte ich mir vorstellen auch eine Option anzubieten die das im home Ordner gespeicherte Mozilla Profil übernimmt, um z.B. Extensions auf ihre Tauglichkeit mit der neuen Software zu testen, ohne dass Veränderungen dort direkt hineingeschrieben werden. Dies wäre mit Hilfe von UnionFS elegant realisierbar. Nicht immer ganz Narrensicher dafür auch möglich (man nimmt einen kleinen Zeitverlust in Kauf) man dupliziert das Mozilla Profil und löscht die Kopie falls gewollt nach der Sitzung.
Zum Testen und ausprobieren habe ich auch eine nicht statische Software ausprobiert, wie Transmission 1.82, dass es derzeit nicht in den Repos von Ubuntu weder Karmic noch Lucid gibt. Es funktioniert unter einem normalen Ubuntu, dass bereits alle Abhängigkeiten von Transmission erfüllt sehr gut auf die gleiche Art und Weise wie der Firefox. Die Portierbarkeit auf Systeme die die Abhängigkeiten aber nicht erfüllen ist erwartungsgemäß gering. Hier müssten wahrscheinlich die aus Klik und anderen Projekten entstandenen Ideen umgesetzt werden um solche Probleme auf den Zahn zu fühlen. Aber das will ich so weit wie möglich umgehen, indem ich die Software speziell für einen Linux Distributionsreigen anpasse. Da die meisten Linux Distris derzeit eh beinahe immer alle die gleichen Systemlibraries benutzen würde das auch (theoretisch) gehen. Doppelte Libraries die zum einen mitgeliefert werden und zum anderen auch im System evtl. vorhanden sind stören zwar etwas mein Gemüt, währen aber verkraftbar.
Download des Firefox Scripts gibts hier: Download (9.5 MB)
Update: Download des Thunderbird Scripts : Download (10 MB)
Anweisung um es laufen zu lassen. Einfach ausführen. (Ausführbar muss es evtl. gemacht werden)
Hier ein Video, dass das ganze nochmal anschaulich zeigt und erklärt:
Was haltet ihr von der Idee von Portable Apps unter Linux (respektive der Ubuntu/Debian Distribution) ?
1 Kommentare:
http://portablelinuxapps.org/
Kommentar veröffentlichen