Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* We are not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at us for messing up your device, we will laugh at you.
*
*/
Important information:
I made this thread in order to avoid the off topic in the official LineageOS thread by @dianlujitao (http://forum.xda-developers.com/oneplus-3/development/rom-cyanogenmod-14-1-oneplus-3-t3496850).
The ROM that I propose is an experimental build using the official LineageOS 14.1 commits with some extra stuff that are not yet merged for testing. In order to avoid issues with repopicking, I use my own repos that are forked from the official repos. You can find them at the end of the post.
The commits that are included which are not merged are:
Please be aware that I might be missing some commits, the easiest way is for you to check the repo commits
All new builds will be in LineageOS_OOS4.0.3_OMS. I will keep including basic OMS functionality until issues arrive. At that time, I will remove and stop supporting OMS.
Please be aware that this is for advanced users!
I share all of my building information in order to help the users know what is included and how to reproduce. However, if you share your builds, please quote this thread in order to give the correct credits to the correct persons.
New builds (after 2017/1/15) uses F2FS backported from 4.10 kernel, you may meet compatibility problems such as deadlocks. If you do, flash the modified TWRP from @arter97 or from @dianlujitao and choose "Wipe -> Format Data" to format (not just wipe) your /data partition. This will clean the entire /data partition, including the emulated sdcard, so don't forget to backup your data!. After that, your data partition will be formatted into ext4, if you want to keep using f2fs, just convert fs type normally in TWRP.
It is highly recommended to use the modified TWRP from dianlujtao because the TWRP kernel is the same as the Android kernel, including 4.10 F2FS, which keeps 100% compatibility with LineageOS 14.1. There's no guarantee that other TWRP author will use the right kernel. Btw, NEVER choose the outdated OFFICIAL TWRP, it's out of maintenance!
The following will not be supported here:
I am not a dev, I only build the ROM. This can be read by the real dev, @dianlujitao. If you find a bug, please attach a logcat. You're kindly invited to not report bugs if you:
Known bugs:
Installation:
Roomservice + Building process
Download:
https://www.androidfilehost.com/?a=show&w=files&flid=75317
Version Information
Status: Nightly
Created : 2016-12 -13
Latest build: 2017-03-05
Changelog
Credits
https://github.com/LineageOS
https://github.com/Matssa56
I made this thread in order to avoid the off topic in the official LineageOS thread by @dianlujitao (http://forum.xda-developers.com/oneplus-3/development/rom-cyanogenmod-14-1-oneplus-3-t3496850).
The ROM that I propose is an experimental build using the official LineageOS 14.1 commits with some extra stuff that are not yet merged for testing. In order to avoid issues with repopicking, I use my own repos that are forked from the official repos. You can find them at the end of the post.
The commits that are included which are not merged are:
- Kernel modification in order to pass SafetyNet CTS check
- OMS / Substratum (fully included using n-mr1 tree)
- 160327 160328 (kernel) --> Postponed
- 160726 163935 (device)
- 161956 (OMS extra stuff)
- 161709 (hardware_cyanogen)
Please be aware that I might be missing some commits, the easiest way is for you to check the repo commits
All new builds will be in LineageOS_OOS4.0.3_OMS. I will keep including basic OMS functionality until issues arrive. At that time, I will remove and stop supporting OMS.
Please be aware that this is for advanced users!
I share all of my building information in order to help the users know what is included and how to reproduce. However, if you share your builds, please quote this thread in order to give the correct credits to the correct persons.
New builds (after 2017/1/15) uses F2FS backported from 4.10 kernel, you may meet compatibility problems such as deadlocks. If you do, flash the modified TWRP from @arter97 or from @dianlujitao and choose "Wipe -> Format Data" to format (not just wipe) your /data partition. This will clean the entire /data partition, including the emulated sdcard, so don't forget to backup your data!. After that, your data partition will be formatted into ext4, if you want to keep using f2fs, just convert fs type normally in TWRP.
It is highly recommended to use the modified TWRP from dianlujtao because the TWRP kernel is the same as the Android kernel, including 4.10 F2FS, which keeps 100% compatibility with LineageOS 14.1. There's no guarantee that other TWRP author will use the right kernel. Btw, NEVER choose the outdated OFFICIAL TWRP, it's out of maintenance!
The following will not be supported here:
- Custom kernels
- Mods
- Xposed
I am not a dev, I only build the ROM. This can be read by the real dev, @dianlujitao. If you find a bug, please attach a logcat. You're kindly invited to not report bugs if you:
- Flashed a custom kernel
- Installed or did mods from untrusted sources
- Modified system files
Known bugs:
- F2FS ROMs can have deadlocks or other issues, please use the new TWRP
- Some OMS themes apparently don't work, can be linked to missing root for masquerade or substratum app (use SuperSU, not in-built root, uninstall and install Substratum app again)
- Built-in root removed by LineageOS, flashable addon exists (https://download.lineageos.org/extras), only needed once apparently
- Wifi calling doesn't work after reboot or airplane mode --> Need to toggle the switch in Settings to make it work again
- OOS Camera port doesn't work (no postprocessing, low quality photos) --> Use HAL 1 with flashable zip (https://forum.xda-developers.com/showpost.php?p=70983628&postcount=1879)
- other stuff
Installation:
- Download the zip
- Install a compatible Recovery (Modified TWRP)
- Perform a nandroid backup of your current ROM (Optional)
- Wipe data/factory reset unless you want to dirty flash
- Flash LineageOS
- Optional: Install the Google Apps addon package (if clean flash)
- Reboot
Roomservice + Building process
Here is the roomservice.xml of this ROM:
Here is the rough building process (all the repo updating, repopick conflicts, etc... are not shown):
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="LineageOS/android_device_oppo_common" path="device/oppo/common" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_device_qcom_common" path="device/qcom/common" remote="github" revision="cm-14.1" />
<project name="TheMuppets/proprietary_vendor_oneplus" path="vendor/oneplus" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_device_oneplus_oneplus3" path="device/oneplus/oneplus3" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_kernel_oneplus_msm8996" path="kernel/oneplus/msm8996" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_external_sony_boringssl-compat" path="external/sony/boringssl-compat" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_external_stlport" path="external/stlport" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_vendor_nxp-nfc_opensource_Nfc" path="vendor/nxp-nfc/opensource/Nfc" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_vendor_nxp-nfc_opensource_frameworks" path="vendor/nxp-nfc/opensource/frameworks" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_vendor_nxp-nfc_opensource_libnfc-nci" path="vendor/nxp-nfc/opensource/libnfc-nci" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_packages_resources_devicesettings" path="packages/resources/devicesettings" remote="github" />
<project name="TeamSubstratum/masquerade" path="packages/apps/masquerade" remote="github" revision="n" />
</manifest>
- Use LineageOS roomservice
- Cleaning output directory
- Sync repo and prepare repopick commands
- Repopick open commits from LineageOS
- Clean build directory (sometimes necessary)
- Generate changelog
- Prepare build
- Config jack server + start server
- Build ROM
- Copy zip file to host and cleanup
- Kill jack server
Download:
https://www.androidfilehost.com/?a=show&w=files&flid=75317
Version Information
Status: Nightly
Created : 2016-12 -13
Latest build: 2017-03-05
Changelog
Code:
Project name: device/oneplus/oneplus3/
* df7c1db Revert "op3: remove highspeed recording profiles"
* 13e4b5d op3: disable wpa_supplicant log spam
Project name: hardware/qcom/audio-caf/msm8916/
* 1e33348 hal: dolby: Only set C_KEY if ACDB License is enabled.
Project name: vendor/cm/
* 3a03129 OMS: Add masquerade for Substratum OMS themes
Credits
- CM team
- LineageOS team
- Substratum team
- @dianlujitao
- @ivanich
- @siankatabg
- @Sultanxda
- @miscom
- @flo071
- @arter97
- @piats
- @nicesoni_ash
- everyone else that helped me
https://github.com/LineageOS
https://github.com/Matssa56
Last edited: