TWRP for Fairphone 3

I think technically you could have two different systems running on the same phone that share the same data partition, it would probably break updates (or one partition would get overwritten.) This also means you could have a combo of rooted and unrooted, as long as they were both running the same systems. (I could be totally wrong though.)


If I understand correctly, TWRP (and Magisk) are gone after the OTA update, and need to be re-installed:

The key thing here is that it [the OTA update] installs a fresh, fully stock version. Your data gets pulled over, but none of your mods go with it. To get them back, you have to install them all again. There are various ways of doing this, and this isn’t the place to repeat the guides that are already posted on how. Just understand that you have to do it to keep root, twrp, and your other mods.


That’s when you are rooted, if I got that sorted right.
That’s certainly an effect to consider.


Actually, most of the OTA updates are diffs. Which can corrupted a custom boot/system (or other partitions)


Therefore it says in the article:

The update engine detects root and downloads the full update instead of the incremental update

But @AnotherElk is right, they only mention root - wouldn’t that be dangerous with other mods (like TWRP)?


The update_engine should actually check the partition checksums and either download a full update or refuse to update altogether if they don’t match.


Definitely tracking this thread.
As soon as all your mods, tweaks, twrp, root are stable, will check
Keep up the good works. Nice job folks :+1:


I have uploaded an installable ZIP-file for Stock-ROM here:

If anyone wants to give that a try.


Can’t try it now, but I love the subtle change in filename compared to the earlier one :slight_smile: :+1: .

is this a way to get a full ota download url?
i still havent updated to 105 maybe i can try it

1 Like

Sure, give it a try.
If the incremental update fails, it should try a full update (if there is one available)

Did you root your phone? I guess, if you have a different boot :grin:
It might be a good idea to MITM the requests in the same time :slight_smile: (to be able to check for update without the phone)

The public key (for the website or the update ?) is here :
G**gles certs are here :

Some relevant strings in /system/bin/update_engine

Booted in dev mode.
Booted non-official build.

So it doesn’t want to install in case of modified boot. (We’ll pass thru TWRP flashable zip)


Yes that’s the behavior I know from the Pixel2XL. It never did a full system update for me there, it immediately stopped the update procedure once it detects a modification. As mentioned earlier, the safest option is to restore a previously backed up boot.img (or if you know which version you have - from a factory image), then reboot and update as usual. Finally redo the boot modifications on the the updated boot.img. Of cause this must also be done with system if that was modified as well.

I tried that, and it didn’t work … not with my own A.0105 boot.img from a backup, and not with the boot.img from the A.0105 stock image … the Updater doesn’t update and only says “installation problem”.

Did you flash magisk? Because it also mount system and vendor partition to do something (I didn’t look) *


1 Like

Install this using TWRP
It will restore your phone to 105 stock completely.

It won’t touch userdata, so that should be safe, wouldn’t hurt to make a backup using TWRP though.


Are you sure about this? I don’t think so. It should only touch the boot partition.

I am not sure at all. It is what I though until I viewed that it mounts system and vendor (but it might be to read)

If there is an addons.d in the ROM, it would put it’s retention-script there.
Not sure if it would touch a stock-ROM though.
However mounting system or vendor as RW in TWRP would be enough for invalidating the checksums.