Freitag, 31. Mai 2013

Package Management zum Ausprobieren

Wer mal ein bisschen mit dem gerade in Arbeit befindlichen Package Management (PM) rumspielen will, für den gibt es ein Test-Image zum Runterladen.

Vorsicht ist allerdings angeraten! Es handelt sich wirklich nur um ein Testsystem, das den gegenwärtigen Entwicklungsstand des PM zeigt. Es ist für den produktiven Einsatz nicht geeignet!

Um kein spezielles "makebootable" benutzen zu müssen, hab ich das Anyboot Image einfach auf einen USB-Stick dd'ed und den dann gebootet. Wer will kann das Testsystem dann ja per Installer auf eine Testpartition seiner Festplatte legen. [Edit: Den Installer darf man eben nicht benutzen, wie ich von Ingo erfahren habe, weil der noch nicht angepasst ist, würde der auch den Inhalt der Pakete tatsächlich ins Dateisystem schreiben. Also erst mal nur den USB-Stick booten...]
Meine dd-Kommandozeile war:

dd if=haiku-alpha-anyboot.image of=/dev/disk/usb/0/0/raw bs=1M

Den geneuen Pfad muss man natürlich anpassen. Hier ist wieder etwas Vorsicht angesagt, um nicht auf das falsche Gerät zuschreiben. Am besten trennt man vorher etwaige andere USB-Speichermedien...

Was einen nach dem Booten erwartet, sieht erstmal ganz gewöhnlich aus. In der Deskbar befinden sich die üblichen Menüs und Verknüpfungen zu den verschiedenen Programmen. So soll es ja auch sein, das PM soll für den Anwender ja möglichst transparent sein. Dass es sich um ein noch unvollständiges Testsystem handelt, hab ich erst mal nur gesehen, als ich gemerkt habe dass mein WLAN nicht funktionierte. Für einen kurzen Test ist das aber ja egal.

Wie einfach mittels PM Programme installiert und deinstalliert werden, kann man sehr schön so sehen:
Man öffnet im Tracker das Verzeichnis /boot/common/apps, in dem die gebundelten Anwendungen liegen, die nicht integraler Bestandteil von Haiku sind. Dann öffnet man das Verzeichnis /boot/common/packages, in dem die entsprechenden installierten Pakete liegen.
Nimmt man jetzt z. B. das Paket pe-2.4.3_hg602-3-x86_gcc2.hpkg und verschiebt es aus dem "packages" Verzeichnis beispielsweise auf den Desktop, verschwindet gleichzeitig das Verzeichnis "Pe" im Fenster "apps". Genauso schnell lässt sich Pe wieder installieren, indem man das Paket zurück verschiebt.

Das Ganze wird natürlich um einiges interessanter, wenn es um umfangreichere, meist von Linux portierte Pakete geht. Die haben ja die Tendenz alle möglichen Bibliotheken und andere Datenfutzel in diversen Verzeichnissen über die Festplatte zu verteilen. Hier ist das De/Installieren durch einfaches Verschieben einer Paketdatei sehr willkommen.
Eventuelle Konflikte, z. B. durch Bibliotheken unterschiedlicher Versionen, soll dabei ein Daemon im Hintergrund lösen. Der Benutzer soll davon möglichst nichts mitbekommen und nur in Ausnahmefällen belästigt werden, um beispielsweise dem Download von zusätzlich benötigten Paketen zuzustimmen. Ich glaube aber, das ist noch nicht vollständig implementiert. Zumindest konnte ich's aus Ermangelung entsprechender Pakete noch nicht ausprobieren. Pakete wie SDL oder Qt und die dafür geschriebenen Programme könnten da schöne Stresstests werden, könnte ich mir vorstellen. :)

Dieses Verteilen des Paketinhalts in die von der portierten Software erwarteten Verzeichnisse findet übrigens nur virtuell statt: Das packagefs gauckelt das nur vor, es wird also natürlich nicht wirklich jedesmal das Paket dekomprimiert und Dateien auf der Festplatte hin- und herkopiert.

Später wird es natürlich auch ein kleines GUI Tool geben, um alle verfügbaren/installierten Pakete bequem zu verwalten und online Repositories zu durchsuchen und die entsprechenden Pakete herunterzuladen etc. Aber dazu muss das Fundament natürlich erst mal perfekt funktionieren. Und dazu dienen ja die gerade laufenden spendenfinanzierten Vollzeitverträge.</zaunpfahl>

Mehr Informationen zum Packagemanagement findet man in dem entsprechenden PM-Wiki. Ich hoffe ich hab das Prinzip im Groben richtig verstanden und schreibe hier nicht zu viel Unsinn...

Keine Kommentare:

Kommentar veröffentlichen