#!/bin/sh set -e #DEBHELPER# # Source debconf library. . /usr/share/debconf/confmodule errmsg() { echo >&2 '' echo >&2 "$@" echo >&2 "try 'dpkg-reconfigure debconf' to select a frontend other than noninteractive" echo >&2 '' } db_get virtualbox-ext-pack/license if [ "$RET" = "true" ]; then echo "License has already been accepted." >&2 exit 0 else # show license again db_fset virtualbox-ext-pack/license seen false fi # facilitate backup capability per debconf-devel(7) STATE=1 while true; do case "$STATE" in 0) # ensure going back from license presentment is harmless STATE=1 continue ;; 1) # present license if ! db_get virtualbox-ext-pack/license ; then errmsg "Could not display license." exit 1 fi if [ "$RET" = "true" ]; then # license accepted exit 0 fi ;; 2) # user has confirmed declining license echo "User did not accept the license." >&2 exit 1 ;; *) # unknown state echo "State unknown: $STATE" >&2 exit 2 ;; esac if db_go; then STATE=$(($STATE + 1)) else STATE=$(($STATE - 1)) fi done # proper exit (0 or 1) above errmsg "License could not be presented / was not accepted." exit 2