[RECOVERY] [TREBLE] TWRP 3.3.1-0 with Tissot Manager - Xiaomi Mi A1 ROMs, Kernels, Recoveries, & Other De

Thread template from CosmicDan's thread.
About
This is a TWRP Installer ZIP and bootable IMG with extra capability such as Treble-izing and other power-user tools with integrated TWRP-powered submenus that CosmicDan originally called Tissot Manager.
Few months ago, CosmicDan officially decided to leave Tissot development, and his twrp was stuck on 3.2.3. So I decided to update that to 3.3 and convert all the aroma stuff into TWRP-powered menus etc, in order to preserve better future compatibility.
HIGHLY recommended reading and guide for everyone new to Treble - [TREBLE][GUIDE] From Stock to Treble - everything you need to know! by CosmicDan. It also has some general protips hidden within there, for example the seamless/slot system interactions and nuances, so it's worth reading for anyone who wants to be a master of the Android flashing domain
Features:
TWRP fully Treble-ready based on 3.3.1-0;
Fully compatible with non-Treble devices - can be used as normal without Treble partitioning;
Full USB-OTG support;
Full MTP support;
Optional TWRP Survival function, that works both in hotboot and real recovery;
Optional Active slot install method, selectable right before the zip flash;
Option to ignore Payload<>Recovery certificate failures (fix for newer LOS-based ROMs);
Added a Tissot Manager list item under Advanced Menu, totally built-into TWRP itself that allows you to do:
Has the option to shrink Userdata to create Vendor partitions. All relevant partitions will be resized and formatted in one go.
Treble-izing will ERASE DATA AND INTERNAL STORAGE COMPLETELY - but your device will stay compatible with all existing non-Treble ROM's
Adds a "Patches" section with the following current options:
Patch kernel from Enforcing to Permissive and vice versa
More features coming!
All of this info is detailed inside the Tissot Manager GUI.
See screenshots in post 2.
Since this is an early version (still stable), some original features from 3.2.3 are still not available. I'll do my best to constantly add new functions when possible!
Instructions
Optionally boot the boot-recovery.img to get a temporary TWRP if you don't have it installed, unzipped from TWRP-3.3-withTM-BOOT.zip
Code:
fastboot boot boot-recovery.img
Warning - do not EVER flash this img - hotboot it only.
Flash the TWRP Installer. Any slot, any ROM, any existing Recovery - it doesn't matter - it will be installed to both slot kernels.
Reboot Recovery
Optional - Use the "Advanced > Tissot Manager" option for repartition options and other advanced ROM patches, this time built-in TWRP itself for better compatibility with future versions.
About TWRP survival
Starting from 1.0, TWRP Survival will be able both in hotboot mode 'n real recovery mode. Just tick the checkbox 'n flash!
Download
All downloads (and source code) always at:
https://github.com/Giovix92/twrp_device_xiaomi_tissot/releases
Additional sources not able to be listed in DevBB:
Modified update_engine: https://github.com/Giovix92/android_system_update_engine
What's next?
See [TREBLE][GUIDE] From Stock to Treble - everything you need to know! by CosmicDan for detailed instructions and learning on how to Treble like a pro.
FAQ
Q) After I flash TWRP, I get kicked into a Recovery loop when trying to boot the ROM!
A) This is probably because you have a kernel that does not disable dm-verity. To fix this, flash Magisk.
Q) After I flash TWRP, I get kicked into fastboot when trying to boot the ROM!
A) Your kernel is not Treble-compatible.
Q) How do I update TWRP?
A) Just flash the ZIP installer again, then Reboot Recovery. Note that this will erase Magisk on BOTH slots if you have it installed to either, requiring you to reflash it to one/both slots. See my Treble guide FAQ section for more info on Magisk interaction.
Q) If I shrink Userdata for Treble, will stock and OTA work?
A) I have heard varying results on this. It does for some, not for others. Please assume that this will NOT work.
Q) Can I restore a non-Treble TWRP backup after I repartition for Treble? And the other way around?
A) Yes! In fact, this is the easiest way for using stock ROM on Treble repartition. May also require a custom kernel with dm-verity disabled (see Questions above regarding fastboot kick and recovery loop).
Q) I see "Failed to mount '/system' (Device or resource busy)" red error in TWRP after flashing a ROM
A) You can safely ignore it. You just need to reboot recovery before you can flash anything else (like Gapps) to this ROM. This may occur while flashing in the active slot.
Q) What "Inject TWRP after install" option does?
A) It's TWRP Survival. If you check that checkbox, then after the installation of your zip file the TWRP will automatically reinstall TWRP into your slot.
Bugs Report
If any bug/problem may occur, feel free to report it here! Explain the problem and attach the recovery log. You can get it by going to Advanced - Copy Log and sliding. Kernel log isn't necessary.
If, for some strange reasons, you are unable to get into that menu', connect your phone to PC, open up CMD (aka command prompt) and type:
Code:
adb pull /tmp/recovery.log
Credits and Thanks
- @CosmicDan for tips, helps and his amazing work on TWRP 3.2.3, which I've taken many things from
- @nicknitewolf for his DT
- @chondoe for always being present in testing and reporting bugs/good news
- @flex1911 for DT stuff
- @mauronofrio for inject twrp function
XDA:DevDB Information
TWRP 3.3.1-0 with Tissot Manager, ROM for the Xiaomi Mi A1
Contributors
Giovix92
Source Code: [url]https://github.com/Giovix92/device_xiaomi_tissot[/URL]
ROM OS Version: 9.x Pie
ROM Kernel: Linux 4.x
Version Information
Status: Stable
Current Stable Version: 1.0
Stable Release Date: 2019-10-01
Created 2019-10-01
Last Updated 2019-10-01

Reserved
Changelog:
**10-11-2019**
- Fixed error 28 and 13, this led to some issues while doing a clean installation.
- Restored active slot install functionality, now it's fully working.
**18-10-2019**
Version: 2.0 (MAJOR UPDATE)
- Fixed all kind of problems while flashing:
- Error 51, 15, 31, 17, 35 (postinstall)
- Unability to make a clean flash
- Removed changelog section from Tissot Manager
- Added ADB God Mode
- Added missing binary, required in order to let selinux changer work properly
- Now the 2 new checkboxes won't stay checked anymore after any zip install
- Added system remount to r/w after zip flash in order to flash multiple zips in the same recovery session (like ROM + magisk + gapps and then reboot)
- Fixed linker problem that was causing some options in Tissot Manager to fail
- Smoother experience
Older changelogs:
**01-10-2019**
Version: 1.0
- Initial release with Tissot Manager, now powered by TWRP
- Optional TWRP Survival
- Ability to install into same slot
- Ability to repartititon to Treble and vice versa
- More features coming!

Reserved

Great work.
Sent from my Mi A1 using Tapatalk

Thanks ??

Nice. Bro you carried legacy ?

nice work waiting for shrp version of this ??

Noice :good:
Sent from my Mi A1 using XDA Labs

This is an update of TWRP Comic Dan?

manchirua said:
This is an update of TWRP Comic Dan?
Click to expand...
Click to collapse
Read op

Any way to flash it using cosmic dan's twrp? I don't have any pc now

Anikur Rahman said:
Any way to flash it using cosmic dan's twrp? I don't have any pc now
Click to expand...
Click to collapse
Q) How do I update TWRP?
A) Just flash the ZIP installer again, then Reboot Recovery. Note that this will erase Magisk on BOTH slots if you have it installed to either, requiring you to reflash it to one/both slots. See my Treble guide FAQ section for more info on Magisk interaction.

Great job dude ?

Awesome work!
Thank you so much for this.

@Giovix92
Great Job.
Is there a way to show the current slot status like in CosmicDan's ?

sdeft said:
@Giovix92
Great Job.
Is there a way to show the current slot status like in CosmicDan's ?
Click to expand...
Click to collapse
You can check current slot from reboot menú.

Where is the survival checkbox??

What is this "inject twrp" does ?

oskrprez said:
Where is the survival checkbox??
Click to expand...
Click to collapse
Anikur Rahman said:
What is this "inject twrp" does ?
Click to expand...
Click to collapse
That's the TWRP survival option

Unipo said:
That's the TWRP survival option
Click to expand...
Click to collapse
So, Isn't it automatically reinstalled like Comic Dan's version?

Related

[RECOVERY] [TREBLE] [RETIRED] TWRP with Tissot Manager (Treble & Dual boot support)

