| dsc(5) | dpkg suite | dsc(5) |
NOME¶
dsc - formato Debian de ficheiro de controle de pacotes fonte
RESUMO¶
filename.dsc
DESCRIÇÃO¶
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 RFC9580.
CAMPOS¶
- 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)
- A lista de arquitecturas especifica em que tipo de máquina este
pacote corre. O valor deve ser uma lista de nomes de arquitectura e/ou
wildcards separados por espaços.
Nomes de arquitectura comuns e wildcards de arquitectura são amd64, armel, i386, linux-any, any-amd64, etc. Note que o valor all destina-se a pacote 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).
Nota: Em alguns fornecedores, o dpkg foi feito para permitir fontes nativas com versões não-nativas, tornando isto incoerente e adicional à confusão do conceito, onde adicionalmente isto tende a ser uma armadilha para enganos acidentais.
- Origin: name
- O nome da distribuição de onde este pacote originou.
- Maintainer: fullname-email (recomendado)
- Deverá estar no formato "Joe Bloggs <jbloggs@foo.com>", 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, ou se omitidos são predefinidos para unknown e optional respetivamente (desde dpkg 1.22.13).
A key-value-list é uma lista is de chave=valor 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 Es (espaço em
branco dentro de colchetes angulares fechados) convertidos para
‘,’, e OUs (espaço em branco entre colchetes
angulares a fechar) para ‘+’. Todos as colchetes angulares
são removidos durante a normalização.
Descontinuado desde dpkg 1.23.0, substituído por profile:v1.
- profile:v1
- A fórmula de restrição do
perfil-de-compilação normalizada a partir do campo
Build-Profile do pacote binário, com Es (espaço em
branco dentro de colchetes angulares fechados) convertidos para
‘&’, e OUs (espaço em branco entre colchetes
angulares a fechar) para ‘|’. Todos as colchetes angulares
são removidos durante a normalização.
Suportado desde dpkg 1.23.0.
- 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, fraco)
- Checksums-Sha1: (necessário, fraco)
- Checksums-Sha256: (necessário, forte)
- 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.
Nota: Os sumários de verificação MD5 e SHA-1são considerados fracos, e nunca devem ser assumidos como suficientes para verificação de segurança.
BUGS¶
O campo Format field conflui o formato para o próprio ficheiro .dsc e o formato do pacote fonte extraído.
VEJA TAMBÉM¶
deb822(5), deb-src-control(5), deb-version(7), dpkg-source(1).
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>.
| 2026-03-06 | 1.23.7 |