Estou escrevendo um pacote binário debian para meu aplicativo (foo). O script postinst (post install) quer fazer algumas perguntas ao usuário e obter as respostas também. Eu estou tentando conseguir isso usando o debconf.
Mas não consigo ver a tela da interface do usuário, solicitando ao usuário perguntas. Duvido que minhas configurações e templates sejam chamados pelo dpkg. Estou usando todas as instruções conforme o link tutorial do debconf
Alguém poderia me esclarecer sobre as perguntas abaixo:
- Estou colocando o script “config” e o arquivo “templates” dentro de / debian / tmp / DEBIAN /. Então, é o local correto na hierarquia do Debian? Os nomes estão corretos?
- Os scripts abaixo estão corretos?
Snippet do arquivo de controle (somente os campos relevantes que estou postando)
Depends: debconf (>= 0.2.17)
Snippet do arquivo de configuração
#!/bin/sh
set -e
#echo "Config being called"
# Source debconf library.
. /usr/share/debconf/confmodule
# Do you like debian?
db_input medium foo/like_debian || true
db_go
# Check their answer.
db_get foo/like_debian
if [ "$RET" = "false" ]; then
# Poor misguided one..
db_input high foo/why_debian_is_great || true
db_go
fi
Snippet do arquivo de modelos
Template: foo/like_debian
Type: boolean
Description: Do you like Debian?
We'd like to know if you like the Debian GNU/Linux system.
Template: foo/why_debian_is_great
Type: note
Description: Poor misguided one. Why are you installing this package?
Debian is great. As you continue using Debian, we hope you will
discover the error in your ways.
Snippet de preinst:
#!/bin/sh
set -e
#echo "Stage preinst"
exit 0
Snippet de postinst:
#!/bin/sh
set -e
#echo "Stage postinst"
# Source debconf library.
. /usr/share/debconf/confmodule
db_get foo/like_debian
if [ "$RET" = "false" ]; then
touch "/home/myhome/ITWORKED"
fi
exit 0
Snippet de prerm:
#!/bin/sh
set -e
#echo "Stage prerm"
exit 0
Snippet de postrm:
#!/bin/sh
set -e
#echo "postrm"
exit 0
Obrigado
-Sandar