Sometimes installing an OS update may fail even though the download seemingly worked okay. The problem is usually caused by the device and Jolla Store being out of sync somehow.
Prepare using the command line
Let's download and install the OS update by initiating the process from the command line (Terminal app) instead of the menu page "Settings > Sailfish OS updates". In this way some checks are by-passed which may allow the update to work okay.
Please read this help article first and do as instructed in it. It explains how to enable and disable the Developer mode. Developer mode makes access deeper to Sailfish OS possible by allowing you to get the super-user rights ("root" rights). Also it installs the Terminal application to the device.
Start OS update from the command line
Once you have the Developer Mode enabled, do as follows:
- Connect your phone to battery charger.
- Open Terminal app. If the font is too small make it bigger using to Settings at the top right corner
- Type and execute the following commands:
## type your SSH password here
ssu re 188.8.131.52 ## replace "184.108.40.206" with your target OS version
version --dup ## note the 2 dash characters in front of 'dup'!
version --dup" will last long as it first downloads everything necessary and then installs them. You can see the progress in percentage all the time.
The OS update notification may persist in the device after updating the OS with the command line method.
The next commands may help in eliminating the notification:
rm -rf /home/nemo/.cache/store-client/os-info
Visit menu "Settings > Sailfish OS updates" and seek for updates using the pull down menu.
Your Sailfish OS device is updated and ready to use now.
Command "version --dup" might fail in cases where the user has added some extra code repositories to his/her device.
In case of trouble we would ask you to run the command below and send a picture (pictures) showing the complete printout. Then file a service request and attach the pictures to it.
The correct output should be like in the picture below:
Section "Enabled repositories (user)" may contain some incorrect (extra) repositories which can be removed with command
ssu rr <repository-name>
ssu up # same as "ssu updaterepos"
where <repository-name> shall be replaced with the short names in the left most column of the printout of command "ssu lr" (compare to the picture above -- note that the picture above does not have any incorrect items, though).
If you want to keep your repositories for some reason then it is also possible to only disable them for the OS update:
ssu dr <repository-name>
Afterwards they can be enabled with
ssu er <repository-name>