summaryrefslogtreecommitdiff
path: root/distrib/miniroot/install.sub
diff options
context:
space:
mode:
Diffstat (limited to 'distrib/miniroot/install.sub')
-rw-r--r--distrib/miniroot/install.sub73
1 files changed, 30 insertions, 43 deletions
diff --git a/distrib/miniroot/install.sub b/distrib/miniroot/install.sub
index bf23bbde21e..506b53649fe 100644
--- a/distrib/miniroot/install.sub
+++ b/distrib/miniroot/install.sub
@@ -1,4 +1,4 @@
-# $OpenBSD: install.sub,v 1.246 2002/07/13 13:18:05 krw Exp $
+# $OpenBSD: install.sub,v 1.247 2002/07/13 16:32:13 krw Exp $
# $NetBSD: install.sub,v 1.5.2.8 1996/09/02 23:25:02 pk Exp $
#
# Copyright (c) 1997-2002 Todd Miller, Theo de Raadt, Ken Westerback
@@ -511,25 +511,20 @@ configure_ifs() {
_if_ip=$2
_if_mask=$3
- if [ $_up = "UP" ]; then
- ifconfig $_if_name delete down
- fi
+ [ $_up = "UP" ] && ifconfig $_if_name delete down
- if [ ! -x /sbin/dhclient ]; then
- echo "DHCP install not supported\n"
- else
- _dhcp_prompt=" (or 'dhcp')"
- fi
+ [ -x /sbin/dhclient ] && _dhcp_prompt=" (or 'dhcp')"
# Get IP address
resp=
while [ -z "$resp" ] ; do
ask "IP address${_dhcp_prompt}?" "$_if_ip"
if [ ! -x /sbin/dhclient -a "$resp" == "dhcp" ]; then
+ echo "DHCP is not supported."
resp=
fi
- _if_ip=$resp
done
+ _if_ip=$resp
# Get symbolic name
_hostname=`hostname`
@@ -559,10 +554,8 @@ __EOT
If the default is not satisfactory, and you wish to use another
media, copy that line from above (e.g. "media 100baseTX")
__EOT
- ask "Media directives?" "$_if_extra"
- if [ "$resp" ]; then
- _if_extra=$resp
- fi
+ ask "Media directives?"
+ _if_extra=$resp
fi
# Configure the interface. If it
@@ -669,7 +662,7 @@ enable_network() {
hostname=`cat /etc/myname`
hostname $hostname
- _didnet=1
+ DIDNET=y
# set the address for the loopback interface
ifconfig lo0 inet localhost
@@ -896,12 +889,12 @@ __EOT
get_get_files () {
local _files=$1 _src=$2
+ GET_FILES=
+
get_sets "$_files" "$_src"
[ "$SETS" ] || return
- GET_FILES=
-
cat << __EOT
You will now be asked which sets to ${MODE}. Some of these sets are required
@@ -914,9 +907,7 @@ __EOT
# $SETS contains only .tgz and .tar.gz file names and 'bsd'.
case $_f in
base*|bsd|comp*|etc*|game*|man*|misc*)
- if ! isin ${_f} ${SETSDONE}; then
- GET_FILES=`addel ${_f} ${GET_FILES}`
- fi
+ isin $_f $SETSDONE || GET_FILES=`addel $_f $GET_FILES`
;;
esac
done
@@ -989,7 +980,7 @@ encode_for_url() {
install_url() {
local _f _file_list _url_type=$1 _url_base _url_login _url_pass _oifs
- [ "$_didnet" ] || donetconfig
+ donetconfig
cat << __EOT
@@ -1195,7 +1186,7 @@ __EOT
echo "I/O error accessing $_drive; retrying"
sleep 10
else
- echo "Cannot access $_drive. Aborting."
+ echo "Cannot access $_drive."
return
fi
else
@@ -1250,7 +1241,7 @@ __EOT
# Mount the CD-ROM
if ! mount -t ${_fstype} -o ro /dev/${_drive}${_part} /mnt2 ; then
- echo "Cannot mount CD-ROM drive. Aborting."
+ echo "Cannot mount CD-ROM drive."
return
fi
@@ -1348,7 +1339,7 @@ __EOT
# Mount the disk read-only
if ! mount $_fstype -o ro,$_fsopts /dev/${_drive}${_partition} /mnt2; then
- echo "Cannot mount disk. Aborting."
+ echo "Cannot mount disk."
return 1
fi
@@ -1369,7 +1360,7 @@ install_nfs() {
return
fi
- [ "$_didnet" ] || donetconfig
+ donetconfig
# Get the IP address of the server
ask_until "Server IP address or hostname?" "$_nfs_server_ip"
@@ -1390,7 +1381,7 @@ install_nfs() {
# Mount the server
if ! mount_nfs $_nfs_tcp -o ro ${_nfs_server_ip}:${_nfs_server_path} /mnt2 ; then
- echo "Cannot mount NFS server. Aborting."
+ echo "Cannot mount NFS server."
return
fi
@@ -1412,16 +1403,14 @@ __EOT
TAPE=/dev/${resp##*/}
if [ ! -c $TAPE ]; then
echo "$TAPE does not exist or is not a character special file."
- echo "Aborting."
return
fi
export TAPE
# Rewind the tape device
- echo -n "Rewinding tape..."
+ echo -n "Rewinding ${TAPE} (mt rewind)..."
if ! mt rewind ; then
- echo "$TAPE may not be attached to the system or may not be"
- echo "a tape device. Aborting."
+ echo "FAILED."
return
fi
echo "done."
@@ -1441,14 +1430,14 @@ __EOT
done
# Skip to correct file.
- echo -n "Skipping to source file..."
if [ $_nskip -ne 0 ]; then
+ echo -n "Skipping to source file (mt fsf ${_nskip})..."
if ! mt fsf $_nskip ; then
- echo "Could not skip $_nskip files. Aborting."
+ echo "FAILED. Could not skip $_nskip files."
return
fi
+ echo "done."
fi
- echo "done."
cat << __EOT
@@ -1666,9 +1655,7 @@ munge_fstab() {
_opt="$(echo ${_opt} | \
sed -e 's/^softdep$//; s/^softdep,//; s/,softdep,/,/; s/,softdep$//;')"
- if [ "$_mp" = "/" ]; then
- _mp=
- fi
+ [ "$_mp" = "/" ] && _mp=
echo $_dev /mnt$_mp $_fstype $_opt $_rest
done < /tmp/fstab > /etc/fstab
@@ -1688,9 +1675,7 @@ mount_fs() {
while read _dev _mp _fstype _opt _rest; do
# If not the root filesystem, make sure the mount
# point is present.
- if [ "$_mp" != "/mnt" ]; then
- mkdir -p $_mp
- fi
+ [ "$_mp" = "/mnt" ] || mkdir -p $_mp
# Mount the filesystem. If the mount fails, exit.
if ! mount -v -t $_fstype $_async -o $_opt $_dev $_mp ; then
@@ -1792,12 +1777,14 @@ get_fqdn() {
}
donetconfig() {
- _didnet=1
+ local _nam
+
+ [ "$DIDNET" ] && return
+
+ DIDNET=y
_nam=
- if [ -f /tmp/myname ]; then
- _nam=`cat /tmp/myname`
- fi
+ [ -f /tmp/myname ] && _nam=`cat /tmp/myname`
ask_until "Enter system hostname (short form, e.g. 'foo'):" "$_nam"
hostname $resp