From 9877ffc89190c48d474d73c530d162f0ad77a305 Mon Sep 17 00:00:00 2001 From: kwindrem <58538395+kwindrem@users.noreply.github.com> Date: Fri, 8 Dec 2023 15:15:27 -0800 Subject: [PATCH] fixed: white/black screen on first boot after firmware update --- CommonResources | 255 ++--- DbusSettingsResources | 25 + EssentialResources | 22 + FileSets/MbDisplayPackageVersion.qml | 6 + FileSets/PageSettingsPackageEdit.qml | 2 + PackageManager.py | 77 +- ServiceResources | 5 + blindInstall/SetupHelperVersion | 2 +- changes | 5 + reinstallMods | 56 +- setup | 12 +- updateFileSets | 1 + updateFileSets (original) | 912 ------------------ ...FileSets => updateFileSets-partialFileSets | 0 venus-data.UninstallPackages.tgz | Bin 1522 -> 1523 bytes venus-data.tgz | Bin 97821 -> 90119 bytes version | 2 +- 17 files changed, 302 insertions(+), 1080 deletions(-) delete mode 100755 updateFileSets (original) rename updateFileSets-partilaFileSets => updateFileSets-partialFileSets (100%) diff --git a/CommonResources b/CommonResources index ab45060..b22aadc 100755 --- a/CommonResources +++ b/CommonResources @@ -35,12 +35,15 @@ source "$setupHelperDir/DbusSettingsResources" scriptAction='NONE' installFailed=false +installExitReason=$EXIT_SUCCESS -# flags to control setup script exit behavior +# flags to control setup script behavior rebootNeeded=false runAgain=false filesUpdated=false restartGui=false +guiV1present=true +guiV1required=true # yesNoPrompt provides user prompting requesting a yes/no response # @@ -142,6 +145,29 @@ standardActionPrompt () done } + +# setInstallFailed sets flags to prevent further install steps +# and insure the package is uninstalled completely +# +# $1 indicates the reason for the failure and will evenutally be uused +# report the failure reason when exiting the script +# +# any remaining paremeters are passed to logMessage + +setInstallFailed () +{ + installFailed=true + scriptAction='UNINSTALL' + if [ ! -z "$1" ]; then + installExitReason=$1 + fi + message="${@:2}" + if [ ! -z "$message" ]; then + logMessage "$message" + fi +} + + # backupActiveFile makes a copy of the active file in file.orig # if the original file does not exist, no backup is made # BUT sets a flag file that will cause restoreFile to delete the active copy @@ -150,6 +176,11 @@ standardActionPrompt () backupActiveFile () { + # don't do any work if install has already failed + if $installFailed ; then + return + fi + backupExisted=false baseName=$(basename $1) if [ -e "$1.orig" ] || [ -e "$1.NO_ORIG" ]; then @@ -181,35 +212,60 @@ backupActiveFile () updateActiveFile () { + # don't do any work if install has already failed + if $installFailed ; then + return + fi + thisFileUpdated=false local sourceFound=false - local baseName local sourceFile="$1" - local destinationFile + local activeFile - # separate replacement file specified + # separate source and replacement files specified if [ $# == 2 ]; then if [ -f "$sourceFile" ]; then sourceFound=true else - logMessage "ERROR: specified soure file $sourceFile does not exist - can't continue with install" - scriptAction='UNINSTALL' - installFailed=true + setInstallFailed $EXIT_FILE_SET_ERROR "ERROR: specified soure file $sourceFile does not exist - can't continue with install" return fi - destinationFile="$2" + activeFile="$2" # use active file for both source and destination else - destinationFile="$1" + activeFile="$1" fi - - # look for source in FileSets + + local baseName=$(basename "$activeFile") + + # replacement files are not be needed for some versions + # if so marked, leave original untouched + if [ -f "$fileSet/$baseName.USE_ORIGINAL" ]; then + return + fi + + local pathToFile=$(dirname "$activeFile") + if [ ! -e "$pathToFile" ]; then + # fatal if GUI v1 not present and needed for install + if [[ "$pathToFile" == "/opt/victronenergy/gui/"* ]]; then + if $guiV1required ; then + setInstallFailed $EXIT_NO_GUI_V1 "ERROR $packageName requires GUI v1 which is not on the system - can't continue" + return + # GUI v1 not needed - proceed + fi + # active file is not in GUI v1 part of file system + else + setInstallFailed $EXIT_FILE_SET_ERROR "ERROR: path to $activeFile does not exist - can't continue with install" + return + fi + fi + if ! $sourceFound ; then - baseName="$(basename "$sourceFile")" - # found in version directory + # look for source in FileSet if [ -f "$fileSet/$baseName" ]; then sourceFile="$fileSet/$baseName" sourceFound=true + # look for version-independent source elif [ -f "$pkgFileSets/$baseName" ]; then sourceFile="$pkgFileSets/$baseName" sourceFound=true @@ -217,31 +273,23 @@ updateActiveFile () fi if ! $sourceFound; then - # replacement files are not be needed for some versions - # if so marked, leave original untouched - if [ -f "$fileSet/$(basename $sourceFile).USE_ORIGINAL" ]; then - return - # if not flagged, this is a fatal error - else - logMessage "ERROR: no soure file for replacement $destinationFile - can't continue with install" - scriptAction='UNINSTALL' - installFailed=true - fi + setInstallFailed $EXIT_FILE_SET_ERROR "ERROR: no soure file for $baseName - can't continue with install" return fi + mayHaveBeenUpdated=false - backupActiveFile "$destinationFile" + backupActiveFile "$activeFile" # package may already have been installed - check to see needToUpdate=true if $mayHaveBeenUpdated ; then - cmp -s "$sourceFile" "$destinationFile" > /dev/null + cmp -s "$sourceFile" "$activeFile" > /dev/null # already updated - no change to active file if (( $? == 0 )); then needToUpdate=false fi fi if $needToUpdate ; then - cp "$sourceFile" "$destinationFile" + cp "$sourceFile" "$activeFile" filesUpdated=true thisFileUpdated=true fi @@ -283,7 +331,7 @@ restoreActiveFile () # If the new active files for the new version all match another version # the new file set is populated automatically with replacement files from the other version # and may be used with no further action -# If not, new file set is marked INCOMPLETE and scriptAction is set to EXIT +# If not, new file set is marked INCOMPLETE and installation fail information is set # The package can not be installed on this Venus OS version # # Replacement files that have no original specify an "alternate original" that is used @@ -429,32 +477,13 @@ _checkFileSets () done if [ -f "$fileSet/INCOMPLETE" ]; then - logMessage "ERROR: incomplete file set for $venusVersion - can't continue" - exit $EXIT_FILE_SET_ERROR + setInstallFailed $EXIT_FILE_SET_ERROR "ERROR: incomplete file set for $venusVersion - can't continue" # if we get this far and fs is not marked INCOMPLETE, then the file set does not need to be checked again next pass else touch "$fileSet/COMPLETE" fi } -# restart the GUI service -# begining at about v3.20~18, changes were made to accommodate the gui-v2 -# and these changes require different handling of a GUI service restart - -restartGuiService () -{ - - # start-gui is the new service which supports gui-v2 - # that service will start gui-v2 if selected in Settings or run the older gui if not - if [ -e "/service/start-gui" ]; then - svc -t "/service/start-gui" - # gui is the older service that runs GUI v1 - else - svc -t "/service/gui" - fi -} - - # determine how startup script should exit based on $scriptAction and other flags # may EXIT or REBOOT within the function - DOES NOT RETURN TO CALLER @@ -525,14 +554,8 @@ endScript () # if installation was attempted but failed, exit without checking anything else # or signaling GUI restart or reboot if $installFailed ; then - logMessage "installation failed - package uninstalled - exiting" - exit $EXIT_FILE_SET_ERROR - elif $versionNotCompatible ; then - logMessage "version not compatible - exiting" - exit $EXIT_INCOMPATIBLE_VERSION - elif $platformNotCompatible ; then - logMessage "platform not compatible - exiting" - exit $EXIT_INCOMPATIBLE_PLATFOM + logMessage "installation failed - package has been uninstalled - exiting" + exit $installExitReason elif $rebootNeeded ; then if $userInteraction ; then yesNoPrompt "Reboot system now (y) or do it manually later (n): " @@ -602,8 +625,19 @@ endScript () # It is set to false here the 'auto' parameter is passed on the command line # which indicates this script is NOT being run from the command line -# initialize version strings and numbers for future checks +# move old installedFlag ("...inInstalled...") +# to its new name ...installedVersionFile... +if [ ! -f "$installedVersionFile" ] && [ -f "$installedFlag" ]; then + installedVersion=$(cat "$installedFlag") + if [ -z $installedVersion ]; then + installedVersion="" + else + echo $installedVersion > "$installedVersionFile" + fi +fi +rm -f "$installedFlag" +# initialize version strings and numbers for future checks if [ -f "$installedVersionFile" ]; then installedVersion=$(cat "$installedVersionFile") versionStringToNumber $(cat "$installedVersionFile") @@ -662,8 +696,14 @@ while [ $# -gt 0 ]; do done # make sure rootfs is mounted R/W & and resized to allow space for replacement files -if [ -f /opt/victronenergy/swupdate-scripts/resize2fs.sh ]; then - /opt/victronenergy/swupdate-scripts/resize2fs.sh +if (( $(mount | grep ' / ' | grep -c 'ro') != 0 )); then + if [ -f /opt/victronenergy/swupdate-scripts/resize2fs.sh ]; then + logMessage "remounting root read-write" + /opt/victronenergy/swupdate-scripts/resize2fs.sh + else + logMessage "ERROR: can't remount root read-write - can't continue" + exit $EXIT_ROOT_FULL + fi fi # make sure the root partition has space for the package @@ -674,18 +714,6 @@ if (( $availableSpace < 10 )); then exit $EXIT_ROOT_FULL fi -# move old installedFlag ("...inInstalled...") -# to its new name ...installedVersionFile... -if [ ! -f "$installedVersionFile" ] && [ -f "$installedFlag" ]; then - installedVersion=$(cat "$installedFlag") - if [ -z $installedVersion ]; then - installedVersion="" - else - echo $installedVersion > "$installedVersionFile" - fi -fi -rm -f "$installedFlag" - # packages that require options to proceed unattended # must include the optionsRequried flag file in their package directory # if the flag is present and options haven't been previously set, @@ -756,33 +784,20 @@ if [ ! -z $obsoleteVersion ] && [ ! -f "$scriptDir/obsoleteVersion" ]; then fi # prevent installing Raspberry Pi packages on other platforms -platformNotCompatible=false if [ -f "$scriptDir/raspberryPiOnly" ]; then if [ -f /etc/venus/machine ]; then machine=$(cat /etc/venus/machine) + else + machine="" fi if [ -z $machine ]; then - if $isInstalled ; then - logMessage "can't determine Venus device type - uninstalling" - scriptAction='UNINSTALL' - else - logMessage "can't determine Venus device type - exiting" - exit $EXIT_INCOMPATIBLE_PLATFOM - fi - elif [ $machine != "raspberrypi2" ] && [ $machine != "raspberrypi4" ]; then - platformNotCompatible=true - if $isInstalled ; then - logMessage "$packageName not compatible with $machine - uninstalling" - scriptAction='UNINSTALL' - else - logMessage "$packageName not compatible with $machine - exiting" - exit $EXIT_INCOMPATIBLE_PLATFOM - fi + setInstallFailed $EXIT_INCOMPATIBLE_VERSION "can't determine Venus device type - uninstalling" + elif [[ $machine != *"raspberrypi"* ]]; then + setInstallFailed $EXIT_INCOMPATIBLE_PLATFOM "$packageName not compatible with $machine" fi fi # check to see if package is compatible with this Venus version -versionNotCompatible=false if [ -f "$scriptDir/firstCompatibleVersion" ]; then firstCompatibleVersion=$(cat "$scriptDir/firstCompatibleVersion") # no first compatible version specified - use the default @@ -793,47 +808,61 @@ fi versionStringToNumber $firstCompatibleVersion firstCompatibleVersionNumber=$versionNumber if (( $venusVersionNumber < $firstCompatibleVersionNumber )); then - versionNotCompatible=true + setInstallFailed $EXIT_INCOMPATIBLE_VERSION "ERROR $venusVersion before first compatible $firstCompatibleVersion" elif [ -f "$scriptDir/obsoleteVersion" ]; then - versionStringToNumber $(cat "$scriptDir/obsoleteVersion") + obsoleteVersion=$(cat "$scriptDir/obsoleteVersion") + versionStringToNumber $obsoleteVersion obsoleteVersionNumber=$versionNumber if (( $venusVersionNumber >= $obsoleteVersionNumber )); then - versionNotCompatible=true + setInstallFailed $EXIT_INCOMPATIBLE_VERSION "ERROR $venusVersion after last compatible $obsoleteVersion" fi fi -if $versionNotCompatible ; then - # if not installed, log message and exit - if ! $isInstalled ; then - logMessage "$packageName not compatible with Venus $venusVersion - can't install" - exit $EXIT_INCOMPATIBLE_VERSION - else - logMessage "$packageName not compatible with Venus $venusVersion - uninstalling" - scriptAction='UNINSTALL' - fi -else - if [ ! -d "$setupOptionsRoot" ]; then - logMessage "creating root setup options directory $setupOptionsRoot" - mkdir $setupOptionsRoot - fi - +if ! $installFailed ; then if [ ! -d "$setupOptionsDir" ]; then logMessage "creating package options directory $setupOptionsDir" - mkdir $setupOptionsDir + mkdir -p $setupOptionsDir fi fi # attempting an install without the comand line prompting -# and needed options have not been set yet -# can't continue +# and needed options have not been set yet - can't continue if [ $scriptAction == 'INSTALL' ]; then if ! $optionsSet ; then - logMessage "ERROR required options have not been set - can't install" - exit $EXIT_OPTIONS_NOT_SET + setInstallFailed $EXIT_OPTIONS_NOT_SET "ERROR required options have not been set - can't install" fi fi -# if forcing an uninstall, skip file set checks +# if checks failed or uninstall specified on command line, skip file set checks if [ $scriptAction != 'UNINSTALL' ]; then - # note _checkFileSets will exit if file set error exists + # check file sets for this version, attempt to created it if it does not exist _checkFileSets fi +# determine if GUI v1 is installed and selected to run +if [ ! -d "/opt/victronenergy/gui" ]; then + guiV1present=false +else + # a value of 2 indicates gui-v2 is selected to run + selectedGui=$(dbus-send --system --print-reply=literal --dest=com.victronenergy.settings\ + /Settings/Gui/RunningVersion com.victronenergy.BusItem.GetValue 2> /dev/null | awk '{print $3}') + if [ "$selectedGui" == "2" ]; then + guiV1present=false + fi +fi + +# packages can bypass GUI v1 checks and allow installs +if [ -f "$scriptDir/GUI_V1_NOT_REQUIRED" ]; then + guiV1required=false +# otherwise, files in the GUI v1 directory are considered mandatory +elif (( $(grep 'updateActiveFile' "$scriptDir/setup" | grep -c '$qmlDir') > 0 )); then + guiV1required=true +else + guiV1required=false +fi + +# block installs if any GUI files would be modified and GUI v1 is not present +if ! $guiV1present && $guiV1required ; then + setInstallFailed $EXIT_NO_GUI_V1 "ERROR $packageName requires GUI v1 which is not on the system - can't install" +fi + + + diff --git a/DbusSettingsResources b/DbusSettingsResources index a87a989..c38ed3a 100755 --- a/DbusSettingsResources +++ b/DbusSettingsResources @@ -45,6 +45,11 @@ source "/data/SetupHelper/LogHandler" updateDbusStringSetting () { + # don't do any work if install has already failed + if $installFailed; then + return + fi + dbus-send --system --print-reply=literal --dest=com.victronenergy.settings "$1"\ com.victronenergy.BusItem.GetValue &> /dev/null if (( $? != 0 )); then @@ -58,6 +63,11 @@ updateDbusStringSetting () updateDbusIntSetting () { + # don't do any work if install has already failed + if $installFailed; then + return + fi + dbus-send --system --print-reply=literal --dest=com.victronenergy.settings "$1"\ com.victronenergy.BusItem.GetValue &> /dev/null if (( $? != 0 )); then @@ -71,6 +81,11 @@ updateDbusIntSetting () updateDbusRealSetting () { + # don't do any work if install has already failed + if $installFailed; then + return + fi + dbus-send --system --print-reply=literal --dest=com.victronenergy.settings "$1"\ com.victronenergy.BusItem.GetValue &> /dev/null if (( $? != 0 )); then @@ -105,6 +120,11 @@ removeDbusSettings () setSetting () { + # don't do any work if install has already failed + if $installFailed; then + return + fi + dbus -y com.victronenergy.settings $2 SetValue $1 &> /dev/null } @@ -125,6 +145,11 @@ setSetting () moveSetting () { + # don't do any work if install has already failed + if $installFailed; then + return + fi + local setupOption="$1" local oldDbusPath=$2 local newDbusPath=$3 diff --git a/EssentialResources b/EssentialResources index 103a16b..7acd1a0 100755 --- a/EssentialResources +++ b/EssentialResources @@ -47,6 +47,7 @@ EXIT_OPTIONS_NOT_SET=251 EXIT_RUN_AGAIN=250 EXIT_ROOT_FULL=249 EXIT_DATA_FULL=248 +EXIT_NO_GUI_V1=247 # old variables - keep for compatibility exitReboot=$EXIT_REBOOT exitSuccess=$EXIT_SUCCESS @@ -138,4 +139,25 @@ function versionStringToNumber () versionNumber=$number } +# restart the GUI service +# begining at about v3.20~18, changes were made to accommodate the gui-v2 +# and these changes require different handling of a GUI service restart +# +# this is in EssentialResorces because it is used in reinstallMods and ServiceResources is overkill there + +restartGuiService () +{ + # start-gui is the new service which supports gui-v2 + # that service will start gui-v2 if selected in Settings or run the older gui if not + if [ -e "/service/start-gui" ]; then + svc -t "/service/start-gui" + # gui is the older service that runs GUI v1 + elif [ -e "/service/gui" ]; then + svc -t "/service/gui" + fi +} + + + + diff --git a/FileSets/MbDisplayPackageVersion.qml b/FileSets/MbDisplayPackageVersion.qml index f262cac..b84c4b0 100644 --- a/FileSets/MbDisplayPackageVersion.qml +++ b/FileSets/MbDisplayPackageVersion.qml @@ -47,6 +47,12 @@ MbItem { return qsTr ( " no file set for " + osVersion ) else if (incompatibleReason == 'CMDLINE' && installedVersion.item.value == "") return qsTr ( " must install from command line" ) + else if (incompatibleReason == 'ROOT_FULL') + return qsTr ( " no space on root partition" ) + else if (incompatibleReason == 'DATA_FULL') + return qsTr ( " no space on /data partition" ) + else if (incompatibleReason == 'GUI_V1_MISSING') + return qsTr ( " GUI v1 not installed" ) else return "" } diff --git a/FileSets/PageSettingsPackageEdit.qml b/FileSets/PageSettingsPackageEdit.qml index 48d5947..7df9db8 100644 --- a/FileSets/PageSettingsPackageEdit.qml +++ b/FileSets/PageSettingsPackageEdit.qml @@ -208,6 +208,8 @@ MbPage { return qsTr ( "no room on root partition" ) else if (incompatibleReason == 'DATA_FULL') return qsTr ( "no room on data partition" ) + else if (incompatibleReason == 'GUI_V1_MISSING') + return qsTr ( "GUI v1\nnot installed" ) else return qsTr ("incompatible ???" ) // compatible for unknown reason } diff --git a/PackageManager.py b/PackageManager.py index dcaadd4..c9e9356 100755 --- a/PackageManager.py +++ b/PackageManager.py @@ -131,6 +131,7 @@ EXIT_RUN_AGAIN = 250 EXIT_ROOT_FULL = 249 EXIT_DATA_FULL = 248 +EXIT_NO_GUI_V1 = 247 EXIT_ERROR = 255 # generic error # install states only @@ -153,6 +154,7 @@ # nanopi Multi/Easy Solar GX # raspberrypi2 Raspberry Pi 2/3 # raspberrypi4 Raspberry Pi 4 +# ekrano Ekrano GX # # /ActionNeeded informs GUI if further action is needed following a manual operation # the operator has the option to defer reboots and GUI restarts (by choosing "Later) @@ -1166,7 +1168,7 @@ def __init__(self): 'autoInstall': [ '/Settings/PackageManager/AutoInstall', 0, 0, 0 ], } self.DbusSettings = SettingsDevice(bus=dbus.SystemBus(), supportedSettings=settingsList, - timeout = 10, eventCallback=None ) + timeout = 30, eventCallback=None ) self.DbusService = VeDbusService ('com.victronenergy.packageManager', bus = dbus.SystemBus()) self.DbusService.add_mandatory_paths ( @@ -2174,7 +2176,7 @@ def run (self): command = "" # do initial refreshes quickly if fastRefresh: - delay = 2.0 + delay = 0.5 # otherwise scan one version every 10 minutes else: delay = 600.0 @@ -2733,6 +2735,12 @@ def InstallPackage ( self, packageName=None, source=None , direction='install' ) where=sendStatusTo, logLevel=ERROR ) if source == 'GUI': DbusIf.SetGuiEditAction ( 'ERROR' ) + elif returnCode == EXIT_NO_GUI_V1: + package.SetIncompatible ('GUI_V1_MISSING') + DbusIf.UpdateStatus ( message=packageName + " GUI v1 not installed", + where=sendStatusTo, logLevel=ERROR ) + if source == 'GUI': + DbusIf.SetGuiEditAction ( 'ERROR' ) # unknown error elif returnCode != 0: DbusIf.UpdateStatus ( message=packageName + " " + direction + " unknown error " + str (returnCode), @@ -3426,26 +3434,44 @@ def mainLoop(): currentDownloadMode = DbusIf.GetAutoDownloadMode () autoInstall = DbusIf.GetAutoInstall () - # UpdateGitHubVersion is responsible for fetching GitHub versions - # so we can update the download mode - # skip all package processing until the update is complete + # check to see if reinstallMods is running + # to prevent conflicts with it's installs and those done here + proc = subprocess.Popen ( "pgrep reinstallMods", shell=True, + stdout=subprocess.PIPE, stderr=subprocess.PIPE ) + proc.wait() + stdout, stderr = proc.communicate () + # convert from binary to string + stdout = stdout.decode ().strip () + if stdout == "": + waitForReinstall = False + else: + waitForReinstall = True # setup status messages - if currentDownloadMode == AUTO_DOWNLOADS_OFF: - if autoInstall: - idleMessage = "checking for installs" - else: - idleMessage = "" + idleMessage = "" + actionMessage = "" + statusMessage = "" + # no updates has highest prioroity + if currentDownloadMode == AUTO_DOWNLOADS_OFF and not autoInstall: + idleMessage = "" + # hold-off of processing has next highest priority elif WaitForGitHubVersions: idleMessage = "refreshing GitHub version information" + elif waitForReinstall: + idleMessage = "waiting for boot reinstall to complete" + # finally, set idleMessage based on download and install states + elif currentDownloadMode != AUTO_DOWNLOADS_OFF and autoInstall: + idleMessage = "checking for downloads and installs" + elif currentDownloadMode == AUTO_DOWNLOADS_OFF and autoInstall: + idleMessage = "checking for installs" + elif currentDownloadMode != AUTO_DOWNLOADS_OFF and not autoInstall: + idleMessage = "checking for downloads" + + # hold off all package processing until the GitHub versions have been updated + # and reinstallMods has finished reinstalling packages after Venus OS update + if waitForReinstall or WaitForGitHubVersions: PackageScanComplete = False PackageIndex = 0 # make sure new scan starts at beginning - else: - idleMessage = "checking for downloads" - if autoInstall: - idleMessage += " and installs" - actionMessage = "" - statusMessage = "" # after a complete scan, change modes if appropirate if PackageScanComplete: @@ -3462,7 +3488,7 @@ def mainLoop(): PackageIndex = 0 PackageScanComplete = False UpdateGitHubVersion.GitHubVersionQueue.put ('REFRESH') - downloadDelay = 10.0 + downloadDelay = 2.0 PackageClass.AddStoredPackages () @@ -3479,11 +3505,12 @@ def mainLoop(): PackageIndex = 0 PackageScanComplete = False - # hold off other processing until Git Hub version refresh is complete + # hold off other processing until boot package reinstall and Git Hub version refresh is complete # this insures download checks are based on up to date Git Hub versions # installs are also held off to prevent install of older version, # then another install of the more recent version - if not WaitForGitHubVersions: + # waiting for reinstallMods to finish prevents conflicts between these two processes + if not waitForReinstall and not WaitForGitHubVersions: package = PackageClass.PackageList [PackageIndex] packageName = package.PackageName PackageIndex += 1 @@ -3582,7 +3609,13 @@ def mainLoop(): logging.warning ("restarting GUI") statusMessage = "restarting GUI ..." try: - proc = subprocess.Popen ( [ 'svc', '-t', '/service/gui' ] ) + # with gui-v2 present, GUI v1 runs from start-gui service not gui service + if os.path.exists ('/service/start-gui'): + proc = subprocess.Popen ( [ 'svc', '-t', '/service/start-gui' ] ) + elif os.path.exists ('/service/gui'): + proc = subprocess.Popen ( [ 'svc', '-t', '/service/gui' ] ) + else: + logging.critical ("GUI restart failed") except: logging.critical ("GUI restart failed") GuiRestart = False @@ -3687,7 +3720,7 @@ def main(): PackageIndex = 0 noActionCount = 0 LastAutoDownloadTime = 0.0 - WaitForGitHubVersions = False + WaitForGitHubVersions = True # hold off package processing until first GitHub version refresh pass downloadDelay = 600.0 # set logging level to include info level entries @@ -3755,6 +3788,8 @@ def main(): Platform = "Raspberry Pi 2/3" elif machine == "raspberrypi4": Platform = "Raspberry Pi 4" + elif machine == "ekrano": + Platform = "Ekrano GX" else: Platform = machine file.close() diff --git a/ServiceResources b/ServiceResources index 6884d83..ed303e1 100755 --- a/ServiceResources +++ b/ServiceResources @@ -143,6 +143,11 @@ removeService () installService () { + # don't do any work if install has already failed + if $installFailed; then + return + fi + local serviceName="" if (( $# >= 1 )); then serviceName=$1 diff --git a/blindInstall/SetupHelperVersion b/blindInstall/SetupHelperVersion index 0b880fd..305e209 100644 --- a/blindInstall/SetupHelperVersion +++ b/blindInstall/SetupHelperVersion @@ -1 +1 @@ -v5.15 +v5.16 diff --git a/changes b/changes index 3c505ef..c22540c 100644 --- a/changes +++ b/changes @@ -1,3 +1,8 @@ +v5.16: + fixed: white/black screen on first boot after firmware update + incorporate changes for GUI v1 and gui-v2 selection, + mainly to prevent package install if GUI v1 is needed and missing + v5.15: fixed: PackageManager isn't in menus after v5.14 install updateFileSets: fixed: NO_REPLACEMENT in existing file sets that should link to other sets diff --git a/reinstallMods b/reinstallMods index e18c62e..d9ddf48 100755 --- a/reinstallMods +++ b/reinstallMods @@ -5,7 +5,6 @@ # some setup scripts access dbus Settings which are not up early in the boot process # therefore, this script is run as a background task and waits for dbus Settings # -# Refer to the ReadMe for more details setupHelperDir="/data/SetupHelper" source "$setupHelperDir/EssentialResources" @@ -25,7 +24,7 @@ logMessage "reinstallMods starting" # and call each script rebootNeeded=false guiRestartNeeded=false -settingsAlive=false +okToInstall=false while read -u 9 line ; do # ignore blank and comment lines @@ -34,6 +33,11 @@ while read -u 9 line ; do command=$(awk '{print var $1}' <<< $line) scriptDir=$(dirname $command) packageName=$(basename $scriptDir) + if [ ! -f $command ] ; then + logMessage "Error: $packageName setup script not found - skipping reinstall" + continue + fi + packageVersionFile="$scriptDir/version" installedVersionFile="$installedVersionPrefix$packageName" doReinstall=false @@ -54,40 +58,40 @@ while read -u 9 line ; do fi if $doReinstall ; then - if [ -f $command ] ; then - fullCommand=$(echo "$command reinstall auto deferReboot deferGuiRestart") - # wait until dbus settings are active before calling setup script - while ! $settingsAlive ; do - if [ $(dbus -y | grep -c "com.victronenergy.settings") == 0 ]; then - logMessage "waiting for dBus settings" - else - settingsAlive=true - fi + # wait until dbus settings and GUI are active before calling setup script + # this is done before first reinstall so PackageManager isn't held off if there are no reinstalls + while ! $okToInstall ; do + if [ $(dbus -y | grep -c "com.victronenergy.settings") == 0 ]; then + logMessage "waiting for dBus settings" sleep 2 - done - - $fullCommand - returnCode=$? - if (( $returnCode == $EXIT_REBOOT )) ; then - logMessage "$packageName reinstall requested reboot" - rebootNeeded=true - elif (( $returnCode == $EXIT_RESTART_GUI )) ; then - logMessage "$packageName reinstall requested GUI restart" - guiRestartNeeded=true + else + okToInstall=true fi - else - logMessage "Error: $packageName setup script not found" + done + + # run setup script + fullCommand=$(echo "$command reinstall auto deferReboot deferGuiRestart") + $fullCommand + returnCode=$? + if (( $returnCode == $EXIT_REBOOT )) ; then + logMessage "$packageName reinstall requested reboot" + rebootNeeded=true + elif (( $returnCode == $EXIT_RESTART_GUI )) ; then + logMessage "$packageName reinstall requested GUI restart" + guiRestartNeeded=true fi fi fi done 9< "$reinstallScriptsList" -# reboot now if any script reboots were indicated +logMessage "reinstallMods complete" + +# reboot or restart GUI now if any script reboots were indicated if $rebootNeeded ; then logMessage "rebooting ..." reboot elif $guiRestartNeeded ; then logMessage "restarting GUI" - svc -t /service/gui + restartGuiService fi -logMessage "reinstallMods complete" + diff --git a/setup b/setup index 7e72485..95e6a59 100755 --- a/setup +++ b/setup @@ -92,15 +92,16 @@ if [ $scriptAction == 'INSTALL' ] ; then rm -f "/var/volatile/tmp/PageSettings.qml" fi - updateActiveFile "$qmlDir/PageSettingsPackageManager.qml" updateActiveFile "$qmlDir/PageSettingsPackageVersions.qml" updateActiveFile "$qmlDir/PageSettingsPackageEdit.qml" - updateActiveFile "$qmlDir/MbDisplayPackageVersion.qml" updateActiveFile "$qmlDir/PageSettingsAddPackageList.qml" updateActiveFile "$qmlDir/PageSettingsPackageAdd.qml" - updateActiveFile "$qmlDir/MbDisplayDefaultPackage.qml" updateActiveFile "$qmlDir/PageSettingsPmBackup.qml" updateActiveFile "$qmlDir/PageSettingsPmInitialize.qml" + updateActiveFile "$qmlDir/PageSettingsPackageManager.qml" + updateActiveFile "$qmlDir/MbDisplayPackageVersion.qml" + updateActiveFile "$qmlDir/MbDisplayDefaultPackage.qml" + # revert to VisualItemModel if before v3.00~14 (v3.00~14 uses VisibleItemModel) versionStringToNumber "v3.00~14" @@ -118,7 +119,6 @@ if [ $scriptAction == 'INSTALL' ] ; then done fi - installService PackageManager cleanup @@ -129,12 +129,12 @@ if [ $scriptAction == 'UNINSTALL' ] ; then restoreActiveFile "$qmlDir/PageSettingsPackageManager.qml" restoreActiveFile "$qmlDir/PageSettingsPackageVersions.qml" restoreActiveFile "$qmlDir/PageSettingsPackageEdit.qml" - restoreActiveFile "$qmlDir/MbDisplayPackageVersion.qml" restoreActiveFile "$qmlDir/PageSettingsAddPackageList.qml" restoreActiveFile "$qmlDir/PageSettingsPackageAdd.qml" - restoreActiveFile "$qmlDir/MbDisplayDefaultPackage.qml" restoreActiveFile "$qmlDir/PageSettingsPmBackup.qml" restoreActiveFile "$qmlDir/PageSettingsPmInitialize.qml" + restoreActiveFile "$qmlDir/MbDisplayPackageVersion.qml" + restoreActiveFile "$qmlDir/MbDisplayDefaultPackage.qml" removeService PackageManager diff --git a/updateFileSets b/updateFileSets index 54c9ebd..b58901b 100755 --- a/updateFileSets +++ b/updateFileSets @@ -685,6 +685,7 @@ for package in $packageList; do realFileVersions=() linksOnlyVersionCount=0 realFilesVersionCount=0 + guiV1FilesExist=false ######################### beginProgress "$package: final checks" for (( i1 = 0; i1 < $allFileSetsLength; i1++ )); do IFS=':' read version1 version1number <<< "${allFileSets[$i1]}" diff --git a/updateFileSets (original) b/updateFileSets (original) deleted file mode 100755 index bf027e2..0000000 --- a/updateFileSets (original) +++ /dev/null @@ -1,912 +0,0 @@ -#!/bin/bash - -# this script updates file sets for all packages in the list below -# it scans all Venus OS versions in the stockFiles directory -# -# This is a unix bash script and should be run on a host computer, not a GX device -# Windows will not run this script natively. -# However Windows 10 apparently supports bash: -# https://www.howtogeek.com/249966/how-to-install-and-use-the-linux-bash-shell-on-windows-10/ -# -# packages to be evaulated may be specified on the command line -# use 'all' to process all packages in the allPackages list below -# -# file sets which contain real files (not just links and flags) -# for a version NOT contained in StockFiles will be flagged with UNUSED_FILE_SET -# this can occur if you remove versions from StockFiles. -# For example, you may wish to remove beta versions after a beta test cycle. -# file sets which do not contain any real files (just symbolic links or flag files) are removed - -# stockFiles contains excerpts from Venus OS file systems -# and must be stored on the host -# within a directory with name of the exact Venus OS version -# and within the stockFiles directory defined below. -# -# 1) missing file set directories are created -# 2) if any files in fileList don't exist (eg, a new file was added to file list), -# the original file in stockFiles is copied to the version directory -# 3) if the original file does not exist, the file is so marked with .NO_STOCK_FILE -# this situation must be corrected: -# version-dependent files without an original MUST use an "alternate original" -# specified in FileSets. This permits version checks for these files too -# replacement files that do not replace a stock file should be placed in version-indpendent file storage -# (FileSets/). -# If these replacement files vary with Venus OS versions, they MUST include an "alternate original". -# This permits version checks for these files too -# -# when a stock file set does not exist, this script will check files from existing file sets -# for a matching original file. -# If a match is found, the replacement file is automatically placed in the new file set -# If no match is found, the missing replacement is flagged and a suitable replacement must be created manually. -# -# existing file sets not in the stockFiles are checked. If empty, they are removed. -# If not empty they are marked UNUSED_FILE_SET and flagged for manual removal. -# -# file sets will include all files listed in fileList. -# this allows the setup script to always have a replacement for known versions -# without searching other file sets for a matching original file -# (there have been cases where installation fails because the search for a matching original could not be found) -# if the stock file matches a previous version, a symbolic link for the replacement is created -# rather than duplicating the file -# this also makes maintanence easier since matching replacement can be identified -# -# original files in the file set are not normally used when installing the package -# however, they are retained so that the setup script can attempt to create a file set for an unknown Venus OS version -# this of course may fail if a matching original file can not be found -# -# if no end action is specified on the command line, the user is prompted for how to proceed for each package processed -# end actions specified will bypass this prompt and proceed with the next package -# end actions: -# -p do not update the package but preserve the working copy -# -d do not update the package and deete the working copy -# -u update the package with changes in the working copy's file sets -# -# -r restore package from backup if present - no processing is performed on the packge, backup or working copy -# backups are automatically created when updating a package -# Note: the restore option is not offered at the end prompt since the update has not been applied yet. -# -# if errors occur, the needed corrections may be more obvious by comparing the package and the working copy -# for this reason, preserving the working copy is recommended if errors are expected - -# set allPackages to all packages this script should evalueate if no options are included -allPackages="SetupHelper GuiMods ExtTransferSwitch ShutdownMonitor VeCanSetup RpiDisplaySetup RpiGpioSetup" -## GeneratorConnector TankRepeater are obsolete and file sets should not be updated. - -# set these as appropriate to your system -packageRoot="/Users/Kevin/GitHub" -stockFiles="$packageRoot/StockVenusOsFiles" - -totalErrors=0 -totalWarnings=0 -packageErrors=0 -packageWarnings=0 - -outputtingProgress=false - -function logMessage () -{ - if $outputtingProgress ; then - clearProgress - fi - echo "$*" - if [[ "$*" == "ERROR"* ]]; then - ((totalErrors++)) - ((packageErrors++)) - elif [[ "$*" == "WARNING"* ]]; then - ((totalWarnings++)) - ((packageWarnings++)) - fi -} - -function outputProgressTick () -{ - if ! $outputtingProgress ; then - echo -en "$beginProgressString" - fi - echo -en "$1" - outputtingProgress=true -} - -function clearProgress () -{ - echo -ne "\r\033[2K" - outputtingProgress=false -} - -beginProgressString="" - -function beginProgress () -{ - # erase the line but stay on it - if $outputtingProgress ; then - echo -ne "\r\033[2K" - fi - if [ ! -z "$1" ]; then - beginProgressString="$1 " - echo -en "$beginProgressString" - - outputtingProgress=true - fi -} - - -function versionStringToNumber () -{ - local local p4="" ; local p5="" ; local p6="" - local major=""; local minor="" - - # first character should be 'v' so first awk parameter will be empty and is not prited into the read command - # - # version number formats: v2.40, v2.40~6, v2.40-large-7, v2.40~6-large-7 - # so we must adjust how we use paramters read from the version string - # and parsed by awk - # if no beta make sure release is greater than any beta (i.e., a beta portion of 999) - - read major minor p4 p5 p6 <<< $(echo $1 | awk -v FS='[v.~-]' '{print $2, $3, $4, $5, $6}') - ((versionNumber = major * 1000000 + minor * 1000)) - if [ -z $p4 ] || [ $p4 = "large" ]; then - ((versionNumber += 999)) - else - ((versionNumber += p4)) - fi - if [ ! -z $p4 ] && [ $p4 = "large" ]; then - ((versionNumber += p5 * 1000)) - large=$p5 - elif [ ! -z $p6 ]; then - ((versionNumber += p6 * 1000)) - fi -} - -# removing a nested set of directories sometimes results in permission denied the first time - # so try several times to be sure - -function deleteNestedDirectories () -{ - rm -rf "$1" &> /dev/null - if [ -d "$1" ] ; then - rm -rf "$1" &> /dev/null - if [ -d "$1" ] ; then - rm -rf "$1" - fi - fi -} - - -yesNoPrompt () -{ - response='' - while true; do - /bin/echo -n "$*" - read response - case $response in - [yY]*) - yesResponse=true - break - ;; - [nN]*) - yesResponse=false - break - ;; - *) - esac - done -} - - -#### script code begins here -packageList="" -doAllPackages=false -globalEndAction='' -for param in $* ; do - case $param in - -[pP]*) - logMessage "working copies will be preserved - packages will not be updated" - globalEndAction='preserve' - ;; - -[dD]*) - logMessage "working copies will be deleted - packages will not be updated" - globalEndAction='delete' - ;; - -[uU]*) - logMessage "packages will be updated without prompting" - globalEndAction='update' - ;; - -[rR]*) - logMessage "packages will be restored from backups" - globalEndAction='restore' - ;; - all) - doAllPackages=true - ;; - *) - packageList+=" "$1 - esac - shift -done -if $doAllPackages ; then - packageList=$allPackages -elif [ -z "$packageList" ]; then - logMessage "ERROR no packages specified - use 'all' for all packages" - exit -fi - -if [ "$globalEndAction" == "restore" ]; then - for package in $packageList; do - sourceDirectory="$packageRoot/$package" - sourceFiles="$sourceDirectory/FileSets" - backupDirectory="$packageRoot/$package.backup" - backupFiles="$backupDirectory/FileSets" - if [ ! -d "$backupDirectory" ]; then - logMessage "WARNING $package: no backup found - package NOT restored" - continue - fi - logMessage "WARNING $package: restored from backup" - deleteNestedDirectories "$sourceFiles" - mv "$backupFiles" "$sourceFiles" - if [ -f "$backupFiles/obsoleteVersion" ]; then - mv -f "$backupFiles/obsoleteVersion" "$sourceDirectory" - fi - if [ -f "$backupFiles/firstCompatibleVersion" ]; then - mv -f "$backupFiles/firstCompatibleVersion" "$sourceDirectory" - fi - deleteNestedDirectories $backupDirectory - done - exit -fi - -# make the version list from the directories in stock files -# version lists are sorted so the most recent version is first -tempList=() -stockVersionList=($(ls -d "$stockFiles"/v* 2> /dev/null)) -for entry in ${stockVersionList[@]} ; do - version=$(basename $entry) - versionFile="$stockFiles/$version/opt/victronenergy/version" - realVersion=$(cat "$versionFile" | head -n 1) - - if [ $version != $realVersion ]; then - directoryName=$(basename $stockFiles)/$version - logMessage "ERROR $directoryName name does not mactch Venus $realVersion - can't continue" - exit - fi - versionStringToNumber $version - tempList+=("$version:$versionNumber") -done -stockVersionList=( $(echo ${tempList[@]} | tr ' ' '\n' | sort -t ':' -r -n -k 2 | uniq ) ) - -for package in $packageList; do - packageErrors=0 - packageWarnings=0 - sourceDirectory="$packageRoot/$package" - sourceFiles="$sourceDirectory/FileSets" - workingDirectory="$packageRoot/$package.copy" - workingFiles="$workingDirectory/FileSets" - - if [ ! -d "$sourceDirectory" ] || [ ! -f "$sourceDirectory/version" ]; then - logMessage "$sourceDirectory - not a package directory" - continue - fi - if [ ! -d "$sourceFiles" ]; then - logMessage "$package: no file sets" - continue - fi - if [ ! -f "$sourceFiles/fileList" ]; then - logMessage "$package: no version-dependent files" - continue - fi - fileList=$(cat "$sourceFiles/fileList") - if [ -z "$fileList" ]; then - logMessage "WARNING $package: empty file list" - continue - fi - - # make copy of source package FileSets - beginProgress "$package: making working copy" - deleteNestedDirectories "$workingDirectory" - mkdir -p "$workingDirectory" - cp -pR "$sourceFiles" "$workingFiles" - if [ -f "$sourceDirectory/obsoleteVersion" ]; then - cp -p "$sourceDirectory/obsoleteVersion" "$workingDirectory" - fi - if [ -f "$sourceDirectory/firstCompatibleVersion" ]; then - cp -p "$sourceDirectory/firstCompatibleVersion" "$workingDirectory" - fi - # compute compatible version range - if [ -f "$workingDirectory/obsoleteVersion" ]; then - versionStringToNumber $(cat "$workingDirectory/obsoleteVersion") - obsoleteVersion=$versionNumber - else - obsoleteVersion=999999999 - fi - if [ -f "$workingDirectory/firstCompatibleVersion" ]; then - versionStringToNumber $(cat "$workingDirectory/firstCompatibleVersion") - firstVersion=$versionNumber - else - firstVersion=0 - fi - - # append the package's existing file sets NOT in the stock versions - # to the END of the stock files list - # this insures these file sets contain only files used by that or other unused versions - sourceFileSets=($(ls -d "$sourceFiles"/v* 2> /dev/null)) - tempList=() - for entry in ${sourceFileSets[@]} ; do - version=$(basename $entry) - if [ ! -d "$stockFiles/$version" ]; then - versionStringToNumber $version - tempList+=($version:$versionNumber) - fi - done - existingFileSets=( $(echo ${tempList[@]} | tr ' ' '\n' | sort -t ':' -r -n -k 2 | uniq ) ) - allFileSets=(${stockVersionList[@]}) - allFileSets+=(${existingFileSets[@]}) - - # move incompatible versions to the end of the list - # so that real files end up in a supported file set - obsoleteFileSets=() - tempList=() - for entry in ${allFileSets[@]} ; do - IFS=':' read version versionNumber <<< "$entry" - if (( $versionNumber >= $obsoleteVersion )) || (( $versionNumber < $firstVersion )); then - obsoleteFileSets+=($version:$versionNumber) - else - tempList+=($version:$versionNumber) - fi - done - allFileSets=(${tempList[@]}) - allFileSets+=(${obsoleteFileSets[@]}) - allFileSetsLength=${#allFileSets[@]} - - # clean up flag files from a previous run - rm -f "$workingFiles"/*/INCOMPATIBLE_VERSION - rm -f "$workingFiles"/*/UNUSED_FILE_SET - rm -f "$workingFiles"/*/INCOMPLETE - rm -f "$workingFiles"/*/COMPLETE - rm -f "$workingFiles"/*/LINKS_ONLY - rm -f "$workingFiles"/*/*.NO_ORIG - rm -f "$workingFiles"/*/*.NO_REPLACEMENT - rm -f "$workingFiles"/*/*.NO_REPLACEMENT_LINK - rm -f "$workingFiles"/*/*.CHECK_REPLACEMENT - rm -f "$workingFiles"/*/NEW_FILE_SET - rm -f "$workingFiles"/*/*.MATCHES_PREVIOUS - - for (( i1 = 0; i1 < $allFileSetsLength; i1++ )); do - IFS=':' read version versionNumber <<< "${allFileSets[$i1]}" - - fileSet1="$workingFiles/$version" - if [ ! -d "$fileSet1" ]; then - mkdir "$fileSet1" - touch "$fileSet1/NEW_FILE_SET" - fi - # check to see if package is compatible with this Venus version - if (( $versionNumber >= $obsoleteVersion )) || (( $versionNumber < $firstVersion )); then - touch "$fileSet1/INCOMPATIBLE_VERSION" - fi - - done - - beginProgress "$package: updating file sets" - for file in $fileList ; do - baseName=$(basename "$file") - outputProgressTick "." - # use alternate original if present - if [ -f "$workingFiles/$baseName.ALT_ORIG" ]; then - useAltOrig=true - altOrigFile=$(cat "$workingFiles/$baseName.ALT_ORIG") - else - useAltOrig=false - altOrigFile="" - fi - - # move real files to newest file set - for (( i1 = 0; i1 < $allFileSetsLength; i1++ )); do - IFS=':' read version1 version1number <<< "${allFileSets[$i1]}" - fileSet1="$workingFiles/$version1" - stockFileSet1="$stockFiles/$version1" - # if stock file set does not exist, or this is an incompatible version - # don't move files here - # this will allow file sets for versions no longer supported to be removed - # an error result if a replacement in this version is needed for other file sets - if [ ! -d "$stockFileSet1" ] || [ -f "$fileSet1/INCOMPATIBLE_VERSION" ]; then - continue - fi - - replacement1="$fileSet1/$baseName" - if [ -f "$replacement1" ] && [ ! -L "$replacement1" ]; then - replacement1exists=true - else - replacement1exists=false - fi - orig1="$fileSet1/$baseName.orig" - # select appropirate stock file - if $useAltOrig ; then - stockFile1="$stockFileSet1$altOrigFile" - else - stockFile1="$stockFileSet1$file" - fi - - if [ ! -f "$stockFile1" ]; then - if $useAltOrig ; then - logMessage "ERROR $package: $version1 $baseName stock file missing (move) - check ALT_ORIG" - touch "$fileSet1/$baseName.CHECK_ALT_ORIG" - else - logMessage "ERROR $package: $version1 $baseName stock file missing (move) - consider using an ALT_ORIG" - fi - touch "$fileSet1/$baseName.NO_STOCK_FILE" - touch "$fileSet1/INCOMPLETE" - logMessage "can't continue" - exit - fi - - # look for a match (stock files) in older file sets - # and relocate if found - checkLinks=false - for (( i2 = $i1 + 1; i2 < $allFileSetsLength; i2++ )); do - IFS=':' read version2 version2number <<< "${allFileSets[$i2]}" - fileSet2="$workingFiles/$version2" - replacement2="$fileSet2/$baseName" - orig2="$fileSet2/$baseName.orig" - - if [ -L "$replacement2" ] ; then - replacement2isLink=true - replacement2isRealFile=false - elif [ -f "$replacement2" ] ; then - replacement2isRealFile=true - replacement2isLink=false - else - replacement2isRealFile=false - replacement2isLink=false - fi - # USE_ORIGINAL is valid only if the original file also exists (and is not a sym link) - if [ -f "$replacement2.USE_ORIGINAL" ] && [ -f $orig2 ] && [ ! -L $orig2 ]; then - useOrigFlag2=true - else - useOrigFlag2=false - fi - if $replacement2isRealFile || $useOrigFlag2 || [ -f "$fileSet2/NEW_FILE_SET" ]; then - doStockCheck=true - else - doStockCheck=false - fi - - stockMatch=false - if $doStockCheck ; then - if [ -d "$stockFiles/$version2" ]; then - # select appropirate original file - if $useAltOrig ; then - stockFile2="$stockFiles/$version2$altOrigFile" - else - stockFile2="$stockFiles/$version2$file" - fi - if [ ! -f "$stockFile2" ]; then - if $useAltOrig ; then - logMessage "ERROR $package: $version2 $baseName stock file missing - check ALT_ORIG" - touch "$fileSet2/$baseName.CHECK_ALT_ORIG" - else - logMessage "ERROR $package: $version2 $baseName stock file missing - consider using an ALT_ORIG" - fi - touch "$fileSet2/$baseName.NO_STOCK_FILE" - touch "$fileSet2/INCOMPLETE" - logMessage "can't continue" - exit - fi - - # stock files match - cmp -s "$stockFile2" "$stockFile1" > /dev/null - if [ $? -eq 0 ]; then - stockMatch=true - fi - # no stock files but existing file set - elif $replacement2isRealFile && [ -f "$orig2" ] ; then - # existing orig matches stock - cmp -s "$orig2" "$stockFile1" - if [ $? -eq 0 ] ;then - stockMatch=true - fi - fi - fi - if $stockMatch ; then - moveReplacement=true - if $replacement2isRealFile ; then - if $replacement1exists ; then - cmp -s "$replacement1" "$replacement2" /dev/null - if [ $? -ne 0 ]; then - logMessage "ERROR $package: $baseName $version1 and $version2 replacements differ but same stock files" - touch "$fileSet1/$baseName.CHECK_REPLACEMENT" - touch "$fileSet2/$baseName.CHECK_REPLACEMENT" - moveReplacement=false - fi - fi - if $moveReplacement ; then - mv -f "$replacement2" "$replacement1" - rm -f "$fileSet1/$baseName.USE_ORIGINAL" - ln -sf "../$version1/$baseName" "$replacement2" - cp -f "$stockFile1" "$orig1" - previousLink="../$version2/$baseName" - checkLinks=true - fi - elif $useOrigFlag2 ; then - touch "$replacement1.USE_ORIGINAL" - touch "$replacement2.USE_ORIGINAL" - fi - - if [ -f "$orig2" ]; then - mv -f "$orig2" "$orig1" - fi - fi - - # relink replacement to new location - if $checkLinks && $replacement2isLink ; then - if [ "$(readlink "$replacement2")" == "$previousLink" ]; then - ln -sf "../$version1/$baseName" "$replacement2" - fi - fi - done # for i2 - done # for i1 (update) - - # make another pass and fill in links that were missed in the first past - for (( i1 = 0; i1 < $allFileSetsLength; i1++ )); do - IFS=':' read version1 version1number <<< "${allFileSets[$i1]}" - fileSet1="$workingFiles/$version1" - replacement1="$fileSet1/$baseName" - # must be a real replacement (not link) - if [ ! -f "$replacement1" ] || [ -L "$replacement1" ]; then - continue - fi - - stockFileSet1="$stockFiles/$version1" - if [ ! -d "$stockFileSet1" ]; then - continue - fi - - # if no replacement, search for one that we can link to - for (( i2 = $i1 + 1; i2 < $allFileSetsLength; i2++ )); do - IFS=':' read version2 version2number <<< "${allFileSets[$i2]}" - fileSet2="$workingFiles/$version2" - replacement2="$fileSet2/$baseName" - # skip if replacement already exists - if [ -e "$replacement2" ] ; then - continue - fi - - # select appropirate stock files - if $useAltOrig ; then - stockFile1="$stockFileSet1$altOrigFile" - stockFile2="$stockFiles/$version2$altOrigFile" - else - stockFile1="$stockFileSet1$file" - stockFile2="$stockFiles/$version2$file" - fi - # stock files match - create link - cmp -s "$stockFile2" "$stockFile1" > /dev/null - if [ $? -eq 0 ]; then - ln -sf "../$version1/$baseName" "$replacement2" - fi - done # for i2 - done # for i1 (missing sym links) - done # for file - - # check to see if a non-versioned file is appropriate -- but only if no errors were found - reloadFileList=false - if (( $packageErrors == 0 )) ; then - for file in $fileList ; do - realFileCount=0 - baseName=$(basename "$file") - - # file must be be using an alternate stock file - if [ ! -f "$workingFiles/$baseName.ALT_ORIG" ]; then - continue - fi - for (( i1 = 0; i1 < $allFileSetsLength; i1++ )); do - IFS=':' read version1 version1number <<< "${allFileSets[$i1]}" - fileSet1="$workingFiles/$version1" - replacement1="$fileSet1/$baseName" - if [ -f "$replacement1" ] && [ ! -L "$replacement1" ]; then - (( realFileCount += 1 )) - - fi - done - - if (( realFileCount == 1 )); then - yesNoPrompt "$package: $baseName - make version-independent (y / n)?: " - if $yesResponse ; then - logMessage "$baseName.ALT_ORIG.UNUSED and $(basename $fileListFile.old) can be removed" - mv -f "$workingFiles/$baseName.ALT_ORIG" "$workingFiles/$baseName.ALT_ORIG.UNUSED" - fileListFile="$workingFiles/fileList" - grep -v "$file" "$fileListFile" > "$fileListFile.tmp" - mv -f "$fileListFile" "$fileListFile.old" - mv -f "$fileListFile.tmp" "$fileListFile" - reloadFileList=true - for (( i1 = 0; i1 < $allFileSetsLength; i1++ )); do - IFS=':' read version1 version1number <<< "${allFileSets[$i1]}" - fileSet1="$workingFiles/$version1" - if [ ! -d "$fileSet1" ]; then - continue - fi - replacementFile="$fileSet1/$baseName" - if [ -L "$replacementFile" ]; then - rm -f "$replacementFile" - elif [ -f "$replacementFile" ]; then - mv "$replacementFile" "$workingFiles" - rm -f "$replacementFile.orig" - fi - done - else - logMessage "$baseName remains in version-dependent file sets" - fi - fi - done # for file (version independent check) - fi - - # reload fileList if changed above - if $reloadFileList ; then - fileList=$(cat "$workingFiles/fileList") - if [ -z "$fileList" ]; then - logMessage "WARNING $package: empty file list" - continue - fi - fi - - linksOnlyVersions=() - realFileVersions=() - linksOnlyVersionCount=0 - realFilesVersionCount=0 - beginProgress "$package: final checks" - for (( i1 = 0; i1 < $allFileSetsLength; i1++ )); do - IFS=':' read version1 version1number <<< "${allFileSets[$i1]}" - fileSet1="$workingFiles/$version1" - if [ ! -d "$fileSet1" ]; then - continue - fi - outputProgressTick "." - - replacementFilesExist=false - replacmentSymLinksExist=false - for file in $fileList ; do - baseName=$(basename "$file") - - if [ -f "$workingFiles/$baseName.ALT_ORIG" ]; then - useAltOrig=true - altOrigFile=$(cat "$workingFiles/$baseName.ALT_ORIG") - else - useAltOrig=false - altOrigFile="" - fi - - replacement1="$fileSet1/$baseName" - orig1="$fileSet1/$baseName.orig" - - # do final checks for -- must be file, link or USE_ORIG but not more than one - if [ -L "$replacement1" ]; then - symLinkReplacement=true - realReplacement=false - anyReplacement=true - elif [ -f "$replacement1" ]; then - realReplacement=true - symLinkReplacement=false - anyReplacement=true - else - realReplacement=false - symLinkReplacement=false - anyReplacement=false - fi - if [ -f "$orig1" ]; then - origExists=true - else - origExists=false - fi - if [ -f "$replacement1.USE_ORIGINAL" ]; then - useOrigFlag=true - else - useOrigFlag=false - fi - - if ! $anyReplacement && ! $useOrigFlag; then - logMessage "ERROR $package: $baseName $version1 no replacement" - touch "$replacement1.NO_REPLACEMENT" - stockFileSet1="$stockFiles/$version1" - if $useAltOrig ; then - stockFile1="$stockFileSet1$altOrigFile" - else - stockFile1="$stockFileSet1$file" - fi - # fill in missing original file if it exists - if [ ! -f "$orig1" ] && [ -f "$stockFile1" ]; then - cp "$stockFile1" "$orig1" - fi - elif $anyReplacement && $useOrigFlag; then - logMessage "WARNING $package $version1 $baseName replacement exists - removing USE_ORIGINAL flag" - rm "$replacement1.USE_ORIGINAL" - fi - if $symLinkReplacement && $origExists ; then - logMessage "WARNING $package: $baseName $version1 should NOT contain link AND orig file" - elif $realReplacement && ! $origExists ; then - logMessage "ERROR $package: $baseName $version1 must contain real file AND orig file" - touch "$replacement1.NO_ORIG" - fi - - if [ -f "$replacement1.NO_REPLACEMENT" ] \ - || [ -f "$replacement1.CHECK_REPLACEMENT" ] \ - || [ -f "$replacement1.NO_ORIG" ] ; then - touch "$fileSet1/INCOMPLETE" - fi - - # identify real file & symlink in file set for later - if $symLinkReplacement ; then - replacmentSymLinksExist=true - fi - if $realReplacement || ( $useOrigFlag && $origExists ) ; then - replacementFilesExist=true - fi - done # for file - - # if all replacement files are in place, mark the file set COMPLETE - # so _checkFileSets can skip all checks - # COMPLETE tells _checkFileSets to skip all checks and accept the file set as is - if [ -f "$fileSet1/INCOMPLETE" ]; then - rm -f "$fileSet1/COMPLETE" - else - touch "$fileSet1/COMPLETE" - fi - - if ! $replacementFilesExist && $replacmentSymLinksExist ; then - touch "$fileSet1/LINKS_ONLY" - linksOnlyVersions+=" $version1" - ((linksOnlyVersionCount++)) - elif $replacementFilesExist ; then - realFileVersions+=" $version1" - ((realFilesVersionCount++)) - fi - - # remove file sets for incompatible Venus OS versions - if [ -e "$fileSet1/INCOMPATIBLE_VERSION" ]; then - if $replacementFilesExist ; then - logMessage "WARNING $package: not compatible with Venus $version1 but not empty - consider manual removal" - else - if [ ! -f "$fileSet1/NEW_FILE_SET" ]; then - logMessage "WARNING $package: not compatible with Venus $version1 - file set will not be included in update" - fi - rm -Rf "$fileSet1" - - fi - # not in stock files list - elif [ ! -d "$stockFiles/$version1" ]; then - if $replacementFilesExist ; then - logMessage "WARNING $package: $version1 no longer used but not empty - manual remove is OK" - touch "$fileSet1/UNUSED_FILE_SET" - # no files (empty file set) - else - # log removal of a previous file set if not created with this run - # if it was created with this run, delete it silently - if [ ! -f "$fileSet1/NEW_FILE_SET" ]; then - logMessage "WARNING $package: $version1 no longer used and contains only links - removing file set" - fi - rm -rf "$fileSet1" - fi - fi - - if [ -f "$fileSet1/NEW_FILE_SET" ]; then - logMessage "$package: new file set $version1" - fi - - # remove temporary files - done # for i1 (final checks) - rm -f "$workingFiles/v"*/*tmp - rm -f "$workingFiles/v"*/NEW_FILE_SET - - if [ ! -z "$realFileVersions" ]; then - logMessage "$package: $realFilesVersionCount file sets containing real files:$realFileVersions" - fi - if [ ! -z "$linksOnlyVersions" ]; then - logMessage "$package: $linksOnlyVersionCount file sets containing only links:$linksOnlyVersions" - fi - - if [ "$packageErrors" == 0 ]; then - errorText="no errors " - else - errorText="$totalErrors ERRORS " - fi - if [ "$packageWarnings" == 0 ]; then - warningText="no warnings" - else - warningText="$totalWarnings WARNINGS" - fi - - logMessage "$package complete $errorText $warningText" - - baseName=$(basename $workingDirectory) - - if [ -z "$globalEndAction" ]; then - echo - echo "select to finish:" - echo " update $package (u)" - echo " preserve working copy for inspection (p)" - echo " discard working copy (d)" - while true ; do - read -p "choose action from list above (u / p / d): " response - case $response in - [uU]*) - endAction='update' - break - ;; - [pP]*) - endAction='preserve' - break - ;; - [dD]*) - endAction='delete' - break - ;; - *) - esac - done - else - endAction=$globalEndAction - fi - - case $endAction in - preserve) - logMessage "$package unchanged - changes preserved as $baseName" - ;; - delete) - logMessage "$package unchanged - $baseName removed" - deleteNestedDirectories "$workingDirectory" - ;; - update) - logMessage "$package: updating file sets - backup in $package.backup" - deleteNestedDirectories "$package.backup" - mkdir "$package.backup" - mv "$sourceFiles" "$package.backup" - if [ -f "$sourceDirectory/obsoleteVersion" ]; then - mv -f "$sourceDirectory/obsoleteVersion" "$package.backup" - fi - if [ -f "$sourceDirectory/firstCompatibleVersion" ]; then - mv -f "$sourceDirectory/firstCompatibleVersion" "$package.backup" - fi - - deleteNestedDirectories "$sourceFiles" - mv "$workingFiles" "$sourceFiles" - if [ -f "$workingDirectory/obsoleteVersion" ]; then - mv -f "$workingDirectory/obsoleteVersion" "$sourceDirectory" - fi - if [ -f "$workingDirectory/firstCompatibleVersion" ]; then - mv -f "$workingDirectory/firstCompatibleVersion" "$sourceDirectory" - fi - deleteNestedDirectories $workingDirectory - ;; - *) - logMessage "ERROR: invalid end action $endAction" - esac -done # for package - -# review all file sets and report any that only contain sym links across all packages -# it would be possile to remove those verions from stock files without loosing any data -# this check is only done if updating all file sets and there are no errors -if $doAllPackages && [ "$totalErrors" == 0 ]; then - for entry in ${stockVersionList[@]} ; do - IFS=':' read version versionNumber <<< "$entry" - linksOnly=true - for package in $packageList; do - fileSet="$packageRoot/$package/FileSets/$version" - if [ ! -e "$fileSet/LINKS_ONLY" ]; then - linksOnly=false - break - fi - done - if $linksOnly ; then - logMessage "$version: only links in all packages - stock version could be removed" - fi - done -fi - -if [ "$totalErrors" == 0 ]; then - errorText="no errors " -else - errorText="$totalErrors ERRORS " -fi -if [ "$totalWarnings" == 0 ]; then - warningText="no warnings" -else - warningText="$totalWarnings WARNINGS" -fi - -logMessage "updateFileSets complete $errorText $warningText" diff --git a/updateFileSets-partilaFileSets b/updateFileSets-partialFileSets similarity index 100% rename from updateFileSets-partilaFileSets rename to updateFileSets-partialFileSets diff --git a/venus-data.UninstallPackages.tgz b/venus-data.UninstallPackages.tgz index f82b9665ec47569611a0b43242cd1213e631183b..91a8419925a308348b104e8f8dd188185cc48871 100644 GIT binary patch literal 1523 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 YS1#LSyKI;3vRzR77k%q4S^yRR0M7{ZC;$Ke diff --git a/venus-data.tgz b/venus-data.tgz index 1f3a5507b1077f69ff0155ba944009c9ee0b8b5d..0f6d04a95fc84ad2d8da9dc01866cd66eea754ef 100644 GIT binary patch literal 90119 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≥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 arxFf`i+=}xD&_56$do=y5bPBO?Ee5w_8-~+ diff --git a/version b/version index 0b880fd..305e209 100644 --- a/version +++ b/version @@ -1 +1 @@ -v5.15 +v5.16