DOKK / manpages / debian 11 / debconf-doc / confmodule.3.pt
CONFMODULE(3) Library Functions Manual CONFMODULE(3)

confmodule - comunicar com um FrontEnd do sistema de configuração Debian.


#!/bin/sh -e
. /usr/share/debconf/confmodule
db_version 2.0
db_capb 'backup'
CAPB=$RET
db_input 'foo/bar' || true
db_go || true

Esta é uma biblioteca de funções shell que facilita a comunicação com o sistema de gestão de configuração da Debian. Pode comunicar com um FrontEnd através do protocolo debconf. Está desenhada de modo que cada comando no protocolo é representado por uma função neste módulo. O nome-da-função é o mesmo que o comando, excepto se tiver o prefixo de "db_" e em minúsculas. Chame a função e passe-lhe quaisquer parâmetros que queira a seguir ao comando. Qualquer código de retorno textual do FrontEnd será retornado para si na variável $RET, enquanto que o código de retorno numérico do FrontEnd será retornado como um código de retorno (e assim esses códigos de retorno devem ser capturados ou ignorados).

Após esta biblioteca estar carregada, qualquer texto que faça sair irá para o error standard em vez da saída standard. Geralmente isto é bom porque o texto enviado para a saída standard é interpretado pelo FrontEnd como comandos. Se você deseja enviar um comando directamente para o FrontEnd, você tem de enviá-lo para o descritor de ficheiro 3, assim:
echo GET foo/bar >&3

A biblioteca faz verificações para ter a certeza que está mesmo a falar com um FrontEnd ao examinar a variável DEBIAN_HAS_FRONTEND. Se estiver definida, assume-se que um FrontEnd está a correr. Se não, a biblioteca torna-se numa, e corre uma cópia do script que carregou a biblioteca ligada a ela. Isto significa que se você usar a fonte desta biblioteca, deve fazê-lo muito próximo do topo do seu script, porque tudo antes da fonte da biblioteca pode muito bem ser executado de novo.

debconf-devel(7), dpkg-preconfigure(8), dpkg-reconfigure(8), debconf_specification no pacote debian-policy

Joey Hess <joeyh@debian.org>

Américo Monteiro <a_monteiro@netcabo.pt>, 2010,2012

Por favor comunique quaisquer erros de tradução para a_monteiro@netcabo.pt, l10n@debianpt.org, ou submeta um relatório de bug contra o pacote debconf.