.\" dpkg manual page - dpkg-source(1)
.\"
.\" Copyright ÂŠ 1995-1996 Ian Jackson <ian@chiark.chu.cam.ac.uk>
.\" Copyright ÂŠ 2000 Wichert Akkerman <wakkerma@debian.org>
.\" Copyright ÂŠ 2006-2007 Frank Lichtenheld <djpig@debian.org>
.\" Copyright ÂŠ 2006-2012 Guillem Jover <guillem@debian.org>
.\" Copyright ÂŠ 2008-2011 RaphaĂŤl Hertzog <hertzog@debian.org>
.\" Copyright ÂŠ 2010 Joey Hess <joeyh@debian.org>
.\"
.\" 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 <http://www.gnu.org/licenses/>.
.
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH dpkg\-source 1 2012\-05\-04 "Projekt Debian" "programy pomocnicze dpkg"
.SH NAZWA
dpkg\-source \- narzędzia do zarządzania źródłowymi pakietami Debiana (.dsc)
.
.SH SKŁADNIA
\fBdpkg\-source\fP [\fIopcja\fP...] \fIpolecenie\fP
.
.SH OPIS
\fBdpkg\-source\fP tworzy i rozpakowuje źródłowe archiwa (pakiety) Debiana.

Żadne z tych poleceń nie pozwala na łączenie wielu opcji w jedną, nie
pozwalają również na podawanie wartości opcji jako oddzielnego parametru.
.
.SH POLECENIA
.TP 
\fB\-x \fP\fInazwa\-pliku\fP\fB.dsc \fP[\fIkatalog\-wyjściowy\fP]
Rozpakowanie pakietu źródłowego. Wymagane jest podanie jednego argumentu nie
będącego opcją, nazwy pliku kontrolny pakietu źródłowego (\fB.dsc\fP). Ponadto
może być podany drugi opcjonalny argument niebędący opcją, określający
katalog, do którego pakiet źródłowy ma zostać rozpakowany (katalog ten nie
może istnieć). Jeśli nie podano katalogu wyjściowego, pakiet źródłowy jest
rozpakowywany do katalogu o nazwie \fIźródło\fP\-\fIwersja\fP w ramach bieżącego
katalogu roboczego.

\fBdpkg\-source\fP odczyta nazwy innych plików tworzących pakiet źródłowy z
pliku kontrolnego; zakładane jest, że są one w tym samym katalogu co
\&\fB.dsc\fP.

Pliki w rozpakowanym pakiecie będą mieć uprawnienia i właściciela zgodnie z
typowymi, oczekiwanymi wartościami jak przy zwykłym tworzeniu plików i
katalogów \- katalogi i pliki wykonywalne będą mieć prawa 0777, zaś zwykłe
pliki będą mieć prawa 0666 (w obu przypadkach modyfikowane przez umask
rozpakowującego). Ponadto jeśli katalog nadrzędny ma ustawiony bit setgid,
rozpakowane katalogi także będą go mieć, zaś wszystkie pliki i katalogi
przejmą ustawienia grupy katalogu nadrzędnego.

Jeśli pakiet źródłowy używa niestandardowego formatu (aktualnie oznacza to
wszystkie formaty poza "1.0"), jego nazwa będzie umieszczona w pliku
\fBdebian/source/format\fP. Dzięki temu przy następnych budowach pakietu
źródłowego będzie domyślnie używany ten sam format.

.TP 
\fB\-b\fP, \fIkatalog\fP [\fIparametry\-zależne\-od\-formatu\fP]
Budowanie pakietu źródłowego. Pierwszy argument nie będący opcją przyjmowany
jest jako nazwa katalogu zdebianizowanego drzewa ze źródłami (czyli
zawierającego podkatalog "debian" i być może zmiany w stosunku do
oryginalnych plików). Zależnie od formatu pakietu źródłowego używanego przy
budowaniu pakietu, mogą być również akceptowane dodatkowe parametry.

\fBdpkg\-source\fP będzie budować pakiet źródłowy z użyciem pierwszego
znalezionego formatu z następującej listy, w kolejności: format(y)
określony(e) za pomocą opcji \fI\-\-format\fP, format określony w pliku
\fBdebian/source/format\fP, "1.0". Powrót do "1.0" jest uważany za przestarzały
i kiedyś zostanie usunięty, dlatego należy zawsze dokumentować żądany format
źródła w pliku \fBdebian/source/format\fP. W sekcji \fBFORMATY PAKIETÓW
ŹRÓDŁOWYCH\fP można znaleźć wyczerpujący opis różnych formatów pakietów
źródłowych.

.TP 
\fB\-\-print\-format\fP \fIkatalog\fP
Wyświetla format źródłowy, który będzie użyty do zbudowania pakietu
źródłowego, jeśli zostanie wywołane \fBdpkg\-source \-b \fP\fIkatalog\fP (z tymi
samymi warunkami i parametrami).

.TP 
\fB\-\-before\-build\fP \fIkatalog\fP
Uruchamia odpowiedni zaczep formatu pakietu źródłowego. Zaczep jest
wywoływany przed pierwszym zbudowaniem pakietu (\fBdpkg\-buildpackage\fP
wywołuje go bardzo wcześnie, nawet przed \fBdebian/rules clean\fP). Polecenie
to jest idempotentne i może być wywołane wielokrotnie. Nie wszystkie formaty
źródłowe zaimplementowały coś w tym zaczepie, a te które to zrobiły,
wykorzystują je z reguły do przygotowania drzewa źródeł do budowania
upewniając się na przykład, że zaaplikowano łatki Debiana.

