Replacing Jolla1 factory image with higher version

asked 2018-06-10 10:35:45 +0200

PatsJolla gravatar image

updated 2018-10-22 20:34:48 +0200

JSEHV gravatar image

Hi, I just had to factory reset my Jolla 1 to get the newest update and I am currently installing all relevant Systemupdates since to get to the actual

What a nice flashback to pass Sailfish 1 on the way, but this is another topic.

My question is: Can we replace the original factory image with a higher version, maybe based on - the final Sailfish 1 version with the original UI behavior - if I remember correctly, or higher?

Just like @coderus described in his Intex to Jolla C thread?

Replacing original factory image with Jolla1 Ver. x.y.z factory image

After doing these commands your changes will survive factory reset.

Download *factory image for Jolla1*
Unpack and copy to sdcard
Boot in recovery mode, enter shell

mount /dev/mmcblk1p1 /mnt
dd if=/mnt/mmcblk0p21.raw of=/dev/mmcblk0p21

Wait until image will be copied to partition, no output will be produced.
Operation is finished when the copying is complete.
Back to recovery menu and perform factory reset.

Is this possible?

edit retag flag offensive close delete



Really interested in this, too! It took a looong time to reset Jolla 1.

chappi ( 2018-10-22 17:28:26 +0200 )edit

Small tip, when using dd on a flash media (SSD, SD card or a smartphone built-in's eMMC), add the conv=sparse option, this will skip the empty (i.e.: consisting only of zeroes) regions of the source image when writing, instead or needlessly writing long strings of zeroes. The flash media will be happy for the smaller amount of writing, and you can still run afterwards fstrim on the mounted partition to clear (but not over-write) unused blocks.

Another missing tip : after the overwite, checks if the partition UUID (the one you can get e.g. with blkid /dev/mmcblk0p28) matches the one in factory-@/etc/fstab.

You don't even need to go the dd route in the specific case of Jolla 1 : the factory image is held in subvolumes factory-@ and factory-@home. As long as you have a working BTRFS partition (or you freshly reformated one), you can simply overwrite (or rename) those subtrees out of a tar-ball. (But still check for UUID).

The complicated stuff, is that the factory image contains the firmware that needs to be flashed by the recovery onto most android-style multiple partitions (onto all the numbers /dev/mmcblk0p{1..27}), and Qualcomm own the copyrights on lots of those blob, so Jolla cannot leave those available on their website without violating a couple of laws.

So the best bets are : - Try to beg Jolla devs if they can directly send you an image. (But might not work as the phone is out of warranty and Jolla currently might not have enough devs ressources to catter to such demands) - Try to find whom among us fellow users has the most recent factory image and get the image form them (I can't personally help, mine is still old).

Last note: after a while, when you sure you're happy with the results, remove all the various backup-* sub volumes you won't need anymore.

DrYak ( 2018-10-23 14:33:01 +0200 )edit