Provided by: dpkg-dev_1.19.7ubuntu2_all bug

NAAM

       dpkg-source - gereedschap voor het manipuleren van een Debian broncodepakket (.dsc)

OVERZICHT

       dpkg-source [optie...] commando

BESCHRIJVING

       dpkg-source pakt Debian broncodearchieven in en uit.

       Bij  geen  enkel  van  deze commando's is het toegelaten om meerdere opties tot één enkele
       optie te combineren of de waarde van een optie via een apart argument op te geven.

COMMANDO'S

       -x, --extract bestandsnaam.dsc [uitvoermap]
              Extraheer een broncodepakket (--extract sinds dpkg 1.17.14). Er moet  één  argument
              dat  geen  optie  is,  opgegeven  worden,  namelijk de naam van het controlebestand
              (.dsc) van de Debian broncode. Facultatief kan een tweede argument dat  geen  optie
              is,  opgegeven  worden  om  de  map op te geven waarin het pakket geëxtraheerd moet
              worden. Die mag nog niet bestaan. Indien geen uitvoermap opgegeven  werd,  zal  het
              broncodepakket  uitgepakt worden in een map met als naam broncode-versie, die onder
              de huidige werkmap ligt.

              dpkg-source zal uit het controlebestand de namen van de andere bestanden lezen  die
              samen het broncodepakket vormen. Er wordt van uitgegaan dat ze zich in dezelfde map
              bevinden als het .dsc-bestand.

              De permissies en het eigenaarschap van de bestanden uit  het  geëxtraheerde  pakket
              zullen  zodanig  ingesteld  worden  dat  ze  beantwoorden  aan  wat  men  zou mogen
              verwachten mochten de bestanden en  mappen  gewoon  aangemaakt  zijn  -  mappen  en
              uitvoerbare  bestanden  zullen  0777  zijn en gewone bestanden 0666 en beide zullen
              aangepast worden op basis van het umask van degene die het pakket  uitpakt.  Indien
              de  bovenliggende  map setgid is, zullen de geëxtraheerde mappen dat ook zijn en al
              de bestanden en mappen zullen dit groepseigenaarschap overerven.

              Indien het broncodepakket een niet-standaardindeling gebruikt  (momenteel  betekent
              dit  alle  indelingen  behalve  “1.0”),  dan zal de naam ervan opgeslagen worden in
              debian/source/format, zodat standaard deze indeling gebruikt wordt bij de  volgende
              malen dat het broncodepakket gebouwd wordt.

       -b, --build map [indelingsspecifieke-parameters]
              Bouw  een broncodepakket (--build sinds dpkg 1.17.14). Het eerste argument dat geen
              optie is, wordt gebruikt als de naam van de map die de voor  Debian  gereedgemaakte
              broncodeboom   bevat   (d.w.z.  met  een  onderliggende  map  debian  en  eventuele
              veranderingen    aan    de    originele    bestanden).    Afhankelijk    van     de
              broncodepakketindeling  die  men  gebruikt  om het broncodepakket te bouwen, kunnen
              bijkomende parameters opgegeven worden.

              dpkg-source zal het broncodepakket bouwen volgens de eerste indeling  die  gevonden
              wordt  in  de  hierna  volgende  geordende  lijst:  de  indeling  opgegeven  met de
              commandoregeloptie --format, de indeling aangegeven in debian/source/format, “1.0”.
              Het  terugvallen  op  “1.0”  word  afgeschaft  en  zal  op een bepaald moment in de
              toekomst weggelaten worden. U  zou  de  gewenste  broncode-indeling  steeds  moeten
              documenteren   in   debian/source/format.   Zie   het   onderdeel   INDELINGEN  VAN
              BRONCODEPAKKETTEN voor een uitgebreide beschrijving van de verschillende indelingen
              voor broncodepakketten.

       --print-format map
              Geef weer welke indeling gebruikt zou worden om het broncodepakket te bouwen indien
              dpkg-source --build map aangeroepen werd (in dezelfde  condities  en  met  dezelfde
              parameters; sinds dpkg 1.15.5).

       --before-build map
              Voer de overeenkomstige uitbreiding (hook) uit van de broncodepakketindeling (sinds
              dpkg 1.15.8). Deze uitbreiding wordt telkens aangeroepen voor  het  pakket  gebouwd
              wordt  (dpkg-buildpackage  roept ze zeer vroeg aan, zelfs voor debian/rules clean).
              Dit  commando  is  idempotent  en  kan  meermaals  aangeroepen  worden.  Niet  alle
              broncode-indelingen  implementeren  iets  in deze uitbreiding, en die welke dat wel
              doen bereiden gewoonlijk de broncodeboom voor op het bouwproces, bijvoorbeeld  door
              ervoor te zorgen dat de Debian-patches toegepast worden.

       --after-build map
              Voer de overeenkomstige uitbreiding (hook) uit van de broncodepakketindeling (sinds
              dpkg 1.15.8). Deze uitbreiding wordt telkens aangeroepen nadat het  pakket  gebouwd
              werd  (dpkg-buildpackage  roept  ze als laatste aan). Dit commando is idempotent en
              kan meermaals aangeroepen worden. Niet alle broncode-indelingen implementeren  iets
              in  deze uitbreiding, en die welke dat wel doen gebruiken ze gewoonlijk om ongedaan
              te maken wat --before-build gedaan heeft.

       --commit [map] ...
              Tekent veranderingen op in de broncodeboom die in map uitgepakt  werd  (sinds  dpkg
              1.16.1).  Aan  dit  commando kunnen afhankelijk van de broncode-indeling bijkomende
              parameters opgegeven worden. Het zal een foutmelding geven bij indelingen  waarvoor
              deze operatie geen betekenis heeft.

       -?, --help
              Toon   de  gebruiksaanwijzing  en  sluit  af.  Met  de  optie  --format  kunnen  de
              indelingsspecifieke bouw- en extractie-opties getoond worden.

       --version
              Toon de versie en sluit af.

