diff options
author | Kenneth R Westerback <krw@cvs.openbsd.org> | 2009-04-10 23:11:18 +0000 |
---|---|---|
committer | Kenneth R Westerback <krw@cvs.openbsd.org> | 2009-04-10 23:11:18 +0000 |
commit | 664b5db5ab97bf86e785bf264ffbb25ce4e39488 (patch) | |
tree | b4add2cf99648fb8a6bbcb784ad539ea86cff3b0 /distrib/mac68k/ramdisk/install.md | |
parent | 02f596d16fd8670c56e195ef0393b82a09b3e9dc (diff) |
Where appropriate display the auto-allocation layout of the root
disk and ask if the installee wants to use it, edit it, or create
their own custom disklabel. Most one-disk installs will not need
to see fdisk or disklabel.
i386 and macppc by me, adapted for others by deraadt@.
ok deraadt@
Diffstat (limited to 'distrib/mac68k/ramdisk/install.md')
-rw-r--r-- | distrib/mac68k/ramdisk/install.md | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/distrib/mac68k/ramdisk/install.md b/distrib/mac68k/ramdisk/install.md index d756fe6011f..232cdd95442 100644 --- a/distrib/mac68k/ramdisk/install.md +++ b/distrib/mac68k/ramdisk/install.md @@ -1,4 +1,4 @@ -# $OpenBSD: install.md,v 1.29 2008/06/26 05:42:03 ray Exp $ +# $OpenBSD: install.md,v 1.30 2009/04/10 23:11:17 krw Exp $ # # Copyright (c) 2002, Miodrag Vallat. # All rights reserved. @@ -63,22 +63,41 @@ md_installboot() { } md_prep_disklabel() { - local _disk=$1 - + local _disk=$1 _f _op + + disklabel -W $_disk >/dev/null 2>&1 if [[ -n $(disklabel -c $_disk 2>/dev/null | grep ' HFS ') ]]; then cat <<__EOT This disk has been setup under MacOS. You will now edit a MacOS partition table. Be careful not to remove the MacOS partitions in use. __EOT pdisk /dev/${_disk}c - else - cat <<__EOT + return + fi + + cat <<__EOT This disk is not shared with MacOS. You will now edit a regular OpenBSD disklabel. __EOT - disklabel -W $_disk >/dev/null 2>&1 - disklabel -f /tmp/fstab.$_disk -E $_disk fi + + _f=/tmp/fstab.$_disk + if [[ $_disk == $ROOTDISK ]]; then + while :; do + echo "The auto-allocated layout for $_disk is:" + disklabel -f $_f -p g -A $_disk | egrep "^#|^ [a-p]:" + ask "Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout?" a + case $resp in + a*|A*) _op=-w ; AUTOROOT=y ;; + e*|E*) _op=-E ;; + c*|C*) break ;; + *) continue ;; + esac + disklabel -f $_f $_op -A $_disk + return + done + fi + disklabel -f $_f -E $_disk } md_congrats() { |