Appuals is happy to present a totally in-depth guide to almost anything an Android enthusiast would want to achieve on the Pixel XL running Android 9.0.0 (Pie) after the October 2018 security patch. Much of the information also applies to previous security patch versions, but this guide contains the most up-to-date steps for unlocking, rooting, and modding.
Its important to pay attention and follow this guide carefully. Especially with ARB (Anti-Rollback Protection) being introduced in Android Pie. So in this guide we will cover all the most important procedures for Pixel XL owners running Android 9 (Pie), such as unlocking or re-locking the bootloader, installing stock or custom ROMs, custom kernels, custom recovery such as TWRP, and systemless root.
Much of the information (such as root procedures) can also work with the Pixel device, if you have the correct files – however, this guide is not intended for use with the Pixel 2 or Pixel 2 XL devices.
Requirements and Downloads
- Google Pixel XL or Verizon Pixel XL (with an unlockable bootloader)
- The latest Android 9.0.0 (Pie) factory or OTA images (codename Marlin for Pixel XL):
Factory Images
OTA Images:
Driver Binaries
- Pixel XL binaries for Android (PPR1.181005.003, Oct 2018, Telus Only)
- Pixel XL binaries for Android (PPR2.181005.003, Oct 2018)
ADB on your PC (See Appual’s guide How to Install ADB on Windows)
Unlocking or Re-Locking Pixel XL Bootloader
Before proceeding, you should seriously create a backup of your internal storage data. Unlocking an Android device’s bootloader will typically perform a factory reset on your data, thus you need something to restore all your apps and other important files from.
- Activate Developer Options: Tap Settings > System > About Phone > Tap Build Number until you see you’re a Developer. Tap back > Developer Options. Enable OEM Unlock and, USB Debugging.
- Turn off your Pixel XL and reboot into the Bootloader Mode. Hold Volume Down for a few seconds, then hold down the Power button for a brief moment, and release both buttons. Your Pixel XL should reboot into the Bootloader Mode.
- Connect the phone to the Computer with USB cord.
- Open an ADB terminal (hold Shift + right click in your main ADB folder and choose Open a Command Window Here) type: fastboot flashing unlock
- You should see a request for confirmation on your phone, use the volume keys to scroll and the power key to select.
- Allow the process to complete and then type in ADB: fastboot reboot
When your phone reboots, you may disconnect your USB cable. You will need to go through the Android setup wizard, since your phone was reset.
Note: After unlocking your bootloader, you’ll see a warning: Your device software can’t be checked for corruption. Please lock the bootloader. You will see this warning until, you re-lock the bootloader.
Important: Do not re-lock your bootloader until you have returned the device to stock!
Re-Lock the Bootloader
- Boot into the Bootloader mode.
- Launch an ADB terminal on your PC and type the following command: fastboot flashing lock
- You should see a request for confirmation on your phone, use the volume keys to scroll and the power key to select.
- Allow the process to complete, then type this on the ADB terminal: fastboot reboot
- When your phone reboots, you will need to go through the Android setup wizard.
- Enable Developer Options: Settings > System > About phone > Tap Build number 7 times.
- Tap Back > Developer options and toggle OEM Unlock off.
Flashing Stock Factory Image or OTA
If you are performing a major upgrade, such as moving from Android 8.1.0 (Oreo) to Android 9.0.0 (Pie), it is highly recommend to wipe data and do a clean install. Do not dirty flash!
- If Magisk is installed, flash the latest Magisk-uninstaller-20180719.zip – Post 1, Downloads before installing factory image.
- Backup your data and Internal storage
- Download the appropriateFactory Image: “marlin” for Pixel XL to your Computer.
- Extract the factory Image to the platform-tools folder or the folder that has fastboot in it.
If you want to keep your data:
- Open the folder you extracted the Factory Image to and Edit the flash-all.bat file to remove -w from this command: fastboot -w update image-marlin-aaa9.999999.999.zip
Note: If you do not remove the -w not only will your data be erased but also your internal storage will be erased. - Boot into the Pixel XL Bootloader
- Connect the phone to the Computer with USB cord.
- Open an ADB terminal on your PC and enter the following command: flash-all
- Reboot your phone.
If you have wiped your data (as recommended):
- Open the folder you extracted the Factory Image to and Verify the flash-all.bat file has the -w in this command: fastboot -w update image-marlin-aaa9.999999.999.zip
Note: This will erase your data and internal storage. - Reboot into the Pixel XL bootloader
- Connect the phone to the Computer with USB cord.
- Open an ADB terminal on your PC and type: flash-all
- Now reboot your Pixel XL.
ADB Sideloading on the Pixel XL
- Boot into Pixel XL’s Recovery Mode (turn off your Pixel XL, then hold Volume Down + Power to boot into Bootloader Mode, then use volume keys to highlight Recovery Mode, and press power to choose it.)
- Connect your Pixel XL to your computer via USB.
- Launch an ADB terminal on your PC.
- In Recovery Mode on your Pixel XL, tap Advanced > ADB Sideload. Then swipe the slider to start the ADB connection.
- Place the .zip file you want to sideload over ADB to your main ADB pathway (wherever adb.exe is located).
- In the ADB terminal you will then type: adb sideload <space> <file name>
How to Extract and Flash boot.img
Be warned that flashing a boot.img will remove root if your Pixel XL is already rooted.
- After downloading a factory image to your PC, you can extract the boot.img from within.
- Then you will extract the Factory Image file (marlin-opm-9.999999.999-99a-factory-a9a9999.zip) to a folder.
- Open the folder and, extract the Image file (image-marlin-aaa9.999999.999.99a.zip).
- Open the folder you extracted the ‘image file’ to and copy the boot.img file to the platform-tools or to the folder that has fastboot in it.
- Boot your Pixel XL to the Bootloader Mode.
- Connect your Pixel XL to your PC via USB.
- Launch an ADB terminal, and type: fastboot flash boot –slot all boot.img
- Reboot your phone.
Rooting with Magisk to Pass SafetyNet
Warning! Please set a PIN on your device before installing TWRP (Settings > Security & Location > Screen Lock > PIN). Also perform a backup of your internal storage and data.
TWRP for Google Pixel XL:
- TWRP 3.2.3-1 for Google Pixel XL
- twrp-3.2.3-1-marlin.img – Download to your computer
- twrp-pixel-installer-marlin-3.2.3-1.zip – Download to your phone
Magisk – Download to your phone
Custom kernels (Optional – choose one) – Download to your phone
- [KERNEL] [October 1] Pixel XL ElementalX 4.08 (Pie) by flar2
- [MARLIN/SAILFISH] [9.0.0] [3.18.124] [CLANG 7.0] Flash Kernel 2.09 by nathanchance
- [P][KERNEL][02.10.2018] Kirisakura-Harmony-PIE 6.05 [3.18.123] by Freak07
- [KERNEL][9.0.0][3.18.122] PureZ-Kernel-2.0 for Google Pixel XL [15/09/2018] by ZawZaw
- [Kernel][9.0] NSFW-kernel R25 by bsmitty83
- Reboot your Pixel XL to the bootloader mode.
- Connect the phone to the Computer with USB.
- Copy twrp-3.2.3-1-marlin.img to the platform-tools folder or folder that has fastboot in it and rename it twrp.img.
- Open an ADB terminal on your PC and type: fastboot boot twrp.img
- This should automatically reboot your Pixel XL into a temporary TWRP.
- When TWRP boots, disconnect phone from computer and swipe to allow modifications.
- In the TWRP main menu, go to Install.
- Choose the twrp-pixel-installer-marlin-3.2.3-1.zip
- Swipe the slider to install, and when it is finished, tap Reboot Recovery.
- If you are rerooting, tap Install, select Magisk’s uninstaller.zip, and swipe the slider to install.
If You Will Install a Custom Kernel, and Want Root
ElementalX
- Tap Install, select ElementalX-P-4.08.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
Flash
- Tap Install select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Tap Add more Zips, select flashkernel-marlin-v2.09.zip
- Swipe Slider to Install
- Save Log
- Reboot System
Kirisakura-Harmony
- Tap Install, select Kirisakura-Harmony-PIE-6.05_3.18.123_Android_PIE.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
PureZ
- Tap Install, select PureZ-Kernel-marlin-2.0.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
NSFW-R25
- Tap Install, select R25-NSFW-kernel-PIE.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
If You Will Not Install a Custom Kernel, and Want Root
- Tap Install, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
How to Root with Magisk without Installing TWRP
Note: You might have noticed in the ‘Install Custom kernel’ section that some Custom kernels are installed before Magisk while others are installed after Magisk. The best answer we can provide is that when you flash a Custom Kernel using Magisk for root is, if the Custom Kernel modifies/patches the boot image you install Magisk then the Custom Kernel otherwise you install the Custom Kernel then Magisk.
Backup your data and Internal storage!
- Download necessary files, but do not download the TWRP zip file.
- Boot to bootloader.
- Connect the phone to the Computer with USB cord.
- Open an ADB terminal on your PC.
- Copy twrp-3.2.3-1-marlin.img to the platform-tools folder or the folder that fastboot is in and rename it twrp.img
- Type the following ADB command on your PC: fastboot boot twrp.img
- When TWRP boots, disconnect phone from computer.
- Swipe to allow modifications.
- If you are rerooting, tap Install, select Magisk’s uninstaller.zip, Swipe the slider to install.
- Reboot Recovery
Install Custom Kernel and Root/Reroot (Optional)
exNoShadez: nine7nine/Apps
- Tap Install select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Tap Add more Zips, select exns_eas_v3.8.1p_bca050b.zip or (Stable) exNoShadez_eas_v2.8.2_f94351f.zip
- Swipe Slider to Install
- Save Log
- Reboot System
ElementalX
- Tap Install, select ElementalX-P-4.08.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
Flash
- Tap Install select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Tap Add more Zips, select flashkernel-marlin-v2.09.zip
- Swipe Slider to Install
- Save Log
- Reboot System
Kirisakura-Harmony
- Tap Install, select Kirisakura-Harmony-PIE-6.05_3.18.123_Android_PIE.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
PureZ
- Tap Install, select PureZ-Kernel-marlin-2.0.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
NSFW-R25
- Tap Install, select R25-NSFW-kernel-PIE.zip
- Tap Add more Zips, select Magisk-v17.1.zip – Official or Magisk-v17.3.zip – BETA
- Swipe Slider to Install
- Save Log
- Reboot System
How to Update Magisk on Pixel XL
Important: If you had the stable version or the official beta installed, you must first un-install the Magisk Manager, only, before you can install the unofficial version, because they are signed with different keys”.
The same holds true if, for example, you have @kantjer ‘s build installed and want to try @ianmacd ‘s builds”. See kantjer and martyfender post: [UNOFFICIAL] next version Magisk and MagiskManager snapshots by stangri
If Magisk Notification is on.
- Turn on Magisk Manager update notification: Open MagiskManager > Tap menu icon > Settings > Update Channel > Select: Stable, Beta or Custom
- Custom is used to get updates for Unofficial Magisk Builds.
- When Magisk Manager notifies you of update availibility.
- Tap install.
- Select, Direct Install (Recommended)
- When it finishes installing
- Tap, Save Log
- Tap, Reboot
- Done!
- Log location: /storage/emulated/0/MagiskManager/logs/install_log_…
If Magisk Notification is off.
- Open Magisk Manager
- When asked ‘Do you want to install Magisk-vxx.x.zip now?
- Tap install.
- Select, Direct Install (Recommended)
- When it finishes installing
- Tap, Save Log
- Tap, Reboot
- Done!
- Log location: /storage/emulated/0/MagiskManager/logs/install_log_…
Unofficial Magisk Links and Channels
To set the Magisk Notification Update Channel for Unofficial Magisk Builds: Open MagiskManager > Tap menu icon > Settings > Update Channel > Select: Custom > Copy the link address below and paste it on the line:
Kantjer
- https://raw.githubusercontent.com/kantjer/MagiskFiles/master/updates/kantjer.json
- https://goo.gl/3ws6NC
ianmacd
- https://raw.githubusercontent.com/ianmacd/MagiskBuilds/master/updates/ianmacd.json
- https://goo.gl/yZpnrf
topjohnwu – Canary
Debug Channel: https://bit.ly/2MPKGY5
Release Channel: https://raw.githubusercontent.com/topjohnwu/magisk_files/master/canary_builds/release.json
When Magisk Manager notifies you of an update:
- Tap install.
- Select, Direct Install (Recommended)
- When it finishes installing
- Tap, Save Log
- Tap, Reboot
- Done!
- Log location: /storage/emulated/0/MagiskManager/logs/install_log_…
[Magisk] Systemless Xposed
First, follow the Installation Instructions in the OP of the Custom ROM you are trying to install.
Official
- [ROM][PPR2.181005.003][10/19] Benzo Rom 9.0 by xanaxdroid
- benzorom-9-20181019-0718-marlin.zip
- [ROM][Pixel-XL][9.0.0_r10] Pixel Dust PIE for marlin – release one (hot fix: recents) by spezi77
- pixeldust_marlin-pie-release-one-20181012-0826.zip
- [ROM][9.0]LiquidRemix[v10.0.1][OFFICIAL][10/15/18] by stebomurkn420
- liquid_remix-10.0.1-20181015-OFFICIAL-marlin.zip
Unofficial
- [ROM][UNOFFICIAL] lineage-16.0 for Pixels (sailfish/marlin) by razorloves
- lineage-16.0-20181027-UNOFFICIAL-marlin.zip
- [ROM][9.x][UNOFFICIAL] CarbonROM | cr-7.0 [marlin] by shagbag913