Monday, October 15, 2018

Old bug found on icaros-sequence preventing updates

There is a nasty bug in S:icaros-sequence which may prevent LiveUpdater from working correctly. Icaros Desktop 2.2.1 and maybe former releases are affected by the issue, so please take this corrective action to fix it.  We've already covered this before, however it can be useful to remind.

Open S:icaros-sequence using the AROS editor and find this section:

; RunMe if proper settings are made -------------------------

if exists sys:dvdmode
  execute s:dvd-startup
endif

IF ${Icaros/1sttime} EQ "True"
  execute S:1sttime-setup
EndIf

IF ${Icaros/2ndtime} EQ "True"
execute S:2ndtime-setup
  echo "false" >envarc:Icaros/2ndtime
EndIf

; create MyWorkspace

execute S:myworkspace-startup

Please notice the red lines: they ignite the script which enables MyWorkspace and inner ASSIGNs. As you can see, these instructions are performed AFTER two conditions. Problem is, however, that these contidions also manage LiveUpdater to run at startup when needed. So, in other words, when you tried to update Icaros 2.2.1 to a newer release, LUPD started without any clues about MyWorkspace, but MyWorkspace ASSIGNs are mandatory for LUPD to run. A real mess, isn't it? Well, the simple corrective action to take is just moving these lines above, in this way:

; RunMe if proper settings are made --------------------------
if exists sys:dvdmode
  execute s:dvd-startup
endif

; create MyWorkspace
execute S:myworkspace-startup


IF ${Icaros/1sttime} EQ "True"
  execute S:1sttime-setup
EndIf

IF ${Icaros/2ndtime} EQ "True"
execute S:2ndtime-setup
  echo "false" >envarc:Icaros/2ndtime
EndIf


The issue had been already fixed in Icaros 2.2.3, however, without this fix, updating Icaros from version 2.2.1 to 2.2.3 would partly fail. People who updated a former release to Icaros 2.2.2 or 2.2.3 should fix Icaros Sequence as described and repeat the update using LiveUpdater's "File" option.

More info >here.

Please check in S:icaros-sequence that S:myworkspace-startup is started before checking for the 1sstime and 2ndtime variables. Thank you. The issue is already fixed in Icaros Desktop 2.2.3 for people who made a clean installation.

Translate