Install LineageOS on
Lenovo K12 Pro
cebu
Do not continue after something fails!
Basic requirements
- Read through the instructions at least once before actually following them, so as to avoid any problems due to any missed steps!
- Make sure your computer has
adb
andfastboot
. Setup instructions can be found here. - Enable USB debugging on your device.
- Make sure that your model number is one of the following (exact match required!):
- XT2091-7
- Boot your device with the stock OS at least once and check every functionality.
Warning: Make sure that you can send and receive SMS and place and receive calls (also via WiFi and LTE, if available), otherwise it won’t work on LineageOS either! Additionally, some devices require that VoLTE/VoWiFi be utilized once on stock to provision IMS.
- LineageOS is provided as-is with no warranty. While we attempt to verify everything works you are installing this at your own risk!
Unlocking the bootloader
- Connect the device to your PC via USB.
- On the computer, open a command prompt (on Windows) or terminal (on Linux or macOS) window, and type:
adb -d reboot bootloader
You can also boot into fastboot mode via a key combination:
- With the device powered off, hold Volume Down + Power.
- Once the device is in fastboot mode, verify your PC finds it by typing:
fastboot devices
If you don’t get any output or an error:
- on Windows: make sure the device appears in the device manager without a triangle. Try other drivers until the command above works!
- on Linux or macOS: If you see
no permissions fastboot
try runningfastboot
as root. When the output is empty, check your USB cable and port!
-
Follow the instructions at Motorola Support to unlock your bootloader.
Note: Some newer Motorola devices have a waiting period before you can enableOEM Unlock
option in the developer options. It can sometimes take up to one week.Note: If your device is not supported by the Motorola Bootloader Unlock website, you may be able to use an alternative bootloader unlock method like SunShine, though they only support some devices/firmwares. - Since the device resets completely, you will need to re-enable USB debugging to continue.
Flashing additional partitions
- Download the following files from here.
- dtbo.img
- Power off the device, and boot it into bootloader mode:
- With the device powered off, hold Volume Down + Power.
- Flash the downloaded image files to your device by typing:
fastboot flash dtbo dtbo.img
Installing Lineage Recovery using fastboot
- Download Lineage Recovery. Simply download the latest recovery file, named
recovery.img
.Important: Other recoveries may not work for installation or updates. We strongly recommend to use the one linked above! - Flash recovery onto your device:
fastboot flash recovery recovery.img
- Now reboot into recovery to verify the installation.
- Use the menu to navigate to and to select the
Recovery
option.
Note: If your recovery does not show the LineageOS logo , you accidentally booted into the wrong recovery. Please start at the top of this section! - Use the menu to navigate to and to select the
Ensuring all firmware partitions are consistent
In some cases, the inactive slot can be unpopulated or contain much older firmware than the active slot, leading to various issues including a potential hard-brick. We can ensure none of that will happen by copying the contents of the active slot to the inactive slot.
To do this, sideload the copy-partitions-20220613-signed.zip
package by doing the following:
- Download the
copy-partitions-20220613-signed.zip
file from here. - Sideload the
copy-partitions-20220613-signed.zip
package:- On the device, select “Apply Update”, then “Apply from ADB” to begin sideload.
- On the host machine, sideload the package using:
adb -d sideload copy-partitions-20220613-signed.zip
Note: The copy-partitions script was created by LineageOS developer erfanoabdi and filipepferraz - Now reboot to recovery by tapping “Advanced”, then “Reboot to recovery”.
Installing LineageOS from recovery
- Download the LineageOS zip file that you would like to install or build the package yourself.
- If you are not in recovery, reboot into recovery:
- With the device powered off, hold Volume Down + Power, then select “Recovery mode” using Volume keys.
- Now tap Factory Reset, then Format data / factory reset and continue with the formatting process. This will remove encryption and delete all files stored in the internal storage, as well as format your cache partition (if you have one).
- Return to the main menu.
- Sideload the LineageOS
.zip
package but do not reboot before you read/followed the rest of the instructions!- On the device, select “Apply Update”, then “Apply from ADB” to begin sideload.
- On the host machine, sideload the package using:
adb -d sideload filename.zip
.Tip: After the package is installed, recovery will inform you that reboot to recovery is required to install add-ons. In case you want to do that, please select “Yes,” otherwise “No”.Tip: Normally, adb will reportTotal xfer: 1.00x
, but in some cases, even if the process succeeds the output will stop at 47% and reportadb: failed to read command: Success
. In some cases it will reportadb: failed to read command: No error
oradb: failed to read command: Undefined error: 0
which is also fine.
Installing Add-Ons
arm64
architecture), you can download it from here.
This add-on needs to be installed before booting into LineageOS for the first time!- Click
Apply Update
, thenApply from ADB
, thenadb -d sideload filename.zip
for all desired packages in sequence.
When presented with a screen that saysSignature verification failed
, clickYes
. It is expected as add-ons aren’t signed with LineageOS’s official key!
All set!
Once you have installed everything successfully, you can now reboot your device into the OS for the first time!
- Click the back arrow in the top left of the screen, then “Reboot system now”.
Get assistance
After you’ve double checked that you followed the steps precisely, didn’t skip any and still have questions or got stuck, feel free to ask on our subreddit or in #LineageOS on Libera.Chat.