diff options
| author | Sam Leffler <sam@FreeBSD.org> | 2006-03-08 18:03:09 +0000 |
|---|---|---|
| committer | Sam Leffler <sam@FreeBSD.org> | 2006-03-08 18:03:09 +0000 |
| commit | 5211d26f0b7b5e93e7c6bddbff93e1e7215e6493 (patch) | |
| tree | bd922b50de8085a65b00f665fedf5d86b522e286 /release/scripts | |
| parent | 9fe7600bbec57a4de3ba70f6cb9027b5182e43d2 (diff) | |
Notes
Diffstat (limited to 'release/scripts')
| -rw-r--r-- | release/scripts/kernels-install.sh | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/release/scripts/kernels-install.sh b/release/scripts/kernels-install.sh new file mode 100644 index 000000000000..47d91a7d4c6d --- /dev/null +++ b/release/scripts/kernels-install.sh @@ -0,0 +1,43 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +if [ "`id -u`" != "0" ]; then + echo "Sorry, this must be done as root." + exit 1 +fi +if [ $# -lt 1 ]; then + echo "You must specify which kernel to extract." + exit 1 +fi + +CONFIG=$1 +BOOT=${DESTDIR:-/}/boot +KERNEL=$BOOT/$CONFIG + +if [ -d $KERNEL ]; then + echo "You are about to extract the $CONFIG kernel distribution into $KERNEL - are you SURE" + echo -n "you want to do this over your installed system (y/n)? " + read ans +else + # new installation; do not prompt + ans=y +fi +if [ "$ans" = "y" ]; then + if [ -d $KERNEL ]; then + sav=$KERNEL.sav + if [ -d $sav ]; then + # XXX remove stuff w/o a prompt + echo "Removing existing $sav" + rm -rf $sav + fi + echo "Saving existing $KERNEL as $sav" + mv $KERNEL $sav + fi + # translate per Makefile:doTARBALL XXX are we sure to have tr+cut? + tn=`echo ${CONFIG} | tr 'A-Z' 'a-z' | cut -c1-8` + cat $tn.?? | tar --unlink -xpzf - -C ${DESTDIR:-/} +else + echo "Installation of $CONFIG kernel distribution not done." +fi |