.TP 
\fB\-\-after\-build\fP \fIkatalog\fP
Uruchamia odpowiedni zaczep formatu pakietu źródłowego. Zaczep jest
wywoływany po ostatnim zbudowaniu pakietu (\fBdpkg\-buildpackage\fP wywołuje go
jako ostatni). Polecenie to jest idempotentne i może być wywołane
wielokrotnie. Nie wszystkie formaty źródłowe zaimplementowały coś w tym
zaczepie, a te które to zrobiły, wykorzystują je z reguły do cofnięcia tego,
co zostało wykonane podczas \fB\-\-before\-build\fP.

.TP 
\fB\-\-commit\fP [\fIkatalog\fP] ...
Zapisuje zmiany w drzewie źródłowym rozpakowanym w \fIkatalogu\fP. Polecenie to
może przyjąć argumenty uzupełniające, w zależności od formatu źródeł. Zwróci
błąd, w przypadku formatów, w których ta operacja nic nie znaczy.

.TP 
\fB\-?\fP, \fB\-\-help\fP
Wyświetla informację o użytkowaniu i kończy działanie.
.TP 
\fB\-\-version\fP
Wyświetla informację o wersji i pomyślnie kończy działanie.
.
.SH "OGÓLNE OPCJE BUDOWANIA"
.TP 
\fB\-c\fP\fIplik\-kontrolny\fP
Określa główny plik kontrolny źródeł, z którego będą czytane
informacje. Domyślnie jest to \fBdebian/control\fP. Jeśli podano względną
ścieżkę, to jest ona interpretowana od najwyższego poziomu katalogu drzewa
ze źródłami.
.TP 
\fB\-l\fP\fIplik\-dziennika\-zmian\fP
Określa dziennik zmian, z którego będą czytane informacje. Domyślnie jest to
\fBdebian/changelog\fP. Jeśli podano względną ścieżkę, to jest ona
interpretowana od najwyższego poziomu katalogu drzewa ze źródłami.
.TP 
\fB\-F\fP\fIformat\-dziennika\-zmian\fP
Określa format dziennika zmian. Więcej informacji o alternatywnych formatach
można znaleźć w \fBdpkg\-parsechangelog\fP(1).
.TP 
\fB\-\-format=\fP\fIwartość\fP
Do budowy pakietu źródłowego używany jest podany format. Nadpisuje to każdy
format podany w pliku \fBdebian/source/format\fP.
.TP 
\fB\-V\fP\fInazwa\fP\fB=\fP\fIwartość\fP
Ustawia zmienną podstawienia wyjścia. Szczegółowy opis podstawiania
zmiennych wyjściowych znajduje się w \fBdeb\-substvars\fP(5).
.TP 
\fB\-T\fP\fIplik\-zmiennych\-podst\fP
Odczytuje zmienne podstawiania z \fIpliku\-zmiennych\-podst\fP; domyślnie nie
czyta żadnego pliku. Opcja może być użyta wielokrotnie, aby odczytać
podstawiania z wielu plików.
.TP 
\fB\-D\fP\fIpole\fP\fB=\fP\fIwartość\fP
Nadpisuje lub dodaje wyjściowe pole pliku kontrolnego.
.TP 
\fB\-U\fP\fIpole\fP
Usuwa wyjściowe pole pliku kontrolnego.
.TP 
\fB\-Z\fP\fIkompresja\fP, \fB\-\-compression\fP=\fIkompresja\fP
Określa rodzaj kompresji używanej podczas tworzenia plików (archiwów tar
oraz plików różnic). Uwaga: opcja ta nie spowoduje, że istniejące archiwa
tar będą ponownie kompresowane, lecz ma zastosowanie tylko do plików nowo
tworzonych. Obsługiwane wartości: \fIgzip\fP, \fIbzip2\fP, \fIlzma\fP i
\fIxz\fP. \fIgzip\fP jest wartością domyślną. \fIxz\fP jest obsługiwany od dpkg\-dev
1.15.5.
.TP 
\fB\-z\fP\fIpoziom\fP, \fB\-\-compression\-level\fP=\fIpoziom\fP
Używany poziom kompresowania. Podobnie jak w wypadku \fB\-Z\fP, dotyczy tylko
nowo tworzonych plików. Obsługiwane wartości: \fI1\fP do \fI9\fP, \fIbest\fP oraz
\fIfast\fP. \fI9\fP jest wartością domyślną w przypadku gzip i bzip2, \fI6\fP w
przypadku xz i lzma.
.TP 
\fB\-i\fP[\fIwyr\-reg\fP], \fB\-\-diff\-ignore\fP[=\fIwyr\-reg\fP]
Można podać wyrażenie regularne Perla pasujące do listy plików, które mają
nie być uwzględniane podczas tworzenia pliku różnic (lista ta jest tworzona
poleceniem find). (Jeśli zaś pakiet źródłowy jest budowany w formacie 3.0 z
użyciem systemu kontroli wersji, jest ono używane to ignorowania
niezatwierdzonych plików. Użycie \-i.* pozwala zignorować wszystkie takie
plik.) \fB\-i\fP podane bez żadnych argumentów włącza tę opcję, domyślnie
odfiltrowując pliki kontrolne i katalogi najpopularniejszych systemów
kontroli wersji, kopie zapasowe, pliki wymiany oraz katalogi wyjściowe
narzędzia libtool. Tylko jedno wyrażenie regularne może być aktywne, jeśli
opcję \fB\-i\fP podano kilkakrotnie, to tylko ostatnia z nich będzie wzięta pod
uwagę.

