![]() |
deb-control(5) |
![]() |
deb−control − format g³ównego pliku pakietu Debiana
control
Ka¿dy pakiet Debiana zawiera g³ówny plik "control", sk³adaj±cy siê z pewnej liczby pól lub linii komentarza, czyli linii zaczynaj±cych siê znakiem "#". Ka¿de pole zaczyna siê od identyfikatora, takiego jak Package lub Version (wielko¶æ liter nie ma znaczenia), po którym nastêpuj± dwukropek oraz warto¶æ pola. Pola s± rozdzielane od siebie identyfikatorami pól. Innymi s³owy, tekst pola mo¿e siê sk³adaæ z wielu linii, jednak¿e narzêdzia instalacyjne po³±cz± te linie podczas przetwarzania warto¶ci pola (z wyj±tkiem pola Description, patrz ni¿ej).
Package: <nazwa pakietu>
Warto¶æ tego pola okre¶la nazwê pakietu i przez wiêkszo¶æ narzêdzi instalacyjnych jest u¿ywana do generowania nazw plików.
Version: <oznaczenie wersji>
Zazwyczaj jest to oryginalna wersja pakietu w takiej postaci, jakiej u¿ywa autor pakietu. Mo¿e tak¿e zwieraæ wersjê zmian pakietu Debiana (dla pakietów nienatywnych). Dok³adny format i algorytm sortowania s± opisane w deb−version(5).
Maintainer: <pe³na−nazwa e−mail>
Powinna byæ w formacie "Jan Nowak <jnowak@foo.com>" i zazwyczaj oznacza osobê, która utworzy³a pakiet (a nie osobê, która jest autorem programu).
Description: <krótki opis>
<d³ugi opis>
Format opisu pakietu jest nastêpuj±cy:
pierwsza linia (zaraz po polu "Description")
zawiera krótkie podsumowanie. Kolejne linie powinny
zawieraæ d³u¿szy, bardziej
szczegó³owy opis. Ka¿da linia
d³ugiego opisu musi byæ poprzedzona znakiem
spacji, a linie, które maj± byæ puste,
powinny zawieraæ pojedyncz± kropkê
(".") poprzedzon± znakiem spacji.
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.
Essential: <yes|no>
To pole jest u¿yteczne tylko, gdy jego warto¶ci± jest "yes". Oznacza ono, ¿e pakiet jest niezbêdny do poprawnego dzia³ania systemu. Ani dpkg, ani ¿adne inne narzêdzie instalacyjne nie pozwol± usun±æ pakietu oznaczonego jako Essential (chyba, ¿e u¿yje siê specjalnej opcji wymuszaj±cej usuniêcie takiego pakietu).
Architecture: <architektura|all>
Architektura okre¶la, dla jakiego typu maszyn pakiet zosta³ skompilowany. Zwyczajowe architektury to "i386", "m68k", "sparc", "alpha", "powerpc" itp. Uwaga: opcja all oznacza, ¿e pakiet jest niezale¿ny od architektury − na przyk³ad zawiera tylko skrypty pow³oki lub Perla albo dokumentacjê.
Origin: <nazwa>
Nazwa dystrybucji, z której pochodzi pakiet.
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.
Homepage: <url>
URL do strony domowej projektu.
Tag: <lista znaczników>
Lista znaczników opisuj±cych cechy pakietu. Opis i listê obs³ugiwanych znaczników mo¿na znale¼æ w pakiecie debtags.
Source: <nazwa ¼ród³a>
Nazwa pakietu ¼ród³owego, na podstawie którego zosta³ utworzony dany pakiet binarny, je¿eli jest ró¿na od nazwy tego pakietu binarnego.
Depends: <lista pakietów>
Lista pakietów potrzebnych temu pakietowi, aby móg³ dostarczyæ znacz±c± czê¶æ swojej funkcjonalno¶ci. Narzêdzia do zarz±dzania pakietami nie pozwol± na zainstalowanie pakietu (o ile nie u¿yje siê opcji typu −−force), zanim nie zostan± zainstalowane wszystkie pakiety wymienione w polu Depends. Podczas instalacji skrypty poinstalacyjne pakietów wymienionych w polu Depends: s± uruchamiane przed skryptami pakietów, które od nich zale¿±. Podczas usuwania, skrypty przedusuwaj±ce pakietu s± uruchamiane przed skryptami pakietów wymienionych w polu Depends:.
Pre−Depends: <lista pakietów>
Lista pakietów, które musz± byæ zainstalowane oraz skonfigurowane zanim ten pakiet bêdzie móg³ byæ zainstalowany. Zazwyczaj jest u¿ywane w przypadku gdy pakiet wymaga innego pakietu do uruchomienia swoich skryptów preinstalacyjnych.
Recommends: <lista pakietów>
Lista pakietów, które powinny siê znale¼æ razem we wszystkich instalacjach poza tymi bardzo niestandardowymi. Narzêdzia do zarz±dzania pakietami ostrzeg± u¿ytkownika, podczas instalacji pakietu bez instalowania pakietów wymienionych w polu Recommends.
Suggests: <lista pakietów>
Lista pakietów powi±zanych z tym pakietem, które mog± zwiêkszyæ jego u¿yteczno¶æ, ale bez których pakiet mo¿e siê obej¶æ.
Warto¶ci± pól Depends, Pre−Depends, Recommends i Suggests jest lista grup alternatywnych pakietów. Ka¿da grupa jest list± pakietów oddzielonych symbolami pionowej kreski ("|"). Grupy oddzielone s± od siebie przecinkami. Przecinki maj± znaczenie "I" (koniunkcja), a kreski − "LUB" (alternatywa), przy czym priorytet koniunkcji jest wy¿szy. Po ka¿dej nawie pakietu mo¿e opcjonalnie wystêpowaæ numer wersji podany w nawiasach.
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.
Breaks: <lista pakietów>
Lista pakietów psutych przez dany pakiet, na przyk³ad przez ujawnianie siê b³êdów, kiedy dany pakiet zale¿y od tego. Narzêdzia do zarz±dzania pakietami nie pozwol± na skonfigurowanie takich zepsutych pakietów; rozwi±zaniem tego problemu jest aktualizacja pakietu wymienionego w polu Breaks.
Conflicts: <lista pakietów>
Lista pakietów, które s± w konflikcie z danym pakietem, na przyk³ad zawieraj± plik o tej samej nazwie, Narzêdzia do zarz±dzania pakietami nie pozwol± na zainstalowanie pakietów bêd±cych w konflikcie w tym samym czasie. Ka¿dy z pakietów bêd±cych w konflikcie powinien zawieraæ pole Conflicts wskazuj±ce na drugi pakiet.
Replaces: <lista pakietów>
Lista pakietów, które s± zastêpowane przez dany pakiet. Pozwala to na to, aby pakiet móg³ nadpisaæ pliki znajduj±ce siê w innym pakiecie i zazwyczaj jest u¿ywane równocze¶nie z polem Conflicts, ¿eby wymusiæ usuniêcie innego pakietu, je¿eli zawiera on pliki o takich samych nazwach.
Provides: <lista pakietów>
Jest to lista pakietów wirtualnych dostarczanych przez ten pakiet. Zazwyczaj jest to u¿ywane w przypadku, gdy kilka pakietów dostarcza tej samej us³ugi. Na przyk³ad sendmail i exim s± serwerami poczty, dlatego dostarczaj± wspólnego pakietu ("mail−transport−agent"), od którego inne pakiety mog± zale¿eæ. Pozwala to zarówno sendmailowi, jak i eximowi spe³niæ tê zale¿no¶æ. Ponadto w ten sposób pakiety, które zale¿± od serwera poczty, nie musz± znaæ nazw wszystkich pakietów dostarczaj±cych tej us³ugi ani u¿ywaæ "|" do rozdzielenia listy takich pakietów.
The syntax of Breaks, Conflicts, Replaces and Provides is a list of package names, separated by commas (and optional whitespace). In the Breaks and Conflicts fields, the comma should be read as ’OR’. An optional version can also be given with the same syntax as above for the Breaks, Conflicts and Replaces fields.
# Komentarz
Package: grep
Essential: yes
Priority: required
Section: base
Maintainer: Wichert Akkerman <wakkerma@debian.org>
Architecture: sparc
Version: 2.4−1
Pre−Depends: libc6 (>= 2.0.105)
Provides: rgrep
Conflicts: rgrep
Description: GNU grep, egrep and fgrep.
The GNU family of grep utilities may be the "fastest
grep in the west".
GNU grep is based on a fast lazy−state deterministic
matcher (about
twice as fast as stock Unix egrep) hybridized with a
Boyer−Moore−Gosper
search for a fixed string that eliminates impossible text
from being
considered by the full regexp matcher without necessarily
having to
look at every character. The result is typically many times
faster
than Unix grep or egrep. (Regular expressions containing
backreferencing
will run more slowly, however).
deb(5), deb−version(5), debtags(1), dpkg(1), dpkg−deb(1).
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
![]() |
deb-control(5) | ![]() |