If firstboot_pkgs installs a package which contains an rc.d script,

request a reboot so that any newly-installed daemons will be launched.
This commit is contained in:
cperciva
2013-12-08 05:34:43 +00:00
parent f7cc8682fd
commit ca8891755f
3 changed files with 15 additions and 2 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
# $FreeBSD$
PORTNAME= firstboot-pkgs
PORTVERSION= 1.0
PORTVERSION= 1.1
CATEGORIES= sysutils
MASTER_SITES= # none
DISTFILES= # none
@@ -27,6 +27,9 @@ stop_cmd=":"
firstboot_pkgs_run()
{
# Count rc.d scripts
nscriptso=`ls /usr/local/etc/rc.d | wc -l`
# Bootstrap if necessary
if ! pkg -N 2>/dev/null; then
env ASSUME_ALWAYS_YES=YES pkg bootstrap
@@ -36,6 +39,15 @@ firstboot_pkgs_run()
if ! [ -z "$firstboot_pkgs_list" ]; then
env ASSUME_ALWAYS_YES=YES pkg install $firstboot_pkgs_list
fi
# Count rc.d scripts again
nscriptsn=`ls /usr/local/etc/rc.d | wc -l`
# If we have more scripts, request a reboot
if [ $nscriptso -ne $nscriptso ]; then
echo "Requesting reboot after installing packages with rc.d scripts."
touch ${firstboot_sentinel}-reboot
fi
}
load_rc_config $name
+2 -1
View File
@@ -1,6 +1,7 @@
When the system first boots, install the pkg(8) tools (if not already
installed) and packages listed in the $firstboot_pkgs_list rc.conf
variable.
variable. If the installed packages added new rc.d scripts, request
a reboot.
Obviously, this port is not useful after a system is already running; it is
intended to be included as part of the installation or disk image building