diff options
author | Bob Gilligan <gilligan@vyatta.com> | 2011-08-17 15:03:51 -0700 |
---|---|---|
committer | Bob Gilligan <gilligan@vyatta.com> | 2011-08-17 15:03:51 -0700 |
commit | ec24d3c1bf563e0a14e2c36146a3071fed1756b1 (patch) | |
tree | a3b716de7a9c96837bb2b1b2f4bc3882262e108e /scripts/install/install-postinst-new | |
parent | 5492f1db3e89e116ba3520dbe78648f23aea4dc3 (diff) | |
download | vyatta-cfg-system-ec24d3c1bf563e0a14e2c36146a3071fed1756b1.tar.gz vyatta-cfg-system-ec24d3c1bf563e0a14e2c36146a3071fed1756b1.zip |
Bugfix 7350: Allow default config.boot to be selected as config file.
Previously, the user could only select the running config file, which
includes any changes the user may have made and saved, plus system
generated changes such as the MAC addresses of ethernet interfaces.
This change allows them to select that file or the system's default
config file.
Diffstat (limited to 'scripts/install/install-postinst-new')
-rwxr-xr-x | scripts/install/install-postinst-new | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/scripts/install/install-postinst-new b/scripts/install/install-postinst-new index c96f5657..0f7a9b61 100755 --- a/scripts/install/install-postinst-new +++ b/scripts/install/install-postinst-new @@ -39,9 +39,16 @@ copy_config () { else # Find the config files and give the user the option to copy config files # TODO: this needs cleaned up - if [ -f "${VYATTA_CFG_DIR}/config.boot" ]; then - config=${VYATTA_CFG_DIR}/config.boot + + # First candidate: The config file on the running system. Note + # that this will include any changes made and saved by the user, + # as well as changes such as interface MAC addresses automatically + # generated by the user. So it is the first choice. + if [ -f "${VYATTA_NEW_CFG_DIR}/config.boot" ]; then + config=${VYATTA_NEW_CFG_DIR}/config.boot fi + + # Second candidate: The config file on floppy, if one exists. if [ -f "${FD_CFG_DIR}/config.boot" ]; then if [ -z "$config" ]; then config="${FD_CFG_DIR}/config.boot" @@ -50,10 +57,16 @@ copy_config () { fi fi + # Third candidate: The default config file + DEF_CONF=$vyatta_sysconfdir/config.boot.default + if [ -f $DEF_CONF ]; then + config="$config $DEF_CONF" + fi + if [ -n "$config" ]; then - echo "I found the following configuration files" + echo "I found the following configuration files:" for file in $config; do - echo $file + echo " $file" done default=$(echo -e $config | awk '{ print $1 }') @@ -64,7 +77,8 @@ copy_config () { done echo - cp -p $configfile $cfg_dir/ >&/dev/null + echo "Copying $configfile to $INSTALL_DRIVE." + cp -p $configfile $cfg_dir/config.boot >&/dev/null if [ $? != 0 ]; then lecho "Error copying file $configfile to config directory. Exiting..." exit 1 |