Autopackage war ein alternatives Linux-Softwareinstallationssystem. Ihr Zweck war eine einfache Installation von Software, unabhängig von der verwendeten Linux-Distribution. Sie sollte sowohl Nutzern als auch Entwicklern das Leben erleichtern, indem sie es ermöglicht, nur ein einziges Paket zu erzeugen, das sich vom Nutzer auf jedem beliebigen Linux-System mit einem Klick installieren und auch wieder löschen lässt. Durch die mögliche direkte Verbreitung von Software hat der Anwendungsanbieter mehr Kontrolle über Produktupgradezyklen. Es wurde von etablierten Open-Source-Projekten wie AbiWord, Inkscape oder Gajim erfolgreich eingesetzt.
Funktionsweise Autopackage selbst ist ein Shellskript, welches das zu installierende Programm beinhaltet. Bis auf die Bash ist kaum zusätzliche Software nötig. Sollte Autopackage auf dem System fehlen, wird das Programm automatisch heruntergeladen und installiert. Die Installation des Programmes ist skriptgesteuert und lässt sich dadurch flexibel anpassen und weiter automatisieren. Der Installationsprozess soll praktisch keine Benutzerinteraktion erfordern. Benutzern kann es auch erlaubt werden Pakete ohne Root-Passwort zu installieren. Abhängigkeiten werden automatisch und unabhängig von der eingesetzten Paketverwaltung des Stammsystems aufgelöst, heruntergeladen und installiert. Zur besseren Integration auf dem Linux-Desktop gibt es grafische Interfaces sowohl für Qt und GTK+, aber auch eine textbasierte Schnittstelle für Terminals.
Herausforderungen Autopackage unterliegt jedoch einigen Einschränkungen, besonders im Bereich der Binär-Kompatibilität des Linux-Ökosystems, weswegen seine Verbreitung überschaubar ist. Nach wie vor sind einige Probleme nur teilweise oder noch gar nicht gelöst. Zum Beispiel kann die Verwendung der Versionen 3.4 oder 4.0 des GNU-C++-Compilers zu früheren gcc-Versionen ABI-inkompatiblen Code erzeugen. Dieses Problem betrifft unter anderem das Qt-Toolkit, welches in C++ geschrieben ist.
Auch die Zusammenarbeit mit den Distributions-eigenen Paketverwaltungen klappt noch nicht immer reibungsfrei. So können installierte Pakete fälschlicherweise als eigene identifiziert und diese im Zuge von Veränderungen irrtümlich deinstalliert werden, da die jeweils andere Paketverwaltungssystem von dieser Deinstallation jedoch nichts mitbekommt wird angenommen, diese Pakete wären noch vorhanden und so kommt es in beiden Paketverwaltungen zu falschen Paketlisten.
Auch das Umplatzieren (Relocation) von Applikationen zwischen verschiedene Verzeichnissen ist in Linux nicht vorgesehen, Pfade werden typischerweise zur Compilezeit in der Anwendung hart-codiert. Die Autopackage-Bibliothek binreloc löst dieses Problem jedoch über die Bereitstellung von Funktionalität vergleichbar der Win32-API-Funktion GetModuleFilename() wodurch Verzeichnis relokierbare Anwendungen und Bibliotheken möglich werden.
Entwicklungsgeschichte Vision des 2002 von Mike Hearn gestarteten Projekts war auch eine Weiterentwicklung von Linux zu einer Desktop-Plattform. Technisch sollte dazu eine binärkompatible Plattform mit stabilen ABIs entstehen, ähnlich Windows oder Mac-OS, hierzu sollte mit der LSB kooperiert werden. Als weiterer Aspekt sollte ein Fokuswechsel stattfinden: Weg von den bereits gut ausgebauten „Corporate-Desktop“ Administrationswerkzeugen und Strukturen, hin zu den Desktopanwendern und deren Bedürfnis nach „Simplen Lösungen“. Damit einhergehen sollte eine schärfere Differenzierung zwischen Anwendungssoftware und Systemsoftware, wodurch differenziertere Sicherheitsmaßstäbe und Update-Zyklen angelegt werden könnten. Dieser weitgehende Ansatz wurde von vielen aus der Linux-Community kritisiert, besonders aus dem Umfeld der Distributionen.
2006 zeigte sich Hearn in einem Vortrag auf der Free Standard Group’s Packaging Summit Konferenz der Linux Foundation pessimistisch über die Chancen die großen Distributionen zur Kooperation bewegen zu können. Als Grund nannte er das Konkurrenzdenken der Distributionen untereinander, welches Weiterentwicklung in Richtung übergreifender Standards verhindere. Weiter kritisiert Hearn das vorherrschende Modell des Paketmanagements direkt als „überholt“ und „anti-demokratisch“:
Obwohl die meisten technischen Probleme gelöst wurden und auch einige namhafte Anwendungen Autopackage verwendeten, gelang es dem Projekt nicht, breiteren Zuspruch zu erringen. 2007 kam der Autor des Linux.com-Artikel Autopackage struggling to gain acceptance zu dem Schluss, dass eine mögliche, schmerzhafte Lehre des Autopackage-Projekts die scheinbare Unmöglichkeit größere Änderungen an der Infrastruktur des Linux-Ökosystems zu erreichen, sei. Projektinitiator Mike Hearn wechselte schließlich zu Google und gab die Projektführung von Autopackage ab.
2010 wurde das Projekt dann eingestelltThe end of Autopackage auf groups.google.com (November 2010, englisch), dazu wurde auf der Homepage auf Alternativ-Projekte verwiesen: Listaller, Zero Install, portablelinuxapps.org (heute AppImage.org) und das MojoSetup. Teile der Codebasis wurden vom Listaller-Projekt übernommen.Launchpad.net announcement: Listaller and Autopackage will merge
Ähnliche Softwareprojekte OpenPKG derzeit werden 1478 installierbare Softwarepakete angeboten PortableLinuxApps (Klik-Nachfolger)
Zero Install
Tabellarischer Vergleich der Autopackage-Eigenschaften mit anderen Ansätzen, Zeroinstall-Analyse, klik-Tabelle.
Weblinks
letzte Version der Projekt-Homepage vom 25. Juli 2011 (archiviert, englisch) autopackage auf Google Code (online, englisch) - Bibliothek des Autopackage-Projekt, erlaubt Verzeichnis-umplatzierbare Linuxanwendungen (archiviert, englisch) Luau-Projekt wird in Autopackage verwendet (englisch) Robin Miller: Interview mit Mike Hearn auf newsforge.com, 5. März 2003 (archiviert, englisch)
Einzelnachweise
Kategorie:Freie Installationssoftware Kategorie:Linux-Software