From 3850bd70f2e8d6385d6ba38fe49b9008ab023f03 Mon Sep 17 00:00:00 2001 From: Michael Prokop Date: Fri, 8 May 2009 15:21:59 +0200 Subject: [PATCH] Support selection of netinstall vs. local mirror in interactive menu --- grml-debootstrap | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/grml-debootstrap b/grml-debootstrap index 761945d..59d89b4 100755 --- a/grml-debootstrap +++ b/grml-debootstrap @@ -298,9 +298,25 @@ prompt_for_password() # ask for Debian mirror {{{ prompt_for_mirror() { - MIRROR="$(dialog --stdout --title "${PN}" --inputbox \ - "Please enter Debian mirror you would like to use for installing packages." \ - 0 0 $MIRROR)" + [ -n "$ISO" ] && DEFAULT_MIRROR='local' || DEFAULT_MIRROR='net' + + CHOOSE_MIRROR=$(dialog --stdout --title "$PN" --default-item $DEFAULT_MIRROR \ + --menu "Where do you want to install from?" 0 0 0 \ + net "install via network (downloading from mirror)" \ + local "install from local directory/mirror" + ) + + if [ "$CHOOSE_MIRROR" = 'net' ] ; then + [ -n "$MIRROR" ] || MIRROR='ftp://ftp.de.debian.org/debian' + MIRROR="$(dialog --stdout --title "${PN}" --inputbox \ + "Please enter Debian mirror you would like to use for installing packages." \ + 0 0 $MIRROR)" + else # CHROOT_VARIABLES == local + [ -n "$ISO" ] || ISO='/mnt/mirror' + ISO="$(dialog --stdout --title "${PN}" --inputbox \ + "Please enter directory name you would like to use for installing packages." \ + 0 0 $ISO)" + fi } # }}} @@ -460,6 +476,8 @@ elif [ -n "$INTERACTIVE" ] ; then Using hostname $HOSTNAME" [ -n "$MIRROR" ] && INFOTEXT="$INFOTEXT Using mirror: $MIRROR" + [ -n "$ISO" ] && INFOTEXT="$INFOTEXT + Using ISO: $ISO" INFOTEXT="$INFOTEXT @@ -476,7 +494,7 @@ else # if not running automatic installation display configuration and prompt fo [ -n "$GRUB" ] && echo " Install grub: $GRUB" || echo " Install grub: no" [ -n "$RELEASE" ] && echo " Using release: $RELEASE" [ -n "$MIRROR" ] && echo " Using mirror: $MIRROR" - [ -n "$ISO" ] && echo " Using iso: $ISO" + [ -n "$ISO" ] && echo " Using ISO: $ISO" case "$MNTPOINT" in "$TARGET") ;; *) echo " Important! Continuing will delete all data from ${TARGET}!" ;; esac echo einfon "Is this ok for you? [y/N] " -- 2.1.4