This is a natural continuation/extension of the LineageOS 16.0 GSIs I've been making since March 2019.
If you clicked in here, I bet you know what LineageOS is already, but just to fill the blank:
Disclaimer:LineageOS is a free, community built, aftermarket firmware distribution of Android, which is designed to increase performance and reliability over stock Android for your device.
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. 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 Gerrit Code Review.
This is still mostly a LineageOS team / PHH @phhusson effort, credits to them and all associated for making all this possible.
No flashing instructions will be offered. If you're here in this forum, you should know what you're doing.
No guarantees that everything would work. This is a GSI, bugs are bound to happen.
Compressed as .xz archives - extract first.
Vanilla except for these changes:
- Modifications needed to make it build/boot/feature-complete, see below
- Revived navbar layout tuning via sysui_nav_bar tunable
- Disabled "vendor mismatch" warning on boot
- Signature spoofing support from MicroG (preliminary patch for Android 10)
- Default stretch-to-fullscreen (force apps to render in 18:9)
If you have a relatively low-end device and experience UI stutters, try this simple build.prop trick (technically a debug property, so use at your own risk). Thanks @SnapTheRipper for bringing it up!
Stuff on GitHub (builders-only):
Since builders' stuff aren't really interesting to end users, I decided not to separately document the modifications needed in this post; instead just check out the scripts/patches, where most things should be self-explanatory: treble_build_los, treble_patches (PHH's treble_patches adjusted for LOS). Not the cleanest code, but should help if you need some clues.