[OFFICIAL] LineageOS 23 for The Fairphone (Gen. 6)

Completely unable to help but keep in mind the official version is from the last weeks/days. Makes sense that part of the guides are not there I suppose. Read what the next person will be texting.

EDIT: I will probably reuse your idea of backup to SD card. Faster to arrange than webdav and more convenient than external backups. (backups are so important that they should be automated)

I’m running Lineage official and manually installed microG. It’s actually fairly easy, you don’t need to install it as an add-on during the installation process of Lineage like it is required with e.g. GApps. After you’ve completed the installation of Lineage, just follow the instructions here: Installation · microg/GmsCore Wiki · GitHub . I’d recommend to add the microG repository to F-Droid for easier updates of microG

I haven’t encountered any issues so far.

Sorry, i don’t have time to go through that in detail now, but it should really be sufficient to boot into any working recovery, sideload the lineage zip, any addons you like and then reboot. Make sure to verify it installed correctly by reading the output on your phone before rebooting.
If that does not work, you will need to figure out how to get logs, or completely follow the instructions including formatting data.

I just wanted to let you all know that we just merged a few things, including the rolled back wifi firmware, since that seems to have fixed the IPv6 issues, some improvements to the perf stack which should make the device significantly smoother and the microphone patch from the last unofficial build i shared.
The next official build is scheduled for next monday.

That’s awesome, thank you so much!

Honestly, my UX is VERY smooth already so I’m looking forward to any kind of magic you performed on the performance stack (pun intended) :+1: :+1: :+1:

I still have a problem with the messages app (latest official).

In the listing view of the messages there are two layers of text. The first one is fixed and the second can be scrolled. The texts are identical, so i am able to scoll the two layers on top of each other so i can at least view the first messages,

Many thanks. If microG works, then I’ll manage to install it :wink:

Hi, I don’t use any mods at all. I can’t reinstall cause I want to keep my data, so here are some interesting things I found in the logs :

