.\" dpkg manual page - dpkg-source(1) .\" .\" Copyright © 1995-1996 Ian Jackson .\" Copyright © 2000 Wichert Akkerman .\" Copyright © 2006-2007 Frank Lichtenheld .\" Copyright © 2006-2012 Guillem Jover .\" Copyright © 2008-2011 Raphaël Hertzog .\" Copyright © 2010 Joey Hess .\" .\" This is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 2 of the License, or .\" (at your option) any later version. .\" .\" This is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see . . .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH dpkg\-source 1 2012\-05\-04 Debianprojektet dpkg\-verktygen .SH NAMN dpkg\-source \- Verktyg för att manipulera Debiankällkodspaket (.dsc) . .SH SYNOPS \fBdpkg\-source\fP [\fIflagga\fP...] \fIåtgärd\fP . .SH BESKRIVNING \fBdpkg\-source\fP packar och packar upp Debiankällkodsarkiv. Inga av dessa kommandon tillåter att flera flaggor kombineras till ett, och de tillåter inte att värdet på en flagga anges som ett separat argument. . .SH KOMMANDON .TP \fB\-x \fP\fIfilnamn\fP\fB.dsc \fP[\fIutdatakatalog\fP] Extrahera ett källkodspaket. Ett argument som inte är en flagga måste anges, namnet på debiankällkodsstyrfilen (\fB.dsc\fP). Ett valfritt andra argument som inte är en flagga kan anges för att bestämma vilken katalog källkoden skall packas upp i, det får inte existera. Om du inte anger någon utdatakatalog extraheras källkodspaketet till en katalog som heter \fIkällkod\fP\-\fIversion\fP i den aktuella arbetskatalogen. \fBdpkg\-source\fP läser namnen på de övriga filer som ingår i källkodspaketet från styrfilen; de antas vara i samma katalog som \fB.dsc\fP\-filen. Filerna i det extraherade paketet kommer att ha behörighet och ägare satta till det som kunde förväntas om filerna och katalogerna bara hade skapats \- kataloger och körbara filer kommer ha 0777 och enkla filer 0666, båda modifierade av uppackarens umask; om föräldrakatalogen är setgid kommer de extraherade katalogerna också att vara det, och samtliga filer och kataloger kommer ärva dess gruppägarskap. Om källkoden använder ett annat format än standardformatet (gäller för närvarande alla format förutom "1.0"), kommer dess namn att lagras som \fBdebian/source/format\fP så att det används som standard när källkodspaketet byggs på nytt. .TP \fB\-b\fP \fIkatalog\fP [\fIformatspecifika\-flaggor\fP] Bygg ett källkodpaket. Det första argumentet som inte är en flagga tas som namn på katalogen som innehåller det debianiserade källkodsträdet (dvs. med underkatalogen "debian" och kanske ändringar på originalfilerna). Beroende på vilket källkodspaketformat som används för att bygga formatet kan ytterligare parametrar kanske godtas. \fBdpkg\-source\fP kommer bygga källkodspaketet med det första format som fungerar från denna lista i denna ordning: formatet som anges med kommandoradsflaggan \fI\-\-format\fP, formatet som anges i \fIdebian/source/format\fP, "1.0". Standardvärdet "1.0" rekommenderas ej och kommer att tas bort en gång i framtiden, du bör alltid dokumentera det önskade källkodsformatet i \fBdebian/source/format\fP. Se avsnittet \fBFORMAT PÅ KÄLLKODSPAKET\fP för en utförlig beskrivning av de olika källkodspaketformaten. .TP \fB\-\-print\-format\fP \fIkatalog\fP Visa formatet som skulle användas för att bygga källkodspaketet om \fBdpkg\-source \-b\fP \fIkatalog\fP skulle köras (under samma förhållanden och med samma parametrar). .TP \fB\-\-before\-build\fP \fIkatalog\fP Kör motsvarande krok för källkodspaketformatet. Kroken anropas innan något från paketet byggs (\fBdpkg\-buildpakcage\fP anropar det väldigt tidigt, till och med före \fBdebian/rules clean\fP). Kommandot är idempotent och kan anropas flera gånger. Det är inte alla källkodsformat som implementerar något i den här kroken, och de som gör det förbereder oftast källkodsträdet för att byggas, till exempel genom att se till att Debianpatchar har applicerats. .TP \fB\-\-after\-build\fP \fIkatalog\fP Kör motsvarande krok för källkodspaketformatet. Kroken anropas efter att allt från paketet byggts (\fBdpkg\-buildpakcage\fP anropar det sist). Kommandot är idempotent och kan anropas flera gånger. Det är inte alla källkodsformat som implementerar något i den här kroken, och de som gör det använder den normalt för att återställa det som \fB\-\-before\-build\fP har gjort. .TP \fB\-\-commit\fP [\fIkatalog\fP] ... Spara ändringar i källkodsträdet som har packats upp i \fIkatalog\fP. Kommandot kan ta ytterligare parametrar beroende på källkodsformatet. Ett fel kommer rapporteras för format där operationen inte har någon betydelse. .TP \fB\-?\fP, \fB\-\-help\fP Visar hjälpskärm och avslutar. .TP \fB\-\-version\fP Visar version och avslutar. . .SH "ALLMÄNNA BYGGFLAGGOR" .TP \fB\-c\fP\fIcontrol\-fil\fP Anger huvudkällkodsstyrfil som information skall läsas från. Standardvärde är \fBdebian/control\fP. Om ett relativt sökvägsnamn anges tolkas det från källkodsträdets toppnivåkatalog. .TP \fB\-l\fP\fIändringsloggfil\fP Anger ändringsloggsfil som information skall läsas från. Standardvärde är \fBdebian/changelog\fP. Om ett relativt sökvägsnamn anges tolkas det från källkodsträdets toppnivåkatalog. .TP \fB\-F\fP\fIändringsloggformat\fP Anger format på ändringsloggen. Se \fBdpkg\-parsechangelog\fP(1) för information om alternativa format. .TP \fB\-\-format=\fP\fIvärde\fP Använd det givna formatet för att bygga källkodspaketet. Det överstyr inte ett eventuellt format som anges i \fBdebian/source/format\fP. .TP \fB\-V\fP\fInamn\fP\fB=\fP\fIvärde\fP Ställer in en utdatasubstitueringsvariabel. Se \fBdeb\-substvars\fP(5) för en beskrivning av utdatasubstituering. .TP \fB\-T\fP\fIsubstvars\-fil\fP Läs substitueringsvariabler från \fIsubstvarfil\fP; standardvärde är att inte läsa någon fil.Flaggan kan användas flera gånger för att läsa substitueringsvariabler från flera filer. .TP \fB\-D\fP\fIfält\fP\fB=\fP\fIvärde\fP Ersätt eller lägg till ett fält i den genererade control\-filen. .TP \fB\-U\fP\fIfält\fP Ta bort ett fält ur den genererade control\-filen. .TP \fB\-Z\fP\fIkomprimering\fP, \fB\-\-compression\fP=\fIkomprimering\fP Anger vilken komprimering som skall användas för de skapade filerna (tar\-bollar och diffar). Observera att flaggan inte gör att befintliga tar\-bollar packas om, utan enbart påverkar nya filer. Värden som stöds är: \fIgzip\fP, \fIbzip2\fP, \fIlzma\fP samt \fIxz\fP. \fIgzip\fP är förvalet. Stöd för \fIxz\fP finns bara från och med dpkg\-dev 1.15.5. .TP \fB\-z\fP\fInivå\fP, \fB\-\-compression\-level\fP=\fInivå\fP Komprimeringsnivå att använda. Som med \fB\-Z\fP påverkas bara filer som nyskapas. Värden som stöds är: \fI1\fP till \fI9\fP, \fIbest\fP (bäst) och \fIfast\fP (snabb). \fI9\fP är förval för gzip och bzip2, \fI6\fP för xz och lzma. .TP \fB\-i\fP[\fIreg.uttr\fP], \fB\-\-diff\-ignore\fP[=\fIreg.uttr\fP] Du kan ange ett reguljärt uttryck i perlformat för att matcha filer som du vill skall filtreras ut ur listan över filer för diffen. (Listan skapas av ett find\-kommando.) (Om källkodspaketet byggs som ett version 3\-paket med ett VCS kan detta användas för att ignorera ändringar som inte har checkats in på de angivna filerna. \-i.* kommer att ignorera samtliga.) \fB\-i\fP ensamt aktiverar funktionen, med ett standardvärde som filtrerar ut styrfiler och kataloger från de flesta vanliga versionshanteringssystem, säkerhetskopior, växlingsfiler och Libtool\-byggutdatakataloger. Endast ett reguljärt kan vara aktivt, om du anger flera \fB\-i\fP\-flaggor är det den sista på kommandoraden som gäller. Flaggan är mycket användbar för att utesluta extrafiler som kommer med i diffen, t.ex om du underhåller din källkod i ett versionshanteringssystem och vill använda en utcheckning för att bygga ett källkodspaket utan att ta med de ytterligare filer och det normalt innehåller (t.ex CVS/, .cvsignore, \&.svn/). Det förvalda reguljära uttrycket täcker redan in många av dessa, men om du ändrar det, kom ihåg att det som standard kan träffa alla delar av filnamnet. Så, om du träffa bara början av ett filnamn eller hela filnamn måste du själv lägga till de förankringar som är nödvändiga (t.ex '(^|/)', \&'($|/)'). .TP \fB\-\-extend\-diff\-ignore\fP=\fIreg.uttr\fP Det reguljära uttrycket i perlformat som angavs utökar standardvärdet för \fB\-\-diff\-ignore\fP och dess nuvarande värde (om satt). Det gör så genom att lägga till "\fB|\fP\fIreg.uttry\fP" efter standarduttrycket. Flaggan är nyttig för \fBdebian/source/options\fP för att exkludera en del automatiskt genererade filer från skapandet av automatiska patchar. .TP \fB\-I\fP[\fIfilmönster\fP], \fB\-\-tar\-ignore\fP[=\fIfilmönster\fP] Om flaggan anges kommer filnamnet att sändas vidare till \fBtar\fP(1):s \-\-exclude\-flagga när det anropas för att skapa en .orig.tar.gz eller \&.tar.gz\-fil. Till exempel kommer \-ICVS att hoppa över CVS\-kataloger när tar.gz\-filen skapas. Flaggan kan upprepas flera gånger för att lista flera filnamn som skall uteslutas. \fB\-i\fP ensamt aktiverar funktionen, med ett standardvärde som filtrerar ut styrfiler och kataloger från de flesta vanliga versionshanteringssystem, säkerhetskopior, växlingsfiler och Libtool\-byggutdatakataloger. .PP \fBObservera:\fP Även om de används till liknande ändamål, så har \fB\-i\fP och \fB\-I\fP väldigt olika syntax och semantik. \fB\-i\fP kan endast anges en gång och tar ett perl\-kompatibelt reguljärt uttryck, vilket matchas mot den kompletta relativa sökvägen för varje fil. \fB\-I\fP kan anges flera gånger och tar ett filnamnssökmänster med skaljokertecken. Mönstret matchas mot den kompletta relativa sökvägen, men även individuellt mot varje komponent i sökvägen. Den exakta semantiken för tar:s \-\-exclude\-flagga är något komplicerad, se http://www.gnu.org/software/tar/manual/tar.html#wildcards för fullständig dokumentation. Förvalt reguljärt uttryck och sökmönster för de bägge flaggorna kan ses i utdata för \fB\-\-help\fP\-kommandot. .SH "ALLMÄNNA UPPACKNINGSFLAGGOR" .TP \fB\-\-no\-copy\fP Kopiera inte original\-tarbollar i närheten av det uppackade källkodspaketet. .TP \fB\-\-no\-check\fP Kontrollera inte signaturer och kontrollsummor före uppackning. .TP \fB\-\-require\-valid\-signature\fP Vägra packa upp källkodspaketet om det inte innehåller en OpenPGP\-signatur som kan verifieras antingen med användarens \fItrustedkeys.gpg\fP\-nyckelring, en av de säljarspecifka nyckelringarna, eller en av de officiella Debiannyckelringarna (\fI/usr/share/keyrings/debian\-keyring.gpg\fP och \fI/usr/share/keyrings/debian\-maintainers.gpg\fP). .SH "FORMAT PÅ KÄLLKODSPAKET" Om du inte vet vilket källkodspaketformat du skall använda, bör du antagligen välja antingen "3.0 (quilt)" eller "3.0 (native)". Se http://wiki.debian.org/Projects/DebSrc3.0 för information om hur dessa format sätts i produktion i Debian. .SS "Format: 1.0" Ett källkodspaket i detta format består antingen av en \fB.orig.tar.gz\fP, förbunden med en \fB.diff.gz\fP, eller en ensam \fB.tar.gz\fP (i så fall anses paketet vara \fIeget\fP, "\fInative\fP"). \fBUppackning\fP Att packa upp ett Debianeget paket innebär att packa upp den ensamma tarbollen i målkatalogen. Att packa upp ett icke\-eget paket innebär att först packa upp \fI.orig.tar.gz\fP\-filen och sedan genom att tillämpa patchen som finns i \fB.diff.gz\fP\-filen. Tidsstämplarna för alla filer nollställs till den tidpunkt då källkodspaketet extraherades (vilket undviker tidsstämpelförskjutningar som kunde leda till problem när autogenererade filer patchas). Diffen kan skapa nya filer (hela debian\-katalogen skapas på det sättet), men kan inte ta bort filer (tomma filer kommer lämnas kvar). \fBBygga\fP Att bygga ett Debianeget paket innebär bara att skapa en ensam tarboll med källkodskatalogen. Att bygga ett icke\-eget paket innefattar att extrahera original\-tarbollen i en separat ".orig"\-katalog och skapa \fB.diff.gz\fP\-filen på nytt genom att jämföra källkodspaketets \fIkatalog\fP med .orig\-katalogen. .TP \fBByggflaggor (med \-b):\fP .PP Om ett andra argument som inte är en flagga anges skall det vara namnet på originalkällkodskatalogen eller \-tarfilen eller den tomma strängen om paketet är Debianspecifikt och därför inte har några Debianiserings\-diffar. Om inget andra argument anges kommer \fBdpkg\-source\fP att leta efter originalkällkodstarfilen \fIpaket\fP\fB_\fP\fIuppströmsversion\fP\fB.orig.tar.gz\fP eller originalkällkodskatalogen \fIpaket\fP\fB.orig\fP beroende på \fB\-sX\fP\-flaggorna. \fB\-sa\fP, \fB\-sp\fP, \fB\-sk\fP, \fB\-su\fP och \fB\-sr\fP skriver inte över befintliga tar\-filer och kataloger. Om det önskas bör \fB\-sA\fP, \fB\-sP\fP, \fB\-sK\fP, \fB\-sU\fP och \fB\-sR\fP anges i stället. .TP \fB\-sk\fP Anger att den ursprungliga källkoden är en tar\-fil, som standard \fIpaket\fP\fB_\fP\fIuppströmsversion\fP\fB.orig.tar.\fP\fIfiländelse\fP. Den kommer låta originalkällkodsfilen ligga kvar som en tarfil, eller kopiera den till den aktuella katalogen om den inte redan är där. Tarbollen kommer att packas upp i \fIkatalog\fP\fB.orig\fP för att generera diffen. .TP \fB\-sp\fP Som \fB\-sk\fP, men tar bort katalogen igen efteråt. .TP \fB\-su\fP Anger att originalkällkoden är en katalog, som standard \fIpaket\fP\fB\-\fP\fIuppströmsversion\fP\fB.orig\fP och att \fBdpkg\-source\fP skall skapa ett nytt originalkällkodsarkiv från den. .TP \fB\-sr\fP Som \fB\-su\fP, men tar bort katalogen när den har använts. .TP \fB\-ss\fP Anger att originalkällkoden finns både som en katalog och en tar\-fil. Katalogen kommer att användas av dpkg\-source för att skapa diffen, men tarfilen för att skapa \fB.dsc\fP\-filen. Flaggan måste användas med tillförsikt \- om katalogen och tarfilen inte stämmer överens kommer ett trasigt källkodsarkiv att skapas. .TP \fB\-sn\fP Anger att dpkg\-source inte skall leta efter något källkodsarkiv och att ingen diff skall skapas. Det andra argumentet, om det anges, måste vara den tomma strängen. Flaggan används för Debianspecifika paket som inte har en separat uppströmskällkod och därför inte har någon debianiseringsdiff. .TP \fB\-sa\fP eller \fB\-sA\fP Anger att originalkällkoden finns som en katalog eller en tarfil \- det andra argumentet, om det anges, kan vara det ena eller det andra, eller den tomma strängen (motsvarar att använda \fB\-sn\fP). Om en tarfil hittas kommer programmet att packa upp den för att skapa en diff och ta bort den efteråt (motsvarar \fB\-sp\fP). Om en katalog hittas kommer den att packas för att skapa originalkällkoden och ta bort den efteråt (motsvarar \fB\-sn\fP). Om båda hittas kommer \fBdpkg\-source\fP att ignorera katalogen, och skriva över den om \fB\-sA\fP angavs (detta motsvarar \fB\-sP\fP) eller ge ett felmeddelande om \fB\-sa\fP angavs. \fB\-sA\fP är standard. .TP \fB\-\-abort\-on\-upstream\-changes\fP Processen misslyckas om den genererade diffen innehåller ändringar av filer utanför underkatalogen debian. Den här flaggan tillåts inte i \fBdebian/source/options\fP, men kan användas i \fBdebian/source/local\-options\fP. .TP \fBExtraheringsflaggor (med \-x):\fP .PP Oavsett kommer ett befintligt källkodsträd att tas bort. .TP \fB\-sp\fP Används när originalkällkoden som extraheras (om sådan finns) skall lämnas kvar som en tarfil. Om den inte redan finns i den aktuella katalogen, eller om en befintlig men annan fil finns där, kommer den att kopieras dit. (\fBDetta är standard.\fP) .TP \fB\-su\fP Packar upp originalkällkodsträdet. .TP \fB\-sn\fP Försäkrar att originalkällkoden varken kopieras till en aktuella katalogen eller packas upp. Eventuella originalkällkodsträd som finns i den aktuella katalogen tas fortfarande bort. .PP Alla \fB\-s\fP\fIX\fP\-flaggor är ömsesidigt uteslutande. Om du anger mer än en kommer endast den sista att användas. .TP \fB\-\-skip\-debianization\fP Hoppas över att tillämpa debian\-diffen ovanpå uppströmskällkoden. . .SS "Format: 2.0" Även känt som wig&pen. Detta format rekommenderas inte för allmän användning, formatet "3.0 (quilt)" ersätter det. Wig&pen var den första specifikationen av en ny generation av källkodspaketformat. Beteendet för detta format är detsamma som för "3.0 (quilt)"\-formatet, förutom att det inte använder en explicit förteckning patchar. Alla filer i \fBdebian/patches/\fP som motsvarar det Perl\-reguljära uttrycket \fB[\ew\-]+\fP måste vara giltiga patchar: de appliceras när paketet packas upp. När du bygger ett nytt källkodspaket kommer eventuella ändringar på uppströmskällkoden att lagras i en patch som kallas \fBzz_debian\-diff\-auto\fP. . .SS "Format: 3.0 (eget)" Detta format är en utökning av det egna paketformatet som anges av 1.0\-formatet. Det stöder alla komprimeringsmetoder och kommer att som standard ignorera alla VCS\-specifika filer och kataloger, samt många temporärfiler (se standardvärdet som är knutet till flaggan \fB\-i\fP i texten för \fB\-\-help\fP). . .SS "Format: 3.0 (quilt)" Ett källkodspaket i detta format innehåller åtminstone en original\-tarboll (\fB.orig.tar.\fP\fIext\fP, där \fIext\fP kan vara \fBgz\fP, \fBbz2\fP, \fBlzma\fP eller \fBxz\fP) och en Debiantarboll (\fB.debian.tar.\fP\fIext\fP). Den kan även innehålla ytterligare original\-tarbollar (\fB.orig\-\fP\fIkomponent\fP\fB.tar.\fP\fIext\fP). \fIkomponent\fP kan endast innehålla alfanumeriska tecken och bindestreck ("\-"). .PP \fBUppackning\fP .PP Huvud\-originaltarbollen packas upp först, därefter packas alla ytterligare originaltarbollar upp i underkataloger med namn efter \fIkomponent\fP\-delen i sitt filnamn (eventuella redan befintliga kataloger ersätts). Debian\-tarbollen packas sedan upp ovanpå källkodskatalogen efter att en redan befintlig \fBdebian\fP\-katalog har tagits bort först. Observera att debian\-tarbollen måste bestå av en \fBdebian\fP\-underkatalog, men att den även kan innehålla binärfiler utanför den katalogen (se flaggan \fB\-\-include\-binaries\fP). .PP Alla patchar listade i \fBdebian/patches/debian.series\fP eller \fBdebian/patches/series\fP tillämpas sedan. Om den förstnämnda filen används och den sistnämnda inte existerar (eller är en symbolisk länk), kommer den senare att ersättas av en symbolisk länk till den första. Tanken är att göra det enklare att använda quilt till att hantera patchuppsättningen. Observera att, även om \fBdpkg\-source\fP korrekt tolkar series\-filer som använder explicita flaggor till patch\-programmet (lagrade på kommandoraden efter patch\-filnamnet och ett eller flera blanksteg), så ignoreras dessa flaggor och det förväntar sig att patchar kan tillämpas med flaggan \fB\-p1\fP till \fBpatch\fP. Det kommer därför visa en varning sådana flaggor upptäcks, och bygget kommer troligen att misslyckas. .PP Till skillnad mot quilt:s originalbeteende förväntas det att patchar kan appliceras utan någon "fuzz". När så inte är fallet bör du uppdatera patcharna med hjälp av quilt, om inte kommer dpkg\-source rapportera ett felmeddelande när det försöker tillämpa dem. .PP Patchar kan även ta bort filer, på ungfär samma sätt som quilt normalt fungerar. .PP Filen \fB.pc/applied\-patchers\fP skapas om patchar tillämpades vid uppackningen. .PP \fBBygga\fP .PP Alla original\-tarbollar som finns i den aktuella katalogen packas upp i en temporär katalog med samma logik som i uppackningen, debian\-katalogen kopieras över i den temporära katalogen och alla patchar, förutom den automatiska patchen (\fBdebian\-changes\fP\fIversion\fP eller \fBdebian\-changes\fP, beroende på \fB\-\-single\-debian\-patch\fP) tillämpas. Temporärkatalogen jämförs därefter mot källkodskatalogen. Om diffen inte är tom misslyckas bygget, såvida inte \fB\-\-single\-debian\-patch\fP eller \fB\-\-auto\-commit\fP använts, i vilket fall diffen lagras i den automatiska patchen. Om den automatiska patchen skapas/tas bort, läggs den till/tas bort från series\-filen och från quilt\-metadata. Eventuella ändringar på binärfiler kan inte representeras i en diff och kommer därmed att leda till ett felmeddelande, såvida inte paketansvariga medvetet väljer att inkludera den modifierade binärfilen i debian\-tarbollen (genom att lista den i \fBdebian/source/include\-binaries\fP). Byggningen kommer även att misslyckas om binärfiler upptäcks i debian\-underkatalogen, såvida de inte har vitlistats i \fBdebian/source/include\-binaries\fP. Den uppdaterade debiankatalogen, och listan över modifierade binärer, används sedan för att skapa debian\-tarbollen. Den automatiskt genererade diff\-filen innehåller inte ändringar för VCS\-specifika filer eller för många temporära filer (se standardvärdet som är knutet till flaggan \fB\-i\fP i texten för \fB\-\-help\fP). Detta gäller speciellt katalogen \fB.pc\fP som används av quilt, katalogen kommer att ignoreras när den automatiska patchen skapas. Observera: \fBdpkg\-source\fP \fB\-\-before\-build\fP (och \fB\-b\fP) ser till att alla patchar som anges i seriefilen tillämpas så att paketbygget alltid har alla patchar tillämpade. Detta görs genom att hitta alla icke\-tillämpade patchar (som anges i filen \fBseries\fP men inte i \fB.pc/applied\-patches\fP), och om den första patchen i listan kan tillämpas utan fel kommer samtliga att tillämpas. Flaggan \fB\-\-no\-preparation\fP kan användas för att slå av detta beteende. .PP \fBLagra ändringar\fP .TP \fB\-\-commit\fP [\fIkatalog\fP] [\fIpatchnamn\fP] [\fIpatch\-fil\fP] Skapar en patch som motsvarar de lokala ändringar som inte hanteras av quilt\-patch\-systemet och integrerar dem i patch\-systemet under namnet \fIpatchnamn\fP. Om namnet saknas kommer programmet be om ett interaktivt. Om \fIpatch\-fil\fP anges används den som patch som motsvarar de lokala ändringar som skall integreras. När patchen är integrerad startas ett redigeringsprogram så att du kan ange metainformationen i patchhuvudet. Det är oftast nyttigt att sända med \fIpatchfil\fP efter att ett bygge där filen skapats i förväg misslyckas, och att patchfilen därför skall tas bort efter integrering. Observera även att ändringarna som finns i patchfilen redan måste ha applicerats på trädet och att filerna som modifieras av patchen inte får innehålla ytterligare ej beskrivna ändringar. Om genereringen av patchar upptäcker ändringar i binärfiler kommer de automatiskt att läggas in i \fBdebian/source/include\-binaries\fP så att de dyker upp i debian\-tarbollen (precis som \fBdpkg\-source \-\-include\-binaries \-b\fP skulle gjort). .PP \fBByggflaggor\fP .TP \fB\-\-allow\-version\-of\-quilt\-db=\fP\fIversion\fP Tillåt \fBdpkg\-source\fP att bygga källkodspaketet om versionen av quilt\-metadata är den som angavs, även om \fBdpkg\-source\fP inte känner till den. Det betyder att den givna versionen av quilt\-metadata är kompatibel med version 2 som \fBdpkg\-source\fP för närvarande stöder. Versionen av quilt\-metadata lagras i \fB.pc/.version\fP. .TP \fB\-\-include\-removal\fP Ignorera inte borttagna filer och ta med dem i den automatiskt genererade patchen. .TP \fB\-\-include\-timestamp\fP Ta med tidsstämpel i den automatiskt genererade patchen. .TP \fB\-\-include\-binaries\fP Lägg till alla modifierade binärer i debian\-tarbollen. Lägg även till dem i \fBdebian/source/include\-binaries\fP: de kommer att läggas till som standard i följande byggen och du behöver inte längre ange den här flaggan. .TP \fB\-\-no\-preparation\fP Försök inte att förbereda byggträdet genom att tillämpa patchar som inte verkar ha tillämpas för närvarande. .TP \fB\-\-single\-debian\-patch\fP Använd \fBdebian/patches/debian\-changes\fP istället för \fBdebian/patches/debian\-changes\-\fP\fIversion\fP som namn på den automatiska patch som genereras vid bygget. Denna flagga är speciellt nyttig när paketet hanteras i ett versionshanteringssystem och en patch inte kan skapas på ett pålitligt sätt. Den aktuella diffen mot uppströms lagras istället i en ensam patch. Flaggan bör anges i \fBdebian/source/local\-options\fP och följs av filen \fBdebian/source/local\-patch\-header\fP som beskricer hur Debianändringarna bäst kan ses, till exempel i det versionshanteringssystem som används. .TP \fB\-\-create\-empty\-orig\fP Skapa huvud\-originaltarbollen som tom automatiskt om den saknas och om det finns supplement\-originaltarbollar. Flaggan är tänkt att användas när källkodspaketet bara är en samling av flera uppströmsprogram och där det inte finns något "huvud"\-program. .TP \fB\-\-no\-unapply\-patches, \-\-unapply\-patches\fP Som standard kommer dpkg\-source att automatiskt ta bort patchar i kroken \fB\-\-after\-build\fP om de applicerades under \fB\-\-before\-build\fP. De här flaggorna låter dig överstyra om du vill inaktivera eller aktivera proceduren för borttagning av patchar. Flaggorna tillåts endast i \fBdebian/source/local\-options\fP så att alla genererade källkodspaket som standard har samma beteende. .TP \fB\-\-abort\-on\-upstream\-changes\fP Processen misslyckas om en automatisk patch har genererats. Flaggan kan användas för att se till att alla ändringar har lagrats undan korrekt i separata quilt\-patchar innan källkodspaketet byggts. Flaggan tillåts inte i \fBdebian/source/options\fP, men kan användas i \fBdebian/source/local\-options\fP. .TP \fB\-\-auto\-commit\fP Processen misslyckas inte om en automatisk patch har skapats, den läggs istället direkt in i quilt\-serien. .PP \fBExtraheringsflaggor\fP .TP \fB\-\-skip\-debianization\fP Hoppas över att packa upp debian\-tarbollen ovanpå uppströmskällkoden. .TP \fB\-\-skip\-patches\fP Applicera inte patchar i slutet av uppackningen. . .SS "Format: 3.0 (skräddarsytt)" Detta formatet är speciellt. Det anger inte ett riktigt källkodspaketformat, utan kan användas för att skapa källkodspaket med godtyckliga filer. .PP \fBByggflaggor\fP .PP Alla argument som inte är flaggor tas som filer som skall integreras i det skapade källkodspaketet. De måste finnas, och helst i aktuell katalog. Åtminstone en fil måste anges. .TP \fB\-\-target\-format=\fP\fIvärde\fP \fBKrävs\fP. Anger det riktiga formatet på det genererade källkodspaketet. Den skapade .dsc\-filen kommer innehålla detta värde i sitt \fIFormat\fP\-fält och inte "3.0 (custom)". . .SS "Format: 3.0 (git)" Formatet är experimentellt. .PP Ett källkodspaket i detta format består av en ensam "bundle" från ett git\-arkiv \fB.git\fP, vilket innehåller paketets källkod. Filen \fB.gitshallow\fP, som innehåller revisioner för grunda git\-kloner, kan även förekomma. .PP \fBUppackning\fP .PP "Bundle":n klonas som ett git\-arkiv till målkatalogen. Om filen gitshallow finns installeras den som ".git/shallow" i det klonade git\-arkivet. .PP Observera att det nya arkivet som standard kommer att ha samma gren utcheckad som den som var utcheckad i det ursprungliga källkodsträdet. (Typiskt "master", men kan vara vad som helst.) Eventuella andra grenar kommer också att vara tillgängliga, under "remotes/origin/". .PP \fBBygga\fP .PP Innan uppackningen fortsätter kommer en del tester att utföras för att se till att vi inte har några ej ignorerade ej incheckade ändringar. .PP \fBgit\-bundle\fP(1) används för att generera en "bundle" från git\-arkivet. Som standard tas alla grenar och taggar i arkivet med i "bundle":n. .PP \fBByggflaggor\fP .TP \fB\-\-git\-ref=\fP\fIref\fP Gör det möjligt att ange en git\-referens som skall tas med i "bundle":n. Om den anges överstyr den standardbeteendet som är att ta med alla grenar och taggar. Kan anges flera gånger. \fIref\fP kan vara namnet på en gren eller tagg som skall tas med. Den kan även vara vilken som helst annan parameter som kan sändas med till \fBgit\-rev\-list\fP(1). För att, till exempel, endast ta med grenen "master", angänd \-\-git\-ref=master. För att ta med alla taggar och grenar, förutom grenen private, använd \-\-git\-ref=\-\-all \-\-git\-ref=^private .TP \fB\-\-git\-depth=\fP\fIantal\fP Skapar en grund klon med en historik som är avhuggen vid det angivna antalet revisioner. .SS "Format: 3.0 (bzr)" Detta format är experimentellt. Det genererar en ensam tarboll som innehåller bzr\-arkivet. .PP \fBUppackning\fP .PP Tarbollen packas upp och bzr används sedan för att hämta ut den aktuella grenen. .PP \fBBygga\fP .PP Innan uppackningen fortsätter kommer en del tester att utföras för att se till att vi inte har några ej ignorerade ej incheckade ändringar. .PP De VCS\-specifika delarna av källkodskatalogen kommer därefter att kopieras över till en temporär katalog. Innan den temporära katalogen packas i en tarboll utförs viss städning för att spara plats. .SH "VARNINGAR OCH FELMEDDELANDEN" .SS "källkodsformat ej angivet i debian/source/format" Filen \fBdebian/source/format\fP bör alltid finnas och ange det önskade källkodsformatet. För bakåtkompatibilitet antar formatet "1.0" om filen inte finns, men du bör inte förlita dig på detta: vid någon punkt i framtiden kommer dpkg\-source att justeras så att det misslyckas om filen inte finns. Resonemanget bakom detta är att formatet "1.0" inte längre är det rekommenderade formatet, du bör normalt välja ett av de nyare formaten ("3.0 (quilt)", "3.0 (native)"), men \fBdpkg\-source\fP gör inte detta automatiskt åt dig. Om du vill fortsätta använda det gamla formatet bör du ange det explicit genom att skriva "1.0" i \fBdebian/source/format\fP. .SS "diffen modifierar följande uppströmsfiler" När du använder källkodsformatet "1.0" är det oftast inte någon bra idé att modifiera uppströmsfiler direkt eftersom ändringarna döljs och i huvudsak är odokumenterade i diff.gz\-filen. Du bör istället spara dina ändringar som patchar i debian\-katalogen och applicera dem när paketet skall byggas. För att undvika den här komplexiteten kan du även använda formatet "3.0 (quilt)" som låter dig göra det här automatiskt. .SS "kan inte representera ändringen för \fIfil\fP" Ändringar på uppströmsfiler sparas normalt som patchfiler, men inte alla ändringar kan representeras med patchar: de kan endast ändra innehållet i vanliga textfiler. Om du försöker ersätta en fil med något som har en annan typ (till exempel ersätta en vanlig fil med en symbolisk länk eller en katalog) får du det här felmeddelandet. .SS "den tomma filen \fIfil\fP som just skapats kommer inte representeras i diffen" Tomma filer kan inte skapas med patchfiler. Ändringen kommer därmed inte att sparas i källkodspaketet och du får en varning om det. .SS "exekveringsläge \fIläge\fP på \fIfil\fP kommer inte representeras i diffen" .SS "specialläget \fIläge\fP på \fIfil\fP kommer inte representeras i diffen" Patchfiler beskriver inte läget på filer och ändrade lägen sparas inte i källkodspaketet. Den här varningen påminner dig om detta. .SH FILFORMAT .SS debian/source/format Filen innehåller på en ensam rad det format som skall användas för att bygga källkodspaketet (möjliga format beskrivs ovan). Varken ledande eller avslutande blanksteg tillåts. .SS debian/source/include\-binaries Filen innehåller en förteckning över binärfiler (en per rad) som skall tas med i debian\-tarbollen. Inledande och avslutande blanksteg tas bort. Rader som börjar med "#" är kommentarer och hoppas över. Tomma rader ignoreras. .SS debian/source/options Filen innehåller en lista över långa flaggor som automatiskt sätts in före kommandoradsflaggorna som anges i ett anrop til \fBdpkg\-source \-b\fP eller \fBdpkg\-source \-\-print\-format\fP. Flaggor som \fB\-\-compression\fP och \fB\-\-compression\-level\fP är passande att lägga in i den här filen. .P Ange varje flagga på en egen rad. Tomma rader och rader som börjar med "#" ignoreras. Inledande "\-\-" skall tas bort och korta flaggor är inte tillåtna. Blanksteg tillåts runt "="\-tecknet och citattecken tillåts runt värdet. Här är ett exempel på en sådan fil: .P # låt dpkg\-source skapa en debian.tar.bz2 med maximal komprimering compression = "bzip2" compression\-level = 9 # använd debian/patches/debian\-changes som en automatisk patch single\-debian\-patch # ignorera ändringar i config.{sub,guess} extend\-diff\-ignore = "(^|/)(config.sub|config.guess)$" .P Observera: \fBformat\fP\-flaggor tillåts inte i den här filen, du bör använda filen \fBdebian/source/format\fP istället. .SS debian/source/local\-options Precis som \fBdebian/source/options\fP förutom att filen inte inkluderas i det genererade källkodspaketet. Det kan vara användbart för att spara ett val som gäller för paketansvariga eller VCS\-systemet källkodspaketet hanteras i. .SS debian/source/local\-patch\-header .SS debian/source/patch\-header Friformstext som läggs in på toppen av den automatiskt genererade patchen i formaten "2.0" eller "3.0 (quilt)". \fBlocal\-patch\-header\fP tas inte med i det genererade källkodspaketet medan \fBpatch\-header\fP tas med. .SS debian/patches/series Listar alla patchar som måste tillämpas (i den givna ordningen) ovanpå uppströmskällkodspaketet. Inledande och avslutande blanksteg tas bort. Rader som börjar med "#" är kommentarer och ignoreras. Tomma rader ignoreras. De rader som är kvar inleds med filnamnet på en patchfil (relativt till \fBdebian/patches/\fP\-katalogen) upp till det första blankstegstecknet eller slutet på raden. Valfria flaggor till quilt kan följa fram till slutet av raden eller det första "#" som följer på ett eller flera blanksteg (vilket anger början på en kommentar fram till slutet av raden). .SH PROGRAMFEL Tidpunkten på fältöverstyrning inträffar jämfört med inställning av vissa standardutdatafält är ganska förvirrad. .SH "SE ÄVEN" \fBdpkg\-deb\fP(1), \fBdpkg\fP(1), \fBdselect\fP(1). .SH "ÖVERSÄTTNING" Peter Krefting och Daniel Nylander.