=================================================================== RCS file: /cvs/openbsd/update_openbsd/update_openbsd,v retrieving revision 1.21 retrieving revision 1.25 diff -u -r1.21 -r1.25 --- openbsd/update_openbsd/update_openbsd 2009/05/13 05:26:32 1.21 +++ openbsd/update_openbsd/update_openbsd 2009/06/13 17:34:46 1.25 @@ -1,5 +1,5 @@ #!/bin/sh -# $RedRiver: update_openbsd,v 1.20 2009/04/25 00:14:12 andrew Exp $ +# $RedRiver: update_openbsd,v 1.24 2009/05/29 21:47:37 andrew Exp $ installed_sets() { local misc=/usr/share/doc/README @@ -24,7 +24,7 @@ fi done - sendmail -d0.1 root < /dev/null | grep -q SASL + sendmail -d0.1 -bt < /dev/null | grep -q SASL if [ $? == 0 ]; then echo -n ' sendmail-smtp_auth' fi @@ -191,6 +191,18 @@ done } +follow_symlink () { + local _file=$1 + local _next=$( file $_file | + grep 'symbolic link' | + sed -e s/^.*\\\`// -e s/\\\'\$// ) + if [ -h $_next ]; then + follow_symlink $_next + else + echo $_next + fi +} + check_sum () { local _type=$1 echo "### CHECKING $_type SUMS ###" @@ -291,9 +303,11 @@ exit 1 fi + local _true_bsd=`follow_symlink /bsd` + local _installed_new_bsd + for _b in bsd*; do $SUDO rm -f /nbsd - if [ X"${_b}" == X"bsd" ]; then echo Copying bsd to /bsd.sp $SUDO cp bsd /nbsd && $SUDO mv /nbsd /bsd.sp @@ -301,6 +315,9 @@ echo ERROR: Could not copy new SP kernel! >&2 exit 1 fi + if [ X"${_true_bsd}" == X"/bsd.sp" ]; then + _installed_new_bsd=1 + fi else if [ -e /$_b ]; then echo Copying $_b to / @@ -309,6 +326,9 @@ echo ERROR: Could not copy new $_b kernel! >&2 exit 1 fi + if [ X"${_true_bsd}" == X"${_b}" ]; then + _installed_new_bsd=1 + fi fi fi done @@ -326,6 +346,10 @@ exit 1 fi fi + + if [ -z $_installed_new_bsd ]; then + echo WARNING: Did not replace $_true_bsd kernel >&2 + fi } install_sets() { @@ -516,3 +540,6 @@ fi echo New kernel installed. Please reboot! +if [ -e /sbin/oreboot ]; then + echo Possibly using /sbin/oreboot +fi