Jest to bardzo przydatne do wykluczania nieistotnych plików, które zostałyby
włączone do pliku różnic (diff). Przykładem może być sytuacja, gdzie kod
źródłowy jest zarządzany przez system kontroli wersji i kod pobrany z
repozytorium ma być użyty do zbudowania pakietu źródłowego, bez włączania w
to dodatkowych plików i katalogów związanych z obsługą repozytorium
(np. CVS/, .cvsignore, .svn/). Domyślne wyrażenie regularne jest już całkiem
obszerne, ale jeśli istnieje potrzeba zastąpienia go, należy zauważyć że
domyślnie może ono pasować do dowolnej części ścieżki \- dlatego w celu
dopasowania do początku nazwy pliku lub jedynie pełnych nazw plików,
konieczne jest samodzielne użycie odpowiednich wyrażeń (np. "(^|/)", czy
"($|/)").
.TP 
\fB\-\-extend\-diff\-ignore\fP=\fIwyr\-reg\fP
Określone wyrażenie regularne perla
.TP 
\fB\-I\fP[\fIwzorzec\-pliku\fP], \fB\-\-tar\-ignore\fP[=\fIwzorzec\-pliku\fP]
Po podaniu tej opcji, wzorzec będzie przekazany jako parametr dla \-\-exclude
polecenia \fBtar\fP(1), używanego do stworzenia archiwum .orig.tar lub .tar. Na
przykład, \-ICVS powoduje, że tar będzie pomijał katalogi CVS przy tworzeniu
pliku .tar.gz. Ta opcja może być podana wielokrotnie w celu określenia wielu
wzorców wykluczeń.

Samo \fB\-I\fP podane bez żadnych argumentów ustawia opcje \-\-exclude, domyślnie
odfiltrowując pliki kontrolne i katalogi najpopularniejszych systemów
kontroli wersji, kopie zapasowe, pliki wymiany oraz katalogi wyjściowe
libtoola.
.PP
\fBUwaga:\fP Mimo, że mają podobne przeznaczenie, opcje \fB\-i\fP oraz \fB\-I\fP mają
całkiem odmienną składnię i semantykę. \fB\-i\fP może być podana tylko raz i
przyjmuje wyrażenie regularne Perla, które jest dopasowywane do pełnej
ścieżki względnej każdego pliku. \fB\-I\fP może być podana wielokrotnie i
przyjmuje wzorzec nazw plików wraz ze znakami specjalnymi powłoki
(wildcards). Wzorzec jest dopasowywany do pełnej ścieżki względnej, ale
również indywidualnie do każdej części ścieżki. Pełna semantyka opcji
\-\-exclude programu tar jest nieco skomplikowana, proszę sprawdzić
http://www.gnu.org/software/tar/manual/tar.html#wildcards w celu uzyskania
dokładnych informacji.

Domyślne wyrażenia regularne i wzorce dla obu opcji można znaleźć w wyjściu
polecenia \fB\-\-help\fP.
.SH "OGÓLNE OPCJE ROZPAKOWYWANIA"
.TP 
\fB\-\-no\-copy\fP
Nie kopiuje oryginalnych archiwów obok rozpakowanego pakietu źródłowego.
.TP 
\fB\-\-no\-check\fP
Bez weryfikacji podpisów i sprawdzania sum kontrolnych przed rozpakowaniem.
.TP 
\fB\-\-require\-valid\-signature\fP
Powoduje odmowę rozpakowania pakietu źródłowego, jeśli nie zawiera on
podpisu OpenPGP, który mógłby być zweryfikowany przez klucze użytkownika z
pliku \fItrustedkeys.gpg\fP, jeden z kluczy twórców pakietu, lub jeden z
oficjalnych kluczy Debiana (\fI/usr/share/keyrings/debian\-keyring.gpg\fP oraz
\fI/usr/share/keyrings/debian\-maintainers.gpg\fP).

.SH "FORMATY PAKIETÓW ŹRÓDŁOWYCH"
Jeśli nie wiadomo którego formatu źródeł użyć, powinno się wybrać
prawdopodobnie "3.0 (quilt)" lub "3.0" (native)". Więcej informacji o
wdrażaniu tych formatów w Debianie można znaleźć na stronie
http://wiki.debian.org/Projects/DebSrc3.0.

.SS "Format: 1.0"
Pakiet źródłowy w tym formacie składa się z pliku \fB.orig.tar.gz\fP
powiązanego z plikiem różnic \fB.diff.gz\fP, lub z pojedynczego pliku
\&\fB.tar.gz\fP (w takim przypadku mówi się, że pakiet jest \fInatywny\fP).

\fBRozpakowywanie\fP

Rozpakowanie pakietu natywnego to proste rozpakowanie pojedynczego pliku
archiwum w katalogu docelowym. Rozpakowanie pakietu w stylu Debiana
(non\-native) odbywa się poprzez najpierw rozpakowanie pliku \fB.orig.tar.gz\fP
a następnie nałożenia łatek zawartych w pliku \fB.diff.gz\fP. Czasy modyfikacji
wszystkich łatanych plików są ustawiane na wartość odpowiadającą czasowi
rozpakowania pakietu źródłowego (zapobiega to przesunięciom czasów, które
prowadzą do problemów przy łataniu plików generowanych automatycznie). Plik
różnic (diff) może tworzyć nowe pliki (cały katalog "debian" jest tak
tworzony), ale nie może usuwać plików (pozostawiane są puste pliki o zerowej
długości).

\fBBudowanie\fP

Budowanie pakietu natywnego to proste stworzenie pojedynczego pliku archiwum
z katalogu źródeł. Budowanie pakietu w stylu Debiana (non\-native) obejmuje
rozpakowanie oryginalnego archiwum do oddzielnego katalogu z przyrostkiem
".orig" i regenerację pliku \fB.diff.gz\fP poprzez porównanie \fIkatalogu\fP
pakietu źródłowego z katalogiem ".orig".

.TP 
\fBOpcje budowania (z \-b):\fP
.PP
Buduje pakiet źródłowy. Należy podać jeden lub dwa argumenty, nie będące
opcjami. Pierwszym z nich jest nazwa katalogu zawierającego rozpakowane
źródła. Jeżeli podano drugi argument, to powinien on być nazwą oryginalnego
katalogu ze źródłami lub archiwum tar albo pustym łańcuchem znaków, jeśli
pakiet jest specyficzny dla Debiana i nie ma pliku różnic. Jeżeli nie podano
drugiego argumentu, to \fBdpkg\-source\fP \- w zależności od argumentów \fB\-sX\fP \-
będzie szukał albo archiwum tar z oryginalnymi źródłami
\fIpakiet\fP\fB_\fP\fIwersja_upstream\fP\fB.orig.tar.\fP\fIrozszerzenie\fP (gdzie
\fIrozszerzenie\fP jest jednym z \fBgz\fP,\fBbz2\fP lub \fBlzma\fP),  albo katalogu z
oryginalnymi źródłami \fIkatalog\fP.orig.

