diff options
author | David Wood <david@wood2.org.uk> | 2015-12-31 13:46:50 +0000 |
---|---|---|
committer | David Wood <david@wood2.org.uk> | 2015-12-31 13:46:50 +0000 |
commit | 60e15be211c5de855ab3d9746c78eb7296c50cde (patch) | |
tree | 862af8eaa4a8ba95af792b3c98c484e33f2bc2ca /src/etc/rc.bootup | |
parent | 2e4cad90499f968474c4eca0852f352f1526b617 (diff) | |
parent | 8dccfb20643cfda6b55429177410e6c66fcf0bbd (diff) | |
download | pfsense-60e15be211c5de855ab3d9746c78eb7296c50cde.zip pfsense-60e15be211c5de855ab3d9746c78eb7296c50cde.tar.gz |
Merge remote-tracking branch 'upstream/master' into rfc4638, fix conflict with c399d0d
Diffstat (limited to 'src/etc/rc.bootup')
-rwxr-xr-x | src/etc/rc.bootup | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/src/etc/rc.bootup b/src/etc/rc.bootup index e4a83f1..b7c3afb 100755 --- a/src/etc/rc.bootup +++ b/src/etc/rc.bootup @@ -132,6 +132,18 @@ if (file_exists("/root/firmware.tgz")) { unlink("/root/firmware.tgz"); } +/* Reinstall of packages after reboot has been requested */ +if (file_exists('/conf/needs_package_sync_after_reboot')) { + touch('/conf/needs_package_sync'); + @unlink('/conf/needs_package_sync_after_reboot'); +} + +/* Triggering of the initial setup wizard after reboot has been requested */ +if (file_exists('/conf/trigger_initial_wizard_after_reboot')) { + touch('/conf/trigger_initial_wizard'); + @unlink('/conf/trigger_initial_wizard_after_reboot'); +} + /* start devd (dhclient now uses it) */ echo "Starting device manager (devd)..."; mute_kernel_msgs(); @@ -152,6 +164,10 @@ echo "done.\n"; /* run any early shell commands specified in config.xml */ system_do_shell_commands(1); +if (file_exists("/conf/trigger_initial_wizard")) { + check_for_alternate_interfaces(); +} + /* * Determine if we need to throw a interface exception * and ask the user to reassign interfaces. This will @@ -393,16 +409,14 @@ if (file_exists("/sbin/shutdown.old")) { } /* Resync / Reinstall packages if need be */ -if (file_exists('/conf/needs_package_sync')) { - if ($config['installedpackages'] <> '' && is_array($config['installedpackages']['package'])) { - require_once("pkg-utils.inc"); - if ($g['platform'] == $g['product_name'] || $g['platform'] == "nanobsd") { - mark_subsystem_dirty('packagelock'); - pkg_reinstall_all(); - clear_subsystem_dirty('packagelock'); - } +if (file_exists('/conf/needs_package_sync') && + ($g['platform'] == $g['product_name'] || $g['platform'] == "nanobsd")) { + require_once("pkg-utils.inc"); + mark_subsystem_dirty('packagelock'); + if (package_reinstall_all()) { + @unlink('/conf/needs_package_sync'); } - @unlink('/conf/needs_package_sync'); + clear_subsystem_dirty('packagelock'); } /* Give syslogd a kick after everything else has been initialized, otherwise it can occasionally |