BEZEICHNUNG¶
deb-src-control - Dateiformat der Hauptsteuerdatei von Debian-Quellpaketen
ÜBERSICHT¶
control
BESCHREIBUNG¶
Jedes Debian-Quellpaket enhält die Hauptsteuerdatei »control«,
die mindestens zwei Absätze enthält, die durch eine Leerzeile
getrennt werden. Der erste Absatz führt alle allgemeinen Informationen
über das Quellpaket auf, während jeder folgende Absatz genau ein
Binärpaket beschreibt. Jeder Absatz besteht aus mindestens einem Feld.
Ein Feld beginnt mit einem Feldnamen, wie
Package oder
Section
(Groß-/Kleinschreibung egal), gefolgt von einem Doppelpunkt, dem Inhalt
des Feldes und einem Zeilenumbruch. Mehrzeilige Felder sind auch erlaubt, aber
jede ergänzende Zeile ohne Feldnamen sollte mit mindestens einem
Leerzeichen beginnen. Der Inhalt des mehrzeiligen Feldes wird durch die
Werkzeuge im Allgemeinen zu einer Zeile zusammengeführt (das Feld
Description ist eine Ausnahme, siehe unten). Um Leerzeilen in ein
mehrzeiliges Feld einzufügen, verwenden Sie einen Satzpunkt nach dem
Leerzeichen. Zeilen, die mit
»#« beginnen, werden als
Kommentare betrachtet.
QUELLPAKET-FELDER¶
- Source: Quellpaketname (verpflichtend)
- Der Wert dieses Feldes ist der Name des Quellpakets und
sollte mit dem Namen des Quellpakets in der Datei debian/changelog
übereinstimmen. Ein Paketname darf nur aus Kleinbuchstaben (a-z),
Ziffern (0-9), Plus- (+) und Minuszeichen (-) und Satzpunkten (.)
bestehen. Paketnamen müssen mindestens zwei Zeichen lang sein und mit
einem alphanumerischen Zeichen beginnen.
- Maintainer:
Vollständiger-Name-und-E-Mail (verpflichtend)
- Sollte in dem Format »Joe Bloggs
<jbloggs@foo.com>« sein und verweist auf die Person, die
derzeit das Paket betreut, im Gegensatz zum Autor der Software, die
paketiert wurde, oder dem ursprünglichen Paketierer.
- Uploaders:
Vollständiger-Name-und-E-Mail
- Listet die Namen und E-Mail-Adressen der Ko-Betreuer des
Pakets auf, im gleichen Format wie das Feld »Maintainer«.
Mehrere Ko-Betreuer sollten durch Kommata getrennt werden.
- Standards-Version: Versionszeichenkette
- Dies dokumentiert die neuste Version der Standards (die aus
dem Debian-Richtlinienhandbuch und den aus dem Paket debian-policy
referenzierten Texten besteht), an den sich das Paket hält.
- DM-Upload-Allowed: yes|no
- Dieses Feld gibt an, ob das Paket von einem
Debian-Betreuer, der im Feld »Maintainer« oder
»Uploader« auftaucht, hochgeladen werden kann. Der Standardwert
ist »no« (nein).
- Homepage: URL
- Die URL des Original- (Upstream-)Projekts.
- Bugs: URL
- Die URL der Fehlerdatenbank für dieses Paket.
Das derzeit verwendete Format ist
BTS-Art://BTS-Adresse wie in
debbugs://bugs.debian.org. Dieses Feld wird normalerweise nicht
benötigt.
- Vcs-*: URL
- Die URL des Versionskontrollsystem-Depots, das
für die Betreuung des Pakets verwandt wird. Derzeit werden
Arch, Bzr (Bazaar), Cvs, Darcs, Git,
Hg (Mercurial), Mtn (Monotone) und Svn (Subversion)
unterstützt. Normalerweise zeigt dieses Feld auf die neuste Version
des Pakets, wie den Hauptzweig oder den Trunk.
- Vcs-Browser: URL
- Die URL der Webschnittstelle, um das
Versionskontrollsystem-Depot anzuschauen.
- Origin: Name
- Der Name der Distribution, aus der dieses Paket
ursprünglich stammt. Dieses Feld wird normalerweise nicht
benötigt.
- Section: Bereich
- Dies ist ein allgemeines Feld, das dem Paket eine Kategorie
gibt, basierend auf der Software, die es installiert. Einige übliche
Bereiche sind »utils«, »net«, »mail«,
»text«, »x11« usw.
- Priority: Priorität
- Setzt die Bedeutung dieses Pakets in Bezug zu dem
Gesamtsystem. Übliche Prioritäten sind »required«,
»standard«, »optional«, »extra« usw.
In Debian haben die Section- und Priority-Felder einen
definierten Satz an akzeptierten Werten, basierend auf dem
Richtlinien-Handbuch. Eine Liste dieser Werte kann aus der neusten Version
des Pakets debian-policy erhalten werden.
- Build-Depends: Paketliste
- Eine Liste der Pakete, die installiert und konfiguriert
sein müssen, um das Quellpaket zu bauen. Die Aufnahme einer
Abhängigkeit in diese Liste hat den gleichen Effekt wie die Aufnahme
in Build-Depends-Arch und Build-Depends-Indep mit dem
zusätzlichen Effekt, dass es für reine Quellen-Bauten verwandt
wird.
- Build-Depends-Arch: Paketliste
- Identisch zu Build-Depends, wird aber nur zum Bau
der architekturabhängigen Pakete benötigt. In diesem Fall sind
die Build-Depends auch installiert. Dieses Feld wurde in Dpkg
Version 1.16.4 eingeführt; um mit älteren Dpkg-Versionen zu
bauen, sollte stattdessen Build-Depends verwandt werden.
- Build-Depends-Indep: Paketliste
- Identisch zu Build-Depends, wird aber nur zum Bau
der architekturunabhängigen Pakete benötigt. In diesem Fall sind
die Build-Depends auch installiert.
- Build-Conflicts: Paketliste
- Eine Liste von Paketen, die beim Bau des Pakets nicht
installiert sein sollten, beispielsweise da sie mit dem verwandten
Bausystem in Konflikt geraten. Die Aufnahme einer Abhängigkeit in
diese Liste hat den gleichen Effekt wie die Aufnahme in
Build-Conflicts-Arch und Build-Conflicts-Indep mit dem
zusätzlichen Effekt, dass es für reine Quellen-Bauten verwandt
wird.
- Build-Conflicts-Arch: Paketliste
- Identisch zu Build-Conflicts, aber nur beim Bau der
architekturabhängigen Pakete. Dieses Feld wurde in Dpkg Version
1.16.4 eingeführt; um mit älteren Dpkg-Versionen zu bauen,
sollte stattdessen Build-Conflicts verwandt werden.
- Build-Conflicts-Indep: Paketliste
- Identisch zu Build-Conflicts, wird aber nur zum Bau
der architekturunabhängigen Pakete benötigt.
Die Syntax der Felder
Build-Depends,
Build-Depends-Arch und
Build-Depends-Indep ist eine Liste von Gruppen von alternativen
Paketen. Jede Gruppe ist eine Liste von durch vertikale Striche (oder
»Pipe«-Symbole) »|« getrennten Paketen. Die Gruppen werden
durch Kommata getrennt. Kommata müssen als »UND«, vertikale
Striche als »ODER« gelesen werden, wobei die vertikalen Striche
stärker binden. Jeder Paketname wird optional gefolgt von einer
Versionsnummer-Spezifikation in Klammern und einer Architekturspezifikation in
eckigen Klammern.
Syntaxtisch werden die Felder
Build-Conflicts,
Build-Conflicts-Arch und
Build-Conflicts-Indep durch eine
Komma-separierte Liste von Paketnamen dargestellt, wobei das Komma als
»UND« verstanden wird. Die Angabe alternativer Pakete mit dem
»Pipe«-Symbol wird nicht unterstützt. Jedem Paketnamen folgt
optional eine Versionnummerangabe in Klammern und eine
Architekturspezifikation in eckigen Klammern.
Eine Versionsnummer kann mit »>>« beginnen, in diesem Falle
passen alle neueren Versionen, und kann die Debian-Paketrevision (getrennt
durch einen Bindestrich) enthalten oder auch nicht. Akzeptierte
Versionsbeziehungen sind »>>« für größer als,
»<<« für kleiner als, »>=« für
größer als oder identisch zu, »<=« für kleiner als
oder identisch zu und »=« für identisch zu.
Eine Architekturspezifikation besteht aus einer oder mehreren durch Leerzeichen
getrennten Architekturnamen. Jedem Namen darf ein Ausrufezeichen vorangestellt
werden, das »NICHT« bedeutet.
Beachten Sie, dass die Abhängigkeiten von Paketen aus der Menge der
build-essential entfallen kann und die Angabe von Baukonflikten gegen
sie nicht möglich ist. Eine Liste dieser Pakete befindet sich im Paket
build-essential.
BINÄRPAKET-FELDER¶
Beachten Sie, dass die Felder
Priority,
Section und
Homepage sich auch im Binärprogrammabsatz befinden können, um
die globalen Werte des Quellpakets zu überschreiben.
- Package: Binärpaketname
(verpflichtend)
- Dieses Feld wird zur Angabe des Binärpaketnamens
verwandt. Es gelten die gleichen Einschränkungen wie beim
Quellpaketnamen.
- Architecture: arch|all|any
(verpflichtend)
- Die Architektur gibt an, auf welcher Art von Hardware
dieses Paket läuft. Bei Paketen, die auf allen Architekturen laufen,
verwenden Sie den Wert any. Für Pakete, die
architekturunabhängig sind, wie Shell- und Perl-Skripte oder
Dokumentation, verwenden Sie den Wert all. Um das Paket für
einen bestimmten Satz von Architekturen zu begrenzen, geben Sie die durch
Leerzeichen getrennten Namen der Architekturen an. Es ist auch
möglich, Platzhalter für Architekturen in dieser Liste anzugeben
(lesen Sie dpkg-architecture(1) für weitere Informationen
dazu).
- Package-Type: deb|udeb
- Dieses Feld definiert die Art des Pakets. »udeb«
ist für größenbegrenzte Pakete, wie sie vom
Debian-Installer verwandt werden. »deb« ist der Standardwert, er
wird angenommen, falls das Feld fehlt. Weitere Typen könnten in der
Zukunft hinzugefügt werden.
- Subarchitecture: Wert
- Kernel-Version: Wert
- Installer-Menu-Item: Wert
- Diese Felder werden im Debian-Installer verwandt und werden
normalerweise nicht benötigt. Lesen Sie
/usr/share/doc/debian-installer/devel/modules.txt aus dem Paket
debian-installer für weitere Informationen über sie.
- Essential: yes|no
- Multi-Arch:
same|foreign|allowed
- Tag: Liste-von-Markierungen
- Description: Kurzbeschreibung
(verpflichtend)
- Diese Felder sind in der Handbuchseite
deb-control(5) beschrieben, da sie wörtlich in die Steuerdatei
des Binärpakets kopiert werden.
- Depends: Paketliste
- Pre-Depends: Paketliste
- Recommends: Paketliste
- Suggests: Paketliste
- Breaks: Paketliste
- Enhances: Paketliste
- Replaces: Paketliste
- Conflicts: Paketliste
- Provides: Paketliste
- Built-Using: Paketliste
-
Diese Felder deklarieren die Beziehungen zwischen Paketen. Sie werden in der
Handbuchseite deb-control(5) und im Paket debian-policy
beschrieben.
BENUTZERDEFINIERTE FELDER¶
Es ist erlaubt, zusätzliche benutzerdefinierte Felder zu der Steuerdatei
hinzuzufügen. Die Werkzeuge werden diese Felder ignorieren. Falls Sie
möchten, dass die Felder in die Ausgabedateien, wie z.B. die
Binärpakete, kopiert werden, müssen Sie ein angepasstes Namensschema
verwenden: Die Felder sollten mit einem X, gefolgt von einem oder mehr der
Buchstaben BCS und einem Gedankenstrich beginnen. Falls der Buchstabe B
benutzt wird, wird das Feld in der Steuerdatei des Binärpakets
auftauchen, siehe
deb-control(5), beim Buchstaben S in der
Quellpaketsteuerdatei wie sie von
dpkg-source(1) erstellt wird und beim
Buchstaben C in der hochgeladenen Datei control (.changes). Beachten Sie, dass
die X[BCS]-Vorsilben beim Kopieren in die Ausgabedateien entfernt werden. Ein
Feld
XC-Approved-By wird als
Approved-By in der Datei changes,
aber nicht in den Steuerdateien des Quell- und Binärpakets auftauchen.
Beachten Sie, dass diese Benutzer-definierten Felder den globalen Namensraum
nutzen werden und somit in der Zukunft mit offiziell erkannten Feldern
kollidieren könnten. Um solche möglichen Situationen zu vermeiden,
können Sie den Feldern
Private-, wie in
XB-Private-Neues-Feld, voranstellen. Als Seiteneffekt wird in diesem
Fall
dpkg-deb sie nicht mit der Warnung eines unbekannten Feldes
ausgeben.
BEISPIEL¶
# Kommentar
Source: dpkg
Section: admin
Priority: required
Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
# dieses Feld wird in das Binär- und Quellpaket kopiert
XBS-Upstream-Release-Status: stable
Homepage: http://wiki.debian.org/Teams/Dpkg
Vcs-Browser: http://git.debian.org/?p=dpkg/dpkg.git
Vcs-Git: git://git.debian.org/git/dpkg/dpkg.git
Standards-Version: 3.7.3
Build-Depends: pkg-config, debhelper (>= 4.1.81),
libselinux1-dev (>= 1.28-4) [!linux-any]
Package: dpkg-dev
Section: utils
Priority: optional
Architecture: all
# dies ist ein spezielles Feld im Binärpaket
XB-Mentoring-Contact: Raphael Hertzog <hertzog@debian.org>
Depends: dpkg (>= 1.14.6), perl5, perl-modules, cpio (>= 2.4.2-2),
bzip2, lzma, patch (>= 2.2-1), make, binutils, libtimedate-perl
Recommends: gcc | c-compiler, build-essential
Suggests: gnupg, debian-keyring
Conflicts: dpkg-cross (<< 2.0.0), devscripts (<< 2.10.26)
Replaces: manpages-pl (<= 20051117-1)
Description: Debian package development tools
This package provides the development tools (including dpkg-source)
required to unpack, build and upload Debian source packages.
.
Most Debian source packages will require additional tools to build;
for example, most packages need make and the C compiler gcc.
ÜBERSETZUNG¶
Die deutsche Übersetzung wurde 2004, 2006-2015 von Helge Kreutzmann
<debian@helgefjell.de>, 2007 von Florian Rehnisch <eixman@gmx.de>
und 2008 von Sven Joachim <svenjoac@gmx.de> angefertigt. Diese
Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public
License Version 2 oder neuer für die Kopierbedingungen. Es gibt KEINE
HAFTUNG.
SIEHE AUCH¶
deb-control(5),
deb-version(5),
dpkg-source(1)