\fB\-sa\fP, \fB\-sp\fP, \fB\-sk\fP, \fB\-su\fP oraz \fB\-sr\fP nie nadpiszą istniejących
archiwów tar lub katalogów. Jeśli jest to wymagane, należy użyć \fB\-sA\fP,
\fB\-sP\fP, \fB\-sK\fP, \fB\-sU\fP i \fB\-sR\fP.
.TP 
\fB\-sk\fP
Określa, że należy spodziewać się oryginalnych źródeł w postaci archiwum
tar, domyślnie
\fIpakiet\fP\fB_\fP\fIwersja\-autora\-pakietu\fP\fB.orig.tar.\fP\fIrozszerzenie\fP.
Pozostawia oryginalne źródła w tym samym miejscu jako plik tar lub kopiuje
je do bieżącego katalogu jeśli jeszcze ich tam nie ma. Archiwum będzie
rozpakowane do \fIkatalogu\fP\fB.orig\fP w celu utworzenia pliku różnic (diff).
.TP 
\fB\-sp\fP
Jak \fB\-sk\fP, ale ponownie usunie katalog po zakończeniu.
.TP 
\fB\-su\fP
Określa, że należy spodziewać się oryginalnych źródeł w postaci katalogu,
domyślnie \fIpakiet\fP\fB\-\fP\fIwersja\-autora\-pakietu\fP\fB.orig\fP, na podstawie
którego \fBdpkg\-source\fP utworzy nowe archiwum oryginalnych źródeł.
.TP 
\fB\-sr\fP
Jak \fB\-su\fP, jednakże usunie katalog po jego użyciu.
.TP 
\fB\-ss\fP
Określa, że oryginalne źródła są dostępne zarówno jako katalog oraz jako
archiwum tar. \fBdpkg\-source\fP będzie utworzy plik różnic na podstawie
katalogu, ale użyje pliku tar do utworzenia pliku \fB.dsc\fP. Należy używać tej
opcji z rozwagą \- jeśli katalog oraz plik tar sobie nie odpowiadają,
zostanie wygenerowane niepoprawne archiwum źródłowe.
.TP 
\fB\-sn\fP
Określa aby nie szukać żadnych oryginalnych źródeł, ani nie generować pliku
różnic. Jeśli jest podany drugi argument, musi on być pustym ciągiem
znaków. Jest to używane dla pakietów specyficznych dla Debiana, które nie
mają oddzielnych źródeł i w związku z tym nie mają debianizujących plików
różnic (diff).
.TP 
\fB\-sa\fP lub \fB\-sA\fP
Określa, że należy szukać oryginalnych źródeł w postaci archiwum tar lub
katalogu. Jeśli podano drugi argument może wskazywać on plik lub katalog,
albo być pustym ciągiem znaków (co jest równoważne użyciu \fB\-sn\fP). Jeśli
znaleziony zostanie plik tar, będzie on rozpakowany w celu utworzenia pliku
różnic, po czym zostanie on usunięty (co jest równoważne \fB\-sp\fP). Jeśli
zostanie znaleziony katalog, będzie on spakowany w celu utworzenia archiwum
źródłowego, po czym zostanie on usunięty (co jest równoważne \fB\-sr\fP).
.TP 
\fB\-\-abort\-on\-upstream\-changes\fP
Proces zwróci błąd, jeśli wygenerowany plik różnic zawiera zmiany w plikach
spoza podkatalogu debian. Opcja ta nie może być użyta w
\fBdebian/source/options\fP, lecz może być użyta w
\fBdebian/source/local\-options\fP.

.TP 
\fBOpcje rozpakowywania (z \-x):\fP
.PP
We wszystkich przypadkach, istniejące oryginalne drzewo ze źródłami będzie
usunięte.
.TP 
\fB\-sp\fP
Jeśli zostanie użyta przy wypakowywaniu, wtedy oryginalne źródła (jeśli są)
pozostaną w formie archiwum tar. Jeśli archiwum nie ma jeszcze w bieżącym
katalogu, lub gdy istnieje ale jest to inny plik, zostanie tam
skopiowane. (\fBJest to zachowanie domyślne\fP).
.TP 
\fB\-su\fP
Rozpakowuje oryginalne drzewo źródeł programu.
.TP 
\fB\-sn\fP
Zapewnia, że oryginalne źródła nie będą kopiowane do bieżącego katalogu ani
rozpakowywane. We wszystkich przypadkach, istniejący katalog ze źródłami
będzie usunięty z bieżącego katalogu.
.PP
Wszystkie spośród opcji \fB\-s\fP\fI\-X\fP się wzajemnie wykluczają. Jeśli zostanie
podana więcej niż jedna, to zostanie użyta ostatnia z nich.
.TP 
\fB\-\-skip\-debianization\fP
Pomija wykorzystanie różnic Debiana (debian diff) do nałożenia łatek na
oryginalne źródła.
.
.SS "Format: 2.0"
Znany również jako wig&pen. Ten format nie jest zalecany do szerokiego
stosowania, zastępuje go format "3.0 (quilt)". Wig&pen był pierwszą
specyfikacją nowej generacji formatu pakietów źródłowych.

Zachowanie dla tego formatu jest takie samo jak dla "3.0 (quilt)" z tą
różnicą, że nie używa jawnej listy łatek. Wszystkie pliki w katalogu
\fBdebian/patches/\fP pasujące do wyrażenia regularnego Perla \fB[\ew\-]+\fP muszą
być prawidłowymi łatkami: są one nakładane podczas rozpakowywania.

