DH_INSTALLDEBCONF

Section: Debhelper (1)
Updated: 2023-01-02
Index Return to Main Contents
 

NOME

dh_installdebconf - instala ficheiros usados pelo debconf nos directórios de compilação de pacotes  

RESUMO

dh_installdebconf [debhelper opções] [-n] [-- params]  

DESCRIÇÃO

dh_installdebconf é um programa debhelper que é responsável por instalar ficheiros usados pelo debconf em directórios de compilação de pacotes.

Também gera automaticamente os comandos postrm necessários para a interface com o debconf. Os comandos são adicionados aos scripts do maintainer pelo dh_installdeb. Veja dh_installdeb(1) para uma explicação de como isso funciona.

Note que se você usar debconf, provavelmente o seu pacote precisa de depender disso (será adicionado a ${misc:Depends} por este programa).

Note que para o seu script de configuração ser chamado pelo <dpkg>, o seu postinst precisa de partir do módulo de configuração do debconf, o dh_installdebconf não instala esta declaração no postinst automaticamente porque é muito difícil de o fazer correctamente.  

FICHEIROS

debian/pacote.config
Este é o script config de debconf, e é instalado no directório DEBIAN no directório de compilação do pacote.

Dentro do script, o token #DEBHELPER# é substituído por fragmentos de script shell gerados por outros comandos do debhelper.

debian/pacote.templates
Este é o ficheiro templates de debconf, e é instalado no directório DEBIAN no directório de compilação do pacote.
debian/po/
Se este directório estiver presente, este programa irá usar automaticamente o po2debconf(1) para gerar ficheiros de modelos fundidos que incluem as traduções de lá.

Para que isto funcione, o seu pacote deve compilar dependendo de po-debconf.

 

OPÇÕES

-n, --no-scripts
Não modifique o script postrm.
-- params
Passa os params para po2debconf.
-DTOKEN=VALUE, --define TOKEN=VALUE
Define tokens a serem substituídos dentro dos scripts do maintainer quando são gerados. Por favor note as limitações descritas em ``Limitações nos nomes dos tokens'' também se aplicam a tokens definidos na linha de comandos. Nomes de tokens inválidos irão despoletar um erro.

No caso simples, este parâmetro irá causar com que #TOKEN# seja substituído por VALUE. Se VALUE começar com um @-sign literal, então espera-se que VALUE aponte para um ficheiro que contém o valor real a inserir.

Um token declarado explicitamente com este parâmetro irá substituir tokens embutidos.

Exemplos de testes para ajuda na compreensão:

        cat >> debian/config <<EOF
        #SIMPLE#
        #FILEBASED#
        EOF
        echo -n "Complex value" > some-file
    dh_installdeb --define SIMPLE=direct --define FILEBASED=@some-file

Neste exemplo, #SIMPLE# irá expandir para direct e #FILEBASED# irá expandir para Complex value.

É também possível definir valores específicos-de-pacote para um dado token. Isto é útil quando dh_installdebconf está a actuar em múltiplos pacotes que precisam de valores diferentes para o mesmo token. Isto é feito ao prefixar o nome do token com pkg.nome-do-pacote..

Isto pode ser usado como no exemplo seguinte:

        cat >> debian/foo.config <<EOF
        # Script for #PACKAGE#
        #TOKEN#
        EOF
        cat >> debian/bar.config <<EOF
        # Script for #PACKAGE#
        #TOKEN#
        EOF
        cat >> debian/baz.config <<EOF
        # Script for #PACKAGE#
        #TOKEN#
        EOF
    dh_installdebconf -pfoo -pbar -pbaz  --define TOKEN=default --define pkg.bar.TOKEN=unique-bar-value \
      --define pkg.baz.TOKEN=unique-baz-value

In this example, #TOKEN# will expand to default in debian/foo.config, to unique-bar-value in debian/bar.config and to unique-baz-value in debian/baz.config.

Note que os tokens #pkg.*# irão ser visíveis em todos os scripts que actuem. Ex, você pode referir a #pkg.bar.TOKEN# dentro de debian/foo.config e ele será substituído por unique-bar-value.

 

SUBSTITUIÇÃO EM SCRIPTS DE MAINTAINER

O dh_installdebconf irá substituir automaticamente os seguintes tokens dentro de um script disponibilizado pelo maintainer (se não for substituído via -D/--define):
#DEB_HOST_NAME#, #DEB_BUILD_NAME#, #DEB_TARGET_NAME#
Estes tokens são substituídos pela variável respectiva a partir de dpkg-architecture(1). Em quase todos os casos, você vai querer usar a variante #DEB_HOST_NAME num script para assegurar que obtêm o valor correcto quando faz compilação cruzada.

Na melhor das hipóteses, tokens deste padrão que não correspondam a uma variável em dpkg-architecture(1) serão deixá-dos como estão.

#ENV.NAME#
Estes tokens deste formato serão substituídos pelo valor da variável de ambiente correspondente. Se a variável de ambiente não estiver definida, o token é substituído pela string vazia.

Note que existem limites em quais nomes podem ser usados (veja ``Limitações nos nomes dos token'').

#PACKAGE#
Este token é por predefinição substituído pelo nome do pacote, o qual irá conter o script concreto.
 

Limitações nos nomes dos token

Todos os tokens que se destinam a ser substituídos têm de corresponder ao regex: #[A-Za-z0-9_.+]+#

Tokens que não correspondam a esse regex serão ignorados em silêncio se encontrados no script modelo. Nomes de token inválidos passados a -D ou --define irão causar que o dh_installdebconf rejeite o comando com um erro na maioria dos casos.  

VEJA TAMBÉM

debhelper(7)

Este programa é parte do debhelper.  

AUTOR

Joey Hess <joeyh@debian.org>  

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 ou Equipa Debian de Tradução Portuguesa traduz@debianpt.org.


 

Index

NOME
RESUMO
DESCRIÇÃO
FICHEIROS
OPÇÕES
SUBSTITUIÇÃO EM SCRIPTS DE MAINTAINER
Limitações nos nomes dos token
VEJA TAMBÉM
AUTOR
TRADUÇÃO

This document was created by man2html, using the manual pages.
Time: 19:35:05 GMT, May 22, 2024