[ROM][Treble][microG]LineageOS 16.0 for HUAWEI P9

Search This thread

brookie229

Senior Member
Aug 20, 2017
77
9

unitoflife

New member
Nov 30, 2021
2
1
Hi, sorry f. late reply (right now extremely busy work-wise and also privately) - on my own device, all works as it should. Thanks for the provided log, unfortunately, besides it stating about its issues, I haven't caught anything obvious. Did you somehow modify software components of your phone (e.g. flashed or replaced anything in /system, /vendor or maybe other partitions)?
No, I didn't touch something on file system. But... right now it is working... satellites are found and I have no idea what was chagned in system globally since last check (hard to remember already something significant)...
At the previous moment it was not work at all.
At the current moment - it works, and I see another logcat result (more data related to communication between modules/etc, some errors, but working..)
Idk - looks like no issue anymore...
Anyways - thanks for reply (y)
 
  • Like
Reactions: MSe1969

P9_User

Member
Oct 27, 2020
21
0
Hi fellas.

I dont know if it fits in here but I try. I am very annoied about the telephone call app. It happenes too often that I accidently call people, soe called "pocket-call".

It would be great to need a "double click" to start a phonecall. Because once I end a phonecall, the app goes back to "most recent calls" list. mostly ending with starting a new call becor putting the phone back on its place.

Am I alone with this issue? I know, its more a user design or user behavior.
 

V0latyle

Forum Moderator
Staff member
hi there, i know it's a little off topic, is there a way that you could make a rom based on LOS 18 or 17.1? (i think one is with android 12, the other with android 11) it could be really cool try it
Please don't ask for ETAs, updates, or new builds. It's rather rude. Developers of custom ROMs are doing this completely on their own time without any compensation whatsoever. Bug reporting is fine; asking them to take on even more work is not.
 
Hi fellas.

I dont know if it fits in here but I try. I am very annoied about the telephone call app. It happenes too often that I accidently call people, soe called "pocket-call".

It would be great to need a "double click" to start a phonecall. Because once I end a phonecall, the app goes back to "most recent calls" list. mostly ending with starting a new call becor putting the phone back on its place.

Am I alone with this issue? I know, its more a user design or user behavior.
This ROM is delivered with the default LineageOS Caller app, which is based on the AOSP one.
I don't add any modifications or enhancements to it. There is a bunch of alternative Caller apps on the Playstore or alternative app stores. Maybe you'll find something, which suits your need?
 

zgfg

Senior Member
Oct 10, 2016
7,156
4,611
IMPORTANT NOTE:

I'm running out of space on my Mega site while I have actually dismissed all my Huawei phones 2+ years ago

On the other side, I have just obtained my second Xiaomi and I shall start filling the Mega with its resources and ROMs (with no other option but by deleting in parallel the old Huawei P9 ROMs)

Hence I'm asking @MSe1969 and other P9 (Oreo) users, please if you want to save those 13.7 GB of P9 Nougat/Oreo stuff, please download and copy (and publish for future users) to your own clouds on Mega, AFH or else

Since Huawei removed the old ROMs from their servers, most of the links in P9 HWOTA7 thread OP instructions are dead. However, at the time when I had my P9 phones, I upoaded all the needed to my Mega:

Of course, rebranding and upgrading to (Chinese) Oreo by HWOTA7 are prerequisites for moving from L09/L19/L29 stock to the Treble LOS. Also, the same HWOTA7 stuff will be needed in case of bricking the Oreo or if somebody wants to go back to the Lx9 Nougat

You can contact me by PM that I could schedule cleaning the P9 ROMs based on the order you download and back-up to your clouds
 
Last edited:
  • Like
Reactions: Igoran and MSe1969
IMPORTANT NOTE:

I'm running out of space on my Mega site while I have actually dismissed all my Huawei phones 2+ years ago

On the other side, I have just obtained my second Xiaomi and I shall start filling the Mega with its resources and ROMs (with no other option but by deleting in parallel the old Huawei P9 ROMs)

Hence I'm asking @MSe1969 and other P9 (Oreo) users, please if you want to save those 13.7 GB of P9 Nougat/Oreo stuff, please download and copy (and publish for future users) to your own clouds on Mega, AFH or else