RETIRED! No longer supported or being developed. @Giovix92 is now the lead dev, please use his TWRP for full compatibility with modern kernels/ROM's - https://forum.xda-developers.com/mi-a1/development/recovery-twrp-3-3-1-0-tissot-manager-t3976117
Old thread below:
-----------------------------------
About
This is a TWRP Installer ZIP and bootable IMG with extra capability such as Treble-izing, Dual boot repartitioning and other power-user tools with integrated Aroma Installer-powered GUI screens that I call Tissot Manager.
HIGHLY recommended reading and guide for everyone new to Treble - [TREBLE][GUIDE] From Stock to Treble - everything you need to know!. It also has some general protips hidden within there, for example the seamless/slot system interactions and nuances, so it's worth reading for anyone who wants to be a master of the Android flashing domain
Features:
TWRP fully Treble-ready with dual-boot ROM patcher;
Maintained with latest TWRP version;
Fully compatible with non-Treble devices - can be used as normal without Treble partitioning;
USB-OTG fixed
Has 'TWRP survival' function for automatically re-installing TWRP recovery when installing ROMs and kernels;
Option to install a payload ROM in the current slot, rather than the inactive one;
Option to ignore Payload<>Recovery certificate failures (fix for newer LOS-based ROMs);
Adds a "Tissot Manager" Aroma GUI to TWRP Advanced Menu (bottom-right button), which is the tool used to repartition the device for Treble and Dual boot, as well as some other nifty stuff:
Has the option to shrink System OR Userdata to create Vendor partitions. All relevant partitions will be resized and formatted in one go.
If you shrink System, you will keep max size Userdata - however it will be incompatible with non-Treble ROM's (they will crash on installing with Error 28 due to System being too small). It will Erase system, requiring you to reinstall a ROM or restore a ROM backup.
If you shrink Userdata, it will ERASE DATA AND INTERNAL STORAGE COMPLETELY - but your device will stay compatible with all existing non-Treble ROM's
Dual boot requires Userdata shrink and works by splitting into userdata_a and userdata_b. The partition split size is customizable during the repartition process.
Adds a "Patches" section with the following current options:
Patch the current Vendor for dual-boot capability (only required if automatic patching wasn't possible). See the 'About Dual-boot' section below for more information.
Enable an insecure ADBD on boot for the current slot (i.e. enable debugging and remove authentication requirement). Useful for ROM hackers/porters.
Patch the current slot to enable/disable forced userdata encryption
All of this info is detailed inside the Tissot Manager GUI.
See screenshots in post 2.
Instructions
Optionally boot the boot-recovery.img to get a temporary TWRP if you don't have it installed, unzipped from TWRP-boot.img-3.2.1-with-Tissot-Manager-x.x.zip:
Code:
fastboot boot boot-recovery.img
Warning - do not EVER flash this img - hotboot it only.
Flash the TWRP Installer. Any slot, any ROM, any existing Recovery - it doesn't matter - it will be installed to both slot kernels.
Reboot Recovery
Optional - Use the "Advanced > Tissot Manager" option for repartition options and other advanced ROM patches (Aroma Installer powered GUI - a fully guided and interactive process).
If you opted to repartition for Treble, you are ready to flash a Treble ROM/Vendor pack. Reminder - check out my full guide for learning and instructions on all things Treble.
About TWRP survival
TWRP survival is a simple hook that detects if a boot.img will be installed and restores TWRP after it's flashed. This only works if you have booted TWRP with Tissot Manager 2.0 from a real recovery boot - NOT from a recovery 'hot boot' (fastboot boot method).
You will see in the install log if a TWRP survival attempt is successful in the flash text output.
Automatic TWRP survival works when:
Flashing a ROM ZIP (or AIO) with TWRP
Flashing a boot.img in TWRP "Install Image" mode
Automatic TWRP survival does NOT work when:
Flashing a boot.img via fastboot
Restoring boot in a TWRP backup
Any other way of flashing a boot.img
In these cases, be sure the use the TWRP Installer immediately after flashing or restoring a backup - otherwise you may get the device into a confused state (especially if you restore a non-TWRP boot then try to install an AIO ROM without installing a new TWRP first).
About Dual-boot
Dual-boot on this device is relatively simple. As you know we have Slots - boot_a and _b, system_a and _b and vendor_a and _b (for Treble). This repartition splits userdata into userdata_a and _b too. You can simply change your Slot in TWRP reboot menu to change which ROM to boot.
This is designed for developers and testers - NOT for daily use. There are some significant issues with dual boot systems:
Any kind of security lock (PIN, fingerprint, etc.) set on one ROM will cause the other ROM to believe it has security too, but constantly fail with unlocking. This is reportedly because security info is stored on persist, which is shared between each slot (and not compatible with differing ROM's).
Because Userdata is split, so is Internal Storage. In TWRP, when changing slots, the MTP will remain mounted to the old slot - it must be manually disabled and renabled (Mounts menu) to update to the new slot.
I will not fix these issues - dual-boot is not designed to be for general/daily use and there may be more minor issues that I don't know about. It's intended for developers only.
In order for a ROM to be dual-boot compatible, the fstab file (information given to Android about partitions to mount) needs a small modification. This TWRP can try to do this patching automatically when you install a ROM, or it can be done manually in Tissot Manager's Patches menu (as well as single-boot patch to e.g. revert a ROM backup from a dual-boot state).
You will see in the install log if a dual-boot patch attempt is successful in the flash text output.
Automatic dual-boot patch occurs only if necessary when:
Flashing an AIO Treble ROM ZIP with TWRP
Flashing a vendor.img in TWRP "Install Image" mode
Automatic dual-boot patch does NOT work when:
Flashing a vendor.img via fastboot
Restoring vendor in a TWRP backup
Any other way of flashing a vendor
In any of these cases, you can manually patch Vendor for Dual Boot in Tissot Manager's Patches menu. You can also remove dualboot support the same way. It will detect the dualboot state of the current Vendor slot and present the available option. If you find that it doesn't actually change after patching, the Vendor is incompatible (please report it to me). RR AIO Vendor is tested OK.
Download
All downloads (and source code) always at:
https://github.com/CosmicDan-Android/android_device_xiaomi_tissot/releases
...or via DevBB Downloads section.
Additional sources not able to be listed in DevBB:
Modified update_engine: https://github.com/CosmicDan-Android/android_system_update_engine_tissotmanager-mod
What's next?
See [TREBLE][GUIDE] From Stock to Treble - everything you need to know! for detailed instructions and learning on how to Treble like a pro.
FAQ
Q) After I flash TWRP, I get kicked into a Recovery loop when trying to boot the ROM!
A) This is probably because you have a kernel that does not disable dm-verity. To fix this, flash Magisk. The void kernel included in RR AIO does not have this problem and can therefore be safely used without Magisk (for e.g. GSI compatibility).
Q) After I flash TWRP, I get kicked into fastboot when trying to boot the ROM!
A) Your kernel is not Treble-compatible.
Q) How do I update TWRP?
A) Just flash the ZIP installer again, then Reboot Recovery. Note that this will erase Magisk on BOTH slots if you have it installed to either, requiring you to reflash it to one/both slots. See my Treble guide FAQ section for more info on Magisk interaction.
Q) My PC can't see the MTP (storage) device from TWRP!
A) For dualboot compatibility, MTP is automatically disabled at various points. Just enable it manually in the Mounts menu to get access.
Q) If I shrink Userdata for Treble, will stock and OTA work?
A) I have heard varying results on this. It does for some, not for others. Please assume that this will NOT work. It will definitely not work if you have shrunk system.
Q) Can I restore a non-Treble TWRP backup after I repartition for Treble? And the other way around?
A) Yes! In fact, this is the easiest way for...
...using stock ROM on Treble repartition (requires Userdata shrink ONLY). May also require a custom kernel with dm-verity disabled (see Questions above regarding fastboot kick and recovery loop).
...using a non-treble ROM if you shrunk System instead of Userdata since you cannot install non-Treble ROM ZIPs with a shrunk System (see next Q)
Q) I get some Error 28 when trying to install a ROM when repartitioned
A) You have shrunk System and are trying to install a non-Treble ROM. This is not possible AT ALL because the ROM ZIP expects a stock-size System. Use Userdata shrink mode instead if you want to be able to use non-Treble ROM's easily.
Q) I see "Failed to mount '/system' (Device or resource busy)" red error in TWRP after flashing a ROM
A) You can safely ignore it. You just need to reboot recovery before you can flash anything else (like Gapps) to this ROM.
Credits and Thanks
- @mohancm for the original TWRP port, I used some flags from his DT
- @ghpranav and @mountaserhalak for the RR device tree that this is built with (and random help)
XDA:DevDB Information
TWRP with Tissot Manager (Treble & Dual boot support), Tool/Utility for the Xiaomi Mi A1
Contributors
CosmicDan
Source Code: https://github.com/CosmicDan-Android/android_device_xiaomi_tissot
Version Information
Status: Stable
Created 2018-05-29
Last Updated 2019-11-24
Reserved
Screenshots (click for slightly larger non-cropped version)
Screenshot of new TWRP button:
_______________
Main menu (stock partition map detected):
_______________
Repartition choice type when coming from stock:
_______________
Repartition wipe warning/disclaimer if chosing to shrink Userdata for Treble:
_______________
Main menu (Shrunk Userdata type Treble partition map detected):
_______________
Repartition wipe warning/disclaimer if chosing to restore Stock from Shrunk Userdata Treble mode:
_______________
Example of Repartition processing screen:
Good job! :good:
Nice work!
Did you tested treble roms with this? Aex now have treble support
Omg, you are the best man. @mohancm also huge thanks to u man, great devs in our XDA.
I have never seen this kind of detailed, kind guide in XDA. You guys are awesome! Thanks for all this work!
One question : If I choose to shrink /userdata instead of /system,
1. Will I be able to flash stock rom by using MiFlash?
2. If I can, will I be able to get OTA and install them w/o issues?
3. Can I restore a TWRP backup that was made before repartitioning?(because of data on /data)
I think lots of people will be wondering about #3. If you think so too, then please add it in OP!
Thanks to all of you devs again!
Chikoow1 said:
Nice work!
Did you tested treble roms with this? Aex now have treble support
Click to expand...
Click to collapse
This is just the repartition part, one step of Treble. You still need a Vendor pack. But yes, this enables Treble ROMs and the ROMs require repartition.
ddaggebi said:
I have never seen this kind of detailed, kind guide in XDA. You guys are awesome! Thanks for all this work!
One question : If I choose to shrink /userdata instead of /system,
1. Will I be able to flash stock rom by using MiFlash?
2. If I can, will I be able to get OTA and install them w/o issues?
3. Can I restore a TWRP backup that was made before repartitioning?(because of data on /data)
I think lots of people will be wondering about #3. If you think so too, then please add it in OP!
Thanks to all of you devs again!
Click to expand...
Click to collapse
1. If you do, it will wipe partition map back to stock. So you will need to repartition with Treble Manager TWRP again. But you can make a backup of stock ROM in TWRP and just restore it after the repartition. It should work.
2. Don't know. Needs testing.
3. Yes! I forgot to add this to the FAQ.
Has this tpwr f2fs support and working?
Since Los support It i would like ti have
@CosmicDan
Thank you so much for your effort. I'm currently on stock and want to retain stock compatibility, so I'm going to wait until this becomes more polished before trying. I understand that Treble is not meant to be compatible with stock, so I realize my question might be out of place. Still, my question is:
Will you also release the .img file for Treble TWRP for those of us who don't want a permanent custom recovery?
Filip013;76586434 [user=1844875 said:
@CosmicDan[/user]
Thank you so much for your effort. I'm currently on stock and want to retain stock compatibility, so I'm going to wait until this becomes more polished before trying. I understand that Treble is not meant to be compatible with stock, so I realize my question might be out of place. Still, my question is:
Will you also release the .img file for Treble TWRP for those of us who don't want a permanent custom recovery?
Click to expand...
Click to collapse
It's indeed not intended to be compatible with stock ROM, but your mileage may vary, and as @CosmicDan said, it might work good enough or it won't. You can only try to see the results yourself.
This whole Treble thing is meant mainly for custom ROMS, since stock will never be Treble compatible (still, anything could happen)
I've just updated the TWRP with Treble Manager to 1.1 which fixed a semi-important bug.
Also, I've released a guide for those who find the Treble conversion/install process confusing - check it out. If you can, keep TWRP and Treble Manager specific questions in this thread, but ask your general questions and help over there - I will update the guide as I get feedback
CosmicDan said:
FAQ
Q) If I shrink Userdata for Treble, will stock and OTA work?
A) Untested. Please report your results. But Treble is really not about Stock, you will likely encounter more problems down the line or it may turn out to be completely incompatible.
Q) Can I restore a non-Treble TWRP backup after I repartition for Treble? And the other way around?
A) Yes! In fact, this is the easiest/only way for...
...using stock ROM on Treble repartition (requires Userdata shrink ONLY). May also require a custom kernel with dm-verity disabled (untested - if you get bootloop when using stock, it means you do) or Magisk (also untested, may still get bootloop).
...using a non-treble ROM if you shrunk System instead of Userdata since you cannot install non-Treble ZIP's on ROM's with a shrunk Userdata (see next Q)
Q) I get some Error 28 when trying to install a ROM when repartitioned
A) You have shrunk System and are trying to install a non-Treble ROM. This is not possible AT ALL because the ROM ZIP expects a stock-size System. Use Userdata shrink mode instead if you want to be able to use non-Treble ROM's easily.
Q) I see "Unable to mount '/vendor' (Invalid argument)" red error in this TWRP
A) You can safely ignore it. It just means you have not repartitioned your device for Treble yet, so it can't mount the /vendor image.
Click to expand...
Click to collapse
Ay!
Have just finished testing about OTA on stock after Treblizing!
Result?!?
OTA works perfectly on stock after shrinking data to Treblize! Hurrah! ???
Process I followed:
1) Treblize by shrinking data
2) This is important: flash stock ROM in fastboot using MiFlash! When flashing for the first time, select "clean all and lock"! No other standard options working! I couldn't even boot stock using other options!
I've tested by fastboot flashing April build and then updating it to May OTA!
*** On a note: clean all will erase everything on your phone including your personal data!
If you use "save user data" then stock can't even boot! This may caused by the encryption!
BTW, after everything I just restored my non-Treble RR backup and everything works perfect! Just Treble Check app can't check that it's Treblized!
But don't worry! Treble partition table still remains! Fastboot flash can't touch that and can't recognize that it actually exists! Which to me is a good thing!
@CosmicDan, give me a thanks buddy! I deserve this!
SomratMJX said:
-snip-
Click to expand...
Click to collapse
Don't quote the whole OP and please use a smaller font size.
Change slot doesn't work... Others are okay as far as i have seen
dback31 said:
Don't quote the whole OP and please use a smaller font size.
Click to expand...
Click to collapse
Just thought it's too important to highlight! Nothing else!
Rakibboss said:
Change slot doesn't work... Others are okay as far as i have seen
Click to expand...
Click to collapse
Reboot to fastboot and change the slots with
fastboot set_active b
Rakibboss said:
Change slot doesn't work... Others are okay as far as i have seen
Click to expand...
Click to collapse
Use the latest TWRP 1.1! Works fine for me!
SomratMJX said:
Just thought it's too important to highlight! Nothing else!
Click to expand...
Click to collapse
Then please atleast remove the OP quote. It's a pain for mobile users to scroll through this
dback31 said:
Then please atleast remove the OP quote. It's a pain for mobile users to scroll through this
Click to expand...
Click to collapse
Ha ha ha! It's related to OP buddy!
Anyways, I am too lazy to quote a certain part of the OP!

