Provided by: dpkg-dev_1.22.11ubuntu1_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.

       Build-Driver: driver-name
           This  experimental  field  specifies  the name of the build driver to use to build this package. When
           omitted the driver-name defaults to debian-rules.

           This field is supported since dpkg 1.22.7.

       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.11                                            2024-08-05                                 deb-src-control(5)