Add amiga md parts of the miniroot stuff
authorniklas <niklas@openbsd.org>
Sat, 3 May 1997 22:27:09 +0000 (22:27 +0000)
committerniklas <niklas@openbsd.org>
Sat, 3 May 1997 22:27:09 +0000 (22:27 +0000)
distrib/amiga/install.md [new file with mode: 0644]
distrib/amiga/miniroot/Makefile.inc [new file with mode: 0644]
distrib/amiga/miniroot/dot.profile [new file with mode: 0644]
distrib/amiga/miniroot/list [new file with mode: 0644]

diff --git a/distrib/amiga/install.md b/distrib/amiga/install.md
new file mode 100644 (file)
index 0000000..bd66dfe
--- /dev/null
@@ -0,0 +1,218 @@
+#      $OpenBSD: install.md,v 1.1 1997/05/03 22:27:09 niklas Exp $
+#      $NetBSD: install.md,v 1.3.2.5 1996/08/26 15:45:28 gwr Exp $
+#
+#
+# Copyright (c) 1996 The NetBSD Foundation, Inc.
+# All rights reserved.
+#
+# This code is derived from software contributed to The NetBSD Foundation
+# by Jason R. Thorpe.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in the
+#    documentation and/or other materials provided with the distribution.
+# 3. All advertising materials mentioning features or use of this software
+#    must display the following acknowledgement:
+#        This product includes software developed by the NetBSD
+#        Foundation, Inc. and its contributors.
+# 4. Neither the name of The NetBSD Foundation nor the names of its
+#    contributors may be used to endorse or promote products derived
+#    from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
+# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+
+#
+# machine dependent section of installation/upgrade script.
+#
+
+# Machine-dependent install sets
+MDSETS="xbin xman xinc xcon"
+
+md_set_term() {
+       if [ ! -z "$TERM" ]; then
+               return
+       fi
+       echo -n "Specify terminal type [vt220]: "
+       getresp "vt220"
+       TERM="$resp"
+       export TERM
+}
+
+md_makerootwritable() {
+       # Was: do_mfs_mount "/tmp" "2048"
+       # /tmp is the mount point
+       # 2048 is the size in DEV_BIZE blocks
+
+       umount /tmp > /dev/null 2>&1
+       if ! mount_mfs -s 2048 swap /tmp ; then
+               cat << \__mfs_failed_1
+
+FATAL ERROR: Can't mount the memory filesystem.
+
+__mfs_failed_1
+               exit
+       fi
+
+       # Bleh.  Give mount_mfs a chance to DTRT.
+       sleep 2
+}
+
+md_get_diskdevs() {
+       # return available disk devices
+       dmesg | egrep "^[sw]d[0-9] " | cut -d" " -f1 | sort -u
+}
+
+md_get_cddevs() {
+       # return available CDROM devices
+       dmesg | grep "^a?cd[0-9] " | cut -d" " -f1 | sort -u
+}
+
+md_get_ifdevs() {
+       # return available network devices
+       dmesg | egrep "(^[al]e[0-9] |^(isa)?ed[0-9] |^qn[0-9] |^bah[0-9] |^es[0-9] )" | cut -d" " -f1 | sort -u
+}
+
+md_get_partition_range() {
+    # return range of valid partition letters
+    echo "[a-p]"
+}
+
+md_installboot() {
+#      echo "Installing boot block..."
+}
+
+md_native_fstype() {
+}
+
+md_native_fsopts() {
+}
+
+md_checkfordisklabel() {
+       # $1 is the disk to check
+       local rval
+
+       disklabel $1 > /dev/null 2> /tmp/checkfordisklabel
+       if grep "no disk label" /tmp/checkfordisklabel; then
+               rval=1
+       elif grep "disk label corrupted" /tmp/checkfordisklabel; then
+               rval=2
+       else
+               rval=0
+       fi
+
+       rm -f /tmp/checkfordisklabel
+       return $rval
+}
+
+md_prep_disklabel()
+{
+       local _disk
+
+       _disk=$1
+       md_checkfordisklabel $_disk
+       case $? in
+       0)
+               ;;
+       1)
+               echo "ERROR: Disk $_disk is not partitioned, read the"
+               echo "preparation document on how to go about doing this."
+               ;;
+       2)
+               echo "WARNING: Label on disk $_disk is corrupted.  Maybe"
+               echo "you should interrupt the install process and recheck"
+               echo "your disk partitioning in AmigaOS?""
+               ;;
+       esac
+}
+
+md_copy_kernel() {
+       echo -n "Copying kernel..."
+       cp -p /bsd /mnt/bsd
+       echo "done."
+}
+
+md_welcome_banner() {
+{
+       if [ "$MODE" = "install" ]; then
+               echo ""
+               echo "Welcome to the OpenBSD/amiga ${VERSION} installation program."
+               cat << \__welcome_banner_1
+
+This program is designed to help you put OpenBSD on your disk,
+in a simple and rational way.  You'll be asked several questions,
+and it would probably be useful to have your disk's hardware
+manual, the installation notes, and a calculator handy.
+__welcome_banner_1
+
+       else
+               echo ""
+               echo "Welcome to the OpenBSD/amiga ${VERSION} upgrade program."
+               cat << \__welcome_banner_2
+
+This program is designed to help you upgrade your OpenBSD system in a
+simple and rational way.
+
+As a reminder, installing the `etc' binary set is NOT recommended.
+Once the rest of your system has been upgraded, you should manually
+merge any changes to files in the `etc' set into those files which
+already exist on your system.
+__welcome_banner_2
+       fi
+
+cat << \__welcome_banner_3
+
+As with anything which modifies your disk's contents, this
+program can cause SIGNIFICANT data loss, and you are advised
+to make sure your data is backed up before beginning the
+installation process.
+
+Default answers are displayed in brackets after the questions.
+You can hit Control-C at any time to quit, but if you do so at a
+prompt, you may have to hit return.  Also, quitting in the middle of
+installation may leave your system in an inconsistent state.
+
+__welcome_banner_3
+} | more
+}
+
+md_not_going_to_install() {
+       cat << \__not_going_to_install_1
+
+OK, then.  Enter `halt' at the prompt to halt the machine.  Once the
+machine has halted, power-cycle the system and you'll get back to AmigaOS.
+
+__not_going_to_install_1
+}
+
+md_congrats() {
+       local what;
+       if [ "$MODE" = "install" ]; then
+               what="installed";
+       else
+               what="upgraded";
+       fi
+       cat << __congratulations_1
+
+CONGRATULATIONS!  You have successfully $what OpenBSD!
+To boot the installed system, enter halt at the command prompt. Once the
+system has halted, reset the machine, enter AmigaOS and boot via loadbsd
+without the -b flag, per the install document.
+
+__congratulations_1
+}
diff --git a/distrib/amiga/miniroot/Makefile.inc b/distrib/amiga/miniroot/Makefile.inc
new file mode 100644 (file)
index 0000000..53d702b
--- /dev/null
@@ -0,0 +1,4 @@
+#      $OpenBSD: Makefile.inc,v 1.1 1997/05/03 22:27:10 niklas Exp $
+
+NEWFSOPTS=             -i 2048
+NEWFS_WILL_FAIL=       true
diff --git a/distrib/amiga/miniroot/dot.profile b/distrib/amiga/miniroot/dot.profile
new file mode 100644 (file)
index 0000000..bfe193c
--- /dev/null
@@ -0,0 +1,102 @@
+#      $OpenBSD: dot.profile,v 1.1 1997/05/03 22:27:10 niklas Exp $
+#      $NetBSD: dot.profile,v 1.1 1995/12/18 22:54:43 pk Exp $
+#
+# Copyright (c) 1995 Jason R. Thorpe
+# Copyright (c) 1994 Christopher G. Demetriou
+# All rights reserved.
+# 
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in the
+#    documentation and/or other materials provided with the distribution.
+# 3. All advertising materials mentioning features or use of this software
+#    must display the following acknowledgement:
+#      This product includes software developed by Christopher G. Demetriou.
+# 4. The name of the author may not be used to endorse or promote products
+#    derived from this software without specific prior written permission
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+
+PATH=/sbin:/bin:/usr/bin:/usr/sbin:/
+export PATH
+
+TERM=vt220
+export TERM
+
+umask 022
+
+if [ "X${DONEPROFILE}" = "X" ]; then
+       DONEPROFILE=YES
+
+       # set up some sane defaults
+       echo 'erase ^H, werase ^W, kill ^U, intr ^C'
+       stty newcrt werase ^W intr ^C kill ^U erase ^H 9600
+
+       # get the terminal type
+       _forceloop=""
+       while [ "X${_forceloop}" = X"" ]; do
+               eval `tset -s -m ":?$TERM"`
+               if [ "X${TERM}" != X"unknown" ]; then
+                       _forceloop="done"
+               fi
+       done
+       export TERM
+
+       # get the editor preference
+       EDITOR=vi
+       _forceloop=""
+       while [ "X${_forceloop}" = X"" ]; do
+               echo -n "text editor - vi or ed? [$EDITOR] "
+               read _forceloop
+               case "$_forceloop" in
+                       vi|"")
+                               EDITOR=vi
+                               _forceloop=$EDITOR
+                               ;;
+
+                       ed)
+                               EDITOR=ed
+                               ;;
+
+                       *)
+                               echo "sorry, no $_forceloop available"
+                               _forceloop=""
+                               ;;
+               esac
+       done
+       export EDITOR
+
+       # Installing or upgrading?
+       _forceloop=""
+       while [ "X${_forceloop}" = X"" ]; do
+               echo -n '(I)nstall or (U)pgrade? '
+               read _forceloop
+               case "$_forceloop" in
+                       i*|I*)
+                               /install
+                               ;;
+
+                       u*|U*)
+                               /upgrade
+                               ;;
+
+                       *)
+                               _forceloop=""
+                               ;;
+               esac
+       done
+fi
diff --git a/distrib/amiga/miniroot/list b/distrib/amiga/miniroot/list
new file mode 100644 (file)
index 0000000..3a50a0e
--- /dev/null
@@ -0,0 +1,58 @@
+#      $OpenBSD: list,v 1.1 1997/05/03 22:27:11 niklas Exp $
+#      $NetBSD: list,v 1.2.4.2 1996/06/26 19:25:00 pk Exp $
+
+# Amiga extra's
+LINK   instbin                 sbin/disklabel
+LINK   instbin                 sbin/dmesg
+LINK   instbin                 sbin/mount_ados
+
+SYMLINK        ../../instbin           usr/bin/basename
+SYMLINK ../../instbin          usr/bin/cksum usr/bin/sum
+SYMLINK ../../instbin          usr/bin/cut
+SYMLINK ../../instbin          usr/bin/awk
+SYMLINK ../../instbin          usr/bin/getopt
+SYMLINK ../../instbin          usr/bin/grep usr/bin/egrep usr/bin/fgrep
+SYMLINK ../../instbin          usr/bin/netstat
+SYMLINK ../../instbin          usr/bin/rsh
+SYMLINK ../../instbin          usr/bin/strings
+SYMLINK ../../instbin          usr/bin/tset usr/bin/reset
+SYMLINK        ../../instbin           usr/bin/less usr/bin/more
+SYMLINK        ../../instbin           usr/sbin/installboot
+SYMLINK        ../../instbin           usr/sbin/sysctl
+
+# crunchgen source directory specials
+#CRUNCHSPECIAL installboot srcdir sys/arch/amiga/stand/installboot
+
+# Minimize use of MFS
+SYMLINK        /tmp    var/tmp
+
+# copy the MAKEDEV script and make some devices
+COPY   ${DESTDIR}/dev/MAKEDEV          dev/MAKEDEV
+COPY   ${DESTDIR}/dev/MAKEDEV.local    dev/MAKEDEV.local
+SPECIAL        cd dev; sh MAKEDEV all
+#SPECIAL       /bin/rm dev/MAKEDEV
+
+# we need the contents of /usr/mdec
+#COPYDIR       ${DESTDIR}/usr/mdec     usr/mdec
+
+# the zoneinfo
+COPYDIR        ${DESTDIR}/usr/share/zoneinfo   usr/share/zoneinfo
+
+# and the termcap file
+COPY   ${CURDIR}/../../share/termcap/termcap.src usr/share/misc/termcap
+
+# copy the kernel
+COPY   bsd     bsd
+
+# various files that we need in /etc for the install
+COPY   ${DESTDIR}/etc/disktab          etc/disktab.shadow
+SYMLINK        /tmp/disktab.shadow             etc/disktab
+SYMLINK        /tmp/fstab.shadow               etc/fstab
+SYMLINK        /tmp/resolv.conf.shadow         etc/resolv.conf
+SYMLINK        /tmp/hosts                      etc/hosts
+
+# and the installation tools
+COPY   ${ARCHDIR}/dot.profile          .profile
+COPY   ${ARCHDIR}/../install.md        install.md
+#COPY  ${DESTDIR}/usr/mdec/boot        boot
+#SPECIAL sync; ${DESTDIR}/usr/mdec/binstall -v ffs ${TARGDIR}