Vendor Image Change - Google Pixel 3 Questions & Answers

I am just curious if the vendor.img actually changed between the March and April factory images. The reason is that in order to get data and voice to work I have to make changes to the vendor partition. If it is the same then I can exclude it in the update and avoid the process of changing vendor partition.
Thanks

Related

incremental OTA how to get another system information?

Hi,friends:
The pixel use AB_System to avoid system down,but incremental OTA need source system information,if we are system _a, it's not information about system _b,how to push incremental OTA which based on system _b?In system _a, what property can help us to know which incremental OTA base on system _b is needed? Thanks.

Kernal Source Released

The Kernal Source has been released by Razer.
Links to the source is at the bottom of this page:
http://support.razerzone.com/mobile/razer-phone
Here are the links to the source just in case:
MR1 Releases:
Build 853
Build 851
Production Releases:
Build 822
Build 813
It has been talked about already but not in this section. This is where it belongs and nice job posting direct links to it.
https://forum.xda-developers.com/razer-phone/how-to/source-code-posted-t3719665
MedicStuder said:
Surprised no one else posted in the section with this. The Kernal Source has been released by Razer which means modding can start.
https://www.xda-developers.com/razer-phone-kernel-source-code/
http://www.androidpolice.com/2017/12/15/kernel-source-code-just-released-razer-phone/
https://www.gizchina.com/2017/12/16/razer-releases-kernel-source-files-razer-phone/
Links to the source is at the bottom of this page:
http://support.razerzone.com/mobile/razer-phone
Here are the links to the source just in case:
MR1 Releases:
Build 853
Build 851
Production Releases:
Build 822
Build 813
Click to expand...
Click to collapse
I mentioned it in the factory image thread 5 days ago
Mods, can we pin this in the dev section since it contains the links to the needed source code for development purposes. Seems appropriate to have it pinned in this thread. thanks.
I've also got the kernel source going with CAF history included (based on LA.UM.5.7.r1) at https://github.com/jcadduono/android_kernel_razer_msm8998/tree/android-7.1
Fixed a minor bug and added some build scripts to simplify the process of configuring and building.
Added qcacld-3.0 sources into the kernel build for WiFi drivers but I appear to be missing something so it doesn't build. :/
I'm sure someone here can figure that out!
For TWRP support, essentially you'll need to build the stock kernel with additional options like f2fs and exFAT if desired. The OS and TWRP will be sharing the same kernel binaries due to the A/B setup so you *will* need to build the WiFi driver, even for recovery.
If someone is daring enough, they can simply build TWRP normally (ex. for a non-A/B device), flash it to boot_b or boot_a partition (depending what's active), boot up TWRP, and make backups of the opposite A/B partitions.
This can't actually be too hard to do, Dees_Troy has already done most of the work by supporting A/B on Pixel devices already.
I suppose I'm willing to give it a try if anyone is willing to possibly lose the ability to get into the OS until Razer releases factory images.
The chance of that happening is pretty slim, as long as we're only flashing the *active* boot partition (we'll check that in OS using mount command), we should be able to simply grab a copy of the opposite boot partition and restore it to how it was.
YOU CAN simply use fastboot to swap to the other boot partition, restoring your OS to bootable even if TWRP fails to work. (we will test this first to make sure Razer has enabled this option...)
Probably safe, but there's just that risk.
As I'm unsure exactly how to compile the WiFi drivers right now, I'll do this:
Create a normal TWRP image, which you can flash to your *active* boot partition.
Create a TWRP flashable zip that will take the ramdisk from the active boot partition and flash it to the inactive boot partition's boot image, then flash the inactive boot partition's image to your active boot partition.
Result: Both partitions contain the original stock kernel image with TWRP support and a fully working OS.
Slight issue: F2FS won't be supported because the stock kernel will have module signing enabled and TWRP won't be able to load it.
I'm also fairly certain I'll never get decryption working myself for this device...it looks like the vendor partition may be required and it is already encrypted itself? (not encrypted on the Pixel 2 so this is new)
Dees_Troy will be getting his Razer Phone next week. If anyone can get TWRP working it's him. No need to worry ?
MishaalRahman said:
Dees_Troy will be getting his Razer Phone next week. If anyone can get TWRP working it's him. No need to worry ?
Click to expand...
Click to collapse
No way! :victory:
That's the best news I've heard yet
---------- Post added at 04:44 AM ---------- Previous post was at 04:30 AM ----------
jcadduono said:
I've also got the kernel source going with CAF history included (based on LA.UM.5.7.r1) at https://github.com/jcadduono/android_kernel_razer_msm8998/tree/android-7.1
Fixed a minor bug and added some build scripts to simplify the process of configuring and building.
Added qcacld-3.0 sources into the kernel build for WiFi drivers but I appear to be missing something so it doesn't build. :/
I'm sure someone here can figure that out!
For TWRP support, essentially you'll need to build the stock kernel with additional options like f2fs and exFAT if desired. The OS and TWRP will be sharing the same kernel binaries due to the A/B setup so you *will* need to build the WiFi driver, even for recovery.
If someone is daring enough, they can simply build TWRP normally (ex. for a non-A/B device), flash it to boot_b or boot_a partition (depending what's active), boot up TWRP, and make backups of the opposite A/B partitions.
This can't actually be too hard to do, Dees_Troy has already done most of the work by supporting A/B on Pixel devices already.
I suppose I'm willing to give it a try if anyone is willing to possibly lose the ability to get into the OS until Razer releases factory images.
The chance of that happening is pretty slim, as long as we're only flashing the *active* boot partition (we'll check that in OS using mount command), we should be able to simply grab a copy of the opposite boot partition and restore it to how it was.
YOU CAN simply use fastboot to swap to the other boot partition, restoring your OS to bootable even if TWRP fails to work. (we will test this first to make sure Razer has enabled this option...)
Probably safe, but there's just that risk.
As I'm unsure exactly how to compile the WiFi drivers right now, I'll do this:
Create a normal TWRP image, which you can flash to your *active* boot partition.
Create a TWRP flashable zip that will take the ramdisk from the active boot partition and flash it to the inactive boot partition's boot image, then flash the inactive boot partition's image to your active boot partition.
Result: Both partitions contain the original stock kernel image with TWRP support and a fully working OS.
Slight issue: F2FS won't be supported because the stock kernel will have module signing enabled and TWRP won't be able to load it.
I'm also fairly certain I'll never get decryption working myself for this device...it looks like the vendor partition may be required and it is already encrypted itself? (not encrypted on the Pixel 2 so this is new)
Click to expand...
Click to collapse
I'm willing to temporarily sacarfic my device for this. I will message you tomorrow morning and we can give it a shot.
We have lift off! @jcadduono you were right :highfive:
Waiting on you for further instructions on how to proceed.
Even if this leads to no where it sure feels damn good to see the twrp logo.
Everything is going well, we're getting copies of each partition and I'm working on making factory restorable images right now.
I am fairly certain I can even support encryption on this device with no issues.
The device itself actually supports hardware Qualcomm full-disk encryption like most non-Google Qualcomm devices so it's nothing new!
However, the Razer Phone supports HW encrypted SDcards like LG does, so TWRP needs support in the actual crypto code used in the project to work with encryptable sdcards. Maybe Dees_Troy will be up to that task when he gets his phone.
TWRP images will be distributed like so:
- A twrp.img file that you flash to your active boot partition
- A zip file that copies the TWRP ramdisk from your active boot partition into your inactive boot partition, then copies your inactive boot partition to your active boot partition
The zip file will effectively install TWRP and the next time you boot TWRP it will be relying on your ROM's kernel instead of the TWRP kernel.
jcadduono said:
Legend!
Mad props to you, can't wait to see more! :good: This will be a good Christmas, can I ask whether being carrier or not will matter for installation?
Click to expand...
Click to collapse
@jcadduono Legend!
Mad props to you, can't wait to see more! :good: This will be a good Christmas, can I ask whether being carrier or not will matter for installation?
P.s I'll take a pop if you want a second test
thread stuck like Chuck for now, hopefully we can get some dev going for this device.
yeahh !!!!!!! wake up dev teams !!
Any information regarding Franco kernel?

How does the system partition get updated without system_a/b

This is my first A/B phone. I understand that this configuration allows updates to be done while the phone is running because the changes are applied to the inactive slot. So far so good.
I had a look at the partitions and, to my surprise, there's no system_a/b!
So here're my questions:
1. Where is the system partition? Is it "hidden" inside the Super partition (sda15)?
2. How does the system partition get updated by an OTA update if it's still being used?
The same question applies to these partitions that don't have a corresponding a/b partition:
- product
- system_ext
- vendor
To answer your first question, yeah, system, system_ext, vendor and product are in the super partition. This partition does contain system_a, system_b, vendor_a, vendor_b, etc but access to the inactive slot for the subpartitions is disabled in fastboot.
I'm not sure how to view the images or subpartitions in the super partition (as I'm sure you've noticed, parted/gdisk can only show the size and google's page on dynamic partitioning only describes how to create super, not how to view what's in it), but you can create, delete and resize the subpartitions with fastboot, so they exist.
I usually flashed updates through TWRP (in my previous A/B phones). TWRP flashes to the inactive slot and switches on reboot. I assume this is the same process with OTAs.
@coomac, Thanks for the info. Very helpful, especially the link to the implementation of dynamic partitions.

📳🔥 PixelFlasher, a GUI tool for flashing / updating / rooting / managing Pixel phones.

