[Samsung Galaxy S9 & S9+ Cross Device Development] AzzyC:
[IMG="LineageOS Head Banner"]https://img.xda-cdn.com/_qciZ_MtPTGjDb-adIt4fAUOirk=/https%3A%2F%2Fimg.xda-cdn.com%2Fy-LtXHGCDBH0KxFw9MxWAPF3guk%3D%2Fhttp%253A%252F%252Fi.imgur.com%252F2okPze5.png[/IMG]How is this different to the 'Official' Build?

From October 17th onwards, the Official builds had merged N9 sources which has ridden users the chance of flashing custom kernels due to the new N9 dependency. These builds aim to backtrack that, reverting to S9(+)'s Oreo Vendor, to gain custom kernel support again. Also, the firmware source used in the 'Official' builds have become fairly antique, so it was time for a refresh and use the latest and final Oreo source (BSB1) Samsung had to give, and an upstreamed kernel of latest (almost always) ELS thanks to [MENTION=9116297]Eamo5[/MENTION]'s Endurance Kernel being baked into the builds.

Aside from these factors and a few more listed below, this is the LineageOS you know and love. Although LineageOS' nightly-build system is great, there is only so much change that can happen over a night. You can expect these builds updating to cover latest Security Patch a.k.a Monthly Builds, but maybe more if a great change is required.

Simple motive: Have a solid daily driver before the Pie Tree sources are dropped.

Screenshots

If you are on the App they may instead be at the bottom of the post

View attachment 4753337 View attachment 4753338 View attachment 4753339 View attachment 4753340

What's working:

As this build is based on the 'Official' LineageOS build, it complies with the device support requirements, which means including but not limited to these hardwares will work:

Wi-Fi

Bluetooth

Mobile Network (Calling, Data, etc.)

Audio

USB

GPS

NFC

Camera

Fingerprint Sensor - Noticeable speed improvement reverting to an S9(+) Vendor.

Software:

The build has overridden auto-generated fingerprint keys, with an official, whitelisted fingerprint from Samsung, which can also be found in MagiskHideProps. This ensures SafetyNet passes without the need for extra flashing - refer to above screenshot also.

F2FS Support - Instructions to switch from default ext4 to f2fs

Miscellaneous - Overlays:

- Dialer - Call recording enabled. If your country is not blacklisted (for legality reasons) you should see a 'Record' button during your call.

- Trebuchet - Notification Badges

- Files - File Operation Dialog Box, Default Show Internal Storage

- Settings - Default Enable Autobrightness for Night Time flashers; Default Disable Bluetooth and LED

- SystemUI - Button to Expand Notifications; Notifications fade on dismiss

- Snap: api v2 enabled for better quality pictures and remove green artefacts & flashing.

What's not working:

Samsung's own features such as Samsung Pay, KNOX, Theme Center, Game Launcher, etc. won't be ported to LineageOS. They may have their own implementation to similar functions, though.

Iris sensor does not work because AOSP upstream does not support that yet.

IMS services (VoLTE, VoWiFi, etc). Samsung has their own proprietary implementation. It is not really possible to easily port.

Encryption Support as of now, exploring for a workaround (if there is one).

Bugs:

Lock screen shortcut - Camera: Screen flashes white, and then Camera force closes using shortcut.

Work around: Install another app using Camera action (e.g. SnapChat) and set stock Camera to default for shortcut.

Instructions:

Make sure TWRP has been installed and is functional.

Download the latest build, Vendor and optionally GApps - Links found under the header below.

Reboot to Recovery

Wipe data and cache (required if you are not currently using LOS and are coming from OneUI or SamExp.)

Install Vendor image to Vendor partition.

Flash the latest build (and GApps if you downloaded it)

If you are on and beyond April Patch (OneUI), do not flash a found Oreo Firmware as you will lose Baseband (Sim, Network, RIL). There is also no need to change firmware.

Reboot to System.

If a new build is released, to update:

Downloading and flashing a later build, will automatically replace (wipe & install) the /system partiton and retain your compatible User /data partition and firewall due to LineageOS' addon.d supprort.

You also do not need to flash GApps again, as they too have addon.d support, backing up which GApps you have installed and holding them until after the /system partition wipe has been done.

Same applies to Magisk Root due to (you guessed it) addon.d support too. It holds your currently installed Modules until after the /system partition wipe has been done.

Therefore, due to these addon.d files surviving because of the way LineageOS.zip manipulates the wipe to the /system partition there is no need to wipe partitions manually. Just leave it to the lone flash.

However, do remove any system modified theme overlays (substratum) to ensure no loop on boot, which may then result needing to wipe.

Downloads:

Vendor: Included to the respective Device drives below

Samsung Galaxy S9 (G960F): https://drive.google.com/drive/folders/131WWohHbpeZroYaHISBPpPnhDKYA6kj2

Samsung Galaxy S9+ (G965F): https://drive.google.com/drive/folders/1cr-ivOdTj8lo3p9kYjGcxT1AvgFYy3M9

OpenGApps (Optional): https://opengapps.org/

Contact:

Telegram Group - Handle @invisibazinga2 a.k.a Lil' G-Raf

Contributors:

Big thanks to: [MENTION=6371894]jesec[/MENTION] ; [MENTION=7861769]Synt4x.93[/MENTION] ; [MENTION=4610599]Ivan_Meler[/MENTION] ; [MENTION=9116297]Eamo5[/MENTION] ; please check GitHub commit history for anybody that I may have missed out, you have all been great!

ROM Information

LineageOS Source: https://github.com/LineageOS

Android Security Patch: May

Android Version: 8.1.0

Kernel Version: ELS - 4.9.xx - Endurance Kernel - Version subjected to change with ELS updates.

Device Source: https://github.com/AzzyC