summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xetc/rc.bootup4
-rwxr-xr-xusr/local/www/fbegin.inc5
-rwxr-xr-xusr/local/www/pkg_mgr.php13
-rwxr-xr-xusr/local/www/pkg_mgr_installed.php13
4 files changed, 33 insertions, 2 deletions
diff --git a/etc/rc.bootup b/etc/rc.bootup
index ab4a5b5..3451c88 100755
--- a/etc/rc.bootup
+++ b/etc/rc.bootup
@@ -385,9 +385,9 @@ if(file_exists('/conf/needs_package_sync')) {
if($config['installedpackages'] <> '' && is_array($config['installedpackages']['package'])) {
require_once("pkg-utils.inc");
if($g['platform'] == "pfSense" || $g['platform'] == "nanobsd") {
- mark_subsystem_dirty('firmwarelock');
+ mark_subsystem_dirty('packagelock');
pkg_reinstall_all();
- clear_subsystem_dirty('firmwarelock');
+ clear_subsystem_dirty('packagelock');
}
}
}
diff --git a/usr/local/www/fbegin.inc b/usr/local/www/fbegin.inc
index b290899..6efb7a6 100755
--- a/usr/local/www/fbegin.inc
+++ b/usr/local/www/fbegin.inc
@@ -425,5 +425,10 @@ function add_to_menu($url, $name) {
<br />
<?php
+/* if upgrade in progress, alert user */
+if(is_subsystem_dirty('packagelock')) {
+ $pgtitle = array(gettext("System"),gettext("Package Manager"));
+ print_info_box(gettext("Packages are currently being reinstalled in the background.<p>Do not make changes in the GUI until this is complete.") . "<p><img src='/themes/{$g['theme']}/images/icons/icon_fw-update.gif'>");
+}
$pgtitle_output = true;
?>
diff --git a/usr/local/www/pkg_mgr.php b/usr/local/www/pkg_mgr.php
index 3c1ba89..15097a6 100755
--- a/usr/local/www/pkg_mgr.php
+++ b/usr/local/www/pkg_mgr.php
@@ -44,6 +44,19 @@ require_once("globals.inc");
require_once("guiconfig.inc");
require_once("pkg-utils.inc");
+/* if upgrade in progress, alert user */
+if(is_subsystem_dirty('packagelock')) {
+ $pgtitle = array(gettext("System"),gettext("Package Manager"));
+ include("head.inc");
+ echo "<body link=\"#0000CC\" vlink=\"#0000CC\" alink=\"#0000CC\">\n";
+ include("fbegin.inc");
+ echo "Please wait while packages are reinstalled in the background.";
+ include("fend.inc");
+ echo "</body>";
+ echo "</html>";
+ exit;
+}
+
$pkg_info = get_pkg_info('all', array("noembedded", "name", "category", "website", "version", "status", "descr", "maintainer", "required_version", "maximum_version", "pkginfolink", "supportedbybsdperimeter"));
if($pkg_info) {
$fout = fopen("{$g['tmp_path']}/pkg_info.cache", "w");
diff --git a/usr/local/www/pkg_mgr_installed.php b/usr/local/www/pkg_mgr_installed.php
index 48c9677..02fb8d3 100755
--- a/usr/local/www/pkg_mgr_installed.php
+++ b/usr/local/www/pkg_mgr_installed.php
@@ -40,6 +40,19 @@
require_once("guiconfig.inc");
require_once("pkg-utils.inc");
+/* if upgrade in progress, alert user */
+if(is_subsystem_dirty('packagelock')) {
+ $pgtitle = array(gettext("System"),gettext("Package Manager"));
+ include("head.inc");
+ echo "<body link=\"#0000CC\" vlink=\"#0000CC\" alink=\"#0000CC\">\n";
+ include("fbegin.inc");
+ echo "Please wait while packages are reinstalled in the background.";
+ include("fend.inc");
+ echo "</body>";
+ echo "</html>";
+ exit;
+}
+
if(is_array($config['installedpackages']['package'])) {
foreach($config['installedpackages']['package'] as $instpkg) {
$tocheck[] = $instpkg['name'];
OpenPOWER on IntegriCloud