[ zurück ] [ Inhalt ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ weiter ]

Anleitung für zukünftige Debian-Maintainer
Kapitel 6 - Andere Dateien unter debian/


Wie Sie sehen gibt es noch verschiedene weitere Dateien im "debian/"-Unterverzeichnis, von den die meisten mit dem `ex'-Suffix oder Präfix versehen sind, was bedeutet, dass es sich um Beispiele handelt. Schauen Sie sich alle an. Wenn Sie eines dieser Features unbedingt brauchen oder einfach so verwenden möchten:

Einige dieser Dateien, die am meisten benutzten, werden in den folgenden Abschnitten beschrieben.


6.1 README.Debian

Alle zusätzlichen Details und nennenswerte Unterschiede zwischen dem Original und ihrer "debianisierten" Version sollten hier dokumentiert werden.

dh_make erstellt eine Standardvorlage, die etwa so aussieht:

     gentoo for Debian
     -----------------
     
     <possible notes regarding this package - if none, delete this file>
     
     -- Josip Rodin <joy-mg@debian.org>, Wed, 11 Nov 1998 21:02:14 +0100

Da Sie nichts einzutragen haben, kann die Datei ruhig gelöscht werden.


6.2 conffiles.ex

Eine der ärgerlichsten Sachen bei Software ist es, wenn Sie richtig viel Zeit und Mühe in die Konfiguration eines Programms investieren, und schon das nächste Update ihre Konfigurationsdateien platt macht. Debian löst dieses Problem, in dem die Konfigurationsdateien markiert werden und der Administrator beim nächsten Paketupgrde gefragt wird, ob er seine Konfiguration behalten will oder nicht.

Zu markierende Konfigurationsdateien können Sie in die Datei `conffiles' eintragen, pro Zeile ein Dateiname mit dem vollständigen Pfad der Konfigurationsdatei (normalerweise in /etc/). Gentoo hat eine Konfigurationsdatei, /etc/gentoorc, also werden Sie diesen String in die Datei `conffiles' eintragen.

Wenn Ihr Programm Konfigurationsdateien nutzt, diese aber selbst zurückschreibt, ist es das Beste, diese nicht als conffiles zu kennzeichnen, weil sonst dpkg den Nutzer jedes Mal auffordert Änderungen zu bestätigen.

Wenn Ihr Programm, das Sie paketieren möchten, verlangt, dass der Nutzer die Konfigurationsdateien ändern muss, damit es überhaupt funktioniert, sollten Sie diese auch nicht als conffiles kennzeichnen.

Beispiel-Konfigurationsdateien können Sie durch `maintainer scripts' bereitstellen, siehe postinst.ex, preinst.ex, postrm.ex, prerm.ex, Abschnitt 6.12.

Wenn Ihr Programm keine Konfigurationsdateien braucht, kann die Datei `conffiles' aus dem Verzeichnis debian/ natürlich gelöscht werden.


6.3 cron.d.ex

Wenn Ihr Paket immer wiederkehrende Aufgaben erledigen muss, um ordentlich zu arbeiten, können Sie diese Datei benutzen um das einzurichten.

Beachten Sie, dass dies nicht die `log-rotation' einschließt, siehe dh_installlogrotate(1) und logrotate(8). (A.d.Ü: Ein Programm, mit dem man das unbegrenzte Wachstum der Log-Dateien verhindern kann.)

Wenn Sie das nicht brauchen, entfernen Sie die Datei.


6.4 dirs

In dieser Datei werden Verzeichnisse festgelegt, die Sie brauchen, aber von der Installationsprozedur (hier: "make install") nicht automatisch erstellt werden.

Die Vorlage sieht so aus:

     usr/bin
     usr/sbin

Beachten Sie, dass kein einleitender Schrägstrich dabei ist. Normalerweise würden wir das jetzt ins Folgende ändern:

     usr/bin
     usr/man/man1

Allerdings werden diese Verzeichnisse bereits durch das Makefile erstellt, also brauchen Sie die Datei `dirs' nicht und werden sie löschen.


6.5 docs

Diese Datei enthält die Namen der Dokumentations-Dateien, die dh_installdocs für Sie ins Unterverzeichnis debian/ installieren wird.

