[ zurück ] [ Copyright Hinweis ] [ Inhalt ] [ weiter ]

Anleitung für zukünftige Debian-Maintainer
Kapitel 3 Erste Schritte


Während die Dokumentation unter Developers corner nicht richtig erklärt, wo ein neuer Maintainer mit der Arbeit beginnen soll, wird dieses Dokument jeden kleinsten Schritt beschreiben (auch möglicherweise irrelevante Schritte), um ihnen bei der Erstellung zu helfen damit Sie etwas mehr Erfahrungen sammeln, die Sie bei anderen Paketen gebrauchen können.


3.1 Ein Programm wählen

Sie werden wahrscheinlich schon ein Programm ausgesucht haben, aber hier noch einige Hinweise für Sie als Erstmaintainer:

Natürlich sind die aufgeführten Punkte eher Sicherheitsmassnahmen und sollten Sie vor tobenden Benutzern schützen, falls ihr setuid-Daemon irgendwo mistbaut. Wenn Sie mehr Erfahrungen im Paketerstellen gesammelt haben, können Sie sich auch an solchen Paketen versuchen, aber selbst die erfahrensten Debian-Entwickler fragen schon mal in der debian-devel-Mailingliste, wenn sie irgendwo Zweifel haben. Und die Menschen dort helfen gern.

Für weitere Fragen konsultieren Sie die `Developer's Reference´.


3.2 Programm holen und ausprobieren

Als Erstes müssen Sie das Original-Paket des Programms finden und herunterladen. Ich nehme an, dass sie bereits die Quell-Dateien von der Homepage des Autors gezogen haben. Quellen der freien Linux-Programm kommen i.d.R. im tar/gzip-Format, mit der erweiterung .tar.gz, und enthalten üblicherweise ein Unterverzeichniss, genannt nach dem PROGRAMM-VERSION-Schema, das alle Quellcode-Dateien enthält. Kommt der Quellcode in einem anderen Archivtyp daher (z.B. wenn der Dateiname auf ".Z" oder ".zip" ender), entpacken Sie es mit den entsprechenden Tools oder fragen Sie in debian-menthors, wie man es richtig entpackt (Tip: `file archive.extension´ versuchen.)

Als Beispiel nehme ich hier das Programm namens `gentoo', ein X11/GTK+-Dateimanager. Das Programm ist bereits verpackt, und wurde wesentlich verändert seit dieser Text geschrieben wurde.

Erstellen Sie ein Verzeichniss in ihrem Heimverzeichniss, z.B. 'debian' oder 'deb' oder irgendwas anderes, was für Sie geeignet erscheint, etwa ~/gentoo/ in diesem Fall. Kopieren sie das heruntergeladene Archiv dorthin, und entpacken Sie es, z.B. mit `tar zxvf gentoo-0.9.12.tar.gz´. Vergewissern Sie sich, dass es keine Fehler beim Entpacken gab, nicht mal soz. `irrelevante´ Fehler, weil es auf anderen Systemen Probleme geben kann, wenn andere Entpacker bestimmte Anomalien nicht ignorieren.

Jetzt haben Sie ein neues Unterverzeichniss, 'gentoo-0.9.12'. Wechseln Sie dorthin und lesen Sie die mitgelieferte Dokumentation komplett durch. Meist sind es die Dateien mit Namen nach dem Schema README*, INSTALL*, *.lsm oder *.html. Sie müssen eine Anleitung finden, wie man das Programm richtig übersetzt und installiert (meistens wird von einer Installation in /usr/local/bin ausgegangen, aber das wollen wir nicht. Mehr dazu später in Installation in ein Unterverzeichnis, Abschnitt 4.1).

Der Prozess ist vom Programm zu Programm unterschiedlich, aber viele moderne Programme kommen mit einem `configure'-Skript, dass den Quellcode an die Systemumgebung anpasst. Nach dem Erfolgreien `konfigurieren´ mit `./configure' können die Programm mit `make´ kompiliert werden. Einige unterstützen auch `make check´, dass zusätzlche Selbsttests durchführt. Die Installation in die Zielverzeichnisse geschieht dann mit `make install´.

Versuchen Sie nun, das Programm zu kompilieren und stellen Sie sicher, dass es einwandfrei funktioniert und nichts anderes während der Installation oder der Ausführung kaputt macht.

Ebenfalls kann man oft `make uninstall` ausführen, dass die installierten Dateien entfernt, und `make clean´ (oder besser `make distclean`), um im aktuellen Arbeitsverzeichniss aufzuräumen.