{
"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"
}
DESCRIPTION​As the name suggests this is an application to flash (update) Pixel™ phones (possibly all Google™ made phones/tablets, YMMV.)
PixelFlasher at its core is a UI layer (with bells and whistles) on top of adb / fastboot commands, hence many of its features can be used on non Pixel devices as well. (YMMV).
The executable is self contained and does not require Pythonâ„¢ to be installed on the system.
Basic mode: Should suit most users. Some of the features in basic mode are:
Simple UI interface, click and go. No more command line, no more placing all files in one directory.
boot.img management UI, select the boot.img file to patch and click the patch button. Fully Automated patching with Magisk (without manual steps) and perform upgrades without losing root.
No more manually extracting files transferring to the phone, patching / re-flashing and doing multiple reboots.
No more setting airplane mode and clearing storage to retain Safetynet passing.
Display details of boot.img (or init_boot.img for Pixel 7 / 7 Pro).
SHA1 checksum.
Origin (file it was extracted from).
Whether it is patched or not, and if it is patched.
What version of Magisk was used to patch it.
On what device it was patched.
Date of patching.
The SHA1 of the source boot.img file.
Option to Live boot from a choice of boot.img or patched image.
Flash just the boot / init_boot image.
Choose to keep data or wipe data while flashing.
Ability to flash even if multiple devices are connected to the computer.
Option to flash to inactive slot.
Display information about the phone.
ID
Hardware model.
Device architecture.
Current installed firmware (build).
If it is rooted with Magisk.
Magisk version (Magisk Tools).
Magisk Manager version (the app).
List installed Magisk modules.
Connection mode (Adb | Fastboot | Sideload | Recovery).
Bootloader version.
Active slot.
Android OS API version.
Convenient quick links to download Android platform tools or device firmware.
Magisk Manager installation UI, screenshot. Supported versions:
stable (official)
beta (official)
canary (official)
debug (official)
alpha
delta
special build that disables modules, used to recover from bootloops due to bad module(s) when safe mode does not work.
Magisk Backup Manager, screenshot.
List all Magisk backups currently on the device.
Highlight the one that is backup of the current installed version.
Delete backups.
Manually add backup from PC.
Auto Backup: PixelFlasher figures out what needs to be backed up, and if it finds it on the PC, it creates the backup.
Magisk modules management, enable / disable modules selectively, this comes in handy to disable suspect modules before an upgrade screenshot:
Name
Version
Description
Enabled / Disabled.
Display Android Platform Tools (SDK) version and warn / block if the version is old.
Install APK (an app) file from the computer onto the device.
Advanced features are hidden to keep the interface simple and easy to follow.
A lot of checks and validations for smooth operation.
Automatic check for program updates.
Package (Application) Manager, screenshot:
Disable (Freeze)
Enable
Uninstall
Install APK
Download APK
Multi-Select
Show Package Details.
Expert mode: (should only be turned on by experienced users). In addition to the basic features, you get:
The ability to flash custom ROM (with or without patching boot.img)
Option to flash to both slots.
Option to flash to inactive slot.
Options to disable verity and or verification.
Ability to change the active slot.
Ability to live boot to custom boot.img (temporary root).
Ability to boot to recovery.
Ability to flash custom image: boot, recovery, radio, kernel, ...
Ability to sideload an image.
Lock / Unlock bootloader.
Option to gain temporary root (good for testing or checking things out).
SOS Disable Magisk modules to get out of bootloop (experimental).
Prerequisites​
Android SDK Platform-Tools.
Android Pixel phone factory image or Android Pixel phone full OTA image.
Bootloader unlocked phone (see excellent guide links in credits section below).
Installation​PixelFlasher doesn't have to be installed, just double-click it and it'll start.
Check the releases section for downloads.
Supported platforms​
Windows
MacOSX
Linux
​Usage​Basic Mode
First thing to do is select Androidâ„¢ Platform Tools, if Androidâ„¢ Platform Tools is already in your PATH environment, the application will detect it and pre-populate it.
Otherwise you'd have to select where it is installed.
You can download the lastest Androidâ„¢ Platform Tools by clicking the
next to it.
If you have multiple versions, you can select another version, although it is best to always use the most recent version (The selected version will be identified and displayed.)
Hit the Scan button to detect connected devices, the application will detect all connected devices
(in adb, fastboot, sideload, recovery modes) and populate the combo box (2).
Select your device from the list in the combo box. The following information about the connected device is displayed.
(1st field) Rooted devices will be identified with a checkmark ✓. Note: If you want PixelFlasher to detect root, or automatically use Magisk to patch boot.img, you need to grant root permissions to shell in Magisk.
(1st field) Non-Rooted devices will be identified with a ✗.
(1st field) Devices in fastboot mode will be identified with a ? (in fastboot mode, root status cannot be determined).
(2nd field) (adb), (f.b), (sid) or (rec) to indicate connection mode adb / fastboot / sideload / recovery.
(3rd field) Device ID.
(4th field) Device hardware.
(5th field) Current running firmware (in fastboot mode current firmware cannot be determined).
Next select the factory or full OTA zip file (don't unzip), the application will recognize the phone model from the image name and validate the SHA-256 checksum.
You can download factory images by clicking the
next to it. You can download full OTA images from here.
Note: Because both firmware package and full OTA are complete images, you can upgrade to any newer version without worrying about jumping versions (downgrades might work, but are not recommended).
Process the factory image. PixelFlasher will extract boot.img (or init_boot.img for Pixel 7 / 7 Pro) file from the factory image and populate it in the list below (5).
Select boot.img (or init_boot.img for Pixel 7 / 7 Pro) from the list, the selected file can be patched (6), or flashed (10).
Optional: Select this option if you want to patch the boot.img (or init_boot.img for Pixel 7 / 7 Pro) with Magisk. If Magisk is not already installed on your phone, PixelFlasher will install it for you. Your phone does not need to be rooted to create a patched file. This would be the typical choice for monthly updates.
This option will allow updating the phone without losing root (not even temporarily).
Note: See note above for granting root permissions to shell.
Whether the phone is rooted or not, the whole process is without any manual step.
If you want to flash (10) a patched boot.img (or init_boot.img for Pixel 7 / 7 Pro) select the newly added entry.
The following details are listed.
Indicates that the selection is patched.
SHA1 is (shortened for display only) sha1 of boot.img (or init_boot.img for Pixel 7 / 7 Pro)
Source SHA1 (shortened for display only) SHA1 of source boot.img extracted from the image (This should be the same as SHA1 of an unpatched boot.img)
Package Fingerprint is just the filename portion of the image (without the extension).
Patched with Magisk indicates the version of Magisk used to patch the image (if applicable).
Patched Method indicates what method PixelFlasher used to create a patch (possible options: root, app, uiautomator, manual)
Patched on Device indicates the device model that performed the patching. You should always use patched images that match the model of the device that it will be flashed on.
Date is the either the date the boot.img was extracted, or the date it was patched.
Package Path indicates the file from which boot.img (or init_boot.img for Pixel 7 / 7 Pro) was extracted.
Select the Flash Mode
If factory firmware is selected in step 4:
Keep Data: In this mode -w flag is removed from the flash scripts so that data is not wiped. This is commonly known as dirty flashing.
WIPE all data: As the text suggests, this will wipe your data, use it with caution!
If this mode is selected PixelFlasher will ask for confirmation during the flashing phase.
Dry Run: In this mode, the phone will reboot to bootloader, and then mimic the flash actions (i.e. reboot into bootloader) without actually flashing anything (it prints to the console the steps it would have performed if dry run was not chosen). This is handy for testing to check if the PixelFlasher properly is able to control fastboot commands.
If full OTA image is selected in step 4:
Full OTA: Will flash full OTA image in sideload mode. Features of this mode:
This will always flash to inactive slot similar to how OTA updates happen on the phone.
If something goes wrong during flashing, the active flash is uneffected and the phone boots back to active functional slot.
If you flash to both slots (ie flash twice in a row) then both slots would be bootable.
Your phone's bootloader does not have to be unlocked to be able to flash full OTA image (stock boot only).
Optional: Open Magisk Modules Manager and disable (uncheck) modules known to cause issues during upgrades (the below list has never caused issues for me, so I keep them enabled YMMV).
Flash Pixel Phone This is the final step, to actually flash the phone in the selected Flash Mode.
Note: Unlike the previous versions of the PixelFlasher, all the options are dynamic, i.e. depending on what you select before clicking the Flash button, there is no more concept of prepared package. PixelFlasher will first present you the selected options and ask for your confirmation if you want to proceed with flashing.
Expert Mode
To enable the export mode use the File Menu | Advanced Configuration and select Enable Advanced Options
In this mode the following additional options are exposed (green bounding boxes), below notes are more for enumeration than a guide, as they should be trivial and obvious to an expert.
Option to Change the Active Slot (the inactive slot is automatically selected).
Option to reboot to Recovery.
Options to Lock / Unlock bootloader, Option to disable Magisk modules when bootlooping.
Apply Custom ROM. This replaces the factory ROM image with the selected file.
PixelFlasher extracts boot.img from the ROM image and displays below for selection or patching. Please make sure to read the documentation of the chosen ROM, as each custom ROM instructions could be different.
To be clear, this is what PixelFlasher does internally when this mode is selected, please understand it, and don't use it if the selected ROM guide does not fit the bill. You've been warned!
Keeps stock bootloader and radio images.
Replaces the stock ROM image with the selected custom ROM image.
Flashes in the chosen Flash Mode just like a stock image, i.e. bootloader, custom ROM and radio images in the original order that they were in the stock firmware.
Patching boot.img can be performed if the option is selected. You can select any of the listed boot.img.
Flash Mode is similar to basic flash mode described above in step 7.
Custom Flash. select this to switch from flashing a Factory Image to flashing a single file.
Browse to select a a valid image file (.img or .zip). Or select a boot.img from the list above and click on the paste button to paste the selected boot.img into the file selection. Choose the dropdown to select image type.
boot (can be flashed to Live or boot) - Expected file type .img
bootloader - Expected file type .img
dtbo - Expected file type .img
product - Expected file type .img
radio - Expected file type .img
recovery - Expected file type .img
super_empty - Expected file type .img
system - Expected file type .img
system_ext - Expected file type .img
system_other - Expected file type .img
vbmeta - Expected file type .img
vbmeta_system - Expected file type .img
vbmeta_vendor - Expected file type .img
vendor - Expected file type .img
vendor_boot - Expected file type .img
vendor_dlkm (the device will be put into fastbootd mode during this operation) - Expected file type .img
image - Expected file type .zip
SIDELOAD - Expected file type .zip
Select the appropriate flash options. Note: For Tensor devices (Pixel 6, Pixel 6a, Pixel 6 Pro, Pixel 7, Pixel 7 Pro) When Flash to both slots option is selected, Pixelflasher flashes each slot individually to overcome a Google bug that fails with the option --slot=all
Credits​
First and foremost Magisk by John Wu which made rooting Pixelâ„¢ phones possible, without it none of this would have mattered.
Big thanks to [ryder203], [t-ryder] for his valuable ideas, feedback and testing. Your contributions are very much appreciated.
[Homeboy76] and [v0latyle] at xda for their excellent guides [here and here] on Pixelâ„¢ series phones. This program could not have been possible without their easy to follow guides.
I strongly encourage all beginners to follow those guides rather than use this program, it is important to understand the basic steps involved before diving into one click tools or advanced tasks.
Marcel Stör's nodemcu-pyflasher source code which jump started my introduction to wxPython and eventually this program.
JackMcKew for pyinstaller Github Actions.
Endless counts of xda members and their posts that tirelessly answer questions and share tools. Too many to enumerate.
Disclaimer​
Code:
*******************************************************************************
PLEASE DO YOUR PART AND READ / SEARCH / RESEARCH BEFORE USING THIS PROGRAM
AND/OR ATTEMPTING ANY MODIFICATIONS ON YOUR DEVICE.
THIS PROGRAM ASSUMES THAT YOU ALREADY KNOW HOW TO AND HAVE ALREADY UNLOCKED
YOUR BOOTLOADER, ALREADY ROOTED YOUR DEVICE, AND KNOW HOW TO USE ANDROID SDK
PLATFORM-TOOLS, ETC.
THIS TOOL IS SIMPLY MY QUICK WAY OF UPDATING THE FIRMWARE WHILE ROOTED WITH
MAGISK, WITHOUT LOSING DATA / REQUIRING A WIPE.
MODIFYING YOUR DEVICE COMES WITH INHERENT RISKS, AND IT'S NOT MY RESPONSIBILITY
IF YOU LOSE YOUR DATA OR BRICK YOUR DEVICE. THE TOOL I SHARE HAVE WORKED FOR ME,
BUT THAT DOESN'T MEAN THAT YOU MAY NOT RUN INTO PROBLEMS. **BACKUP YOUR DATA.**
*******************************************************************************
No Donation
I've been asked quite few times about donation, (here, here ... just to list a few).
I'll put it here so that my stance is clear.
This program will remain totally free, ad free, even donation free, it's my way to give a little back to the community that has given me years of support and joy.
You can contribute by helping the next newcomer to learn the ropes and navigate through the maze of information.
Device specific support threads:
Google Tablet
Google Pixel 7 Pro
Google Pixel 7
Google Pixel 7a
Google Pixel 6 Pro
Google Pixel 6
Google Pixel 6a
Google Pixel 5
Troubleshooting:
See this post.
Generate Sanitized support.zip file (File Menu) and submit that with your report.
Latest Release:
June 23, 2023 v5.3.3.0 release
#79 Bug-fix: Package Manager column stays unsorted when filtered.
Warn users that extract the contents of firmware and use the image inside as firmware, which is no good.
Warn users of Android Platform-Tools 34.0.3 about potential issues and suggest using 33.0.3
Package manager bug fixes and improvements.
Spoiler: Older Releases
June 21, 2023 v5.3.2.0 release
Added support for Pixel tablet (tangorpro).
For future devices, fixed a bug to auto detect init_boot partition and flash init_boot instead of boot even if the device is newer than the PixelFlasher and is not in PixelFlasher's list.
Disable Patch buttons if device is not in adb mode.
Reboot to system after lock / unlock bootloader if No Reboot option is not selected.
Increase sleep after reboots to various modes to assure that slow devices have time to be detected.
Updated Readme and screenshots.
Minor improvements and bug fixes.
June 16, 2023 v5.3.1.2 release
Set Active slot now automatically reboots to system after setting the slot, unless "No Reboot" option is selected.
Update Ubuntu 20.04 build to be aligned to the same methods that Ubuntu 22.04 build uses.
Improve confidence value calculation when comparing compressed sha1 against normal sha1 to account for shift.
Do not abort when the sha1 comparison confidence value is low, leave the choice to the user.
Update Windows builds (both) as wxPython wheel path changed, rely on a more persistent URL instead.
June 06, 2023 v5.3.0.0 release
Added Github Action build on Windows 2019 with Python 3.8 to support Windows 7.
PixelFlasher now supports loading and processing Samsung Firmware (at least my Samsung's ), it would extract AP, BL, CSC, Home_CSC ... and then extract boot.img.lz4 from AP and unpack the lz4.
When creating a patch from the set boot.img, PixelFlasher will also create boot.tar to be flashed as AP to retain root.
If there was a way to pre-load odin with the extracted files, flashing could also be automated.
I know, what does PixelFlasher have anything to do with Samsung firmware? I added it for my own use.
June 03, 2023 v5.2.0.2 release
#76 Get a better build with Github action to support more Linux based platforms (no functionality changes).
June 01, 2023 v5.2.0.1 release
Bug fix #78 Error when opening a shell console on Linux / Mac
June 01, 2023 v5.2.0.0 release
Update build workflows
Add payload_dumper functionality to PixelFlasher to handle OTA files, thanks to vm03 for sharing source code.
Added rules engine code to better / easier management of the UI widgets enabling / disabling.
Auto detect Pixel OTA image and extract boot / init_boot / vbmeta for patching and flashing.
Add Full OTA mode, which flashes full OTA image, while optionally retaining root, and best of all, for A/B devices, both slots are bootable, you can even have one rooted and one not.
May 25, 2023 v5.1.0.2 release
Skip testing fastbootd in dry run mode if Android platform tools version is > 34, is it no longer supports fastbootd (at least 34.0.3 does not)
v5.1.0.1 release notes:
Exception handling when device is not in the listed Pixel devices.
v5.1.0.0 release notes:
Support for Android platform tools version 34.0.3, and automatic setting of ANDROID_PRODUCT_OUT environment to workaround a regression introduced in version 34.0.3
Temp workaround to avoid selecting root method patching when Magisk Delta is detected.
Nicer looking / clearer manual patching dialog.
When a Pixel device is selected, PixelFlasher now displays additional information about the device's support.
Things like: Device name, version end date, security update end date, Android version, name, codename, release date, end date.
Boot image list box now displays the applied PixelFlasher patch method.
Auto-resize boot image list box columns for better readability.
Precautionary cleanup up of leftover files on the phone in case root detection software keys on presence of such files.
#77 added attrict3 to requirements.txt in case it helps with certain builds (it shouldn't be needed).
Bug fixes and improvements.
May 21, 2023 v5.0.1.0 release
Added workflow for building on MacOS 13.
ComboBox behavior on Mac is different than Windows, make adjustments.
Ability to set PixelFlasher working directory (no UI).
Speed up startup.
Popup device selection after Wifi adb connect.
Clear Device list after adb kill-server.
May 19, 2023 v5.0.0.1 release
#75 Bug fix, when device is in bootloader, type error.https://github.com/badabing2005/PixelFlasher/issues/74
#74 Added Support for Pixel 7a (lynx)
Configuration option to define the file manager to use on Linux (default: Nautilus)
Configuration option to define the terminal emulator to use on Linux (default: gnome-terminal).
Support for additional types of Factory / ROM files.
Checksum validation of firmware / ROM files (if part of the checksum is in the name, otherwise just display)
New advanced option, ability to choose the patching method (with recommendations).
Added Recovery Image patching option.
Advanced option to enable the use of busybox shell (default off).
Auto detect firmware / rom with init_boot and use init_boot for creating patches, this way future firmware don't have to be manually added to PixelFlasher.
Auto detect devices with init_boot and use init_boot for flashing, this way future devices don't have to be manually added to PixelFlasher.
Auto-popup the detected devices dropdown after a scan, to make it obvious to select that next. (Thanks @pndwal for the idea)
Show SHA-256 of adb and fastboot binaries, as Google keeps on messing up Android Platform-tools, it's necessary to whitelist / blacklist specific binaries.
#66, when checking the patched files internal SHA1, provide a confidence rating.
Check, valdiate and warn if necessary when flashing an image patched with Magisk Zygote64_32, as there are wipe implications, provide links to documentation.
Added fastbootd testing to Dry Run.
Added Github actions to build all the targets on Github.
Code refactoring, bug fixes and improvements
Apr 30, 2023 v4.10.0 release
Added no reboot option, with this option selected, after flashing is completed, the phone will not reboot to system, giving a chance to take other actions before reboot.
Added built-in file editor, you can now edit the flash script before running, in case you want to customize it (needless to say, should only be used if you know what you're doing)
Added a button to open an explorer in working directory, useful for people who want full control, perform manual actions by following guides, but using PixelFlasher to do the prep work.
Made the Firmware and Rom Process buttons, full with text. It wasn't obvious for some.
Detect and handle Magisk Zygote64_32 automatically, thanks to @Namelesswonder for adding the necessary marker.
Apr 27, 2023 v4.9.0 release
Added support for installing / creating patch with @Namelesswonder Magisk zygisk64_32 (stable, beta, canary, debug versions).
Support for recognizing Lineage firmware and extracting / patching boot.
Display 32 bit capabilities of the device.
Utilize New Magisk 26.x flags as needed (patch support for more devices).
Disable Flash to Inactive slot and Flash to both slots button if the device is not A/B device.
Partition Manager can now list the partitions even if the devices is not rooted.
Added Custom Patch button, which allows selecting a boot file from disk and getting a patched file back to save to disk (all on the PC).
Added Open Folder button to open a file browser to the directory of the selected boot image.
Added Reboot to Download button (Odin mode).
Added Reboot to Safe Mode button.
Storage reorganization, store patched files next to the stock file, and set the patch name to clearly indicate both source and target sha1.
Various additional validation checks.
Bug fixes and other improvements.
Apr 10, 2023 v4.8.2 release
Include additional Magisk versions in the check to display a warning dialog when the user has installed one of the known versions to have issues.
Display USNF related flag values when selecting a device.
Check the downloaded Google firmware checksum to match the one in the filename and warn if it does not.
Link to download Google USB Driver is added in the help menu.
Added more visual troubleshooting event flows.
Install APK now defaults to Non Market.
Added Install APK cancel option.
You can now select an app in package manager and right click to launch it on the phone.
Minor bug fixes and other improvements.
Mar 14, 2023 v4.8.1 release
#47 Feature request: Added partition manager - Allows to erase partitions, and / or dump / backup partitions to PC.
Added more visual troubleshooting event flows.
Added warning message for when Android platform tools versions 34.0.0 and 34.0.1 are used.
Improved support.zip redactions.
Added Support.Zip generator button on the Main screen.
APK Install option can now set the ownership to Play Store Market (useful for Android Auto)
Check and warn the user when Magisk Canary versions 25207, 25208, 25209 and 25210 are being used.
Bug fixes and other improvements.
Feb 12, 2023 v4.8.0 release
#50 Support for Android 14 Developer Preview for Pixel 7 and Pixel 7 Pro
#48 Do not allow patching with hidden Magisk (stub) and adb shell not granted root rights.
Block using Android Platform Tools version 34.0.0 and display a warning because it has known issues
Disable Magisk Backup Manager button if root access to adb shell is not granted.
Button to Open adb shell connected to the selected device.
Work in Progress: Generate graphical activity log to visualize the activity and speed up troubleshooting.
Feb 05, 2023 v4.7.0 release
Added Magisk Backup Manager:
List all Magisk backups currently on the device.
Highlight the one that is backup of the current installed version.
Delete backups.
Manually add backup from PC.
Auto Backup: PixelFlasher figures out what needs to be backed up, and if it finds it on the PC, it creates the backup.
Added Reset on Magisk Manager package name setting to reset to default: com.topjohnwu.magisk
Linux / Mac build.sh now switches to the PixelFlasher folder if it is run from elsewhere.
Magisk installer improvements:
When installing Magisk Alpha or Delta, PixelFlasher updates the configuration to match the package name to the respective Magisk package.
Magisk installer window displays the package name.
You can now copy to clipboard, the download URL and package ID.
Magisk Manager columns are now wider for better readability.
Package Manager improvements:
Added Search / Filter option.
Show count of filtered packages.
Application Name (label column).
"Get Application Names" Button to resolve all package application names. This is a slow process, hence PixelFlasher caches them.
Button to download (pull) APKs from the device. (Multiple downloads in one shot is also supported).
Other under the hood improvements.
When selecting a firmware or ROM file, sha256 is printed to console and displayed on hover, to validate if it matches the published sha256.
More verbose logging that helps with troubleshooting.
Double click on "ADB Connected Devices" to invoke adb kill-server which is handy at times, specially when dealing with Wifi ADB.
Moved existing links under Help Menu | Links, and added few more handy links.
Added timestamp to support.zip filename.
On request, spinning cursor with text "Please be patient ..." is now displayed in red.
Flashing to inactive slot is now in basic configuration instead of advanced configuration.
Preparation work for version 5.0 DB improvements.
#40 Handle locale related exceptions which were causing PixelFlasher to not launch on some Windows 11 systems.
Add the ability to download and install a special Magisk version that has modules loading intentionally disabled. Required to get out of bootloops and manage to disable modules.
Credit to gecowa6967 at XDA.
Dec 05, 2022 v4.6.0 release
Added single click button to easily flash just the boot/init_boot (stock or patched) to the phone.
#39 Display Flash Option changes in the console, and allow flashing to inactive slot in basic mode.
#39 Do the Magisk backup only when rooted.
Decouple OTA sideload from needing factory image.
Other minor improvements.
Dec 04, 2022 v4.5.0 release
New look (Artwork / Icons), compliments of @t-ryder (thank you), based on Material design icons.
New Feature: Package Manager, Install / Uninstall / Freeze (disable) / Unfreeze (enable) packages even system ones (root not required). Handy with Wifi ADB.
Use latest Python updated packages.
Ubuntu 22.04 support.
Miscellaneous improvements.
Nov 09, 2022 v4.4.0 release
New feature: Font and Font size should be configurable by the user #33
New feature: Added WiFi-ADB connect / disconnect button. Left click to connect, Right click to disconnect.
Handy to access a device remotely.
Note: This only works in adb mode, so no fastboot or flashing features work for remote devices, but for patching / installing apks, managing Magisk modules it works well (basically anything that is done in adb).
I personally use this to test patching on remote devices, and also use it to access / install apps to my watch.
Ground work for future features: Get installed Package list, and list which are disabled, enable / disable / uninstall apps. (Will be available in future release).
Move Flash Option Flash to inactive slot to Basic mode from Advanced mode..
Minor UI Improvements
If Magisk does not create a backup attempt to trigger Magisk to create one.
Update readme to include Pixel 7 / 7P specific info.
Oct 27, 2022 v4.3.1.0 release
Bug Fix: Magisk modules not listed on MacOS / Linux
Oct 16, 2022 v4.3.0.1 release
Bug fix: #30 Error during firmware processing file extraction phase.
PixelFlasher-Linux is now labeled PixelFlasher-Ubuntu (It is built on Ubuntu which is not compatible with all Linux flavors. Even though PixelFlasher-Kali is more compatible, it is still not a one size fits all solution.)
Oct 15, 2022 v4.3.0 release
New: You can now download and install alpha and delta Magisk versions in addition to the official stable, beta, canary and debug versions.
Bug fix: Generating support.zip file was modifying the main db file unnecessarily.
Bug fix: When patching with Magisk Manager the version of Magisk Manager was not being displayed in the boot images table.
Bug fix: MacOS downloaded Magisk had space in the file path, which was causing failed installation.
Oct 13, 2022 v4.2.0 pre-release
Support for Pixel 7, 7p (init_boot extraction and patching / flashing).
Added Pixel 7 / 7p partitions flashing options to custom flash.
Improved patching process using boot_patch, add more patch file validations.
Check for Magisk backup and trigger Magisk to backup if missing.
Add more logging messages for troubleshooting.
Code optimization / improvements.
Bug Fix #28 Error when opening download link without a device selected.
Added set_version script to easily set the product version.
Print path of the selected boot to console, for easy copy / paste.
Oct 05, 2022 v4.1.4 release
Rooted Magisk patching will now automatically back up stock-boot.img (more to come).
Bug Fix #27, handle version exception.
Oct 05, 2022 v4.1.3 release
Bug Fix: Extract Magisk Manager version properly.
Oct 04, 2022 v4.1.2 release
include busybox binaries for different Android architectures (arm64-v8a, armeabi-v7a, x86_64, x86)
don't use hidden Magisk for patching, as it is a stub only.
Oct 03, 2022 v4.1.1. release
Bug Fix: Bundle busybox with PixelFlasher to be used for unzipping Magisk.
Bug Fix #25, use the Magisk Manager version number instead of Rooted Magisk version number.
Cosmetic changes and a bit more logging.
Oct 03, 2022 v4.1.0 pre-release
Patching is now fully automatic with or without root.
PixelFlasher uses installed Magisk Manager binaries to create a patch (root binaries are only used if Magisk Manager is not available / accessible)
UIAutomator no longer necessary, neither asking the user to manually patch and click ok when done.
Added an option to set a hidden Magisk package name so that PixelFlasher can find the Magisk and use it, the user still has a choice to use root binaries.
Speed improvements for device property reading.
Speed improvements for Magisk modules reading.
NOTICE:
I'm marking this release as pre-release because I just found out that unzip is not normally available on the phone, which this new patching mechanism uses.
On my test phones they were available.
Unless you have unzip on your phone, you should avoid using this version.
Sorry about this oversight.
Sep 25, 2022 v4.0.0 pre-release
New Feature: On supported devices, where device is not yet rooted (or adb shell su not allowed), an option to control the Magisk Manager GUI (drive UI) to programmatically control the app through UIAutomator and create a patched boot.img
See Patching flow chart for details.
New Feature: Detect if Magisk Manager is at a higher version than installed Magisk, warn the user of a potential rare corner case and offer a choice of patching method.
New Feature: Temporary Root, when flashing if you choose this option, the phone will be flashed with unpatched boot.img, but Live boot to patched boot.img to provide a temporary root.
New Feature: Warn the user to flash both bootloader slots if their device is a Tensor device (Pixel 6, Pixel 6a, Pixel 6 Pro), if current version of OS is lower than Android 13.
New Feature: Flash to inactive slot. Unlike OTA flashing factory image flashing is always done on the current active slot, with this option selected, PixelFlasher will write to inactive slot. This allows one to revert to current working state in case anything goes wrong. This feature combined with Temporary Flash provides best method to test a new firmware without risking losing current working setup.
Note: You should avoid this option if you are on a Tensor device and are upgrading from Android 12 to Android 13 (see the previous feature).
New Feature: Detect and operate on devices that are in Sideload or Recovery mode.
New spinner to indicate PixelFlasher activity.
Renamed Reload button to Scan, to better reflect the button's function. After a scan print the count of devices found.
PixelFlasher previously used MD5 to uniquely identify boot images (patched or otherwise), with version 4.0.0 PixelFlasher now uses SHA1 instead of MD5.
This has no bearing on the functionality, it just better aligns with Magisk way of identifying and tagging boot images.
PixelFlasher now extracts the embedded SHA1 of a Magisk Patched images (only available in newer devices) and assures that it matches the source boot.img's SHA1.
This is just an extra validation.
Code cleanup / refactoring, adding more validations and exception handling.
Print debug details when encountering non compliant Magisk modules.
Firmware link now takes you to the device's download page instead of just the general download page.
To better reflect the file details, transferred and stored boot.img files are now suffixed by their shortened SHA1, while magisk_patched.img files are now suffixed by shortened SHA1 of their source boot.img.
Allow sideload even if bootloader is locked.
Sep 04, 2022 v3.7.0 release
New Feature: Install Magisk into the phone, PixelFlasher displays information about the latest available Magisk versions (stable, beta, canary, debug) and offers the choice to install a selection.
New Feature: Install compatible apk file onto the device from PixelFlasher menu.
Check Android Platform Tools version and warn if it is old.
Block flashing when stock flash_all.bat file is tampered with.
Don't bother with flashing if bootloader is locked.
More validations and exceptions handling.
Improved logging.
Aug 24, 2022 v3.6.0 release
When a device is selected, the Bootloader version is displayed. (Useful for Pixel 6* devices with ARB). Works in adb and fastboot modes.
Added a button to dump full device info (useful for troubleshooting). Works in adb and fastboot modes.
Improved tooltips.
Aug 21, 2022 v3.5.1 release
Fix: Incorrect warning is displayed when Flash on both slots is selected.
The contents of the generated flash-phone.bat file will now be displayed on console even if verbose option is not selected, this helps the user know exactly what commands would be executed before clicking the OK button.
Aug 19, 2022 v3.5.0 release
Add support for fastboot --force flag (to help fix partition issues, caution it will wipe data) see this.
Split image flashing to all slots into two separate single slot flashing to bypass a Google bug on Pixel 6* devices, see this by @Namelesswonder
July 18, 2022 v3.4.0 release
Improvements to the boot extraction / categorization.
Live boot option directly from the selected boot.img UI, even though it was possible to live boot previously through the advanced menu, it is now super easy to select a boot.img (patched or otherwise) and Live boot to that image with a click of a button.
Added warning message in the splash screen and the help about menu, to inform users not to fall for opportunists who are claiming to be the developer of PixelFlasher with a donate button next to the download link. Reminder to all, this program will always be free, ad free, donation free; you should not be solicited for any form of payment.
June 26, 2022 v3.3.5 release
Fix Lock / Unlock bootloader buttons being reversed.
June 12, 2022 v3.3.4 release
Bug fix on MacOS / Linux
Improved notice message about Fastboot process.
June 06, 2022 v3.3.3 release
Bug Fix: When choosing custom ROM, the ROM file was not being copied to the package directory.
Update Documentation and screenshots.
May 25, 2022 v3.3.2 release
Handle system codepage.
Add configurable codepage setting in advanced settings to be able to override the value.
Selected boot color is now blue instead of red to avoid thinking that it has a problem.
After Flashing, clear connected device to avoid using device in case it is not yet ready.
Fix: Paste boot button should be hidden in basic mode.
Always print md5 of Magisk_patched (previously only verbose mode displayed it).
Wait 10 seconds instead of 5 seconds after reboot before issuing next command.
May 21, 2022 v3.3.1 release
Change encoding from utf8 to ISO-8859-1
Button to paste the currently selected boot.img into custom flash file selection.
Several Mac version improvements, thanks to rhetorican for reporting and testing.
UI improvements
Fix: On low resolution screens, the application startup position is high enough to clip the top part.
Fix: On low resolution screens, the patch icon is too large and dis-proportional to the rest of the UI
Better dark mode handling on Mac / Linux
Increase the wait during flashing to account for slower devices.
Further improvements on support.zip redaction process.
Other minor fixes and additional validations.
May 05, 2022 v3.3.0 release
MacOS build.
Handle Magisk module.prop with comments.
Exception handling on magisk module errors.
boot.img management improvements.
Removed old Powershell script.
More checks and validations.
support.zip now includes sanitized PixelFlasher.db
May 04, 2022 v3.2.0 release
Help menu option to create support.zip file, which sanitizes (redacts user names and device IDs) of the log files.
This makes it super easy to provide support.zip file when something goes wrong and need to report it.
In boot management, delete firmware cache of the selected boot.img if it is the last boot.img used from that firmware.
Handle space characters in username.
Console is now responsive when processing firmware file.
More checks and validations.
Update readme with instructions on how to build PixelFlasher on MacOS.
May 02, 2022 v3.1.1 release
Handle UTF-8 Encoding.
May 02, 2022 v3.1.0 release
Fixed a missing step in the final flashing of boot.img
Decoupled Firmware / ROM processing from selecting the files, now we have a separate button to process, makes it clearer and does not give the impression that selecting the file is hanging.
Added splash screen (v3.0.1), the GUI refresh hiccup is gone.
Made the boot.img management delete function more extensive.
I flashed my phone with the May drop using this version.
April 30, 2022 v3.0.0 release
New workflow, no more package preparation, select options and flash all dynamic.
boot.img caching and management UI with details about the state of boot.img files.
Faster as there is no more need to zip a package.
Other optimizations and improvements.
Update documentation.
April 20, 2022 v2.4.1 release
Bug Fixes: Error message during flashing, introduced by code reshuffle.
It turns out that some Magisk Modules don't set the id, which was expected to be present, which caused Magisk module management screen not to display.
April 19, 2022 v2.4.0 release
Magisk modules management, enable / disable modules selectively, this comes in handy to disable suspect modules before an upgrade.
Autoscroll the console.
Code cleanup.
April 17, 2022 v2.3.0 release
Optional automatic check for updates feature.
Added help menu links to:
- Report an issue
- Feature Request
- PixelFlasher Project Page
- PixelFlasher Community (Forum)
- Homeboy76's Guide
- V0latyle's Guide
- Open Configuration Folder
- Check for New Version
Icons for menu items.
Link to download Pixel Firmware.
Link to download Android Platform Tools.
Unlock Bootloader.
Lock Bootloader.
SOS (experimental) - disable Magisk modules to get out of bootloop.
Additional flashing options:
- product
- system
- system_ext
- system_other
- vbmeta_system
- vbmeta_vendor
Added sideload flashing option.
Updated documentation.
Further improved console messages for troubleshooting.
Linux build using Github Actions.
Manual build for Kali Linux.
April 11, 2022 v2.2.2 release
Linux support.
Remember last window position.
List Magisk modules, when Magisk is detected.
Added fastboot verbose option.
Added more checks and validations.
Added more details when errors are encountered.
Cleaner message box (better formatting).
Notice to the user in case fastboot drivers are not setup properly.
More plumbing work for the new upcoming workflow.
Add notes on how to build the Linux version.
April 06, 2022 v2.1.0 release
Setup dedicated profile directory.
Put logs in the profile directory and maintain log history.
Plumbing for Linux support (just the flashing part is left to do).
Plumbing for new workflow.
Bugfix to handle name conflict in ROM filename.
Various minor improvements.
Update documentation.
April 03, 2022 v2.0.1.0-pre release.
Major refactoring
Added Advanced (Expert) mode UI.
Basic mode keeps UI simple and hides expert features.
Support for setting active slot.
Reboot options (recovery, system, bootloader)
Moved custom ROM options to expert mode.
Added custom flashing to expert mode, can now flash to live (temporary root), or custom flash any image to any partition.
Moved flashing to both slots, disabling verity / verification to expert mode.
Many other improvements, validations and checks.
Updated documentation.
March 24, 2022 v1.2.0.1-alpha release.
Added Advanced Configuration menu which unlocks advanced features such as:
- Flashing to both slots
- Disabling Verity
- Disabling Verification
- (More features to come)
The UI will now display the chosen Android Platform Tool's version.
Added an option to toggle verbose console output (help troubleshooting, more verbosity to come).
Stability fixes.
March 22, 2022 v1.1.5-alpha release.
Some users were having issues with 7zip, add 7z.dll to the bundle.
Add fallback mechanism to use python libraries for unzipping when 7zip fails (it would be slower)
March 22, 2022 v1.1.4-alpha release.
Bug Fix: Handle space characters in paths.
March 17, 2022 v1.1.3-alpha release.
Visual indicator if the phone is root and Magisk Tools is found.
Bug Fix: KeyError 'flash_vbmeta'
March 17, 2022 v1.1.0-alpha release.
Changelog
10x speed improvement for full package creation, down from 180 seconds to 18 seconds.
Bug Fix: When using patch option with custom ROM, the boot.img of the custom ROM is now correctly patched.
Add support for flashing vbmeta (experimental) with or without disabling verity and or verification. (This is currently only supported through preferences file)
Reserved
Is there an option to disable Verity and verification just curious
a g bell said:
Is there an option to disable Verity and verification just curious
Click to expand...
Click to collapse
Very easy to add that, curious what would be the use case?
I'm currently setting KEEPVERITY=true and KEEPFORCEENCRYPT=true
I'm not sure what you mean by disable verification though.
I have recently had problems when flashing factory images. They flash fine for me but will not boot leaving the message your device is corrupted bla bla bla disabling Verity and verification in FB fixes the issue they boot straight up.
I would find the option useful
It's this in fastboot: fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img
Of course the using vbmeta.img from what your flashing
a g bell said:
I have recently had problems when flashing factory images. They flash fine for me but will not boot leaving the message your device is corrupted bla bla bla disabling Verity and verification in FB fixes the issue they boot straight up.
I would find the option useful
Click to expand...
Click to collapse
I know how to disable Verity, but how do you disable verification? you know the flag for it?
badabing2003 said:
I know how to disable Verity, but how do you disable verification? you know the flag for it?
Click to expand...
Click to collapse
Sorry l just use fastboot commands
a g bell said:
It's this in fastboot: fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img
Of course the using vbmeta.img from what your flashing
Click to expand...
Click to collapse
Just so it is clear.
This would be the normal steps for the latest oriole image
which flash-all does (-w removed to keep data)
Code:
fastboot flash bootloader bootloader-oriole-slider-1.0-8062051.img
fastboot reboot-bootloader
fastboot flash radio radio-oriole-g5123b-93368-211225-b-8029609.img
fastboot reboot-bootloader
fastboot update image-oriole-sq1d.220205.004.zip
Do you extract vbmeta from image-oriole-sq1d.220205.004.zip and then run
Code:
fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img
as a last step?
or do you just do
Code:
fastboot update --disable-verity --disable-verification image-oriole-sq1d.220205.004.zip
as the last step of flash-all
The two options I gave you are Magisk patching options, so you leave those as default? which would be KEEPVERITY=true and KEEPFORCEENCRYPT=true (That is what the app does)
badabing2003 said:
Just so it is clear.
This would be the normal steps for the latest oriole image
which flash-all does (-w removed to keep data)
Code:
fastboot flash bootloader bootloader-oriole-slider-1.0-8062051.img
fastboot reboot-bootloader
fastboot flash radio radio-oriole-g5123b-93368-211225-b-8029609.img
fastboot reboot-bootloader
fastboot update image-oriole-sq1d.220205.004.zip
Do you extract vbmeta from image-oriole-sq1d.220205.004.zip and then run
Code:
fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img
as a last step?
or do you just do
Code:
fastboot update --disable-verity --disable-verification image-oriole-sq1d.220205.004.zip
as the last step of flash-all
The two options I gave you are Magisk patching options, so you leave those as default? which would be KEEPVERITY=true and KEEPFORCEENCRYPT=true (That is what the app does)
Click to expand...
Click to collapse
l copied the vbmeta.img then flashed with the disable commands added that was after l had the flashed the ROM of course
badabing2003 said:
Just so it is clear.
This would be the normal steps for the latest oriole image
which flash-all does (-w removed to keep data)
Code:
fastboot flash bootloader bootloader-oriole-slider-1.0-8062051.img
fastboot reboot-bootloader
fastboot flash radio radio-oriole-g5123b-93368-211225-b-8029609.img
fastboot reboot-bootloader
fastboot update image-oriole-sq1d.220205.004.zip
Do you extract vbmeta from image-oriole-sq1d.220205.004.zip and then run
Code:
fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img
as a last step?
or do you just do
Code:
fastboot update --disable-verity --disable-verification image-oriole-sq1d.220205.004.zip
as the last step of flash-all
The two options I gave you are Magisk patching options, so you leave those as default? which would be KEEPVERITY=true and KEEPFORCEENCRYPT=true (That is what the app does)
Click to expand...
Click to collapse
I would not worry about changing anything on this topic. Your script is using a full factory image and Magisk v24. This extra step was fixed when Magisk v24 was released...
Only the Ota updates are affected and need to be altered.
Basically if you stick to the full factory image and Magisk v24, you can forget about the extras steps.
Edit: this all was discuss in the Pixel 6 rooting guides.
vandyman said:
I would not worry about changing anything on this topic. Your script is using a full factory image and Magisk v24. This extra step was fixed when Magisk v24 was released...
Only the Ota updates are affected and need to be altered.
Basically if you stick to the full factory image and Magisk v24, you can forget about the extras steps.
Edit: this all was discuss in the Pixel 6 rooting guides.
Click to expand...
Click to collapse
Yes but l am not referring to rooting l am referring to downloading and flashing a factory then facing a Verity issue causing the flashed ROM to not boot. Nothing to do with root access.
vandyman said:
I would not worry about changing anything on this topic. Your script is using a full factory image and Magisk v24. This extra step was fixed when Magisk v24 was released...
Click to expand...
Click to collapse
It' true that my tool uses the factory image, but I don't have control over the Magisk version, it uses whatever is installed on the phone.
a g bell said:
Yes but l am not referring to rooting l am referring to downloading and flashing a factory then facing a Verity issue causing the flashed ROM to not boot. Nothing to do with root access.
Click to expand...
Click to collapse
You can use notepad++ and open your flash=all.bat file. Add your own fastboot script at the end.
The verify disable method was only needed to root back in October. There was no reason otherwise to change the flash-all script at all if you were not rooting. I must have overlooked something since then!
Is there a link on this that is new?
a g bell said:
l copied the vbmeta.img then flashed with the disable commands added that was after l had the flashed the ROM of course
Click to expand...
Click to collapse
doesn't the step `fastboot update image-oriole-sq1d.220205.004.zip` reboot to normal when it completes?
So you try to go back to fastboot mode and then flash the vbmeta with disabling options?
That's going to be tricky to automate, if I add the step after the ROM update, it will never get there.
I created a feature branch to add this (no UI, just through preferences file, this way it keeps it away from normal users, besides it complicates the UI and confuses people)
After finishing it all, I realized that the phone will not be in the bootloader mode.
I know that when the Pixel 6 / Pro first came out (Before Magisk handled it), we had to disable verity and verification, but those options were added to the ROM update line, we didn't had to flash vbmeta separately, I wonder if you do that would it work.
Actually like @vandyman why do you still need to do this if you're using the latest magisk?
Something is different on your phone?
@badabing2003 It would be great to have an opthio to disable Verity and verification flags via this UI. It could be an advanced user choice just in case.
It is true that with latest Magisk root, flags are not a matte anymore, but some times the third-party kerenl or other roms will make the phone not boot leaving the message your device is corrupted...
badabing2003 said:
doesn't the step `fastboot update image-oriole-sq1d.220205.004.zip` reboot to normal when it completes?
So you try to go back to fastboot mode and then flash the vbmeta with disabling options?
That's going to be tricky to automate, if I add the step after the ROM update, it will never get there.
I created a feature branch to add this (no UI, just through preferences file, this way it keeps it away from normal users, besides it complicates the UI and confuses people)
After finishing it all, I realized that the phone will not be in the bootloader mode.
I know that when the Pixel 6 / Pro first came out (Before Magisk handled it), we had to disable verity and verification, but those options were added to the ROM update line, we didn't had to flash vbmeta separately, I wonder if you do that would it work.
Actually like @vandyman why do you still need to do this if you're using the latest magisk?
Something is different on your phone?
Click to expand...
Click to collapse
Everytime l downloaded and flashed a factory image it wouldn't boot and gave me the message your phone is corrupted. So l tried to fix it this issue and disabling Verity and verification they way l posted worked and the flashed factory image then booted.So l thought this would be a useful option for you to add.
a g bell said:
Everytime l downloaded and flashed a factory image it wouldn't boot and gave me the message your phone is corrupted. So l tried to fix it this issue and disabling Verity and verification they way l posted worked and the flashed factory image then booted.So l thought this would be a useful option for you to add.
Click to expand...
Click to collapse
Yeah, but that was not my question, I hear you, you have a legitimate need, but I need to know an answer to this
Which you quoted but did not answer.
I'm also curious if you're using the latest Magisk 24301 because that problem should have been addressed by Magisk.
@bush911
Same concern, if the device is not in bootloader mode after applying the ROM, and the device is boot looping, and you have to manually get the phone out of boot loop and reboot to bootloader, then adding the option is kind of moot.
As for UI, is it really necessary? once you add it to the preferences file, it will remember and use it all the time.
badabing2003 said:
Yeah, but that was not my question, I hear you, you have a legitimate need, but I need to know an answer to this
Which you quoted but did not answer.
I'm also curious if you're using the latest Magisk 24301 because that problem should have been addressed by Magisk.
@bush911
Same concern, if the device is not in bootloader mode after applying the ROM, and the device is boot looping, and you have to manually get the phone out of boot loop and reboot to bootloader, then adding the option is kind of moot.
As for UI, is it really necessary? once you add it to the preferences file, it will remember and use it all the time.
Click to expand...
Click to collapse
Yeah sorry my friend using the XDA app it's a nightmaret anyway it completes the flash then just hangs on the your device is corrupted screen. I have been using the flash all .bat as well to flash.

[A/B][A-ONLY][SCRIPT][READ-ONLY][EROFS][ANDROID 10+] Universal Disable Force Encryption for RO and RW "NEO STABLE"

Disable Force Encryption NEO​Do you all know what DFE is? no?
Anyway. Basically, your device has an encrypted data section "/data" by default. Let's look at the advantages of google's solution that we will lose after disabling encryption:
- Confidence in data retention. Even if your device has TWRP/OFOX or other custom Recvoery, before accessing your data, you will need to enter the password from the lockscreen, otherwise it will be impossible to read the data.
What disadvantages follow from this?
- As an enthusiast who wants to flash different ROMs, you may have noticed that every time that you flash a new ROM, you have to format the "/data" section. Which can be a pain.
Why is it necessary to do this?
- The fact that every ROM is assembled/compiled on a different database and may have different approaches (encryption keys) for data encryption. In order for this to work you need to format the data partition so that when the new ROM boots it can encrypt the system with its own unique encryption keys, so that the integrity of the data partition is maintained and it is accessible to the user.
So what does the DFE do?
- Removes the keys that are used to encrypt the data section from the fstab file
Read more about fstab here source.android.com
What are the advantages of using DFE?
- You don't need to FORMAT the data in the following cases:
*If you change the android database (From 11 to 12 and vice versa)
*If you change vendor database, miui/aosp/OOS/LOS and so on
*** !!!! You will still need to make wipe data for the ROM to work correctly
-There are also disadvantages:
*Since the data is not encrypted in any way, then access to them is free. Anyone who gets access to your device will be able to access ALL the data
*You need to carefully monitor the sequence of actions when installing or changing the ROM, so that the DFE is active, otherwise you may lose data because the data will try to be encrypted again, you will get a bootloop, and all data will be lost
What is DFE-NEO?
*Many people know DFE from this thread XDA, it has stopped working for A/B devices with dynamic partitions, there is also a problem that in some ROMs the system has the RO(Read-Only) status of the system partition. Starting with A13 Google will promote EROFS(Enhanced Read-Only File System) which will not be possible to manipulate without first converting to EXT4, in order to change the status to RW(Read-Write). Because of this, it is not possible to modify fstab directly in 100% of cases. This is where DFE-NEO comes in.
*The NEO method works by utilizing Magiskinit and Overlay.d GitHub
How does it work without Magisk?
*In fact, in no way. If my script does not detect magisk in the boot_a/Boot_b section, magisk will be installed, after which the main bianrys files will be deleted, so there will be no root access but magiskinit itself will continue to work. In this regard, the system boot time will be longer by 40-50 seconds ( from the brand logo )
And so what can this script do:
-Hides Encryption - Forces the system to think that the data is encrypted.
-Reflash recovery after OTA - only for devices with recovery in boot_a/_b
-Flash current recovery - only for devices with recovery in boot_a/_b
-Flash DFE
-Flash magisk
Spoiler: Arguments.txt
{
"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"
}
If you want to change the parameters , then you need to change the file argumetns.txt inside the archive , or put the modified arguments.txt to the archive, or to rebuild the archive with the changed argumetns.txt
Code:
# legacy or neo
DFE method=neo
# both | in-current | un-current
Flash SLOT=both
# none|system|bootloader|recovery
Reboot after installing=none
# You can add your own language, to do this, just drop
a file into the language folder by analogy with the topic
that is already there
# indo|russian|english
Language=english
Code:
# ================================================== #
Force reading arguments.txt=false
# ================================================== #
Flash DFE= true
Disable AVB= true
Disable QUOTA= true
Hide not encrypted= true
# ================================================== #
Flash Magisk= false
# ================================================== #
Reflash Recovery for OTA= false
Reflash current Recovery for Recovery= false
# ================================================== #
Wipe DATA= false
Remove PIN= false
# ================================================== #
Skip warning= false
Modes of operation of these parameters
These parameters have two modes:
• true (yes, true),
• false(no, not true)
Exceptions for specific parameters
• DFE method(DFE method)= neo(new method)
Another argument for DFE method
legacy(old method)
• Flash slot= both (patching boot_a and boot_b sections, also applies to magisk firmware, twrp)
More arguments for Flash slot
• in-current (patching of the boot_x section, where x is the current slot, also applies to magisk firmware, twrp)
• un-current (patching the boot_x partition, where x is the opposite slot)
• Reboot after installing(Reboot after installation)= none (no, that is, there will be no reboot)
More arguments for Reboot after installing
• system(restart into the system, simple reboot)
• bootloader (reboot to fastboot mode)
• recovery (reboot into recovery mode)
• Language(installer language)=english(English)
More arguments for Language
• indo(Indonesian)
• russian (Russian language)
So we have sorted out the modes of operation of all parameters. Now, what does each of them mean.
The values of these parameters
Here the functions of the parameters are described in true mode, for exceptions depending on the mode of operation of the parameter
• DFE method - DFE patching method
• Flash slot - patching the boot partition
• Reboot after installing - reboot after installation
• DISABLE DINAMIC REFRESHRATE - disable dynamic screen formatting, ONLY FOR MIUI
• Language - the language of the installer
• Force reading arguments.txt - dfe-neo will immediately address the arguments in arguments.txt without the possibility of creating a temporary arguments.txt
• Flash DFE - DFE firmware
• Hide not encrypted - The ROM will think that encryption is enabled
• Skip warning - at the end, a guide will be shown on the correct use of dfe after firmware
• Reflash recovery for ota - reinstalling recovery after ota updates, according to the Flash slot parameter mode=
• Reflash current Recovery for Recovery - flash the current recovery, according to the Flash slot parameter mode=
• Wipe DATA - deleting the contents of the /data section without formatting the internal memory (where the Android, Downloads, Music, etc. folders are located) If you sew DFE for the first time, then we still do format data
• Remove PIN - remove password
• Disable AVB - system integrity check is disabled (or whatever you call it, you can set false if you flash magisk)
• Disable QUOTA - (to be honest, I didn't understand what it was, but you can leave it true)
• Flash Magisk - Installing Magisk, according to the Flash slot parameter mode=
And you can also set up your own temporary arguments.txt during installation:
In DFE-NEO, in addition to using arguments.txt in .zip archive, you can still set up your temporary one.
Launch the dfe-neo archive and select Configure Arguments now ( volume + >> volume - )
And we are offered to configure the parameters.
Volume + indicates change
Volume - indicates select
What should I choose DFE method= neo or legacy?
• Neo method - patches the boot partition, we leave neo if the system partitions are read-only, also suitable if the system partitions are editable
• Legacy method - patches fstab.qcom in the /vendor/etc/ section, this method cannot be used if the system partitions are read-only.
Also be careful and read what the script writes at the end of the installation
If you data is encrypted, then after flashing DFE you need to format data
If DFE was installed with Magisk you can upgrade or downgrade the Magisk version later without flashing DFE again
If you uninstall Magisk via uninstall or Magisk app Then the DFE will stop its work! In this case, you will need to flash the DFE again
If DFE was WITHOUT Magisk, it WILL work, but you can also install Magisk later. And also follow the warning 1 and 2
If you install TWRP or another custom recovery, then DFE by analogy with Magisk, will stop working
If you update/Install a new ROM, then DFE will need to be flashed again, by analogy with Magisk
You can install DFE as a magisk module. BUT THIS IS NOT A MODULE, BUT JUST AN INTERFACE FOR INSTALLATION
Demo vido: https://t.me/mfpupdate/22
And also you can flash as a regular zip archive via TWRP, while you do not have to reboot TWRP.
The work consists of the same mechanism as Magisk. If your recovery is located in boot, then after updating / flashing twrp, just like magisk, dfe will be overwritten
After updating/changing ROM you need to reflash dfe again
You can flash dfe without rebooting twrp
No needed for system to be RW for DFE to work
Support erofs
Support flashing from magisk app ( like module magisk )
Later from the computer I will supplement the post. I will add screenshots, etc.
Download link - SourceForge
TG group : @PocoF3DFE
Donate only TG link https://t.me/mfpupdate/47
Great job Alexey. Very useful mod
LeeGarChat said:
Hello everyone, I am writing a script to disable encryption on A/B devices. if you help me with testing on other devices, I will be glad, at the moment it works fine for Poco f3 ( Alioth/Aliothin ). I'm sure it will work just as well on other devices.
And so what can this script:
Hide no encrypted - Forces the system to think that the data is encrypted.
Reflash recovery after OTA - only for devices with recovery into boot_a/_b
Flash current recovery - only for devices with recovery into boot_a/_b
Flash DFE
Flash magisk
The work consists of the same mechanism as Magisk. If u recovery if your recovery is located in boot, then after updating / flashing twrp, just like magisk, dfe will turn off
After update/change ROM u need reflash dfe
You can flashing dfe without reboot twrp
No needed RW system
Support erofs
Support flashing from magisk app ( like module magisk )
Later from the computer I will supplement the post. I will add screenshots, etc.
TG group : @PocoF3DFE
Click to expand...
Click to collapse
Great job bro its perfectly work on my Redmi Note 11 Spes, thanks buddy
sorry for my noob question:does it solove the read-only attribute for erofs partion,my phone is civi (code mona)
wsdyleon said:
sorry for my noob question:does it solove the read-only attribute for erofs partion,my phone is civi (code mona)
Click to expand...
Click to collapse
Yes, if I understand u. Anyway it's working on RW system and RO system. But anyway waiting 0.8.0 beta, because in > 0.7.0 patching only boot partitions, I think need patching recovery partition for device with recovery
LeeGarChat said:
Yes, if I understand u. Anyway it's working on RW system and RO system. But anyway waiting 0.8.0 beta, because in > 0.7.0 patching only boot partitions, I think need patching recovery partition for device with recovery
Click to expand...
Click to collapse
thank u for your answer,but i donnt konw how to flash it.i flash"dfe+magisk+reflash"on my phone in twrp,but bootloop for me
LeeGarChat said:
Yes, if I understand u. Anyway it's working on RW system and RO system. But anyway waiting 0.8.0 beta, because in > 0.7.0 patching only boot partitions, I think need patching recovery partition for device with recovery
Click to expand...
Click to collapse
my english still sucks,after flashing the zip ,the ro system would still ro,just dfe。am i right?
LeeGarChat said:
Download link - SourceForge
Click to expand...
Click to collapse
Great and Congrats!
Can you explain about each zip file made?
Is there a situation for each file?
What does each file do exactly?
Which file should I choose?
----------------------------------------
UPD.
Okay OP. Good work but have consequencies........
Here what I made:
installed magisk;
installed DFE-NEO-0.7.0-BETA+HNE.zip via magisk - modules;
Rebooted device.
Problem: Red message in the screen (look attached SS).
Solved with:
USB Debugging enable;​Permission adb Okay;​cmd command:​
Code:
D:\Program Android\platform-tools>adb shell
Mydevice:/ $ pm list packages
package:com.google.android.networkstack.tethering
package:com.android.fmradio
package:com.android.temperature
[...]
package:com.android.theme.icon_pack.filled.settings
package:com.android.watermark
package:com.android.dreams.basic
[...]
Mydevice:/ $ pm uninstall --user 0 com.android.watermark
Success
127|Mydevice:/ $ exit
D:\Program Android\platform-tools>adb reboot
D:\Program Android\platform-tools>
Reboot device and Red message good bye.
My device fir reference: MTK arm64 -- armv8-a - A11 - TWRP AB - ro.virtual_ab.enabled=true
lopestom said:
Great and Congrats!
Can you explain about each zip file made?
Is there a situation for each file?
What does each file do exactly?
Which file should I choose?
----------------------------------------
UPD.
Okay OP. Good work but have consequencies........
Here what I made:
installed magisk;
installed DFE-NEO-0.7.0-BETA+HNE.zip via magisk - modules;
Rebooted device.
Problem: Red message in the screen (look attached SS).
Solved with:
USB Debugging enable;​Permission adb Okay;​cmd command:​
Code:
D:\Program Android\platform-tools>adb shell
Mydevice:/ $ pm list packages
package:com.google.android.networkstack.tethering
package:com.android.fmradio
package:com.android.temperature
[...]
package:com.android.theme.icon_pack.filled.settings
package:com.android.watermark
package:com.android.dreams.basic
[...]
Mydevice:/ $ pm uninstall --user 0 com.android.watermark
Success
127|Mydevice:/ $ exit
D:\Program Android\platform-tools>adb reboot
D:\Program Android\platform-tools>
Reboot device and Red message good bye.
My device fir reference: MTK arm64 -- armv8-a - A11 - TWRP AB - ro.virtual_ab.enabled=true
Click to expand...
Click to collapse
Thanks for feedback. I'll try fix it. After installing DFE noe, is your device no longer encrypted?
LeeGarChat said:
Thanks for feedback. I'll try fix it. After installing DFE noe, is your device no longer encrypted?
Click to expand...
Click to collapse
I can make backup of Data now with TWRP.
But..........
I need to do more testing regarding the ROM.
I fixed a reset - FORMAT DATA with TWRP to see/test if everything would work fine after that.
Knowing that there would be a possibility it might not work, re-install your zip file and reboot to test again.
So there's a big problem: - WiFi connection doesn't work
- going to settings - Security - Encryption&credentials =====>>> Black Screen .......... stop ............ go back setting automatically
- others??
Do not worry about me. I have experience in getting the device running normally. The device is also not for my daily use.
So I will need time for more testing or you should write for users not to do a factory reset.
lopestom said:
I can make backup of Data now with TWRP.
But..........
I need to do more testing regarding the ROM.
I fixed a reset - FORMAT DATA with TWRP to see/test if everything would work fine after that.
Knowing that there would be a possibility it might not work, re-install your zip file and reboot to test again.
So there's a big problem: - WiFi connection doesn't work
- going to settings - Security - Encryption&credentials =====>>> Black Screen .......... stop ............ go back setting automatically
- others??
Do not worry about me. I have experience in getting the device running normally. The device is also not for my daily use.
So I will need time for more testing or you should write for users not to do a factory reset.
Click to expand...
Click to collapse
Send me download link on you ROM. I'll check structure
LeeGarChat said:
Send me download link on you ROM. I'll check structure
Click to expand...
Click to collapse
UMIDIGI Power 5 4GB_N_V1.0_20220315 - SPFT release
UMIDIGI_POWER5_4GB_N_V1-0_20220315.rar
Great.
lopestom said:
I can make backup of Data now with TWRP.
But..........
I need to do more testing regarding the ROM.
I fixed a reset - FORMAT DATA with TWRP to see/test if everything would work fine after that.
Knowing that there would be a possibility it might not work, re-install your zip file and reboot to test again.
So there's a big problem: - WiFi connection doesn't work
- going to settings - Security - Encryption&credentials =====>>> Black Screen .......... stop ............ go back setting automatically
- others??
Do not worry about me. I have experience in getting the device running normally. The device is also not for my daily use.
So I will need time for more testing or you should write for users not to do a factory reset.
Click to expand...
Click to collapse
Test 0.9.0 version please
LeeGarChat said:
Test 0.9.0 version please
Click to expand...
Click to collapse
Thanks man. I appreciate what you're doing.
I already tried with this and newer version DFE-NEO-0.10.1-BETA.zip having the same situation as before.
Unfortunately there is something that blocks the wifi working after installing DFE-NEO-x.xx.x-BETA.zip. Regarding this, I tested restoring the NVRAM, NVCFG and NVDATA files and the wifi started to work, however the part that DFE-NEO does is lost.
Is there something that DFE-NEO does with NvRam, NvCfg and NvData partitions?? Is it something that is a prerequisite for the ROM to work encrypted and consequently to work or not work the wifi?
I couldn't try all possibilities to investigate and test as I have been sick for a few days.
lopestom said:
Thanks man. I appreciate what you're doing.
I already tried with this and newer version DFE-NEO-0.10.1-BETA.zip having the same situation as before.
Unfortunately there is something that blocks the wifi working after installing DFE-NEO-x.xx.x-BETA.zip. Regarding this, I tested restoring the NVRAM, NVCFG and NVDATA files and the wifi started to work, however the part that DFE-NEO does is lost.
Is there something that DFE-NEO does with NvRam, NvCfg and NvData partitions?? Is it something that is a prerequisite for the ROM to work encrypted and consequently to work or not work the wifi?
I couldn't try all possibilities to investigate and test as I have been sick for a few days.
Click to expand...
Click to collapse
Some ROMs may not work correctly with DFE, due to the fact that the ROMs are designed to work with an encrypted data partition, or there are any protections. also, on some ROMs, the data split must be formatted according to the associated with certain keys -C and -O -g. DFE-NEO does not modify any partitions except boot, just like magisk. DFE-NEO works thanks to magisk-init, which allows you to run custom scripts during ROM startup. the script that is executed during system startup, makes a copy of fstab, deletes the encryption keys and mounts it in place of the original fstab, there is no full-fledged verification of the system. all work is based on magisk logic
Awesome job LeeGarChat, much appreciated by all users I have quoted your post link in other threads too so all can see the magic .
My device is Shamshung Galeksi M21 2021 (SM-M215G) But when I flashed from TWRP it showed some red error : 577 something like that, then when I flashed from Majisk it showed error code 3 : DFE-NEO only for virtual_ab devices
Treble Check shows my device is treble compliant having AB partition and TWRP displays following partitions: System, Vendor, Product, Odm, Cache, Data, EFS, Metadata, Sec EFS, Micro SD Card, USB OTG.
In my Shaomi Readmi Note 10 (mohito) TWRP displays Slot A & Slot B under Advanced Tab and ROMs get directly flashed to Inactive Slot B, also everytime I try flash new custom ROM I have to first flash MyUi Factory ROM and also System partition doesnt show in TWRP Mount section.
My question is what is the difference between Shamshung Galeksi M21 Android 11 out-of-box & Shaomi Readmi Note 10 Mohito ? why TWRP shows System partition mount in Shamshung and not in shaomi though both are A/B devices?
Pls help.
LeeGarChat said:
Some ROMs may not work correctly with DFE, due to the fact that the ROMs are designed to work with an encrypted data partition, or there are any protections. also, on some ROMs, the data split must be formatted according to the associated with certain keys -C and -O -g. DFE-NEO does not modify any partitions except boot, just like magisk. DFE-NEO works thanks to magisk-init, which allows you to run custom scripts during ROM startup. the script that is executed during system startup, makes a copy of fstab, deletes the encryption keys and mounts it in place of the original fstab, there is no full-fledged verification of the system. all work is based on magisk logic
Click to expand...
Click to collapse
Great News!
@2mkl and me solved the Wi-Fi issue......... But I not write here about.
Thanks again
lopestom said:
Great News!
@2mkl and me solved the Wi-Fi issue......... But I not write here about.
Thanks again
Click to expand...
Click to collapse
can you tell us in PM how you fixed the problems you wrote about earlier
History of updates and news
June 16
Update DFE-NEO 0.10.0 beta
- Added Feature, choose wether you want to flash DFE legacy / neo ( for legacy need RW system and not working with erofs)
july 14
Update dfe-neo beta 0.11.0
- Add magisk 25.1
- Add volume key selector
- Add remove lockscreen-pin select for key selector
july 20
Update dfe-neo beta 0.12.0
- Add new arguments:
- Wipe data
- Reboot after
july 22
DFE-NEO-0.12.4-BETA update
- Add additional settings (optional) like wipe data, reboot after
- Add disable dynamic refrash rate display ( only miui and works with dfe-neo method )
july 23
DFE-NEO-0.13.0-BETA update
- Add new arguments into arguments.txt, now u can change it without volume key
- Add new options "remove avb" " remove quota" ( default removed )
- The code has been slightly rewritten
- Update somthing patches for safety net fix based on later version 2.3.1 https://github.com/kdrag0n/safetynet-fix/releases/tag/v2.3.1
july 24
DFE-NEO-0.13.3-BETA update
- Minor fix
- Cleaning ui print
- Added calculation of script running time
july 25
I show by my example how to install a ROM in conjunction with DFE-NEO, as well as additional zips
Download DFE-NEO LINK ( Alway later version )
Thread XDA LINK
Please subscribe to the updates and news channel LINK
Thanks
july 28
DFE-NEO-0.14.0-BETA update
- Add language select ( it is currently configured only in the file arguments.txt )
Languages:
• Russian
• English
• Indo
• you can add your own language
- Fix ro.dfe.neo.state
- Add force reading arguments.txt
july 30
DFE-NEO-0.14.1-BETA update
- Reworked my_print function to work correctly in other languages. previously, it worked fine only with English
- Updated the Russian language. fixed typos
july 30
DFE-NEO-0.15.0-BETA update
- Add support A-Only devices
Languages v003:
- There was a bug with a large number of characters ****

Categories

Resources