OPTIES

   Generieke bouwopties
       -ccontrolebestand
              Duidt aan  wat  het  belangrijkste  controlebestand  van  de  broncode  is  waaruit
              informatie  gelezen  moet  worden.  Standaard  is  dat  debian/control.  Indien het
              opgegeven wordt met  een  relatieve  padnaam,  dan  wordt  die  geïnterpreteerd  te
              beginnen bij de basismap van de broncodeboom.

       -lchangelog-bestand
              Duidt  het  changelog-bestand aan waaruit informatie gelezen moet worden. Standaard
              is dat debian/changelog. Indien het opgegeven wordt met een relatieve padnaam,  dan
              wordt die geïnterpreteerd te beginnen bij de basismap van de broncodeboom.

       -Fchangelog-indeling
              Geeft  de  indeling  van het bestand changelog aan. Zie dpkg-parsechangelog(1) voor
              informatie over alternatieve indelingen.

       --format=waarde
              Gebruik de opgegeven indeling om het broncodepakket te bouwen (sinds dpkg 1.14.17).
              Het vervangt een eventuele in debian/source/format opgegeven indeling.

       -Vnaam=waarde
              Stel  een  uitvoersubstitutievariabele in. Zie deb-substvars(5) voor een bespreking
              van uitvoersubstitutie.

       -Tsubstvars-bestand
              Lees substitutievariabelen uit substvars-bestand. De standaard  is  om  geen  enkel
              bestand  te  lezen.  Deze  optie kan meermaals gebruikt worden om uit verschillende
              bestanden substitutievariabelen te lezen (sinds dpkg 1.15.6).

       -Dveld=waarde
              Vervang in de uitvoer een veld uit het controlebestand of voeg er een toe.

       -Uveld Verwijder in de uitvoer een veld uit het controlebestand.

       -Zcompressie, --compression=compressie
              Duidt het compressieniveau aan dat gebruikt wordt bij het maken  van  tar-archieven
              en  diff-bestanden  (--compression  sinds dpkg 1.15.5). Merk op dat deze optie niet
              tot effect heeft dat bestaande tar-archieven opnieuw gecomprimeerd worden. Ze heeft
              enkel  invloed op nieuwe bestanden. Ondersteunde waarden zijn: gzip, bzip2, lzma en
              xz. De standaardwaarde is xz voor de indeling 2.0 en recentere indelingen  en  gzip
              voor de indeling 1.0. xz wordt enkel sinds dpkg 1.15.5 ondersteund.

       -zniveau, --compression-level=niveau
              Het  te  gebruiken  compressieniveau (--compression-level sinds dpkg 1.15.5). Zoals
              dit het geval  is  bij  -Z,  beïnvloedt  dit  enkel  nieuw  aangemaakte  bestanden.
              Ondersteunde  waarden  zijn:  1  tot 9, best, en fast. De standaardwaarde is 9 voor
              gzip en bzip2, 6 voor xz en lzma.

       -i[regex], --diff-ignore[=regex]
              U kunt een perl reguliere expressie opgeven om bestanden die ermee overeenkomen weg
              te houden uit de lijst bestanden waarover de gemaakte diff (overzicht van ondergane
              wijzigingen) gaat (--diff-ignore sinds dpkg 1.15.6). (Deze lijst wordt  gegenereerd
              door  een  find-opdracht.)  (Als  het broncodepakket gebouwd wordt als een versie 3
              broncodepakket  dat  gebruik  maakt  van  een  VCS  (Version   Control   System   -
              versiebeheersysteem),  kan  dit  gebruikt worden om niet-toegepaste wijzigingen aan
              specifieke bestanden te laten negeren. Door -i.* te gebruiken  zullen  ze  allemaal
              genegeerd worden.)

              De  optie -i zelf schakelt deze instelling in met een standaard reguliere expressie
              (met behoud van eventuele wijzigingen aan de standaard  reguliere  expressie  onder
              invloed   van   een  eerder  gebruikt  --extend-diff-ignore)  die  zorgt  voor  het
              uitfilteren   van   controlebestanden   en   -mappen   van   de   meest    courante
              versiebeheersystemen,    van    back-upbestanden    en   wisselbestanden   en   van
              bouwuitvoermappen van Libtool. Er kan slechts één reguliere expressie actief  zijn.
              Van meerdere -i-opties zal enkel de laatste uitwerking hebben.

              Dit  is  erg  bruikbaar voor het wegknippen van vreemde bestanden die mee opgenomen
              geraken  in  de  diff,  bijvoorbeeld  als  u  de   broncode   onderhoudt   in   een
              versiebeheersysteem   en   een   werkkopie   (checkout)   wilt   gebruiken  om  een
              broncodepakket te bouwen, zonder dat daarin ook de extra bestanden en mappen die ze
              meestal  bevat  (bijvoorbeeld  CVS/,  .cvsignore,  .svn/), mee opgenomen worden. De
              standaard reguliere expressie is reeds zeer  exhaustief,  maar  indien  u  ze  moet
              vervangen,  moet  u  ermee  rekening  houden  dat ze standaard een overeenkomst kan
              opleveren met elk onderdeel van een pad. Indien u dus een  overeenkomst  zoekt  met
              het begin van een bestandsnaam of enkel met volledige bestandsnamen, zult u zelf de
              nodige ankers (bijvoorbeeld ‘(^|/)’, ‘($|/)’) moeten opgeven.

       --extend-diff-ignore=regex
              De  opgegeven  perl  reguliere  expressie  breidt  de  standaardwaarde   die   door
              --diff-ignore gebruikt wordt, uit en de huidige waarde ervan als die ingesteld werd
              (sinds dpkg 1.15.6). Het doet dit door “|regex” samen te voegen  met  de  bestaande
              waarde.  Deze  optie is handig om te gebruiken in debian/source/options om bepaalde
              automatisch gegenereerde bestanden uit te sluiten bij het automatisch genereren van
              patches.

       -I[bestandspatroon], --tar-ignore[=bestandspatroon]
              Indien  deze  optie  opgegeven  werd,  wordt  het  patroon doorgegeven aan de optie
              --exclude van tar(1) wanneer dit commando ingeroepen wordt om een bestand .orig.tar
              of  .tar aan te maken (--tar-ignore sinds dpkg 1.15.6). Bijvoorbeeld, -ICVS zal tar
              CVS-mappen doen overslaan bij het genereren van een .tar.gz-bestand. Deze optie kan
              meermaals  herhaald worden om meerdere patronen die uitgesloten moeten worden op te
              sommen.

              -I zelf voegt standaard --exclude-opties toe die zorgen voor  het  uitfilteren  van
              controlebestanden  en  -mappen  van  de  meest  courante  versiebeheersystemen, van
              back-upbestanden en wisselbestanden en van bouwuitvoermappen van Libtool.

       Opmerking: hoewel  zij  vergelijkbare  bedoelingen  hebben,  hebben  -i  en  -I  een  heel
       verschillende  syntaxis  en semantiek. -i kan slechts eenmaal opgegeven worden en verwacht
       een reguliere expressie die perl-compatibel is en die vergeleken wordt met  het  volledige
       relatieve  pad  van  elk  bestand.  -I  kan  meermaals  opgegeven  worden  en verwacht een
       bestandsnaampatroon met shell-jokertekens. Het patroon wordt toegepast  op  het  volledige
       relatieve  pad  maar ook op elk individueel onderdeel van het pad. De exacte semantiek van
       de optie --exclude van tar is enigszins gecompliceerd. Zie voor een volledige documentatie
       https://www.gnu.org/software/tar/manual/tar.html#wildcards.

       De standaard reguliere expressies en patronen voor beide opties zijn te zien in de uitvoer
       van het commando --help.

   Generieke extractieopties
       --no-copy
              Kopieer de originele tar-archieven bij het geëxtraheerde broncodepakket niet (sinds
              dpkg 1.14.17).

       --no-check
              Controleer  voor  het  uitpakken geen ondertekeningen en controlesommen (sinds dpkg
              1.14.17).

       --no-overwrite-dir
              Overschrijf de extractiemap niet als ze al bestaat (sinds dpkg 1.18.8).

       --require-valid-signature
              Weiger het broncodepakket uit te pakken als het  geen  OpenPGP-ondertekening  bevat
              die    kan    gecontroleerd    worden    (sinds   dpkg   1.15.0)   met   ofwel   de
              trustedkeys.gpg-sleutelbos van de  gebruiker,  één  van  de  leveranciersspecifieke
              sleutelbossen   of   met   één   van   de   officiële   sleutelbossen   van  Debian
              (/usr/share/keyrings/debian-keyring.gpg                                          en
              /usr/share/keyrings/debian-maintainers.gpg).

       --require-strong-checksums
              Wijger het broncodepakket uit te pakken als het geen krachtige controlesommen bevat
              (sinds dpkg 1.18.7). Momenteel is SHA-256 de  enige  gekende  controlesom  die  als
              krachtig aanzien wordt.

       --ignore-bad-version
              Als  bij  een  controle  het  versienummer van het broncodepakket foutief blijkt te
              zijn, maakt deze instelling dat de gegeven waarschuwing geen fataal karakter  heeft
              (sinds  dpkg 1.17.7). Deze optie zou enkel nodig moeten zijn bij het extraheren van
              oude broncodepakketten met een defecte versie  om  neerwaartse  compatibiliteit  te
              verzekeren.