Since Huawei removed the old ROMs from their servers, most of the links in P9 HWOTA7 thread OP instructions are dead. However, at the time when I had my P9 phones, I upoaded all the needed to my Mega:

Of course, rebranding and upgrading to (Chinese) Oreo by HWOTA7 are prerequisites for moving from L09/L19/L29 stock to the Treble LOS. Also, the same HWOTA7 stuff will be needed in case of bricking the Oreo or if somebody wants to go back to the Lx9 Nougat

You can contact me by PM that I could schedule cleaning the P9 ROMs based on the order you download and back-up to your clouds
Thanks for letting me know, I have startend to download yesterday and I'll finish in the course of today. I'll PM you later today.

EDIT: Getting a "transfer quota exceeded" (last, but biggest file), so have to wait 5h to continue.
 
Last edited:
  • Like
Reactions: Igoran and zgfg

lo_ol

Senior Member
Mar 15, 2013
66
26
I've got some issues after recent January update, a number of apps FC on appstart.
Log was taken after clean flash with default config. No gapps, magisk etc. Just forgot to remove custom kernel



Code:
01-23 21:14:47.191  1097  1114 I ActivityManager: Start proc 2723:com.wetter.androidclient/u0a100 for activity com.wetter.androidclient/.EntryActivity
01-23 21:14:47.202   791   791 I GRALLOC :      shrFd=10,fmt=0x1,intFmt=0x1,btStrd=4352,size=8355840,pid=791
01-23 21:14:47.202   791   791 I GRALLOC :      yuv=2,w=1080,h=1920,Stride u=0 v=0,offset u=0 v=0
01-23 21:14:47.202   791   791 I GRALLOC :      iova_size=8355840,conUsg=0x906,proUsg=0x966,     strd=1088,[afbc]HdrStrd=0 PyldStrd=0 Scrmbl=0,ionhnd = 1
01-23 21:14:47.268  2723  2723 W r.androidclien: JIT profile information will not be recorded: profile file does not exits.
01-23 21:14:47.268  2723  2723 W r.androidclien: JIT profile information will not be recorded: profile file does not exits.
01-23 21:14:47.275  2723  2723 I MultiDex: VM with version 2.1.0 has multidex support
01-23 21:14:47.275  2723  2723 I MultiDex: Installing application
01-23 21:14:47.275  2723  2723 I MultiDex: VM has multidex support, MultiDex support library is disabled.
01-23 21:14:47.285  2723  2723 D AndroidRuntime: Shutting down VM
01-23 21:14:47.286  2723  2723 E AndroidRuntime: FATAL EXCEPTION: main
01-23 21:14:47.286  2723  2723 E AndroidRuntime: Process: com.wetter.androidclient, PID: 2723
01-23 21:14:47.286  2723  2723 E AndroidRuntime: java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException: The com.google.android.gms.ads.AD_MANAGER_APP metadata must have a boolean value.
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.app.ActivityThread.installProvider(ActivityThread.java:6445)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.app.ActivityThread.installContentProviders(ActivityThread.java:5987)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5902)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.app.ActivityThread.access$1100(ActivityThread.java:200)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:106)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.os.Looper.loop(Looper.java:193)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:6718)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
01-23 21:14:47.286  2723  2723 E AndroidRuntime: Caused by: java.lang.IllegalStateException: The com.google.android.gms.ads.AD_MANAGER_APP metadata must have a boolean value.
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at com.google.android.gms.internal.ads.zzzt.attachInfo(SourceFile:13)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at com.google.android.gms.ads.MobileAdsInitProvider.attachInfo(SourceFile:3)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at android.app.ActivityThread.installProvider(ActivityThread.java:6440)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     ... 10 more
01-23 21:14:47.286  2723  2723 E AndroidRuntime: Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Boolean
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     at com.google.android.gms.internal.ads.zzzt.attachInfo(SourceFile:10)
01-23 21:14:47.286  2723  2723 E AndroidRuntime:     ... 12 more
01-23 21:14:47.290  1097  1446 W ActivityManager:   Force finishing activity com.wetter.androidclient/.EntryActivity
01-23 21:14:47.301  1097  1113 I ActivityManager: Showing crash dialog for package com.wetter.androidclient u0

