don't need to rebuild ota installed package if it's detected

pull/990/head
chrox 10 years ago
parent 3554bdd2c4
commit 46963df0bb

@ -1,6 +1,7 @@
local InfoMessage = require("ui/widget/infomessage") local InfoMessage = require("ui/widget/infomessage")
local ConfirmBox = require("ui/widget/confirmbox") local ConfirmBox = require("ui/widget/confirmbox")
local NetworkMgr = require("ui/networkmgr") local NetworkMgr = require("ui/networkmgr")
local lfs = require("libs/libkoreader-lfs")
local UIManager = require("ui/uimanager") local UIManager = require("ui/uimanager")
local Device = require("ui/device") local Device = require("ui/device")
local DEBUG = require("dbg") local DEBUG = require("dbg")
@ -128,6 +129,11 @@ function OTAManager:fetchAndProcessUpdate()
end end
function OTAManager:_buildLocalPackage() function OTAManager:_buildLocalPackage()
-- TODO: validate the installed package?
local installed_package = lfs.currentdir() .. "/" .. self.installed_package
if lfs.attributes(installed_package, "mode") == "file" then
return 0
end
return os.execute(string.format( return os.execute(string.format(
"./tar cvf %s -C .. -T %s --no-recursion", "./tar cvf %s -C .. -T %s --no-recursion",
self.installed_package, self.package_indexfile)) self.installed_package, self.package_indexfile))

@ -83,6 +83,7 @@ cd "${KOREADER_DIR}"
# Handle pending OTA update # Handle pending OTA update
NEWUPDATE="${KOREADER_DIR}/ota/koreader.updated.tar" NEWUPDATE="${KOREADER_DIR}/ota/koreader.updated.tar"
INSTALLED="${KOREADER_DIR}/ota/koreader.installed.tar"
if [ -f "${NEWUPDATE}" ] ; then if [ -f "${NEWUPDATE}" ] ; then
logmsg "Updating koreader . . ." logmsg "Updating koreader . . ."
# Look for our own GNU tar build to do a fancy progress tracking... # Look for our own GNU tar build to do a fancy progress tracking...
@ -98,7 +99,7 @@ if [ -f "${NEWUPDATE}" ] ; then
fi fi
# Cleanup behind us... # Cleanup behind us...
if [ $? -eq 0 ] ; then if [ $? -eq 0 ] ; then
rm "${NEWUPDATE}" mv "${NEWUPDATE}" "${INSTALLED}"
logmsg "Update sucessful :)" logmsg "Update sucessful :)"
eips_print_bottom_centered "Update successful :)" 1 eips_print_bottom_centered "Update successful :)" 1
else else

@ -5,10 +5,11 @@ export LC_ALL="en_US.UTF-8"
KOREADER_DIR=/mnt/onboard/.kobo/koreader KOREADER_DIR=/mnt/onboard/.kobo/koreader
# update to new version from OTA directory # update to new version from OTA directory
NEWUPDATE=${KOREADER_DIR}/ota/koreader.updated.tar NEWUPDATE="${KOREADER_DIR}/ota/koreader.updated.tar"
INSTALLED="${KOREADER_DIR}/ota/koreader.installed.tar"
if [ -f $NEWUPDATE ]; then if [ -f $NEWUPDATE ]; then
# TODO: any graphic indication for the updating progress? # TODO: any graphic indication for the updating progress?
cd /mnt/onboard/.kobo && tar xf $NEWUPDATE && rm $NEWUPDATE cd /mnt/onboard/.kobo && tar xf $NEWUPDATE && mv $NEWUPDATE $INSTALLED
fi fi
# we're always starting from our working directory # we're always starting from our working directory

Loading…
Cancel
Save