[ROM][OFFICIAL][enchilada][10.0]crDroid Android[v6.27]

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
​
crDroid is built on top of LineageOS, and is designed to increase performance and reliability over stock Android for your device, while also attempting to bring many of the best features in existence today.
Features
A quick glossary and primer on slots for A/B devices (like ours):
Spoiler: Show/Hide
- "Clean flash": Removing device protection & clearing user settings before installing a bootable system install zip (usually by either wiping or formatting data, see below).
- "Dirty flash": Flashing a ROM zip (usually upgrading to new version, sometimes just re-flashing the existing one) without wiping data or anything first.
- "Wipe data": Synonymous with "factory reset", accomplished from TWRP recovery by selecting "Wipe", then performing the "Slide to factory reset". Clears user data without erasing any partitions, removing encryption, or deleting contents of internal storage.
- "Format data": Formats the data partition itself, resets all file-based encryption keys, loses all contents of internal storage, and in fact deletes all "user 0" directories (this has some implications for internal storage before & after first boot).
- "User 0" directories are a series of directories that store userdata for the primary user, "Owner", and get created in various places throughout the filesystem on first system boot if they don't exist already. Anything you copy to "internal storage" while booted in recovery after "formatting data" will actually be copied to /data/media/ instead of /data/media/0/, and will become invisible to regular file browsing after first boot once the system has created /data/media/0, since the system will prefer to use that path for internal storage from then on (so you'll need a root file browser to delete things from /data/media, or just ADB sideload things instead of copying after formatting but before booting).
- "OTA package": Originally an abbreviation for "over the air", referring to how a software update could be delivered (as opposed to having to take your phone to a carrier's store for a firmware update via serial/USB connection). The common usage in Android circles is any installation zip file that actually includes a bootable system.
- Some partitions are duplicated (system, vendor, boot, and probably a couple others, but not data) and have a "slot A" & "slot B" copy.
- "Slot A" and "slot B" are absolute designations, but most installer zip scripts use the relative designations: "active" and "inactive". Whichever slot you're booted from currently is "active", and the other one is "inactive".
- Installing a zip file that's flagged as being an OTA package will 1) install the contents to the "inactive" slot, and then 2) flag the bootloader to switch which slot is considered "active" (and booted from) and "inactive" upon next reboot.
- The OxygenOS full OTA zip files and all custom ROM installer zip files are considered "OTA packages" and will trigger a slot switch on next boot after installation.
- You can install multiple OTA zip packages one after the other without rebooting in TWRP; they will all get installed into the correct partitions in the "inactive" slot, one on top of the other, and then it will swap active & inactive upon reboot.
Prerequisites:
- Make sure your bootloader is unlocked (and don't plan on relocking it ffs).
- Make sure you have a reasonably-current, working installation of android platform tools (adb & fastboot command line binaries & necessary drivers) on your computer, with a known-good USB cable (see links in post #2).
- Make sure you've downloaded the most recent full Android 10 OxygenOS OTA installer zip (10.3.12), crDroid zip, matching crDroid boot.img, official TWRP 3.5.2_9-0 installer zip and bootable img, and whatever Magisk/GApps/microG installation packages you want to use to your computer (see links in post #2).
- Make sure you've backed up whatever data you want to keep to somewhere that's not on your phone; for a new install, we're going to format the data partition and you're going to lose everything from internal storage.
Let's get started!
Updating firmware (if already on crDroid):
- Reboot to bootloader (with no USB cable connected).
- Open a terminal on your computer, and run `fastboot flash boot path/to/boot.img`, substituting in the path & filename for the current crDroid boot.img that you downloaded as part of the prerequisites.
- Reboot to bootloader again (actually loads new bootloader that you just flashed).
- Use Vol +/- buttons to select "Recovery mode" and press Pwr button to boot into the built-in TWRP recovery. The device's internal storage should now be available for read/write on the computer via MTP.
- Copy the official OxygenOS 10.3.12 full OTA zip & latest crDroid zip into the device's internal storage, then choose "Install", select the current crDroid zip, choose "Add more zips", and crDroid installer zip, then swipe to confirm flash. No TWRP zip required, since it's built in to the boot.img that gets installed.
- Reboot recovery, then choose "Install", and select the OOS zip, then select "Add more zips" and choose the crDroid zip, and swipe to confirm flash again.
- Reboot recovery, and re-flash magisk/gapps if needed.
- Wipe dalvik.
- Reboot system.
First time installing crDroid to your OP6, coming from stock OxygenOS or another ROM (will also update firmware while we're at it):
- Reboot to bootloader, then `fastboot boot path/to/twrp.img` to start up into TWRP recovery.
- Mount System partition read-write, use file manager to delete the /system/addons.d/ directory if it exists, unmount System.
- Choose Wipe > Format data, type "yes" and hit enter to nuke everything in the data partition and clear encryption.
- Choose Advanced > ADB sideload (don't worry about selecting cache/dalvik wipe options yet) and then on the computer, do `adb sideload path/to/OxygenOSOTA.zip` to flash the OxygenOS 10.3.12 full OTA installation zip & make sure you're on the latest Android 10 firmware.
- Go get a drink, this'll be a bit.
- When that's done, hit "back" in TWRP and start ADB sideload again, and this time send the crDroid installation zip (includes TWRP built-in, so don't need separate zip for that at this point).
- Reboot to recovery (this will switch the active slot to use the system partition you just installed those zip files into).
- Wipe data (Wipe > "Slide to factory reset" in TWRP).
- That was so much fun, let's do it again! ADB sideload OxygenOS full OTA zip.
- ADB sideload crDroid zip.
- Reboot to recovery (switches slots again, now we have latest OxygenOS firmware plus crDroid populated in both sets of partitions and won't have to do that again).
- Flash Magisk (if desired).
- Flash GApps or microG package (if desired).
- Wipe dalvik.
- If you copied anything to internal storage instead of flashing it via ADB sideload, delete it now before first boot.
- Reboot system.
- Go through setup wizard.
- Reboot system (for reasons I don't comprehend, it never shows "OnePlus Settings" in the Settings app top level menu on a fresh install until after rebooting once).
- It's gonna harass you to finish setup, go ahead and customize everything to your heart's content.
Updating crDroid from TWRP (preferred):
You don't need to remove device protection; it works fine with PIN. Be sure you have a PIN set, or have looked up whatever that arcane chart of pattern > numeric incantations in case of pattern unlock. It's awful.
- Boot into TWRP recovery.
- Choose install, then select OOS firmware OTA (if needed), then choose select additional zips, then select crDroid.zip, slide to confirm flash.
- Reboot recovery.
- Choose install, then select Magisk zip (if using), select additional zips, choose GApps/microG (if using), slide to confirm flash.
- Please keep off of the grass, shine your shoes, wipe your... dalvik.
- Reboot system.
Updating crDroid from Updater app:
Warning: I don't remember if crDroid 6 even *has* the built-in Updater app function or not, or how well it handles addon.d survival scripts. Use with caution.
- Install update in built-in Updater app (Settings > System > Updater), do NOT reboot yet.
- Go to Magisk app home, click "Install" next to Magisk, and choose the "Install to Inactive Slot (After OTA)" method.
- For GApps/microG: If you use GApps/microG that needs to be re-flashed to /system (as opposed to magisk module GApps/microG), reboot *recovery* at this point, mount the system partition in TWRP, and dig around with the File Manager in system/priv-app/ & system/product/priv-app/ to make sure that everything you expect was copied over to the now-currently-active slot, and if need be re-flash your installer zip, or else your world will be pain when you boot normally. Yes, I expect you to know what your preferred package installs & to keep the zip handy.
- NOW you can reboot to system.
Reporting bugs:
I'm a parent of three young kids whose industry disappeared in the pandemic and is now full-time house husband & parent-in-charge while my wife is teaching full-time, I'm trying to save my small live-event-turned-streaming-studio company in my spare time. I'm doing in-home caregiving for a family member overnight one day a week. This is the back-up spare-spare-time hobby. I'm not a software developer nor do I know any programming languages, I just wanted a ROM with signature spoofing support and more customization than the unofficial microg-compatible LineageOS builds. So if there are bugs or feature requests, I go over to the crDroid dev chat and ask if someone has time to hold my hand & help. Don't make me get yelled for annoying them, mmkay? That said...
- Logs/screenshots/recordings or it didn't happen. Syslog (free, open source, available on Play store and F-droid) is your friend.
- I try to keep an organized notebook of roadmap, feature reqeusts, bug reports, etc. I won't always be able to fix it, but I'll at least look and do my best to ask the actual devs.
- I don't sign into XDA much, so if I haven't said anything, check out the Telegram group. Lots of helpful folks there.
- Please keep your questions in this thread instead of PMing me with them directly, so that the entire class can benefit from the discussion and you can find out if it's just you or if this is a widespread issue.
It's your device to use the way you want of course, and I use Magisk & microG and like to tweak things myself. But don't expect much support if you:
- didn't do a clean flash.
- aren't using the built-in kernel.
- are using extensive modifications (besides Magisk) like Xposed/Riru, Dolby Atmos, Viper4A, etc.
- immediately start using "finalize.zip" or flashing migrate restore zips instead of following the actual instructions.
- are running decrypted.
Donate - Support development!
crDroid Website - Download here!
Telegram Oneplus6/6t group - Share your best cat pictures!
Source Code:
- Device tree: https://github.com/crdroidandroid/android_device_oneplus_enchilada/tree/10.0
- OP6/6T Common device tree: https://github.com/crdroidandroid/android_device_oneplus_sdm845-common/tree/10.0
- OnePlus Common device tree: https://github.com/Terminator-J/crdroid_device_oneplus_common/tree/10.0-test
- Kernel: https://github.com/crdroidandroid/android_kernel_oneplus_sdm845/tree/10.0
Notes:
- Yes it supports package signature spoofing permission for microG compatibility out of the box (but will work without ANY GApps/microG implementation installed as well).
- Aux camera doesn't work correctly due to framework issues beyond my control/comprehension. So, still no portrait mode in OnePlusCamera in cr6. But 60fps video recording in OOSCam works great; huzzah!
- Doesn't pass safetynet out of the box, despite many tests with different fingerprints/props. Just use Magisk & enable the Zygisk DenyList & kdrag0n's "safetynet-fix" module and be happy. If your bank's app doesn't work, switch to a local credit union and stop feeding the bougie bankers. Smash capitalism!
- Maintainer does not use GApps, so cannot answer questions about which packages work best from firsthand experience. In general, go with the smallest package you can and then install other Google apps from the Play Store. Please note that if you replace the stock dialer with Google Dialer, you may lose access to the Phone Info menu (*#*#4636#*#*) until you install another dialer. For recommendations, see https://wiki.lineageos.org/gapps.
- Requires OOS 10.3.12 OOS firmware.
- Includes built-in TWRP, pulled from official 3.5.2_9-0 ramdisk, works well.
- Tested against latest Magisk canary (with zygisk instead of magiskhide), works well.
- No there won't be official builds with inline GApps; please don't ask.
crDroid 6.27 - February 2022 ASB release notes/known issues:
Changelog since v6.23 release:
- Merged Android Security Bulletins through February 2022 from upstream.
- Whatever changed upstream in the ROM proper (not likely much; they want to freeze it besides security updates).
- Reimplemented DeviceSettings based on crDroid 7 version (no more greyed-out things that don't actually work in Android 10).
- Backported updated display panel handling in device tree and kernel to match crDroid 7 (panel color modes are in LiveDisplay now). FOD on fajita is still kinda crap with OOS 10 firmware, but oh well.
- Little more tidying/tightening in device tree & kernel for moving to maintenance-only releases.
- Imported current wireguard VPN kernel-mode driver.
Known issues:
- Some screen-off gestures may not work, due to limitations beyond my control; don't use those gestures. Sorry.
- You tell me! With logs!
Other stuff:
- At this point, any little feature bugs will be considered "can't fix/won't fix"; I can't keep working on this one, I'm going to try to only do security-update-only releases of crDroid v6.
- Where do bad rainbows go? Prism. It's a light sentence.
Helpful links:
Download ROM
TWRP (use old official v3.5.2_9-0)
(TWRP is built-in to the crDroid 6 zip, but you might need the img or standalone installer zip in order to get to that point)
Magisk (use latest)
OxygenOS 10.3.12 Full OTA
MSMTool (oh now you're in trouble - use latest unless you have a good reason to intentionally downgrade)
Thanks dev. This is a great ROM
When you say latest fw, you are talking about OOS Pie or H2OS Q?
firebird11 said:
crDroid is designed to increase performance and reliability over stock Android for your device also attempting to bringing many of the best features existent today
Features:
To be defined
First time installing crDroid to your Op6, or coming from another ROM:
- Be on the latest firmware
- Make sure you're running latest TWRP
- Copy GApps and crDroid zip to your internal storage
- Disable your screenlocks
- Boot into Recovery
- Wipe cache,data
- Flash crDroid zip
- Flash TWRP zip
- Reboot to recovery
- Flash GApps zip
- Flash Magisk zip
- Reboot system
Don't expect any support if you:
- are not running stock crDroid-kernel
- have installed any mods such as Xposed!
- have modified system files
DONATE
crDroid Website
Telegram Oneplus6/6t group
XDA:DevDB Information
crdroidandroid, ROM for the OnePlus 6
Contributors
firebird11, neobuddy89, gwolfu
Source Code:https://github.com/crdroidandroid
Source Code Kernel:https://github.com/crdroidandroid/android_kernel_oneplus_sdm845
ROM OS Version: Android 10
ROM Kernel: Linux 4.x
Based On: LOS
Version Information
Status: Testing
Created 2019-10-16
Last Updated 2019-10-16
Click to expand...
Click to collapse
Any bugs or something not working?
Will try this weekend.
Thank you dev
Hello, I flashed rom yesterday.
I've got 1 issue. Fingerprint unlock doesn't work. I mean fingerprint sensor works because I can set up a fingerprint. But when phone is locked (screen on or off) I can't unlock it.
Maybe this is Gapps related? (I used Nano beta from october). Not rooted
Rom is fast and responsive. No other bug/ lag or freezes so far.
If anyone can help me with fingerprint unlock it would be much appreciated.
Have a nice day.
veronesi.n said:
Hello, I flashed rom yesterday.
I've got 1 issue. Fingerprint unlock doesn't work. I mean fingerprint sensor works because I can set up a fingerprint. But when phone is locked (screen on or off) I can't unlock it.
Maybe this is Gapps related? (I used Nano beta from october). Not rooted
Rom is fast and responsive. No other bug/ lag or freezes so far.
If anyone can help me with fingerprint unlock it would be much appreciated.
Have a nice day.
Click to expand...
Click to collapse
Same here, I think new magisk 20 breaks it , because with 19.4 working fine
savinjo22 said:
Same here, I think new magisk 20 breaks it , because with 19.4 working fine
Click to expand...
Click to collapse
Sorry I said not rooted ?... I wanted to say that magisk wasn't installed.
i tryed this rom on my htc m8 and i love it and i will try it again on oneplus 6
Is this also implemented already in android 10? TIA
tiga016 said:
View attachment 4847745
Is this also implemented already in android 10? TIA
Click to expand...
Click to collapse
Yes there's some customization settings.
dev i tried to flash this rom but it says failed because the file for oneplus 5 not oneplus 6 could you check the download link?
backtrack292 said:
dev i tried to flash this rom but it says failed because the file for oneplus 5 not oneplus 6 could you check the download link?
Click to expand...
Click to collapse
I assume you used the 'Green Box' link in Sourceforge? That always trips people up. That link is the latest ROM across all crDroid devices. (Currently the OP5 'Cheeseburger') Or next time actually read the file name before flashing.
Ignore that Green Box. Just pretend it doesn't exist. Use the links underneath to get the Enchilada downloads.
a new v6 build is up !
october security and statusbar padding are new
firebird11 said:
a new v6 build is up !
october security and statusbar padding are new
Click to expand...
Click to collapse
does it supports signature spoofing?
just tried moving from havoc 2.9 (pie) to crd6 (q), but unfortunately at this point no twrp can handle Q OOS flashing (to bring firmware to up to Q levels), latest available twrp is Mauronofrio's 3.3.1.4 so if anyone succeeds in flashing stock followed by CrD6 on a later/another twrp, would love to hear the success story...
for now, someone suggested only a local upgrade route within ota, but you end up without a functioning twrp environment which is probably too much hassle for most, so we will wait on the sidelines for a bit longer.
hope this helps!
What the latest fw is required pie or Q beta 1?
---------- Post added at 08:03 PM ---------- Previous post was at 08:02 PM ----------
ewong3 said:
just tried moving from havoc 2.9 (pie) to crd6 (q), but unfortunately at this point no twrp can handle Q OOS flashing (to bring firmware to up to Q levels), latest available twrp is Mauronofrio's 3.3.1.4 so if anyone succeeds in flashing stock followed by CrD6 on a later/another twrp, would love to hear the success story...
for now, someone suggested only a local upgrade route within ota, but you end up without a functioning twrp environment which is probably too much hassle for most, so we will wait on the sidelines for a bit longer.
hope this helps!
Click to expand...
Click to collapse
There is a way to have a twrp on open beta 1.
https://forum.xda-developers.com/oneplus-6/how-to/how-to-update-to-android-10-beta-1-twrp-t3987041
---------- Post added at 08:04 PM ---------- Previous post was at 08:03 PM ----------
ewong3 said:
just tried moving from havoc 2.9 (pie) to crd6 (q), but unfortunately at this point no twrp can handle Q OOS flashing (to bring firmware to up to Q levels), latest available twrp is Mauronofrio's 3.3.1.4 so if anyone succeeds in flashing stock followed by CrD6 on a later/another twrp, would love to hear the success story...
for now, someone suggested only a local upgrade route within ota, but you end up without a functioning twrp environment which is probably too much hassle for most, so we will wait on the sidelines for a bit longer.
hope this helps!
Click to expand...
Click to collapse
There is a way to have a twrp on open beta 1.
https://forum.xda-developers.com/oneplus-6/how-to/how-to-update-to-android-10-beta-1-twrp-t3987041
meistr91 said:
What the latest fw is required pie or Q beta 1?
---------- Post added at 08:03 PM ---------- Previous post was at 08:02 PM ----------
There is a way to have a twrp on open beta 1.
https://forum.xda-developers.com/oneplus-6/how-to/how-to-update-to-android-10-beta-1-twrp-t3987041
---------- Post added at 08:04 PM ---------- Previous post was at 08:03 PM ----------
There is a way to have a twrp on open beta 1.
https://forum.xda-developers.com/oneplus-6/how-to/how-to-update-to-android-10-beta-1-twrp-t3987041
Click to expand...
Click to collapse
thank you for the suggestion... gone well beyond the link's status by the time i read this (on oos from local update), so may just wait it out for a working twrp solution - been too long since last used OOS anyway!
new v6 builds are up !
firebird11 said:
new v6 builds are up !
Click to expand...
Click to collapse
Can be flashe with oos 10 base ?

[OOS][Stable][OP6T Global][OP6T Tmobile] Oneplus 6T stable OOS guide thread

OOS stable for Oneplus 6T Global ​
This thread is an attempt to make things clean for OP6T users.
It will contain latest zip links for OOS stable.
It will contain a brief guide on how to root, install TWRP , how to update with or without those elements.
6T global edition is supported by thread readers and me, and T Mobile converted specific concerns will be handled by community under the supervision of @Scott, thanks to him for the help.
It will not contain basics like ADB and Fastboot connection with a computer. Experiment, read, there are many and many tutorials on the internet for that. Don’t forget there is a world outside XDA and that you can perform a search on any search engine to grab information.
It will not cover by decision the ‘patching boot.img’ method for gaining root. It’s not necessary to use it when we have a working TWRP and Fastboot. If you want to try it search on the internet about ‘extracting boot.img from payload.bin’ and then use Magisk Manager to patch it.
Please NO discussion about: Magisk itself, custom kernels, debloating (whatever method you want to use), custom ROMS… Only STOCK STABLE OOS.
If you just want to flash custom kernels, no need to have TWRP, Ex Kernel Manager and Franco Kernel Manager for example can take care of that (see Play Store to grab those apps), and backup your stock kernel.
ALWAYS USE LATEST VERSIONS of the different tools used. Don’t ask for help if you’re using 6 months old TWRP or Magisk. Update it first.
First a bit of what I have understood about our phone, and its main specificity, i.e A/B slots.
A/B slots, what else ?​
This structure is meant to enable to have two different versions of the SAME ROM, one slot will contain the previous version of the ROM, the other slot will contain the updated one. If you are on slot A and running 10.3.0, the update process will lead to have 10.3.0 on slot A and 10.3.1 on slot B. On next boot the bootloader will automatically boot updated one (i.e slot B will be flagged as the active one). In case of issues during boot process the bootloader will switch the active slot back to the ‘old’ version(here slot A) that was booting fine.
This means that IT’S NOT a dual boot feature!! If you want to run a custom ROM it’s better to have the same custom ROM on both slots and not a mix of OOS and custom ROM. But that’s already OT so let’s stay focus, each custom ROM should provide clear instructions about that.
Having a slot phone means that there is no Recovery partition. So if you ‘fastboot flash boot twrp.img’ it will overwrite your boot partition and thus the ROM kernel and can lead to issues. The .img file is only meant to be temporarly booted. Recovery (stock or TWRP) is a part of the boot ramdisk.
Some simple facts about slots and flashing in TWRP:
Flashing a whole ROM (OOS for example) will automatically flash it to the currently inactive slot and switch it to be the active one (that works also with stock recovery, when performing a ‘local update’)
Flashing a ROM overwrites completely the boot partition (in recent Android versions, flashing process is using partition RAW images and not files like it was before): that means that TWRP and Magisk (if present) will be ERASED.
Flashing TWRP installer will flash it AUTOMATICALLY ON BOTH SLOTS (and will erase Magisk if present)
Magisk (and GAPPS but it only applies to custom ROMs), when flashed with TWRP is only flashed in ACTIVE slot. That’s why you must REBOOT to recovery BEFORE flashing Magisk to have it installed on the active updated slot. And that explains why you must flash it last.
That said, if you stay on OOS, YOU DON’T care about slots, just remember those basics to understand why you have to respect some steps, and let the recovery take care of slots. Messing manually with them results often in soft bricks
Downloads​
OOS stable full signed zips: thanks to @Some_Random_Username, @Titokhan, @trollavin (their thread here)
If the above doesn’t work anymore just let me know I’ll find something else.
FYI you can still go to Oneplus website but they take time to update it to latest version… And there is no archives.
XDA:DevDB Information
OOS Stable thread support, ROM for the OnePlus 6T
Contributors
Striatum_bdr, Scott
ROM OS Version: Android 10
ROM Kernel: Linux 4.x
Version Information
Status: Stable
Created 2020-02-05
Last Updated 2020-02-06
Rooting
CHANGELOGS​
OOS 10.3.4:
System
Updated launcher version to 4.1.6
Updated Android Security Patch to 2020.05
Improved system stability and fixed general bugs
Phone
Fixed the issue with default country in assisted dialing when SIM2 is in roaming state
Newly added Work-Life Balance to help prioritize notifications and allocate time wisely (India only)
Newly added Epic Games in Game Space (India only)
OOS 10.3.3:
System
Fixed the issue with a black screen randomly appearing while playing games
Updated GMS package to 2020.02
Updated Android Security Patch to 2020.04
Improved system stability and fixed general bugs
Network updates
Integrated VoLTE & VoWifi support for Telenor – Denmark
Integrated VoWifi support for RJIO – India
Phone
Newly added OpSoprts features in the shelf
Added OnePlus Roaming feature: choose a plan without worrying about the SIM card while traveling
Cloud Sync updates [India only]
Updated the CloudService to Version 2.0
OOS 10.3.2:
Changelog 10.3.2
System
• Fixed the screen flickering issue while swiping up to unlock
• Improved system stability and fixed general bugs
• Updated Android security patch to 2020.02
OOS 10.3.1:
Changelog 10.3.1
System
Fixed the issue with a black screen appearing after unlocking the device using fingerprint
Fixed the issue with the animation logo while rebooting the device
Fixed the issue with device heating up while charging
Fixed the random disconnection issue with 5Ghz Hotspot
Improved system stability and fixed general bugs
Updated Android security patch to 2019.12
Camera
Optimized the image preview time in the Pro mode
Fixed the camera crash issue
Gallery
Fixed the issue with videos and images not displaying in Gallery
OOS 10.3.0:
Changelog 10.3.0
System
Updated system to Android 10
Brand new UI for Android 10
Fixed the automatic reboot issue
Added the notch area display option in the Settings (Settings - Display - Notch display - Hide the notch area)
Fixed the issue with lock screen appearing even after unlocking the device with the password
Fixed the issue with Navigation bar after upgrade
Fixed the Digital wellbeing option missing in the settings
Updated Android security patch to 2019.11
Fingerprint
Fingerprint unlock functionality improvement
Enhanced the fingerprint animation
Camera
Camera performance improvement
Wifi Connectivity
Fixed the issue of Wifi connection to 5Ghz networks
OOS 10.0.1:
Changelog 10.0.1
System
Updated system to Android 10
Brand new UI for Android 10
Updated Android security patch to 2019.10
Fixed the fingerprint identification issue
Fixed the animation lag for fingerprint unlock
Fixed the automatic reboot issue after upgrade
Camera
Improved the performance and fixed known issues
Wifi Connectivity
Fixed the 5Ghz WiFi connection
OOS 10.0.0:
Changelog 10.0.0
System
Upgraded to Android 10
Brand new UI design
Enhanced location permissions for privacy
New customization feature in Settings allowing you to choose icon shapes to be displayed in the Quick Settings
General bug fixes and improvements
Full Screen Gestures
Added inward swipes from the left or right edge of the screen to go back
Added a bottom navigation bar to allow switching left or right for recent apps
Game Space
New Game Space feature now joins all your favorite games in one place for easier access and better gaming experience
Contextual Display
Intelligent info based on specific times, locations and events for Ambient Display (Settings - Display - Ambient Display - Contextual Display)
Message
Now possible to block spam by keywords for Message (Messages - Spam - Settings - Blocking settings)
ROOTING (+/- TWRP)​
Magisk zip is to be found here
TWRP latest .img and installer are to be found here
Don’t use all-in-one tools, you’re a grown up person you can to it by yourself. Yes you can.
If you're not rooted and run an OOS version older than 10.3.1, update your phone normally to latest OOS stable version then do as below
If you’re not rooted and running 10.3.1 or higher, those are the simplest steps to gain root.
Unlock your bootloader (will wipe everything…): “fastboot oem unlock” from a computer (see beginning of OP to know why I don’t detail this) with phone in fastboot mode
Grab latest Magisk zip on your phone and latest TWRP .img on your computer (AND TWRP installer .zip on your phone if you want to install TWRP permanently). Boot in fastboot mode your phone.
Then :
“fastboot boot twrp_latest.img” (adapt to the name and path of your twrp file)
within TWRP, flash TWRP installer .zip if you want to keep TWRP
flash Magisk zip (always AFTER flashing TWRP)
Reboot
(you can theoretically use the TWRP feature ‘install recovery ramdisk’ to avoid flashing twrp installer but never tested)
Note: please STOP using blue_spark TWRP!!! Support for OP6T has been stopped long time ago, only OP6 twrp is still actively supported by eng.stk (errors are mandatory if you flash it on 6t). I even see people that use a 3.2.x version of blue_spark...
UPDATING WITHOUT ROOT​
If your bootloader is locked (meaning no root no TWRP, factory state), the update process is trivial, OOS (or Oxygen Updater if you use it) will grab a patch file (around 100MB max usually) and will apply it and will ask you to reboot. Everybody should be able to do this as it’s the normal way every phone on earth updates itself… If major changes are present sometimes you’ll have the whole ROM file. It doesn’t matter anyway it leads to the same destination.
If your bootloader is unlocked but without root, the only difference is that OOS (or Oxygen Updater) will download the WHOLE ROM (around 1.8GB) and will apply it then ask for rebooting
UPDATING WITH ROOT (+/- TWRP)​
Whole ROM update is mandatory. You can wait for System Update to download it or grab manually the zip file or use Oxygen updater. You then go in Settings > System > System Update > clic on the upper right cogwheel then choose ‘Local Update’ and select the zip file (If you download the OTA .zip file manually you must place it in the root of user data, like /data/media/0/ i.e the user internal storage, or eventually in the .OTA folder if there's one. If you use Oxygen Updater or System automatic donwload it will be right placed).
The following update method is the preferred one (even if you have TWRP, recommended by some TWRP devs) due to frequent changes in partitions by OnePlus
apply the ROM update via Settings > System > System Update > Local Update
DON’T REBOOT
Open Magisk Manager
[If you have TWRP, go in Modules menu, clic on ‘+’ and choose latest TWRP installer zip file on your phone. Don’t use Retention A/B Script Magisk Module I had issues with it] [then stay in Magisk Manager and do the next step]
On main screen of the app clic on ‘install’ next to Magisk paragraph
On the pop up menu confirm ’Install’
On the next pop up menu clic on the last entry: install on inactive slot (after OTA update)
Then only reboot.
The order can be changed (the most important thing to preserve is Magisk, TWRP is easy to flash back):
Update without taking care of TWRP, just Magisk part ("install to other slot after OTA thing")
Once rebooted to updated system, flash TWRP as a module with Magisk Manager
Install Magisk again using Magisk Manager ("direct install" option)
There are infinite debates about uninstalling or not Magisk Modules before updating. Most of the times nothing to touch, sometimes there could be issues, instead of uninstalling perhaps just inactivate them by precaution before updating.
Note: If you are rooted and run an OOS version older than 10.3.1, the above method should work, but you can also update your ROM to latest stable without taking care of root/TWRP and then root again as described in post #2
If you want to try TWRP way:
Reboot to TWRP
Flash OOS update
Flash TWRP installer
Reboot to Recovery
Flash Magisk
Reboot System
IF YOU ARE INTO A SOFT BRICK​
Don't forget the Vol+/Vol-/Power_button combo that can save you from a non responding phone...
If you can boot in fastboot mode, flash the stock ROM with fastboot. A little trick is to edit the flash-all-partitions**.bat and remove ‘-w’ (-w means that the partition will be wiped before flashing) from the script, it will prevent personal data wipe. Or flash manually all partitions one by one, without ‘-w’ flag evidently. Some partitions can’t be flashed with fastboot, for that once booted back to OOS, download and install by ‘local update’ method the same ROM version you’ve just restored with fastboot (see the linked thread to know why, emojis issues for example sometimes).
If you can’t go in fastboot mode, use Oneplus MSM tool. See there and there.
Thank you for the time and effort for this thread as I just came from a Sony XZ1 as I was a bit confused by the different posting on how to do what...
Thanks for a detailed post.
Can I update my rooted OP6T 9.0.17 (TWRP 3.3.1-2+ Magisk) directly to rooted 10.3.1 using the following guide :-
1. Reboot to Twrp 3.3.1-2.
2. Flash Twrp 3.3.1-31 installer.
3. Rebbot to recovery twrp 3.3.1-31.
4. Flash Magisk uninstaller
5. Flash 10.3.1 OS
6. Flash TWRP 3.3.1-31 installer
7. Reboot to recovery.
8. Flash Magisk.
9. Reboot to system.
Goormeetsingh said:
Thanks for a detailed post.
Can I update my rooted OP6T 9.0.17 (TWRP 3.3.1-2+ Magisk) directly to rooted 10.3.1 using the following guide :-
1. Reboot to Twrp 3.3.1-2.
2. Flash Twrp 3.3.1-31 installer.
3. Rebbot to recovery twrp 3.3.1-31.
4. Flash Magisk uninstaller
5. Flash 10.3.1 OS
6. Flash TWRP 3.3.1-31 installer
7. Reboot to recovery.
8. Flash Magisk.
9. Reboot to system.
Click to expand...
Click to collapse
That sounds correct
Thank you for taking the time to do this. I am now subscribed
Very nice. Subscribed. Thank you.
I've been trying to do this for the past 8 hours.
Here's what I do, please tell me where am I going wrong
- msm 9.13
- update to 9.17
- local upgrade to 10.3.1
- boot system to enable oem unlock, usb debug
- boot to fb, unlock bootloader
- boot system
- boot fb, boot twrp
- flash twrp, both slots
- reboot twrp
here I get different results:
- try to install magisk, all internal storage encrypted. sideload, but still no cigar. try to install on both slots by rebooting twrp to a and b and sideloading magisk, still no cigar
OR
- flash magisk, boot system, no magisk
OR
System boots, we have root, we have everything, but file manager shows emptyness. Can't modify any files on internal storage. Via phone and via PC.
Now tell me what am I doing wrong, please
jazzgott said:
I've been trying to do this for the past 8 hours.
Here's what I do, please tell me where am I going wrong
- msm 9.13
- update to 9.17
- local upgrade to 10.3.1
- boot system to enable oem unlock, usb debug
- boot to fb, unlock bootloader
- boot system
- boot fb, boot twrp
- flash twrp, both slots
- reboot twrp
here I get different results:
- try to install magisk, all internal storage encrypted. sideload, but still no cigar. try to install on both slots by rebooting twrp to a and b and sideloading magisk, still no cigar
OR
- flash magisk, boot system, no magisk
OR
System boots, we have root, we have everything, but file manager shows emptyness. Can't modify any files on internal storage. Via phone and via PC.
Now tell me what am I doing wrong, please
Click to expand...
Click to collapse
I think you should format data after unlock. I think it's kinda safety feature if some1 try to get into your storage by unlock bootloader. But wait by some1 to confirm
jazzgott said:
I've been trying to do this for the past 8 hours.
Here's what I do, please tell me where am I going wrong
- msm 9.13
- update to 9.17
- local upgrade to 10.3.1
- boot system to enable oem unlock, usb debug
- boot to fb, unlock bootloader
- boot system
- boot fb, boot twrp
- flash twrp, both slots
- reboot twrp
here I get different results:
- try to install magisk, all internal storage encrypted. sideload, but still no cigar. try to install on both slots by rebooting twrp to a and b and sideloading magisk, still no cigar
OR
- flash magisk, boot system, no magisk
OR
System boots, we have root, we have everything, but file manager shows emptyness. Can't modify any files on internal storage. Via phone and via PC.
Now tell me what am I doing wrong, please
Click to expand...
Click to collapse
I know you managed to sort things as you posted it in another thread. Anyway I don't understand why you had to do all those steps .... But anyway the goal is achieved
Just an FYI: I will be helping to support the T-Mobile version of the device in this thread.
Scott said:
Just an FYI: I will be helping to support the T-Mobile version of the device in this thread.
Click to expand...
Click to collapse
THANK YOU VERY MUCH. Several of us out here!
Scott said:
Just an FYI: I will be helping to support the T-Mobile version of the device in this thread.
Click to expand...
Click to collapse
Welcome back sir Scott!
---------- Post added at 03:27 AM ---------- Previous post was at 03:26 AM ----------
Thank you for this thread.
Scott said:
Just an FYI: I will be helping to support the T-Mobile version of the device in this thread.
Click to expand...
Click to collapse
hodgestl said:
THANK YOU VERY MUCH. Several of us out here!
Click to expand...
Click to collapse
I second this, thank you and also thanks to OP!!
Is there any way we could get a change log for the stable update?
hodgestl said:
THANK YOU VERY MUCH. Several of us out here!
Click to expand...
Click to collapse
r3dp0is0n2012 said:
Welcome back sir Scott!
---------- Post added at 03:27 AM ---------- Previous post was at 03:26 AM ----------
Thank you for this thread.
Click to expand...
Click to collapse
..Cory.. said:
I second this, thank you and also thanks to OP!!
Is there any way we could get a change log for the stable update?
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Your all welcome!
I love this phone and like to help so lets see how this goes down :good:
...
---------- Post added at 10:48 PM ---------- Previous post was at 10:39 PM ----------
As far as the change log, that could be a challenge. I have never been able to find the full change log for the international version. The T-Mobile Version is here: https://www.t-mobile.com/support/devices/android/oneplus-6t/software-updates-oneplus-6t. Because this is something we can direct link to, I dont think it should be included in full text here on XDA. I think a link the in first or second post under "useful info" would be sufficient.
As far as the international version goes, I know every verison number by heart.. worst case scenario, I could just google each OTA version and grab the change log from the from the first Android news site that pops up. Unless someone else knows of where one might be at? We could also start at version 10.0.0 because I feel anything older than that is irrelevant.
For changelogs it could be done eventually by grabbing them on the net. There is clearly something between Oneplus and changelogs....
I'm ask for an extra reserved post to have more space and avoid too long posts.
Changelogs added in post #4
Scott said:
Just an FYI: I will be helping to support the T-Mobile version of the device in this thread.
Click to expand...
Click to collapse
Awesome. I've been running a converted TMobile phone and can't wait b for them to related A10 so I can have android pay back without root

[ROM][OFFICIAL][fajita][11.0]crDroid Android[v7.30]

NOTICE: crDroid 7.x (Android 11) is now in maintenance-only release mode, and will probably be End-Of-Life'd soon.
I'll be merging monthly Android Security Bulletins from upstream as they're available, and pushing releases, but they're blind builds at this point and I don't have time to troubleshoot them any longer.
Please consider updating to crDroid 9.x (Android 13):
crDroid 9.x XDA thread - OP 6/6T
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
crDroid is built on top of LineageOS, and is designed to increase performance and reliability over stock Android for your device, while also attempting to bring you many of the best features in existence today.
Features
A quick glossary and primer on flashing & slots for A/B devices (like ours):
Spoiler: Show/Hide
- "Clean flash": Removing device protection & clearing user settings before installing a bootable system install zip (usually by either wiping or formatting data, see below).
- "Dirty flash": Flashing a ROM zip (usually upgrading to new version, sometimes just re-flashing the existing one) without wiping data or anything first.
- "Wipe data": Synonymous with "factory reset", accomplished from TWRP recovery by selecting "Wipe", then performing the "Slide to factory reset". Clears user data without erasing any partitions, removing encryption, or deleting contents of internal storage.
- "Format data": Formats the data partition itself, resets all file-based encryption keys, loses all contents of internal storage, and in fact deletes all "user 0" directories (this has some implications for internal storage before & after first boot).
- "User 0" directories are a series of directories that store userdata for the primary user, "Owner", and get created in various places throughout the filesystem on first system boot if they don't exist already. Anything you copy to "internal storage" while booted in recovery after "formatting data" will actually be copied to /data/media/ instead of /data/media/0/, and will become invisible to regular file browsing after first boot once the system has created /data/media/0, since the system will prefer to use that path for internal storage from then on (so you'll need a root file browser to delete things from /data/media, or just ADB sideload things instead of copying after formatting but before booting).
- "OTA package": Originally an abbreviation for "over the air", referring to how a software update could be delivered (as opposed to having to take your phone to a carrier's store for a firmware update via serial/USB connection). The common usage in Android circles is any installation zip file that actually includes a bootable system.
- Some partitions are duplicated (system, vendor, boot, and probably a couple others, but not data) and have a "slot A" & "slot B" copy.
- "Slot A" and "slot B" are absolute designations, but most installer zip scripts use the relative designations: "active" and "inactive". Whichever slot you're booted from currently is "active", and the other one is "inactive".
- Installing a zip file that's flagged as being an OTA package will 1) install the contents to the "inactive" slot, and then 2) flag the bootloader to switch which slot is considered "active" (and booted from) and "inactive" upon next reboot.
- The OxygenOS full OTA zip files and all custom ROM installer zip files are considered "OTA packages" and will trigger a slot switch on next boot after installation.
- You can install multiple OTA zip packages one after the other without rebooting in both the stock recovery and TWRP; they will all get installed into the correct partitions in the "inactive" slot, one on top of the other, and then it will swap active & inactive upon reboot.
- We don't use what are called "delta" updates, which can patch existing partitions by block or by file; we use full filesystem images. So for us, OTA zip packages are really just a bunch of partition filesystem image files all wrapped up into a "payload.bin" with some extra instructions & metadata/checksums, so when you flash a ROM, it overwrites entire partitions at a time instead of individual files or filesystem blocks within that partition. So if you've changed something in a partition like system that gets written as part of flashing an OTA zip, all your changes are gone. The only thing in the system partition afterward will be what was in the system.img that was included in the ROM zip payload.
- The partitions that crDroid, LineageOS, and most custom ROMs for OnePlus 6 & 6T install to when flashing are boot (contains recovery & kernel), dtbo, system, and vbmeta. Some ROMs (like Syberia) build the vendor partition from source instead of just trying to work with the existing OEM vendor partition, so they flash that one too when installing. So you definitely need to flash stock vendor before switching from Syberia or another source-built vendor ROM to one like Lineage or crDroid that uses prebuilt.
- "Prebuilt vendor" vs. "source-built" vendor partitions: when first trying to get a custom ROM working on a new device now that we have separate system & vendor partitions & Google's "Project Treble" is a thing, you'll often just leave the contents of the vendor partition alone, because that's where all the proprietary or device-specific stuff lives (manufacturer specific hardware drivers & interfaces, any DRM libraries, custom frameworks & selinux policies for talking to them), and you make a compatibility map of what framework versions you're compiling against in system and what vendor version they're compatible with or supersede or you overlay updated things that should replace stuff in the vendor partition and keep it in system_ext instead. But you're also limited in that if there are some things in vendor, you CAN'T work around it from the ROM side (like, OnePlus Camera working correctly). So often, once the basics are functioning, the goal is to move to building the contents of the vendor partition from source, because you then have the freedom to fix problems with sepolicy, library/framework mismatches, etc. and make things work with the custom ROM instead of only working with the OEM's flavor of Android, and you can still copy individual pre-compiled files from the stock vendor filesystem image if needed (like if there's no open-source equivalent for some driver). Unfortunately, OnePlus SDM845 (enchilada & fajita, the OP6 & OP6T) never got a proper source-built vendor bringup by the LineageOS team (upon which crDroid is based). And while Syberia has had source built vendor in Android 11 (possibly 10?), it was only done for enchilada and NOT fajita, it's not trivial to unroll & commonize what they've done to apply to other ROMs, and some of the proprietary files they keep are imported from other similar devices/similar chipsets rather than source-built (presumably because the OnePlus ones are modified in a weird way that the open-source components can't hook into, but still not ideal). So for fixing a lot of the issues we still face with lack of things working quite right, or hardware features not available in custom ROMs (especially compared to newer OnePlus devices like the 7, 8, or 9 series), we're kinda stuck, because you can't just implement it against the stock prebuilt vendor.
- "Updating firmware" simply means we're flashing updated contents from the manufacturer into all the OTHER partitions besides the ones that the ROM OTA zip touches. There are another dozen or more of those, besides system & boot, that the full OxygenOS OTA zip would normally write to when you install it. The contents of the system partition in custom ROMs for our device are generally built against a particular version of OxygenOS (mostly the contents of the OEM vendor partition), and we've recently had an entire major Android version update come through from OxygenOS. Some people are still on older firmware that is now dramatically different than what the current custom ROM was intended to deal with (that is, all the stuff from OxygenOS is still based on Android 10, while the ROM is expecting compatibility with Android 11), and while I tend to agree that OxygenOS 10 was better than the current state of OOS 11, that doesn't matter when you're talking about installing the custom ROM over it. So please, keep an eye out in the release notes for what the recommended/required firmware versions are, and remember to update (procedure below).
Notes on custom recoveries with OxygenOS 11 firmware:
Spoiler: Show/Hide
- My understanding (from people smarter than me) is that the android-11 tree of TWRP is kind of a mess at the moment. I had made some 3.6.0_11-0 unofficial builds for both enchilada & fajita, but now they don't even seem to boot and I don't know why. TWRP android-11 tree refuses to mount the system partition where it belongs, and so addon.d OTA survival scripts don't work correctly any longer (which means you're hosed if you use NikGapps and update while booted from a TWRP version ending in "11-0", or if you have Gapps installed as a module and forget to reboot recovery & re-flash Magisk after flashing an update from TWRP).
- Trying to `fastboot boot` an Android 9-based TWRP image (like official 3.5.2_9-0 twrp.img) after installing OxygenOS 11 doesn't work, and will drop you into Qualcomm Crash Dump mode. Don't try to flash it as your boot partion, either.
- Meanwhile, stock LineageOS-based recovery, for all its shortcomings, has working fastbootd (aka "Userspace fastboot", which is what happens when you go to "Advanced", then choose "Enter fastboot" and the background colors go from purple to orange) that lets you flash both slots at once and unlocks critical partitions, while the OnePlus OEM bootloader (where it says "Fastboot Mode" in a square, then goes to the big green "START" text over white & dark red terminal font type text) can't be used to flash every partition to update firmware. Personally, I still think of it as wannabe-class and not a "real" custom recovery until the Lineage team 1) implements userdata decryption so you can manage files in /data and install updates from internal storage, and 2) allows for a factory reset the way we've always all understood it ("wipe data") WITHOUT nuking the contents of internal storage for no good reason ("formatting data"). But since crDroid is LineageOS-based, it's what we've got, and fastbootd is the best way to update firmware.
- With all that being said, since it's likely TWRP will only get MORE broken with Android 12 looming large, we're officially only going to support the built-in LineageOS-based recovery & OTA updater moving forward, until things change dramatically. If you want to try different custom recoveries (new builds of TWRP, OrangeFox, PBRP, whatever), feel free; and let us know how it works! But you're on you're own doing that.
- And on the system update side, applying system OTA updates seems to work correctly using the built-in Updater tool (Settings > System > Updater) both with new OTA releases and when choosing a file from "Local Installation". It executes OTA survival scripts correctly from /system/addon.d/ as well. I've personally tested and it correctly preserved Magisk v23 canary and MindTheGapps & NikGapps (on tester fajita) and MinMicroG "system" install package on my daily driver enchilada.
- ...however it has an accidental dependency on Magisk, due to things beyond my control upstream in the ROM. Whoops. Won't work if you don't have Magisk installed.
- FLASHING the old official TWRP 3.5.2_9-0 INSTALLER zip (or newer) on top of OOS 11.x DOES seem to work for now, but you need to be in a recovery environment that allows you to flash that installer in the first place (either by booting into an already-installed TWRP recovery before updating firmware, or by having an Android 11 compatible recovery boot.img to be able to `fastboot boot`). I don't know if it'll keep working in Android 12 or with crDroid 8.
- Look, if you really want to stick with TWRP, I don't blame you. I made bootable Android 11 compatible TWRP images for enchilada & fajita back at 3.5.2, and they still work well enough to `fastboot boot` them and then flash the old official 3.5.2_9-0 installer zips. Look at the attachments at the end of post #2. Also, you may want to try one of Siddhesh's custom recoveries; they probably work even better.
- TL;DR: I prefer TWRP too but current official releases are kinda broken and it's a chore to get the old version installed correctly, so built-in LineageOS-based recovery and Updater app are the supported way to install & update moving forward.
Prerequisites:
- Make sure your bootloader is unlocked (and don't plan on relocking it ffs).
- Make sure you have a reasonably-current, working installation of android platform tools (adb & fastboot command line binaries & necessary drivers) on your computer, with a known-good USB cable (see links in post #2).
- Make sure you've downloaded the most recent full OxygenOS OTA installer zip (11.1.2.2), crDroid zip, matching crDroid boot.img, and whatever Magisk/GApps/microG installation packages you want to use to your computer (see links in post #2).
- Make sure you've backed up whatever data you want to keep to somewhere that's not on your phone; for a new install, we're going to format the data partition and you're going to lose everything from internal storage.
Let's get started!
Updating firmware:
- Reboot to bootloader (with no USB cable connected).
- If you're not already using the stock (LineageOS-based) recovery, you'll need to `fastboot flash boot path/to/boot.img`, substituting in the path & filename for the current crDroid boot.img that you downloaded as part of the prerequisites.
- Reboot to bootloader again (actually loads new bootloader that you just flashed).
- Use Vol +/- buttons to select "Recovery mode" and press Pwr button to boot stock recovery (white & purple on black color scheme, LineageOS logo in the middle).
- Tap "Advanced", then tap "Enter fastboot" (the already-selected first option), and color scheme should change from purple to orange.
- Follow the instructions for extracting the partition images from the official OxygenOS Updater full OTA zip you already downloaded using the "payload-dumper-go" utility, and flashing them one at a time, from https://wiki.lineageos.org/devices/fajita/fw_update, except for the very last command ("fastboot reboot").
- Since those instructions were updated for Android 12, and this is still Android 11-based & depends on using the OxygenOS prebuilt vendor partition contents, you'll also need to run fastboot flash --slot=all vendor vendor.img at the end of the list of commands in the linked LineageOS Wiki article above.
- If you're only updating firmware and were already on crDroid, you can just "fastboot reboot" which will go back to system. If this is part of coming to crDroid from another ROM, continue with the instructions below.
First time installing crDroid to your OP6T, coming from stock OxygenOS 11.x or another ROM (stock LOS-based recovery):
- Update to OxygenOS 11.1.2.2 firmware as described above if you haven't already.
- At the end of that procedure, (re)flash the crDroid boot.img to the `boot` partition of both slots, then reboot to recovery.
- Once you're rebooted into stock recovery (and lo, it was most purple), ADB sideload the crDroid installation zip. It might prompt you with "Install anyway?" on the phone, so don't just walk away from it.
- After the adb sideload has finished and the purple menu at the top comes back, hit the back arrow, then choose "Wipe data" (which WILL format internal storage -- you backed up as noted above, right?).
- Reboot to recovery (causes it to switch slots so any further installations will be on top of the slot that it just installed crDroid into).
- ADB sideload Magisk and/or any GApps packages you want to use. Please note that any time you install something via ADB sideloading, that the install file is technically renamed "sideload.zip" in transit by the ADB protocol, which might cause problems with installers that try to get too clever for their own good and alter behavior based on renaming the installation zip (like MinMicroG), so you might have to get even MORE clever with changing up installation order (like flash MinMicroG/GApps before Magisk so it won't install as a module. I dunno, talk to the package installer authors to get them to just build multiple packages or talk to the LineageOS devs to allow you to decrypt internal storage, copy stuff to internal storage via MTP, and install stuff from internal storage like a proper custom recovery (or at least maybe `adb push` to an unencrypted temp dir in the data partition).
- Reboot system.
- ???
- Profit!
OTA updating from Updater app with OOS 11.x firmware (recommended):
- This is the preferred way now. You just go to Settings > System > Updater, and... install an update. It processes addon.d OTA survival scripts correctly (tested with Magisk, MinMicroG, MindTheGapps, and NikGapps).
- Please note that there's currently an accidental depencency on Magisk being installed for this to work. I don't know if this will get fixed; that's definitely above my pay grade. This appears to have been fixed; huzzah!
- If you're trying to do a "Local Install" of the downloaded zip, please note you NEED to download on a computer & transfer to internal storage via USB cable; downloading files from an app on the phone associates it with a particular app thanks to Android 11+ Scoped Storage/SAF bull**** and will cause the file to be unreadable to the updater app process.
-- Old TWRP-based instructions below the fold (not recommended, but keeping for historical value... probably not accurate but I'm not going to update them more) --
Spoiler: Show/Hide
OTA updating from TWRP with OOS 11.x firmware:
You don't need to remove device protection; it works fine with PIN. Be sure you have a PIN set, or have looked up whatever that arcane chart of pattern > numeric incantations in case of pattern unlock. It's awful.
- Boot into TWRP recovery.
- Choose install, then select crDroid.zip, select additional zips, choose the TWRP installer zip, then slide to confirm flash.
- Reboot recovery.
- Choose install, then select Magisk zip (if using), select additional zips, choose GApps/microG (if using), slide to confirm flash.
- Please keep off of the grass, shine your shoes, wipe your... dalvik.
- Reboot system.
OTA updating from TWRP with OOS 10.x firmware:
- Don't. Update firmware to 11.1.2.2 first.
Reporting bugs:
I'm a parent of three young kids whose industry disappeared in the pandemic and is now full-time house husband & parent-in-charge while my wife is teaching full-time, I'm trying to save my small live-event-turned-streaming-studio company in my spare time. I'm doing in-home caregiving for a family member overnight one day a week. This is the back-up spare-spare-time hobby. I'm not a software developer nor do I know any programming languages, I just wanted a ROM with signature spoofing support and more customization than the unofficial microg-compatible LineageOS builds. So if there are bugs or feature requests, I go over to the crDroid dev chat and ask if someone has time to hold my hand & help. Don't make me get yelled for annoying them, mmkay? That said...
- Logs/screenshots/recordings or it didn't happen. Either the built-in Matlog app, or Syslog (free, open source, available on Play store and F-droid) are your friends here.
- I try to keep an organized notebook of roadmap, feature reqeusts, bug reports, etc. I won't always be able to fix it, but I'll at least look and do my best to ask the actual devs.
- I don't sign into XDA much, so if I haven't said anything, check out the Telegram group. Lots of helpful folks there.
- Please keep your questions in this thread instead of PMing me with them directly, so that the entire class can benefit from the discussion and you can find out if it's just you or if this is a widespread issue.
It's your device to use the way you want of course, and I use Magisk & microG and like to tweak things myself. But don't expect much support if you:
- didn't do a clean flash.
- aren't using the built-in kernel.
- are using extensive modifications (besides Magisk) like Xposed/Riru, Dolby Atmos, Viper4A, etc.
- immediately start using "finalize.zip" or flashing migrate restore zips instead of following the actual instructions.
- are running decrypted.
- re-locked your bootloader for some reason... you're on a custom ROM; don't do that.
crDroid Website - Download here!
Donate - Support development!
Telegram Oneplus6/6t group - Share your best cat pictures!
Source Code:
- Device tree: https://github.com/crdroidandroid/android_device_oneplus_fajita/tree/11.0
- OP6/6T Common device tree: https://github.com/crdroidandroid/android_device_oneplus_sdm845-common/tree/11.0
- hardware/oneplus/ HALs: https://github.com/crdroidandroid/android_hardware_oneplus/tree/11.0-op6
- Kernel: https://github.com/crdroidandroid/android_kernel_oneplus_sdm845/tree/11.0
Notes:
- crDroid 7.x (based on Android 11 & LineageOS 18.1) is no longer being actively developed, and I don't know how long someone on the dev team will keep merging monthly security updates. I'll try to keep building releases as long as there are updates, but all my limited time is focused on 9.x/Android 13 bringup now. We're in maintenance mode now, so any outstanding bugs are likely to just remain for perpetuity.
- Yes it supports package signature spoofing permission for microG compatibility out of the box (but will work without ANY GApps/microG implementation installed as well).
- Maintainer does not use GApps, so cannot answer questions about which packages work best from firsthand experience. In general, go with the smallest package you can and then install other Google apps from the Play Store. Please note that if you replace the stock dialer with Google Dialer, you may lose access to the Phone Info menu (*#*#4636#*#*) until you install another dialer. For recommendations, see https://wiki.lineageos.org/gapps.
- Requires OOS 11.1.2.2 firmware (last official release). You should consider using an Android 10 ROM if you want to continue using Android 10 firmware.
- Tested against latest Magisk 24 (with zygisk instead of magiskhide), works well.
- No there won't be official builds with inline GApps; please don't ask.
crDroid 7.30 - May 2023 ASB release notes/changelog:
Changelog since v7.29 official release:
- Merged May 2023 Android Security Bulletin from upstream.
- Whatever the ROM dev team changed upstream in LineageOS and crDroid sources (not much? they're busy with Android 13).
- No changes to device-specific files.
Known issues:
Fajita-specific:
- If you use App Lock and/or Face Unlock, you'll likely run into issues with the FOD circle view starting to flicker randomly into view when it shouldn't be there (like it's not dismissing properly because one part of the security handling is fighting with or doesn't notify the other part that it's done and doesn't need to try to accept a fingerprint any longer). As a knock-on effect, this will also cause "Disable Night Light when FOD is visible" to freak out. I have one person who doesn't use either report that they were getting the random FOD circle anyway, so... if you're having this problem, please make sure you've given MatLog permission to manage files so that it can actually save logs to internal storage and capture a logcat & send it to me. Logs or it didn't happen, etc etc.
Common:
- No f2fs-formatted userdata support, sadly. Doesn't work with the prebuilt vendor partition required for this version of Android. You'll need to reformat data to ext4 before being able to boot (you can fastboot flash the crDroid 8.x or 9.x boot.img if you need a recovery that will let you choose).
- Google Hotword recognition might be kinda broken right now (on more than one custom ROM/device, not just us), and may cause some screw-up that prevents microphone audio from being allowed to go anywhere else if it's enabled.
- If you are stuck at "Android is starting..." looping endlessly, then press power, reboot to bootloader, and follow the instructions for updating firmware to OxygenOS 11.1.2.2 in the first post. It doesn't wipe data, you shouldn't lose anything.
- Some screen-off gestures may not work, due to limitations beyond my control; don't use those gestures. Sorry.
Helpful links:
Download ROM
Android platform tools (adb & fastboot)
OxygenOS 11.1.2.2 Full OTA
Firmware update instructions (LineageOS Wiki)
(Please note that since crDroid 7.x/Android 11 for this device depends on the prebuilt OxygenOS vendor partition, you'll also need to add fastboot flash --slot=all vendor vendor.img to the list of commands in the instructions, just before the final fastboot reboot.
MSMTool (oh now you're in trouble - use latest unless you have a good reason to intentionally downgrade)
Magisk (use latest)
Official TWRP 3.5.2_9-0 install zip (good luck)
MaWalla99 said:
Download: coming soon!
Click to expand...
Click to collapse
will this work with verizon?
Tomkumato said:
will this work with verizon?
Click to expand...
Click to collapse
I don't know since I'm not in the US.
MaWalla99 said:
I don't know since I'm not in the US.
Click to expand...
Click to collapse
Thanks
hi dev thanks for this rom i have successfully installed now, so there is a small info i like to share, that is installing any version of nikgapps apart from core nikgapps will result in bootloop or after even format the data, rom will boot but set up screen says it crashed, so i have installed with core version of nikgapps, rom booted successfully. that's all i have info to share now.
Hi dev ROM is working fantastically after installed all the application I used before, so thanks for it, it has enough customization thanks for it too.
Does NOT work on Verizon.
Hi devs i don't know the reason why this happening, the problem is when i change default launcher to nova launcher system ui automatically crashes, i can't specifically pinpoint the reason, but after launching the Paytm app for first time then paytm also crashed so i don't know what to do now. I have attached logcat from matlog so I think I have captured required info.
Thanks for the ROM. Where is the best place to get A11 gapps?
wangdak said:
Thanks for the ROM. Where is the best place to get A11 gapps?
Click to expand...
Click to collapse
nik gapps
hi all,
I'm on fajita with crdroid 5.11 - Android 9.
i'd like to bump up to this thread's version. any tips for how to go about that - step by step?
I assume it would be something like -- update TWRP, update firmware, then flash rom as usual with instructions in first post?
many thanks
autologic said:
hi all,
I'm on fajita with crdroid 5.11 - Android 9.
i'd like to bump up to this thread's version. any tips for how to go about that - step by step?
I assume it would be something like -- update TWRP, update firmware, then flash rom as usual with instructions in first post?
many thanks
Click to expand...
Click to collapse
1 - remove any passwords used to unlock screens - 2 - Backup all your important data, - 3 - Make sure you're on latest TWRP for Fajita and that you have latest OOS firmware, Gapps, TWRP installer and the ROM you want to install (zip files) copied to your "Downloads " directory, then reboot into recovery mode, - 4 - make sure you're on slot A (tap "reboot", tap slot "A" and reboot to recovery again), 5 - tap "Wipe", "advanced wipe" and select " Dalvick Art/Cache", " data" and "system", - 6 - swipe to wipe, 7 - tap "install" and select OOS, then swipe to install, 8 - install TWRP zip file, 9 - reboot to recovery, - 10 - install OOS on the second slot, 11- install TWRP, 12 - reboot to recovery, 13 - install the new ROM, 14 - tap "Wipe", advanced Wipe", "Dalvick Art/Cache" and "Data", 15 - swipe to wipe, 16 - install TWRP and reboot to recovery, 17 - install GAPPS, - wipe " Dalvick Art/Cache and reboot to system. That's it!
autologic said:
hi all,
I'm on fajita with crdroid 5.11 - Android 9.
i'd like to bump up to this thread's version. any tips for how to go about that - step by step?
I assume it would be something like -- update TWRP, update firmware, then flash rom as usual with instructions in first post?
many thanks
Click to expand...
Click to collapse
Boot in latest TWRP
Flash latest OOS 10
Flash CR Droid Zip
Flash Finalize.zip
Flash latest TWRP
Format data -type Yes to confirm
Reboot to recovery
Flash Gapps & Magisk (Optional)
Coming from a different version of Android, format data is recommended. Backup your data before you do this
Hi LiveDisplay color profile doesn't work ,setting a profile ,once you exit it resets back to normal again
Excellent ROM.
Thanks!
Hi dev i attached a video, in which i try to explain a problem, i can't pinpoint say amazon app only having this kind of problem, but i can say irresponsible of which app suddenly ui will have some kind of problem, it will appear from nowhere after that phone will hang and i need to restart the phone or else battery drains very fast. Kindly look into it. I reinstalled the rom two time freshly, even though it having same kind of problem presist, but i really loved one good feature that is finger print working fantastic even after reboot. OS is not crashing and reboot by itself, app also not crashing but suddenly some part is acting wired. Anyway i will upload the video for proof. I have attached gif file as per xda rules.
I have one last idea in my head instead of using app called migrate to take back up of application installed in my phone and restore to newly installed rom. Better use play store to install all app one by one and see there is any difference, i really love this rom thats why i reinstalling freshly again and again to see any difference possible
I've never used micro g a whole lot in the past but I'm all for it now due to the unbelievable amount of permissions apps ask for and while I love Android I'm no Google person either. I flashed 7.2 CrDroid two days ago and didn't install gapps. Then I went back in twrp and flashed micro g and fdroid from (stable) nano droid installer thread here on XDA. Going to read up more about micro g ..etc.. Op, if you are testing anything that has to do with this or anything feel free to msg me anytime. Ill run whatever through everything possible and gather logs if need be and send them to you properly. Thanks for this rom!! Great job!! Always loved CrDroid! Think i 1st used CrDroid back in 2013 or so. Fantastic rom!! My Screen time on 7.2 CrDroid.
flash713 said:
I've never used micro g a whole lot in the past but I'm all for it now due to the unbelievable amount of permissions apps ask for and while I love Android I'm no Google person either. I flashed 7.2 CrDroid two days ago and didn't install gapps. Then I went back in twrp and flashed micro g and fdroid from (stable) nano droid installer thread here on XDA. Going to read up more about micro g ..etc.. Op, if you are testing anything that has to do with this or anything feel free to msg me anytime. Ill run whatever through everything possible and gather logs if need be and send them to you properly. Thanks for this rom!! Great job!! Always loved CrDroid! Think i 1st used CrDroid back in 2013 or so. Fantastic rom!! My Screen time on 7.2 CrDroid.
Click to expand...
Click to collapse
Yeah I feel you I'm right where you are I think it's time to ditch Google and get a similar setup. Wonder if there's a thread in the 6t section yet? Google still my friend she'll teach me how to set it up, lol

[CLOSED] [No longer maintained] [RECOVERY] [11] [OFFICIAL] TeamWin Recovery Project (8T / Kebab) (2022-03-09)

Introduction:
Team Win Recovery Project or TWRP for short, is a custom recovery built with ease of use and customization in mind. We started from the ground up by taking AOSP recovery and loading it with the standard recovery options, then added a lot of our own features. It's a fully touch driven user interface , no more volume rocker or power buttons to mash. The GUI is also fully XML driven and completely theme-able. You can change just about every aspect of the look and feel.
Key Features:
Touchscreen driven with real buttons and drag-to-scroll
XML-based GUI that allows full customization of the layout true theming!
Settings are saved to the sdcard and persist through reboots
Ability to choose which partitions to back up and which to restore
Ability to choose to compress backups now with pigz (multi-core processor support for faster compression times)
Onscreen keyboard
Easy selection of internal/external storage
In addition to the above new features, TWRP features a scripting engine that allows an app to send commands to the recovery for the recovery to perform during startup. We call this scripting engine OpenRecoveryScript. This engine will be put to use immediately in the GooManager app. GooManager will be able to install recoveries automatically for most supported devices. The app will also let you choose to install multiple zips from within Android, wipe, and run a backup.
We are looking for other talented developers, themers, and device maintainers if they are interested in helping with a free, open source project.
Source Code:
GitHub - https://github.com/TeamWin/android_bootable_recovery
Gerrit Instance - http://gerrit.twrp.me
If you have made your own TWRP build for an unsupported device, please let us know. We might add your build to the list of unofficial builds. Bear in mind that we are working hard to add more devices and we may add your device to our official build list later.
Hello, this is TWRP, for Oneplus 8T
Installation:
# To temporarily boot it
fastboot boot <twrp_file_name>.img
# Since 8T/9R has a separate recovery partition, you can flash the recovery with
fastboot flash recovery <twrp_file_name>.img
Updating to a newer build:
Simply flash the latest TWRP installer zip from TWRP
OR
Flash the img from TWRP/fastboot
FAQ/Know Bugs are given in post #2
Send me a beer, if you think I deserve it: PayPal
Huge thanks to:
@bigbiff (For everything )
@Lossyx
@osm0sis
@Nebrassy
@Qnorsten
for helping in making this recovery. Without these people, TWRP for this device would not have been possible.
Special mention to a friend @apophis9283
Trees:
Device: https://github.com/theincognito-inc/android_device_oneplus_kebab
Kernel: https://github.com/AOSPA/android_kernel_oneplus_sm8250
Download:
OnePlus 8T (kebab)
Disclaimer:Team Win strives to provide a quality product. However, it is your decision to install our software on your device. Team Win takes no ...
twrp.me
If you need a black themed TWRP (same TWRP as the above, but themed black), you can go to this thread:
[RECOVERY] TeamWin Recovery Project black Themed [OP8T] [2022-03-11]
TeamWin Recovery Project (TWRP) with full black Theme I build a full black themed TWRP for the Oneplus 8t. This is based on the latest TWRP done by @theincognito This nice black Theme was originally created by @Morphine1 and @acuicultor for...
forum.xda-developers.com
FAQ and Known bugs of TWRP:
If you are planning to switch to a custom ROM, and are currently on OOS/H2OS, format /data, switch slot, reboot to TWRP and then sideload/flash the ROM + installer.
It's better to flash ROM + TWRP installer, if you want to keep your TWRP after flashing a ROM.
Don't format /data, after a flashing a ROM, before the first reboot.
It takes around 50s to actually boot into TWRP.
Ideal way to flash:
For OOS to Custom ROM - Format /data, switch slot, reboot to TWRP, sideload/flash ROM + installer, reboot to TWRP, flash Magisk/Gapps. Reboot to system.
For Custom to Custom ROM - Format /data. Flash ROM + installer, reboot to TWRP, flash Magisk/Gapps. Reboot to system.
For updating a custom ROM - Flash ROM + installer, reboot to TWRP, flash Magisk/Gapps. Reboot to system
For custom ROM to OOS - Format /data. Flash ROM + installer, reboot to TWRP, flash Magisk. Reboot to system.
PS: After formatting /data, until the first time the device is booted to system, the files you send to phone via MTP (USB) will be at /data/media, not at /sdcard
PS2: If, for some reason, you cannot send files to phone after formatting /data and rebooting to TWRP, press vol +, vol - and power button simultaneously.
PS3: Factory reset WILL NOT wipe internal storage.
Steps for backing up and restoring data in TWRP (Huge thanks to @BillGoss )
TL;DR for data backup on custom ROMs:
Backup /data (copy the backup folder to PC if you will format /data).
Flash the ROM and boot it once to system.
Restore /data (copy the backup folder back from PC if you formatted in step 1) and boot into system.
If you find any issues like missing navigation bar or blank screen or something, just do a normal reboot again to system.
System Backup and Restore
The "system" partitions on the OnePlus 8T are:
Boot
DTBO
Super which contains the logical system, system_ext, odm, product, and vendor partitions
Just backup and restore these partitions.
Do NOT backup/restore any of the logical partitions individually.
Data Backup
Make sure USB debugging is enabled
You do NOT need to remove your password
In TWRP
Backup: Select only the Data partition.
Reboot System
Restore
Remove the current password before starting the restore process by Settings>Security & Lock Screen>Screen lock: Select Swipe (if prompted tap on "Yes, remove")
If you don't do this, the system will not reboot properly after restoring.
This will also remove your fingerprint data and your lockscreen (encryption) password (you won't be prompted for a password in TWRP or when you restart the system)
In TWRP
Wipe>Factory Reset
Reboot System (this will rebuild the data partition)
Back in TWRP
Restore: Select the backup you want to restore
Remove the SIM card. If you don't do this the system won't boot properly.
Reboot system, making sure the phone is not connected to a PC
Notes:
At this point the phone will take longer than usual to boot - that's normal
You will be presented with a blank screen
Connect the phone to a PC. You should be able to see the phone using adb devices
Disconnect the phone from the PC
Hold the Power button down and select Restart
In System
Settings>Security & Lock Screen>Screen lock: set your password
Insert the SIM card
Note: Your fingerprints will have been restored because the backup was taken with the password set.
besss
Works flash in fkm?
This is great!
liver20 said:
Works flash in fkm?
Click to expand...
Click to collapse
fastboot only
Thanks for it!
Gonna try it!
Amazing! My OnePlus 8T is arriving tomorrow. Perfect timing for TWRP, thanks a lot for the detailed instructions as I am going to need it.
I was flashing this twrp with the previous test_kebab twrp as flash .img. Choosing recovery partition and was thicking "install to both slots".
So far works good.
Bro, I'm happy for you. Great job.
@theincognito Though I am a fastboot flash guy at this point (honestly forgot how to even use TWRP after all this time), I appreciate all the work and time you (and apop) put in for this project. It's definitely going to make this device appeal to more Android enthusiasts as most are used to and prefer TWRP for flashing I've noticed. And that will lead to more development (hopefully) for the device. That seems to have been the case with previous devices I've owned that had TWRP available, but also had the fastboot method available.
Anyway, I have been up for like 32 hours, so if what I've said doesn't make much sense, sorry.
Thanks @theincognito for all your work and time, and I hope this brings more to the 8t community. Good job!
He has this. Again, great job. Glad folks now have a thread to come to for proper support
liver20 said:
Works flash in fkm?
Click to expand...
Click to collapse
Yep, works fine.
You can also flash the zip in the Magisk app, manually from the modules page.
Booted on 9R but unable to decrypt data, after switching to 9R compatible kernel everything is working fine.
Nice job bro.
YumeMichi said:
Booted on 9R but unable to decrypt data, after switching to 9R compatible kernel everything is working fine.
Nice job bro.
Click to expand...
Click to collapse
Is there a unified kernel tree you know of?
osm0sis said:
Is there a unified kernel tree you know of?
Click to expand...
Click to collapse
I'm using kernel source from aospa.
GitHub - AOSPA/android_kernel_oneplus_sm8250
Contribute to AOSPA/android_kernel_oneplus_sm8250 development by creating an account on GitHub.
github.com
Unified prebuilt kernel · YumeMichi/[email protected]
This should be working fine on both OP8 serials and 9R Signed-off-by: YumeMichi <[email protected]>
github.com
@YumeMichi Thanks a lot for this. I shall make a build with the AOSPA kernel and test on 8T. Should I release it here then, or do you wanna release for 9R?
theincognito said:
@YumeMichi Thanks a lot for this. I shall make a build with the AOSPA kernel and test on 8T. Should I release it here then, or do you wanna release for 9R?
Click to expand...
Click to collapse
It would be great if you can do that.
YumeMichi said:
It would be great if you can do that.
Click to expand...
Click to collapse
I will PM you the build once it's done Then let me know whether it works for 9R too
EDIT: Posting it here

Categories

Resources