Le config script suivant à l'intérieur de control.tar.gz
#!/bin/sh -e
. /usr/share/debconf/confmodule
db_fset mailadmin/database_Host seen false
db_clear
db_purge
db_input medium mailadmin/database_Host || true
db_go
db_get mailadmin/database_Host
echo "$RET" > /tmp/from_config_script.txt
exit 0
avec le gabarit
Template: mailadmin/database_Host
Type: string
Description: The database server's Host name or IP address.
(fichier modèles) ne montre pas de boîte de dialogue de saisie lorsque j'installe le package à l'aide de dpkg -i, et lorsque je l'exécute également à partir de la ligne de commande.
Au lieu de cela, il écrit "localhost" dans / tmp/from_config_script.txt, même si cette valeur par défaut ne fait plus partie du fichier de modèle. Je n'ai jamais vu le popup d'entrée. Le popup d'entrée est ce que j'essaie de réaliser.
J'ai supprimé le paquet avec apt-get purge mailadmin, mais même purger n'a pas effacé cette valeur par défaut. Que puis-je faire?
Solution simple:
db_input high ...
Ceci n'est pas mentionné dans le tutoriel à l'adresse http://www.fifi.org ( http://www.fifi.org/doc/debconf-doc/tutorial.html =), uniquement de manière indirecte.
Une priorité de moyenne est trop basse pour afficher le dialogue. La priorité de seuil doit être définie quelque part sur l'ordinateur. Malheureusement, je ne sais toujours pas où. Mais au moins, je sais comment faire fonctionner les dialogues.
Après avoir suivi la suggestion indiquée dans la réponse précédente, mon script de configuration ne voulait toujours pas lancer de dialogue, etc. Je suis finalement tombé sur ce commentaire dans l'article de page de manuel suivant (voir la section Le script PostInst)
https://manpages.debian.org/testing/debconf-doc/debconf-devel.7.fr.html
Sourcez toujours/usr/share/debconf/confmodule en haut de votre postinst, même si vous n’exécutez aucune commande db_ *. Ceci est nécessaire pour que le script de configuration ait une chance de s'exécuter (voir HACKS pour plus de détails).
Une fois que j'ai trouvé le confmodule dans postinst (même si je n’appelle pas les commandes db_ * ici), mon script de configuration a commencé à fonctionner comme prévu.