INDELINGEN VAN BRONCODEPAKKETTEN

       Indien  u  niet  weet welke indeling te kiezen voor de broncode, zou u wellicht ofwel “3.0
       (quilt)” of “3.0 (native)” moeten kiezen.  Zie  https://wiki.debian.org/Projects/DebSrc3.0
       voor informatie over het in gebruik nemen van deze indelingen binnen Debian.

   Indeling: 1.0
       Een  broncodepakket volgens deze indeling bestaat ofwel uit een .orig.tar.gz gekoppeld aan
       een .diff.gz of één enkele .tar.gz (in dat geval wordt  van  het  pakket  gezegd  dat  het
       native (eigen - van oorsprong van Debian) is). Optioneel mag bij het originele tar-archief
       een afzonderlijke handtekening  van  de  toeleveraar  .orig.tar.gz.asc  gevoegd  zijn.  De
       extractie ervan wordt ondersteund sinds dpkg 1.18.5.

       Extraheren

       Een  Debian-eigen  (native)  pakket  extraheren  is een eenvoudige extractie van het enige
       tar-archief in de doelmap. Een  niet-eigen  pakket  extraheren  bestaat  eruit  dat  eerst
       .orig.tar.gz  uitgepakt  wordt  en  dat  dan de patch erop toegepast wordt uit het bestand
       .diff.gz. Voor alle bestanden waarop een patch toegepast werd,  wordt  de  tijdsaanduiding
       teruggezet   op   het  tijdstip  van  extraheren  van  het  broncodepakket  (dit  vermijdt
       scheeftrekkingen  van  de  tijdsaanduiding  hetgeen  tot  problemen  kan  leiden   wanneer
       automatisch gegenereerde bestanden gepatcht worden). Het diff-bestand kan nieuwe bestanden
       aanmaken (de volledige debian-map wordt op die manier aangemaakt), maar kan geen bestanden
       verwijderen (lege bestanden blijven achter).

       Bouwen

       Een  Debian-eigen  (native) pakket bouwen is gewoon een enkel tar-archief maken met daarin
       de broncodemap. Een niet-eigen pakket bouwen bestaat uit het extraheren van het  originele
       tar-archief  in  een  aparte  map “.orig” en het opnieuw aanmaken van het bestand .diff.gz
       door de map van het broncodepakket te vergelijken met de .orig-map.

       Bouwopties (met --build):

       Indien een tweede argument opgegeven wordt dat geen optie is, moet  het  de  naam  van  de
       originele  broncodemap  zijn  of van het tar-archief of een lege tekenreeks als het pakket
       Debian-specifiek is en dus geen diffs bevat in verband met de debianisering.  Indien  geen
       tweede  argument  opgegeven  werd,  zal  dpkg-source  zoeken  naar  het tar-bestand met de
       originele broncode pakket_toeleveraarsversie.orig.tar.gz of naar de map met  de  originele
       broncode map.orig, afhankelijk van de argumenten -sX.

       -sa,  -sp,  -sk,  -su en -sr zullen geen bestaande tar-bestanden of -mappen overschrijven.
       Indien dat wel gewenst wordt, dan moeten in de plaats daarvan -sA, -sP, -sK,  -sU  en  -sR
       gebruikt worden.

       -sk    Geeft  aan  dat  verwacht  mag  worden dat de originele broncode in de vorm van een
              tar-bestand       kan       aangetroffen        worden,        wat        standaard
              pakket_toeleveraarsversie.orig.tar.extensie is. Het zal deze originele broncode als
              een tar-bestand laten staan of ze naar de huidige map kopiëren als ze zich daar nog
              niet  bevindt.  Het tar-archief zal uitgepakt worden in map.orig met het oog op het
              genereren van het diff-bestand.

       -sp    Zoals -sk maar dit zal naderhand de map weer verwijderen.

       -su    Geeft aan dat verwacht mag worden dat de originele broncode in de vorm van een  map
              kan  aangetroffen  worden,  wat  standaard  pakket-toeleveraarsversie.orig  is,  en
              dpkg-source zal er een nieuw archief met de originele broncode mee maken.

       -sr    Zoals -su, maar het zal die map na gebruik verwijderen.

       -ss    Geeft aan dat de originele broncode zowel als een  map  als  in  de  vorm  van  een
              tar-bestand  te  vinden is. dpkg-source zal de map gebruiken om het diff-bestand te
              creëren, maar het tar-bestand om het .dsc-bestand te maken. Gebruik deze optie  met
              zorg  -  indien  de  map  en  het  tar-bestand  niet overeenkomen zal er een slecht
              broncodearchief gegenereerd worden.

       -sn    Geeft aan dat er niet naar een originele broncode gezocht moet  worden  en  dat  er
              geen  diff-bestand  aangemaakt  moet  worden.  Als er een tweede argument opgegeven
              wordt, moet het de lege tekenreeks zijn. Dit wordt gebruikt voor  Debian-specifieke
              pakketten  die  geen  afzonderlijke toeleveraarsbroncode hebben en om die reden ook
              geen debianiserings-diffs.

       -sa of -sA
              Geeft aan dat naar de originele broncode gezocht moet worden in  de  vorm  van  een
              tar-bestand of een map. Als er een tweede argument opgegeven wordt, mag dat een van
              die twee zijn of een lege tekenreeks (dit is het equivalent voor  het  gebruik  van
              -sn).  Indien  er  een  tar-bestand  gevonden  wordt,  zal het dat uitpakken om het
              diff-bestand aan te maken en het daarna verwijderen (dit  is  het  equivalent  voor
              -sp).  Indien  een  map  aangetroffen  wordt,  zal het die inpakken om de originele
              broncode te creëren en ze vervolgens verwijderen (dit is het equivalent voor  -sr).
              Indien  geen  van  beide  gevonden  wordt,  zal  het  aannemen  dat het pakket geen
              debianiserings-diffs heeft, maar enkel een eenvoudig broncodearchief  (dit  is  het
              equivalent  voor -sn). Indien beide aangetroffen worden, dan zal dpkg-source de map
              negeren, en ze overschrijven als -sA opgegeven werd (dit  is  het  equivalent  voor
              -sP) of een foutmelding geven als -sa opgegeven werd. -sa is de standaard.

       --abort-on-upstream-changes
              Het  proces  mislukt  als  het  gegenereerde diff-bestand wijzigingen aan bestanden
              buiten de onderliggende debian-map bevat (sinds dpkg  1.15.8).  Deze  optie  is  in
              debian/source/options   niet  toegestaan,  maar  ze  kan  wel  gebruikt  worden  in
              debian/source/local-options.

       Extractieopties (met --extract):

       In alle gevallen zal een eventuele bestaande originele broncodeboom verwijderd worden.

       -sp    Als dit bij het extraheren gebruikt wordt, dan zal  het  de  (eventuele)  originele
              broncode in zijn vorm van tar-bestand laten. Indien dit zich nog niet in de huidige
              map bevindt, of indien er zich een bestaand maar verschillend bestand bevindt,  zal
              het naar daar gekopieerd worden. (Dit is de standaard).

       -su    Pakt de originele broncodeboom uit.

       -sn    Zorgt  ervoor  dat  de originele broncode noch naar de huidige map gekopieerd wordt
              noch uitgepakt wordt. Een eventuele originele broncodeboom die zich in  de  huidige
              map bevond, wordt nog steeds verwijderd.

       Al  de -sX-opties sluiten elkaar wederzijds uit. Indien u er meer dan één opgeeft, dan zal
       enkel de laatste gebruikt worden.

       --skip-debianization
              Slaat het toepassen van de debian diff bovenop de broncode van de toeleveraar  over
              (sinds dpkg 1.15.1).

   Indeling: 2.0
       Extraheren  wordt  sinds dpkg 1.13.9 ondersteund, bouwen sinds dpkg 1.14.8. Ook gekend als
       wig&pen. Deze indeling wordt niet  aangeraden  voor  massaal  gebruik,  de  indeling  “3.0
       (quilt)”  vervangt  ze.  Wig&pen was de eerste specificatie van een broncodepakketindeling
       van de nieuwe generatie.

       Het gedrag van deze indeling is hetzelfde als bij de indeling “3.0 (quilt)”,  behalve  dat
       het  geen  gebruik  maakt  van  een  expliciete  lijst  van  patches.  Alle  bestanden  in
       debian/patches/ die beantwoorden aan de reguliere expressie [\w-]+ moeten geldige  patches
       zijn: zij worden op het moment van extraheren toegepast.

       Bij  het  bouwen van een nieuw broncodepakket worden eventuele wijzigingen aan de broncode
       van de toeleveraar opgeslagen in een patch met als naam zz_debian-diff-auto.

   Indeling: 3.0 (native) (d.w.z. debian-eigen)
       Wordt ondersteund sinds dpkg 1.14.17. Deze indeling  is  een  uitbreiding  van  de  native
       pakketindeling,   zoals   gedefinieerd   in   de   indeling   1.0.   Ze  ondersteunt  alle
       compressiemethodes en negeert  standaard  eventuele  VCS-specifieke  bestanden  en  mappen
       (bestanden  en  mappen  die  verband  houden  met  het  versiebeheersysteem)  evenals vele
       tijdelijke bestanden (zie de uitvoer van de optie --help voor de  standaardwaarde  van  de
       optie -I).

   Indeling: 3.0 (quilt)
       Wordt  ondersteund  sinds  dpkg  1.14.17.  Een  broncodepakket volgens deze indeling bevat
       minstens een origineel tar-archief (.orig.tar.ext waarbij ext gz,  bz2,  lzma  en  xz  kan
       zijn)  en  een  debian  tar-archief  (.debian.tar.ext).  Het  kan ook bijkomende originele
       tar-archieven bevatten (.orig-component.tar.ext). component mag enkel alfanumerieke tekens
       (‘a-zA-Z0-9’)  en koppeltekens (‘-’) bevatten. Optioneel mag bij elk origineel tar-archief
       een   afzonderlijke   handtekening    van    de    toeleveraar    (.orig.tar.ext.asc    en
       .orig-component.tar.ext.asc),  gevoegd  worden. De extractie ervan wordt ondersteund sinds
       dpkg 1.17.20 en het bouwen sinds dpkg 1.18.5.

       Extraheren

       Eerst wordt het belangrijkste  originele  tar-archief  uitgepakt  en  nadien  worden  alle
       bijkomende  originele  tar-archieven  uitgepakt in onderliggende mappen die genoemd worden
       naar het component-gedeelte van hun bestandsnaam (een eventuele reeds bestaande map  wordt
       vervangen).  Het  debian tar-archief wordt bovenop de broncodemap geëxtraheerd nadat eerst
       een eventuele  reeds  bestaande  debian-map  verwijderd  werd.  Merk  op  dat  het  debian
       tar-archief een onderliggende map debian moet bevatten, maar dat het ook binaire bestanden
       kan bevatten buiten die map (zie de optie --include-binaries).

       Vervolgens    worden    alle     patches     toegepast     die     vermeld     zijn     in
       debian/patches/leverancier.series of debian/patches/series, waarbij leverancier de naam is
       in kleine letters van de huidige leverancier, of debian als geen leverancier  gedefinieerd
       is.  Indien  het  eerste  bestand  gebruikt  wordt  en  het  laatste  niet bestaat (of een
       symbolische koppeling is), dan zal het  laatste  vervangen  worden  door  een  symbolische
       koppeling  naar het eerste. Dit is bedoeld om het gebruik van quilt bij het beheer van het
       geheel van patches te vereenvoudigen. Leveranciersspecifieke series-bestanden  hebben  tot
       doel  het  serialiseren  van  meerdere  leveranciersgebonden  ontwikkelingstakken  op  een
       declaratieve manier mogelijk te maken, wat verkieslijker is boven een  open  codering  van
       deze  manipulatie  in  debian/rules.  Dit  is  in het bijzonder nuttig wanneer de broncode
       voorwaardelijk  gepatched  moet  worden  omdat  de  betrokken  bestanden  geen  ingebouwde
       ondersteuning  hebben  voor conditionele occlusie. Merk nochtans op dat hoewel dpkg-source
       op correcte wijze de ontleding uitvoert van series-bestanden  met  expliciete  opties  die
       gebruikt  worden  voor  het  toepassen  van  patches  (op  elke  regel  opgeslagen  na  de
       bestandsnaam van de patch en één of meer spaties),  het  deze  opties  negeert  en  steeds
       patches  verwacht  die kunnen toegepast worden met de optie -p1 van patch. Het zal dus een
       waarschuwing geven als het dergelijke opties tegenkomt en het  bouwen  zal  waarschijnlijk
       mislukken.

       Opmerking:   indien   leveranciers-series-bestanden   gebruikt  worden,  geeft  lintian(1)
       onvoorwaardelijke  waarschuwingen  als  gevolg  van  een  controversieel  Debian-specifiek
       besluit.   Extern  gebruik  zou  hierdoor  niet  getroffen  mogen  worden.  Om  dergelijke
       waarschuwingen het zwijgen op te leggen kunt u het dpkg-profiel van lintian gebruiken door
       aan lintian(1) de optie «--profile dpkg» mee te geven.

       Voor  alle  bestanden waarop een patch toegepast werd, wordt de tijdsaanduiding teruggezet
       op het tijdstip van extraheren van het broncodepakket (dit vermijdt  scheeftrekkingen  van
       de  tijdsaanduiding  hetgeen  tot  problemen  kan  leiden wanneer automatisch gegenereerde
       bestanden gepatcht worden).

       In tegenstelling tot het standaardgedrag van quilt wordt verwacht dat patches zonder gedoe
       toegepast  kunnen  worden. Indien dat niet het geval is, zou u de patches moeten verversen
       met quilt, anders zal dpkg-source met een foutmelding afbreken terwijl het probeert ze toe
       te passen.

       Analoog aan het standaardgedrag van quilt kunnen patches ook bestanden verwijderen.

       Als tijdens het extraheren patches werden toegepast, wordt het bestand .pc/applied-patches
       aangemaakt.

       Bouwen

       Alle originele tar-archieven die in de huidige map gevonden worden, worden geëxtraheerd in
       een  tijdelijke  map  en  daarbij  wordt dezelfde logica gevolgd als bij het uitpakken. De
       debian-map wordt naar de tijdelijke map  gekopieerd  en  alle  patches  worden  toegepast,
       behalve  de  automatische  patch (debian-changes-versie of debian-changes, afhankelijk van
       --single-debian-patch).  De  tijdelijke  map  wordt  vergeleken  met  de   map   van   het
       broncodepakket.   Indien   de  diff  niet  leeg  is,  zal  het  bouwen  mislukken,  tenzij
       --single-debian-patch of --auto-commit gebruikt werden en  in  dat  geval  wordt  de  diff
       opgeslagen  in  de  automatische patch. Indien de automatische patch aangemaakt/verwijderd
       wordt, wordt hij toegevoegd aan/verwijderd van het bestand series en van de  metadata  van
       quilt.

       Een  eventuele wijziging aan een binair bestand kan niet weergegeven worden in een diff en
       zal dus tot een mislukking leiden, tenzij de  onderhouder  bewust  besloot  dat  gewijzigd
       binair  bestand  toe  te  voegen  aan  het  Debian  tar-archief  (door het op te sommen in
       debian/source/include-binaries). Het bouwen zal ook mislukken  als  er  binaire  bestanden
       aangetroffen  worden  in  de  onderliggende map debian, tenzij zij op de witte lijst gezet
       werden via debian/source/include-binaries.

       De bijgewerkte map debian en de lijst van gewijzigde binaire bestanden wordt dan  gebruikt
       om het Debian tar-archief te genereren.

       De  automatisch  gegenereerde  diff  bevat  geen  wijzigingen aan VCS-specifieke bestanden
       (d.w.z. bestanden eigen aan het versiebeheersysteem)  en  aan  veel  tijdelijke  bestanden
       (kijk  in de uitvoer van --help voor de standaardwaarde die met de optie -i) verbonden is.
       In het bijzonder wordt de map .pc die door quilt gebruikt  wordt,  genegeerd  tijdens  het
       genereren van de automatische patch.

       Opmerking:  dpkg-source --before-build (en --build) zal ervoor zorgen dat alle patches die
       in het bestand series opgesomd zijn, toegepast worden, zodat bij het bouwen van een pakket
       steeds  alle  patches  toegepast  zijn.  Het  doet dit door te zoeken naar niet-toegepaste
       patches (ze worden opgesomd in het bestand series maar  niet  in  .pc/applied-patches)  en
       indien  de  eerste  patch uit die reeks foutloos toegepast kan worden, zal het ze allemaal
       toepassen. De optie --no-preparation kan gebruikt worden om dit gedrag uit te schakelen.

       Wijzigingen optekenen

       --commit [map] [patchnaam] [patchbestand]
              Genereert een patch in  verband  met  de  lokale  wijzigingen  die  niet  door  het
              patchsysteem  van  quilt beheerd worden en integreert die in het patchsysteem onder
              de naam patchnaam. Indien de naam ontbreekt, zal er interactief om gevraagd worden.
              Indien  patchbestand  opgegeven werd, wordt dat gebruikt als de te integreren patch
              in verband met de lokale wijzigingen. Na de integratie wordt een editor  opgestart,
              zodat u de meta-informatie in de koptekst van de patch kunt bewerken.

              Een  patchbestand  opgeven  is  vooral  nuttig  na  een mislukte bouwpoging die dat
              bestand vooraf  aanmaakte.  Op  grond  daarvan  wordt  dat  bestand  na  integratie
              verwijderd.  Merk  ook  op  dat  de  wijzigingen die het patch-bestand bevat, reeds
              toegepast moeten zijn op de boom en dat de bestanden die door  de  patch  aangepast
              werden geen bijkomende niet-opgetekende wijzigingen mogen bevatten.

              Indien  het genereren van de patch gewijzigde binaire bestanden opmerkt, zullen die
              automatisch toegevoegd worden aan debian/source/include-binaries, zodat die terecht
              komen  in  het  debian  tar-archief  (exact  op  dezelfde  manier  als  dpkg-source
              --include-binaries --build zou doen).

       Bouwopties

       --allow-version-of-quilt-db=versie
              Laat dpkg-source toe het broncodepakket te bouwen als de versie van de metadata van
              quilt  de  opgegeven  versie  is,  zelfs  al  kent dpkg-source die niet (sinds dpkg
              1.15.5.4). Dit zegt  effectief  dat  de  opgegeven  versie  van  de  quilt-metadata
              compatibel  is  met  versie  2 die momenteel door dpkg-source ondersteund wordt. De
              versie van de metadata van quilt wordt opgeslagen in .pc/.version.

       --include-removal
              Negeer verwijderde bestanden niet en neem ze  op  in  de  automatisch  gegenereerde
              patch.

       --include-timestamp
              Voeg de tijdsaanduiding toe in de automatisch gegenereerde patch.

       --include-binaries
              Voeg  alle gewijzigde binaire bestanden toe aan het debian tar-archief. Voeg ze ook
              toe in debian/source/include-binaries: in erop volgende bouwactiviteiten zullen  ze
              standaard toegevoegd worden en is deze optie dus niet meer nodig.

       --no-preparation
              Tracht  de  bouwboom niet voor te bereiden door patches toe te passen die blijkbaar
              niet toegepast zijn (sinds dpkg 1.14.18).

       --single-debian-patch
              Gebruik         debian/patches/debian-changes         in         plaats         van
              debian/patches/debian-changes-versie  voor  de  naam  van  de  tijdens  het  bouwen
              automatisch gegenereerde  patch  (sinds  dpkg  1.15.5.4).  Deze  optie  is  in  het
              bijzonder  nuttig als het pakket wordt onderhouden in een VCS (versiebeheersysteem)
              en een reeks patches niet op een betrouwbare  manier  gegenereerd  kan  worden.  De
              huidige  verschillen  (de  diff) met de toeleveraarsversie moeten dan eerder in een
              enkele   patch   opgeslagen    worden.    Deze    optie    wordt    geplaatst    in
              debian/source/local-options      en      gaat     samen     met     een     bestand
              debian/source/local-patch-header  waarin  uitgelegd  wordt  hoe  de   door   Debian
              aangebrachte   wijzigingen   best   herzien  kunnen  worden,  bijvoorbeeld  in  het
              versiebeheersysteem dat gebruikt wordt.

       --create-empty-orig
              Creëer automatisch een leeg primair origineel tar-archief als dat ontbreekt  en  er
              wel  bijkomende  originele  tar-archieven  zijn  (sinds dpkg 1.15.6). Deze optie is
              bedoeld om gebruikt te worden als het broncodepakket  slechts  een  bundel  is  van
              samengestelde toegeleverde software zonder een “centraal” programma.

       --no-unapply-patches, --unapply-patches
              Standaard  zal  dpkg-source  de  patches  uit  de  uitbreiding (hook) --after-build
              automatisch  terugdraaien  als  het  die  tijdens  --before-build  heeft  toegepast
              (--unapply-patches sinds dpkg 1.15.8, --no-unapply-patches sinds dpkg 1.16.5). Deze
              opties laten  u  toe  om  het  proces  van  automatisch  terugdraaien  van  patches
              uitdrukkelijk   in   of   uit   te   schakelen.   Deze   opties   mogen   enkel  in
              debian/source/local-options    gebruikt    worden,    zodat    alle    gegenereerde
              broncodepakketten standaard hetzelfde gedrag vertonen.

       --abort-on-upstream-changes
              Het proces mislukt als een automatische patch gegenereerd werd (sinds dpkg 1.15.8).
              Deze optie kan gebruikt worden  om  te  verzekeren  dat  alle  wijzigingen  terdege
              geregistreerd   worden   in   aparte  quilt-patches  vooraleer  het  broncodepakket
              gegenereerd wordt. Deze optie is niet toegestaan in debian/source/options, maar mag
              gebruikt worden in debian/source/local-options.

       --auto-commit
              Het  proces  mislukt niet als een automatische patch gegenereerd werd. In de plaats
              daarvan wordt hij onmiddellijk opgetekend in het bestand series van quilt.

       Extractieopties

       --skip-debianization
              Slaat het extraheren  van  het  debian  tar-archief  bovenop  de  broncode  van  de
              toeleveraar over (sinds dpkg 1.15.1).

       --skip-patches
              Pas op het einde van de extractie geen patches toe (sinds dpkg 1.14.18).

   Indeling: 3.0 (custom) (d.w.z. aangepast)
       Ondersteund  sinds dpkg 1.14.17. Deze indeling is bijzonder. Ze stelt eigenlijk geen echte
       broncodepakketindeling voor, maar kan gebruikt worden om broncodepakketten met  arbitraire
       bestanden te maken.

       Bouwopties

       Alle   argumenten   die  geen  opties  zijn,  worden  geïnterpreteerd  als  bestanden  die
       geïntegreerd moeten worden in het gegenereerde broncodepakket. Ze moeten bestaan  en  zich
       bij voorkeur in de huidige map bevinden. Tenminste één bestand moet opgegeven worden.

       --target-format=waarde
              Verplicht.  Definieert  de  echte indeling van het gegenereerde broncodepakket. Het
              gegenereerde .dsc-bestand zal in het veld Format deze waarde bevatten en niet  “3.0
              (custom)”.

   Indeling: 3.0 (git)
       Ondersteund sinds dpkg 1.14.17. Dit is een experimentele indeling.

       Een  broncodepakket  volgens  deze  indeling  bestaat uit een eenvoudige bundeling van een
       git-depot .git die de broncode van het pakket bevat. Er kan ook  een  bestand  .gitshallow
       bestaan  die  de  revisies  vermeldt van een git shallow clone (een summiere kloon van een
       git-depot).

       Extraheren

       De bundel wordt gekloond in de doelmap als een git-depot. Als er  een  bestand  gitshallow
       bestaat, wordt het als .git/shallow geïnstalleerd binnenin het gekloonde git-depot.

       Merk  op  dat  standaard  het  nieuwe  depot  dezelfde  tak  zal  binnengehaald hebben die
       binnengehaald was in de originele broncode. (Meestal is dat “master”, maar dat kan om  het
       even wat zijn). Eventuele andere takken zullen beschikbaar zijn onder remotes/origin/.

       Bouwen

       Vooraleer  voort  te  gaan, worden een aantal controles uitgevoerd om zeker te zijn dat er
       geen niet-vastgelegde wijzigingen zijn die niet mogen genegeerd worden.

       git-bundle(1) wordt gebruikt om een bundel  te  genereren  van  het  git-depot.  Standaard
       worden alle takken en tags uit het depot in de bundel opgenomen.

       Bouwopties

       --git-ref=ref
              Laat  toe om een git-referentie op te geven die in de bundel opgenomen moet worden.
              Daar gebruik van maken schakelt het standaardgedrag om alle takken en  tags  op  te
              nemen  uit.  Kan meermaals vermeld worden. De referentie kan de naam van een tak of
              een tag zijn die opgenomen  moet  worden.  Het  kan  ook  een  parameter  zijn  die
              doorgegeven  kan  worden aan git-rev-list(1). Gebruik bijvoorbeeld --git-ref=master
              om enkel de master-tak op te  nemen.  Om  alle  takken  en  tags,  behalve  de  tak
              persoonlijk op te nemen, gebruikt u --git-ref=--all --git-ref=^persoonlijk.

       --git-depth=aantal
              Creëert een summiere (shallow) kloon met een geschiedenis die afgekapt werd bij het
              opgegeven aantal revisies.

   Indeling: 3.0 (bzr)
       Ondersteund sinds dpkg 1.14.17. Dit is een experimentele indeling. Ze genereert één  enkel
       tar-archief met daarin het bzr-depot.

       Extraheren

       Het  tar-archief  wordt  uitgepakt  en  daarna  wordt bzr gebruikt om een werkkopie van de
       huidige tak te maken.

       Bouwen

       Vooraleer voort te gaan, worden een aantal controles uitgevoerd om zeker te  zijn  dat  er
       geen niet-vastgelegde wijzigingen zijn die niet mogen genegeerd worden.

       Daarna  wordt  het  versiebeheerspecifieke  deel  van  de  broncodemap gekopieerd naar een
       tijdelijke map. Vooraleer deze tijdelijke map in een tar-archief  ingepakt  wordt,  worden
       verschillende opruimtaken verricht om plaats te winnen.

