Home | History | Annotate | Line # | Download | only in script-installer
      1 # $NetBSD: dot.commonutils,v 1.8 2022/08/28 12:44:01 tsutsui Exp $
      2 #
      3 # Copyright (c) 1994 Christopher G. Demetriou
      4 # All rights reserved.
      5 # 
      6 # Redistribution and use in source and binary forms, with or without
      7 # modification, are permitted provided that the following conditions
      8 # are met:
      9 # 1. Redistributions of source code must retain the above copyright
     10 #    notice, this list of conditions and the following disclaimer.
     11 # 2. Redistributions in binary form must reproduce the above copyright
     12 #    notice, this list of conditions and the following disclaimer in the
     13 #    documentation and/or other materials provided with the distribution.
     14 # 3. All advertising materials mentioning features or use of this software
     15 #    must display the following acknowledgement:
     16 #          This product includes software developed for the
     17 #          NetBSD Project.  See http://www.NetBSD.org/ for
     18 #          information about NetBSD.
     19 # 4. The name of the author may not be used to endorse or promote products
     20 #    derived from this software without specific prior written permission.
     21 # 
     22 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     23 # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     24 # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     25 # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     26 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
     27 # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     28 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     29 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     30 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
     31 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     32 # 
     33 # <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
     34 
     35 # Installation utilites (functions), to get NetBSD installed on
     36 # the hard disk.  These are meant to be invoked from the shell prompt,
     37 # by people installing NetBSD.
     38 
     39 # we know that /etc/fstab is only generated on the hard drive
     40 dest_dir=/
     41 if [ ! -f /etc/fstab ]; then
     42 	dest_dir=/mnt/
     43 fi
     44 
     45 # counter for possible shared library confusion
     46 PAX=/bin/pax
     47 GUNZIP=/usr/bin/gunzip
     48 
     49 Set_tmp_dir()
     50 {
     51 	def_tmp_dir=`pwd`
     52 	if [ "$def_tmp_dir" = "/" ] || [ "$def_tmp_dir" = "/mnt" ]; then
     53 		def_tmp_dir="$dest_dir"usr/distrib
     54 	fi
     55 
     56 	echo -n	"What directory should be used to find and/or store "
     57 	echo	"installtion"
     58 	echo -n	"files such as base.tgz and kern.tgz? [$def_tmp_dir] "
     59 	read tmp_dir
     60 	if [ "$tmp_dir" = "" ]; then
     61 		tmp_dir=$def_tmp_dir
     62 	fi
     63 	if [ ! -d "$tmp_dir" ]; then
     64 		/bin/rm -rf $tmp_dir
     65 		mkdir -p $tmp_dir
     66 	fi
     67 }
     68 
     69 Tmp_dir()
     70 {
     71 	if [ "$tmp_dir" = "" ]; then
     72 		Set_tmp_dir
     73 	fi
     74 	cd $tmp_dir
     75 }
     76 
     77 Load_fd()
     78 {
     79 	Tmp_dir
     80 	which=
     81 #	echo "Don't forget that you can't load from the drive you booted from."
     82 	echo ""
     83 
     84 	while [ "$which" != "0" ] && [ "$which" != "1" ]; do
     85 		echo -n	"Read from which floppy drive ('0' or '1')? [0] "
     86 		read which
     87 		if [ "X$which" = "X" ]; then
     88 			which=0
     89 		fi
     90 	done
     91 	echo	""
     92 	echo	"WARNING: during the floppy loading process, you should only"
     93 	echo	"use Control-C at the prompt."
     94 	echo	""
     95 	while echo -n \
     96 	    "Insert floppy (hit Control-C to terminate, enter to load): "
     97 	do
     98 		read foo
     99 		mount -r -t msdos /dev/fd${which}a /mnt2
    100 		cp -rp /mnt2/* .
    101 		umount /mnt2
    102 	done
    103 }
    104 
    105 Load_tape()
    106 {
    107 	Tmp_dir
    108 	echo -n	"Which tape drive will you be using? [rst0] "
    109 	read which
    110 	if [ "X$which" = "X" ]; then
    111 		which=rst0
    112 	fi
    113 	echo -n "Insert the tape into the tape drive and hit return to "
    114 	echo -n "continue..."
    115 	read foo
    116 	echo	"Extracting files from the tape..."
    117 	$PAX -rvpe -f /dev/$which
    118 	echo	"Done."
    119 }
    120 
    121 Extract()
    122 {
    123 	Tmp_dir
    124 	echo -n "Would you like to list the files as they're extracted? [n] "
    125 	read verbose
    126 	case $verbose in
    127 	y*|Y*)
    128 		tarverbose=-v
    129 		;;
    130 	*)
    131 		tarverbose=
    132 		;;
    133 	esac
    134 	cat "$1"* | $GUNZIP | (cd $dest_dir ; $PAX -rpe $tarverbose )
    135 }
    136