NAMN¶
deb-src-control - Debians filformat för källkodspakets
huvudstyrfil
SYNOPS¶
control
BESKRIVNING¶
Varje Debiankällkodspaket innehåller
huvud-"control"-filen, vilken innehååller
åtminstone två stycken, avdelade med en tomrad. Det
första stycket innehåller all generell information om
källkodspaketet, medan de följande styckena beskriver exakt ett
binärpaket. Varje stycke består av åtminstone ett
fält. Ett fält inleds med ett fältnamn, till exempel
Package eller
Section (skiftlägesokänsligt),
följt av ett kolon, fältinnehållet och ett nyradstecken.
Flerradiga fält är också tillåtna, men varje
ytterligare rad som inte innehåller ett fältnamn, bör
starta med minst ett blanksteg. Innehållet i flerradsfält
slås normalt samman till en enda rad av verktygen (förutom i
fallet fältet
Description, se nedan). För att
sätta in tomma rader i ett flerradsfält, skriver du en punkt
efter blanksteget. Rader som börjar med ett
"#" tolkas
som kommentarer.
KÄLLKODSFÄLT¶
- Source: källkodspaketnamn (krävs)
- Värdet på det här fältet är namnet
på källkodspaketet, och måste motsvara namnet
på källkodspaketet i filen debian/changelog. Paketnamnet
måste bestå endast av små bokstäver (a-z),
siffror (0-9), plus- (+) och minustecken (-) och punkt (.). Paketnamn
måste vara minst två tecken långa och måste
börja med ett alfanumeriskt tecken.
- Maintainer: fullt-namn-epost (krävs)
- Skall vara på formatet "Joe Bloggs
<jbloggs@foo.com>" och refererar till den person som för
närvarande underhåller paketet, till skillnad från
författaren av den programvara som paketerats.
- Uploaders: fullt-namn-epost
- Räknar upp namn och e-postadresser till med-underhållare av
paketet, i samma format som fältet Maintainers. Flera
med-underhållare bör avdelas med kommatecken.
- Standards-Version: versionssträng
- Dokumenterar den senaste versionen av standarddokumenten (vilka
består av Debians policyhandbok och refererade texter i paketet
debian-policy) som paketet uppfyller.
- Homepage: url
- URL till uppströmsprojektets hemsida.
- Bugs: url
- Url:en till felrapporteringssystemet för detta paket. Det
nuvarande formatet är systemtyp://address, till
exempel debbugs://bugs.debian.org. Det här fältet
är normalt sett inte nödvändigt.
- Vcs-Arch: url
- Vcs-Bzr: url Vcs-Cvs: url Vcs-Darcs:
url Vcs-Git: url Vcs-Hg: url
Vcs-Mtn: url Vcs-Svn: url Url:en till
versionshanteringsarkivet som används för att
underhålla det här paketet. För närvarande
stöds Arch, Bzr (Bazaar), Cvs, Darcs,
Git, Hg (Mercurial), Mtn (Monotone) och Svn
(Subversion). Fältet pekar normalt till den senaste versionen av
paketet, såsom huvudgrenen (main eller trunk).
- Vcs-Browser: url
- Url:en till ett webbgränssnitt för att bläddra
i versionshanteringsarkivet.
- Origin: namn
- Namnet på den distribution paketet härstammar från.
Det här fältet är normalt sett inte
nödvändigt.
- Section: sektion
- Detta är ett generellt fält som ger paketet en kategori
baserat på programvara som det installerar. Några vanliga
sektioner är "utils", "net", "mail",
"text", "x11" osv.
- Priority: prioritet
- Ställer in hur viktigt paketet är jämfört med
systemet som enhet. Vanliga prioriteter är "required"
(nödvändig), "standard" (normal),
"optional" (valfritt), "extra" (extra) osv.
I Debian har fälten Section och Priority en definierad
uppsättning accepterade värden baserade på
policymanualen. En förteckning över dessa värden
finns i den senaste versionen av paketet debian-policy.
- Build-Depends: paketlista
- En lista över paket som måste installeras och konfigureras
för att kunna bygga källkodspaketet. Ett beroende som
beskrivs i den här listan har samma effekt som att inkludera det i
både Build-Depends-Arch och Build-Depends-Indep, med
den ytterligare effekten att den används för byggen av
endast källkod.
- Build-Depends-Arch: paketlista
- Motsvarar Build-Depends, men de behövs endast för att
bygga de arkitekturoberoende paketen. Build-Depends installeras
också i detta fall. Det här fältet stöds sedan
dpkg 1.16.4; för att bygga med äldre dpkg-versioner
bör Build-Depends användas istället.
- Build-Depends-Indep: paketlista
- Motsvarar Build-Depends, men de behövs endast för att
bygga de arkitekturoberoende paketen. Build-Depends installeras
också i detta fall.
- Build-Conflicts: paketlista
- En lista över paket som inte bör vara installerade
när paketet byggs, till exempel på grund av att de
stör byggsystemet som används. Ett beroende som beskrivs i
den här listan har samma effekt som att inkludera det i både
Build-Conflicts-Arch och Build-Conflicts-Indep, med den
ytterligare effekten att den används för byggen av endast
källkod.
- Build-Conflicts-Arch: paketlista
- Motsvarar Build-Conflicts, men endast när
arkitekturoberoende paket byggs. Fältet stöds sedan dpkg
1.16.4; för att bygga med äldre versioner av dpkg bör
Build-Conflicts användas istället.
- Build-Conflicts-Indep: paketlista
- Motsvarar Build-Conflicts, men endast när de
arkitekturoberoende paketen byggs.
Syntaxen för fälten
Build-Depends,
Build-Depends-Arch och
Build-Depends-Indep-fälten
är en lista med grupper av alternativa paket. Varje grupp
innehåller en lista med paket avdelade med ett vertikalstreck
(rör) ("|"). Grupperna avdelas med kommatecken. Komma
utläses som "OCH", och vertikalstrecken som
"ELLER", där vertikalstrecken binder hårdare. Varje
paketnamn kan eventuellt följas av en versionsnummerangivelse inom
parenteser, en arkitekturangivelse inom hakparenteser och en
begränsningsformel som består av en eller flera listor med
profilnamn inom vinkelparenteser.
Syntaxen för fälten
Build-Conflicts,
Build-Conflicts-Arch och
Build-Conflicts-Indep-fälten
är en kommaseparerad lista med paketnamn, där komma
utläses som "OCH". Det är inte möjligt att ange
alternativa paket med "rör". Varje paketnamn kan eventuellt
följas av en versionsnummerangivelse inom parenteseren
arkitekturangivelse inom hakparenteser och en begränsningsformel
bestående av en eller flera listor med profilnamn inom
vinkelparenteser.
Ett versionsnummer kan börja med ">>", vilket betyder att
vilken som helst senare version matchar, där det är valfritt att
ange Debianuppdateringen (avdelad med bindestreck). Tillåtna
versionrelationer är ">>" för större
än, "<<" för mindre än, ">="
för större än eller lika med", "<="
för mindre än eller lika med, och "=" för lika
med.
En arkitekturangivelse består av ett eller flera arkitekturnamn, avdelade
med blanktecken. Varje namn kan föregås av ett utropstecken,
vilket betyder "ICKE".
En begränsningsformel består av en eller flera
begränsningslistor, avdelade med blanksteg. Varje
begränsningslista skrivs inom vinkelparenteser. Poster i
begränsningslistan är namn på byggprofiler, avdelade av
blanksteg och kan föregås av ett utropstecken, vilket betyder
"INTE". En begränsningsformel representerar ett uttryck i
disjunktiv normalform.
Observera att beroenden på paket i
build-essential-uppsättningen kan utelämnas och att det
är omöjligt att deklarera byggkonflikter mot dem. En lista
över dessa paket finns i paketet build-essential.
BINÄRFÄLT¶
Observera att fälten
Priority,
Section och
Homepage
även kan användas i de stycken som beskriver binärpaket
för att överstyra de globala värdena för
källkodspaketet.
- Package: binärpaketnamn (krävs)
- Detta fält används för att namnge det binära
paketet. Samma begränsningar gäller som för
källkodspaketets namn.
- Architecture: arch|all|any (krävs)
- Arkitekturen anger på vilken typ av maskinvara paketet körs.
För paket som körs på alla arkitekturer
används värdet any (någon). För paket
som är arkitekturoberoende, som skal- och Perlskript eller
dokumentation, används värdet all (alla). För
att begränsa paket till en specifik uppsättning
arkitekturer, anger du namnen på arkitekturerna avdelade med
blanksteg. Det är även möjligt att ange arkitekturer
med jokertecken i listan (se dpkg-architecture(1) för mer
information om dessa).
- Package-Type: deb|udeb
- Detta fält anger paketets typ. "udeb" används
för storleksbegränsade paket i debian-installer.
"deb" är standardvärdet, och antas om
fältet saknas. Fler typer kan komma att läggas till i
framtiden.
- Subarchitecture: värde
- Kernel-Version: värde Installer-Menu-Item:
värde Dessa fält används av debian-installer och
behövs normalt inte. Se
/usr/share/doc/debian-installer/devel/modules.txt från paketet
debian-installer för mer information om dem.
- Essential: yes|no
- Multi-Arch: same|foreign|allowed|no
Tag: lista-med-märken Description:
kort-beskrivning (krävs) Dessa fält beskrivs i
manualsidan deb-control(5), eftersom de kopieras ordagrant till
binärpaketets styrfil.
- Depends: paketlista
- Pre-Depends: paketlista Recommends: paketlista
Suggests: paketlista Breaks: paketlista
Enhances: paketlista Replaces: paketlista
Conflicts: v Provides: paketlista
Built-Using: paketlista Dessa fält anger relationer
mellan paket. De diskuteras i manualsidan deb-control(5) och i
paketet debian-policy.
ANVÄNDARDEFINIERADE FÄLT¶
Det är möjligt att lägga till ytterligare
användardefinierade fält i styrfilen. Verktygen ignorerar dessa
fält. Om du vill att fälten skall kopieras över till
utdatafilerna, som till exempel i binärpaketen, måste du
använda en skräddarsydd namngivning: fälten måste
starta med X, följt av ett eller flera av bokstäverna BCS och
ett bindestreck. Om bokstaven B används kommer fältet att dyka
upp i styrfilen i binärpaketet, se
deb-control(5), för
bokstaven S i källkodspaketets styrfil som konstrueras av
dpkg-source(1) och för bokstaven C i styrfilen för
insändning (.changes). Observera att X[BCS]-prefixen tas bort
när fälten kopieras över till utdatafilerna.
Fältet
XC-Approved-By visas som
Approved-By i
changes-filen och visas inte i styrfilerna för binär- och
källkodspaketen.
Tänk på att dess användardefinierade fält
använder den globala namnrymden, vilket en gång i framtiden kan
komma att kollidera med officiellt erkända fält. För att
undvika sådana potentiella situationer kan du använda prefixet
Private- för dessa fält, som
XB-Private-New-Field.
EXEMPEL¶
# Kommentar
Source: dpkg
Section: admin
Priority: required
Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
# det här fältet kopieras till binär- och källkodspaketen
XBS-Upstream-Release-Status: stable
Homepage: https://wiki.debian.org/Teams/Dpkg
Vcs-Browser: https://anonscm.debian.org/cgit/dpkg/dpkg.git
Vcs-Git: git://anonscm.debian.org/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
# det här är ett skräddarsytt fält i binärpaketet
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.
SE ÄVEN¶
deb-control(5),
deb-version(5),
dpkg-source(1)
ÖVERSÄTTNING¶
Peter Krefting och Daniel Nylander.