keyboard_arrow_left Back to the overview

Install LineageOS on
Sony Xperia M

nicki

Basic requirements

  1. Read through the instructions at least once before actually following them, so as to avoid any problems due to any missed steps!
  2. Make sure your computer has adb and fastboot. Setup instructions can be found here.
  3. Enable USB debugging on your device.
  4. Boot your device with the stock OS at least once and check every functionality.
  5. 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

  1. On the device, dial *#*#7378423#*#* (*#*#SERVICE#*#*) to launch the service menu.
  2. Go to service info > configuration and check rooting status - you can only continue if it says Bootloader unlock allowed: Yes.
  3. Go to System Settings > About Phone and record the first IMEI number, which is necessary to get an unlock code from Sony in a later step.
  4. Connect the device to your PC via USB.
  5. 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 Up and connect the USB cable. The notification light should turn blue.
  6. Once the device is in fastboot mode, verify your PC finds it by typing:
    fastboot devices
    
  7. Follow the instructions on Sony’s official unlocking website to generate an unlock code for your bootloader.
  8. Use your code to unlock the bootloader of your device:
    fastboot oem unlock <your_unlock_code>
    
  9. Since the device resets completely, you will need to re-enable USB debugging to continue.

Installing a custom recovery using fastboot

  1. Download a custom recovery - you can download TWRP. Simply download the latest recovery file, named something like twrp-x.x.x-x-nicki.img.
  2. Connect your device to your PC via USB.
  3. 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 Up and connect the USB cable. The notification light should turn blue.
  4. Once the device is in fastboot mode, verify your PC finds it by typing:
    fastboot devices
    
  5. Temporarily flash TWRP to boot:
    fastboot flash boot twrp-x.x.x-x-nicki.img
    
  6. Reboot to the TWRP recovery:
    fastboot reboot
    
  7. Push the TWRP image to your device:
    adb -d push twrp-x.x.x-x-nicki.img /sdcard
    
  8. Enter shell on the device:
    adb -d shell
    
  9. Flash TWRP to recovery permanently:
    dd if=/sdcard/twrp-x.x.x-x-nicki.img of=/dev/block/platform/msm_sdcc.1/by-name/FOTAKernel
    
  10. Exit the adb -d shell:
    exit
    

Installing LineageOS from recovery

  1. Build a LineageOS installation package.
  2. If you are not in recovery, reboot into recovery:
    • With the device powered off, boot the device and press Volume Up when the notification light is pink.
  3. Now tap Wipe.
  4. Now tap Format Data and continue with the formatting process. This will remove encryption and delete all files stored in the internal storage.
  5. Return to the previous menu and tap Advanced Wipe, then select the Cache and System partitions and then Swipe to Wipe.
  6. Sideload the LineageOS .zip package:
    • On the device, select “Advanced”, “ADB Sideload”, then swipe to begin sideload.
    • On the host machine, sideload the package using: adb -d sideload filename.zip.

Installing Add-Ons

  1. Repeat the sideload steps above for all desired packages in sequence.

All set!

Once you have installed everything successfully, you can now reboot your device into the OS for the first time!

  • Run adb -d reboot.

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.