[OnePlus 3 & 3T Cross Device Development] MSe1969:
This thread is deprecated - please refer to its LineageOS 18.1 successor thread

This thread is dedicated to provide hardened Lineage-OS 17.1 builds with microG included for the OnePlus 3/3T with current security patches.

It is the successor of my Lineage 16.0 thread.

It may be worth to also look there, if you are looking for information.

Features of this ROM

Download here

Pre-installed microG and F-Droid like LineageOS for microG project (own fork)

Pre-installed AuroraStore

OTA Support

eSpeakTTS engine

Bromite as default browser

Additional security hardening features listed below

Cloudflare as default DNS (instead of Google)

Privacy-preferred default settings

Optional blocking of Facebook- and Google-Tracking (Settings - Network & Internet)

Optional disable captive portal detection or choose from various providers (default is GrapheneOS and not Google; Settings - Network & Internet)

Firewall UI (under Trust)

Increased max. password length of 64

No submission of IMSI/phone number to Google when GPS is in use

Default hosts file with many blocked ad/tracking sites

Privacy-enhanced Bromite SystemWebView

Extra control of sensor access for additionally installed user apps (Special access under app permissions)

Kernel kept up to date with ASB patches and Google kernel/common 'android-3.18' branch

Debloated from Oneplus blobs for Alipay, WeChatpay, Soter and IFAA

Hardened bionic lib and constified JNI method tables

Current release levels

Security string: 2021-10-05

AOSP tag: 10.0.0_r41

Bromite System Webview: M93

Source-code and build instructions

Kernel: https://github.com/lin17-microg/android_kernel_oneplus_msm8996/tree/lin-17.1-mse3

Build manifest: https://github.com/lin17-microg/local_manifests/tree/lin-17.1-microG

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

If you come from OxygenOS Stock ROM, make sure to update to the latest offered software version (if not, no issue).

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

An unlocked bootloader (see e.g. LineageOS install instructions)

OxygenOS 9.0.6 firmware, which is needed for LineageOS 17.1 - see next section

Download the most current .ZIP file of the ROM and place it to your phone's internal memory

OxygenOS 9.0.6 Firmware

If you come from my LineageOS 16.0 build - or any Android 9 or 10 based ROM, you most probably have already the proper firmware.

And yes, LineageOS 17.1 is Android 10, but the latest firmware for this device has been published by Oneplus for Android 9.

How to find out about your current firmware, if you use a Custom ROM:

Connect as root via adb to your phone and enter the command adb shell cat /system/vendor/firmware_mnt/verinfo | grep Time_Stamp

If the result is "Time_Stamp": "2019-11-04 21:25:29", you are on the latest firmware, if the date/time is earlier, you need to update the firmware. THIS THREAD has got more information for you.

If you come from an Oreo (Android 8.x) Custom ROM, READ THE OP OF THIS THREAD CAREFULLY !

I can't explain it better and I am not going to repeat or summarize this. It really is in your interest to carefully read it - you have been notified and warned. Please also pay attention to the last section named "Alipay, WeChatpay, Soter and IFAA" - I strongly recommend to use the debloated firmware.

Install TWRP recovery

If you come from stock ROM and have just unlocked your boot loader, this is the next thing to do. I recommend to use the TWRP recovery for the OnePlus 3/3T. The following instructions are based on TWRP.

To install TWRP, download the twrp-x.x.x-x-oneplus3.img file (Note: replace "x.x.x-x" in the following instructions with the respective values from the real file name) to your PC, connect the phone via USB to your PC, get it into 'fastboot mode' and enter the following command on your PC:

fastboot flash recovery twrp-x.x.x-x-oneplus3.img

Afterwards, directly boot into 'recovery mode' (enter fastboot reboot on your PC and hold Power and vol.down) - DO NOT boot into the phone's Android system after having flashed TWRP! Once TWRP has been launched, you may decide to reboot your phone and install the ROM at any time later. But the first boot after flashing TWRP must be TWRP in recovery mode.

Advanced Wipe

ONLY perform the steps described here, if you come from Stock ROM or a different Custom ROM!

Boot into recovery mode. In TWRP, choose "Wipe", "Advanced" and specify "Dalvik", "System", "Cache" and "Data" to be wiped. Make sure NOT to wipe "Internal memory". Swipe to confirm the deletion and get back into the main menu.

DO NOT

flash Gapps!

This ROM comes with pre-installed microG. So

don't

attempt to flash Gapps.

Install ROM

In the TWRP main menu, choose "Install". A file manager appears to let you navigate to your internal memory (path /sdcard). Choose the .ZIP file of our ROM and swipe to flash.

If you update from a previous version of my ROM, including my LineageOS 16.0 build, you don't need to perform a wipe. If you come from a different ROM (or stock firmware), make sure that you have performed the Wipe steps above.

When finished flashing, return to the main menu, choose "Reboot" and then "System", which will cause your phone to boot into Lineage OS 17.1 - be patient, the first boot after flashing a new ROM takes quite long!

Dealing with signed builds

Please note, that this builds is

signed with an own key

. When you come from a different build, you cannot directly "dirty-flash" this build. You have to perform a "clean flash" (recommended), or -

you do this on your own risk

- you may try the below steps.

This happens at your own risk - make a backup with TWRP before!

Download and extract the file migration.sh from this archive

This file helps you to migrate from a build signed with the publicly available test keys (i.e. all builds around, which do not state that they are signed). If you come from another signed build (e.g. official LineageOS), you have to adapt the file accordingly (see below links).

boot into TWRP

push the migration.sh file to the directory /data/local on your device and mount the /system partition in TWRP (you can do so using the dedicated TWRP's menu entry)

launch the built-in terminal in TWRP, cd into /data/local, make migration.sh executable (chmod +x) and execute the command ./migration.sh official

(In case you receive an error, try sh ./migration.sh official instead)

flash the ROM .zip

wipe Cache and Dalvik/ART Cache

reboot system

More background information and the "theory behind" can be found in the LineageOS wiki and AOSP reference.

Bug reports:

If you have a problem, please create a post with these informations:

Original Kernel shipped with this rom:

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

microG project

Graphene OS project

csagan5 (Bromite)

WhyOrean (Aurora)

nvertigo67 (for the modded 9.x firmware and for collaboration)