Code:
01-23 21:14:50.150  1097  1446 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.tinder/.activities.LoginActivity bnds=[232,1409][437,1712]} from uid 10005
01-23 21:14:50.277   791   791 I GRALLOC :      shrFd=10,fmt=0x1,intFmt=0x1,btStrd=4352,size=8355840,pid=791
01-23 21:14:50.277   791   791 I GRALLOC :      yuv=2,w=1080,h=1920,Stride u=0 v=0,offset u=0 v=0
01-23 21:14:50.277   791   791 I GRALLOC :      iova_size=8355840,conUsg=0x906,proUsg=0x966,     strd=1088,[afbc]HdrStrd=0 PyldStrd=0 Scrmbl=0,ionhnd = 1
01-23 21:14:50.289  1097  1114 I ActivityManager: Start proc 2743:com.tinder/u0a101 for activity com.tinder/.activities.LoginActivity
01-23 21:14:50.391  2743  2743 W com.tinder: JIT profile information will not be recorded: profile file does not exits.
01-23 21:14:50.391  2743  2743 I chatty  : uid=10101(u0_a101) com.tinder identical 1 line
01-23 21:14:50.391  2743  2743 W com.tinder: JIT profile information will not be recorded: profile file does not exits.
01-23 21:14:50.813  2743  2743 I FirebaseApp: Device unlocked: initializing all Firebase APIs for app [DEFAULT]
01-23 21:14:50.857  2743  2775 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: false
01-23 21:14:50.865  2743  2743 W Bundle  : Key firebase_crashlytics_collection_enabled expected Boolean but value was a java.lang.String.  The default value false was returned.
01-23 21:14:50.867  2743  2743 W Bundle  : Attempt to cast generated internal exception:
01-23 21:14:50.867  2743  2743 W Bundle  : java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Boolean
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.os.BaseBundle.getBoolean(BaseBundle.java:900)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.os.BaseBundle.getBoolean(BaseBundle.java:860)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.crashlytics.internal.common.DataCollectionArbiter.d(SourceFile:6)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.crashlytics.internal.common.DataCollectionArbiter.a(SourceFile:1)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.crashlytics.internal.common.DataCollectionArbiter.<init>(SourceFile:11)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.crashlytics.FirebaseCrashlytics.a(SourceFile:4)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.crashlytics.CrashlyticsRegistrar.b(SourceFile:5)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.crashlytics.CrashlyticsRegistrar.a(Unknown Source:0)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.crashlytics.CrashlyticsRegistrar$$Lambda$1.create(Unknown Source:2)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.components.ComponentRuntime.a(SourceFile:1)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.components.ComponentRuntime$$Lambda$1.get(Unknown Source:4)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.components.Lazy.get(SourceFile:5)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.components.ComponentRuntime.initializeEagerComponents(SourceFile:5)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.FirebaseApp.g(SourceFile:7)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.FirebaseApp.initializeApp(SourceFile:22)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.FirebaseApp.initializeApp(SourceFile:9)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.FirebaseApp.initializeApp(SourceFile:7)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.provider.FirebaseInitProvider.onCreate(SourceFile:1)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.content.ContentProvider.attachInfo(ContentProvider.java:1920)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.content.ContentProvider.attachInfo(ContentProvider.java:1895)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.google.firebase.provider.FirebaseInitProvider.attachInfo(SourceFile:2)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.app.ActivityThread.installProvider(ActivityThread.java:6440)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.app.ActivityThread.installContentProviders(ActivityThread.java:5987)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5902)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.app.ActivityThread.access$1100(ActivityThread.java:200)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.os.Handler.dispatchMessage(Handler.java:106)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.os.Looper.loop(Looper.java:193)
01-23 21:14:50.867  2743  2743 W Bundle  :     at android.app.ActivityThread.main(ActivityThread.java:6718)
01-23 21:14:50.867  2743  2743 W Bundle  :     at java.lang.reflect.Method.invoke(Native Method)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
01-23 21:14:50.867  2743  2743 W Bundle  :     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
01-23 21:14:50.878  2743  2743 I FirebaseCrashlytics: Initializing Crashlytics 17.2.1
01-23 21:14:50.888   823  1066 E BufferQueueProducer: [com.android.launcher3/com.android.launcher3.lineage.LineageLauncher#0] disconnect: not connected (req=1)
01-23 21:14:50.888  1849  1956 W libEGL  : EGLNativeWindowType 0x7264c4f010 disconnect failed
01-23 21:14:50.889  2743  2743 I FirebaseInitProvider: FirebaseApp initialization successful
01-23 21:14:50.891  2743  2743 D Camera2Initializer: CameraX initializing with Camera2 ...
01-23 21:14:50.899  2743  2743 I CameraManagerGlobal: Connecting to camera service
01-23 21:14:50.916  2743  2743 D CameraRepository: Added camera: 0
01-23 21:14:50.919  2743  2743 D CameraRepository: Added camera: 1
01-23 21:14:50.922  2743  2782 D UseCaseAttachState: Active and online use case: [] for camera: 0
01-23 21:14:50.922  2743  2782 D UseCaseAttachState: Active and online use case: [] for camera: 1
01-23 21:14:50.924  2743  2743 D AndroidRuntime: Shutting down VM
01-23 21:14:50.925  2743  2743 E AndroidRuntime: FATAL EXCEPTION: main
01-23 21:14:50.925  2743  2743 E AndroidRuntime: Process: com.tinder, PID: 2743
01-23 21:14:50.925  2743  2743 E AndroidRuntime: java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException: The com.google.android.gms.ads.DELAY_APP_MEASUREMENT_INIT metadata must have a boolean value.
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.app.ActivityThread.installProvider(ActivityThread.java:6445)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.app.ActivityThread.installContentProviders(ActivityThread.java:5987)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5902)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.app.ActivityThread.access$1100(ActivityThread.java:200)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:106)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.os.Looper.loop(Looper.java:193)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:6718)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
01-23 21:14:50.925  2743  2743 E AndroidRuntime: Caused by: java.lang.IllegalStateException: The com.google.android.gms.ads.DELAY_APP_MEASUREMENT_INIT metadata must have a boolean value.
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at com.google.android.gms.internal.ads.zzzt.attachInfo(SourceFile:19)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at com.google.android.gms.ads.MobileAdsInitProvider.attachInfo(SourceFile:1)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at android.app.ActivityThread.installProvider(ActivityThread.java:6440)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     ... 10 more
01-23 21:14:50.925  2743  2743 E AndroidRuntime: Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Boolean
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     at com.google.android.gms.internal.ads.zzzt.attachInfo(SourceFile:5)
01-23 21:14:50.925  2743  2743 E AndroidRuntime:     ... 12 more
01-23 21:14:51.015  1097  1240 W ActivityManager:   Force finishing activity com.tinder/.activities.LoginActivity
01-23 21:14:51.022  2743  2743 I Process : Sending signal. PID: 2743 SIG: 9
01-23 21:14:51.053  1097  1446 I ActivityManager: Process com.tinder (pid 2743) has died: fore TOP
 