DIAGNOSTIEK

   geen broncode-indeling opgegeven in debian/source/format
       Het  bestand  debian/source/format  moet  altijd  bestaan en de gewenste broncode-indeling
       aangeven. Met het oog op neerwaartse compatibiliteit wordt  indeling  “1.0”  verondersteld
       als  het  bestand  niet  bestaat,  maar  u  zou hierop niet moeten betrouwen: ergens in de
       toekomst zal dpkg-source aangepast worden, zodat het zal mislukken als  het  bestand  niet
       bestaat.

       De  verantwoording  is  dat  indeling  “1.0”  niet langer de aanbevolen indeling is. U zou
       gewoonlijk één van de recentere indelingen (“3.0 (quilt)”, “3.0 (native)”) moeten  kiezen,
       maar  dpkg-source  zal  dit  niet  automatisch voor u doen. Indien u de oude indeling wilt
       blijven   gebruiken,   moet   u   dat   expliciet   aangeven   en   “1.0”   plaatsen    in
       debian/source/format.

   de diff wijzigt de volgende bestanden van de toeleveraar
       Als  u  broncode-indeling  “1.0”  gebruikt,  is het meestal geen goed idee om rechtstreeks
       wijzigingen aan te brengen  in  bestanden  van  de  toeleveraar,  vermits  de  wijzigingen
       verborgen  en  grotendeels  niet-gedocumenteerd belanden in het bestand .diff.gz. U zou uw
       wijzigingen dan beter opslaan als patches in de map debian en ze dan op het  ogenblik  van
       het bouwen toepassen. Om deze complexe werkwijze te vermijden, kunt u ook de indeling “3.0
       (quilt)” gebruiken, die dit geïntegreerd aanbiedt.

   kan wijziging aan bestand niet representeren
       Wijzigingen aan de broncode van  de  toeleveraar  worden  gewoonlijk  met  patch-bestanden
       opgeslagen,  maar  niet  alle wijzigingen kunnen met patches gerepresenteerd worden, omdat
       die enkel de inhoud van gewone tekstbestanden  kunnen  aanpassen.  Indien  u  een  bestand
       tracht  te  vervangen  door  iets  van  een  ander  type  (bijvoorbeeld een gewoon bestand
       vervangen door een symbolische koppeling of een map), zult u deze foutmelding krijgen.

   nieuw gecreëerd leeg bestand bestand zal niet gerepresenteerd worden in de diff
       Lege bestanden  kunnen  niet  met  behulp  van  patch-bestanden  aangemaakt  worden.  Deze
       wijziging  wordt  dus  niet  geregistreerd  in  het  broncodepakket  en  u  wordt daarover
       ingelicht.

   toegangsrechten uitvoerbare modus van bestand zullen niet gerepresenteerd worden in de diff
       Patch-bestanden registreren geen toegangsrechten van bestanden en dus wordt het  feit  dat
       een  bestand  uitvoerbaar  is,  niet  in  het broncodepakket opgeslagen. Deze waarschuwing
       brengt dit feit in herinnering.

   toegangsrechten bijzondere modus van bestand zullen niet gerepresenteerd worden in de diff
       Patch-bestanden registreren geen toegangsrechten van bestanden en dus  worden  wijzigingen
       aan  toegangsrechten  niet  opgeslagen in het broncodepakket. Deze waarschuwing brengt dit
       feit in herinnering.