Podczas budowania nowego pakietu źródłowego, wszystkie zmiany w stosunku do
kodu źródłowego pochodzącego od autorów programu są zapisywane w łatce o
nazwie \fBzz_debian\-diff\-auto\fP.
.
.SS "Format: 3.0 (native)"
Ten format jest rozszerzeniem natywnego formatu pakietów zdefiniowanego w
formacie w wersji 1.0. Obsługuje wszystkie metody kompresji i domyślnie
ignoruje pliki i katalogi specyficzne dla systemów kontroli wersji, jak
również wiele typów plików tymczasowych (proszę sprawdzić opis domyślnej
wartości opcji \fB\-I\fP w informacjach uzyskiwanych poleceniem \fB\-\-help\fP).
.
.SS "Format: 3.0 (quilt)"
Pakiet źródłowy w tym formacie zawiera co najmniej oryginalne archiwum tar
(\fB.orig.tar.\fP\fIrozszerzenie\fP, gdzie \fIrozszerzeniem\fP może być \fBgz\fP,
\fBbz2\fP, \fBlzma\fP i \fBxz\fP) oraz archiwum debian
(\fB.debian.tar.\fP\fIrozszerzenie\fP). Może również zawierać dodatkowe oryginalne
archiwa (\fB.orig\-\fP\fIkomponent\fP\fB.tar.\fP\fIrozszerzenie\fP). \fIkomponent\fP może
zawierać jedynie znaki alfanumeryczne oraz znaki myślnika ("\-").
.PP
\fBRozpakowywanie\fP
.PP
Najpierw rozpakowywane jest główne oryginalne archiwum tar, następnie
rozpakowywane są dodatkowe oryginalne archiwa tar do podkatalogów nazwanych
od części \fIkomponent\fP z ich nazwy pliku (istniejące katalogi o takich
nazwach są zamieniane). Na końcu rozpakowywane jest archiwum debian, po
uprzednim usunięciu katalogu \fBdebian\fP (jeśli taki istniał). Należy
zauważyć, że archiwum debian musi zawierać podkatalog \fBdebian\fP, ale może
również zawierać pliki binarne poza tym katalogiem (proszę sprawdzić opcję
\fB\-\-include\-binaries\fP).
.PP
Następnie nakładane są wszystkie łatki wymienione w
\fBdebian/patches/debian.series\fP lub \fBdebian/patches/series\fP. Jeśli jest
użyty pierwszy z tych plików a drugi z nich nie istnieje (lub jest łączem
symbolicznym), wtedy ten drugi plik jest zastępowany łączem symbolicznym do
pierwszego pliku. Ma to uprościć używanie quilt do zarządzania zbiorem
łatek. Należy zauważyć, że o ile \fBdpkg\-source\fP poprawnie przetwarza pliki
series z podanymi jawnie opcjami programu patch (zapisanymi w każdej z linii
po nazwie pliku z łatką i jednej lub więcej spacji), to jednak ignoruje te
opcje i zawsze oczekuje łatek, które można nałożyć używając opcji \fB\-p1\fP
programu \fBpatch\fP. Po napotkaniu takich opcji wysyłane jest ostrzeżenie, zaś
proces budowania prawdopodobnie się nie powiedzie.
.PP
W przeciwieństwie do domyślnego zachowania quilta, oczekuje się, że łatki
będą aplikowane bez żadnego przesunięcia. Gdy tak nie jest, należy je
odświeżyć za pomocą quilta, bowiem w przeciwnym wypadku dpkg\-source zwróci
błąd przy próbie aplikowania ich.
.PP
Podobnie do domyślnego zachowania quilt, łatki mogą także usuwać pliki.
.PP
Jeśli podczas rozpakowywania zostały nałożone jakieś łatki, tworzony jest
plik \fB.pc/applied\-patches\fP.
.PP
\fBBudowanie\fP
.PP
Wszystkie oryginalne archiwa znalezione w bieżącym katalogu są rozpakowywane
do katalogu tymczasowego w taki sam sposób jak dla unpack, następnie katalog
debian jest kopiowany do katalogu tymczasowego i nakładane są wszystkie
łatki, z wyłączeniem jedynie łatki automatycznej
(\fBdebian\-changes\-\fP\fIwersja\fP lub \fBdebian\-changes\fP, w zależności od
\fB\-\-single\-debian\-patch\fP). Katalog tymczasowy jest porównywany z katalogiem
pakietu źródłowego. Jeśli plik różnic jest niepusty, to budowanie nie
powiedzie się, chyba że użyto \fB\-\-single\-debian\-patch\fP lub \fB\-\-auto\-commit\fP,
wówczas plik różnic jest przechowywany w automatycznej łatce. Jeśli
automatyczna łatka jest tworzona/usuwana, jest ona dodawana/usuwana z pliku
series i z metadanych quilta.

Żadne zmiany w jakimkolwiek pliku binarnym nie mogą być odwzorowane w pliku
zmian, co doprowadzi do niepowodzenia \- chyba, że opiekun pakietu rozmyślnie
zdecydował o włączeniu tak zmodyfikowanego pliku binarnego do archiwum
debian (wskazując go w \fBdebian/source/include\-binaries\fP). Proces budowania
nie powiedzie się także jeśli zostaną znalezione pliki binarne w podkatalogu
debian, chyba że zostały one uprzednio wymienione w
\fBdebian/source/include\-binaries\fP.

Zaktualizowany katalog debian oraz lista zmodyfikowanych plików binarnych są
następnie używane do powtórnego wygenerowania archiwum debian.

