Building OnePlusOSS from source - OnePlus 3T Questions & Answers

I'm trying to build https://github.com/oneplusoss. I've generated vendor blobs from 3.5.4 full ota zip, because it can't work to access /system via adb pull on user builds (would need a rooted user-debug build in order to fetch all blobs). You can find the final blob collection here: https://github.com/nvertigo/android_vendor_oneplus_oneplus3T
I have massive issues to get device/qcom/hammerhead-kernel (2Mbit with consistent connectionmdrops), so I <remove-project .... /> that one, since that's prebuild kernels for hammerhead. Do I need some dtds from that git?
The build process runs fine (build.sh -c, as well as make, as well as make otaimage). But I can't get it boot far enough (with boot.img-nosecure) to get any logs: it starts with the oneplus-logo (not the three dot animation) the capacitive buttons show their lights, went off again and after about 10 s the device reboots to recovery. Any way I flash the source build rom (fastboot flash or flashing the ota-package via twrp shows the same results.
Sadly neither boot.img nor boot.img-nosecure give me a /proc/last_kmsg...
Any ideas are appriciated. Thanx in advance.
An other question: does the capacitive buttons light indicating extracting ramdisk? That would match my obsevation, that they are switched on longer on twrp boot, then on system boot, since recovery ramdisk is larger.
If someone wonders, why I are trying this: it's not for engancing features, but for two reasons: because the source is there, and because I'm an oldschool gentoo dickhead: what hasn't run through my compiler shouldn't be on my device (also some kind of chain of trust... ).

Been there, done that, have the t-shirt:
finally I got oss to boot: problem was missing f2fs support for data in fstab. It's running fine and srable.
I naivly thought, it's the source of oos - but it's not: it's plain aosp without any custumation (besides it's running on 3t and some codeaurora parts). No file manager, no capacitive buttons, no no-disturb-button-support, really insane AAPT comfiguration (elements and onscreen-buttons [as stated: no capacitive buttons availible]mare that large, that it feels like an htc magic on steroids).
But: it's a working codebase.
For me the most important finding is the camera used on oss: it's codeauroras snapdragon camera. I pulled the apk and 4 libs, and it's working on oos. If anybody is interested, I can make a flashable zip. Since I'm no photographer, I'm not the one to judge the quality and playing with manual options. The snapshots with default settings are as good (or as bad - YMMV) as with oos stock cam.

I Thing they need to put more features in one plus 3 OS cause there is lil bit heavy smartphone so they need to do more additions

harshsharma9619 said:
I Thing they need to put more features in one plus 3 OS cause there is lil bit heavy smartphone so they need to do more additions
Click to expand...
Click to collapse
Watch out to not confuse oos (oxygenos: proprietary closed source with quitemsome features; i.e. capacitive buttons) with oss (OnePlusOpenSourceSoftware: castrated aosp without anything).
For more features: I'm looking very forward to lineageos, when M kernelsources are published by oneplus.

SnapdragonCamera for OxygenOS
Packaged:
https://forum.xda-developers.com/oneplus-3t/themes/apk-snapdragoncamera-codeaurora-build-t3533687

nvertigo67 said:
I've generated vendor blobs from 3.5.4 full ota zip, because it can't work to access /system via adb pull on user builds ...
Click to expand...
Click to collapse
How do you extract the files from the OTA zip? Of course I know how to unzip a file but I mean how to get the actual files out of the image files. Can this be done with basic Linux Tools?

