summaryrefslogtreecommitdiff
path: root/scripts/install
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/install')
-rwxr-xr-xscripts/install/install-functions14
-rwxr-xr-xscripts/install/install-image24
-rwxr-xr-xscripts/install/install-image-existing11
3 files changed, 36 insertions, 13 deletions
diff --git a/scripts/install/install-functions b/scripts/install/install-functions
index 3bdc1fde..29707dff 100755
--- a/scripts/install/install-functions
+++ b/scripts/install/install-functions
@@ -43,18 +43,20 @@ VYATTA_CFG_DIR=${vyatta_sysconfdir}/config
# the floppy config dir
FD_CFG_DIR=/media/floppy/config
-# Process ID for progress_indicator
-SPID=$$
-
+# PROGRESS_PID can be exported by top-level script
progress_indicator () {
+ local spid=$PROGRESS_PID
+ if [ -z "$spid" ]; then
+ spid=$$
+ fi
case "$1" in
start)
- $vyatta_bindir/progress-indicator $SPID &
+ $vyatta_bindir/progress-indicator $spid &
;;
*)
- if ! rm /tmp/pi.$SPID 2>/dev/null; then
+ if ! rm /tmp/pi.$spid 2>/dev/null; then
sleep 1
- rm /tmp/pi.$SPID 2>/dev/null
+ rm /tmp/pi.$spid 2>/dev/null
fi
sleep 1
echo -n -e "\b"
diff --git a/scripts/install/install-image b/scripts/install/install-image
index 0bf31a00..6ed0f732 100755
--- a/scripts/install/install-image
+++ b/scripts/install/install-image
@@ -5,6 +5,8 @@ source /opt/vyatta/sbin/install-functions
# export INSTALL_LOG for the scripts invoked
export INSTALL_LOG=/tmp/install-$$.log
+# export PROGRESS_PID for the scripts invoked
+export PROGRESS_PID=$$
# file for get-partition output
PART_FILE=''
@@ -114,12 +116,30 @@ fi
trap sig_handler INT KILL
trap exit_handler EXIT
+cat <<EOF
+Welcome to the Vyatta install program. This script
+will walk you through the process of installing the
+Vyatta image to a local hard drive.
+EOF
+
+response=''
+while [ -z $response ]
+do
+ echo -n "Would you like to continue? (Yes/No) [Yes]: "
+ response=$(get_response "Yes" "Yes No Y N")
+ if [ "$response" == "no" ] || [ "$response" == "n" ]; then
+ fail_exit 'Ok then.'
+ fi
+done
+
if is_live_cd_boot; then
if [ -n "$NEW_ISO" ]; then
- fail_exit 'Do not specify an image when installing from a live CD.'
+ echo 'You are trying to install from a live CD boot. The live CD image'
+ fail_exit 'will be used. Do not specify an ISO image file.'
fi
elif [ -z "$NEW_ISO" ]; then
- fail_exit 'Must specify an image to install.'
+ echo 'You are trying to install from an already installed system. An ISO'
+ fail_exit 'image file to install must be specified.'
else
# installing on an installed system. set up the new image.
set_up_new_iso
diff --git a/scripts/install/install-image-existing b/scripts/install/install-image-existing
index 0b5cba62..214fd2c8 100755
--- a/scripts/install/install-image-existing
+++ b/scripts/install/install-image-existing
@@ -87,19 +87,20 @@ if ! grep -q 'tmpfs /var/run ' $PI_FSTAB >&/dev/null; then
echo 'tmpfs /var/run tmpfs nosuid,nodev 0 0' >$PI_FSTAB
fi
-# save current config if needed
-def_cfg="$VYATTA_CFG_DIR/config.boot"
-if [ -f "$def_cfg" ]; then
+# save current config dir if needed
+if [ -f "$VYATTA_CFG_DIR/config.boot" ]; then
resp=''
while [ -z "$resp" ]; do
- echo 'Would you like to use the current configuration'
+ echo 'Would you like to save the current configuration '
+ echo 'directory and use the current start-up configuration '
echo -n 'for the new version? (Yes/No) [Yes]: '
resp=$(get_response "Yes" "Yes No Y N")
if [ "$resp" == 'yes' ] || [ "$resp" == 'y' ]; then
echo 'Copying current configuration...'
ndir=${INST_ROOT}${VYATTA_CFG_DIR}
mkdir -p $ndir
- cp -p $def_cfg $ndir/
+ find $VYATTA_CFG_DIR -maxdepth 1 -mindepth 1 \
+ -exec cp '-a' '{}' "$ndir/" ';'
chgrp -R vyattacfg $ndir
chmod -R 775 $ndir
fi