Attachments

  • logcat-20220123_21-14.zip
    79.5 KB · Views: 5
  • Like
Reactions: MSe1969
I've got some issues after recent January update, a number of apps FC on appstart.
Log was taken after clean flash with default config. No gapps, magisk etc. Just forgot to remove custom kernel
Thanks for the hint, I'll provide a new build - a patch taken from DivertOS went too far (it was also reverted there)
 
  • Like
Reactions: lo_ol

Rumor30

New member
Jan 29, 2022
1
0
I am a Chinese user. My SIM card can use the LTE function to send and receive text messages, but there is no sound when making a call. I can make sure it's normal on eumi. My mobile card is a Chinese operator called China Telecom. I don't know if this is related to his Volet function. Thank you very much for making this ROM, which makes my P9 reborn. The model is Eva al00
 
I am a Chinese user. My SIM card can use the LTE function to send and receive text messages, but there is no sound when making a call. I can make sure it's normal on eumi. My mobile card is a Chinese operator called China Telecom. I don't know if this is related to his Volet function. Thank you very much for making this ROM, which makes my P9 reborn. The model is Eva al00
Unfortunately, I don't know how to help here. In general, VoLTE does not work with this ROM, voice calls only work in 2G or 3G mode.
Can you produce a log?
 

mighty.ruth

