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 <[email protected]>

TRADUÇÃO

Américo Monteiro
Se encontrar algum erro na tradução deste documento, por favor comunique para Américo Monteiro [email protected] ou Equipa Debian de Tradução Portuguesa [email protected].

Recommended readings

Pages related to dh_installdebconf you should read also:

Questions & Answers

Helpful answers and articles about dh_installdebconf you may found on these sites:
Stack Overflow Server Fault Super User Unix & Linux Ask Ubuntu Network Engineering DevOps Raspberry Pi Webmasters Google Search