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

Anleitung für zukünftige Debian-Maintainer
Kapitel 7 Letzte Schritte


7.1 "Bau" des Pakets.

Wechseln Sie nun in das Verzeichniss des Programms und führen Sie das folgende Kommando aus:

       dpkg-buildpackage -rfakeroot

Das wird alles für Sie erledigen, Sie müssen nur noch zwei mal die PGP-Mantra eingeben. Anschliessend finden Sie vier neue Dateien im darüberliegenden Verzeichniss:

Bei einem grossen Paket wollen Sie bestimmt nicht alles nach jeder kleiner Änderung in debian/rules neu kompilieren. Für Testzwecke können Sie ein .deb erstellen, ohne alles Schritte durchmachen, z.B. so:

       fakeroot debian/rules binary

Vergewissern Sie sich nur, dass ihre `install'-Rule nie das untergeordnete Target `install-stamp' aufruft (ist heutzutage Normallfall), damit auch sichergestellt wird, dass `dh_clean -k` jedesmal aufgerufen wird. Und wenn irgendwann alles richtig funktioniert, führen Sie den kompleten build-Prozess nochmal aus, damit Sie korrekt uploaden können.


7.2 Überprüfung auf Fehler

Lassen Sie lintian(1) auf ihre .changes-Datei los; dieses Programm findet viele Fehler, die beim Paketerstellen häufig gemacht werden. Der Aufruf ist folgender:

       lintian -i gentoo_0.9.12-1_i386.changes

Den Dateinamen ersetzen Sie durch den Namen der changes-Datei ihres Pakets. Erscheinen bei der Überprüfung einige Fehler, (mit E: anfangende Zeilen), lesen Sie die Erklärung (die N:-Zeilen), korrigieren Sie die Fehler und erstellen Sie das Paket neu, wie in "Bau" des Pakets., Abschnitt 7.1 beschrieben wurde. Erscheinen nur Zeilen mit W: am Anfang, dann sind es nur Warnungen und Sie können davon ausgehen, dass ihr Paket in Ordnung ist und wahrscheinlich nur einige Verbesserungen braucht.

Noch ein Tip: Sie können dpkg-buildpackage und lintian auf einmal ausführen, mit dem Befehl debuild(1).

Betrachten Sie nun den Inhalt des Pakets mit einem Dateimanager wie mc(1) oder entpacken Sie es temporär mit Hilfe von dpkg-deb(1). Halten Sie Ausschau nach unnötigen Dateien im Quellcode und im Binär-Paket, für den Fall das etwas schief ging oder irgendwelcher Scrott beim "clean" übrig geblieben ist. Tips: `zgrep ^+++ ../gentoo_0.9.12-1.diff.gz` erzeugt eine Liste der neuen und veränderten Dateien im Quellcode, und `dpkg-deb -c gentoo_0.9.12-1_i386.deb` listet die im Paket enthaltenen Dateien auf.

Installieren Sie das Paket nun selbst, z.B. mit dem Kommando debi(1) als root. Versuchen Sie jetzt, das Paket auf anderen Rechnern zu installieren und das Programm laufen zu lassen, passen Sie dabei auf Warnungen und Fehlermeldungen bei der Installation und Ausführung auf.

Später, wenn Sie eine neue Version des Pakets erstellen, sollten Sie folgende Schritte durchführen, um die Upgrade-Kompabilität zu überprüfen:


7.3 Upload des Pakets

Nun, nach dem Sie das Paket ausreichend getestet haben, sollten Sie die Paketdateien auf master.debian.org uploaden, z.B. mit Hilfe von dupload(1). Zunächst müssen Sie duploads Konfigurationsdatei ~/.dupload.conf erstellen. Schreiben Sie etwas wie folgendes dort rein:

       package config;
       $default_host = "master";
       
       $cfg{"master"}{"method"} = "scpb";
       $cfg{"master"}{"login"} = "joy";
       $cfg{"master"}{"visibleuser"} = "jrodin";
       $cfg{"master"}{"visiblename"} = "jagor.srce.hr";
       $cfg{"master"}{"fullname"} = "Josip Rodin";
       
       $cfg{"non-us"}{"method"} = "scpb";
       $cfg{"non-us"}{"login"} = "joy";
       $cfg{"non-us"}{"visibleuser"} = "jrodin";
       $cfg{"non-us"}{"visiblename"} = "jagor.srce.hr";
       $cfg{"non-us"}{"fullname"} = "Josip Rodin";
       
       1;

