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.
- DM-Upload-Allowed: yes|no
- Fältet anger om paketet kan sändas in av de
Debianutvecklare som står beskrivna i fälten Maintainer och
Uploaders. Standardvärdet är "no" (nej).
- 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-*: 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
introducerades i dpkg version 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 introducerades i dpkg version
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 och en arkitekturangivelse i hakparenteser.
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 parenteser och en arkitekturangivelse i
hakparenteser.
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".
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
- 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, vilket har som sidoeffekt
att
dpkg-deb inte varnar för dem som okända fält.
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: 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
# 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.