From d962635e52cc8f11764c7cde6a4ab073842ac72c Mon Sep 17 00:00:00 2001 From: Ted Trask Date: Fri, 17 Jul 2009 11:24:47 +0000 Subject: Fixed package upgrade to not add as top-level package. Bumped to 0.3.1 --- apk-model.lua | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'apk-model.lua') diff --git a/apk-model.lua b/apk-model.lua index 3898b30..31ef54c 100644 --- a/apk-model.lua +++ b/apk-model.lua @@ -134,8 +134,10 @@ get_loaded_packages = function() temp.name = name temp.version = value.installed temp.description = value.comment + if value.version and value.version > value.installed then + temp.upgrade = true + end if toplevel[name] then - temp.upgrade = upgrade_available(name) top.value[#top.value+1] = temp else depend.value[#depend.value+1] = temp @@ -152,7 +154,7 @@ get_available_packages = function() -- available are all except same version installed local available = cfe({ type="list", value={}, label="Available Packages" }) for name,value in pairs(repo) do - if value.version ~= value.installed then + if value.version and value.version ~= value.installed then local temp = {} temp.name = name temp.version = value.version @@ -187,7 +189,12 @@ install_package = function(package,sessiondata) end upgrade_package = function(package) - return cfe({ value=run_apk_cmd("add -u "..package), label="Result of Package Upgrade" }) + -- Jump through hoops to upgrade package without making top level + local retval = run_apk_cmd("add -t temp -u "..package) + run_apk_cmd("del temp") + retval = string.gsub(retval, "Installing temp [^\n]+\n", "") + return cfe({ value=retval, label="Result of Package Upgrade" }) +-- return cfe({ value=run_apk_cmd("add -u "..package), label="Result of Package Upgrade" }) end update_all = function() -- cgit v1.2.3