1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
|
*****************************************************
* GENERATED FILE, DO NOT EDIT *
* THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
*****************************************************
This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.
In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.
=encoding UTF-8
=head1 NOME
deb-control - Debian binary package control file format
=head1 RESUMO
B<DEBIAN/control>
=head1 DESCRIÇÃO
Each Debian binary package contains a B<control> file in its B<control> member, and its L<deb822(5)> format is a subset of the B<debian/control> template source control file in Debian source packages, see L<deb-src-control(5)>.
Este ficheiro contém um número de campos. Cada campo começa com uma etiqueta, tal como B<Package> ou B<Version> (insensitivo a maiúsculas/minúsculas) seguido por dois pontos (:), e o corpo do campo (sensível a maiúsculas/minúsculas a menos que declarado o contrário). Os campos são delimitados apenas pelas etiquetas de campo, por outras palavras, o texto do campo pode ter múltiplas linhas de comprimento, mas as ferramentas de instalação irão geralmente juntar as linhas quando processam o corpo do campo (excepto no caso do campo B<Description>, veja em baixo).
=head1 CAMPOS
=over
=item B<Package:> I<package-name> (necessário)
O valor deste campo determina o nome do pacote, e é usado para gerar nomes de ficheiros pela maioria das ferramentas de instalação.
=item B<Package-Type:> B<deb>|B<udeb>|I<type>
Este campo define o tipo de pacote. B<udeb> é para pacotes de tamanho reduzido usados pelo instalador de debian. B<deb> é o valor predefinido, é assumido se o campo estiver ausente. Mais tipos podem ser adicionados no futuro.
=item B<Version:>I< string-de-versão> (obrigatório)
Typically, this is the original package's version number in whatever form the program's author uses. It may also include a Debian revision number (for non-native packages). The exact format and sorting algorithm are described in L<deb-version(7)>.
=item B<Maintainer:> I<fullname-email> (recomendado)
Deverá estar no formato "Joe Bloggs E<lt>jbloggs@foo.comE<gt>", e é tipicamente a pessoa que criou o pacote, e não o autor do software que foi empacotado.
=item B<Description:> I<short-description> (recomendado)
=item S< >I<long-description>
O formato da descrição do pacote é um sumário breve e curto an primeira linha (após o campo B<Description>). As linhas seguintes devem ser usadas para uma descrição longa e mais detalhada. Cada linha da descrição longa tem de ser precedida com um espaço, e as linhas em branco na descrição longa têm de conter um único ‘B<.>’ a seguir ao espaço que precede.
=item B<Section:> I<section>
Este é um campo geral que dá ao pacote uma categoria baseada no software que ele instala. Algumas secções comuns são B<utils>, B<net>, B<mail>, B<text>, B<x11>, etc.
=item B<Priority:> I<priority>
Define a importância deste pacote relativamente ao sistema como um todo. Prioridades comuns são B<required>, B<standard>, B<optional>, B<extra>, etc.
=back
Os campos B<Section> e B<Priority> têm geralmente um conjunto definido de valores aceites baseados na política específica da distribuição.
=over
=item B<Installed-Size:> I<size>
O tamanho total aproximado dos ficheiros instalados pelo pacote, em unidades KiB. O algoritmo para computar o tamanho está descrito em L<deb-substvars(5)>.
=item B<Protected:> B<yes>|B<no>
Este campo normalmente não é necessário quando a resposta é B<yes>. Ele indica um pacote que é necessário principalmente para o arranque correcto do sistema ou usado para meta-pacotes personalizados locais-do-sistema. O L<dpkg(1)> ou qualquer outra ferramenta de instalação não irá permitir que um pacote B<Protected> seja removido (pelo menos não sem usar uma das opções de forçar).
Suportado desde dpkg 1.20.1.
=item B<Essential:> B<yes>|B<no>
Este campo normalmente não é necessário quando a resposta é B<sim>. Ele indica um pacote que é necessário para o sistema de empacotamento, para a operação correcta do sistema no geral ou durante o arranque (apesar do último dever ser convertido para o campo B<Protected> em vez deste). O L<dpkg(1)> ou qualquer outra ferramenta de instalação não irá permitir que um pacote <Essential> seja removido (pelo menos não sem usar uma das opções de forçar).
=item B<Build-Essential:> B<yes>|B<no>
Este campo geralmente não é necessário quando a resposta é B<sim>, e é injetado de modo comum pelo software do arquivo. Denota um pacote que é requerido quando se compila outros pacotes.
=item B<Architecture:> I<arch>|B<all> (necessário)
A arquitectura especifica para que tipo de hardware este pacote foi compilado. Arquitecturas comuns são B<amd64>, B<armel>, B<i386>, B<powerpc>, etc. Note que o valor B<all> é destinada a pacotes que são independentes da arquitectura. Alguns exemplos disto são scripts de shell e Perl, e documentação.
=item B<Origin:> I<name>
O nome da distribuição de onde este pacote originou.
=item B<Bugs:> I<url>
O I<url> do sistema de acompanhamento de bugs deste pacote. O formato actualmente usado é I<tipo-bts>B<://>I<endereço-bts>, como B<debbugs://bugs.debian.org>.
=item B<Homepage:> I<url>
O I<url> da página inicial do projecto do autor.
=item B<Tag:> I<tag-list>
Lista de etiquetas que descrevem as qualidades do pacote. A descrição e a lista de etiquetas suportadas pode ser encontrada no pacote B<debtags>.
=item B<Multi-Arch:> B<no>|B<same>|B<foreign>|B<allowed>
Este campo é usado para indicar como este pacote deve comportar-se em instalações de multi-arquitectura.
=over
=item B<no>
Este valor é a predefinição quando o campo é omitido, e neste caso adicionar o campo com um valor B<no> explícito geralmente não é necessário.
=item B<same>
Este pacote é co-instalável com ele próprio, mas não pode ser usado para satisfazer a dependência de qualquer pacote de uma arquitectura diferente de ele próprio.
=item B<foreign>
Este pacote não é co-instalável com ele próprio, mas deve ser permitido satisfazer uma dependência non-arch-qualified de um pacote de uma arquitectura diferente dele próprio (se uma dependência tiver um arch-qualifier explícito então o valor B<foreign> é ignorado).
=item B<allowed>
Isto permite a dependências-reversas indicarem no seu campo B<Depends> que elas aceitam este pacote de outra arquitectura ao qualificar o nome do pacote com B<:any>, mas de outro modo não tem efeito.
=back
=item B<Source:> I<source-name> [B<(>I<source-version>B<)>]
O nome do pacote fonte de onde este pacote binário veio, se for diferente do nome do próprio pacote. Se a versão fonte diferir da versão binária, então o I<source-name> será seguido por um I<source-version> em parênteses. Isto pode acontecer por exemplo, num envio de não-maintainer apenas-binário, ou quando se define uma versão binária diferente via «B<dpkg-gencontrol -v>».
=item B<Subarchitecture:> I<value>
=item B<Kernel-Version:> I<value>
=item B<Installer-Menu-Item:> I<value>
Estes campos são usados pelo instalador de debian e geralmente não são necessários. Para mais detalhes acerca deles, veja L<https://salsa.debian.org/installer-team/debian-installer/-/raw/master/doc/devel/modules.txt>.
=item B<Depends:> I<package-list>
Lista de pacotes que ao requeridos para este pacotes poder disponibilizar uma não-trivial quantidade de funcionalidades. O software de manutenção de pacotes não irá permitir que o pacote seja instalado se os pacotes listados no seu campo B<Depends> não estiverem instalados (pelo menos não sem sem serem usadas opções de forçar). Numa instalação, os scripts postinst dos pacotes listados nos campos B<Depends> são corridos antes daqueles do pacote que depende deles. Em oposto, numa remoção, o script prerm de um pacote é corrido antes daqueles dos pacotes listados no seu campo B<Depends>.
=item B<Pre-Depends:> I<package-list>
Lista de pacotes que têm de ser instalados B<e> configurados antes de este poder ser instalado. Isto é usado geralmente quando este pacote requer outro programa para correr o seu script preinst.
=item B<Recommends:> I<package-list>
Lista pacotes que seriam encontrados juntamente com este em todas as instalações menos nas forma do normal. O software de manutenção de pacotes irá avisar o utilizador se ele instalar um pacote sem aqueles listados no campo B<Recommends>.
=item B<Suggests:> I<package-list>
Lista pacotes que estão relacionados com este e podem talvez aumentar a sua utilidade, mas é perfeitamente razoável instalar este pacote sem eles.
=back
A sintaxe dos campos B<Depends>, B<Pre-Depends>, B<Recommends> e B<Suggests> é uma lista de grupos de pacotes alternativos. Cada grupo é uma lista de pacotes separados por símbolos de barras verticais (ou “pipe”) ‘B<|>’. Os grupos são separados por vírgulas, As vírgulas devem ser lidas como "E", e os pipes como "OU", com os pipes a vincular com mais firmeza. Cada nome de pacote é opcionalmente seguido por um qualificador de arquitectura anexado após dois pontos ‘B<:>’, opcionalmente seguido por uma especificação de número de versão em parêntesis.
Um nome qualificador de arquitectura pode ser um nome de arquitectura Debian real (desde dpkg 1.16.5) ou B<any> (desde dpkg 1.16.2). Se omitido, a predefinição é a arquitectura do pacote binário actual. Um nome de arquitectura Debian real irá corresponder exactamente à arquitectura para o nome do pacote. B<any> irá corresponder a qualquer arquitectura para esse nome de pacote. se o pacote foi marcado como B<Multi-Arch: allowed>.
Um número de versão pode começar com um ‘B<E<gt>E<gt>>’, nesse caso qualquer versão posterior irá corresponder, e pode especificar ou omitir a revisão de empacotamento Debian (separada por um hífen). Relacionamentos de versão aceites são ‘B<E<gt>E<gt>>’ para maior que, ‘B<E<lt>E<lt>>’ para menor que, ‘B<E<gt>=>’ para maior ou igual a, ‘B<E<lt>=>’ para menor ou igual a, e ‘B<=>’ para igual a.
=over
=item B<Breaks:> I<package-list>
Lista os pacotes que este quebra, por exemplo ao expor bugs quando os pacotes nomeados precisam deste. O software de manutenção de pacotes não irá permitir que pacotes quebrados sejam configurados; geralmente a resolução é actualizar os pacotes nomeados no campo B<Breaks>.
=item B<Conflicts:> I<package-list>
Lista os pacotes que entram em conflito com este, por exemplo por conter ficheiros com os mesmos nomes. O software de manutenção de pacotes não irá permitir que pacotes em conflito sejam instalados ao mesmo tempo. Dois pacotes em conflito deverão ambos incluir uma linha B<Conflicts> mencionando o outro.
=item B<Replaces:> I<package-list>
Lista os pacotes que este substitui. Isto é usado para permitir que este pacote sobrescreva os ficheiros de outro pacote e é geralmente usado com o campo B<Conflicts> para forçar a remoção do outro pacote. caso este tenha os mesmos ficheiros que o pacote em conflito.
=back
A sintaxe de B<Breaks>, B<Conflicts> e B<Replaces> é uma lista de nomes de pacotes, separados por vírgulas (e opcionalmente por espaços em branco). Nos campos B<Breaks> e B<Conflicts>, a vírgula deve ler-se como "OU". Um qualificador opcional de arquitectura pode também ser anexado ao nome do pacote com a mesma sintaxe de em cima, mas a predefinição é B<any> em vez da arquitectura de pacote binário. Pode também ser fornecida uma versão opcional com a mesma sintaxe como em cima para os campos B<Breaks>, B<Conflicts> e B<Replaces>.
=over
=item B<Enhances:> I<package-list>
Isto é uma lista de pacotes que este melhora. É semelhante a B<Suggests> mas na direcção oposta.
=item B<Provides:> I<package-list>
Isto é uma lista de pacotes virtuais que este fornece. Geralmente sito é usado no caso de vários pacotes todos fornecerem o mesmo serviço. Por exemplo, sendmail e exim podem servir como servidor de mail, assim eles fornecem um pacote comum (“mail-transport-agent”) sobre o qual outros pacotes podem depender. Isto vai permitir ao sendmail ou ao exim servir como opção válida para satisfazer a dependência. Isto previne que os pacotes que dependem de um servidor de mail tenham que saber os nomes de pacotes de todos eles, e usar ‘B<|>’ para separar a lista.
=back
A sintaxe de B<Provides> é uma lista de nomes de pacotes, separados por vírgulas (e opcionalmente por espaços em branco). Um qualificador opcional de arquitectura pode também ser anexado ao nome do pacote com a mesma sintaxe de em cima. Se omitido, a predefinição é a arquitectura do pacote binário actual. Uma versão exacta (igual a) opcional pode também ser dada com a mesma sintaxe de em cima (honrado desde dpkg 1.17.11).
=over
=item B<Built-Using:> I<package-list>
Este campo de dependência lista pacotes fonte extra que foram usados durante a compilação deste pacote binário, com o objectivo de respeitar licenças. Isto é uma indicação para o software de manutenção do arquivo que estes pacotes fonte extra têm de ser mantidos enquanto este pacote biblioteca for mantido. Este campo tem de ser uma lista de nomes de pacotes fonte separados por vírgulas com relacionamentos de versão estritos ‘B<=>’ fechados dentro de parênteses. Note que é provável que o software de manutenção do arquivo se recuse a aceitar um envio que declare uma relação B<Built-Using> que não possa ser satisfeita dentro do arquivo.
=item B<Static-Built-Using:> I<package-list>
Este campo de dependência lista pacotes fonte extra que foram usados durante a compilação deste pacote binário, para objectivos de compilação estática (por exemplo vincular contra bibliotecas estáticas. compilações para linguagens centradas-na-fonte tais como Go ou Rust, utilização de bibliotecas C/C++ apenas-cabeçalho, injectar bolhas de dados em código, etc.). Isto é útil para seguir se este pacote pode precisar de ser recompilado quando os pacotes fonte listados aqui forem actualizados, por exemplo devido a actualizações de segurança. Este campo tem de ser uma lista separada por vírgulas de nomes de pacotes fonte com relacionamentos estritos de versão ‘B<=>’ fechados dentro de parênteses.
Suportado desde dpkg 1.21.3.
=item B<Built-For-Profiles:> I<profile-list> (obsoleto)
Este campo era usado para especificar uma lista de perfis de compilação separados por espaços com que este pacote binário foi compilado com (desde dpkg 1.17.2 até 1.18.18). A informação antes encontrada neste campo pode agora ser encontrada no ficheiro B<.buildinfo>, que o suplanta.
=item B<Auto-Built-Package:> I<reason-list>
This field specifies a whitespace separated list of reasons why this package was auto-generated. Binary packages marked with this field will not appear in the I<debian/control> template source control file. The only currently used reason is B<debug-symbols>.
=item B<Build-Ids:> I<elf-build-id-list>
Este campo especifica uma lista de ids de compilação de ELF separados por espaços. Estes são identificadores únicos para objetos ELF semanticamente idênticos, para cada um destes dentro do pacote.
O formato ou o modo de computar cada build-id não é definido pelo desenho.
=back
=head1 EXEMPLO
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).
=head1 BUGS
O campo B<Build-Ids> usa um nome um pouco genérico fora do seu contexto original dentro de um objeto ELF, o que serve um objectivo muito específico e formato executável.
=head1 VEJA TAMBÉM
L<deb822(5)>, L<deb-src-control(5)>, L<deb(5)>, L<deb-version(7)>, L<debtags(1)>, L<dpkg(1)>, L<dpkg-deb(1)>.
=head1 TRADUÇÃO
Américo Monteiro
Se encontrar algum erro na tradução deste documento, por favor comunique para
Américo Monteiro <a_monteiro@gmx.com>.
|