[ROM][UNOFFICIAL] LineageOS 16.0 for FP3


I have been following this topic, and I can see that there is a working version of LOS for FP3, but to be honest I don’t understand how to install it, and why it’s not on the LineageOS site. I did manage to flash on my FP2 by using their instructions.
Can anyone explain this, please? And apologies for the basic question.
Thank you.

Hi Muad_dib,
LOS for FP3 is unofficial so far, that is why you will not find it on the LineageOS website.
Installing (and building) the pure LineageOS system requires technical knowledge, and I would not go for it if you just want to use it as a normal person rather than hacking with it.
Have you looked at /e/? They have guides that should make the installation easier, plus they have the official sanction of Fairphone itself.

Hello dK,

Thank you for your reply. It makes sense. I thought it was basically the same. The level of ‘noobieness’… :smiley:
I will check the /e/ (now that I understand that is not a command-line…)

Where can I find the ROM image?



I want to install the firmware, but I’m afraid that the smartphone will not work very stably. You can advise, because stock firmware is already tired.


Thank you. Very useful : )


Welcome to the community forum.

What exactly does that mean?

Just a short question: do you intend to create a new release with June fixes (if they are already incorporated in LOS) for the people not being able to build it for themselves?

Two fixes for the current issues are in the pipeline, waiting to be reviewed by Max.

Thanks. I’m following on github also, as I’m really interested…

And a really gigantic thanks for all your efforts!

Hi! I’m trying to compile the rom following the instruction in the readme.

at the beginning I have these logs

$ brunch FP3 eng -j1
including vendor/lineage/vendorsetup.sh
Looking for dependencies in device/fairphone/FP3
Adding dependencies to manifest
Checking if device/fairphone/sdm632 is fetched from android_kernel_fairphone_sdm632
Adding dependency: LineageOS/android_kernel_fairphone_sdm632 -> device/fairphone/sdm632
Using default branch for android_kernel_fairphone_sdm632
Syncing dependencies

and then it complains that the repository LineageOS/android_kernel_fairphone_sdm632 does not exist on github (the build seems to start fine though). Is it expected? Should I do something about it or just ignore it?


1 Like

and indeed it automatically adds

 <project name="LineageOS/android_kernel_fairphone_sdm632" path="device/fairphone/sdm632" remote="github" />

to .repo/local_manifests/roomservice.xml

I’m not too familiar with building LOS myself, but given that the FP3 is not an officially supported device yet, I assume you should replace that with name="WeAreFairphone/android_kernel_fairphone_sdm632" to use this repo: https://github.com/WeAreFairphone/android_kernel_fairphone_sdm632

I do have the correct line on my local manifest (I copied the roomservice.xml file from the README of the device tree repo on github), but the brunch command keeps automatically adding this other line every time I start the build.

1 Like

It’s most probably because of the entry in lineage.dependencies file. Maybe we should remove it for now. You can try to remove it locally.

If still not working you can also try to run lunch and m manually:

lunch lineage_FP3-eng # or lineage_FP3-userdebug or simply lineage_FP3
m -j4 # set -j to number of parallel builds
1 Like

Unfortunately I don’t have much time left at the moment. Will try to build it tomorrow or next week with @dk1978’s changes and also try to sync up with /e/ device tree.


Thanks, no need to hurry…

Any possibility to support you guys somehow?


It’s most probably because of the entry in lineage.dependencies file. Maybe we should remove it for now. You can try to remove it locally.

Judging by other projects, the correct entry in lineage.dependencies should probably be the path to the kernel tree, i.e.
"target_path": "kernel/fairphone/sdm632"
rather than
"target_path": "device/fairphone/sdm632"

Why hasn’t this bitten us before? And even better - could this file be used as a replacement for the local manifest thing and save us the build step where we ask each developer to create a local manifest at all?

1 Like

Ok thanks, I’m ignoring the sync error for now. When proceeding with the build (with brunch FP3 eng), I have this error:

error: failed to build /home/augustin/repos/android/lineage/out/target/product/FP3/product.img from /home/augustin/repos/android/lineage/out/target/product/FP3/product
Error: '['mkuserimg_mke2fs.sh', '-s', '/home/augustin/repos/android/lineage/out/target/product/FP3/product', '/home/augustin/repos/android/lineage/out/target/product/FP3/product.img', 'ext4', 'product', '132018176', '-j', '0', '-D', '/home/augustin/repos/android/lineage/out/target/product/FP3/system', '-L', 'product', '-M', '0', '/home/augustin/repos/android/lineage/out/target/product/FP3/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin']' failed with exit code 4:
MKE2FS_CONFIG=./system/extras/ext4_utils/mke2fs.conf mke2fs -O ^has_journal -L product -m 0 -E android_sparse -t ext4 -b 4096 /home/augustin/repos/android/lineage/out/target/product/FP3/product.img 32231
mke2fs 1.43.3 (04-Sep-2016)
Creating filesystem with 32231 4k blocks and 32256 inodes

Allocating group tables: done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done

e2fsdroid -p /home/augustin/repos/android/lineage/out/target/product/FP3/system -S /home/augustin/repos/android/lineage/out/target/product/FP3/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin -f /home/augustin/repos/android/lineage/out/target/product/FP3/product -a /product /home/augustin/repos/android/lineage/out/target/product/FP3/product.img
__populate_fs: Could not allocate block in ext2 filesystem while writing file "webview.apk"
e2fsdroid: Could not allocate block in ext2 filesystem while populating file system

Out of space? The tree size of /home/augustin/repos/android/lineage/out/target/product/FP3/product is 129159168 bytes (123 MB), with reserved space of 0 bytes (0 MB).
The max image size for filsystem files is 132018176 bytes (125 MB), out of a total partition size of 134217728 bytes (128 MB).

the last 2 lines are odd to me: aren’t they saying that the product folder is smaller than the max image size, and thus shouldn’t it fit in it?

Any idea?

NOTE: I think it’s unrelated, but if I try to build with only lunch and m or m -j2, I have this error very early:

ninja: error: '/home/augustin/repos/android/lineage/out/target/common/obj/JAVA_LIBRARIES/WfdCommon_intermediates/classes.jar', needed by '/home/augustin/repos/android/lineage/out/target/common/obj/PACKAGING/boot-jars-package-check_intermediates/stamp', missing and no known rule to make it
15:18:44 ninja failed with: exit status 1

when I check '/home/augustin/repos/android/lineage/out/target/common/obj/JAVA_LIBRARIES/WfdCommon_intermediates/, I have only javalib.jar and link_type file

Sorry if this is obvious :slight_smile:

This is already known. See here for details.
@dk1978 already updated the README accordingly.

Regarding the WfdCommon issue, I currently face this as well. And I remember that I already had this error in the past. Unfortunately I don’t remember the solution :man_facepalming:
I do a clean build with docker container now to check if that works.

1 Like