Standardmäßig schließt das alle Dateien im obersten Verzeichnis des Quellcode-Verzeichnisbaums ein, die da heißen "BUGS", "README*", "TODO" usw.

Für Gentoo fügen Sie noch Weiteres hinzu:

     BUGS
     CONFIG-CHANGES
     CREDITS
     ONEWS
     README
     README.gtkrc
     TODO

Sie können die Datei auch löschen und statt dessen die Dateinamen in die Kommandozeile von dh_installdocs in der Datei `rules', wie hier:

     dh_installdocs BUGS CONFIG-CHANGES CREDITS ONEWS README \
     	       README.gtkrc TODO

Sollten Sie keine dieser Dateien in Ihrem Paket haben, können Sie die Datei auch löschen. Aber löschen Sie nicht den Aufruf dh_installdocs in der Datei `rules', da dieser auch die `copyright'-Datei installiert und andere Dinge tut.


6.6 emacsen-*.ex

Wenn Ihr Paket Emacs-Dateien mitbringt, die während der Installation des Paketes kompiliert werden, sollten Sie diese Datei dafür nutzen.

Sie werden durch dh_installemacsen(1) im Unterverzeichnis installiert, vergessen Sie also nicht, diese Zeile in der Datei `rules' auszukommentieren, wenn Sie das benutzen.

Wenn Sie das nicht benötigen, löschen Sie die Datei.


6.7 init.d.ex

Wenn Ihr Paket einen Daemonen enthält, der zum System-Boot gestartet werden muss, haben Sie die anfänglichen Empfehlungen offensichtlich missachtet, stimmts? :-)

Es ist wirklich ein sehr allgemeines Grundgrüst für ein Skript, das in /etc/init.d/ installiert werden soll, es hat reichlich Anpassungsbedarf. Es wird durch dh_installinit(1) in das Unterverzeichnis installiert.

Wenn Sie das nicht benötigen, löschen Sie die Datei.


6.8 manpage.1.ex, manpage.sgml.ex

Ihr Programm sollte eine Manpage haben. Hat es keine, dann können Sie die erstellte Vorlage umbenennen und mit dem eigenen Text füllen.

Manual Seiten werden üblicherweise in nroff(1) geschrieben. Das Beispiel manpage.1.ex ist auch in nroff geschrieben. In den Manpages von man(7) finden Sie weitere Hinweise zur Erstellung von Man-Seiten.

Wenn Sie es andererseits bevorzugen in SGML anstatt nroff zu schreiben, können Sie die Datei `manpage.sgml.ex' benutzen. Dann müssen Sie Folgendes tun:

