keyboard_arrow_left Back to the overview

Upgrade LineageOS on
Google Pixel XL

marlin

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. You actually want to upgrade your device to the newest version - if you wish to downgrade to an earlier version of LineageOS, follow your device’s instructions for installing LineageOS the first time.

Manually upgrading LineageOS

The updater app does not support upgrades from one version of LineageOS to another, and will block installation to any update for a different version. Upgrading manually requires similar steps to installing LineageOS for the first time.

  1. Build a LineageOS install package.
  2. If you are currently using (or now want to use) an application package add-on such as Google Apps, you have the following options:
    • keep using them: Download the appropriate version now (use the arm64 architecture)
    • remove them: You can only do so by performing a factory reset, which will also remove all your data.
    • start using them: You can only do so by performing a factory reset, which will also remove all your data. Download the appropriate version now (use the arm64 architecture)
  3. Make sure your computer has working adb. Setup instructions can be found here.
  4. Enable USB debugging on your device.
  5. Additionally if you are on LineageOS 16.0 or below, open Settings, then “System”, then “Developer Options”, then select “Root Access Options”, and finally “ADB Only”. Now, run adb -d root
  6. Reboot into recovery by running adb -d reboot recovery, or by performing the following:
    • With the device powered off, hold Volume Down + Power. Then use the menu to select Recovery Mode.
  7. If your device has not yet been repartitioned, select “Advanced”, then “Reboot to Bootloader”.
  8. Download Lineage Recovery. Simply download the latest recovery file, named boot.img.
  9. Now, use the volume buttons to select “Advanced”, and then “Enable ADB”.
  10. If your device isn’t already in fastboot mode, 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.
  11. 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 running fastboot as root. When the output is empty, check your USB cable (preferably use a USB Type-A 2.0 one or a USB hub) and port!
  12. Flash a recovery on your device by typing:
    fastboot flash boot boot.img
    
  13. Now reboot into recovery to verify the installation.
    • Use the menu to navigate to and to select the Recovery option.

EFS/Persist Backup

  1. If you are not in recovery, reboot into recovery:
    • With the device powered off, hold Volume Down + Power. Then use the menu to select Recovery Mode.
  2. Now, use the volume buttons to select “Advanced”, and then “Enable ADB”.
  3. Now open Terminal (Linux/macOS), or PowerShell (Windows), run adb -d shell, and then run the following commands within it:
    • dd if=/dev/block/sdd9 of=/tmp/modemst1.img
    • dd if=/dev/block/sdd10 of=/tmp/modemst2.img
    • dd if=/dev/block/sdd3 of=/tmp/persist.img
    • exit
  4. Now from that same Terminal/PowerShell, run:
    • adb -d pull /tmp/modemst1.img
    • adb -d pull /tmp/modemst2.img
    • adb -d pull /tmp/persist.img

Repartition

  1. Download the flashable repartition script from here for 32 GB models, and here for 128 GB models.
  2. Rename the downloaded zip file to repartition.zip.
  3. On your device’s screen, choose “Apply Update”, then “From ADB”.
  4. From your Terminal/PowerShell, run adb -d sideload /path/to/repartition.zip, filling /path/to/ in with the path you downloaded the repartition zip to.
  5. The device will complete the repartition process, and will display Done! on-screen, at this point please select “Advanced” then “Reboot to Recovery”, then proceed with the installation process.

  6. Wipe your data partition (this is usually named “Wipe”, or “Format”)
  7. Click Advanced, then Enable ADB.
  8. Run adb -d reboot sideload.
  9. Run adb -d sideload /path/to/zip (inserting the path to your LineageOS package).
  10. (Optionally): If you want to install any add-ons, click Advanced, then Reboot to Recovery, then when your device reboots, click Apply Update, then Apply from ADB, then adb -d sideload /path/to/zip those packages in sequence.
  11. Once you have installed everything successfully, 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.