%PDF- %PDF-
Direktori : /var/lib/dpkg/info/ |
Current File : /var/lib/dpkg/info/firefox.preinst |
#!/bin/sh set -e skip_unusable_snapd() { if [ -e "/run/snapd.socket" ]; then # Snapd is present, run the upgrade return 1 fi return 0 } case "$1" in install|upgrade) . /usr/share/debconf/confmodule echo "=> Installing the firefox snap" # Warn about downtime if [ -e "/usr/lib/firefox/firefox" ]; then db_input high firefox/snap-upgrade-warning || true db_go fi # Check store connectivity echo "==> Checking connectivity with the snap store" COUNT=0 SKIP=false while :; do if skip_unusable_snapd; then echo "===> System doesn't have a working snapd, skipping" SKIP=true break fi snap info firefox >/dev/null 2>&1 && break db_fset firefox/snap-no-connectivity seen false if ! db_input critical firefox/snap-no-connectivity; then db_go if [ "${COUNT}" = "0" ]; then echo "===> Unable to contact the store, trying every minute for the next 30 minutes" elif [ "${COUNT}" = "10" ]; then echo "===> Still unable to contact the store, trying for another 20 minutes" elif [ "${COUNT}" = "20" ]; then echo "===> Still unable to contact the store, trying for another 10 minutes" elif [ "${COUNT}" = "30" ]; then echo "===> Still unable to contact the store, aborting" exit 1 fi sleep 1m else db_go db_get firefox/snap-no-connectivity if [ "${RET}" = "Abort" ]; then echo "===> Aborting at user request" exit 1 elif [ "${RET}" = "Skip" ]; then echo "===> Skipping at user request" SKIP=true break fi if [ "${COUNT}" = "0" ]; then echo "===> Unable to contact the store" fi fi COUNT=$((COUNT+1)) done if ! ${SKIP}; then # Install the snap echo "==> Installing the firefox snap" snap install firefox echo "=> Snap installation complete" fi ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac exit 0