Provided by: dpkg-dev_1.19.7ubuntu3.2_all 

NAAM
deb-control - Indeling van het hoofdcontrolebestand van de Debian binaire pakketten
OVERZICHT
control
BESCHRIJVING
Elk Debian binair pakket bevat een hoofdcontrolebestand control, dat uit een aantal velden bestaat. Ieder
veld begint met een markering, zoals Package of Version (niet hoofdlettergevoelig), gevolgd door een
dubbele punt en de tekstinhoud van het veld. Velden worden enkel door veldmarkeringen begrensd. De
tekstinhoud van het veld kan met andere woorden verschillende regels lang zijn, maar de
installatiegereedschappen zullen bij het verwerken van de tekstinhoud de regels gewoonlijk samenvoegen
(behalve voor het veld Description; zie hierna)
VELDEN
Package: pakketnaam (verplicht)
De waarde van dit veld bepaalt de pakketnaam en wordt door de meeste installatiegereedschappen
gebruikt om bestandsnamen te genereren.
Package-Type: deb|udeb|type
Dit veld definieert het pakkettype. udeb is voor pakketten waarvan de omvang aan beperkingen
onderworpen is en die door het installatieprogramma van Debian gebruikt worden. deb is de
standaardwaarde, die verondersteld wordt als het veld ontbreekt. In de toekomst kunnen nog andere
types toegevoegd worden.
Version: versie-tekenreeks (verplicht)
Gewoonlijk is dit het originele versienummer van het pakket, welke vorm de auteur van het
programma er ook aan geeft. Het kan ook een Debian-revisienummer bevatten (voor niet uit Debian
stammende pakketten). De exacte indeling en het sorteringsalgoritme worden beschreven in
deb-version(7).
Maintainer: volledige-naam-en-e-mail (aanbevolen)
Moet opgemaakt worden volgens de indeling “Joe Bloggs <jbloggs@foo.com>”, en is gewoonlijk de
persoon die het pakket maakte, in tegenstelling tot de auteur van de verpakte software.
Description: korte-beschrijving (aanbevolen)
uitgebreide-beschrijving
De indeling van een pakketbeschrijving bestaat uit een beknopte korte samenvatting op de eerste
regel (na de veldmarkering Description) en een langere meer gedetailleerde beschrijving op de
volgende regels. Elke regel van de uitgebreide beschrijving moet voorafgegaan worden door een
spatie, en lege regels in de uitgebreide beschrijving moeten één enkele ‘.’ bevatten die volgt op
de eraan voorafgaande spatie.
Section: sectie
Dit is een veld van algemene aard dat het pakket in een categorie onderbrengt op basis van de
software die het installeert. Enkele gebruikelijke secties zijn utils, net, mail, text, x11, enz.
Priority: prioriteit
Duidt het belang van dit pakket aan in verhouding tot het gehele systeem. Gebruikelijke
prioriteiten zijn required, standard, optional, extra, enz.
De velden Section en Priority hebben gewoonlijk een welbepaalde set mogelijke waarden, afhankelijk van de
richtlijnen van de distributie.
Installed-Size: grootte
Bij benadering de totale grootte van de door het pakket geïnstalleerde bestanden, uitgedrukt in
KiB.
Essential: yes|no
Meestal is dit veld enkel nodig als het antwoord yes is. Het duidt een pakket aan dat vereist is
opdat het systeem behoorlijk zou functioneren. Dpkg of om het even welk ander
installatiegereedschap zal niet toestaan dat een pakket van het type Essential verwijderd wordt
(tenminste niet zonder dat één van de forceeropties gebruikt wordt).
Build-Essential: yes|no
Meestal is dit veld enkel nodig als het antwoord yes is en het wordt gewoonlijk ingevoegd door de
archiefsoftware. Het duidt een pakket aan dat vereist is voor het bouwen van andere pakketten.
Architecture: arch|all (aanbevolen)
De architectuur geeft aan voor welk type hardware dit pakket gecompileerd werd. Gebruikelijke
architecturen zijn amd64, armel, i386, powerpc, enz. Merk op dat de waarde all bedoeld is voor
pakketten die architectuuronafhankelijk zijn. Enkele voorbeelden hiervan zijn shell- en
Perl-scripts en documentatie.
Origin: naam
De naam van de distributie waaruit dit pakket afkomstig is.
Bugs: URL
De URL van het opvolgingssysteem voor bugs van dit pakket. De indeling die momenteel gebruikt
wordt is bts-type://bts-adres, zoals debbugs://bugs.debian.org.
Homepage: URL
De URL van de homepage van het toeleverend project (upstream).
Tag: lijst-van-markeringen
Lijst van markeringen (tags) die de eigenschappen van het pakket beschrijven. De beschrijving en
de lijst van ondersteunde markeringen/tags is te vinden in het pakket debtags.
Multi-Arch: no|same|foreign|allowed
Dit veld wordt gebruikt om aan te geven hoe dit pakket zich moet gedragen op een multi-arch
installatie.
no Dit is de standaardwaarde als dit veld weggelaten werd. Dit veld toevoegen met een
expliciete waarde no is over het algemeen niet nodig.
same Dit pakket is co-installeerbaar met zichzelf, maar het kan niet gebruikt worden om te
voldoen aan een vereiste van een pakket dat tot een andere architectuur behoort.
foreign
Dit pakket is niet co-installeerbaar met zichzelf, maar het mag wel de toestemming krijgen
om te voldoen aan een architectuurkwalificatieloze vereiste van een pakket dat tot een
andere architectuur behoort (indien een vereiste wel een expliciete
architectuurkwalificatie heeft, wordt de waarde foreign genegeerd).
allowed
Dit laat pakketten die dit pakket als vereiste hebben (reverse-dependencies) toe om in hun
Depends-veld aan te geven dat ze dit pakket ook van een andere architectuur aanvaarden door
bij de pakketnaam de kwalificatie :any te vermelden. Anders blijft dit zonder effect.
Source: broncode-naam [(broncode-versie)]
De naam van het broncodepakket waaruit dit binaire pakket afkomstig is, indien die verschillend is
van de naam van het pakket zelf. Indien de versie van het broncodepakket verschilt van de versie
van het binaire pakket, dan zal de broncode-naam gevolgd worden door een broncode-versie tussen
haakjes. Dit kan het geval zijn als de upload een uitsluitend binaire upload is die niet door de
onderhouder uitgevoerd wordt, of wanneer via «dpkg-gencontrol -v» voor het binaire pakket een
verschillend versienummer ingesteld wordt.
Subarchitecture: waarde
Kernel-Version: waarde
Installer-Menu-Item: waarde
Deze velden worden door het installatieprogramma van Debian gebruikt en zijn meestal niet nodig.
Zie voor meer details over deze velden /usr/share/doc/debian-installer/devel/modules.txt uit het
pakket debian-installer.
Depends: pakketlijst
Lijst van de pakketten die dit pakket nodig heeft om meer dan een onbeduidende functionaliteit te
kunnen bieden. Software voor pakketbeheer zal niet toelaten dat een pakket geïnstalleerd wordt
zonder dat de pakketten die in zijn veld Depends vermeld worden, geïnstalleerd worden (tenminste
niet zonder het gebruik van forceeropties). Tijdens een installatie wordt het postinst-script van
pakketten die in het veld Depends vermeld worden, uitgevoerd voor dat van het pakket dat van hen
afhankelijk is. Bij het verwijderen van een dergelijk pakket daarentegen wordt het prerm-script
van dat pakket uitgevoerd voor die van pakketten die in zijn veld Depends vermeld staan.
Pre-Depends: pakketlijst
Lijst van de pakketten die geïnstalleerd en geconfigureerd moeten zijn vooraleer dit pakket
geïnstalleerd kan worden. Dit wordt meestal gebruikt in een geval waarin dit pakket een ander
pakket nodig heeft om zijn preinst-script te kunnen uitvoeren.
Recommends: pakketlijst
Bevat een lijst van pakketten die samen met dit pakket aangetroffen worden op alle behalve
ongewone installaties. Software voor pakketbeheer zal de gebruiker waarschuwen als die een pakket
installeert zonder die welke vermeld worden in zijn veld Recommends.
Suggests: pakketlijst
Bevat een lijst van pakketten die gerelateerd zijn aan dit pakket en mogelijks de bruikbaarheid
ervan kunnen vergroten, hoewel het perfect acceptabel is om het zonder die pakketten te
installeren.
De syntaxis van de velden Depends, Pre-Depends, Recommends en Suggests is een lijst van groepen van
alternatieve pakketten. Elke groep is een lijst van pakketten die onderling gescheiden zijn door het
symbool verticale streep (of “pijp”), ‘|’. De groepen worden onderling gescheiden door komma's. Een komma
moet geïnterpreteerd worden als een “AND” en een pijp als een “OR”, waarbij pijpen de sterkste binding
hebben. Elke pakketnaam kan facultatief gevolgd worden door een architectuurkwalificatie, die toegevoegd
wordt na een dubbele punt ‘:’, facultatief gevolgd door de aanduiding van een versienummer tussen
haakjes.
De naam van een architectuurkwalificatie kan echte Debian-architectuurnaam zijn (sinds dpkg 1.16.5) of
any (sinds dpkg 1.16.2). Indien ze weggelaten is, is ze standaard de architectuur van het huidige binaire
pakket. Een echte Debian-architectuurnaam komt exact overeen met die architectuur voor die pakketnaam;
any komt overeen met om het even welke architectuur voor die pakketnaam als het pakket gemarkeerd werd
als Multi-Arch: allowed.
Een versienummer kan beginnen met een ‘>>’. In dat geval levert dit met alle latere versies een
overeenkomst op. Een versienummer kan al dan niet ook een Debian-pakketrevisie bevatten (met een
koppelteken tussen versienummer en Debian-pakketrevisie). Toegestane versierelaties zijn ‘>>’ voor hoger
dan, ‘<<’ voor lager dan, ‘>=’ voor hoger of gelijk aan, ‘<=’ voor lager of gelijk aan en ‘=’ voor gelijk
aan.
Breaks: pakketlijst
Bevat een lijst van pakketten die door dit pakket defect gemaakt worden, bijvoorbeeld door ze
bloot te stellen aan bugs indien de vermelde pakketten op dit pakket zouden rekenen. Software voor
pakketonderhoud zal het configureren van defecte pakketten niet toestaan. Meestal bestaat de
oplossing erin de pakketten die in het veld Breaks vermeld worden, op te waarderen.
Conflicts: pakketlijst
Bevat een lijst van pakketten die in tegenstrijd/conflict zijn met dit pakket, bijvoorbeeld omdat
ze bestanden met eenzelfde naam bevatten. Software voor pakketonderhoud zal niet toestaan dat
tegenstrijdige pakketten tegelijkertijd geïnstalleerd zijn. Twee tegenstrijdige pakketten moeten
elk een Conflicts-regel bevatten met daarin de vermelding van het andere pakket.
Replaces: pakketlijst
Lijst van pakketbestanden die door dit pakket vervangen worden. Dit wordt gebruikt om dit pakket
de toelating te geven om bestanden uit een ander pakket te overschrijven. Het wordt gewoonlijk
gebruikt samen met het veld Conflicts om het verwijderen van het andere pakket af te dwingen als
dit pakket dezelfde bestanden bevat als het pakket waarmee dit pakket in tegenstrijd is.
De syntaxis van Breaks, Conflicts en Replaces is een lijst van met komma's (en facultatieve witruimte)
gescheiden pakketnamen. In de velden Breaks en Conflicts moet de komma geïnterpreteerd worden als een
“OR”. Facultatief kan ook een architectuurkwalificatie toegevoegd worden aan de pakketnaam volgens
dezelfde syntaxis als hierboven beschreven werd, maar de standaardwaarde is any in plaats van de
architectuur van het binaire pakket. Ook kan bij de velden Breaks, Conflicts en Replaces facultatief een
versienummer toegevoegd worden volgens dezelfde syntaxis als hierboven werd beschreven.
Enhances: pakketlijst
Dit is een lijst met pakketten waarvoor dit pakket uitbreidingen biedt. Het is vergelijkbaar met
Suggests, maar in de omgekeerde richting.
Provides: pakketlijst
Dit is een lijst van virtuele pakketten waarin door dit pakket voorzien wordt. Gewoonlijk wordt
dit gebruikt in het geval meerdere pakketten dezelfde dienst leveren. Bijvoorbeeld kunnen sendmail
en exim beide als mailserver fungeren en daarom voorzien zij in een gemeenschappelijk pakket
(“mail-transport-agent”) waarvan andere pakketten afhankelijk kunnen zijn. Dit laat sendmail of
exim toe om te fungeren als een geldige optie om aan die vereiste te voldoen. Hierdoor is het voor
pakketten die een mailserver nodig hebben niet nodig om van alle mailservers de pakketnaam te
kennen en ze, gescheiden door een ‘|’, allemaal te vermelden in een lijst.
De syntaxis van Provides is een lijst van pakketnamen door komma's (en facultatieve witruimte) van elkaar
gescheiden. Facultatief kan ook een architectuurkwalificatie toegevoegd worden aan de pakketnaam volgens
dezelfde syntaxis als hierboven beschreven werd. Indien dit weggelaten werd, wordt standaard de
architectuur genomen van het huidige binaire pakket. Facultatief kan ook een exact (is gelijk aan)
versienummer opgegeven worden volgens dezelfde syntaxis als hierboven beschreven werd (gehonoreerd sinds
dpkg 1.17.11).
Built-Using: pakketlijst
Dit veld vermeldt extra broncodepakketten die gebruikt werden bij het bouwen van dit binaire
pakket. Dit is een indicatie voor de software voor archiefonderhoud dat deze extra
broncodepakketten behouden moeten blijven zolang dit binaire pakket gehandhaafd wordt. Dit veld
moet bestaan uit een lijst van namen van broncodepakketten met een strikte ‘=’ versierelatie. Merk
op dat de software voor archiefonderhoud niet geneigd zal zijn om een upload te aanvaarden van een
pakket dat verklaart een Built-Using-relatie te hebben waaraan in het archief niet voldaan kan
worden.
Built-For-Profiles: profiel-lijst (verouderd)
Dit veld werd vroeger gebruikt om een lijst van door spaties van elkaar gescheiden bouwprofielen
op te sommen waarmee deze binaire pakketten gebouwd werden (sinds dpkg 1.17.2 tot 1.18.18). De
informatie die vroeger in dit veld te vinden was, kan nu gevonden worden in het bestand .buildinfo
dat het vervangt.
Auto-Built-Package: lijst-met-redenen
Dit veld somt een lijst van onderling door spaties gescheiden redenen op waarom dit pakket
automatisch gegenereerd werd. Binaire pakketten die met dit veld gemarkeerd werden, zullen niet te
vinden zijn in het hoofdcontrolebestand debian/control van de broncode. De enige reden die
momenteel gebruikt wordt, is debug-symbols.
Build-Ids: lijst met elf-bouw-id's
Dit veld geeft een lijst op van door witruimte van elkaar gescheiden ELF-bouw-id's. Dit zijn
unieke identificatiesymbolen voor semantisch identieke ELF-objecten, voor elk ervan in het pakket.
De indeling of de berekeningswijze voor elke bouw-id ligt niet vast bij ontwerp.
VOORBEELD
Pakket: grep
Essentieel: ja
Prioriteit: vereist
Sectie: base
Onderhouder: Wichert Akkerman <wakkerma@debian.org>
Architectuur: sparc
Versie: 2.4-1
Voorvereiste: libc6 (>= 2.0.105)
Voorziet in: rgrep
Conflicteert met: rgrep
Beschrijving: GNU grep, egrep en fgrep.
De GNU familie van grep-hulpprogramma's is misschien wel de "fastest grep in
the west". GNU grep is gebaseerd op een snel `lazy-state deterministic
matcher' (ongeveer twee keer zo snel als een gewone Unix grep), gekruist met
een Boyer-Moore-Gosper zoekalgoritme voor een vaste tekenreeks, hetgeen
voorkomt dat niet-voorkomende tekst wordt meegenomen in de volledige regexp
zoekopdracht, zonder naar ieder teken te hoeven kijken. Het resultaat is
gewoonlijk vele malen sneller dan Unix grep of egrep. (Maar reguliere
expressies met terugverwijzingen zullen trager zijn.
BUGS
Voor het veld Build-Ids wordt een eerder generieke naam gebruikt vanuit zijn originele context binnen een
ELF-object, welke een zeer specifieke functie en uitvoerbaar formaat heeft.
ZIE OOK
deb-src-control(5), deb(5), deb-version(7), debtags(1), dpkg(1), dpkg-deb(1).
1.19.7 2022-05-25 deb-control(5)