Module Name: src
Committed By: martin
Date: Sat Dec 19 19:02:53 UTC 2020
Modified Files:
src/distrib/amiga/miniroot [netbsd-8]: install.md
src/distrib/hp300/miniroot [netbsd-8]: install.md
src/distrib/mac68k/miniroot [netbsd-8]: install.md
src/distrib/miniroot [netbsd-8]: install.sh install.sub list upgrade.sh
src/distrib/mvme68k/miniroot [netbsd-8]: install.md
src/distrib/sun2/miniroot [netbsd-8]: install.md
src/distrib/sun3/miniroot [netbsd-8]: install.md
Log Message:
Pull up following revision(s) (requested by tsutsui in ticket #1639):
distrib/miniroot/install.sub: revision 1.54 (patch)
distrib/miniroot/install.sub: revision 1.56 (patch)
distrib/miniroot/install.sub: revision 1.57 (patch)
distrib/miniroot/install.sub: revision 1.58 (patch)
distrib/miniroot/install.sub: revision 1.59 (patch)
distrib/hp300/miniroot/install.md: revision 1.20
distrib/miniroot/list: revision 1.36
distrib/mvme68k/miniroot/install.md: revision 1.9
distrib/mvme68k/miniroot/install.md: revision 1.10
distrib/sun3/miniroot/install.md: revision 1.6
distrib/miniroot/install.sub: revision 1.47 (patch)
distrib/sun3/miniroot/install.md: revision 1.7
distrib/sun2/miniroot/install.md: revision 1.6
distrib/sun2/miniroot/install.md: revision 1.7
distrib/amiga/miniroot/install.md: revision 1.31
distrib/mac68k/miniroot/install.md: revision 1.6
distrib/mac68k/miniroot/install.md: revision 1.7
distrib/mac68k/miniroot/install.md: revision 1.8
distrib/miniroot/upgrade.sh: revision 1.23
distrib/miniroot/install.sh: revision 1.26
distrib/miniroot/upgrade.sh: revision 1.24
distrib/miniroot/install.sh: revision 1.27
distrib/hp300/miniroot/install.md: revision 1.18
distrib/hp300/miniroot/install.md: revision 1.19
distrib/miniroot/install.sub: revision 1.50 (patch)
distrib/miniroot/install.sub: revision 1.51 (patch)
distrib/miniroot/install.sub: revision 1.52 (patch)
distrib/miniroot/install.sub: revision 1.53 (patch)
Remove uses of test ... -a ... and test ... -o ...
eXorcize and `` -> $()
Fix miniroot installation failure on network configuration. PR/54833
No particular comment in the PR.
Should be pulled up to netbsd-9.
Fix "[: SMALL test, no fallback usage" error on miniroot installation.
Avoid and replace use of '-a', '(' and ')' operatos marked obsolescent
by modern POSIX.1-2017:
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html#tag_20_128_16
as suggested by kre@ in PR/54835.
Should be pulled up to netbsd-9.
The idiom
set $whatever
while [ $# - gt 10 ]; do shift 10; done
eval echo \$$#
fails when $# turns out to be 10 (or any multiple), it would need
to be instead
while [ $# -ge 10 ]; do shift 9; done
but there hasn't been a shell that cannot handle ${10} (etc) correctly
in a very long time, so let's just use that instead (properly quoted,
in case IFS happens to contain a digit for some bizarre reason).
We should also "set -f" / "set +f" (or better, restore the prev setting of -f)
around the "set $whatever" part, but if that was ever going to cause a problem
here, it would have already, so leave that for now.
test ! -n "$foo" is just a quaint way of saying test -z "$foo"
and test ! -z "$foo" is really just test -n "$foo" so let's just
use the simple (and more obvious) forms.
NFCI.
The kernel and X sets should be specified in MD miniroot scripts.
Otherwise they are not listed at least on ftp installation.
The problem was reported by Martin Trusler on port-hp300@:
https://mail-index.netbsd.org/port-hp300/2020/11/21/msg000174.html
Should be pulled up to netbsd-9 and netbsd-8.
Add modules set for default sets on miniroot installation.
Should be pulled up to netbsd-9 and netbsd-8.
Add missing md_get_partition_range() that causes installation failure.
Also reported by Martin Trusler on testing hp300 miniroot.
Should be pulled up to netbsd-9 and netbsd-8.
Explicitly sort set names fetched via ftp nlist.
Several binary sets are stored as symbolic links on releases and
it seems some ftpd doesn't sort nlist outputs by name in such case.
Worth to pullup to netbsd-9 and netbsd-8.
Use proper release version strings ("9.1" rather than "91") in banners.
Also define and use "MACHINE" variable to describe port names
(no uname(1) or sysctl(8) in miniroot binary list by default).
I guess the short format like "91" by ${DISTRIBREV} was used only
for split sets for floppies in 1990's releases.
Worth to pullup to netbsd-9.
Inform the default installation directory in the official ftp server.
Fetch files via ftp using auto-fetching with URL per each binary set.
On slower machines, it takes more than five minutes to get a large
set binary and it could cause timeout of ftp control session, so
getting multiple binary sets in a single ftp session always fails.
Briefly tested on HP 9000/425e with 9.1 tree and ftp.netbsd.org binaries.
No particular comments on tech-install@ and port-hp300@.
Maybe should be pulled up to netbsd-9.
To generate a diff of this commit:
cvs rdiff -u -r1.27.40.1 -r1.27.40.2 src/distrib/amiga/miniroot/install.md
cvs rdiff -u -r1.15 -r1.15.38.1 src/distrib/hp300/miniroot/install.md
cvs rdiff -u -r1.4 -r1.4.56.1 src/distrib/mac68k/miniroot/install.md
cvs rdiff -u -r1.25 -r1.25.40.1 src/distrib/miniroot/install.sh
cvs rdiff -u -r1.45.56.1 -r1.45.56.2 src/distrib/miniroot/install.sub
cvs rdiff -u -r1.35 -r1.35.36.1 src/distrib/miniroot/list
cvs rdiff -u -r1.22 -r1.22.56.1 src/distrib/miniroot/upgrade.sh
cvs rdiff -u -r1.6 -r1.6.40.1 src/distrib/mvme68k/miniroot/install.md
cvs rdiff -u -r1.3 -r1.3.56.1 src/distrib/sun2/miniroot/install.md
cvs rdiff -u -r1.3 -r1.3.56.1 src/distrib/sun3/miniroot/install.md
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/distrib/amiga/miniroot/install.md
diff -u src/distrib/amiga/miniroot/install.md:1.27.40.1 src/distrib/amiga/miniroot/install.md:1.27.40.2
--- src/distrib/amiga/miniroot/install.md:1.27.40.1 Sat Sep 23 17:01:59 2017
+++ src/distrib/amiga/miniroot/install.md Sat Dec 19 19:02:52 2020
@@ -1,4 +1,4 @@
-# $NetBSD: install.md,v 1.27.40.1 2017/09/23 17:01:59 snj Exp $
+# $NetBSD: install.md,v 1.27.40.2 2020/12/19 19:02:52 martin Exp $
#
#
# Copyright (c) 1996,2006 The NetBSD Foundation, Inc.
@@ -152,7 +152,7 @@ md_labeldisk() {
md_welcome_banner() {
if [ "$MODE" = "install" ]; then
echo ""
- echo "Welcome to the NetBSD/amiga ${VERSION} installation program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} installation program."
cat << \__welcome_banner_1
This program is designed to help you put NetBSD on your disk,
@@ -163,7 +163,7 @@ __welcome_banner_1
else
echo ""
- echo "Welcome to the NetBSD/amiga ${VERSION} upgrade program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} upgrade program."
cat << \__welcome_banner_2
This program is designed to help you upgrade your NetBSD system in a
Index: src/distrib/hp300/miniroot/install.md
diff -u src/distrib/hp300/miniroot/install.md:1.15 src/distrib/hp300/miniroot/install.md:1.15.38.1
--- src/distrib/hp300/miniroot/install.md:1.15 Sun Feb 6 18:26:51 2011
+++ src/distrib/hp300/miniroot/install.md Sat Dec 19 19:02:52 2020
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $NetBSD: install.md,v 1.15 2011/02/06 18:26:51 tsutsui Exp $
+# $NetBSD: install.md,v 1.15.38.1 2020/12/19 19:02:52 martin Exp $
#
# Copyright (c) 1996 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -35,7 +35,7 @@
#
# Machine-dependent install sets
-MDSETS=""
+MDSETS="kern-GENERIC xbase xcomp xetc xfont xserver"
md_set_term() {
if [ ! -z "$TERM" ]; then
@@ -83,6 +83,11 @@ md_get_ifdevs() {
dmesg | awk -F : '/^le[0-9]*:/ { print $1; }' | sort -u
}
+md_get_partition_range() {
+ # return an expression describing the valid partition id's
+ echo '[a-h]'
+}
+
md_installboot() {
# $1 is the root disk
@@ -470,7 +475,7 @@ __md_copy_kernel_1
md_welcome_banner() {
(
echo ""
- echo "Welcome to the NetBSD/hp300 ${VERSION} installation program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} installation program."
cat << \__welcome_banner_1
This program is designed to help you install NetBSD on your system in a
Index: src/distrib/mac68k/miniroot/install.md
diff -u src/distrib/mac68k/miniroot/install.md:1.4 src/distrib/mac68k/miniroot/install.md:1.4.56.1
--- src/distrib/mac68k/miniroot/install.md:1.4 Wed Apr 30 13:10:48 2008
+++ src/distrib/mac68k/miniroot/install.md Sat Dec 19 19:02:52 2020
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $NetBSD: install.md,v 1.4 2008/04/30 13:10:48 martin Exp $
+# $NetBSD: install.md,v 1.4.56.1 2020/12/19 19:02:52 martin Exp $
#
# Copyright (c) 1996 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -35,7 +35,7 @@
#
# Machine-dependent install sets
-MDSETS=""
+MDSETS="kern-GENERIC xbase xcomp xetc xfont xserver"
md_set_term() {
if [ ! -z "$TERM" ]; then
@@ -83,6 +83,11 @@ md_get_ifdevs() {
dmesg | awk -F : '/^sn[0-9]*:/ { print $1; }' | sort -u
}
+md_get_partition_range() {
+ # return an expression describing the valid partition id's
+ echo '[a-h]'
+}
+
md_installboot() {
# $1 is the root disk
@@ -122,7 +127,7 @@ md_copy_kernel() {
md_welcome_banner() {
(
echo ""
- echo "Welcome to the NetBSD/mac68k ${VERSION} installation program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} installation program."
cat << \__welcome_banner_1
This program is designed to help you install NetBSD on your system in a
Index: src/distrib/miniroot/install.sh
diff -u src/distrib/miniroot/install.sh:1.25 src/distrib/miniroot/install.sh:1.25.40.1
--- src/distrib/miniroot/install.sh:1.25 Sun Sep 20 22:44:06 2009
+++ src/distrib/miniroot/install.sh Sat Dec 19 19:02:52 2020
@@ -1,5 +1,5 @@
#!/bin/sh
-# $NetBSD: install.sh,v 1.25 2009/09/20 22:44:06 abs Exp $
+# $NetBSD: install.sh,v 1.25.40.1 2020/12/19 19:02:52 martin Exp $
#
# Copyright (c) 1996,1997,1999,2000,2006 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -64,8 +64,8 @@ MODE="install"
# we need to make sure .'s below work if this directory is not in $PATH
# dirname may not be available but expr is
-Mydir=`expr $0 : '^\(.*\)/[^/]*$'`
-Mydir=`cd ${Mydir:-.}; pwd`
+Mydir=$(expr $0 : '^\(.*\)/[^/]*$')
+Mydir=$(cd ${Mydir:-.}; pwd)
# this is the most likely place to find the binary sets
# so save them having to type it in
@@ -114,7 +114,7 @@ echo "# disktab" > /tmp/disktab.shadow
test "$md_view_labels_possible" && md_view_labels
-while [ "X${ROOTDISK}" = "X" ]; do
+while [ -z "${ROOTDISK}" ]; do
getrootdisk
done
@@ -144,8 +144,8 @@ echo " ${ROOTDISK}a /"
echo "${ROOTDISK}a /" > ${FILESYSTEMS}
-resp="X" # force at least one iteration
-while [ "X$resp" != X"done" ]; do
+resp="not-done" # force at least one iteration
+while [ "$resp" != "done" ]; do
echo ""
echo -n "Device name? [RETURN if you already entered all devices] "
getresp "done"
@@ -154,19 +154,19 @@ while [ "X$resp" != X"done" ]; do
;;
*)
- _device_name=`basename $resp`
+ _device_name=$(basename $resp)
# force at least one iteration
_first_char="X"
- while [ "X${_first_char}" != X"/" ]; do
+ while [ "${_first_char}" != "/" ]; do
echo -n "Mount point? "
getresp ""
_mount_point=$resp
- if [ "X${_mount_point}" = X"/" ]; then
+ if [ "${_mount_point}" = "/" ]; then
# Invalid response; no multiple roots
_first_char="X"
else
- _first_char=`firstchar ${_mount_point}`
+ _first_char=$(firstchar ${_mount_point})
fi
done
echo "${_device_name} ${_mount_point}" >> ${FILESYSTEMS}
@@ -177,7 +177,7 @@ done
# configure swap
resp="" # force at least one iteration
-while [ "X${resp}" = X"" ]; do
+while [ -z "${resp}" ]; do
echo -n "Ok to configure ${ROOTDISK}b as a swap device? [] "
getresp ""
case "$resp" in
@@ -236,10 +236,10 @@ case "$resp" in
y*|Y*)
resp="" # force at least one iteration
if [ -f /etc/myname ]; then
- resp=`cat /etc/myname`
+ resp=$(cat /etc/myname)
fi
echo -n "Enter system hostname: [$resp] "
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
getresp "$resp"
done
hostname $resp
@@ -247,7 +247,7 @@ case "$resp" in
echo -n "Enter DNS domain name: "
getresp "none"
- if [ "X${resp}" != X"none" ]; then
+ if [ "${resp:-none}" != "none" ]; then
FQDN=$resp
fi
@@ -255,7 +255,7 @@ case "$resp" in
echo -n "Enter IP address of default route: [none] "
getresp "none"
- if [ "X${resp}" != X"none" ]; then
+ if [ "${resp:-none}" != "none" ]; then
route delete default > /dev/null 2>&1
if route add default $resp > /dev/null ; then
echo $resp > /tmp/mygate
@@ -263,11 +263,11 @@ case "$resp" in
fi
resp="none"
- if [ X${FQDN} != X ]; then
+ if [ -n "${FQDN}" ]; then
echo -n "Enter IP address of primary nameserver: [none] "
getresp "none"
fi
- if [ "X${resp}" != X"none" ]; then
+ if [ "${resp:-none}" != "none" ]; then
echo "domain $FQDN" > /tmp/resolv.conf
echo "nameserver $resp" >> /tmp/resolv.conf
echo "search $FQDN" >> /tmp/resolv.conf
@@ -377,7 +377,7 @@ mount_fs /tmp/fstab.shadow
mount | while read line; do
set -- $line
- if [ "$2" = "/" -a "$3" = "nfs" ]; then
+ if [ "$2" = "/" ] && [ "$3" = "nfs" ]; then
echo "You appear to be running diskless."
echo -n "Are the install sets on one of your currently mounted filesystems? [n] "
getresp "n"
@@ -427,7 +427,7 @@ install_sets
echo "No /dev/MAKEDEV installed, something is wrong here..."
else
echo -n "Making devices..."
- pid=`twiddle`
+ pid=$(twiddle)
cd /mnt/dev
sh MAKEDEV all
kill $pid
Index: src/distrib/miniroot/install.sub
diff -u src/distrib/miniroot/install.sub:1.45.56.1 src/distrib/miniroot/install.sub:1.45.56.2
--- src/distrib/miniroot/install.sub:1.45.56.1 Sat Sep 23 17:01:59 2017
+++ src/distrib/miniroot/install.sub Sat Dec 19 19:02:52 2020
@@ -1,5 +1,5 @@
#!/bin/sh
-# $NetBSD: install.sub,v 1.45.56.1 2017/09/23 17:01:59 snj Exp $
+# $NetBSD: install.sub,v 1.45.56.2 2020/12/19 19:02:52 martin Exp $
#
# Copyright (c) 1996 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -32,10 +32,14 @@
# NetBSD installation/upgrade script - common subroutines.
ROOTDISK="" # filled in below
+MACHINE= # filled by distrib/miniroot/list
+export MACHINE
VERSION= # filled in automatically (see list)
export VERSION
+RELEASE= # filled in automatically (see list)
+export RELEASE
-ALLSETS="base comp etc games man misc text" # default install sets
+ALLSETS="base comp etc games man misc modules text" # default install sets
UPGRSETS="base comp games man misc text" # default upgrade sets
THESETS= # one of the above
@@ -53,7 +57,7 @@ fi
getresp() {
read resp
- if [ "X$resp" = "X" ]; then
+ if [ -z "$resp" ]; then
resp=$1
fi
}
@@ -114,8 +118,7 @@ cutlast () {
read _a; set -- $_a
IFS="$_oifs"
if [ "$1" = "" ]; then return; fi
- while [ "$#" -gt 10 ]; do shift 10; done
- eval echo \$$#
+ eval echo '"${'"$#"'}"'
}
firstchar () {
@@ -135,8 +138,7 @@ basename () {
IFS="/"
set -- $1
IFS="$_oifs"
- while [ "$#" -gt 10 ]; do shift 10; done
- eval echo \$$#
+ eval echo '"${'"$#"'}"'
}
dir_has_sets() {
@@ -243,7 +245,7 @@ program.
Available disks are:
__getrootdisk_1
- _DKDEVS=`md_get_diskdevs`
+ _DKDEVS=$(md_get_diskdevs)
echo "$_DKDEVS"
echo ""
echo -n "Which disk is the root disk? "
@@ -323,16 +325,16 @@ configurenetwork() {
local _ifsdone
local _ifs
-# _IFS=`md_get_ifdevs`
- _IFS=`ifconfig -l | sed '
+# _IFS=$(md_get_ifdevs)
+ _IFS=$(ifconfig -l | sed '
s/lo0//
s/ppp[0-9]//g
s/sl[0-9]//g
- s/tun[0-9]//g'`
+ s/tun[0-9]//g')
_ifsdone=""
resp="" # force at least one iteration
- while [ "X${resp}" != X"done" ]; do
+ while [ "${resp}" != "done" ]; do
cat << \__configurenetwork_1
You may configure the following network interfaces (the interfaces
@@ -383,37 +385,37 @@ configure_ifs() {
_interface_name=$1
_up=DOWN
- if isin $_interface_name `ifconfig -l -u` ; then
+ if isin $_interface_name $(ifconfig -l -u); then
_up=UP
fi
- _interface_supported_media=`ifconfig -m $_interface_name | sed -n '
+ _interface_supported_media=$(ifconfig -m $_interface_name | sed -n '
/^[ ]*media autoselect/d
- 4,$s/[ ]*media //p'`
+ 4,$s/[ ]*media //p')
# get current "media" "ip" and "netmask" ("broadcast")
- _t=`ifconfig $_interface_name | sed -n '
- s/^[ ]*media: [^ ]* \([^ ][^ ]*\).*/\1/p'`
+ _t=$(ifconfig $_interface_name | sed -n '
+ s/^[ ]*media: [^ ]* \([^ ][^ ]*\).*/\1/p')
- if [ "$_t" != "manual" -a "$_t" != "media:" -a "$_t" != "autoselect" ];
+ if [ "$_t" != "manual" ] && [ "$_t" != "media:" ] && [ "$_t" != "autoselect" ];
then
_interface_mediumtype=$1
fi
- set -- `ifconfig $_interface_name | sed -n '
+ set -- $(ifconfig $_interface_name | sed -n '
/^[ ]*inet/{
s/inet//
s/--> [0-9.][0-9.]*//
s/netmask//
s/broadcast//
- p;}'`
+ p;}')
_interface_ip=$1
_interface_mask=$2
# Get IP address
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "IP address? [$_interface_ip] "
getresp "$_interface_ip"
_interface_ip=$resp
@@ -421,7 +423,7 @@ configure_ifs() {
# Get symbolic name
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Symbolic (host) name? "
getresp ""
_interface_symname=$resp
@@ -429,7 +431,7 @@ configure_ifs() {
# Get netmask
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Netmask? [$_interface_mask] "
getresp "$_interface_mask"
_interface_mask=$resp
@@ -441,19 +443,19 @@ configure_ifs() {
echo -n "Additional media type arguments (none)? [$_interface_mediumtype] "
getresp "$_interface_mediumtype"
_m=""
- if [ "X${resp}" != X"" -a "X${resp}" != Xnone ]; then
+ if [ "${resp:-none}" != "none" ]; then
_interface_mediumtype=$resp
_m="media ${resp}"
fi
echo "Your network interface might require additional link-layer"
- echo "directives (like \`link0'). If this is the case you can enter"
+ echo "directives (like 'link0'). If this is the case you can enter"
echo "these at the next prompt."
echo ""
echo -n "Additional link-layer arguments (none)? [$_interface_extra] "
getresp "$_interface_extra"
- if [ "X${resp}" != X"" -a "X${resp}" != Xnone ]; then
+ if [ "${resp:-none}" != "none" ]; then
_interface_extra=$resp
fi
@@ -494,9 +496,9 @@ enable_network() {
# Set up the hostname.
if [ -f /mnt/etc/myname ]; then
- hostname=`cat /mnt/etc/myname`
+ hostname=$(cat /mnt/etc/myname)
elif [ -f /mnt/etc/rc.conf ];then
- hostname=`sh -c '. /mnt/etc/rc.conf ; echo $hostname'`
+ hostname=$(sh -c '. /mnt/etc/rc.conf ; echo $hostname')
else
echo "ERROR: no /etc/myname!"
return 1
@@ -518,14 +520,14 @@ if [ -f /mnt/etc/rc.conf ]; then
if [ "$net_interfaces" != NO ]; then
if [ "$auto_ifconfig" = YES ]; then
- tmp="`ifconfig -l`"
+ tmp="$(ifconfig -l)"
else
tmp="$net_interfaces"
fi
echo -n "configuring network interfaces:"
for i in $tmp; do
- eval `echo 'args=$ifconfig_'$i`
- if [ ! -z "$args" ]; then
+ eval $(echo 'args=$ifconfig_'$i)
+ if [ -n "$args" ]; then
echo -n " $i"
ifconfig $i $args
elif [ -f /mnt/etc/ifconfig.$i ]; then
@@ -547,7 +549,7 @@ else
(
tmp="$IFS"
IFS="$IFS."
- set -- `echo /mnt/etc/hostname*`
+ set -- $(echo /mnt/etc/hostname*)
IFS=$tmp
unset tmp
@@ -557,7 +559,7 @@ else
read af name mask bcaddr extras
read dt dtaddr
- if [ ! -n "$name" ]; then
+ if [ -z "$name" ]; then
echo "/etc/hostname.$1: invalid network configuration file"
exit
fi
@@ -565,7 +567,7 @@ else
cmd="ifconfig $1 $af $name "
if [ "${dt}" = "dest" ]; then cmd="$cmd $dtaddr"; fi
if [ -n "$mask" ]; then cmd="$cmd netmask $mask"; fi
- if [ -n "$bcaddr" -a "X$bcaddr" != "XNONE" ]; then
+ if [ "${bcaddr:-NONE}" != "NONE" ]; then
cmd="$cmd broadcast $bcaddr";
fi
cmd="$cmd $extras"
@@ -587,7 +589,7 @@ fi
# that name must be in /etc/hosts.
if [ -f /mnt/etc/mygate ]; then
route delete default > /dev/null 2>&1
- route add default `cat /mnt/etc/mygate`
+ route add default $(cat /mnt/etc/mygate)
fi
# enable the resolver, if appropriate.
@@ -602,7 +604,7 @@ fi
echo ""
- if [ "X${_resolver_enabled}" = X"TRUE" ]; then
+ if [ "${_resolver_enabled:-FALSE}" = "TRUE" ]; then
netstat -r
echo ""
echo "Resolver enabled."
@@ -649,7 +651,7 @@ that will be fed to ftp(1).
__install_ftp_1
# Get server IP address
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Server IP? [${_ftp_server_ip}] "
getresp "${_ftp_server_ip}"
_ftp_server_ip=$resp
@@ -657,7 +659,7 @@ __install_ftp_1
# Get login name
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Login? [${_ftp_server_login}] "
getresp "${_ftp_server_login}"
_ftp_server_login=$resp
@@ -665,7 +667,7 @@ __install_ftp_1
# Get password
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Password? "
stty -echo
getresp ""
@@ -680,14 +682,18 @@ You will be asked to enter the name of t
installation sets. When you enter a '?' you will see a listing of the
current directory on the server.
__install_ftp_2
+ echo ""
+ echo "The default installation directory in the official ftp server is:"
+ echo "/pub/NetBSD/NetBSD-${RELEASE}/${MACHINE}/binary/sets"
+
_sets=""
while [ -z "$_sets" ]
do
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Server directory? [${_ftp_server_dir}] "
getresp "${_ftp_server_dir}"
- if [ "X$resp" = 'X?' -a -z "$_ftp_server_dir" ]; then
+ if [ -z "$resp" ] && [ -z "$_ftp_server_dir" ]; then
resp=""
fi
done
@@ -715,10 +721,19 @@ __install_ftp_2
if [ $resp = '?' ]; then
sh /tmp/ftp-dir.sh
else
- _sets=`sh /tmp/ftp-dir.sh | sh /tmp/fname_filter.sh`
+ _sets=$(sh /tmp/ftp-dir.sh | sort -u | sh /tmp/fname_filter.sh)
fi
done
rm -f /tmp/ftp-dir.sh /tmp/fname_filter.sh
+ rm -f /tmp/ftp-script.sh
+
+ # Prepare ftp-fetch script to fetch binary sets
+ _download_dir=INSTALL
+ _ftp_opts=""
+ _ftp_url="ftp://$_ftp_server_login:$_ftp_server_password@$_ftp_server_ip$_ftp_server_dir/"
+ echo "#!/bin/sh" > /tmp/ftp-fetch.sh
+ echo "cd /mnt" >> /tmp/ftp-fetch.sh
+ echo "mkdir -p $_download_dir" >> /tmp/ftp-fetch.sh
while : ; do
echo "The following sets are available for extraction:"
@@ -739,8 +754,8 @@ __install_ftp_2
echo ""
# Get name of the file and add extraction command
- # to the ftp-script.
- if [ "X$_next" = "X" ]; then resp=n; else resp=y; fi
+ # to the ftp-fetch script.
+ if [ -z "$_next" ]; then resp=n; else resp=y; fi
echo -n "Continue to add filenames [$resp]? "
getresp "$resp"
if [ "$resp" = "n" ]; then
@@ -750,8 +765,16 @@ __install_ftp_2
echo -n "File name [$_next]? "
getresp "$_next"
if isin $resp $_sets; then
- echo "get $resp |\"pax -zr${verbose_flag}pe\"" >> \
- /tmp/ftp-script.sh
+ echo "echo Fetching $resp:" >> \
+ /tmp/ftp-fetch.sh
+ echo "ftp ${_ftp_opts} -o $_download_dir/$resp ${_ftp_url}$resp" >> \
+ /tmp/ftp-fetch.sh
+ echo "echo Extracting $resp:" >> \
+ /tmp/ftp-fetch.sh
+ echo "pax -zr${verbose_flag}pe -f $_download_dir/$resp" >> \
+ /tmp/ftp-fetch.sh
+ echo "rm -f $_download_dir/$resp" >> \
+ /tmp/ftp-fetch.sh
_setsdone="$resp $_setsdone"
else
echo "You entered an invalid filename."
@@ -759,11 +782,8 @@ __install_ftp_2
fi
done
- echo "quit" >> /tmp/ftp-script.sh
- echo "__end_commands" >> /tmp/ftp-script.sh
-
- sh /tmp/ftp-script.sh
- rm -f /tmp/ftp-script.sh
+ sh /tmp/ftp-fetch.sh
+ rm -f /tmp/ftp-fetch.sh
echo "Extraction complete."
}
@@ -790,7 +810,7 @@ install_from_mounted_fs() {
echo "Enter the subdirectory relative to the mountpoint, that"
echo -n "contains the savesets: [try this directory] "
getresp ""
- if [ "X${resp}" != "X" ]; then
+ if [ -n "${resp}" ]; then
_dirname=${_dirname}/$resp
fi
@@ -804,7 +824,7 @@ install_from_mounted_fs() {
echo ""
echo -n "Enter subdirectory: [try other install media] "
getresp ""
- if [ "X${resp}" = "X" ]; then
+ if [ -z "${resp}" ]; then
return
fi
if [ ! -d ${_dirname}/${resp} ]; then
@@ -850,7 +870,7 @@ install_from_mounted_fs() {
echo ""
# Get the name of the file.
- if [ "X$_next" = "X" ]; then
+ if [ -z "$_next" ]; then
resp=n
else
resp=y
@@ -913,7 +933,7 @@ The following CD-ROM devices are install
the CD-ROM device containing the partition with the installation sets:
__install_cdrom_1
- _CDDEVS=`md_get_cddevs`
+ _CDDEVS=$(md_get_cddevs)
echo "$_CDDEVS"
echo ""
echo -n "Which is the CD-ROM with the installation media? [abort] "
@@ -937,9 +957,9 @@ __install_cdrom_1
esac
# Get partition
- _partition_range=`md_get_partition_range`
+ _partition_range=$(md_get_partition_range)
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Partition? [a] "
getresp "a"
case "$resp" in
@@ -963,7 +983,7 @@ There are two CD-ROM filesystem types cu
__install_cdrom_2
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Which filesystem type? [cd9660] "
getresp "cd9660"
case "$resp" in
@@ -1023,9 +1043,9 @@ mount_a_disk() {
esac
# Get partition
- _partition_range=`md_get_partition_range`
+ _partition_range=$(md_get_partition_range)
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Partition? [d] "
getresp "d"
case "$resp" in
@@ -1047,15 +1067,15 @@ The following filesystem types are suppo
1) ffs
2) cd9660
__mount_a_disk_2
- _md_fstype=`md_native_fstype`
- _md_fsopts=`md_native_fsopts`
- if [ ! -z "$_md_fstype" ]; then
+ _md_fstype=$(md_native_fstype)
+ _md_fsopts=$(md_native_fsopts)
+ if [ -n "$_md_fstype" ]; then
echo " 3) $_md_fstype"
else
_md_fstype="_undefined_"
fi
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Which filesystem type? [ffs] "
getresp "ffs"
case "$resp" in
@@ -1116,7 +1136,7 @@ The following disk devices are installed
the disk device containing the partition with the installation sets:
__install_disk_2
- _DKDEVS=`md_get_diskdevs`
+ _DKDEVS=$(md_get_diskdevs)
echo "$_DKDEVS"
echo ""
echo -n "Which is the disk with the installation sets? [abort] "
@@ -1132,7 +1152,7 @@ __install_disk_2
install_nfs() {
# Get the IP address of the server
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Server IP address? [${_nfs_server_ip}] "
getresp "${_nfs_server_ip}"
done
@@ -1140,7 +1160,7 @@ install_nfs() {
# Get server path to mount
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Filesystem on server to mount? [${_nfs_server_path}] "
getresp "${_nfs_server_path}"
done
@@ -1193,13 +1213,13 @@ The installation program needs to know w
sure you use a "no rewind on close" device.
__install_tape_1
- _tape=`basename $TAPE`
+ _tape=$(basename $TAPE)
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Name of tape device? [${_tape}]"
getresp "${_tape}"
done
- _tape=`basename $resp`
+ _tape=$(basename $resp)
TAPE="/dev/${_tape}"
if [ ! -c $TAPE ]; then
echo "$TAPE does not exist or is not a character special file."
@@ -1219,12 +1239,12 @@ __install_tape_1
# Get the file number
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "File number? "
getresp ""
case "$resp" in
[1-9]*)
- _nskip=`expr $resp - 1`
+ _nskip=$(expr $resp - 1)
;;
*)
@@ -1236,7 +1256,7 @@ __install_tape_1
# Skip to correct file.
echo -n "Skipping to source file..."
- if [ "X${_nskip}" != X"0" ]; then
+ if [ "${_nskip}" != "0" ]; then
if ! mt fsf $_nskip ; then
echo "Could not skip $_nskip files. Aborting."
return
@@ -1253,7 +1273,7 @@ There are 2 different ways the file can
__install_tape_2
resp="" # force one iteration
- while [ "X${resp}" = X"" ]; do
+ while [ -z "${resp}" ]; do
echo -n "Which way is it? [1] "
getresp "1"
case "$resp" in
@@ -1283,7 +1303,7 @@ get_timezone() {
# If the zoneinfo is not on the installation medium or on the
# installed filesystem, set TZ to GMT and return immediatly.
#
- if [ ! -e /usr/share/zoneinfo -a ! -e /mnt/usr/share/zoneinfo ]; then
+ if [ ! -e /usr/share/zoneinfo ] && [ ! -e /mnt/usr/share/zoneinfo ]; then
TZ=GMT
return
fi
@@ -1306,11 +1326,11 @@ at the prompts below.
__get_timezone_1
if [ X$TZ = X ]; then
- TZ=`ls -l /mnt/etc/localtime 2>/dev/null | cutlast`
+ TZ=$(ls -l /mnt/etc/localtime 2>/dev/null | cutlast)
TZ=${TZ#/usr/share/zoneinfo/}
fi
while :; do
- echo -n "What timezone are you in [\`?' for list] [$TZ]? "
+ echo -n "What timezone are you in ['?' for list] [$TZ]? "
getresp "$TZ"
case "$resp" in
"")
@@ -1326,7 +1346,7 @@ __get_timezone_1
while [ -d ${_zonepath}/usr/share/zoneinfo/$_a ]; do
echo -n "There are several timezones available"
echo " within zone '$_a'"
- echo -n "Select a sub-timezone [\`?' for list]: "
+ echo -n "Select a sub-timezone ['?' for list]: "
getresp ""
case "$resp" in
"?") ls ${_zonepath}/usr/share/zoneinfo/$_a ;;
@@ -1383,7 +1403,7 @@ __install_sets_1
local_sets_dir=$Default_sets_dir
fi
fi
- if [ "X$local_sets_dir" != "X" ]; then
+ if [ -n "${local_sets_dir}" ]; then
install_from_mounted_fs ${local_sets_dir}
if [ X"$_setsdone" != X ]; then
_yup="TRUE"
@@ -1492,7 +1512,7 @@ mount_fs()
# If not the root filesystem, make sure the mount
# point is present.
- if [ "X{$_mp}" != X"/mnt" ]; then
+ if [ "$_mp" != "/mnt" ]; then
mkdir -p $_mp
fi
@@ -1505,7 +1525,7 @@ mount_fs()
fi
done ) < $_fstab
- if [ "X${?}" != X"0" ]; then
+ if [ "$?" != "0" ]; then
cat << \__mount_filesystems_1
FATAL ERROR: Cannot mount filesystems. Double-check your configuration
@@ -1531,14 +1551,14 @@ unmount_fs()
_fstab=$1
fi
- if [ ! \( -f $_fstab -a -s $_fstab \) ]; then
+ if ! [ -f "${_fstab}" ] || ! [ -s "${_fstab}" ]; then
echo "fstab empty" > /dev/tty
return
fi
if [ $_fast = 0 ]; then
echo -n "Syncing disks..."
- _pid=`twiddle`
+ _pid=$(twiddle)
sync; sleep 4; sync; sleep 2; sync; sleep 2
kill $_pid
echo "done."
Index: src/distrib/miniroot/list
diff -u src/distrib/miniroot/list:1.35 src/distrib/miniroot/list:1.35.36.1
--- src/distrib/miniroot/list:1.35 Sun Jun 19 06:48:07 2011
+++ src/distrib/miniroot/list Sat Dec 19 19:02:52 2020
@@ -1,4 +1,4 @@
-# $NetBSD: list,v 1.35 2011/06/19 06:48:07 tsutsui Exp $
+# $NetBSD: list,v 1.35.36.1 2020/12/19 19:02:52 martin Exp $
SRCDIRS bin sbin usr.bin usr.sbin
@@ -71,5 +71,5 @@ COPY ${DISTRIBDIR}/common/services etc/
# and the installation scripts
COPY ${CURDIR}/install.sh install 555
COPY ${CURDIR}/upgrade.sh upgrade 555
-CMD sed "/^VERSION=/s/=.*/=${DISTRIBREV}/" < ${CURDIR}/install.sub > install.sub
+CMD sed -e "/^VERSION=/s/=.*/=${DISTRIBREV}/" -e "/^RELEASE=/s/=.*/=${DISTRIBVER}/" -e "/^MACHINE=/s/=.*/=${MACHINE}/" < ${CURDIR}/install.sub > install.sub
MTREE ./install.sub type=file uname=root gname=wheel mode=0444
Index: src/distrib/miniroot/upgrade.sh
diff -u src/distrib/miniroot/upgrade.sh:1.22 src/distrib/miniroot/upgrade.sh:1.22.56.1
--- src/distrib/miniroot/upgrade.sh:1.22 Wed Apr 30 13:10:48 2008
+++ src/distrib/miniroot/upgrade.sh Sat Dec 19 19:02:52 2020
@@ -1,5 +1,5 @@
#!/bin/sh
-# $NetBSD: upgrade.sh,v 1.22 2008/04/30 13:10:48 martin Exp $
+# $NetBSD: upgrade.sh,v 1.22.56.1 2020/12/19 19:02:52 martin Exp $
#
# Copyright (c) 1996-2000,2006 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -62,8 +62,8 @@ MODE="upgrade"
# we need to make sure .'s below work if this directory is not in $PATH
# dirname may not be available but expr is
-Mydir=`expr $0 : '^\(.*\)/[^/]*$'`
-Mydir=`cd ${Mydir:-.}; pwd`
+Mydir=$(expr $0 : '^\(.*\)/[^/]*$')
+Mydir=$(cd ${Mydir:-.}; pwd)
# this is the most likely place to find the binary sets
# so save them having to type it in
@@ -149,17 +149,17 @@ md_makerootwritable
test "$md_view_labels_possible" && md_view_labels
-while [ "X${ROOTDISK}" = "X" ]; do
+while [ -z "${ROOTDISK}" ]; do
getrootdisk
done
# Assume partition 'a' of $ROOTDISK is for the root filesystem. Confirm
# this with the user. Check and mount the root filesystem.
resp="" # force one iteration
-while [ "X${resp}" = "X" ]; do
+while [ -z "${resp}" ]; do
echo -n "Root filesystem? [${ROOTDISK}a] "
getresp "${ROOTDISK}a"
- _root_filesystem="/dev/`basename $resp`"
+ _root_filesystem="/dev/$(basename $resp)"
if [ ! -b ${_root_filesystem} ]; then
echo "Sorry, ${resp} is not a block device."
resp="" # force loop to repeat
@@ -238,9 +238,9 @@ esac
(
> /tmp/fstab
while read _dev _mp _fstype _rest ; do
- if [ "X${_fstype}" = X"ufs" -o \
- "X${_fstype}" = X"ffs" ]; then
- if [ "X${_fstype}" = X"ufs" ]; then
+ if [ "${_fstype}" = "ufs" ] ||
+ [ "${_fstype}" = "ffs" ]; then
+ if [ "${_fstype}" = "ufs" ]; then
# Convert ufs to ffs.
_fstype=ffs
fi
@@ -320,7 +320,7 @@ install_sets
# Remove files that have just been installed in a new location
# from the old location
-rm_relocated_files `eval echo \\$RELOCATED_FILES_${VERSION}`
+rm_relocated_files $(eval echo \\$RELOCATED_FILES_${VERSION})
# Get timezone info
get_timezone
@@ -330,7 +330,7 @@ echo -n "Converting ufs to ffs in /etc/f
(
> /tmp/fstab
while read _dev _mp _fstype _rest ; do
- if [ "X${_fstype}" = X"ufs" ]; then
+ if [ "${_fstype}" = "ufs" ]; then
# Convert ufs to ffs.
_fstype=ffs
fi
@@ -366,7 +366,7 @@ esac
echo "done."
echo -n "Making devices..."
- _pid=`twiddle`
+ _pid=$(twiddle)
cd /mnt/dev
sh MAKEDEV all
kill $_pid
Index: src/distrib/mvme68k/miniroot/install.md
diff -u src/distrib/mvme68k/miniroot/install.md:1.6 src/distrib/mvme68k/miniroot/install.md:1.6.40.1
--- src/distrib/mvme68k/miniroot/install.md:1.6 Wed Mar 10 23:13:09 2010
+++ src/distrib/mvme68k/miniroot/install.md Sat Dec 19 19:02:52 2020
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $NetBSD: install.md,v 1.6 2010/03/10 23:13:09 abs Exp $
+# $NetBSD: install.md,v 1.6.40.1 2020/12/19 19:02:52 martin Exp $
#
# Copyright (c) 1996 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -35,7 +35,7 @@
#
# Machine-dependent install sets
-MDSETS=""
+MDSETS="kern-GENERIC xbase xcomp xetc xfont xserver"
md_set_term() {
if [ ! -z "$TERM" ]; then
@@ -189,7 +189,7 @@ md_copy_kernel() {
}
md_welcome_banner() {
- echo "Welcome to the NetBSD/mvme68k ${VERSION} installation program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} installation program."
cat << \__welcome_banner_1
This program is designed to help you install NetBSD on your system in a simple
Index: src/distrib/sun2/miniroot/install.md
diff -u src/distrib/sun2/miniroot/install.md:1.3 src/distrib/sun2/miniroot/install.md:1.3.56.1
--- src/distrib/sun2/miniroot/install.md:1.3 Wed Apr 30 13:10:49 2008
+++ src/distrib/sun2/miniroot/install.md Sat Dec 19 19:02:52 2020
@@ -1,4 +1,4 @@
-# $NetBSD: install.md,v 1.3 2008/04/30 13:10:49 martin Exp $
+# $NetBSD: install.md,v 1.3.56.1 2020/12/19 19:02:52 martin Exp $
#
#
# Copyright (c) 1996 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
# Machine-dependent install sets
# MDSETS="xbin xman xinc xcon" XXX
-MDSETS=""
+MDSETS="kern-GENERIC"
md_set_term() {
if [ ! -z "$TERM" ]; then
@@ -159,7 +159,7 @@ md_copy_kernel() {
md_welcome_banner() {
if [ "$MODE" = "install" ]; then
echo ""
- echo "Welcome to the NetBSD/sun2 ${VERSION} installation program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} installation program."
cat << \__welcome_banner_1
This program is designed to help you put NetBSD on your disk,
@@ -170,7 +170,7 @@ __welcome_banner_1
else
echo ""
- echo "Welcome to the NetBSD/sun2 ${VERSION} upgrade program."
+ echo "Welcome to the NetBSD/${MACHINE} ${VERSION} upgrade program."
cat << \__welcome_banner_2
This program is designed to help you upgrade your NetBSD system in a
Index: src/distrib/sun3/miniroot/install.md
diff -u src/distrib/sun3/miniroot/install.md:1.3 src/distrib/sun3/miniroot/install.md:1.3.56.1
--- src/distrib/sun3/miniroot/install.md:1.3 Wed Apr 30 13:10:49 2008
+++ src/distrib/sun3/miniroot/install.md Sat Dec 19 19:02:52 2020
@@ -1,4 +1,4 @@
-# $NetBSD: install.md,v 1.3 2008/04/30 13:10:49 martin Exp $
+# $NetBSD: install.md,v 1.3.56.1 2020/12/19 19:02:52 martin Exp $
#
#
# Copyright (c) 1996 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
# Machine-dependent install sets
# MDSETS="xbin xman xinc xcon" XXX
-MDSETS=""
+MDSETS="kern-GENERIC kern-GENERIC3X xbase xcomp xetc xfont xserver"
md_set_term() {
if [ ! -z "$TERM" ]; then
@@ -159,7 +159,7 @@ md_copy_kernel() {
md_welcome_banner() {
if [ "$MODE" = "install" ]; then
echo ""
- echo "Welcome to the NetBSD/sun3 ${VERSION} installation program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} installation program."
cat << \__welcome_banner_1
This program is designed to help you put NetBSD on your disk,
@@ -170,7 +170,7 @@ __welcome_banner_1
else
echo ""
- echo "Welcome to the NetBSD/sun3 ${VERSION} upgrade program."
+ echo "Welcome to the NetBSD/${MACHINE} ${RELEASE} upgrade program."
cat << \__welcome_banner_2
This program is designed to help you upgrade your NetBSD system in a