dsc - formato Debian de ficheiro de controle de pacotes fonte
filename.dsc
Cada pacote fonte Debian é composto de um ficheiro .dsc, o qual
contém um número de campos, em formato
deb822(5).
Cada campo começa com uma etiqueta, tal como
Source ou
Binary (insensível a maiúsculas/minúsculas),
seguida do símbolo 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 por etiquetas de campos. Por outras
palavras, o texto do campo pode ter várias linhas de comprimento, mas
as ferramentas de instalação irão geralmente juntar as
linhas quando processam o corpo do campo (excepto no caso de
Package-List,
Files,
Checksums-Sha1 e
Checksums-Sha256 de múltiplos campos, ver abaixo).
Os dados de controle podem estar inclusos numa assinatura OpenPGP ASCII Armored,
como especificado em RFC4880.
-
Format: format-version
(necessário)
- O valor deste campo declara a versão de formato do
pacote fonte. O valor do campo é usado por programas que actuam no
pacote fonte para interpretar a lista de ficheiros no pacote fonte e
determinar como desempacota-los. A sintaxe do valor do campo é uma
revisão maior numérica (“0-9”), um ponto
(“.”), uma revisão menor numérica
(“0-9”), e depois um subtipo opcional após um
espaço em branco (“ \t”), o qual é
especificado numa palavra alfanumérica em minúsculas
(“a-z0-9”) em parêntesis (“()”). O
subtipo é opcional na sintaxe mas pode ser obrigatória para
revisões particulares de formato fonte.
Os formatos fonte actualmente suportados pelo dpkg são
1.0, 2.0, 3.0 (native), 3.0 (quilt), 3.0
(git), 3.0 (bzr) e 3.0 (custom). Veja
dpkg-source(1) para as suas descrições.
-
Source: source-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.
-
Binary: binary-package-list
- Este campo dobrado lista pacotes binários, separados
por vírgulas, que este pacote fonte pode produzir.
Este campo está agora a ser suplantado pelo campo
Package-List, o qual fornece informação suficiente
sobre que pacotes binários são produzidos em qual
arquitectura, perfil de compilação e outras
restrições envolvidas.
-
Architecture: arch-list (recomendado)
- Uma lista de arquitecturas e wildcards de arquitecturas
separadas por espaços que especificam o tipo de hardware para o
qual este pacote por ser compilado. Nomes de arquitecturas comuns
são amd64, armel, i386, linux-any,
any-amd64, etc.
Note que o valor all destina-se a pacotes que são
independentes da arquitectura, e any a pacotes que são
dependentes da arquitectura. A lista pode incluir (ou consistir apenas de)
o valor especial all. Quando a lista contem a wildcard de
arquitectura any, o outro único valor permitido na lista
é all.
O valor do campo é geralmente gerado a partir de campos
Architecture a partir de debian/control no pacote
fonte.
-
Version: string-de-versão
(obrigatório)
- Tipicamente, isto é o número de versão
do pacote original seja em que formato o autor do programa usa. Pode
também incluir um número de revisão Debian (para
pacotes não-nativos). O formato exacto e algoritmo de
ordenação estão descritos em
deb-version(7).
-
Origin: name
- O nome da distribuição de onde este pacote
originou.
-
Maintainer: fullname-email (recomendado)
- Deverá estar no formato "Joe Bloggs
<[email protected]>", e é tipicamente a pessoa que criou o
pacote, e não o autor do software que foi empacotado.
-
Uploaders: fullname-email-list
- Lista todos os nomes e endereços de email de
co-maintainers do pacote, no mesmo formato que o campo Maintainer.
Vários co-maintainers devem ser separados por uma
vírgula.
-
Description short-description
- long-description
- O formato da descrição do pacote fonte
é um sumário breve e curto na primeira linha (após o
campo 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 ‘ .’ a seguir ao espaço que
precede.
-
Homepage: url
- O url da página inicial do projecto do
autor.
-
Standards-Version: version-string
(recomendado)
- Isto documenta a versão mais recente dos standards
de política da distribuição com que este pacote
está em conformidade.
-
Vcs-Browser: url
- O url da uma interface web para explorar o
repositório do Sistema de Controlo de Versão.
-
Vcs-Arch: url
-
Vcs-Bzr: url
-
Vcs-Cvs: url
-
Vcs-Darcs: url
-
Vcs-Git: url
-
Vcs-Hg: url
-
Vcs-Mtn: url
-
Vcs-Svn: url
- Estes campos declaram o url do repositório do
Sistema de Controle de Versão usado para manter este pacote. Veja
deb-src-control(5) para mais detalhes.
-
Testsuite: name-list
- Este campo declara que o pacote fonte contem as suites de
teste especificadas. O valor é uma lista de suites de teste
separadas por vírgulas. Se o valor autopkgtest estiver
presente, espera-se a presença de um debian/tests/control,
se o ficheiro está presente mas não o valor, então
dpkg-source irá automaticamente adiciona-lo, preservando
valores anteriores.
-
Testsuite-Triggers: package-list
- Este campo declara a união de todas as
dependências de todos os testes, separadas por espaços
(campos Depends no ficheiro debian/tests/control), com todas
as restrições removidas, e dependências OU achatadas
(isto é, convertidas para relações E separadas),
excepto para binários gerados por este pacote fonte e seus
equivalentes de meta-dependência @.
Fundamento: este campo é necessário porque caso
contrário, para puderem obter as dependências de teste, cada
pacote fonte teria que ser desempacotado.
-
Build-Depends: package-list
-
Build-Depends-Arch: package-list
-
Build-Depends-Indep: package-list
-
Build-Conflicts: package-list
-
Build-Conflicts-Arch: package-list
-
Build-Conflicts-Indep: package-list
- Estes campos declaram relacionamentos entre o pacote fonte
e pacotes usados para o construir. Eles são discutidos no manual
deb-src-control(5).
- Package-List:
- package package-type section
priority key-value-list
- Este campo multi-linha contem uma lista de pacotes
binários gerados por este pacote fonte.
O package é o nome do pacote binário.
O package-type é o tipo de pacote binário, normalmente
deb, outro valor comum é udeb.
section e priority correspondem aos campos do pacote
binário do mesmo nome.
A key-value-list é uma lista is de
key=value separados por espaços, a as chaves
opcionais actualmente conhecidas são:
- arch
- A restrição de arquitectura do campo
Architecture do pacote binário, com espaços
convertidos para ‘,’.
- profile
- A fórmula de restrição do
perfil-de-compilação normalizada a partir do campo
Build-Profile do pacote binário, com os ORs convertidos para
‘+’ e os ANDs para ‘,’.
- protected
- Se o pacote binário for protegido, esta chave
irá conter o valor do campo Protected, que é um valor
yes.
Suportado desde dpkg 1.20.1.
- essential
- Se o pacote binário for essencial,esta chave ir+a
conter o valor do campo Essential, que é um valor
yes.
-
Files: (necessário)
-
Checksums-Sha1: (necessário)
-
Checksums-Sha256: (necessário)
- checksum size filename
- Estes campos multi-linha contêm uma lista de
ficheiros com um sumário de verificação e tamanho
para cada um deles. Estes campos têm a mesma sintaxe e diferem
apenas no algoritmo de checksum usado: MD5 para Files, SHA-1 para
Checksums-Sha1 e SHA-256 para Checksums-Sha256.
A primeira linha do campo valor (a parte na mesma linha que tem o campo nome
seguido de dois pontos) é sempre vazia. O conteúdo do campo
é expressado como linhas de continuação, uma linha
por ficheiro. Cada linha consiste do checksum, um espaço, o tamanho
do ficheiro, um espaço, e o nome do ficheiro.
Estes campos listam todos os ficheiros que fazem o pacote fonte. A lista de
ficheiros nestes campos tem de corresponder à lista de ficheiros
nos outros campos relacionados.
O campo
Format field conflui o formato para o próprio ficheiro
.dsc e o formato do pacote fonte extraído.
deb822(5),
deb-src-control(5),
deb-version(7),
dpkg-source(1).
Américo Monteiro
Se encontrar algum erro na tradução deste documento, por favor
comunique para Américo Monteiro <
[email protected]>.