Provided by: dpkg-dev_1.22.6ubuntu6.1_all bug

NAMN

       deb-src-control - Debians filformat för källkodspakets mallstyrfil

SYNOPS

       debian/control

BESKRIVNING

       Varje Debiankällkodspaket innehåller mallstyrfilen ”debian/control”, och dess
       deb822(5)-format är en övermängd av control-filen som medföljer Debianbinärpaket, se deb-
       control(5).

       Filen innehåller åtminstone två stycken, avdelade med en tomrad. Det första stycket kallas
       källkodspaketstycket och innehåller all generell information om källkodspaketet, medan de
       följande styckena kallas binärpaketstycken och beskriver exakt ett binärpaket per stycke.
       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
       (skiftlägekänsligt om inte annat anges) 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 liten bokstav eller siffra
           (a-z0-9).

       Maintainer: fullt-namn-epost (rekommenderas)
           Ska 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 programmets författare eller
           den ursprunglige paketeraren.

       Uploaders: fullt-namn-epost
           Räknar upp namn och e-postadresser till med-underhållare av paketet, i samma format
           som fältet Maintainer. Flera med-underhållare bör avdelas med kommatecken.

       Standards-Version: versionssträng
           Dokumenterar den senaste versionen av distributionens policystandard som paketet
           uppfyller.

       Description: kort-beskrivning)
        lång-beskrivning
           Formatet för källkodspaketbeskrivningen är en kortfattad sammanfattning på den första
           raden (efter fältet Description). Följande rader bör användas för en längre, mer
           detaljerad beskrivning. Varje rad i den lägre beskrivningen måste inledas med ett
           blanksteg, och blanka rader i den långa beskrivningen måste innehålla en ensam ”.”
           efter det inledande blanksteget.

       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.

       Rules-Requires-Root: no|binary-targets|impl-nyckelord
           Det här fältet används för att ange om filen debian/rules kräver
           (fake)root-privilegier för att köra några av sina mål, och i så fall när.

           no (nej)
               Binärmålen kommer inte kräva (fake)root överhuvudtaget. Detta är förval om dpkg-
               build-api-nivån är ≥ 1.

           binary-targets
               Binärmålen måste alltid köras under (fake)root. Detta är förvalet i dpkg-build-
               api-nivå 0, om fältet inte anges; även om det inte är strikt nödvändigt att lägga
               till fältet med värdet binary-targets så anger det att paketet har analyserats för
               det här kravet.

           impl-nyckelord
               Det här är en blankstegsavdelad lista med nyckelord som kan ange när (fake)root
               krävs.

               Nyckelord består av namnrymd/fall. Delen namnrymd kan inte innehålla "/" eller
               blanksteg. Delen fall kan inte innehålla blanksteg. Dessutom måste bägge delarna i
               sin helhet bestå av skrivbara ASCII-tecken.

               Varje verktyg/paket definierar en namnrymd med samma namn som sig själv och anger
               ett antal fall där (fake)root krävs. (Se "Implementation provided keywords" i
               rootless-builds.txt).

               När fältet är satt till ett av impl-nyckelord kommer byggaren att exponera ett
               gränssnitt som används för att köra ett kommando under (fake)root. (Se "Gain Root
               API" i rootless-builds.txt.)

       Testsuite: namnlist
       Testsuite-Triggers: paketlista
           Dessa fält beskrivs i manualsidan dsc(5), eftersom de genereras från information
           hämtad från debian/tests/control eller kopieras ordagrant till källkodsstyrfilen.

       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 helhet. Vanliga prioriteter
           är required (nödvändig), standard (normal), optional (valfritt), extra (extra), osv.

           Gälten Section och Priority har vanligtvis en definierad uppsättning accepterade
           värden baserade på den specifika distributionens policy.

       Build-Depends: paketlista
           En lista över paket som måste installeras och konfigureras för att kunna bygga
           källkodspaketet. Dessa beroenden måste tillfredsställas när binärarkitekturberoende
           eller -oberoende paket och källkodspaket byggs. Ett beroende som beskrivs i den här
           listan har inte exakt samma effekt som att inkludera det i både Build-Depends-Arch och
           Build-Depends-Indep, eftersom beroendet också måste tilfredsställas när
           källkodspaketet byggs.

       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 ”,”, och kan avslutas
       med ett släpande komma som tas bort när fälten genereras till deb-control(5) (sedan dpkg
       1.10.14). 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 inom hakparenteser ”[” och ”]” samt en
       begränsningsformel som består av en eller flera listor med profilnamn inom
       vinkelparenteser ”<” och ”>”.

       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”, och där listan kan
       avslutas med ett släpande komma som tas bort när fälten genereras till deb-control(5)
       (sedan dpkg 1.10.14). Det är inte möjligt att ange alternativa paket med ”rör”. Varje
       paketnamn kan eventuellt följas av en versionsnummerangivelse inom parenteser, en
       arkitekturangivelse inom hakparenteser samt en begränsningsformel bestående av en eller
       flera listor med profilnamn inom vinkelparenteser.

       Ett arkitekturkvalificeringsnamn kan vara ett existerande Debianarkitekturnamn (sedan dpkg
       1.16.5), any (sedan dpkg 1.16.2) eller native (sedan dpkg 1.16.5). Om det utesluts är
       förvalet för fältet Build-Depends den aktuella värdarkitekturen, förvalet för Build-
       Conflicts är any. Ett existerande Debianarkitekturnamn motsvarar exakt den arkitekturen
       för det paketnamnet, any motsvarar valfri arkitektur för paketnamnet om paketet har
       markerats som Multi-Arch: allowed och native motsvarar nuvarande byggarkitektur om paketet
       inte har markerats som Multi-Arch: foreign.

       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
       ”ICKE”. 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.

       Package-Type: deb|udeb|typ
           Detta fält anger paketets typ. udeb används för storleksbegränsade paket som används
           av debians installationsprogram. deb är standardvärdet, och antas om fältet saknas.
           Fler typer kan komma att läggas till i framtiden.

       Architecture: ark|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).

       Build-Profiles: begränsningsformel
           Det här fältet anger villkor för när binärpaketet ska eller inte ska byggas. För att
           uttrycka villkoret används samma syntax för begränsningsformeln som för fältet Build-
           Depends (inklusive vinkelparenteserna).

           Om ett stycke för ett binärpaket inte innehåller det här fältet betyder det implicit
           att det bygger i alla byggprofiler (inklusive ingen alls).

           Med andra ord, om ett stycke för ett binärpaket är försett med ett icke-tomt Build-
           Profiles-fält kommer det binärpaketet byggas om, och endast om, villkoret, uttryckt i
           konjunktiv normalform, utvärderas till sant.

       Protected: yes|no
       Essential: yes|no
       Build-Essential: yes|no
       Multi-Arch: same|foreign|allowed|no
       Tag: lista-med-märken
       Description: kort-beskrivning (rekommenderas)
           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: paketlista
       Provides: paketlista
       Built-Using: paketlista
       Static-Built-Using: paketlista
           Det här fältet anger beroenden mellan paket. De diskuteras i manualsidan
           deb-control(5). När fälten förekommer i debian/control kan de också avslutas med ett
           släpande kommatecken (sedan dpkg 1.10.14), ha arkitekturangivelser och
           begränsningsformler som alla reduceras när fälten för deb-control(5) genereras.

       Subarchitecture: värde
       Kernel-Version: värde
       Installer-Menu-Item: värde
           Dessa fält används av debian-installer i udeb-formatet och behövs normalt inte. För
           mer information om dem, se
           <https://salsa.debian.org/installer-team/debian-installer/-/raw/master/doc/devel/modules.txt>.

