deb-substvars - Ersetzungsvariablen in Debian-Quellen
debian/substvars,
debian/binary-package.substvars,
Variablen
Bevor
dpkg-source,
dpkg-gencontrol und
dpkg-genchanges ihre
Steuerinformationen (zu der Quell-
control-Datei
.dsc für
dpkg-source und in die Standardausgabe für
dpkg-gencontrol und
dpkg-genchanges) schreiben, führen
sie einige Variablenersetzungen in der Ausgabedatei durch.
Eine Variablenersetzung hat die Form
${Variablenname}.
Variablennamen bestehen aus alphanumerischen Zeichen (a-zA-Z0-9, womit sie
auch beginnen), Bindestrichen (-) und Doppelpunkten (:). Bei Variablennamen
ist die Klein-/Großschreibung relevant, auch wenn sie sich auf Gebilde
beziehen, die die Klein-/Großschreibung erhalten. Variablenersetzungen
werden wiederholt durchgeführt, bis keine übrig geblieben sind;
der komplette Text des Feldes nach der Ersetzung wird erneut auf weitere
Ersetzungen geprüft.
Ersetzungsvariablen können in einer Datei festgelegt werden. Diese
Dateien bestehen aus Zeilen der Form
Name=Wert oder
Name ?=Wert. Der Operator
= weist eine normale
Ersetzungsvariable zu, während der Operator
?= (seit Dpkg
1.21.8) eine optionale Ersetzungsvariable zuweist, die keine Warnungen
ausgibt, selbst wenn sie nicht verwandt wird. Leerraumzeichen am Zeilenende,
leere Zeilen und Zeilen, die mit dem
#-Symbol starten (Kommentare)
werden ignoriert.
Variablen können über die allgemeine Option
-V gesetzt
werden. Sie können auch in der
debian/substvars (bzw. in der
über die allgemeine Option
-T gesetzten Datei) angegeben werden.
Nachdem alle Ersetzungen erfolgt sind, wird jedes Auftreten der Zeichenkette
${} (die keine tatsächliche Ersetzungsvariable ist) durch das
$-Zeichen ersetzt. Dies kann als Maskiersequenz wie in
${}{VARIABLE } verwandt werden, was dann zu
${VARIABLE } in der Ausgabe wird.
Falls auf eine Variable Bezug genommen wird, diese aber nicht definiert ist,
wird es eine Warnung erstellen und ein leerer Wert wird angenommen.
Obwohl die Variablenersetzung bei allen Feldern der
control-Datei
vorgenommen wird, werden einige dieser Felder während des Bauens
benötigt und verwendet, wenn die Ersetzung noch nicht erfolgt ist.
Daher können Sie Variablen nicht in den Feldern
Package,
Source und
Architecture verwenden.
Variablenersetzung erfolgt am Inhalt der Felder, nachdem sie ausgewertet wurden.
Falls Sie eine Variable über mehrere Zeilen expandieren möchten,
müssen Sie nach dem Zeilenumbruch daher kein Leerzeichen
einfügen. Dies passiert bei der Ausgabe des Feldes implizit. Ist
beispielsweise die Variable
${Description} auf „foo ist
bar.${Newline}foo ist super.“ gesetzt und Sie haben das folgende Feld:
Description: Anwendung foo
${Description}
.
Weiterer Text.
Dann wird dies zu Folgenden führen:
Description: Anwendung foo
foo ist bar.
foo ist super.
.
Weiterer Text.
Zusätzlich sind die folgenden Standardvariablen immer verfügbar:
- Arch
- Die aktuelle Host-Architektur (d.h. die Architektur,
für die das Paket gebaut wird, das Äquivalent zu
DEB_HOST_ARCH).
- vendor:Name
- Der aktuelle Lieferantenname (seit Dpkg 1.20.0). Dieser
Wert stammt aus dem Feld Vendor aus der Datei
»origin« des Lieferanten, wie dies von dpkg-vendor(1)
ermittelt würde.
- vendor:Id
- Die aktuelle Lieferantenkennzeichnung (seit Dpkg 1.20.0).
Die ist lediglich vendor:Name in Kleinbuchstaben.
- source:Version
- Die Quellpaketversion (seit Dpkg 1.13.19).
- source:Upstream-Version
- Die Paketversion der Originalautoren, einschließlich
der Epoche der Debian-Version, falls vorhanden (seit Dpkg 1.13.19).
- binary:Version
- Die Binärpaketversion (die z.B. in einem binNMU von
source:Version abweichen kann; seit Dpkg 1.13.19).
- Source-Version
- Die Quellpaketversion (aus der Changelog-Datei). Diese
Variable ist jetzt veraltet und gibt bei der Benutzung einen Fehler
aus, da ihre Bedeutung von ihrer Funktion abweicht, bitte verwenden Sie
source:Version oder binary:Version wo zutreffend.
- source:Synopsis
- Die Quellpaketzusammenfassung, aus dem Feld
Description des Quellabsatzes entnommen, falls dieses existiert
(seit Dpkg 1.19.0).
- source:Extended-Description
- Die erweiterte Quellpaketbeschreibung, aus dem Feld
Description des Quellabsatzes entnommen, falls dieses existiert
(seit Dpkg 1.19.0).
- Installed-Size
- Die ungefähre Gesamtgröße der vom
Paket installierten Dateien. Dieser Wert wird in das entsprechende Feld
der control-Datei kopiert; wird es gesetzt, verändert es den
Wert dieses Feldes. Falls diese Variable nicht gesetzt ist, wird
dpkg-gencontrol den Vorgabewert berechnen, indem es die
Größen jeder regulären Datei und jedes Symlinks
(gerundet auf 1 KiB) aufaddiert und einen Grundwert von 1 KiB für
aller anderen Dateisystemobjekttypen verwendet. Dabei werden Hardlinks nur
einmalig als reguläre Dateien gezählt.
Hinweis: Beachten Sie, dass dies stets nur ein Schätzwert
sein kann, da die tatsächliche Größe im installierten
System stark vom verwandten Dateisystem und seinen Parametern
abhängt. Daher kann es am Ende mehr oder weniger als in diesem Feld
angegebenen Platz belegen.
- Extra-Size
- Zusätzlicher Plattenplatz, der verwendet wird, wenn
das Paket installiert ist. Falls diese Variable gesetzt ist, wird dieser
Wert zu der Variablen Installed-Size hinzuaddiert (egal ob sie
explizit gesetzt oder der Standardwert verwendet wird), bevor sie in das
Feld Installed-Size der control-Datei kopiert wird.
-
S:Feldname
- Der Wert des Quellpaket-Absatzfeldes Feldname (der
in der kanonischen Groß-/Kleinschreibung angegeben werden muss;
seit Dpkg 1.18.11). Das Setzen dieser Variablen hat nur an den Stellen
einen Effekt, wo diese explizit expandiert werden. Diese Variablen sind
nur bei der Erstellung der binären Steuerdatei
verfügbar.
-
F:Feldname
- Der Wert des Ausgabefeldes Feldname (der in der
kanonischen Groß-/Kleinschreibung angegeben werden muss). Das
Setzen dieser Variablen hat nur einen Effekt an den Stellen, wo diese
explizit expandiert werden.
- Format
- Die Formatversion der .changes-Datei, die von dieser
Version der Quellpaketierskripte erstellt wird. Falls Sie diese Variable
setzen, werden die Inhalte des Format-Feldes in der
.changes-Datei auch geändert.
-
Newline, Space, Tab
- Diese Variablen enthalten das jeweils korrespondiere
Zeichen ( Zeilenumbruch, Leerzeichen und Tabulator in
dieser Reihenfolge).
-
shlibs:dependencyfield
- Variableneinstellungen mit Namen dieser Form werden von
dpkg-shlibdeps erstellt.
- dpkg:Upstream-Version
- Die Original- (Upstream-)Version von Dpkg (seit Dpkg
1.13.19).
- dpkg:Version
- Die komplette Version von Dpkg (seit Dpkg 1.13.19).
- debian/substvars
- Liste von Ersetzungsvariablen und -werten.
dpkg(1),
dpkg-vendor(1),
dpkg-genchanges(1),
dpkg-gencontrol(1),
dpkg-shlibdeps(1),
dpkg-source(1).
Die deutsche Übersetzung wurde 2004, 2006-2023 von Helge Kreutzmann
<
[email protected]>, 2007 von Florian Rehnisch <
[email protected]>
und 2008 von Sven Joachim <
[email protected]> 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.