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.

1.22.6                                             2024-07-17                                 deb-src-control(5)