Com sugestões úteis do @CallmeV, encontrei uma solução.
Dentro do script preseed/early_command
, você pode configurar um debconf error
template e forçar um loop ilimitado para evitar qualquer progresso através do instalador.
if [ ! -f /target/path/to/file.gz ]; then
. /usr/share/debconf/confmodule
cat > /tmp/Notification.template <<'!EOF!'
Template: snare-upgrade/notification
Type: error
Description: ERROR - Unable to upgrade!
Unable to upgrade your existing system... blah blah blah...
!EOF!
debconf-loadtemplate snare-upgrade /tmp/Notification.template
while [ 1 ]; do
db_input critical snare-upgrade/notification || true
db_go
db_get snare-upgrade/notification
done
fi
Como eu disse, muito obrigado a CallmeV e a estas páginas: