Revise part of r322327 in release/packages/kernel.ucl.

It appears I misunderstand process forking and signal handling in
how the pre-/post-install scripts are executed internally by pkg(8).
In some cases (not all), ^C when prompted to cancel the kernel
package update will stop the pre-install script from executing, but
allow pkg(8) to continue extracting the package when it is not the
intent.

In order to keep somewhat of an anti-footshooting measure in place,
print the recommendation to install the kernel package first if
ASSUME_ALWAYS_YES is false and TERM is set, then sleep for 5 seconds
to allow the user to see the message.

MFC after:	5 days
MFC with:	r322327
X-MFC-Note:	Maybe not until I am happy with this..
Sponsored by:	The FreeBSD Foundation
This commit is contained in:
gjb 2017-08-10 12:30:34 +00:00
parent 6ed9ba8376
commit 6886726d7a

View File

@ -25,6 +25,9 @@ scripts: {
continue
;;
esac
if [ -z "${TERM}" ]; then
exit 0
fi
echo "****************************************************************"
echo "It is recommended to install the FreeBSD-%PKGNAME% package"
echo "with:"
@ -37,16 +40,7 @@ scripts: {
echo " pkg upgrade"
echo
echo "****************************************************************"
echo
echo "Do you want to continue anyway?"
echo "[Enter] to continue, ^C to cancel."
echo
read ANSWER
case ${ANSWER} in
*)
continue
;;
esac
sleep 5
EOD
post-install = <<EOD