run-postinsts: Print message before running deferred postinst scripts

Opkg can defer running postinst scripts to first boot, which can take
a while on some systems. The output of `opkg configure` (or whatever pm
is used) is redirected to a file when logging is enabled
(I.e. $POSTINST_LOGGING == 1), making the machine appear hung during
this process. This change simply prints a wait message on the console
to inform the user of this potentially long and silent operation so
that they do not mistakenly reboot their machine.

Why not simply `tee` the output instead?
Tee might be provided by BusyBox in some distros, which may need to run
update-alternatives in the very postinst scripts being executed by this
process. It's therefore not safe to assume Tee (or any other packaged
util) is available until the configure process finishes.

(From OE-Core rev: 3f8f1d8e4b129e5dfdd63d450887320aa0e33228)

Signed-off-by: Haris Okanovic <haris.okanovic@ni.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Haris Okanovic 2016-12-05 15:48:18 -06:00 committed by Richard Purdie
parent 595f36bea8
commit e3537163a6
1 changed files with 3 additions and 0 deletions

View File

@ -48,6 +48,9 @@ if [ -z "$pi_dir" ]; then
exit 0
fi
echo "Configuring packages on first boot...."
echo " (This may take several minutes. Please do not power off the machine.)"
[ -e #SYSCONFDIR#/default/postinst ] && . #SYSCONFDIR#/default/postinst
if [ "$POSTINST_LOGGING" = "1" ]; then