Vergessen Sie nicht, die Datei in `gentoo.sgml' umzubenennen!

Die endgültige Manpage-Datei sollte den Namen des Programms, das dokumentiert wird, erhalten. Deshalb ändern Sie den Namen von "manpage" nach "gentoo". Die Datei muss auch eine ".1" als erste Endung erhalten, d.h. es handelt sich um eine Manpage für ein Nutzer-Komando. Stellen Sie sicher, dass Sie die richtige Kategorie gewählt haben. Hier ist eine kurze Liste der Kategorien:

     Sektion |     Beschreibung     |     Anmerkungen
        1     Benutzerkomandos       Ausführbare Programme oder Skripte
        2     Systemaufrufe          Kernelfunktionen
        3     Bibliotheksaufrufe     Funktionen in System-Bibliotheken
        4     Spezielle Dateien      gewöhnlich in /dev
        5     Dateiformate und 
              Konventionen           z.B. das Format von /etc/passwd
        6     Spiele                 und ähnliche Programme
        7     Makropakete und 
              Konventionen           z.B. man(7), groff(7)
        8     Systemadministrations-
              befehle                in der Regel nur für root
        9     Kernelroutinen         [Nicht Standard]

Also bekommt unsere Manpage den Dateinamen `gentoo.1'. Für X Programme können Sie noch ein "x" anhängen, z.B. `gentoo.1x'. Im gentoo-Archiv gab es keine Manpage `gentoo.1', also hat der Autor eine geschrieben, mit Hilfe der Informationen aus dem Beispiel und aus der Dokumentation des Upstreams.


6.9 menu.ex

Benutzer von "X Window System" haben normalerweise einen Fenstermanager mit konfigurierbaren Menüs, aus dem die Programme gestartet werden. Wenn Sie das Debian-Paket menu installiert haben, wird eine Reihe Menü-Einträge für die installierten Programme automatisch hinzugefügt.

Standardmäßig erstellt dh_make die Datei menu so:

     ?package(gentoo):needs=X11|text|vc|wm section=Apps/see-menu-manual\
         title="gentoo" command="/usr/bin/gentoo"

Das erste Feld nach dem Doppelpunkt ist "needs" und bestimmt, welche Art der Benutzerschnittstelle das Programm braucht. Lassen Sie nur die zutreffende Option stehen, z.B. "text" oder "X11".

Das nächste ist "section", in welchem Menü und Untermenü der Eintrag später erscheinen soll. Die aktuelle Liste der Sektionen ist in: /usr/share/doc/debian-policy/menu-policy.html/ch2.html#s2.1 zu finden.

Das Feld "title" enthält den Namen des Programms. Der kann mit Großbuchstaben beginnen, sollte aber kurz gehalten werden.

Zuletzt das Feld "command", das den Kommandoaufruf zum Starten des Programms enthält.

Den Menü-Eintrag verändern wir also zum folgenden:

     ?package(gentoo): needs=X11 section=Apps/Tools title="Gentoo"\ 
         command="gentoo"

Sie können noch weiter Felder wie "longtitle", "icon", "hints" usw. hinzufügen. Siehe menufile(5), update-menus(1) und /usr/share/doc/debian-policy/menu-policy.html/ für mehr Infos.


6.10 watch.ex

Mit dieser Datei können Sie uscan(1)- und uupdate(1)-Programme (aus dem Paket devscripts) konfigurieren. Diese sind nützlich, um die Seite zu überwachen, von der Sie die Original-Quellen bezogen haben.

Folgendes könnten Sie da eintragen:

     # watch control file for uscan
     # Site		Directory	Pattern			Version	Script
     ftp.obsession.se	/gentoo		gentoo-(.*)\.tar\.gz	debian	uupdate

Hinweis: Wechseln Sie, wenn Sie die Datei einmal erstellt haben, mit einer bestehenden Internetverbindung in das Arbeitsverzeichnis und probieren Sie, "uscan" auszuführen. Und RTFM. :)


6.11 ex.package.doc-base

Hat Ihr Programm noch andere Dokumentationen, nicht nur Man- und Info-Seiten, so sollten Sie die Datei `doc-base' benutzen, um diese zu registrieren, damit der Benutzer sie mit Programmen wie dhelp(1), dwww(1) oder doccentral(1) finden kann.

Das schließt normalerweise HTML-, PS- und PDF-Dateien ein, die sich in /usr/share/doc/packagename/ befinden.

So könnte Gentoo's Datei `gentoo.doc-base' dann aussehen:

     Document: gentoo
     Title: Gentoo Manual
     Author: Emil Brink
     Abstract: This manual describes what Gentoo is, and how it can be used.
     Section: Apps/Tools
     
     Format: HTML
     Index: /usr/share/doc/gentoo/html/index.html
     Files: /usr/share/doc/gentoo/html/*.html

Informationen über das Format dieser Datei finden Sie in install-docs(8) und der Anleitung von doc-base in /usr/share/doc/doc-base/doc-base.html/.


6.12 postinst.ex, preinst.ex, postrm.ex, prerm.ex

Diese Dateien werden Maintainer-Skripte gennant. Das sind Skripte die im Kontrol-Bereich des Pakets liegen und von dpkg ausgeführt werden, und zwar, wenn Ihr Paket installiert, aktualisiert oder entfernt wird.

Vorerst sollten Sie aber von den Maintainer-Skripten die Finger lassen, weil die manuelle Bearbeitung schnell kompliziert werden kann. Mehr Informationen finden Sie in der Policy, Kapitel 6, und werfen Sie einen Blick auf die Beispiele von dh_make.


[ zurück ] [ Inhalt ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ weiter ]

Anleitung für zukünftige Debian-Maintainer

Version 1.2, 06. April 2002.

Josip Rodin joy-mg@debian.org
Übersetzer: Erik Schanze mail@erikschanze.de
Übersetzer: Eduard Bloch blade@debian.org