Automatycznie wygenerowany plik różnic nie zawiera zmian w plikach
specyficznych dla systemów kontroli wersji, jak również w wielu typach
plików tymczasowych (proszę sprawdzić opis domyślnej wartości opcji \fB\-i\fP w
informacjach uzyskiwanych poleceniem \fB\-\-help\fP). W szczególności, katalog
\&\fB.pc\fP używany przez quilt jest ignorowany podczas automatycznego
generowania łatki.

Uwaga: \fBdpkg\-source\fP \fB\-\-before\-build\fP (i \fB\-b\fP) upewni się, że drzewo ze
źródłami będzie mieć nałożone wszystkie łatki określone w pliku series
podczas generowania pakietu źródłowego. Czyni to odnajdując niezaaplikowane
łatki (są one wypisane w pliku \fBseries\fP, lecz nie są w
\&\fB.pc/applied\-patches\fP), a jeśli pierwsza łatka z tego zestawu może być
zaaplikowana bez błędów, zostaną zaaplikowane wszystkie. Opcja
\fB\-\-no\-preparation\fP może być użyta, aby wyłączyć to zachowanie.

.PP
\fBZapisywanie zmian\fP
.TP 
\fB\-\-commit\fP [\fIkatalog\fP] [\fInazwa\-łatki\fP] [\fIplik\-łatki\fP]
Tworzy łatkę odnoszącą się do zmian lokalnych, które nie są zarządzane przez
system łatki quilt i integruje ją w systemie łatek pod nazwą
\fInazwa\-łatki\fP. Jeśli nie poda się nazwy, pytanie o nią zostanie zadane
interaktywnie. Jeśli poda się \fIplik\-łatki\fP, jest on używany jako łatka
odnosząca się do lokalnych zmian do zintegrowania. Po zintegrowaniu
uruchamiany jest edytor, dzięki czemu może zedytować metainformacje w
nagłówku łatki.

Podanie \fIpliku\-łatki\fP jest przydatne głównie po nieudanym budowaniu, które
pre\-wygenerowało ten plik i na tej podstawie podany plik jest usuwany po
integracji. Proszę zauważyć, że zmiany zawarte w pliku łatki muszą być już
zaaplikowane w drzewie i że pliki zmodyfikowane przez łatkę nie mogą
zawierać uzupełniających, niezapisanych zmian.

Jeśli przy generowaniu łatki wykryte zostaną zmodyfikowane pliki binarne,
zostaną one automatycznie dodane do \fBdebian/source/include\-binaries\fP, przez
co znajdą się one w archiwum debian (dokładnie jak zrobiłoby \fBdpkg\-source
\-\-include\-binaries \-b\fP).
.PP
\fBOpcje budowania\fP
.TP 
\fB\-\-allow\-version\-of\-quilt\-db=\fP\fIwersja\fP
Pozwala \fBdpkg\-source\fP na zbudowanie pakietu źródłowego, jeśli wersja
metadanych quilt jest tą podaną, nawet jeśli \fBdpkg\-source\fP nic o niej nie
wie. Efektywnie oznacza to, że podana wersja metadanych quilt jest
kompatybilna z wersją 2., obsługiwaną obecnie przez \fBdpkg\-source\fP. Wersja
metadanych quilt jest przechowywana w \fB.pc/.version\fP.
.TP 
\fB\-\-include\-removal\fP
Usunięte pliki nie będą ignorowane, ale będą włączone do automatycznie
generowanej łatki.
.TP 
\fB\-\-include\-timestamp\fP
Włączenie czasu modyfikacji w automatycznie generowanej łatce.
.TP 
\fB\-\-include\-binaries\fP
Dodanie wszystkich zmodyfikowanych plików binarnych do archiwum debian. Są
one również dodawane do \fBdebian/source/include\-binaries\fP: dzięki temu będą
domyślnie dodawane przy następnych budowach pakietu, zaś ta opcja nie będzie
już więcej potrzebna.
.TP 
\fB\-\-no\-preparation\fP
Nie próbuje przygotowywać drzewa budowania poprzez nakładanie łatek, które
wyraźnie nie są nałożone.
.TP 
\fB\-\-single\-debian\-patch\fP
Używa \fBdebian/patches/debian\-changes\fP zamiast
\fBdebian/patches/debian\-changes\-\fP\fIwersja\fP dla nazwy automatycznej łatki
generowanej przy budowaniu. Opcja ta jest szczególnie użyteczna, jeśli
pakiet jest zarządzany w VCS, a zestaw łatek nie może być wygenerowana w
sposób pewny. Bieżącego plik różnic z wersją projektu macierzystego powinien
być w zamian przechowywany w pojedynczej łatce. Opcja powinna być
prawdopodobnie umieszczona w \fBdebian/source/local\-options\fP razem z plikiem
\fBdebian/source/local\-patch\-header\fP, wyjaśniającym w jaki sposób najlepiej
przejrzeć zmiany Debiana, np. w używanym VCS.
.TP 
\fB\-\-create\-empty\-orig\fP
Automatycznie tworzy główne oryginalne archiwum jako puste, jeśli go nie ma,
a są dodatkowe archiwa uzupełniające. Opcja ta jest przeznaczona do pakietów
źródłowych, będących po prostu zbiorem oprogramowania różnego pochodzenia
bez programu "głównego".
.TP 
\fB\-\-no\-unapply\-patches, \-\-unapply\-patches\fP
Domyślnie, dpkg\-source automatycznie cofa łatki z zaczepu \fB\-\-after\-build\fP,
jeśli zostały one zaaplikowane przy \fB\-\-before\-build\fP. Wspomniane opcje
pozwalają na wymuszone wyłączenie lub włączenie procesu cofnięć łatek. Opcje
są dozwolone jedynie w \fBdebian/source/local\-options\fP, dzięki czemu
wszystkie wygenerowane pakiety źródłowe będą charakteryzować się identycznym
zachowaniem.
.TP 
\fB\-\-abort\-on\-upstream\-changes\fP
Proces zwraca błąd, jeśli wygenerowano automatyczną łatkę. Opcja może być
użyta do upewnienia się, że wszystkie zmiany zostały prawidłowo zapisane w
osobnych łatkach quilt przed zbudowaniem pakietu źródłowego. Opcji nie można
użyć w \fBdebian/source/options\fP, można za to w
\fBdebian/source/local\-options\fP.
.TP 
\fB\-\-auto\-commit\fP
Proces nie zwraca błędu, jeśli wygenerowano automatyczną łatkę, w zamian
jest ona zapisywana natychmiast jako seria quilt.