OMGEVING

       DPKG_COLORS
              Stelt de kleurmodus in (sinds dpkg 1.18.5). Waarden die  momenteel  gebruikt  mogen
              worden zijn: auto (standaard), always en never.

       DPKG_NLS
              Indien dit ingesteld is, zal het gebruikt worden om te beslissen over het activeren
              van moedertaalondersteuning, ook gekend als internationaliseringsondersteuning  (of
              i18n) (sinds dpkg 1.19.0). Geldige waarden zijn: 0 and 1 (standaard).

       SOURCE_DATE_EPOCH
              Indien  dit  ingesteld  werd,  zal  het  gebruikt  worden  als  de  tijdsaanduiding
              (timestamp) (in seconden sinds de epoch) om de mtime vast te zetten op de items uit
              het tar(5)-bestand.

       VISUAL
       EDITOR Gebruikt door de broncode-indelingmodules “2.0” en “3.0 (quilt)”.

       GIT_DIR
       GIT_INDEX_FILE
       GIT_OBJECT_DIRECTORY
       GIT_ALTERNATE_OBJECT_DIRECTORIES
       GIT_WORK_TREE
              Gebruikt door de broncode-indelingmodules “3.0 (git)”.

BESTANDEN

   debian/source/format
       Dit  bestand  bevat  op  één  enkele  regel  de  indeling  die gebruikt moet worden om het
       broncodepakket te bouwen (mogelijke indelingen werden hierboven beschreven).  Voorafgaande
       of nakomende witruimte is niet toegelaten.

   debian/source/include-binaries
       Dit  bestand  bevat  een  lijst van binaire bestanden (één per regel) die opgenomen moeten
       worden in het debian tar-archief.  Voorafgaande  of  nakomende  spaties  worden  gestript.
       Regels  die  beginnen  met  ‘#’ zijn commentaar en worden overgeslagen. Lege regels worden
       genegeerd.

   debian/source/options
       Dit bestand bevat een lijst met lange opties die automatisch voorgevoegd moeten worden aan
       de  reeks  commandoregelopties  die  gebruikt  worden  bij  het  inroepen van het commando
       dpkg-source  --build  of  dpkg-source  --print-format.  Opties  zoals   --compression   en
       --compression-level zijn zeer geschikt voor dit bestand.

       Elke  optie  moet op een aparte regel geplaatst worden. Lege regels en regels die beginnen
       met ‘#’ worden genegeerd. De ‘--’ vooraan moeten weggelaten worden en  korte  opties  zijn
       niet   toegelaten.   Facultatieve   witruimte   rond   het  symbool  ‘=’  en  facultatieve
       aanhalingstekens rond de waarde zijn  toegelaten.  Hierna  volgt  een  voorbeeld  van  een
       dergelijk bestand:

         # laat dpkg-source een bestand debian.tar.bz2 aanmaken met maximale compressie
         compression = "bzip2"
         compression-level = 9
         # gebruik debian/patches/debian-changes als automatische patch
         single-debian-patch
         # negeer wijzigingen aan config.{sub,guess}
         extend-diff-ignore = "(^|/)(config.sub|config.guess)$"

       Opmerking:  --format-opties  worden  niet  aanvaard in dit bestand. U moet daarvoor eerder
       debian/source/format gebruiken.

   debian/source/local-options
       Precies zoals debian/source/options, behalve dat het bestand niet opgenomen wordt  in  het
       gegenereerde  broncodepakket. Dit kan nuttig zijn om een voorkeur op te slaan die eigen is
       aan de onderhouder of aan een bepaald depot van een versiebeheersysteem waarin het  pakket
       onderhouden wordt.

   debian/source/local-patch-header en debian/source/patch-header
       Vrij  opgemaakte  tekst die geplaatst wordt bovenaan de automatische patch die gegenereerd
       wordt bij de indelingen “2.0” en “3.0 (quilt)”. local-patch-header wordt  niet  toegevoegd
       aan het gegenereerde broncodepakket, terwijl dat met patch-header wel het geval is.

   debian/patches/leverancier.series
   debian/patches/series
       Dit  bestand  somt  alle patches op die toegepast moeten worden (in de opgegeven volgorde)
       bovenop het broncodepakket  van  de  toeleveraar.  Spaties  vooraan  en  achteraan  worden
       weggehaald.  leverancier is de naam in kleine letters van de huidige leverancier of debian
       als geen leverancier gedefinieerd werd. Indien het  leveranciersspecifieke  series-bestand
       niet bestaat, zal het leveranciersloze series-bestand gebruikt worden. Regels die beginnen
       met ‘#’ zijn commentaar en worden overgeslagen. Lege regels worden genegeerd.  De  overige
       regels  beginnen  met  de  bestandsnaam  van  een  patch (relatief ten opzichte van de map
       debian/patches/) tot aan de  eerste  spatie  of  het  einde  van  de  regel.  Facultatieve
       quilt-opties  kunnen  daarna  komen  tot  aan het einde van de regel of tot aan het eerste
       ‘#’-teken dat voorafgegaan wordt door één of meer  spaties  (hetgeen  het  begin  van  een
       commentaarstuk aangeeft dat doorloopt tot het einde van de regel).

BUGS

       Het   punt  waarop  de  vervanging  van  velden  plaats  vindt,  vergeleken  met  bepaalde
       standaardinstellingen voor uitvoervelden, is eerder onduidelijk.

ZIE OOK

       deb-src-control(5), deb-changelog(5), dsc(5).