Provided by: dpkg-dev_1.17.5ubuntu5.8_all
NAZWA
dpkg-source - narzędzia do zarządzania źródłowymi pakietami Debiana (.dsc)
SKŁADNIA
dpkg-source [opcja...] polecenie
OPIS
dpkg-source 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.
POLECENIA
-x nazwa-pliku.dsc [katalog-wyjściowy] Rozpakowanie pakietu źródłowego. Wymagane jest podanie jednego argumentu nie będącego opcją, nazwy pliku kontrolny pakietu źródłowego (.dsc). 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 źródło-wersja w ramach bieżącego katalogu roboczego. dpkg-source 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 .dsc. 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 debian/source/format. Dzięki temu przy następnych budowach pakietu źródłowego będzie domyślnie używany ten sam format. -b, katalog [parametry-zależne-od-formatu] 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. dpkg-source 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 --format, format określony w pliku debian/source/format, "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 debian/source/format. W sekcji FORMATY PAKIETÓW ŹRÓDŁOWYCH można znaleźć wyczerpujący opis różnych formatów pakietów źródłowych. --print-format katalog Wyświetla format źródłowy, który będzie użyty do zbudowania pakietu źródłowego, jeśli zostanie wywołane dpkg-source -b katalog (z tymi samymi warunkami i parametrami). --before-build katalog Uruchamia odpowiedni zaczep formatu pakietu źródłowego. Zaczep jest wywoływany przed pierwszym zbudowaniem pakietu (dpkg-buildpackage wywołuje go bardzo wcześnie, nawet przed debian/rules clean). 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. --after-build katalog Uruchamia odpowiedni zaczep formatu pakietu źródłowego. Zaczep jest wywoływany po ostatnim zbudowaniu pakietu (dpkg-buildpackage 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 --before-build. --commit [katalog] ... Zapisuje zmiany w drzewie źródłowym rozpakowanym w katalogu. 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. -?, --help Wyświetla informację o użytkowaniu i kończy działanie. --version Wyświetla informację o wersji i pomyślnie kończy działanie.
OPCJE
Generic build options -cplik-kontrolny Określa główny plik kontrolny źródeł, z którego będą czytane informacje. Domyślnie jest to debian/control. Jeśli podano względną ścieżkę, to jest ona interpretowana od najwyższego poziomu katalogu drzewa ze źródłami. -lplik-dziennika-zmian Określa dziennik zmian, z którego będą czytane informacje. Domyślnie jest to debian/changelog. Jeśli podano względną ścieżkę, to jest ona interpretowana od najwyższego poziomu katalogu drzewa ze źródłami. -Fformat-dziennika-zmian Określa format dziennika zmian. Więcej informacji o alternatywnych formatach można znaleźć w dpkg-parsechangelog(1). --format=wartość Do budowy pakietu źródłowego używany jest podany format. Nadpisuje to każdy format podany w pliku debian/source/format. -Vnazwa=wartość Ustawia zmienną podstawienia wyjścia. Szczegółowy opis podstawiania zmiennych wyjściowych znajduje się w deb-substvars(5). -Tplik-zmiennych-podst Odczytuje zmienne podstawiania z pliku-zmiennych-podst; domyślnie nie czyta żadnego pliku. Opcja może być użyta wielokrotnie, aby odczytać podstawiania z wielu plików. -Dpole=wartość Nadpisuje lub dodaje wyjściowe pole pliku kontrolnego. -Upole Usuwa wyjściowe pole pliku kontrolnego. -Zkompresja, --compression=kompresja Specify the compression to use for created files (tarballs and diffs). Note that this option will not cause existing tarballs to be recompressed, it only affects new files. Supported values are: gzip, bzip2, lzma and xz. gzip is the default. xz is only supported since dpkg 1.15.5. -zpoziom, --compression-level=poziom Używany poziom kompresowania. Podobnie jak w wypadku -Z, dotyczy tylko nowo tworzonych plików. Obsługiwane wartości: 1 do 9, best oraz fast. 9 jest wartością domyślną w przypadku gzip i bzip2, 6 w przypadku xz i lzma. -i[regex], --diff-ignore[=regex] You may specify a perl regular expression to match files you want filtered out of the list of files for the diff. (This list is generated by a find command.) (If the source package is being built as a version 3 source package using a VCS, this can be used to ignore uncommited changes on specific files. Using -i.* will ignore all of them.) The -i option by itself enables this setting with a default regex (preserving any modification to the default regex done by a previous use of --extend-diff-ignore) that will filter out control files and directories of the most common revision control systems, backup and swap files and Libtool build output directories. There can only be one active regex, of multiple -i options only the last one will take effect. This is very helpful in cutting out extraneous files that get included in the diff, e.g. if you maintain your source in a revision control system and want to use a checkout to build a source package without including the additional files and directories that it will usually contain (e.g. CVS/, .cvsignore, .svn/). The default regex is already very exhaustive, but if you need to replace it, please note that by default it can match any part of a path, so if you want to match the begin of a filename or only full filenames, you will need to provide the necessary anchors (e.g. '(^|/)', '($|/)') yourself. --extend-diff-ignore=regex The perl regular expression specified will extend the default value used by --diff-ignore and its current value (if set). It does this by concatenating "|regex" to the existing value. This option is convenient to use in debian/source/options to exclude some auto-generated files from the automatic patch generation. -I[wzorzec-pliku], --tar-ignore[=wzorzec-pliku] If this option is specified, the pattern will be passed to tar(1)'s --exclude option when it is called to generate a .orig.tar or .tar file. For example, -ICVS will make tar skip over CVS directories when generating a .tar.gz file. The option may be repeated multiple times to list multiple patterns to exclude. -I by itself adds default --exclude options that will filter out control files and directories of the most common revision control systems, backup and swap files and Libtool build output directories. Note: While they have similar purposes, -i and -I have very different syntax and semantics. -i can only be specified once and takes a perl compatible regular expression which is matched against the full relative path of each file. -I can specified multiple times and takes a filename pattern with shell wildcards. The pattern is applied to the full relative path but also to each part of the path individually. The exact semantic of tar's --exclude option is somewhat complicated, see https://www.gnu.org/software/tar/manual/tar.html#wildcards for a full documentation. The default regex and patterns for both options can be seen in the output of the --help command. Generic extract options --no-copy Nie kopiuje oryginalnych archiwów obok rozpakowanego pakietu źródłowego. --no-check Bez weryfikacji podpisów i sprawdzania sum kontrolnych przed rozpakowaniem. --require-valid-signature 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 trustedkeys.gpg, jeden z kluczy twórców pakietu, lub jeden z oficjalnych kluczy Debiana (/usr/share/keyrings/debian-keyring.gpg oraz /usr/share/keyrings/debian-maintainers.gpg).
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 https://wiki.debian.org/Projects/DebSrc3.0. Format: 1.0 Pakiet źródłowy w tym formacie składa się z pliku .orig.tar.gz powiązanego z plikiem różnic .diff.gz, lub z pojedynczego pliku .tar.gz (w takim przypadku mówi się, że pakiet jest natywny). Rozpakowywanie 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 .orig.tar.gz a następnie nałożenia łatek zawartych w pliku .diff.gz. 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). Budowanie 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 .diff.gz poprzez porównanie katalogu pakietu źródłowego z katalogiem ".orig". Opcje budowania (z -b): 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 dpkg-source - w zależności od argumentów -sX - będzie szukał albo archiwum tar z oryginalnymi źródłami pakiet_wersja_upstream.orig.tar.rozszerzenie (gdzie rozszerzenie jest jednym z gz,bz2 lub lzma), albo katalogu z oryginalnymi źródłami katalog.orig. -sa, -sp, -sk, -su oraz -sr nie nadpiszą istniejących archiwów tar lub katalogów. Jeśli jest to wymagane, należy użyć -sA, -sP, -sK, -sU i -sR. -sk Określa, że należy spodziewać się oryginalnych źródeł w postaci archiwum tar, domyślnie pakiet_wersja-autora-pakietu.orig.tar.rozszerzenie. 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 katalogu.orig w celu utworzenia pliku różnic (diff). -sp Jak -sk, ale ponownie usunie katalog po zakończeniu. -su Określa, że należy spodziewać się oryginalnych źródeł w postaci katalogu, domyślnie pakiet-wersja-autora-pakietu.orig, na podstawie którego dpkg-source utworzy nowe archiwum oryginalnych źródeł. -sr Jak -su, jednakże usunie katalog po jego użyciu. -ss Specifies that the original source is available both as a directory and as a tarfile. dpkg-source will use the directory to create the diff, but the tarfile to create the .dsc. This option must be used with care - if the directory and tarfile do not match a bad source archive will be generated. -sn 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). -sa lub -sA 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 -sn). 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 -sp). 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 -sr). --abort-on-upstream-changes 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 debian/source/options, lecz może być użyta w debian/source/local-options. Opcje rozpakowywania (z -x): We wszystkich przypadkach, istniejące oryginalne drzewo ze źródłami będzie usunięte. -sp 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. (Jest to zachowanie domyślne). -su Rozpakowuje oryginalne drzewo źródeł programu. -sn 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. Wszystkie spośród opcji -s-X się wzajemnie wykluczają. Jeśli zostanie podana więcej niż jedna, to zostanie użyta ostatnia z nich. --skip-debianization Pomija wykorzystanie różnic Debiana (debian diff) do nałożenia łatek na oryginalne źródła. 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 debian/patches/ pasujące do wyrażenia regularnego Perla [\w-]+ 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 zz_debian-diff-auto. 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 -I w informacjach uzyskiwanych poleceniem --help). Format: 3.0 (quilt) A source package in this format contains at least an original tarball (.orig.tar.ext where ext can be gz, bz2, lzma and xz) and a debian tarball (.debian.tar.ext). It can also contain additional original tarballs (.orig-component.tar.ext). component can only contain alphanumeric characters and hyphens ("-"). Rozpakowywanie Najpierw rozpakowywane jest główne oryginalne archiwum tar, następnie rozpakowywane są dodatkowe oryginalne archiwa tar do podkatalogów nazwanych od części komponent z ich nazwy pliku (istniejące katalogi o takich nazwach są zamieniane). Na końcu rozpakowywane jest archiwum debian, po uprzednim usunięciu katalogu debian (jeśli taki istniał). Należy zauważyć, że archiwum debian musi zawierać podkatalog debian, ale może również zawierać pliki binarne poza tym katalogiem (proszę sprawdzić opcję --include-binaries). All patches listed in debian/patches/debian.series or debian/patches/series are then applied. If the former file is used and the latter one doesn't exist (or is a symlink), then the latter is replaced with a symlink to the former. This is meant to simplify usage of quilt to manage the set of patches. Note however that while dpkg-source parses correctly series files with explicit options used for patch application (stored on each line after the patch filename and one or more spaces), it does ignore those options and always expect patches that can be applied with the -p1 option of patch. It will thus emit a warning when it encounters such options, and the build is likely to fail. Contrary to quilt's default behaviour, patches are expected to apply without any fuzz. When that is not the case, you should refresh such patches with quilt, or dpkg-source will error out while trying to apply them. Similarly to quilt's default behaviour, the patches can remove files too. Jeśli podczas rozpakowywania zostały nałożone jakieś łatki, tworzony jest plik .pc/applied-patches. Budowanie All original tarballs found in the current directory are extracted in a temporary directory by following the same logic as for the unpack, the debian directory is copied over in the temporary directory, and all patches except the automatic patch (debian-changes-version or debian-changes, depending on --single-debian-patch) are applied. The temporary directory is compared to the source package directory. When the diff is non-empty, the build fails unless --single-debian-patch or --auto-commit has been used, in which case the diff is stored in the automatic patch. If the automatic patch is created/deleted, it's added/removed from the series file and from the quilt metadata. Ż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 debian/source/include-binaries). Proces budowania nie powiedzie się także jeśli zostaną znalezione pliki binarne w podkatalogu debian, chyba że zostały one uprzednio wymienione w debian/source/include-binaries. Zaktualizowany katalog debian oraz lista zmodyfikowanych plików binarnych są następnie używane do powtórnego wygenerowania archiwum debian. The automatically generated diff doesn't include changes on VCS specific files as well as many temporary files (see default value associated to -i option in the --help output). In particular, the .pc directory used by quilt is ignored during generation of the automatic patch. Uwaga: dpkg-source --before-build (i -b) 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 series, lecz nie są w .pc/applied-patches), a jeśli pierwsza łatka z tego zestawu może być zaaplikowana bez błędów, zostaną zaaplikowane wszystkie. Opcja --no-preparation może być użyta, aby wyłączyć to zachowanie. Zapisywanie zmian --commit [katalog] [nazwa-łatki] [plik-łatki] Generates a patch corresponding to the local changes that are not managed by the quilt patch system and integrates it in the patch system under the name patch-name. If the name is missing, it will be asked interactively. If patch-file is given, it is used as the patch corresponding to the local changes to integrate. Once integrated, an editor is launched so that you can edit the meta-information in the patch header. Podanie pliku-łatki 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 debian/source/include-binaries, przez co znajdą się one w archiwum debian (dokładnie jak zrobiłoby dpkg-source --include-binaries -b). Opcje budowania --allow-version-of-quilt-db=wersja Allow dpkg-source to build the source package if the version of the quilt metadata is the one specified, even if dpkg-source doesn't know about it. Effectively this says that the given version of the quilt metadata is compatible with the version 2 that dpkg-source currently supports. The version of the quilt metadata is stored in .pc/.version. --include-removal Usunięte pliki nie będą ignorowane, ale będą włączone do automatycznie generowanej łatki. --include-timestamp Włączenie czasu modyfikacji w automatycznie generowanej łatce. --include-binaries Dodanie wszystkich zmodyfikowanych plików binarnych do archiwum debian. Są one również dodawane do debian/source/include-binaries: dzięki temu będą domyślnie dodawane przy następnych budowach pakietu, zaś ta opcja nie będzie już więcej potrzebna. --no-preparation Nie próbuje przygotowywać drzewa budowania poprzez nakładanie łatek, które wyraźnie nie są nałożone. --single-debian-patch Używa debian/patches/debian-changes zamiast debian/patches/debian-changes-wersja 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 debian/source/local-options razem z plikiem debian/source/local-patch-header, wyjaśniającym w jaki sposób najlepiej przejrzeć zmiany Debiana, np. w używanym VCS. --create-empty-orig 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". --no-unapply-patches, --unapply-patches By default, dpkg-source will automatically unapply the patches in the --after-build hook if it did apply them during --before-build. Those options allow you to forcefully disable or enable the patch unapplication process. Those options are only allowed in debian/source/local-options so that all generated source packages have the same behavior by default. --abort-on-upstream-changes The process fails if an automatic patch has been generated. This option can be used to ensure that all changes were properly recorded in separate quilt patches prior to the source package build. This option is not allowed in debian/source/options but can be used in debian/source/local-options. --auto-commit The process doesn't fail if an automatic patch has been generated, instead it's immediately recorded in the quilt series. Opcje rozpakowywania --skip-debianization Pomija rozpakowanie archiwum debian z włączeniem jego zawartości na oryginalne źródła. --skip-patches Nie nakłada łatek po skończeniu rozpakowywania. 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. Opcje budowania 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. --target-format=wartość Required. Defines the real format of the generated source package. The generated .dsc file will contain this value in its Format field and not "3.0 (custom)". Format: 3.0 (git) Jest to format eksperymentalny. Pakiet źródłowy w tym formacie składa się z pojedynczej kopii repozytorium git .git, przechowującego źródła pakietu. Może zawierać również plik .gitshallow, wypisujący wersje do płytkiej kopii gita. Rozpakowywanie 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. 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/". Budowanie Nie zagłębiając się dalej, wykonywane są pewne testy aby upewnić się, czy nie ma żadnych niezatwierdzonych zmian, które nie są ignorowane. git-bundle(1) jest używany do utworzenia kopii repozytorium git. Domyślnie dołączane są wszystkie gałęzie i tagi. Opcje budowania --git-ref=odniesienie Allows specifying a git ref to include in the git bundle. Use disables the default behavior of including all branches and tags. May be specified multiple times. The ref can be the name of a branch or tag to include. It may also be any parameter that can be passed to git-rev-list(1). For example, to include only the master branch, use --git-ref=master. To include all tags and branches, except for the private branch, use --git-ref=--all --git-ref=^private --git-depth=liczba Tworzy płytką kopię (ang. shallow clone) z historią ograniczoną do podanej liczby wersji. Format: 3.0 (bzr) Ten format jest eksperymentalny. Generuje pojedyncze archiwum zawierające repozytorium bzr. Rozpakowywanie Archiwum tar jest rozpakowywane i używany jest bzr aby pobrać aktualną gałąź kodu. Budowanie Nie zagłębiając się dalej, wykonywane są pewne testy aby upewnić się, czy nie ma żadnych niezatwierdzonych zmian, które nie są ignorowane. 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.
DIAGNOSTYKA
w debian/source/format nie podano formatu źródeł, The file debian/source/format should always exist and indicate the desired source format. For backwards compatibility, format "1.0" is assumed when the file doesn't exist but you should not rely on this: at some point in the future dpkg-source will be modified to fail when that file doesn't exist. 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 dpkg-source nie zrobi tego automatycznie za opiekuna. Aby wciąż używać starego formatu, należy wyrażnie tego zażądać umieszczając "1.0" w debian/source/format. ł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. niereprezentowalna zmiana w pliku 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. nowo utworzony pusty plik plik 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. prawa dostępu prawo pliku plik nie będą dołączone do pliku łatki Patch files do not record permissions of files and thus executable permissions are not stored in the source package. This warning reminds you of that fact. specjalne prawa dostępu prawa pliku plik 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.
FORMATY PLIKÓW
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. 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. debian/source/options Plik zawiera listę długich opcji, które powinny być automatycznie dodawane na początku zestawu opcji wiersza polecenia wywołania dpkg-source -b lub dpkg-source --print-format. Do tego pliku świetnie nadają się opcje takie jak --compression i --compression-level. 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: # 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)$" Uwaga: opcje format nie są akceptowane w tym pliku, należy w zamian używać debian/source/format. debian/source/local-options Dokładnie jak debian/source/options 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. debian/source/local-patch-header and 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). local-patch-header nie jest dołączone w generowanym pakiecie źródłowym, natomiast patch-header jest. debian/patches/series This file lists all patches that have to be applied (in the given order) on top of the upstream source package. Leading and trailing spaces are stripped. Lines starting with "#" are comments and are skipped. Empty lines are ignored. Remaining lines start with a patch filename (relative to the debian/patches/ directory) up to the first space character or the end of line. Optional quilt options can follow up to the end of line or the first "#" preceded by one or more spaces (which marks the start of a comment up to the end of line).
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.
ZOBACZ TAKŻE
dpkg-deb(1), dpkg(1), dselect(1).
TŁUMACZE
Piotr Roszatycki <dexter@debian.org>, 1999 Bartosz Feński <fenio@debian.org>, 2004-2005 Robert Luberda <robert@debian.org>, 2006-2008 Wiktor Wandachowicz <siryes@gmail.com>, 2008 Michał Kułach <michal.kulach@gmail.com>, 2012