3.3 Bevor man mit `dh_make' loslegt...

Sie sollten mit einem aufgeräumten oder besser frisch ausgepackten Quellcode-Verzeichniss anfangen.

Damit alles richtig funktioniert sollten Sie den ursprünglichen Namen in Kleinbuchstaben umwandeln. Ebenfalls sollten Sie den Namen zu <Paketname>-<Version> verändern.

Wenn der Programmname aus mehr als einem Wort besteht, machen Sie ein Wort oder eine Abkürzung verwenden. Zum Beispiel könnte man "John's little editor for X" in johnledx, oder jle4x umbennen, oder wie auch immer, solange die Länge in einem vernünftigen Rahmen von etwa 20 Zeichen bleibt.

Überprüfen Sie auch die exakte Versionsnummer des Programms, die als Versionsnummer des Pakets verwendet wird. Wenn dieses Stück Software keine Nummerierung nach dem Schema X.Y.Z, sondern nach dem Datum verwendet, können Sie dieses Datum mit davorstehenden "0.0" verwenden ("0.0" für den Fall, das sich der `upstream author´ dazu entschliesst, eine zukünftige Version mit 1.0 nummeriert). In diesem Fall bekommt ein Abzug vom 19. Dezember 1998 eine Versionsnummer wie 0.0.19981219. Einige Programme haben gar keine Versionsnummeriurung - in diesem Fall sollten Sie den `upstream maintainer´ kontaktieren und eine eindeutige Methode ausarbeiten.


3.4 `dh_make' ausführen

Wechseln Sie in das Quell-Verzeichniss des Programms und führen Sie folgendes aus:

       dh_make -e your.maintainer@address -f ../gentoo-0.9.12.tar.gz

Natürlich ersetzen Sie "your.maintainer@address" mit ihren eigenen E-Mail-Adresse für den Eintrag in changelog sowie andere Dateien, ebenfalls verwenden Sie den Dateinamen ihres Quell-Archivs. (Weitere Details in dh_make(1)).

Es werden einige Informationen angezeigt und Sie werden gefragt, welcher Art das Paket sein wird. Gentoo ist ein "single binary package" - es wird eine Binärdatei und ein .deb-Paket erstellt, also wählen wir die erste Option mit der `s´-Taste, überprüfen nochmal die Informationen und bestätigen mit <enter>. Als einem beginnenden Maintainer wird es davon abgeraten, mehrere Binär-Pakete (`multiple binary packages´) oder Bibliotheken (`libraries´) zu erstellen, wie es schon vorher erwähnt wurde, deswegen gehen ich hier nicht weiter darauf ein.

Beachten Sie, dass dh_make nur ein Mal ausgeführt wird und bei späteren Aufrufen nicht sauber funktionieren wird, wenn es im "debianisierten" Verzeichniss ausgeführt wird. Das bedeutet auch, dass Sie bei späteren Updates mit neueren Programm-Versionen anders vorgehen müssen, mehr dazu später in Weiterentwicklung des Pakets, Abschnitt 7.4.


[ zurück ] [ Copyright Hinweis ] [ Inhalt ] [ weiter ]
Anleitung für zukünftige Debian-Maintainer
Version 1.0.2, 10. Juni 2001.
Josip Rodin jrodin@jagor.srce.hr
Übersetzer: Eduard Bloch edi@ka.linux.de