.PP
\fBOpcje rozpakowywania\fP
.TP 
\fB\-\-skip\-debianization\fP
Pomija rozpakowanie archiwum debian z włączeniem jego zawartości na
oryginalne źródła.
.TP 
\fB\-\-skip\-patches\fP
Nie nakłada łatek po skończeniu rozpakowywania.
.
.SS "Format: 3.0 (custom)"
Ten format jest szczególny. Nie jest prawdziwym formatem pakietu źródłowego,
ale może być użyty do utworzenia pakietu źródłowego zawierającego dowolne
pliki.
.PP
\fBOpcje budowania\fP
.PP
Wszystkie argumenty nie będące opcjami są uważane za pliki, które mają być
zintegrowane z generowanym pakietem źródłowym. Pliki te muszą istnieć i
najlepiej powinny być w bieżącym katalogu. Musi być podany przynajmniej
jeden plik.
.TP 
\fB\-\-target\-format=\fP\fIwartość\fP
\fBWymagane\fP. Określa prawdziwy format generowanego pakietu
źródłowego. Generowany plik .dsc będzie zawierać tą wartość w swoim polu
\fIFormat\fP zamiast "3.0 (custom)".
.
.SS "Format: 3.0 (git)"
Jest to format eksperymentalny.
.PP
Pakiet źródłowy w tym formacie składa się z pojedynczej kopii repozytorium
git \fB.git\fP, przechowującego źródła pakietu. Może zawierać również plik
\&\fB.gitshallow\fP, wypisujący wersje do płytkiej kopii gita.
.PP
\fBRozpakowywanie\fP
.PP
Kopia jest tworzona jako repozytorium git do katalogu docelowego. Jeśli
istnieje plik gitshallow, to jest instalowany jako ".git/shallow" wewnątrz
sklonowanego repozytorium git.
.PP
Proszę zauważyć, że domyślnie nowe repozytorium będzie przełączone na tę
samą gałąź co oryginalne źródło (zwykle jest to "master", ale może być
również coś innego). Wszystkie inne gałęzie będą dostępne jako
"remotes/origin/".
.PP
\fBBudowanie\fP
.PP
Nie zagłębiając się dalej, wykonywane są pewne testy aby upewnić się, czy
nie ma żadnych niezatwierdzonych zmian, które nie są ignorowane.
.PP
\fBgit\-bundle\fP(1) jest używany do utworzenia kopii repozytorium
git. Domyślnie dołączane są wszystkie gałęzie i tagi.
.PP
\fBOpcje budowania\fP
.TP 
\fB\-\-git\-ref=\fP\fIodniesienie\fP
Pozwala na podanie odniesienia gita do włączenia w kopię gita. Użycie tej
opcji, wyłącza domyślne zachowanie dołączenia wszystkich gałęzi i
tagów. Można ją podać wielokrotnie. \fIOdniesienie\fP może być nazwą gałęzi lub
tagu, który ma być dołączony. Może być ro również dowolny parametr, który
można podać do \fBgit\-rev\-list\fP(1) np. aby dołączyć tylko gałąź master,
proszę użyć \-\-git\-ref=master. Aby dołączyć wszystkie tagi i gałęzie, z
wyjątkiem gałęzi private, można skorzystać z \-git\-ref=\-\-all
\-\-git\-ref=^private
.TP 
\fB\-\-git\-depth=\fP\fIliczba\fP
Tworzy płytką kopię (ang. shallow clone) z historią ograniczoną do podanej
liczby wersji.
.SS "Format: 3.0 (bzr)"
Ten format jest eksperymentalny. Generuje pojedyncze archiwum zawierające
repozytorium bzr.
.PP
\fBRozpakowywanie\fP
.PP
Archiwum tar jest rozpakowywane i używany jest bzr aby pobrać aktualną gałąź
kodu.
.PP
\fBBudowanie\fP
.PP
Nie zagłębiając się dalej, wykonywane są pewne testy aby upewnić się, czy
nie ma żadnych niezatwierdzonych zmian, które nie są ignorowane.
.PP
Następnie część katalogu źródeł specyficzna dla systemu kontroli wersji jest
kopiowana do katalogu tymczasowego. Przed tym katalog tymczasowy jest
pakowany do archiwum tar i wykonywane są różne czynności porządkowe, aby
zaoszczędzić miejsce.
.SH "OSTRZEŻENIA I BŁĘDY"
.SS "w debian/source/format nie podano formatu źródeł,"
Plik \fBdebian/source/format\fP powinien zawsze istnieć wskazując na żądany
format źródeł. Z powodu kompatybilności wstecznej, gdy plik ten nie
istnieje, przyjmowany jest format "1.0", lecz nie należy polegać na tym
zachowaniu: w przyszłości dpkg\-source zostanie zmodyfikowany aby brak pliku
kończył się błędem.

