LineageOS 16.0 is a free, community built, aftermarket firmware distribution of Android 9.0.0 (Pie), which is designed to increase performance and reliability over stock Android for your device.
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. * */
LineageOS is based on the Android Open Source Project with extra contributions from many people within the Android community. It can be used without any need to have any Google application installed. Linked below is a package that has come from another Android project that restore the Google parts. LineageOS does still include various hardware-specific code, which is also slowly being open-sourced anyway.
All the source code for LineageOS is available in the LineageOS Github repo. And if you would like to contribute to LineageOS, please visit out Gerrit Code Review. You can also view the Changelog for a full list of changes & features.
Instructions:
Take a backup first from your actual system!
Before instaling, make sure you are running the latest Oreo firmware from the latest HTC Sense.
If you are encrypted but running an AOSP ROM then you"re fine. If you come from Sense, take a full backup of all your data, boot into TWRP and format data (the option which requires you to type "yes") and clean flash accordingly. This is due to encryption changes. Do not skip this step or you will be locked out of your system by a password prompt.
If you are coming from any other ROM wiping /system & /data is strongly recommended
Download the latest build and GApps (both links are below).
SeLinux permissive ( will be fixed when the bugs are fixed )
Reporting bugs:
Grab a logcat right after the problem has occurred (please include at least a few pages of the log, not just the last few lines, unless you know what you"re doing).
If it is a random reboot, grab /proc/last_kmsg (do not bother getting a logcat unless you can get it just before the reboot, a logcat after a reboot is useless).
Remember to provide as much info as possible. The more info you provide, the more likely that the bug will be solved.