table of contents
deb822(5) | dpkg suite | deb822(5) |
NOME¶
deb822 - Formato Debian de dados de controle RFC822
DESCRIÇÃO¶
O sistema de gestão de pacotes manipula dados representados num formato comum, conhecido por control data, guardado em control files. Ficheiros de controle são usados para pacotes fonte, pacotes binários e os ficheiros .changes que controlam a instalação dos ficheiros que foram enviados (as bases de dados internas do dpkg estão num formato semelhante).
SINTAXE¶
Um ficheiro de controle consiste de uma ou mais estrofes de campos (as estrofes são também por vezes referidos como parágrafos). As estrofes são separadas por linhas vazias. Os analisadores podem aceitar linhas consistindo apenas de U+0020 SPACE e U+0009 TAB como separadores de estrofes, mas os ficheiros de controle devem usar linhas vazias. Alguns ficheiros de controle permitem apenas uma estrofe; outros permitem várias, em qualquer caso cada estrofe geralmente faz referência a um pacote diferente. (Por exemplo, em pacotes fonte, a primeira estrofe refere-se ao pacote fonte, e as estrofes posteriores referem-se aos pacotes binários gerados a partir da fonte). A ordem das estrofes em ficheiros de controle é significativa.
Cada estrofe consiste numa série de campos de dados.. Cada campo consiste do nome do campo seguido pelo símbolo dois pontos (U+003A ‘:’), e depois o dado/valor associado a esse campo. O nome do campo é composto de caracteres US-ASCII excluindo caracteres de controle, espaço, e os dois pontos (isto é, caracteres (i.e., characters de U+0021 ‘!’ até U+0039 ‘9’, e U+003B ‘;’ até U+007E ‘~’, inclusive). Os nomes de campo não podem começar com o caractere de comentar (U+0023 ‘#’), nem com o caractere hífen (U+002D ‘-’).
O campo termina no fim da linha ou no fim da última linha de continuação (ver abaixo). Espaço em branco horizontal (U+0020 SPACE e U+0009 TAB) pode ocorrer imediatamente antes ou após do valor e é ignorado la; é convencional colocar um espaço único após os dois pontos. Por exemplo, um campo pode ser:
Package: dpkg
o nome do campo é Package e o valor do campo é dpkg.
Campos com valores vazios são apenas permitidos em ficheiros de controle de pacotes fonte (debian/control). Tais campos são ignorados.
Uma estrofe não pode conter mas do que uma instância (cópia) de um nome de campo particular.
Existem três tipos de campos:
- simple
- O campo, incluindo o seu valor, tem de ser uma linha única. Dobrar o campo não é permitido. Este é o tipo de campo predefinido se a definição do campo não especificar um tipo diferente.
- folded
- O valor de um campo dobrado é uma linha lógica que pode
continuar por várias linhas. As linhas após a primeira
são chamadas linha de continuação e devem
começar com um U+0020 SPACE ou um U+0009 TAB. O
espaço em branco, incluindo quaisquer novas linhas, não
é significante nos valores de campo de campos dobrados.
O método de dobragem é semelhante a RFC5322, permitido aos ficheiros de controle que contêm apenas uma estrofe e nenhum campo multi-linha serem lidos por programas analisadores escritos para RFC5322.
- multiline
- O valor de um campo multi-linha pode comprometer múltiplas linhas de continuação. A primeira linha do valor, a parte na mesma linha que tem o nome do campo, muitas vezes tem um significado especial ou pode precisar de estar vazia. As outras linhas são adicionadas seguindo a mesma sintaxe que as linhas de continuação dos campos dobrados. O espaço em branco, incluindo novas linhas, tem significado nos valores dos campos multi-linha.
Em espaço em branco não pode aparecer dentro de nomes (de pacotes, arquitecturas, ficheiros ou tudo o resto) ou números de versão, ou entre os caracteres de relacionamentos de versão multi-caractere.
A presença de objectivo de um campo, e a sintaxe do seu valor pode diferir entre os tipos de ficheiros de controle.
Os nomes dos campos não são sensíveis a maiúsculas/minúsculas, mas é usual capitalizar os nomes dos campos usando misturas como mostrado em baixo. Os valores do campos são sensíveis a maiúsculas/minúsculas excepto se a descrição do campo diga o contrário.
Separadores de estrofes (linhas vazias) e linhas consistindo apenas de U+0020 SPACE e U+0009 TAB, não são permitidos dentro de valores de campo ou entre campos. Linhas vazias em valores de campo são normalmente escapadas ao representa-las por um U+0020 SPACE seguido de um ponto (U+002E ‘.’).
Lines starting with U+0023 ‘#’, without any preceding whitespace are comments lines that are only permitted in source package control files (debian/control) and in deb-origin(5) files. These comment lines are ignored, even between two continuation lines. They do not end logical lines.
Todos os ficheiros de controle têm de estar codificados em UTF-8.
VEJA TAMBÉM¶
RFC822, RFC5322.
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>.
2024-01-19 | 1.22.3 |