deb822(5) | dpkg suite | deb822(5) |
deb822 - Formato Debian de dados de controle RFC822
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).
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:
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.
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 ‘.’).
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.
RFC822, RFC5322.
Américo Monteiro
Se encontrar algum erro na tradução deste documento, por favor comunique para Américo Monteiro <a_monteiro@gmx.com>.
2023-05-11 | 1.21.22 |