Scroll to navigation

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 um ou mais parágrafos de campos (os parágrafos são também por vezes referidos como estrofes). Os parágrafos são separados por linhas vazias. Os analisadores podem aceitar linhas consistindo apenas de U+0020 SPACE e U+0009 TAB como separadores de parágrafos, mas os ficheiros de controle devem usar linhas vazias. Alguns ficheiros de controle permitem apenas um parágrafo; outros permitem vários, em qualquer caso cada parágrafo geralmente faz referência a um pacote diferente. (Por exemplo, em pacotes fonte, o primeiro parágrafo refere-se ao pacote fonte, e os parágrafos posteriores referem-se a pacotes binários gerados a partir da fonte). A ordem dos parágrafos em ficheiros de controle tem significado.

Cada parágrafo 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.

Um parágrafo não pode conter mas do que uma instância (cópia) de um nome de campo particular.

Existem três tipos de campos:

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.
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 um parágrafo e nenhum campo multi-linha serem lidos por programas analisadores escritos para RFC5322.

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 parágrafos (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 ‘.’).

Linhas começadas com U+0023 ‘#’, sem nenhum espaço em branco a preceder são linhas de comentários que são apenas permitidos em ficheiros de controle dos pacotes fonte (debian/control) e em ficheiros deb-origin(5). Estas linhas de comentários são ignoradas, mesmo entre duas linhas de continuação. Elas não terminam linhas lógicas.

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>.

2022-07-01 1.21.9