I have a postinstall script:
unset DEBIAN_HAS_FRONTEND DEBIAN_FRONTEND DEBCONF_REDIR DEBCONF_OLD_FD_BASE
export DEBIAN_FRONTEND=noninteractive
aptitude -y install rsyslog-pgsql > /var/tmp/log 2>&1
While install (ps ax):
17547 tty1 S+ 0:00 /usr/bin/perl -w /usr/share/debconf/frontend /var/lib/dpkg/info/rsyslog-pgsql.postinst configure
17587 tty1 S+ 0:00 /bin/sh /var/lib/dpkg/info/rsyslog-pgsql.postinst configure
17828 tty1 S+ 0:00 whiptail --backtitle Package configuration --title Configuring rsyslog-pgsql --output-fd 11 --nocancel --msgbox An error occurred while installing the database: Password: su: System error If at this point you choose "retry", you will be prompted with all the configuration questions once more and another attempt will be made at performing the operation. "retry (skip questions)" will immediately attempt the operation again, skipping all questions. If you choose "abort", the operation will fail and you will need to downgrade, reinstall, reconfigure this package, or otherwise manually intervene to continue using it. If you choose "ignore", the operation will continue, ignoring further errors from dbconfig-common. 18 77
And waiting for user choice. How to skip all questions and set them in default?
install package
$ sudo apt -q -y install pkg
install debconf utils
# if you don't know the question
$ sudo apt install debconf-utils
find the question ('what is the matrix?')
# find the question you need answered (use less instead)
$ sudo debconf-get-selections | grep pkg
uninstall package (purge)
$ sudo apt-get purge pkg
set the selection you need answered
echo 'pkg thequestionname type value' | sudo debconf-set-selections;
install package
sudo apt-get install pkg
If you upgrade packages that have new questions you can run the upgrade on vagrant, find the questions then preseed before a automated upgrade in a production environment.
man debconf-set-selections
Follow the black rabbit.