freepenguin84 said:
How do you extract the files from the OTA zip? Of course I know how to unzip a file but I mean how to get the actual files out of the image files. Can this be done with basic Linux Tools?
Click to expand...
Click to collapse
unpack the rom (you need unpackbootimage - either from your dist, or from android sdk); unpack system.new.dat (sdat2img.py - from your dist, or search with google, don't know if this is in sdk); mount system.img somewhere; edit pull_library.sh from adb pull to cp.
This pull_library.sh is for oss from end of february, you have to edit the current one and - of course - have to change the source of the cp command to meet your local paths:
https://github.com/nvertigo/local_manifest/blob/oneplus/oneplus3t_N/pull_library.sh

Related

[RECOVERY] (Un-)tethered TWRP 2.8.7.0 for Asus ZenFone 2 (x86)

Hi folks,
finally we compiled a(n un-)tethered TWRP package for our ZenFone 2 (confirmed on ZE551ML and ZE500ML)!
!!! NOTE: If you want to apply a new OTA update, please flash stock recovery first !!!
Also, if you encounter any errors with the official recovery by TeamWin, please don't ask for support here as this is an unofficial build (done with the hard work of many people collaborating in a great manner!)​
If you don't want to unlock your Bootloader, you can use the tethered recovery.
Tethered (=after a reboot everything is back to normal)​
Features:
- Compiled with CM12 sources (although CM12 and TWRP are not liking each other very much :silly: )
- Optimized for x86 (smooth UI now)
- internal and external storages are mounted correctly
- Backup of boot, system, cache and data possible
- Full Crypto and SELINUX support
Bugs:
- Sometimes Backup and Restore hang. Fortunately it doesn't begin these operations so you don't brick your device (any hints on this are welcome!)
- USB Storage mount doesn't appear to work at all (pretty sure I took the correct path to the LUN file)
How to use:
- Download the tethered CWM package from here (method 2): http://forum.xda-developers.com/zenfone2/general/root-newbie-root-instructions-zenfone-2-t3114063
- replace the recovery.zip in "CWM_Zenfone_2_IntelFB_RecoveryLauncher" with the one you can find in the download section
- start the procedure by using cai_dat_CWM.bat
- type ACCEPT (case sensitive!) and enter
- type T4 and enter
- Set your timezone when booting the first time into the Recovery, maybe this fixes the backup and restore bug (needs to be done just once)
- Unplug your USB cable from the device, too, before flashing, backing up and/or restoring
Untethered (=permanent recovery)​
Features:
- Compiled with CM12 sources
- Optimized for x86 (smooth UI now)
- internal and external storages are mounted correctly
- Backup of boot, system, cache and data possible
- Full Crypto and SELINUX support
- kernel compiled dynamically (thanks to @crpalmer and @jrior001 and all involved for their fantastic work) with permissive Selinux
- USB-OTG support added (Beta supports NTFS file systems)
- Splashscreen can be backed up (to fiddle around and create your own)
- img files flashable now via recovery (thanks to @cangcan, @yakub234go and @vampirefo)
- F2FS support on kernel side
Drawbacks:
- MTP doesn't work
How to use:
Method 1
Get root rights
Unlock your bootloader
Download twrp.img from the download section and put on sd card (or pick the beta version for NTFS support)
Fire up adb or install a terminal emulator and type:
Code:
su
dd if=/sdcard/twrp.img of=/dev/block/by-name/recovery
reboot recovery
Method 2
Download twrp.img from the download section and put in your adb/fastboot directory
Unlock your bootloader
Boot into bootloader (turn off, keep Vol+ pressed and press the power button until it vibrates - then release ONLY the power button and keep volume up pressed until you see the fastboot GUI
Open up fastboot on your PC and type:
Code:
fastboot flash recovery twrp.img
Then press vol down 2 times until "Reboot recovery" shows up and press power 1 time to boot into recovery
Method 3 (if you have an older version of TWRP already installed)
Place img on your internal sdcard, then reboot to recovery, click install zip, then select "Images..." in bottom right, then you see the img. Tick "Recovery" afterwards and then on OK.
Download folder:
Gone
Cheers!
Credits
@social-design-concepts for the great tethering method and the brilliant support and guidance :good:
@vampirefo also his support and guidance :good:
@updateing for the link to the commit for x86 pixelflinger
@jrior001 and @crpalmer for the great work on the kernel source
etc. etc.
Special thanks:
@Drew442 Thanks for the contribution!
Amir J. - thank you too!
TeamWin for their great recovery
XDA:DevDB Information
[RECOVERY][LOLLIPOP ONLY] (Un-)tethered TWRP 2.8.7.0 for Asus ZenFone 2 (x86), Tool/Utility for the Asus ZenFone 2
Contributors
TheSSJ, social-design-concepts, vampirefo, updateing, crpalmer, jrior001, knoneNull, etc etc
Source Code: https://github.com/TheSSJ/device_asus_zenfone2
Version Information
Status: Stable
Current Stable Version: 21_f2fs
Stable Release Date: 2015-07-02
Created 2015-06-04
Last Updated 2016-09-24
Update 07-02-2015
ADB sideload works now (thanks @jrior001 & @crpalmer)! Make sure to download the latest ADB version: http://forum.xda-developers.com/showthread.php?p=42407269, credits for this to @shimp208
Update 06-30-2015
NTFS Support tested extensively and proved to be stable (not elegant, but functional)
Added recovery partition back to recovery.fstab to make it flashable via recovery itself
Update 06-28-2015
Moved to stable state
Added Beta version for NTFS support (twrp_ntfs.img)
Update 06-23-2015b
Upgraded source to TWRP 2.8.7.0
Update 06-23-2015
Functional TWRP with fast wipe/restore (-DNO_SECURE_DISCARD, thanks crpalmer)
ADB works
Just have fun in fiddleing around with the recovery
If no bugs will be reported we can declare this recovery stable
Update 06-10-2015
Boardconfig parameters changed, seems to back up, restore and flash even with USB cable attached
Update 06-04-2015b
Rolled back to 2.8.5.0 as restoring threw out the error that system was not being able to mount rw
Everything works now!
Update 06-04-2015
Built a version optimized for x86, fixes UI lags
Added Crypto Support again
Update 06-02-2015b
Removed TW_INCLUDE_CRYPTO flag as it caused backup operation to freeze
Update 06-02-2015
Moved to Beta stage
Fixed mounting of external SD
Update 06-01-2015
Completely reworked BoardConfig.mk
Removed all modules
Added @vampirefo 's adbd and adbd-recovery binaries from his TWRP builds (dunno why, but there aren't any binaries in my builds?) - thanks!
Graphics work now (still slow, need to fine tune with the correct boardconfig flags), no double backups, no flickering!
Update 05-31-2015
Included USES_ION flag into boardconfig.mk
Removed cpu temperature to reduce redraws
a little more stable now!
Nice I can't wait for the BL to be fully unlocked so we van get native TWRP.
Hello recovery or rest and it just temporary? thank you
jejemc said:
Hello recovery or rest and it just temporary? thank you
Click to expand...
Click to collapse
Hi,
yes, after rebooting no trace of TWRP is left
I have updated the zip now. It is a little stabler after I removed the CPU temperature, but still I have the feeling there are 2 GUIs sharing the same screen. Weird - I have to do more research - maybe I have to write my own UI updater...
Cheers
the gears are slowly moving! i hope BL gets unlocked by the time my ZF2 arrives..
is this for any ZF2 variant or just 551ML (4gb ram/2gb ram versions)?
thanks for taking the time with this (hopefully) awesome device!
This is awesome..thanks for your contribution! I am hoping for some custom roms..the stock ZenUI isn't the greatest :/
TheSSJ said:
Hi folks,
I managed to compile a tethered TWRP package for our ZenFone 2!
Click to expand...
Click to collapse
Do you have a link to your device repo?
Are there specific instructions for using it to build a tethered recovery (I'm familiar with building twrp, including within CM, but I haven't looked much into what the tethered exploit does to boot the recovery).
It seems I have successfully completed a Backup! As mentioned, the interface is painfully slow at times, but this is serious progress. Has anybody tried restoring a backup yet?
Could you please develop twrp or cwm for asus 450cg
NOTE:
1 backup successfully
2 Use Very lag
3 flash zip not work
crpalmer said:
Do you have a link to your device repo?
Are there specific instructions for using it to build a tethered recovery (I'm familiar with building twrp, including within CM, but I haven't looked much into what the tethered exploit does to boot the recovery).
Click to expand...
Click to collapse
Hi,
unfortunately I don't have any. Basically I wrote a BoardConfig.mk based on the data provided by the Nexus Player (Asus Fugu, which is also Intel based). Then I took 2 modules (one for the display and one for the support of exfat partitions) and compiled a normal TWRP. The output folder holds the compiled img as well as the ramdisk in a simple folder. I put the ramdisk content into a simple zip file and included an update-script to have it unpacked properly. What the recovery-trigger exactly does is not clear to me. It seems it temporarily overwrites the logcat binary with itself and then gets executed at a reboot directly. The recovery trigger just unpacks the zip and executes the recovery binary if I understood correctly.
If you want I can upload my device configuration, it's better if there are more ppl looking at this
29y6145 said:
NOTE:
1 backup successfully
2 Use Very lag
3 flash zip not work
Click to expand...
Click to collapse
Thanks for the feedback!
2. Yeah, the lags are a pain, also because it seems to execute every touch twice and I don't know how to fix this at the moment (maybe it is sufficient to increase the time to determine when a longpress is executed and when a normal touch is done, but this is strongly theoretical.
3. I tested flashing a zip and it does work, which error message do you get?
Anyways, today is a new day, so I will get to work on this (I am on vacation right now fortunately).
Cheers!
TheSSJ said:
Hi,
unfortunately I don't have any. Basically I wrote a BoardConfig.mk based on the data provided by the Nexus Player (Asus Fugu, which is also Intel based). Then I took 2 modules (one for the display and one for the support of exfat partitions) and compiled a normal TWRP. The output folder holds the compiled img as well as the ramdisk in a simple folder. I put the ramdisk content into a simple zip file and included an update-script to have it unpacked properly. What the recovery-trigger exactly does is not clear to me. It seems it temporarily overwrites the logcat binary with itself and then gets executed at a reboot directly. The recovery trigger just unpacks the zip and executes the recovery binary if I understood correctly.
If you want I can upload my device configuration, it's better if there are more ppl looking at this
Thanks for the feedback!
2. Yeah, the lags are a pain, also because it seems to execute every touch twice and I don't know how to fix this at the moment (maybe it is sufficient to increase the time to determine when a longpress is executed and when a normal touch is done, but this is strongly theoretical.
3. I tested flashing a zip and it does work, which error message do you get?
Anyways, today is a new day, so I will get to work on this (I am on vacation right now fortunately).
Cheers!
Click to expand...
Click to collapse
If you can upload the device config to github I can try to take a look tonight or tomorrow and see if I can see anything wrong that would explain your "double ui".
Either way, it is good to upload it as you'll have a history saved of when it last worked if you screw it all up!
TheSSJ said:
Hi,
unfortunately I don't have any. Basically I wrote a BoardConfig.mk based on the data provided by the Nexus Player (Asus Fugu, which is also Intel based). Then I took 2 modules (one for the display and one for the support of exfat partitions) and compiled a normal TWRP. The output folder holds the compiled img as well as the ramdisk in a simple folder. I put the ramdisk content into a simple zip file and included an update-script to have it unpacked properly. What the recovery-trigger exactly does is not clear to me. It seems it temporarily overwrites the logcat binary with itself and then gets executed at a reboot directly. The recovery trigger just unpacks the zip and executes the recovery binary if I understood correctly.
If you want I can upload my device configuration, it's better if there are more ppl looking at this
Thanks for the feedback!
2. Yeah, the lags are a pain, also because it seems to execute every touch twice and I don't know how to fix this at the moment (maybe it is sufficient to increase the time to determine when a longpress is executed and when a normal touch is done, but this is strongly theoretical.
3. I tested flashing a zip and it does work, which error message do you get?
Anyways, today is a new day, so I will get to work on this (I am on vacation right now fortunately).
Cheers!
Click to expand...
Click to collapse
Is your problems due to recovery or modules you added? My tethered twrp doesn't have the problems yours does, so I wonder if it's the modules, your packaging perhaps and not the recovery?
Sent from my T1 using Tapatalk
TheSSJ said:
- Slow graphics, according to @Dees_Troy: "The graphics are a bit laggy because pixelflinger is not very well optimized for x86"
Click to expand...
Click to collapse
Dees_Troy is lying. TWRP graphic engine isn't optimized for any architecture. Even on my SGS4 (ARM) it's slow as snail. Higher resolution - more slower. I see, they've added some code for Qualcomm overlay support. I didn't try it yet, but support only for one CPU manufacturer is nothing. Especially, there is another way to accelerate at around 1000% by SIMD instuctions. Although i've liked TWRP originally, i see developers have no intentions to improve graphics which is the key feature. So, i've decided to throw away TWRP and look at Aroma File Manager.
It has very fast graphics engine with ARM NEON optimization (and with some effort it become SSE4.2 optimized). The only feature missing is backup/restore, but i'm working on that. Actually, Backup/Restore works now. Just thinking about better backup format.
sorg said:
Dees_Troy is lying. TWRP graphic engine isn't optimized for any architecture. Even on my SGS4 (ARM) it's slow as snail. Higher resolution - more slower. I see, they've added some code for Qualcomm overlay support. I didn't try it yet, but support only for one CPU manufacturer is nothing. Especially, there is another way to accelerate at around 1000% by SIMD instuctions. Although i've liked TWRP originally, i see developers have no intentions to improve graphics which is the key feature. So, i've decided to throw away TWRP and look at Aroma File Manager.
It has very fast graphics engine with ARM NEON optimization (and with some effort it become SSE4.2 optimized). The only feature missing is backup/restore, but i'm working on that. Actually, Backup/Restore works now. Just thinking about better backup format.
Click to expand...
Click to collapse
tar is the best.
Sent from my T1 using Tapatalk
vampirefo said:
tar is the best.
Sent from my T1 using Tapatalk
Click to expand...
Click to collapse
I know. The problem is how to split the archive. Currently i split by size. In this case you cannot use parts independently. For example, if you want to extract some file, you have to concatenate whole backup first and then extract.
The better way is to split tar at header boundary but so far in many decades of years nobody created such split tool. Also, if there is a file bigger than desired part size, it won't be split and may even produce error if target disk (where backup is saving to) is FAT and file size is bigger than 4GB (extreme case).
sorg said:
Dees_Troy is lying. TWRP graphic engine isn't optimized for any architecture. Even on my SGS4 (ARM) it's slow as snail. Higher resolution - more slower. I see, they've added some code for Qualcomm overlay support. I didn't try it yet, but support only for one CPU manufacturer is nothing. Especially, there is another way to accelerate at around 1000% by SIMD instuctions. Although i've liked TWRP originally, i see developers have no intentions to improve graphics which is the key feature. So, i've decided to throw away TWRP and look at Aroma File Manager.
It has very fast graphics engine with ARM NEON optimization (and with some effort it become SSE4.2 optimized). The only feature missing is backup/restore, but i'm working on that. Actually, Backup/Restore works now. Just thinking about better backup format.
Click to expand...
Click to collapse
@Dees_Troy actually is not lying pixelflinger_static isn't optimize for x86 and Intel used to add libenc to speed up pixelflinger a little, intel later decided to use the more recent version of libminui cause it doesn't use pixelflinger_static and from what i read it a whole lot faster. i imagine @Dees_Troy and team-win are looking into moving away from pixelflinger because of it's draw backs but that is a very big task.
i plan to build against the windriver android-5.0.0_r2.0.1 source this evening cause it includes the icc tool chain when i built the new recovery.launcher against it , it was much much much much much faster hope it has the same affect on twrp
vampirefo said:
Is your problems due to recovery or modules you added? My tethered twrp doesn't have the problems yours does, so I wonder if it's the modules, your packaging perhaps and not the recovery?
Sent from my T1 using Tapatalk
Click to expand...
Click to collapse
I assume maybe I am missing some modules. There is a .ko file named fps_throttle...this led me to the conclusion that maybe the framerate is awefully high (or awefully low ), which could explain this flickering text maybe...
I will include all of the modules in my next build to see if it works better, thanks for the tip!
social-design-concepts said:
@Dees_Troy actually is not lying pixelflinger_static isn't optimize for x86
Click to expand...
Click to collapse
I think, you've missed the point. I've said current TWRP graphics isn't optimized for ALL platforms (besides very specific Qualcomm overlay which i had no chance to try). Nothing to do with x86. Even on ARM device it's very slow. In several years of TWRP existence, i didn't see any progress in GUI, so i don't hope it will be changed anytime soon.
From other side, Aroma File Manager uses NEON(which can be translated to SSE) optimization making interface very fast. Thus, you don't need any special compiler. But due to very different internal GUI engines, it's hard to port TWRP to Aroma GUI. Using 3rd party compiler give you other problems if you try to compile something requiring Android NDK.
Anyway, let me know if your approach with different compiler will make rocket from snail TWRP GUI

[CM13] Hammerhead source build stuck at google logo

I'm trying to make a CM13 build for my D821. repo has all the dependencies, device tree and kernel in local manifest and the only thing missing from the tree that make seems to complain about are the bootloader.img and radio.img but I flash them separately anyways.
Even though the build goes successfully and the generated images are much like the ones from the official snapshot (albeit system being smaller in size and missing some packages) it just doesn't boot past the google logo.
I've tried both the generated cm-13.0-20160428-UNOFFICIAL-hammerhead.zip and cm_hammerhead-ota-b324db6001.zip with the recovery.img and they flash fine through storage or sideload but when I reboot the device is stuck at the Google logo.
I've tried flashing all the images separately with fastboot and still the same result so I'm thinking it's a problem with boot.img. I followed all the directions on the wiki to the letter.
Also, repo syncs 100% and my first sync had no interruptions whatsoever and I wasn't using --force-sync so I'm sure I have the full tree without anything missing. Was there maybe some step specific to CM that was left out on the wiki?
EDIT: I tried boot.img from the official snapshot same result. Maybe kernel?
boot.img is the kernel.
You did not mention anything related to proprietary files. Do you have those added to your local_manifest?
CM11 was using get-prebuilts for vendor files, I think this no longer exists in CM12/CM13 and you need to add the files from somewhere else.
Jack Mayerz said:
I'm trying to make a CM13 build for my D821. repo has all the dependencies, device tree and kernel in local manifest and the only thing missing from the tree that make seems to complain about are the bootloader.img and radio.img but I flash them separately anyways.
Even though the build goes successfully and the generated images are much like the ones from the official snapshot (albeit system being smaller in size and missing some packages) it just doesn't boot past the google logo.
I've tried both the generated cm-13.0-20160428-UNOFFICIAL-hammerhead.zip and cm_hammerhead-ota-b324db6001.zip with the recovery.img and they flash fine through storage or sideload but when I reboot the device is stuck at the Google logo.
I've tried flashing all the images separately with fastboot and still the same result so I'm thinking it's a problem with boot.img. I followed all the directions on the wiki to the letter.
Also, repo syncs 100% and my first sync had no interruptions whatsoever and I wasn't using --force-sync so I'm sure I have the full tree without anything missing. Was there maybe some step specific to CM that was left out on the wiki?
EDIT: I tried boot.img from the official snapshot same result. Maybe kernel?
Click to expand...
Click to collapse
U need vendors. Fork github.com/mrtumbles vendor lge into your sourcetree/vendor folder
morphvale said:
boot.img is the kernel.
You did not mention anything related to proprietary files. Do you have those added to your local_manifest?
CM11 was using get-prebuilts for vendor files, I think this no longer exists in CM12/CM13 and you need to add the files from somewhere else.
Click to expand...
Click to collapse
dekefake said:
U need vendors. Fork github.com/mrtumbles vendor lge into your sourcetree/vendor folder
Click to expand...
Click to collapse
Thanks guys, it works perfect now.

[ROM][OFFICIAL][enchilada][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 (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.
- Tap "Advanced", then tap "Enter fastboot" (the already-selected first option).
- 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/enchilada/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 OP6, 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, 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_enchilada/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 canary (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:
- 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)
Looking forward on this one, thank you for the effort!
Hopefully android auto and face unlock are working. Thanks in advance.
gray_wolf said:
Hopefully android auto and face unlock are working. Thanks in advance.
Click to expand...
Click to collapse
Can't say anything about Android Auto, but Face Unlock works just fine!
MaWalla99 said:
Can't say anything about Android Auto, but Face Unlock works just fine!
Click to expand...
Click to collapse
Great, will test and report about the android auto and overall Rom. Thanks again.
DC dimming seems to be missing
Welcome back team with a11...even with initial build rom is so stable , like this rom simplicity with so many customisations thankyou
Screenshot ???
vindipi said:
Screenshot ???
Click to expand...
Click to collapse
This Rom has latest Android security patch of January and for screenshots open and scroll down this website
crDroid.net - increase performance and reliability over stock Android for your device
official crDroid ROM blog
crdroid.net
what gapps
DRAKOITYU said:
what gapps
Click to expand...
Click to collapse
I personally used nikgapps...may be all are compatible
gray_wolf said:
Hopefully android auto and face unlock are working. Thanks in advance.
Click to expand...
Click to collapse
After running the Rom for 5 days now I can confirm that it's very stable and has tons of customization. Unfortunately though android auto is not working. face unlocking, camera, etc works fine. Would appreciate it if you could fix the android auto issue in the future build.
Anyone else having issues with GPay? I'm using Magisk, hidden, and GPay still won't work.
Is it possible to update crDroid from 6.13 to 7.2 without data formatting (keeping application and data)?
MaWalla99 said:
Download ROM
TWRP (use 3.5.0 or higher)
Magisk (use 21.2 or higher)
Click to expand...
Click to collapse
Hey, I have the twrp-3.3.1-18-enchilada-Q-mauronofrio TWRP installed on my Oneplus 6, do I still need to upgrade it to the one which you are recommending? I'd rather go with the one that I currently have and not go through the hassle of updating the recovery. That being said, obviously you would know much better.
Please guide
TIA
mahroze said:
Hey, I have the twrp-3.3.1-18-enchilada-Q-mauronofrio TWRP installed on my Oneplus 6, do I still need to upgrade it to the one which you are recommending? I'd rather go with the one that I currently have and not go through the hassle of updating the recovery. That being said, obviously you would know much better.
Please guide
TIA
Click to expand...
Click to collapse
Twrp 3.3 should work fine with the rom. You can keep using it if you want to. However, there is no extra step to use 3.5 vs 3.3. You have to flash twrp after flashing the rom so you can upgrade to 3.5 by just flashing it instead of 3.3.
Quick questions, this rom have smart charging feature?
Firstly, I just want to say this is the most awesome ROM I've tried and i've sat here for a week trying every rom I could get find on the net. It's almost flawless... except for a few hugely killer problems that will sadly make this ROM unusable for me... even though I love it soooo much and if only these things worked... this would be the most amazing ROM ever.
1. After installing GPS doesn't work.
2. When I get a phonecall... I hear the ring... but nothing happens on the screen... so I can't pickup the call. I see after i got a missed call... but i can't answer calls when they're calling... even if I go to the homescreen from whatever app i was using when i got the call... click on the phone icon.... still nothing. Can't answer the call.
3. Text messages simply don't arrive. If I flash the rom back to stock Oxygen OS ... then the text message comes through. But it's a bit late when you're trying to get a verifiaction SMS sent to you to open an messanging app. Can't use the app because i can't get the verification SMS.
If these three things get fixed... omg this will literally be the best ROM ever.
There is a 4th issue... and for me it's important... but it's probably not any fault really of crDroid ROM to be fair...
Very surprisingly... and I just wanted to see if it would work.... kali nethunter for Oxygen OS which is for droid 10 installs over the top of this rom which is droid 11... to much surprise! ...and almost flawlessly... only issue is it doesn't recognise HID interface.
Man... with these 4 things working... this ROM together with nethunter would make for the most badass hacker pentester phone on the planet... save only for the exact same thing on a oneplus 7 or 8 pro.
Many thanks to the devs of this awesome ROM... who hopefully can get 1, 2, and 3 working in the not too distant future... pretty please?
4 is more of a hope and a prayer... but it would be soooo freaking awesome.
not_the_droid_ur_lookin4 said:
Firstly, I just want to say this is the most awesome ROM I've tried and i've sat here for a week trying every rom I could get find on the net. It's almost flawless... except for a few hugely killer problems that will sadly make this ROM unusable for me... even though I love it soooo much and if only these things worked... this would be the most amazing ROM ever.
1. After installing GPS doesn't work.
2. When I get a phonecall... I hear the ring... but nothing happens on the screen... so I can't pickup the call. I see after i got a missed call... but i can't answer calls when they're calling... even if I go to the homescreen from whatever app i was using when i got the call... click on the phone icon.... still nothing. Can't answer the call.
3. Text messages simply don't arrive. If I flash the rom back to stock Oxygen OS ... then the text message comes through. But it's a bit late when you're trying to get a verifiaction SMS sent to you to open an messanging app. Can't use the app because i can't get the verification SMS.
If these three things get fixed... omg this will literally be the best ROM ever.
There is a 4th issue... and for me it's important... but it's probably not any fault really of crDroid ROM to be fair...
Very surprisingly... and I just wanted to see if it would work.... kali nethunter for Oxygen OS which is for droid 10 installs over the top of this rom which is droid 11... to much surprise! ...and almost flawlessly... only issue is it doesn't recognise HID interface.
Man... with these 4 things working... this ROM together with nethunter would make for the most badass hacker pentester phone on the planet... save only for the exact same thing on a oneplus 7 or 8 pro.
Many thanks to the devs of this awesome ROM... who hopefully can get 1, 2, and 3 working in the not too distant future... pretty please?
4 is more of a hope and a prayer... but it would be soooo freaking awesome.
Click to expand...
Click to collapse
You have been positing this in more than one thread. This has nothing to do with any rom, and is related to what you are doing with your phone or the phone itself. Telephony is flowless on every Android 11 custom rom for Oneplus 6. And so is GPS, which literally connects in seconds.
First thing you should do is: disable wifi calling, because if your provider doesn't have the feature (or you are not provisioned for it), that could cause your problems. Next, uninstall any mode you might have. Try calling without Gapps.
Also, if you ever used Syberia Rom, you got custom /vendor, which would not work with other custom roms that use stock /vendor. So, you need to re-flash full stock rom onto both slots, which is a pre-requisite for flashing most custom roms. Then follow directions for installing a custom rom.

Development [CLOSED] LineageOS Rom for Pixel 5a Android 11 - April 16, 2022

You MUST be on Android 11 to use this!!!!!
If your not, you must flash latest Google factory image for Android 11
This is based on the Android Open Source Project. It can be used without any need to have any Google application installed. It does still include various proprietary hardware-specific code.
Gapps must be flashed separately and are not included in this ROM.
All the source code is available in the Github repo here. You can also view the changelog for a full list of changes & features here.
Thanks go to Github and LineageOS for their source code and device specific code. I couldn't have built this without it!!!
The ROM uses the LineageOS source code, device specific code and proprietary blobs. I made other minor changes and used compression to lower the file size of the ROM, creating more space in the internal storage with minor reduction in performance. Repo Synced every three days to keep the code base fresh. Also updated daily with minor changes.
DOWNLOAD BOOT, ROM & GAPPS HERE
FLASH BOOT TO BOTH SLOTS IN BOOTLOADER
fastboot flash --slot all boot boot.img
REBOOT TO RECOVERY
FACTORY RESET
SIDELOAD ROM IN RECOVERY
adb sideload 20220416-barbet-OFFICIAL-signed.zip
REBOOT TO RECOVERY. IT WILL AUTOMATICALLY SWITCH SLOTS
SIDELOAD GAPPS
adb sideload SayaGapps-mini-20220418-signed.zip
REBOOT TO SYSTEM
REBOOT TO RECOVERY TO ROOT
SIDELOAD MAGISK.APK
adb sideload magisk.apk
REBOOT TO SYSTEM
OTA updates are now available through the built in updater on the phone and are updated daily.
Check settings, system, advanced, updater.
Download and let update install. Reboot to system.
You can change the preferences in the updater to check for updates automatically daily and you will get a notification when a update is available. Default setting is once a week.
Root is now retained after update. No need to root again after applying update.
Screen call now works with my latest gapps packages.
Can you share more details please about this rom? Any features?
jimmy16 said:
Can you share more details please about this rom? Any features?
Click to expand...
Click to collapse
As it states, its a basic ROM, open source with LineageOS features.
OTA updates are now available through the built in updater on the phone.
What's the difference between this rom and the official lineage os 18.1 rom? I know you stated,
"The ROM uses the LineageOS source code, device specific code and proprietary blobs. I made other minor changes and used compression to lower the file size of the ROM, creating more space in the internal storage with minor reduction in performance. Repo Synced every three days to keep the code base fresh. Also updated daily with minor changes."
Is that all?
Klimon5 said:
What's the difference between this rom and the official lineage os 18.1 rom? I know you stated,
"The ROM uses the LineageOS source code, device specific code and proprietary blobs. I made other minor changes and used compression to lower the file size of the ROM, creating more space in the internal storage with minor reduction in performance. Repo Synced every three days to keep the code base fresh. Also updated daily with minor changes."
Is that all?
Click to expand...
Click to collapse
Yes, basically the same, just uses my own signatures and a lower file size as it states. Other difference is that I update it daily while the other one is updated weekly.
Does VoLTE work on this rom?
achillesphazd said:
Does VoLTE work on this rom?
Click to expand...
Click to collapse
Yes
I like this ROM quite a bit on my Pixel 5a. Is it possible to get the Google Assistant working?
Riddickulus
RiddickulusSF said:
I like this ROM quite a bit on my Pixel 5a. Is it possible to get the Google Assistant working?
Riddickulus
Click to expand...
Click to collapse
Works fine but needs to be set manually in the settings. Go into settings and search assistant then select digital assistant app and change it to Google. Default setting is None. You must also be using either my gapps that are included to flash seperately or another form of gapps that have the google digital assistant app present. Any other gapps or none at all, then it won't work.
Official builds as of 02/19/22. Must wipe previous builds to avoid bootloop.
Test keys replaced by official developer signed private keys. Updater will not work on previous builds. Must update to this build manually to receive future updates in the updater.
Mr. Sayaman, I keep getting an "oops no mirrors available" error when trying to download your files. any clue why?
Thank you for taking the time to create this mod for us freeloaders.
One more question:
I just installed the official lineage, seems to work except it's not seeing my sim card. Any idea if your build will fix that issue?
edit: reflashing fixed sim issue.
Thanks for any help/info!
blasf69 said:
Mr. Sayaman, I keep getting an "oops no mirrors available" error when trying to download your files. any clue why?
Thank you for taking the time to create this mod for us freeloaders.
One more question:
I just installed the official lineage, seems to work except it's not seeing my sim card. Any idea if your build will fix that issue?
edit: reflashing fixed sim issue.
Thanks for any help/info!
Click to expand...
Click to collapse
Sorry, looks like Android file host is having problems. I uploaded them to my google drive and updated the links where you can download. As far as your sim card. I have Verizon and don't have such issue. What is your carrier? All I can say is to try it and find out for yourself. I don't have other carriers so I really couldn't answer that question. Also, make sure you are factory resetting when coming to this build. My signature keys are different from the other Lineage build and it will not boot otherwise.
Screen call is now working with my latest gapps package.
Due to lack of interest, this thread will be closed and no further updates will be made here. If you want to download this ROM, it will be available on Android File Host at the link supplied in the OP.
TheSayaMan said:
Due to lack of interest, this thread will be closed and no further updates will be made here. If you want to download this ROM, it will be available on Android File Host at the link supplied in the OP.
Click to expand...
Click to collapse
Thread closed on request of OP @TheSayaMan

Question Twrp on samsung a33

Ive been searching for ages and still havent found how to install twrp on my a33, is it even possible? Im trying to root my a33 with magisk but i need twrp. Im stuck and i dont know what to do
I've rooted through Odin by following this post https://forum.xda-developers.com/t/are-these-rooting-guides-for-the-samsung-a33-5g-good.4475163/ but I'm waiting for TWRP to install custom rom too...
ive rooted my phone with magisk by using odin and a patched ap file by magisk, i installed my official software back because magisk kind of slowed down my devices, but now im waiting for twrp so i can install lineage os
Is TWRP the onl way to install lineage OS?
yes i guess
Dryfty said:
ive rooted my phone with magisk by using odin and a patched ap file by magisk, i installed my official software back because magisk kind of slowed down my devices, but now im waiting for twrp so i can install lineage os
Click to expand...
Click to collapse
how do you want to install Lineage OS? There is still not version of Lineage for A33
you can only get lineage on a33 if you have twrp but a33 doesnt "support" twrp
Dryfty said:
you can only get lineage on a33 if you have twrp but a33 doesnt "support" twrp
Click to expand...
Click to collapse
there is an experimental version of TWRP working, I am using it
Arcangel3 said:
there is an experimental version of TWRP working, I am using it
Click to expand...
Click to collapse
on the a33? can you explain how to install it
Dryfty said:
on the a33? can you explain how to install it
Click to expand...
Click to collapse
attached to you here. Bear in mind it is experimental, but it might work
EDIT: deleting it because it is unstable version, a stable version will be released soon by @Zillion (no pressure )
Arcangel3 said:
attached to you here. Bear in mind it is experimental, but it might work
Click to expand...
Click to collapse
Hey, thanks for sharing! Could you say what's the best custom ROM for this device for the moment? Or where is the list of ROMs? thanks!
vovaxxxx said:
Hey, thanks for sharing! Could you say what's the best custom ROM for this device for the moment? Or where is the list of ROMs? thanks!
Click to expand...
Click to collapse
there is none yet.
But some poeple said that stock ROM for A33 is good enough to not need a custom ROM.
Arcangel3 said:
attached to you here. Bear in mind it is experimental, but it might work
Click to expand...
Click to collapse
Give credits to the guy that made it
Zillion said:
Give credits to the guy that made it
Click to expand...
Click to collapse
I am not sure who made it, was it you? hehe
Dryfty said:
Ive been searching for ages and still havent found how to install twrp on my a33, is it even possible? Im trying to root my a33 with magisk but i need twrp. Im stuck and i dont know what to do
Click to expand...
Click to collapse
bro try this way to root
I want to root my A12 but it not work for my phone.please send me a latest version for A127FXXU7BVI1 isBaseband version
I want to root my A12 but it not work for my phone.please send me a latest version for A127FXXU7BVI1 isBaseband version
forum.xda-developers.com
Arcangel3 said:
I am not sure who made it, was it you? hehe
Click to expand...
Click to collapse
Yup, it got its reasons to not be released.
Zillion said:
Yup, it got its reasons to not be released.
Click to expand...
Click to collapse
should I delete it?
Do we have any better version now?
@Zillion any progress with a relesable version???
Arcangel3 said:
@Zillion any progress with a relesable version???
Click to expand...
Click to collapse
I don't own A33 and I don't know how to make any progress on this :c
I managed to get the Lineage OS "Light" GSI version by AndyYan https://forum.xda-developers.com/t/gsi-13-lineageos-20-light.4509315/ and it works well, but the process to install it is pretty involved and if you do anything wrong, you can easily soft-brick your phone. This process should also work for other gsi roms
First Download the Latest Version of Lineage OS "Light", of which the download link can be found in the thread above or here https://sourceforge.net/projects/andyyan-gsi/files/lineage-20-light/ (There are three versions, vS "Vanilla with Superuser installed" vN "Non-SU Vanilla" and gN "Non-SU with GApps") If you want root, I suggest choosing one of the Non-SU versions and patching the stock AP tar with Magisk before starting this process as the Superuser version provides you a generic superuser app and installing magisk with it greets you with a abnormal state message every time you launch the Magisk Manager.
Second: Unpack the downloaded tar file using 7zip if on windows or with the tar command on linux, and then rename the unpacked .img file to system.img
Third: Get the stock firmware for your device using samloader or some other Samsung firmware downloader and unpack the archive file you get to a directory
Fourth: Unpack the AP tar file, you should get a bunch of files in .img.lz4 format.
Fifth: Find the super.img.lz4 file and decompress it using https://github.com/lz4/lz4/releases and this command
Code:
lz4.exe -d super.img.lz4 super.img
From this point onwards you are better off on linux (I've only tested this on Ubuntu WSL so far), if you're on windows 10+, I suggest enabling Windows Subsystem for Linux and downloading and running the Ubuntu distro from the Microsoft store, you can google how to do that.
Sixth: Within Linux (Ubuntu in my case), install the "android-platform-system-core" package using your preferred package manager (I know that package is available on Ubuntu, but I haven't researched whether any other linux distro has that package available). The main thing we want from that package is the shell script "simg2img" as the super.img is currently sparsed (compressed using the Android Sparse image format).
Seventh: If you already did the steps so far in Linux, just go to whatever directory you have the super.img stored, otherwise if you did everything in windows and have a Ubuntu WSL distro ready, you can copy the super.img directly into the ubuntu distro by going into file explorer and scrolling all the way to the bottom of the navigation pane till you see Linux, of which you can expand to find a Ubuntu network share folder, expand that and drag and drop the super.img into your root folder, as well as the system.img file (renamed gsi rom file).
Eighth: Unsparse the super.img using the command:
Code:
simg2img super.img *whatever*.img
This will give you a raw disk image of super.img that's about 9-10 gb. You can name the output file to whatever you want as long as you can discern which img is which, in fact after running the command you can delete the original as you no longer need it.
From here is where the process gets a bit tricky and I fully recommend reading through this guide: https://forum.xda-developers.com/t/...are-binary-3-may.4053065/page-4#post-82241115
Ignore the fact that the thread is for the Galaxy a51 as the steps work for the a33 as well. When you get to the point where you've unpacked the Super.img, copy the GSI system.img over the stock one.
Now the part that can easily cause you to mess up is that when repacking super.img, you have to get the size of each file, including the unsparsed super.img and input the size in bytes of each file in place of what is given in the long command used to repack the image. The numbers you have to change are as follows:
--device super:4294967296 (Change to the file size of super.img)
--group main:4293513600 (Calculate the sum of the size of each of the .img files that were contained in the super.img, minus product.img as that's not needed)
--partition vendor:readonly:342155264:main (Change to the byte size of your vendor.img, same goes for system, odm and vendor_dlkm. Not sure if vendor_dlkm is required as it's not shown in the guide, but just to be safe, I'd recommend adding that in the same format as shown above for vendor just change vendor to vendor_dlkm)
File sizes can be acquired using the command:
Code:
ls -l
Another thing to note is that all of the file sizes must be divisible by 512 as that's the block size the img uses, if they all are, then you're good to go, if one or more aren't you're probably dealing with a corrupt file or that one of the img files is sparsed or compressed in some way. Once you've confirmed the file sizes are good, run the command. You can ignore the "Invalid sparse file format at header magic" message as it doesn't seem to mean anything bad for the process. You don't have to worry if the sparsed image file size is divisible by 512 as it more than like won't be evenly divisible as the file is compressed now.
Once that's done you can take the new modified super.img (make sure it's named that) out of the linux distro and back to windows.
Recompress the super.img back into super.img.lz4 using the command:
Code:
lz4.exe -B6 --content-size super.img super.img.lz4
Now package the super.img.lz4 file with all of the other files from the AP back into a tar file, I suggest using the tar-md5-script-tool.zip from this thread https://forum.xda-developers.com/t/...sing-odin-without-twrp-phh-lineageos.4114435/
At this point, you can skip to step 24 on that guide and continue from there to install the custom rom, just remember to use super.img.lz4 instead of system.img.ext4.lz4, also ignore the .ext4 part, I think that's a device specific thing and the a33 from what I know doesn't have that.
Once you're done and you've booted up after flashing with ODIN, you should be greeted with the lovely Lineage OS Boot Screen
Bare in mind this is a barebones rom and many features may not work as intended since it's an unofficial build of Lineage OS and is intended to work with many devices without too many issues.

Categories

Resources