Provided by: dpkg-dev_1.17.5ubuntu5.8_all 

NAZWA
deb-src-control - format głównego pliku kontrolnego pakietu źródłowego Debiana
SKŁADNIA
control
OPIS
Każdy pakiet źródłowy Debiana zawiera główny plik "control", który zawiera co najmniej dwa akapity,
oddzielone pustym wierszem. Pierwszy zawiera wszystkie ogólne informacje o pakiecie źródłowym, natomiast
każdy następny akapit opisuje dokładnie jeden pakiet binarny. Każdy akapit składa się z co najmniej
jednego pola. Pole zaczyna się jego nazwą, taką jak Package lub Section (wielkość znaków nieistotna), po
której występuje dwukropek, zawartość pola i nowy wiersz. Dozwolone są również pola składające się z
wielu wierszy, ale każdy uzupełniający wiersz, nieposiadający nazwy pola, powinien zaczynać się co
najmniej jedną spacją. Zawartość pól wielowierszowych jest zwykle łączona przez narzędzia w jeden wiersz
(z wyjątkiem pola Description, patrz niżej). Aby wstawić puste wiersze w pole wielowierszowe, po spacji
należy dopisać kropkę. Wiersze zaczynające się od "#" są traktowane jako komentarze.
POLA PAKIETU ŹRÓDŁOWEGO
Source: nazwa-pakietu-źródłowego (wymagane)
Wartość tego pola jest nazwą pakietu źródłowego i powinna pasować do nazwy pakietu źródłowego w
pliku debian/changelog. Nazwa pakietu może składać się wyłącznie z małych liter (a-z), cyfr (0-9),
plusów (+), minusów (-) oraz kropek (.). Nazwy pakietu muszą mieć długość co najmniej dwóch znaków
i muszą zaczynać się literą lub cyfrą.
Maintainer: pełna-nazwa e-mail (wymagane)
Powinna być w formacie "Jan Nowak <jnowak@foo.com>" i zazwyczaj oznacza osobę, która zajmuje się
obecnie danym pakietem, a nie autora programu ani pierwotnego paczkującego.
Uploaders: pełna-nazwa email
Zawiera wszystkie nazwiska i adresy poczty elektronicznej współopiekunów pakietu, w tym samym
formacie jak pole Maintainer. Poszczególnych współopiekunów należy rozdzielić przecinkiem.
Standards-Version: oznaczenie-wersji
Opisuje najnowszą wersję standardów (składających się z dokumentu Debian Policy Manual i tekstów,
do których się on odwołuje, z pakietu debian-policy), z którymi zgodny jest pakiet.
Homepage: URL
URL do strony internetowej projektu macierzystego.
Bugs: URL
URL systemu zgłaszania błędów dla tego pakietu. Obecnie używanym formatem jest is
typ_bts://adres_bts, na przykład: debbugs://bugs.debian.org. Pole to zwykle nie jest potrzebne.
Vcs-*: URL
URL repozytorium systemu kontroli wersji, używanego do zarządzania danym pakietem. Obecnie
obsługiwane są: Arch, Bzr (Bazaar), Cvs, Darcs, Git, Hg (Mercurial), Mtn (Monotone) i Svn
(Subversion). Pole to zwykle odwołuje się do najnowszej wersji pakietu np. głównej gałęzi lub
pnia.
Vcs-Browser: URL
URL interfejsu WWW do przeglądania repozytorium systemu kontroli wersji.
Origin: nazwa
Nazwa dystrybucji, z której pochodzi pakiet. Pole to z reguły nie jest potrzebne.
Section:sekcja
Jest to ogólne pole zawierające kategorię pakietu bazowaną na oprogramowaniu, które zawiera.
Niektóre częściej występujące sekcje to: "utils", "net", "mail", "text", "x11" itp.
Priority: priorytet
Ustawia ważność pakietu w stosunku do całego systemu. Najczęściej używane priorytety to:
"required" (wymagany), "standard" (standardowy) , "optional" (opcjonalny), "extra" (dodatkowy)
itp.
W Debianie pola Section i Pririty mają ściśle zdefiniowany zbiór akceptowalnych wartości opisany w
Zasadach polityki Debiana. Listę tych wartości można znaleźć w najnowszej wersji pakietu
debian-policy.
Build-Depends: lista-pakietów
Lista pakietów, które muszą być zainstalowane i skonfigurowane aby zbudować pakiet źródłowy.
Zależność na tej liście ma taki efekt, jak umieszczenie jest zarówno w Build-Depends-Arch jak i
Build-Depends-Indep, z tym dodatkowym działaniem, że jest ona używana tylko do budowy źródeł.
Build-Depends-Arch: lista-pakietów
Same as Build-Depends, but they are only needed when building the architecture dependent packages.
The Build-Depends are also installed in this case. This field is supported since dpkg 1.16.4; in
order to build with older dpkg versions, Build-Depends should be used instead.
Build-Depends-Indep: lista-pakietów
Podobnie jak Build-Depends, lecz obejmuje tylko zależności potrzebne przy budowaniu pakietów
niezależnych od architektury. Build-Depends są wówczas również instalowane.
Build-Conflicts: lista-pakietów
Lista pakietów, które nie powinny być instalowane podczas budowy pakietu, np. dlatego, że wpływają
na używany system budowania. Zależność z tej listy ma taki sam efekt, jak umieszczenie jej zarówno
w Build-Conflicts-Arch jak i Build-Conflicts-Indep, z tym dodatkowym działaniem, że jest używana
tylko do budowań źródeł.
Build-Conflicts-Arch: lista-pakietów
Same as Build-Conflicts, but only when building the architecture dependent packages. This field is
supported since dpkg 1.16.4; in order to build with older dpkg versions, Build-Conflicts should be
used instead.
Build-Conflicts-Indep: lista-pakietów
Podobnie jak Build-Conflict, lecz ma znaczenie tylko przy budowaniu pakietów niezależnych od
architektury.
The syntax of the Build-Depends, Build-Depends-Arch and Build-Depends-Indep fields is a list of groups of
alternative packages. Each group is a list of packages separated by vertical bar (or "pipe") symbols,
"|". The groups are separated by commas. Commas are to be read as "AND", and pipes as "OR", with pipes
binding more tightly. Each package name is optionally followed by a version number specification in
parentheses, an architecture specification in square brackets, and a profile specification in angle
brackets.
The syntax of the Build-Conflicts, Build-Conflicts-Arch and Build-Conflicts-Indep fields is a list of
comma-separated package names, where the comma is read as an "AND". Specifying alternative packages using
a "pipe" is not supported. Each package name is optionally followed by a version number specification in
parentheses, an architecture specification in square brackets, and a profile specification in angle
brackets.
Numer wersji może zaczynać się od ">>", co oznacza, że każda późniejsza wersja pakietu będzie
odpowiednia; można także podawać lub pomijać wersję zmian Debiana (po znaku myślnika). Akceptowalne
relacje są następujące: ">>" - większy niż, "<<" - mniejszy niż, ">=" - większy lub równy, "<=" -
mniejszy lub równy oraz "=" - równy.
An architecture specification consists of one or more architecture names, separated by whitespace.
Exclamation marks may be prepended to each of the names, meaning "NOT".
A profile specification consists of one or more profile names, prefixed with the "profile." namespace,
separated by whitespace. Exclamation marks may be prepended to each of the names, meaning "NOT".
Proszę zauważyć, że zależności wobec pakietów z zestawu build-essential mogą być pominięte, nie da się
również deklarować wobec nich konfliktów. Lista tych pakietów znajduje się w pakiecie build-essential.
POLA PAKIETÓW BINARNYCH
Proszę zauważyć, że w akapicie binarnym można podać również pola Priority, Section i Homepage -
przesłonią one wówczas ogólną wartość z pakietu źródłowego.
Package: nazwa-pakietu-binarnego (wymagane)
To pole jest używane do podania nazwy pakietu binarnego. Stosują się to te same zasady, co wobec
nazwy pakietu źródłowego.
Architecture: architektura|all|any (wymagane)
Architektura określa typ sprzętu, na jakim działa dany pakiet. W przypadku pakietów działających
na wszystkich architekturach, należy użyć wartości any. Do pakietów niezależnych od architektury,
takich jak powłoka i skrypty Perla lub dokumentacja, właściwym wyborem jest all. Aby ograniczyć
pakiet do określonego zestawu architektur, należy je podać, oddzielając kolejne spacją. Można
również podać w tej liście maski architektur (patrz dpkg-architecture(1), aby dowiedzieć się o
nich więcej).
Package-Type: deb|udeb
To pole definiuje typ pakietu. "udeb" odnosi się do pakietów o zmniejszonych rozmiarach, używanych
przez instalator Debiana. "deb" jest wartością domyślną i jest ona przyjmowana, gdy pole nie
zostanie użyte. W przyszłości możliwe jest dodanie kolejnych typów.
Subarchitecture: wartość
Kernel-Version: wartość
Installer-Menu-Item: wartość
Pola te są używane przez debian-installer (instalator Debiana) i zwykle nie są potrzebne. Plik
/usr/share/doc/debian-installer/devel/modules.txt z pakietu debian-installer zawiera więcej
informacji.
Essential: yes|no
Multi-Arch: same|foreign|allowed
Tag: lista-znaczników
Description: krótki-opis (wymagane)
Pola te są opisane na stronie podręcznika deb-control(5), ponieważ są one dokładnie kopiowane do
pliku kontrolnego pakietu binarnego.
Depends: lista-pakietów
Pre-Depends: lista-pakietów
Recommends: lista-pakietów
Suggests: lista-pakietów
Breaks: lista-pakietów
Enhances: lista-pakietów
Replaces: lista-pakietów
Conflicts: lista-pakietów
Provides: lista-pakietów
Built-Using: lista-pakietów
(Rozszerza) Pola te deklarują zależności pomiędzy pakietami. Są one opisane na stronie podręcznika
deb-control(5) i w pakiecie debian-policy.
POLA DEFINIOWANE PRZEZ UŻYTKOWNIKA
Istnieje możliwość dodawania dodatkowych do pliku kontrolnego. Narzędzia będą je ignorować. Jeśli pola te
mają być kopiowane do plików wyjściowych, takich jak pakiety binarne, konieczne jest użycie następującej
składni: nazwa musi się zaczynać od X, po którym występuje co najmniej jedna z liter B, C, S i minus.
Jeśli używana jest litera B, to pole pojawi się w pliku kontrolnych pakietu binarnego (patrz
deb-control(5)), w przypadku litery S, w pliku kontrolnym pakietu źródłowego, zgodnie z dpkg-source(1), a
litera C spowoduje pojawienie się pola w pliku kontrolnym wysyłki (.changes). Proszę zauważyć, że
przedrostki X[BCS]- są usuwane, gdy dane pola są kopiowane do plików wyjściowych. Pole XC-Approved-By
pojawi się jako Approved-By w pliku .changes i nie pojawi się w plikach kontrolnych pakietu źródłowego,
ani binarnego.
Proszę wziąć pod uwagę, że pola zdefiniowane przez użytkownika będą używały globalnej przestrzeni nazw,
co może w przyszłości kolidować z oficjalnie rozpoznawanymi polami. Aby zapobiec takiej potencjalnej
sytuacji, można poprzedzić takie pola przedrostkiem Private-, np. XB-Private-New-Field, co dodatkowo
spowoduje, że dpkg-deb nie będzie ostrzegał przed nierozpoznanymi polami.
PRZYKŁAD
# Komentarz
Source: dpkg
Section: admin
Priority: required
Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
# to pole będzie skopiowane do pakietu binarnego i źródłowego
XBS-Upstream-Release-Status: stable
Homepage: https://wiki.debian.org/Teams/Dpkg
Vcs-Browser: http://git.debian.org/?p=dpkg/dpkg.git
Vcs-Git: git://git.debian.org/git/dpkg/dpkg.git
Standards-Version: 3.7.3
Build-Depends: pkg-config, debhelper (>= 4.1.81),
libselinux1-dev (>= 1.28-4) [!linux-any]
Package: dpkg-dev
Section: utils
Priority: optional
Architecture: all
# to jest pole użytkownika w pakiecie binarnym
XB-Mentoring-Contact: Raphael Hertzog <hertzog@debian.org>
Depends: dpkg (>= 1.14.6), perl5, perl-modules, cpio (>= 2.4.2-2),
bzip2, lzma, patch (>= 2.2-1), make, binutils, libtimedate-perl
Recommends: gcc | c-compiler, build-essential
Suggests: gnupg, debian-keyring
Conflicts: dpkg-cross (<< 2.0.0), devscripts (<< 2.10.26)
Replaces: manpages-pl (<= 20051117-1)
Description: Debian package development tools
This package provides the development tools (including dpkg-source)
required to unpack, build and upload Debian source packages.
.
Most Debian source packages will require additional tools to build;
for example, most packages need make and the C compiler gcc.
ZOBACZ TAKŻE
deb-control(5), deb-version(5), dpkg-source(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
Projekt Debian 2013-09-17 deb-src-control(5)