08-06 00:00:03.858 29634 29691 D CompatChangeReporter: Compat change id reported: 150939131; UID 10106; state: ENABLED
08-06 00:00:03.858 29634 29691 I ColorCustomizationManager: Resetting {}, VIBRANT, home_wallpaper to null
08-06 00:00:03.894  2998  3101 I ThemeOverlayApplier: Won't enable com.android.theme.icon_pack.filled.android, it doesn't exist for user0
08-06 00:00:03.895  2998  3101 I ThemeOverlayApplier: Won't enable com.android.theme.icon_pack.filled.systemui, it doesn't exist for user0
08-06 00:00:03.895  2998  3101 I ThemeOverlayApplier: Won't enable com.android.theme.icon_pack.filled.settings, it doesn't exist for user0
08-06 00:00:02.942     1     1 I init    : starting service 'idmap2d'...
08-06 00:00:02.952     1     1 I init    : ... started service 'idmap2d' has pid 29707
08-06 00:00:02.952     1     1 I init    : Control message: Processed ctl.start for 'idmap2d' from pid: 2283 (system_server)
08-06 00:00:03.937 29707 29707 I idmap2d : Starting
08-06 00:00:03.938 29707 29707 W libbinder.BackendUnifiedServiceManager: Thread Pool max thread count is 0. Cannot cache binder as linkToDeath cannot be implemented. serviceName: idmap
08-06 00:00:03.944 29707 29708 W idmap2d : failed to parse idmap header of '/data/resource-cache/data@resource-cache@com.android.systemui-accent-Jj4C.frro@idmap'
08-06 00:00:03.951 29707 29708 W idmap2d : failed to parse idmap header of '/data/resource-cache/data@resource-cache@com.android.systemui-dynamic-hPZM.frro@idmap'
08-06 00:00:04.003  2283  4862 D OverlayManager: commit failed: cannot enable immutable overlay packages in runtime
08-06 00:00:04.003  2283  4862 D OverlayManager: com.android.server.om.OverlayManagerServiceImpl$OperationFailedException: cannot enable immutable overlay packages in runtime
08-06 00:00:04.003  2283  4862 D OverlayManager: 	at com.android.server.om.OverlayManagerServiceImpl.setEnabled(OverlayManagerServiceImpl.java:517)
08-06 00:00:04.003  2283  4862 D OverlayManager: 	at com.android.server.om.OverlayManagerService$1.executeRequestLocked(OverlayManagerService.java:1014)
08-06 00:00:04.003  2283  4862 D OverlayManager: 	at com.android.server.om.OverlayManagerService$1.executeAllRequestsLocked(OverlayManagerService.java:1055)
08-06 00:00:04.003  2283  4862 D OverlayManager: 	at com.android.server.om.OverlayManagerService$1.commit(OverlayManagerService.java:947)
08-06 00:00:04.003  2283  4862 D OverlayManager: 	at android.content.om.IOverlayManager$Stub.onTransact(IOverlayManager.java:529)
08-06 00:00:04.003  2283  4862 D OverlayManager: 	at android.os.Binder.execTransactInternal(Binder.java:1478)
08-06 00:00:04.003  2283  4862 D OverlayManager: 	at android.os.Binder.execTransact(Binder.java:1418)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: setEnabled failed
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: java.lang.SecurityException: commit failed
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Parcel.createExceptionOrNull(Parcel.java:3373)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Parcel.createException(Parcel.java:3357)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Parcel.readException(Parcel.java:3340)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Parcel.readException(Parcel.java:3282)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.content.om.IOverlayManager$Stub$Proxy.commit(IOverlayManager.java:979)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.content.om.OverlayManager.commitToSystemServer(OverlayManager.java:367)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.content.om.OverlayManager.commit(OverlayManager.java:396)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at com.android.systemui.theme.ThemeOverlayApplier$$ExternalSyntheticLambda0.run(go/retraceme d216cbf7bd6da5fadd8345fbe3fba450be7b2c711b8b8030e4fc78aee7e619ab:303)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Handler.handleCallback(Handler.java:1070)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Handler.dispatchMessage(Handler.java:125)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Looper.dispatchMessage(Looper.java:333)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Looper.loopOnce(Looper.java:263)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Looper.loop(Looper.java:367)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.HandlerThread.run(HandlerThread.java:139)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: Caused by: android.os.RemoteException: Remote stack trace:
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at com.android.server.om.OverlayManagerService$1.commit(OverlayManagerService.java:957)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.content.om.IOverlayManager$Stub.onTransact(IOverlayManager.java:529)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Binder.execTransactInternal(Binder.java:1478)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 	at android.os.Binder.execTransact(Binder.java:1418)
08-06 00:00:04.004  2998  3101 E ThemeOverlayApplier: 
08-06 00:00:04.010  2998  3101 D ThemeOverlayApplier: Executing onComplete runnable
08-06 00:00:04.016  2998  2998 D ThemeOverlayController: ThemeHomeDelay: ThemeOverlayController ready with user 0
...
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: Timed out waiting for color update
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: kotlinx.coroutines.TimeoutCancellationException: Timed out waiting for 3000 ms
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at kotlinx.coroutines.TimeoutKt.TimeoutCancellationException(Timeout.kt:189)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at kotlinx.coroutines.TimeoutCoroutine.run(Timeout.kt:157)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at android.os.Handler.handleCallback(Handler.java:1070)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at android.os.Handler.dispatchMessage(Handler.java:125)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at android.os.Looper.dispatchMessage(Looper.java:333)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at android.os.Looper.loopOnce(Looper.java:263)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at android.os.Looper.loop(Looper.java:367)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at android.app.ActivityThread.main(ActivityThread.java:9287)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at java.lang.reflect.Method.invoke(Native Method)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:566)
08-06 00:00:06.863 29634 29634 W ColorPickerViewModel2: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:929)

Sorry for the late reply, I finally took time to backup everything and install your build (I needed to format data).

Microphone sound is indeed better and louder, thanks!

Indeed, it worked to update. The issue is just that the first time I didn’t sideload the google apps before first boot and then one of the slots stops working.

So, I now have the unofficial version in one of the slots. Should I now update that slot too? What’s the best practice?

It usually doesn’t matter what’s in your inactive slot. Don’t mess with it if your primary slot is working fine.

The new build is available now. The WiFi IPv6 issues should be gone now, feedback regarding this is very appreciated!

I installed the new build yesterday, worked remotely today so I was on my Wifi all day long and haven’t had a single loss of connection. Continual checks on test-ipv6.com yielded 10/10 every single time.

So I’d say this works :slight_smile: Other than that, the overall feel is very smooth, which is great as well. It now feels like a high quality phone thanks to your high quality work! :clap: :clap: :clap:

Oh—well said! I just installed the nightly build too—many thanks to @ArianK16a !