Angaben zu meiner Person ersetzen Sie natürlich durch ihre eigenen, und lesen Sie die Manpage für dupload.conf(5) um die einzelnen Optionen zu verstehen.

Bauen Sie eine Verbindung zu ihrem Internet-Provider auf, und führen Sie dieses Kommando aus:

       dupload --to master gentoo_0.9.12-1_i386.changes

Dupload vergleicht die md5-Prüfsummen mit denen aus der changes-Datei und weisst Sie ggf. an, das Paket neu zu "bauen", wie unter "Bau" des Pakets., Abschnitt 7.1 bereits beschrieben.

Dupload fragt nach ihrem Passwort auf master.debian.org, lädt die Pakete hoch und schickt eine kurze Info-Mail über ihren Upload an debian-devel-changes@lists.debian.org, falls erforderlich.

Wenn Sie in Europa wohnen, dann können Sie auch andere Upload-Stellen anstelle von Master benutzen. Mehr darüber in dupload(1), dupload.conf(5) und der "Developer's Reference".


7.4 Weiterentwicklung des Pakets

Nehmen wir mal an, es wurde ein Bug-Report(#54321) erstellt wurde, und er beschreibt ein Problem, das Sie lösen können. Um eine neue Revision zu erstellen brauchen Sie folgendes zu tun:

Betrachten wir jetzt eine andere, etwas kompliziertere Situation - eine neue Upstream-Version wurde freigegeben, und Sie wollen sie natürlich gleich übernehmen. Sie können nun folgendes tun:

Übrigens können Sie, vorausgesetzt Sie haben `debian/watch' wie in watch.ex, Abschnitt 6.6 aufgesetzt, durch Ausführung von uscan(1) "automagisch" nach aktuellem Quellcode suchen, herunterladen und "uupdate" durchführen.


7.5 Wo kriegt man Hilfe?

Bevor Sie sich dazu entschliessen, ihre Frage irgendwo zu veröffentlichen, versuchen Sie es doch einfach mal zuerst mit RTFM. Dazu gehört Dokumentation in /usr/share/doc/dpkg, /usr/share/doc/debian, /usr/share/doc/package/*-Dateien und die man/info-Seiten für alle Programme, die in diesem Artikel erwähnt wurden. Wenn Sie ein Bug-Report erhalten (ja, richtige Bug-Reports!), dann wissen Sie auch, dass es an der Zeit ist, sich näher mit der Fehlerdatenbank Fehlerdatenbank zu beschäftigen, d.h. die Doku dort zu lesen, um mit den Reports effizient umgehen zu können.

Durch das Beitreten der "Debian Mentors"-Mailing-Liste über debian-mentors@lists.debian.org kommen Sie in Kontakt mit erfahrenen Debian-Entwicklern, die ihnen mit potentiellen Fragen helfen können. Sie können die Liste über Mail zu debian-mentors-request@lists.debian.org abonnieren, mit dem Wort `subscribe' im Betreff der Nachricht.

Wenn Sie dann immer noch Fragen haben, stellen Sie diese auf der "Debian Developers"-Mailing-Liste über debian-devel@lists.debian.org. Sie können die Liste über Mail zu debian-devel-request@lists.debian.org abonnieren, mit dem Wort `subscribe' im Betreff der Nachricht. Wenn Sie bereits ein Debian-Entwickler sind, sollten Sie sowieso abonnieren.

Auch wenn alles richtig funktioniert hat, ist es jetzt Zeit für ein Gebet. Warum? Weil in wenigen Stunden (oder Tagen) die Benutzer aus aller Welt ihr Paket benutzen werden - und da Sie irgendwo kritische Fehler gemacht haben, werden Sie von Tausenden von verärgerten Debian-Benutzern zugemailt... Nur ein Scherz. :-)

Entspannen sie Sich und machen Sie sich gefasst auf Bug-Meldungen, da i.d.R. noch viel Arbeit zu erledigen ist, bis alles den "Debian policies" vollständig entspricht (und noch einmal: lesen Sie in der richtigen Doku über Details). Viel Glück!


[ zurück ] [ Copyright Hinweis ] [ Inhalt ]
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