New member
Feb 3, 2022
3
0
hi! thank you so much for this awesome rom. just finished installing it and it runs great, however it seems as if it's lower res/dpi. not sure if its just me, but it doesn't look sharp idk

edit: nvm it was just the display size
 
Last edited:

mighty.ruth

New member
Feb 3, 2022
3
0
hi again! so I reflashed emui 8.0 just because i didn't know if it was this rom or me, and I can confirm that this rom is in 720p. am I the only one?
 

lo_ol

Senior Member
Mar 15, 2013
66
26
If your display is just blurry, I suggest to go to display settings - live display - color calibration and set at least one of the colors to less than 100%, ie 99/100/100. Alternatively there is an option within Phh treble app, however that disables hwc and increases battery drain. Dpi can also be changed via presets from settings or smallest width in developer options

Thanks for the link - sounds like worth a try to make that part of my build...
Would you be willing to test?

Sure. There are magisk modules that mirror the apk to /system/app and those work too.
 

mighty.ruth

New member
Feb 3, 2022
3
0
If your display is just blurry, I suggest to go to display settings - live display - color calibration and set at least one of the colors to less than 100%, ie 99/100/100. Alternatively there is an option within Phh treble app, however that disables hwc and increases battery drain. Dpi can also be changed via presets from settings or smallest width in developer options



