I used below instructions to flash LineageOS on a stock Samsung Galaxy S7 (herolte, arm64, exynos 8890). no rooting was required. If you intend to follow these instructions, do this at your own risk - this will surely delete all data on your phone and void manufacturer's warranty. Also, there is always a risk of bricking your device. Proceed at your own risk!
- Enable Developer Options. (Settings > About device > Software Info > tap Build number 7 times.
- In Developer Options enable USB Debugging and OEM Unlock.
- Shut Down the device.
- On your PC download ODIN 3. (I used version 3.12.3). Also download TWRP Custom Recovery image in .tar format (I used version 3.1.1-0).
ODIN is a ROM flashing tool for Samsung devices that we'll use to install Custom Recovery (TWRP) image. I initially tried to use Heimdall Suite, but it didn't work with my S7. ODIN worked just fine.
- Boot your Galaxy S7 into Download Mode (Vol Down + Home + Power).
- Start Odin3 and connect the phone via USB cable. If Odin detects your phone you'll see something like this:
If that doesn't happen, you may need to install Samsung Drivers. In my case I went to Device Manager, found the phone under Universal Serial Bus controllers, right clicked on the device and selected Update Driver > Search Automatically. Windows 10 found and installed driver automatically. If you are using Windows 7, you may need to find the driver yourself online...
- Click AP button in Odin and select your previously downloaded TWRP .tar image. Press Start and wait for the TWRP Custom Recovery to be installed.
- Shut down the phone (Vol Down + Power) and then boot into Recovery Mode (Vol Up + Home + Power). This should load just installed TWRP Recovery.
- Go do Wipe and perform 2 wipes - Factory Reset and Format Data.
This will delete all data from your phone.
- Now using Windows Explorer upload 2 .zip files to the phone - LineageOS image (I used version 14.1) and appropriate Google Apps image (in my case it was ARM64 / Android 7.1 / nano).
- Using TWRP first install LineageOS image, then without rebooting the phone, Google Apps image.
- Restart the phone and it should now boot in LineageOS.
Update: I had an issue with this LineageOS 14.1 installation where audio level was very low in recorded videos and recorded audio clips. This didn't affect voice calls. Without finding a quick solution I replaced LineageOS with Android Nougat 7.0 ROM by ambasadii. It's basically a Samsung ROM that was cleaned from knox, crapware, etc. and with bunch of added (optional) customisation. Google Apps are built-in so no need to download this separately. You can choose whether to enable root during installation. I didn't have any issues with this ROM and it resolved abysmal battery life I had with stock ROM.