version 1.47, 2012/12/16 06:56:15 |
version 1.53, 2013/11/09 21:58:26 |
|
|
#!/bin/sh |
#!/bin/sh |
# $AFresh1: update_openbsd,v 1.46 2012/12/16 03:29:02 andrew Exp $ |
# $AFresh1: update_openbsd,v 1.52 2013/10/20 00:26:35 andrew Exp $ |
# |
# |
# Copyright (c) 2012 Andrew Fresh <andrew@afresh1.com> |
# Copyright (c) 2012 Andrew Fresh <andrew@afresh1.com> |
# |
# |
|
|
|
|
# We want to default to what we had |
# We want to default to what we had |
INSTALL_KERNELS="${BOOT_KERNEL#/}" |
INSTALL_KERNELS="${BOOT_KERNEL#/}" |
|
# if the boot kernel was our specially named bsd.sp, we install from bsd |
|
if [ X"$INSTALL_KERNELS" == X"bsd.sp" ]; then |
|
INSTALL_KERNELS="bsd" |
|
fi |
# with a second option of an mp kernel if is is a likely candidate |
# with a second option of an mp kernel if is is a likely candidate |
if [ X"$INSTALL_KERNELS" != X"bsd.mp" ]; then |
if [ X"$INSTALL_KERNELS" != X"bsd.mp" ]; then |
local _ncpu=$(sysctl -n hw.ncpufound) |
local _ncpu=$(sysctl -n hw.ncpufound) |
|
|
|
|
local _v=$FILE_VER |
local _v=$FILE_VER |
|
|
if [ $CUR_VER != $NEW_VER -a ! -e /sbin/oreboot ]; then |
|
$SUDO cp /sbin/reboot /sbin/oreboot |
|
if [ $? -ne 0 ]; then |
|
echo "Error copying old reboot command!" >&2 |
|
exit 1 |
|
fi |
|
echo "/sbin/reboot copied to /sbin/oreboot" |
|
fi |
|
|
|
local _sets=`ls *${_v}.tgz | grep -v ^base ` |
local _sets=`ls *${_v}.tgz | grep -v ^base ` |
for _f in ${_sets} base${_v}.tgz; do |
for _f in ${_sets} base${_v}.tgz; do |
_path=$DESTDIR |
_path=$DESTDIR |
|
|
done |
done |
|
|
echo Extracted all sets. |
echo Extracted all sets. |
|
} |
|
|
|
install_sendmail_smtp_auth() { |
if [ -e ${RELEASEDIR}/sendmail-smtp_auth.gz ]; then |
if [ -e ${RELEASEDIR}/sendmail-smtp_auth.gz ]; then |
gzcat ${RELEASEDIR}/sendmail-smtp_auth.gz > \ |
gzcat ${RELEASEDIR}/sendmail-smtp_auth.gz > \ |
${RELEASEDIR}/sendmail-smtp_auth |
${RELEASEDIR}/sendmail-smtp_auth |
|
|
echo "ctrl+C to cancel, enter to continue anyway" >&2 |
echo "ctrl+C to cancel, enter to continue anyway" >&2 |
local _temp |
local _temp |
read _temp |
read _temp |
|
NEW_KERNEL_VERSION=$BOOT_KERNEL_VERSION |
fi |
fi |
|
|
if [ -n "$SUDO" -a $CUR_VER != $NEW_VER ]; then |
if [ -n "$SUDO" -a $CUR_VER != $NEW_VER ]; then |
|
|
$SUDO -v -p "sudo Password: " |
$SUDO -v -p "sudo Password: " |
fi |
fi |
|
|
|
if [ X"$NEW_KERNEL_VERSION" != X"$BOOTED_KERNEL_VERSION" \ |
|
-a ! -e /sbin/oreboot ]; then |
|
$SUDO cp /sbin/reboot /sbin/oreboot |
|
if [ $? -ne 0 ]; then |
|
echo "Error copying old reboot command!" >&2 |
|
exit 1 |
|
fi |
|
echo "/sbin/reboot copied to /sbin/oreboot" |
|
fi |
|
|
install_kernels |
install_kernels |
install_sets |
install_sets |
|
|
if [ $CUR_VER == $NEW_VER ]; then |
if [ X"$NEW_KERNEL_VERSION" == X"$BOOTED_KERNEL_VERSION" ]; then |
|
install_sendmail_smtp_auth |
|
|
if [ -e /sbin/oreboot ]; then |
if [ -e /sbin/oreboot ]; then |
echo Removing /sbin/oreboot |
echo Removing /sbin/oreboot |
$SUDO rm -f /sbin/oreboot |
$SUDO rm -f /sbin/oreboot |
|
|
echo New kernel installed. Please reboot! |
echo New kernel installed. Please reboot! |
if [ -e /sbin/oreboot ]; then |
if [ -e /sbin/oreboot ]; then |
echo Possibly using /sbin/oreboot |
echo Possibly using /sbin/oreboot |
fi |
|
|
|
local _send_dmesg=`dirname $0`/send_dmesg |
|
if [ -e "$_send_dmesg" ]; then |
|
if [ -e $RELEASEDIR/.send_dmesg ]; then |
|
$_send_dmesg |
|
rm -f $RELEASEDIR/.send_dmesg |
|
elif [ X"$CUR_VER" != X"$NEW_VER" ]; then |
|
touch $RELEASEDIR/.send_dmesg |
|
fi |
|
fi |
fi |