Sure. There are magisk modules that mirror the apk to /system/app and those work too.
it's all good now. I went to settings/Phh Treble settings/Huawei features and enabled "graphic issues workaround". thx anyway 👌
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 3
    New build with May '22 ASB patches available

    Hi all,
    a new build is available for download (update instructions, see OP):

    • Custom build release 2022-05-01
    • Bromite Webview 101.0.4951.53
    • F-Droid 1.15
    • MozillaNlpBackend 1.5.0
    • microG 0.2.24.214816-10
    Happy flashing!
    Regards, M.
    1
    How to update to this one without reseting to factory defaults
    As explained in OP:
    Assuming you have already my build on your device, you simply do the following:
    • Extract the .img file from the ZIP
    • Reboot the phone into fastboot mode and connect to your PC via USB cable
    • Run command 'fastboot flash system <name of extracted IMG file>'
    • Once this is finished (it will list five load and write steps), shoot the command 'fastboot reboot'
    1
    without going through the hasle of doing it everytime I flash it, modifications such as ringtones, alarms, UI sounds, boot animation, wallpapers, kernel settings, adding and removing apps, launcher, keyboards and so on while keeping the rom neat, light and small sized.
    As explained, when you do fastboot flash system <name of unzipped .img file>, you simply replace the /system partition, which is anyhow mounted read-only. All your personal settings, installed apps, etc. are stored on the /data partition, which is not touched by the update.
    - ringtones can simply be stored on your internal memory or SD card as files and used in the menu
    - alarms are set in the respective menu and kept
    - UI sound settings as well
    - boot animation is indeed more complex (I would not mess around with that tbh)
    - wallpapers are also set as part of your settings and additional ones can simply be stored on the int. memory or SD card
    - you can individually install apps (will also not touched by the update), and you can "freeze" shipped system apps
    - different launcher can be installed as regular app and then set, same applies to keyboard app
    - so with the exception of boot animation and kernel settings (for the latter, you can also get some root-enables tweaking apps, but be careful with that), I do not really see any reason to modify the ROM itself

    My thinking was; since you are the maker/upgrader/modifier of the rom that means you already have the original build that can be worked on, kept updated and republished which I was kindly asking for
    I build this from source, making use od LineageOS code repository, Google Android code repository and my own modified sources. A good starting point on how that works can be found in the LineageOS wiki (here for a different device) and specifically to my build here - so the picture is different from your idea of using some "original ROM".

    P.S: English is not my spoken language therefore, I don't know how would my words sound to a native speaker, I apologise If they come out to be rude or insulting.
    No worries :)
  • 18
    This thread is dedicated to provide Lineage-OS 16.0 builds with microG included for the HUAWEI P9 with current security patches.

    It is a treble build, therefore it could also work on other devices, but I haven't tested. And yes, the camera works!
    (Although it is based on the work of phhusson's GSI builds, some specific adaptations have been made, so I guess, it is worth a try for further Huawei devices based on EMUI 8, but that's it...)

    Features of this ROM
    Download here
    • Pre-installed microG and F-Droid like the LineageOS for microG project (own fork)
    • Pre-installed AuroraStore
    • Root included (switch on in dev. settings)
    • eSpeakTTS (FOSS TTS engine)
    • Additional security hardening features listed below
    • Access to /proc/net blocked for user apps
    • Bundled netmonitor app to allow network monitoring
    • Enhanced Privacy Guard: Switches for motion sensors and other sensors
    • Cloudflare as default DNS (instead of Google)
    • Privacy-preferred default settings
    • Optional blocking of Facebook- and Google-Tracking
    • Optional disabling of captive portal detection
    • Firewall UI
    • No submission of IMSI/phone number to Google/Sony when GPS is in use
    • Default hosts file with many blocked ad/tracking sites
    • Privacy-enhanced Bromite SystemWebView
    • Additional restrictions for secondary users
    • Increased password length
    • Hardened bionic lib and constified JNI method tables
    • Huawei Stock Camera

    Current release levels
    Custom build release 2022-05-01
    Security string: 2022-01-01
    AOSP tag: 9.0.0_r46
    Bromite System Webview: M101


    Source-code and build instructions
    Device config.: https://github.com/lin16-microg/device_phh_treble/tree/lin-16.0-eva-p9
    Build manifest: https://github.com/lin16-microg/local_manifests/tree/lin-16.0-treble


    Installation Instructions

    YOU ARE RESPONSIBLE SOLELY YOURSELF FOR ANY ACTIONS YOU DO WITH YOUR DEVICE !!!

    Please note - I won't explain any single aspect (e.g. how to install 'fastboot' on your PC or troubleshoot USB connectivity issues under Windows). Search the net and consult the search engine of your choice or look here in XDA, there is plenty of information available.

    Pre-Requisites
    • Have fastboot and adb installed on your PC and make sure, you can connect via USB to your device in fastboot mode and via adb
    • Know the key combinations to get your phone into fastboot mode and recovery mode
    • An unlocked bootloader
    • EMUI 8.0 firmware
    • Have the Huawei Stock recovery installed (not TWRP)

    ONLY, If the above pre-requisites are met, download and unpack the linked ZIP file, and flash the .img file via fastboot (EMUI 8.0 is the tricky pre-requisite - see further below).
    • Get your device into fastboot mode and connect to your PC via USB - the screen should look like below, indicating "PHONE Unlocked"
      P9_fastboot.png
    • Flash the ROM with the command fastboot flash system <name of the rom img file>.img
      fastboot-flash.png
    • Afterwards, enter the command fastboot reboot
    • Hold Power+Vol.Up to get into the Stock recovery:
      p9_stockRecovery.png
    • Choose the option "wipe data/factory reset"
      Don't 'panic' if the operation stops at a percentage significantly lower than 100% and you see a red exclamation mark, all is fine
    • Next, choose "wipe cache partition"
    • Finally choose "reboot system now"

    Some hints:
    • If you come from an EMUI 8.0 stock ROM or a different treble build (which means, you are already on EMUI 8.0), don't forget the factory reset as described.
    • If you update one of my builds from this thread, you don't need to wipe anything, so you can skip everything after the 'fastboot reboot' step!
    • On some (but not all) PCs, you may have to run fastboot as Admin (Windows) or root/sudo (Linux)

    If the above pre-requisites are NOT met, you will have some extra-rounds to perform, until you get there:
    Unlocked Bootloader
    Huawei has stopped providing unlock keys, so if you haven't got one, this thread and of course the search-engine of your choice may be helpful. I was lucky enough to obtain an official unlock key on the last day of HUAWEI's unlock page, so I have no experience with the unofficial unlock methods - good luck!

    EMUI 8.0 firmware
    Get back to Stock ROM, if you use a Custom ROM. On Stock, if not yet done, apply all updates offered to you by the Stock ROM updater, until you are on the latest officially offered Android 7 (Nougat) EMUI 5.x release.
    Huawei has shut down however their update servers for older devices and older software releases, so this may become difficult, if you are e.g. still on Android 6 - I don't have a good advice for you in this case.
    Once you are on Android 7 (aka Nougat), please visit this thread, which really explains step-by-step, what needs to be done. Really carefully ready everything and follow ALL the steps, especially, don't forget at the very end to flash the Stock EMUI recovery!
    IMPORTANT UPDATE:
    The linked thread, as well as the Openkirin documentation point - via a Russian firmware site - to the domain 'hicloud.com' for the firmware download, which seems to be down. As suggested by @zgfg you can try either
    his Mega link or e.g. https://androidhost.ru/search.html
    Update: See this post to obtain the firmware!
    Update 2: See also here

    You need your unlock key handy: During this process, the bootloader will be automatically locked several times, so you need the key a couple of times to unlock again!
    A hint for Linux users: The HWOTA tool is in fact a windows wrapper around Linux shell scripts, so there is no real need to use Windows, if you have a working Linux installation (however, make sure to replace the 'mkdir' commands in hwota_eng.sh with 'mkdir -p').


    Android 10, 11 or 12 builds?

    Simple answer: There won't be any coming from my end (my aim is to provide daily-driver capable builds and not to boot an experimental GSI with lots of issues and a non-working camera) - so stop wasting everybody's time by repeatedly asking!


    Bug reports:
    If you have a problem, please create a post with these informations:
    Build Date:
    And try to get log as described here
    Please note that I can't and won't support issues with builds using a different kernel or Xposed.
    In regards to microG, I will try my best to help when it is related to this ROM (I use it myself), but any questions of the type "the YXZ-app can't do <some sort of fancy xyz Google functionality> properly" are better asked in the respective microG forums.

    Credits
    AOSP project
    LineageOS project
    openkirin.net
    phhusson
    AndyYan
    Tecalote
    microG project
    Graphene OS project
    csagan5 (Bromite)
    WhyOrean (Aurora)
    zgfg (for very helpful contributions in this thread)


    XDA:DevDB Information
    [ROM][Treble][microG]LineageOS 16.0 for HUAWEI P9, ROM for the Huawei P9

    Contributors
    MSe1969
    Source Code: https://github.com/lin16-microg/device_phh_treble/tree/lin-16.0-eva-p9

    ROM OS Version: 9.x Pie
    ROM Kernel: Linux 4.x
    ROM Firmware Required: EMUI 8 firmware
    Based On: LineageOS

    Version Information
    Status:
    Stable
    Stable Release Date: 2022-05-07

    Created 2020-04-06
    Last Updated 2022-05-07
    5
    New build with May 2020 ASB

    Hi all, a new build is available for download:
    https://sourceforge.net/projects/li..._a_lineage16_20200508_system.img.zip/download

    To install, download, unzip and follow instructions as outlined in OP.
    The build has the following features:
    • Sec. string 2020-05-01
    • Bromite Webview on 81.0.4044.127
    • AuroraStore updated to 3.2.8
    • Fix of bundled 'netmonitor' app not starting

    Regards, M.
    5
    New build with April ASB patches available

    Hi all,
    a new build is available for download (update instructions, see OP):
    • Custom build release 2022-04-01
    • Bromite Webview 100.0.4896.57
    Happy flashing!
    Regards, M.
    4
    New build with July ASB patches

    Hi all,
    a new build is available for download (install instructions, see OP):
    https://sourceforge.net/projects/li..._a_lineage16_20200708_system.img.zip/download

    • ASB Security string 2020-07-01
    • microG: updated prebuilt GmsCore fom /e/ project (fixed FCM registration issues)
    • F-Droid updated to 1.8 / F-Droid privileged extension updated to 0.2.11
    • Aurorastore updated to 3.2.9 / AuroraServices updated to 1.0.6
    • Bromite Webview on 83.0.4103.101
    • Sepolicy: Netmonitor exception f. "Tracker Control" app

    Happy flashing - regards, M.
    4
    New build with September 2021 ASB patches available

    Hi all,
    a new build is available for download (install instructions in OP):
    • ASB Security String 2021-09-01
    • microG 0.2.22.212658-2

    Happy flashing!
    Regards, M.