ANVÄNDARDEFINIERADE FÄLT

       Det är tillåtet att lägga till ytterligare användardefinierade fält till styrfilen.
       Verktygen kommer ignorera dessa fält. Om du vill att fältet ska kopieras över till
       utdatafilerna, så som binärpaketen, måste du använda ett skräddarsytt namngivningsformat:
       fälten ska börja på X, följt av noll eller flera av tecknen SBC och ett bindestreck.

       S   Fältet kommer tas med i styrfilen för källkodspaket, se dsc(5).

       B   Fältet kommer tas med i styrfilen för binärpaketet, se deb-control(5).

       C   Fältet kommer tas med i styrfilen för insändningen (.changes), se deb-changes(5).

       Observera att prefix på formen X[SBC]- tas bort när fälten kopieras över till
       utdatafilerna. Fältet XC-Approved-By kommer tas med som Approved-By i ”changes”-filen och
       inte tas med 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://git.dpkg.org/cgit/dpkg/dpkg.git
        Vcs-Git: https://git.dpkg.org/git/dpkg/dpkg.git
        Standards-Version: 3.7.3
        Build-Depends: pkgconf, 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

       /usr/share/doc/dpkg/spec/rootless-builds.txt, deb822(5), deb-control(5), deb-version(7),
       dpkg-source(1)

ÖVERSÄTTNING

       Peter Krefting och Daniel Nylander.