AdBlock Detected!
crDroid server is made possible by displaying ads on our website. Please support us by whitelisting our url.
Installation is only possible on a device with unlocked bootloader!
Starting in crDroid 10.x (Android 14.0) we're switching to retrofitting dynamic partitions, to avoid the constant threat of running out of space in the GPT system partition with any sizeable Google Apps package.
Please do not panic. Resist the temptation to read, or talk to loved ones.
Have a cookie.
Ensure you're running OxygenOS 11.1.2.2 firmware on your current slot. Instructions for how to do this are beyond the scope of this guide, but you can always use MSMTool to go back to stock OxygenOS with locked bootloader, and start updating via OTA until you're up to date, or follow the firmware updating guides for enchilada or fajita on the LineageOS wiki.
If you do not have that firmware installed, grab it for your device from here
An unlocked bootloader (see Funk Wizard's guides in XDA Forums for instructions if you need help to do this), and the understanding that crDroid does not support re-locking the bootloader after installation on this device.
A computer with current AOSP "platform-tools" installed or otherwise on your $PATH (the real ones from developer.android.com, not some script-kiddie's all-in-one bundle that's hopelessly out of date), OnePlus USB drivers installed (works for adb and OEM bootloader fastboot commands), and Google's universal ADB drivers installed (needed for fastbootd mode within recovery). Linux and MacOS users: when it comes to drivers, may the odds be ever in your favor!
If you do not have current platform-tools installed, get it from the official site here
If you do not have the OnePlus USB drivers for 6-series, get the installer here
If you do not have the generic Google USB drivers, download them here
Download the LineageOS copy-partitions script from here
Download the needed files for you device from here here
Required device files for first-time retrofit dynamic partitions conversion (or in the case of dtbo.img, to ensure you can boot if you've been playing with 4.19 kernel-based builds):
Do ***NOT*** substitute *any* of these files with files that you've downloaded elsewhere if you want support for your installation.
Recommended Google Apps:
Now that we have enough room thanks to dynamic partitions, we have options!
MindTheGapps should always be a good option, regardless of how much Pixel integration the crDroid dev team is including or not at the time:
If you want a bit more Google integration, you can use Gabriel's "crdroid-official" NikGapps elite config. Download here:
Magisk/crDroid++ Kernel for KernelSU support:
Disable_Dm-Verity_ForceEncrypt:
Notice that each command is prefixed with a ./ This is important. Please keep that prefix when you run each command. ... unless you know how to add things to your $PATH and can verify which executable you're running, of course
Unzip the *platform-tools-latest-.zip** file you got earlier to any folder that you want.
Move the following files into the extracted platform-tools directory (so that the ROM zip is in the same folder as adb & fastboot binaries, not one level above it or anything else):
Required device files for first-time installation:
copy-partitions-20220613-signed.zip
crDroidAndroid-14.0-xxx_boot.img
crDroidAndroid-14.0-xxx_dtbo.img
crDroidAndroid-14.0-xxx_super_empty.img
crDroidAndroid-14.0-xxx_vbmeta.img
the latest OTA zip for you device (crDroidAndroid-14.0-xxx.zip)
Optional addons:
the Android 14.0 arm64 Google Apps or microG installer zip you decided on (if any)
Open your terminal and navigate to the extracted platform-tools folder. Use cd to navigate to the folder.
Boot/Reboot your phone to the OEM bootloader.
Run the following to flash the retrofit dynamic partitions boot/recovery image, dtbo image, and the empty vbmeta to the current slot (replacing _crDroidAndroid-14.0-xxxthing.img with the actual filename that you downloaded for each file):
./fastboot flash boot crDroidAndroid-14.0-xxx_boot.img
./fastboot flash dtbo crDroidAndroid-14.0-xxx_dtbo.img
./fastboot flash vbmeta crDroidAndroid-14.0-xxx_vbmeta.img
Erase the old Android partitions in the current slot with the following:
./fastboot erase system
./fastboot erase odm
./fastboot erase vendor
This ensures that we erase any super partition metadata from other ROMs that use retrofit dynamic partitions, no matter if they store the metadata in system, odm, or vendor. If we don't do this, then we may end up encountering errors later on during the wipe-super or sideloading steps.
This needs to be done only for the current slot and not the other slot. The other slot is handled later in the process.
Unplug the USB cable & reboot your phone into recovery.
In recovery, choose Advanced -> Enter fastboot to enter fastbootd ("userspace fastboot"), and plug the USB cable back in.
Initialize the retrofit super partitions for the current slot:
./fastboot wipe-super crDroidAndroid-14.x-xxx_super_empty.img
WARNING: If fastboot returns some error message about not recognizing wipe-super or prints a long help message instead, then that means you are running a very old version of the fastboot executable. Please go back and download the latest version of platform-tools, as mentioned in the Required Files section.
Choose Enter recovery to return to recovery.
While in recovery, navigate to Apply update -> Apply from ADB.
Run the following to sideload copy_partitions.zip to copy your firmware partitions to the other slot:
./adb sideload copy-partitions-20220613-signed.zip
> Signature verification failed
> Install anyway?
Navigate to Apply update -> Apply from ADB again.
Run the following to sideload crDroid Android, substituting the actual zip file name:
./adb sideload crDroidAndroid-14.0-xxx.zip
If you encounter any other installation errors when sideloading besides ROM zip sideloading stopping at 47%, run ./adb pull /tmp/recovery.log in terminal to get logs to share while asking for help.
If you want to run with Google Apps or microG since we don't ship them built-in, now is the time to install. On the phone, navigate to Apply update -> Apply from ADB again, and from the terminal window on your computer, run the following (substituting the actual zip file name):
./adb sideload <Google Apps package>.zip
Since this is a clean install, choose the Factory reset option, and choose a filesystem format for the userdata partition (ext4 is old reliable, f2fs may provide a very slight performance advantage).
Choose Reboot system now
Option 1: From OTA Updater
Open Settings > System > Updater on the phone. Before loading an update to install, choose Preferences from the menu and turn on the Prioritize update process and Delete updates when installed toggles. Now either check for updates, or choose Local update from the menu & select the desired ROM zip file from your phone's internal storage.
Once it has finished verifying the update, choose Continue to begin installation.
Protip: Enable "Stay awake while charging" in Developer Options, or use the "Caffeine" QS tile to keep the screen on, or just set the Display timeout to 10 minutes to cut the installation time from 2 hours down to less than 10 minutes. It slows down drastically if the screen goes off.
Option 2: From Recovery
Make sure you have the same Google Apps or microG installation zips (or updated versions of the same Android version/architecture) as when you did the initial clean installation available to sideload. If you change to different GApps now, things will get broken.
Reboot phone to recovery and connect USB cable to computer once you're in the crDroid recovery environment. Open a terminal on the computer and run adb devices to verify that the phone is visible to the computer.
On the phone, choose Apply update -> Apply from ADB to begin the phone listening for an update. On the computer, run adb sideload path/to/crdroid.zip (substituting the correct path & filename).
On the computer, the process will freeze at 47%, and on the phone you'll see it's prompting you to reboot to recovery to install addons (like Google Apps). Choose "Yes" on the phone to reboot to recovery now, and notice that the adb sideload process has finished on the computer with an error message about "no error". This is "normal". Thanks, Google!
If you have any addons to flash (Google Apps, microG, custom kernel zips, etc) now is the time to adb sideload them. On the phone, choose Apply update -> Apply from ADB to start the phone listening, and then run adb sideload path/to/installation.zip from the computer for each thing you need to install. Recovery does not process addon.d OTA survival scripts like the booted OTA updater in Settings does, so you canNOT skip installing the Google Apps zip now if you previously had them installed, or it will ruin your current installation if you reboot without them.
On the phone, choose Reboot system now.
crDroid server is made possible by displaying ads on our website. Please support us by whitelisting our url.