- Install dependencies required to build heimdall (https://github.com/Benjamin-Dobell/Heimdall/blob/master/.github/workflows/build.yml#L14)
- Now clone and compile heimdall with the patch from Benjamin-Dobell/Heimdall#478
cd /tmp
git clone https://github.com/Benjamin-Dobell/Heimdall.git
cd Heimdall
git fetch origin pull/478/head:pr478
git checkout pr478
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DDISABLE_FRONTEND=1 ..
make
- The patched version of heimdall can be found in
bin
- Boot the device
- In device info / software info tap 7 times on "Build number" - this will enable developer options
- In developer options enable "OEM unlock" This option might not be available unless the device is connected to a wifi or mobile internet connection
- power off the device
- while pressing and holding Vol+ and Vol-, plug an USB cable (you might need to grow another hand to do so ^^)
- A blue warning screen will appear with 3 options
- Vol+: Continue
- Vol+ long press: Device unlock mode
- Vol-: Cancel
- Use "Vol+ long press" to unlock the bootloader
- On the next screen, confirm with "Vol+". This will unlock the boot loader and factory reset the device
- After unlocking the bootloader, boot the device
- Go through the android setup, connect the device to a wifi
- Repeat the steps above to enable "OEM unlock"
- In my case, "OEM unlock" was still enabled and grayed out. But be sure to have it checked.
- power off the device
- while pressing and holding Vol+ and Vol-, plug an USB cable
- A blue warning screen will appear with the same 3 options as before
- press "Vol+" to enter "download" mode
- In the top left corner are some relevant information. Be sure that it correlates with the following, otherwise bad things will happen
- FRP LOCK: Off
- OEM Lock: OFF (U)
- Download vbmeta.img
- Wifi Version: https://download.lineageos.org/devices/gts4lvwifi/builds
- LTE Version: https://download.lineageos.org/devices/gts4lv/builds
- Using heimdal compiled in the initial step, now run
./bin/heimdall flash --VBMETA /tmp/vbmeta.img --verbose
- After successfully flashing the image, the device reboots with a lot of warnings. It fails to boot into android and recommends a factory data reset
- Follow the instructions to do the factory data reset
- Android will now boot
- After unlocking the bootloader, boot the device
- Go through the android setup, connect the device to a wifi
- Repeat the steps above to enable "OEM unlock"
- In my case, "OEM onlock" was still enabled and grayed out. But be sure to have it checked.
- Power off the device, hold Vol+ and Vol-, plug an USB cable to your computer
- On the blue screen press "Vol+" to enter "download" mode
- Download recovery.img
- Wifi Version: https://download.lineageos.org/devices/gts4lvwifi/builds
- LTE Version: https://download.lineageos.org/devices/gts4lv/builds
- Using heimdal compiled in the initial step, now run
./bin/heimdall flash --RECOVERY /tmp/recovery.img --verbose --no-reboot
- The "no-reboot" option is very important. Do not let android boot at this stage!
- Now good timing is required
- Press and hold Power and Vol- until the device reboots
- As soon as the screen turns black, press and hold Power and Vol+
- If all went right, Lineage OS recovery is started. It is regognizable by thepink/purple colors and the Lineage OS logo on the top
- Repeat the whole procesdure in this chapter if anything fails
- The device must be in Lineage OS recovery and be connected via USB
- ADB must be installed on your computer
- Download Lineage OS from https://download.lineageos.org/devices/gts4lvwifi/builds
- On the device go to "Apply update", confirm with Power Key
- Then go to "Apply from ADB", confirm with Power Key
- Flash with
adb sideload /tmp/lineage-21.0-20240320-nightly-gts4lvwifi-signed.zip
- Optionally download a matching version of Google Apps from https://wiki.lineageos.org/gapps/. You neeed the ARM64 version
- On the device go to "Apply update", confirm with Power Key
- Then go to "Apply from ADB", confirm with Power Key
- Flash with
adb sideload /tmp/MindTheGapps-14.0.0-arm64-20240225_232108.zip
- On the device confirm that the package shall be installed despite that the signature verification has failed.
- Optionally latest Magisk zip from https://github.com/topjohnwu/Magisk
- On the device go to "Apply update", confirm with Power Key
- Then go to "Apply from ADB", confirm with Power Key
- Flash with
adb sideload /tmp/Magisk-v28.1.apk
- On the device confirm that the package shall be installed despite that the signature verification has failed.
- Now you must do another factory data reset. Otherwise boot will fail until you do so.
- After that you can boot into Lineage OS.
- If you have flashed Magisk, start the app and follow the instructions (install App, patch boot image) to finish the setup
Thanks for your guide.
As heimdall is only used in cli mode, there is no need to build the qt5 front end.
Pass
-DDISABLE_FRONTEND=1
to cmake to disable.cmake -DCMAKE_BUILD_TYPE=Release -DDISABLE_FRONTEND=1 ..