Abstract: Die NetBSD package collection (pkgsrc) stellt ein plattform- und
betriebssystemunabhängiges Werkzeug zur Verwaltung von Sourcen und
Binärpaketen für Anwendersoftware zur Verfügung. Wichtiger
Bestandteil
der Anwendersoftware ist ein bunter Strauß von Perl Modulen. Zum
Zeitpunkt des letzten Releases waren es 4822 einzelne Module, die
Tendenz zeigt einen stark zunehmenden Trend an.
Der Vortrag zeigt verschiedene Aspekte bei der Pflege der
Anwendersoftware im Umfeld Perl auf. So wird die Frage ob es neben
CPAN noch eine weitere Verwaltung für Perl Module geben sollte, von
mehreren Seiten beleuchtet. Da die Paketverwaltung pkgsrc mittlerweile
auf mehr als 14 Plattformen und Betriebssysteme portiert wurde und
dort auch aktiv verwandt wird, ergeben sich vollkommen neue Probleme,
die ein CPAN Modul nur teilweise abdecken kann. Besonders
hervorgehoben sind hier beispielsweise Anforderungen wie Executable
Flags für Libraries, Patches an Plattform Spezifika und weitere.
Zur Pflege der einzelnen Module und als Hilfestellung für den
einzelnen Maintainer wurde ein Tool mit dem Namen p2c implementiert.
Dieses Tool erstellt täglich eine Liste von Modulen, die einen
Versionsunterschied zwischen CPAN und dem pkgsrc System aufweisen. So
kann durch die Maintainer einfach erkannt werden, wann ein Modul
aktualisiert werden kann. Der Vortrag stellt dieses Werkzeug, welches
in Perl geschrieben wurde, im Detail vor und erläutert aufgetretende
Probleme bei der Implementierung. Diese liegen nicht nur im Detail,
beispielsweise dass das Auslesen der Versionsnummer eines Modules auf
verschiedene Weisen erfolgen kann, sondern können auch auf die Kultur
eines solchen Systems ihren Einfluss haben.
Ein weiterer Bestandteil des Vortrages ist die Zusammenarbeit mit den
Modul-Autoren aus der Sicht eines "Distributors" und die Erfahrungen,
die sich daraus ergeben haben.
Festzustellen bleibt, dass es mehr als einen Weg zur Implementierung
einer solchen Paketverwaltung gibt, there is more than one way to do
it.