[HOW TO] Flash a custom ROM on FP3 with GSI


Hi there !
Thanks for all the work which have made rooting a fairphone 3 possible ! <3

I’ve just rooted my phone. So I can’t do the fairphone update instead of using twrp ? And that will wipe my user data, no ? So I must do a user-data backup ? Is there an easy way to do this ?

And, is there anywhere the A.0111 stock rom ?

edit : In fact, I’ve just rooted my phone but 'cause i got problems, i had to flash back (with fastboot) to A.105. And now I can’t do the update to the A.111. Is this normal ?

You can’t do any OTA update if any of your partition is modified. (Mounting system r/w is enough). There is some tricks to do updates with magisk. You can also do the updates manually.

Here is the A0111 partitions’ images.

If someone want to do a flashable zip, you’re welcome! (ping @k4y0z ?)


hey there,
following my problem: i’ve installed virtual box and lubuntu on my windows pc.
I did “sudo sh flash.sh”
that’s the return: " CURRENT SLOT: b
sending ‘product_a’ (131072 KB)…
OKAY [ 47.814s]
writing ‘product_a’…
OKAY [ 0.597s]
finished. total time: 48.411s
target reported max download size of 534773760 bytes
sending ‘keymaster_a’ (1024 KB)…
OKAY [ 0.392s]
writing ‘keymaster_a’…
OKAY [ 0.015s]
finished. total time: 0.407s
target reported max download size of 534773760 bytes
sending ‘cmnlib64_a’ (1024 KB)…
OKAY [ 0.391s]
writing ‘cmnlib64_a’…
OKAY [ 0.021s]
finished. total time: 0.412s
target reported max download size of 534773760 bytes
sending ‘cmnlib_a’ (1024 KB)…
OKAY [ 0.403s]
writing ‘cmnlib_a’…
OKAY [ 0.015s]
finished. total time: 0.418s
target reported max download size of 534773760 bytes
sending ‘lksecapp_a’ (128 KB)…
OKAY [ 0.067s]
writing ‘lksecapp_a’…
OKAY [ 0.021s]
finished. total time: 0.088s
target reported max download size of 534773760 bytes
sending ‘mdtp_a’ (32768 KB)…
OKAY [ 11.982s]
writing ‘mdtp_a’…
OKAY [ 0.154s]
finished. total time: 12.136s
Invalid sparse file format at header magi
sending sparse ‘vendor_a’ (519509 KB)…"
And it stays at it. Do you know why ?

That’s weird. Did you wait enough? Maybe you could try with a Linux Live USB

To be sure :

  • The system images you link is working with the flash.sh script.
  • Doing this will wipe all my user data.

My question is : is it possible to backup only the user-data with twrp ? (including contacts, msgs, and applications : maybe contacts and msgs are just contents of application ?) In order to be able ot backup-flash-restore in order to update my system ?

Thanks for your help (and sorry if my questions are newbie-like) !

Yes, these images work with flash.sh (and fastboot :slight_smile: ).
It shouldn’t wipe your user data (I’ve done it without any problem). But you should do a backup if there is something going wrong :
TWRP > BACKUP > userdata; then adb pull /sdcard.
To restore, you’ll do adb push sdcard /sdcard then TWRP > RESTORE > Your_backup)

1 Like

On the readme page of flash.sh, it’s written that we have to wipe userdata doing fastboot -w after the both flashs. It’s not necessary, so ?

Yes, I wrote that you might need to flash both slots and wipe the userdata. That’s in case you want to flash back to stock. To do the update, flash only one slot and don’t wipe userdata :slight_smile:

Oh. Ok. I flash only one boot slot and I boot on this after ?

And for backup, the by-default behaviour of twrp backup is “data” and “boot” back up. Should I leave so (for any reason I wouldn’t udnerstand), or just select data is enough ?

(thanks for all your answers pigpig, after my problems for rooting my phone, i’ve lost hope for controlling my phone, and now I power up thanks to you :smiley: )

The flash.sh script will boot to bootloader on the flashed slot. You only need to do a backup of your data :slight_smile:

I’ve just successed update and no user data were during this ! Thanks to you for all ! A last question : how to get a terminal with root access with a rooted phone ?

Now : kill the unnecessary gapps ! :pirate_flag:

You can use a terminal emulator like termux, or use adb. You should use the magisk app manager to control su.

Actually, If you want to get rid of gapps, I suggest you to use a custom ROM (e.g. LOS 16 or Arrow OS) using the GSI, at least for the moment . An official release of /e/ will come soon for the FP3 (and I guess LOS too). If you want to stay on the stock ROM, there is another thread listing the app to disable (or to remove, but be careful :wink: )

I have the magisk app, and I know termux (but I didn’t know that it could be use with root :3).

I didn’t find anymore the post on which users were listing the gapps they have removed, would you have the link to ? >.<" researches on the forum gives nothing

edit : i wait for /e/, but due to the problems I’ve encountered, I’ll wait a bit before rehaving funny with my phone :slight_smile: (thanks again for all your answers and kindness !)

There is also a su wrapper for termux tsu.

Check this thread : Telemetry, Spyware, list of privacy threats on FP3 Android 9

Using a GSI will be a way easier and less buggy than disabling everything (I tried, dialer app was buggy, you have to use a PIN and not a password to unlock the phone etc.)

Hi folks,
really great work. I have 2 questions: Which of the listed Custom roms would you suggest for daily use? (is there any)

Which file do I have to flash whether I want to use [AOSP 9.0 v123] (https://github.com/phhusson/treble_experimentations/releases/tag/v123)

Is it for example this file :system-quack-arm64-ab-vanilla.img.xz
or: system-quack-arm-aonly-vanilla.img.xz

So what is die difference between a_only and ab?


There is two types of devices A/B slots and A_only slot (only one slot). The FP3 is A/B slots device :wink: , so it would be arm64-ab !

Actually, you can use LOS16 or arrow OS, until there is an official custom ROM (they’re not maintained)

Thanks for the fast answer!

What about Aosp9?

I didn’t try, but someone did. And apparently, it worked :wink:

1 Like

Linage OS 16 installation works like a charm. Thanks for your how to. I just struggeled a little with the gapps / treble wizard. They crashed everytime during the initial setup. After that I booted into TWRP and wiped dalvik cache and DATA.

This confronted me with an error at bootup (device cannot be booted, cause of some troubles with the data partition. The device suggested a factory reset, which I did.

Now it seems like to run like a charm. I will do further investigation.

Best thing about it is, that the notification LEDS seem to work!

Perhaps i get rid of the annoying reboots during I am phoning too (happened to me for about 3 weeks now.)

1 Like

anyone of you made it through the safety net check successfully? I cannot use my banking app etc. now.

So i tried it with Magisk and this one here: https://www.youtube.com/watch?v=P-6Y3WyxVRo

But if I alter the fingerprint via magisk hideprops config and do a reboot, the FP3 seems like to bootloop at the linage os animation.

I can only get it to boot if I delete the hideprops module folder via TWRP filemanager.

Any tip is very welcome.