Powodem jest to, że format "1.0" nie jest już formatem rekomendowanym;
należy z reguły wybrać któregoś z nowszych formatów ("3.0 (quilt)", "3.0
(native)"), lecz \fBdpkg\-source\fP nie zrobi tego automatycznie za
opiekuna. Aby wciąż używać starego formatu, należy wyrażnie tego zażądać
umieszczając "1.0" w \fBdebian/source/format\fP.
.SS "łatka modyfikuje następujące pliki macierzyste"
Jeżeli używa się formatu "1.0" źródeł, to zwykle złym pomysłem jest
bezpośrednie modyfikowanie plików macierzystych, jako że na końcu zmiany
będą ukryte i w większości nieudokumentowane w pliku .diff.gz. Zamiast tego
należy przechowywać swe zmiany jako łatki w katalogu debian i aplikować je w
trakcie budowania. Aby zapobiec temu złożonemu procesowi, można również użyć
formatu "3.0 (quilt), który oferuje to natywnie.
.SS "niereprezentowalna zmiana w \fIpliku\fP"
Zmiany w źródłach macierzystych są zwykle przechowywane w postaci łatek,
lecz nie wszystkie zmiany mogą być tak reprezentowane: łatki mogą zmieniać
zawartość jedynie plików tekstowym. Jeśli próbuje się zastąpić plik czymś
innego typu (np. zastąpić czysty plik dowiązaniem symbolicznym lub
katalogiem), otrzyma się ten komunikat o błędzie.
.SS "nowo utworzony pusty plik \fIplik\fP nie będzie dołączony do pliku łatki"
Puste pliki nie mogą być tworzone za pomocą plików łatek. W związku z tym,
ta zmiana nie jest przechowywana w pakiecie źródłowym, a to ostrzeżenie o
tym przypomina.
.SS "prawa dostępu \fIprawo\fP pliku \fIplik\fP nie będą dołączone do pliku łatki"
.SS "specjalne prawa dostępu \fIprawa\fP pliku \fIplik\fP nie będą dołączone do pliku łatki"
Pliki łatek nie przechowują informacji o uprawnieniach plików i w związku z
tym, zmodyfikowane uprawnienia nie są przechowywane w pakiecie źródłowym. To
ostrzeżenie przypomina o tym fakcie.
.SH "FORMATY PLIKÓW"
.SS debian/source/format
Plik ten zawiera w pojedynczej linii określenie formatu, który powinien
zostać użyty do zbudowania pakietu źródłowego (dostępne formaty opisane są
wyżej). Niedozwolone są początkowe i końcowe znaki spacji.
.SS debian/source/include\-binaries
Plik ten zawiera listę plików binarnych (po jednym w każdej linii), które
powinny być zawarte w archiwum debian. Początkowe i końcowe znaki spacji są
usuwane. Linie rozpoczynające się od "#" są traktowane jak komentarze i są
pomijane, puste linie są ignorowane.
.SS debian/source/options
Plik zawiera listę długich opcji, które powinny być automatycznie dodawane
na początku zestawu opcji wiersza polecenia wywołania \fBdpkg\-source \-b\fP lub
\fBdpkg\-source \-\-print\-format\fP. Do tego pliku świetnie nadają się opcje takie
jak \fB\-\-compression\fP i \fB\-\-compression\-level\fP.
.P
Każda opcja powinna być umieszczona w osobnym wierszu. Puste wiersze i
wiersze zaczynające się od znaku "#" są ignorowane. Początkowe "\-\-" powinno
być usunięte, niedozwolone są opcje któtkie. Wokół symbolu "=" dozwolone są
opcjonalne spacje, a wokół wartości dozwolone są opcjonalne cudzysłowy. Oto
przykład takiego pliku:
.P
  # let dpkg\-source create a debian.tar.bz2 with maximal compression
  compression = "bzip2"
  compression\-level = 9
  # use debian/patches/debian\-changes as automatic patch
  single\-debian\-patch
  # ignore changes on config.{sub,guess}
  extend\-diff\-ignore = "(^|/)(config.sub|config.guess)$"
.P
Uwaga: opcje \fBformat\fP nie są akceptowane w tym pliku, należy w zamian
używać \fBdebian/source/format\fP.
.SS debian/source/local\-options
Dokładnie jak \fBdebian/source/options\fP z tym wyjątkiem, że plik nie jest
dołączany do wygenerowanego pakietu źródłowego. Może być przydatny aby
przechować preferencje opiekuna lub repozytorium VCS, gdzie pakiet źródłowy
jest zarządzany.
.SS debian/source/local\-patch\-header
.SS debian/source/patch\-header
Tekst w dowolnej postaci, który zostanie umieszczony na górze łatki
wygenerowanej automatycznie, w formacie "2.0" lub "3.0
(quilt). \fBlocal\-patch\-header\fP nie jest dołączone w generowanym pakiecie
źródłowym, natomiast \fBpatch\-header\fP jest.
.SS debian/patches/series
Plik ten zawiera listę wszystkich łatek, jakie powinny być nałożone (w
określonej kolejności) na kod oryginalnego pakietu źródłowego. Początkowe i
końcowe znaki spacji są usuwane. Linie rozpoczynające się od "#" są
traktowane jak komentarze i są pomijane, puste linie są
ignorowane. Pozostałe linie zawierają nazwy plików łatek (względem katalogu
\fBdebian/patches/\fP), aż do pierwszego napotkanego znaku spacji lub końca
linii. Opcjonalne opcje programu quilt następują do końca linii lub
pierwszego znaku "#", poprzedzonego co najmniej jedną spacją (co rozpoczyna
komentarz ciągnący się aż do końca linii).
.SH BŁĘDY
Punkt, w którym następuje nadpisywanie pól w porównaniu do pewnych
standardowych ustawień pól wyjściowych jest dość zagmatwany.
.SH "ZOBACZ TAKŻE"
\fBdpkg\-deb\fP(1), \fBdpkg\fP(1), \fBdselect\fP(1).
.SH "TŁUMACZE"
Piotr Roszatycki <dexter@debian.org>, 1999
.br
Bartosz Feński <fenio@debian.org>, 2004-2005
.br
Robert Luberda <robert@debian.org>, 2006-2008
.br
Wiktor Wandachowicz <siryes@gmail.com>, 2008
.br
Michał Kułach <michal.kulach@gmail.com>, 2012
