Related
Right, so, through a bit of trial and error using guidance from the forums, this is how I updated to JB and kept root for WW after the update originally failed.
download BOTH files from here (massive thanks to ch3mn3y):
http://www25.zippyshare.com/v/91334594/file.html
http://www1.zippyshare.com/v/96461494/file.html
then extract the .zip file.
download the command file from here (massive thanks to krabappel2548):
http://www.mediafire.com/?yq1bt16mnm7tc8d
extract it.
place the dlpkgfile and command file, both unzipped onto your tab. Use a root explorer to paste the command file into /cache/recovery and the dlpkgfile (the actual file, not the folder) to /cache.
go to Voodoo OTA Rootkeeper and temp unroot.
turn off the tab.
boot into recovery with Vol - and power, then when it says to press volume up to boot into RCK, do it.
You'll see the android with the blue wires and it will go through the install process if you have done it right. let it do its thing.
obviously, when it has settled, restore root with Voodoo.
If you get the android with red exclamation mark, i reccomend downloading the ICS zip of your current firmware and SKU and sticking it on a micro SD card, and letting it restore any programmes you've deleted.
rickykemp said:
Right, so, through a bit of trial and error using guidance from the forums, this is how I updated to JB and kept root for WW after the update originally failed.
download BOTH files from here (massive thanks to ch3mn3y):
http://www25.zippyshare.com/v/91334594/file.html
http://www1.zippyshare.com/v/96461494/file.html
then extract the .zip file.
download the command file from here (massive thanks to krabappel2548):
http://www.mediafire.com/?yq1bt16mnm7tc8d
extract it.
place the dlpkgfile and command file, both unzipped onto your tab. Use a root explorer to paste the command file into /cache/recovery and the dlpkgfile (the actual file, not the folder) to /cache.
go to Voodoo OTA Rootkeeper and temp unroot.
turn off the tab.
boot into recovery with Vol - and power, then when it says to press volume up to boot into RCK, do it.
You'll see the android with the blue wires and it will go through the install process if you have done it right. let it do its thing.
obviously, when it has settled, restore root with Voodoo.
If you get the android with red exclamation mark, i reccomend downloading the ICS zip of your current firmware and SKU and sticking it on a micro SD card, and letting it restore any programmes you've deleted.
Click to expand...
Click to collapse
Will your last line lose root on us, or will voodoo root keeper save it via that or does it wipe/reset the entire system?
Ashcunak said:
Will your last line lose root on us, or will voodoo root keeper save it via that or does it wipe/reset the entire system?
Click to expand...
Click to collapse
When i ran ran the zip of .30 i did lose root, but it was easily restored using 1 click transformer root.
I tried it twice but it always failed at about 1/3 of the process... Hopefully I can reboot w/ any damage...
WHY!?? :'(
Btw here's the part of the log where it shows the failure in installation:
I:Enable RSA key verification.
Installing update...
Finding update package...
I:Update location: /cache/dlpkgfile
Opening update package...
I:1 key(s) loaded from /res/keys
Verifying update package...
I:comment is 1682 bytes; signature 1664 bytes from end
I:whole-file signature verified against key 0
I:verify_file returned 0
Installing update...
Check : blob size = 13104069
Verifying current system...
file "/system/lib/libGLESv1_CM.so" doesn't have any of expected sha1 sums; checking cache
failed to stat "/cache/saved.file": No such file or directory
failed to load cache file
script aborted: assert failed: apply_patch_check("/system/lib/libGLESv1_CM.so", "ed4c7834196831836c73d0374529a0278c2fa91c", "a52756f5a63c9827632587d025ee28f67739bd97")
assert failed: apply_patch_check("/system/lib/libGLESv1_CM.so", "ed4c7834196831836c73d0374529a0278c2fa91c", "a52756f5a63c9827632587d025ee28f67739bd97")
E:Error in /cache/dlpkgfile
(Status 7)
Installation aborted.
I:result_code: 410
Check and format /storage to vfat if needed...
Mount /btmac successfully
Done
Btw the command file is just a file with content --update_package=/cache/dlpkgfile in it.
You can create it with notepad, save as .txt, and remove the .txt
rickykemp said:
When i ran ran the zip of .30 i did lose root, but it was easily restored using 1 click transformer root.
Click to expand...
Click to collapse
OH, wow, im so outa date thanks, i rooted on the first revision that came out and havent really watched whats out there for root options. i see this now thanks so much i was worried id have to all sorts of downgrading. link for anyone else whos "outa it" like me http://forum.xda-developers.com/showthread.php?p=26918790
WIIstpM said:
file "/system/app/Music2.apk" doesn't have any of expected sha1 sums; checking cache
failed to stat "/cache/saved.file": No such file or directory
failed to load cache file
script aborted: assert failed: apply_patch_check("/system/app/Music2.apk", "c9bc168a88b5106e0e04f8e70023a4c33009021b", "cbb199983ab1cb9beee6b20ec4db659ccd49d757")
assert failed: apply_patch_check("/system/app/Music2.apk", "c9bc168a88b5106e0e04f8e70023a4c33009021b", "cbb199983ab1cb9beee6b20ec4db659ccd49d757")
Click to expand...
Click to collapse
Maybe u delete or freeze Music2.apk? First time when i forget to unfreeze /system apps my update failed too (but i dont remember when).
ch3mn3y said:
Maybe u delete or freeze Music2.apk? First time when i forget to unfreeze /system apps my update failed too (but i dont remember when).
Click to expand...
Click to collapse
I think I found the problem: I remember I pushed jelly bean's music2.apk in system/app! Restored the original music app.
Gonna try update again!
Now it the turn of libGLESv1_CM.so ...
Going to give it a try.
Just to make sure, is this for WW version, right?
ch3mn3y said:
Maybe u delete or freeze Music2.apk? First time when i forget to unfreeze /system apps my update failed too (but i dont remember when).
Click to expand...
Click to collapse
MM the Music app problem is resolved.. but now the same thing happens but with "/system/lib/libGLESv1_CM.so"
...
Tequila.CZ said:
Going to give it a try.
Just to make sure, is this for WW version, right?
Click to expand...
Click to collapse
Yep.
Thanks.
Looking good., but got this error:
file "/system/app/EmailWidget.apk" doesn't have any of expected sha1 sums; checking cache
failed to stat "/cache/saved.file": No such file or directory
failed to load cache file
script aborted: assert failed: apply_patch_check("/system/app/EmailWidget.apk", "5655101db862ccc0b2e60bd8ee276192f80e0ac7", "25adaa94e23e2aa87a7dd7f01956ccbabbb960fc")
assert failed: apply_patch_check("/system/app/EmailWidget.apk", "5655101db862ccc0b2e60bd8ee276192f80e0ac7", "25adaa94e23e2aa87a7dd7f01956ccbabbb960fc")
E:Error in /cache/dlpkgfile
Already got this before my update notification stopped working.
I deleted Email app, returned it back to system but seems I dont have the right version. (found in someones dropbox posted here)
Also reflashed Ww. 30 hoping this would overwrite the widget with correct version. Obviously it did not...
Would be glad for any help.
As it is MY dlpkgfile it can need MY files. I could upload /system, but first its strange to copy/paste whole android and second it is 624mb and third it will work only for rooted and at least fourth i updated my pad.
If it helps my pad was reflashed to .30 using wolfs method cos i had screen issue.
Sent using tf300t - stock JellyBean (rooted)
ch3mn3y said:
As it is MY dlpkgfile it can need MY files. I could upload /system, but first its strange to copy/paste whole android and second it is 624mb and third it will work only for rooted and at least fourth i updated my pad.
If it helps my pad was reflashed to .30 using wolfs method cos i had screen issue.
Sent using tf300t - stock JellyBean (rooted)
Click to expand...
Click to collapse
Could you please try to upload just the EmailWidget?
When I tried using OTA I got an error on Email.apk first. Then I downloaded it from dropbox and it passed. But EmailWidget did unfortunately not.
Also trying to find a tool that could extract the .30blob file. I guess the apps should be there. Found something but probably Linux only so no go for me.
You guys made my day! I had the red triangle and couldn`t get the update anymore. Tried everything, nothing worked.
Now I just followed your guide, dl. your files and all went fine.
So sad I was ony able to hit the Tanks-button once. Thank you thousand times!
Sent from my ASUS Transformer Pad TF300T using Tapatalk 2
Here is emailwidget .apk and .odex but from jb not ics cos i didnt made a backup. But i think that it wasnt changed.
http://db.tt/cYSWYcXo
Sent using tf300t - stock JellyBean (rooted)
ch3mn3y said:
Here is emailwidget .apk and .odex but from jb not ics cos i didnt made a backup. But i think that it wasnt changed.
http://db.tt/cYSWYcXo
Sent using tf300t - stock JellyBean (rooted)
Click to expand...
Click to collapse
Oh man. I love you. Here I come on JB!
The EmailWidget was the missing piece.
Big thanks to rickykem, ch3mn3y and overyone who helped to create this workaround!
y17dt said:
You guys made my day! I had the red triangle and couldn`t get the update anymore. Tried everything, nothing worked.
Now I just followed your guide, dl. your files and all went fine.
So sad I was ony able to hit the Tanks-button once. Thank you thousand times!
Sent from my ASUS Transformer Pad TF300T using Tapatalk 2
Click to expand...
Click to collapse
+1:good:
Can someone post the original /system/lib/libGLESv1_CM.so pleeease...
Sent from my LG-P970 using xda premium
WIIstpM said:
Can someone post the original /system/lib/libGLESv1_CM.so pleeease...
Sent from my LG-P970 using xda premium
Click to expand...
Click to collapse
I only have it from JB. Unfortunately it seems the file was updated together with the system so it will most probably be useless.
Don't have a libs backup from WW.30
WIIstpM said:
Can someone post the original /system/lib/libGLESv1_CM.so pleeease...
Sent from my LG-P970 using xda premium
Click to expand...
Click to collapse
Here you go, from ICS:
http://db.tt/z5B5Q3jL
Trimis de pe ASUS Transformer Pad TF300T
I received a notification for ota update and it failed, im not sure why is there a way to fix it?
See attachment of error
I suspect you renamed (or deleted) the BrowserProviderProxy apk and odex files to sideload the gnex browser and flash. I had done the same and my OTA failed with the same error. I renamed the browser.apk adding a .bak to the name and renamed my BrowserProviderProxy files back to the .apk and .odex extensions, and restarted. Then I copied the update zip from the /cache folder to the root folder and booted into recovery. Installed the zip in recovery and all was well. I used cwm recovery through Rom Manager and I had installed and run Voodoo OTA Rootkeeper before starting. I chose not to flash a new recovery and yes to trying to keep root after the update process.
Groid said:
I suspect you renamed (or deleted) the BrowserProviderProxy apk and odex files to sideload the gnex browser and flash. I had done the same and my OTA failed with the same error. I renamed the browser.apk adding a .bak to the name and renamed my BrowserProviderProxy files back to the .apk and .odex extensions, and restarted. Then I copied the update zip from the /cache folder to the root folder and booted into recovery. Installed the zip in recovery and all was well. I used cwm recovery through Rom Manager and I had installed and run Voodoo OTA Rootkeeper before starting. I chose not to flash a new recovery and yes to trying to keep root after the update process.
Click to expand...
Click to collapse
Thanks but now I'm getting this error, if someone has stock Gapps from 4.1.1 it would be great if they could send me the link for it ...I think that would help
racer321 said:
Thanks but now I'm getting this error, if someone has stock Gapps from 4.1.1 it would be great if they could send me the link for it ...I think that would help
Click to expand...
Click to collapse
There are 237 assertions in the OTA update... Might be easier to just restore to stock 4.1.1 then update.
comminus said:
There are 237 assertions in the OTA update... Might be easier to just restore to stock 4.1.1 then update.
Click to expand...
Click to collapse
Wouldn't I loose all my data though :/
racer321 said:
Wouldn't I loose all my data though :/
Click to expand...
Click to collapse
Yeah... but you gave me an idea. I took the list of files to be patched from the OTA and made a cwm flashable zip with the 4.1.2 versions of the files, the kernel and bootloader. Since these are complete files, there are no patches which means the only assertions are to make sure it runs on a grouper device.
I've run it a few time myself and it seems to work fine. If you want to be a guinea pig and test it out, send me a PM and I'll send you a link.
Overview:
This thread is a guide on how to fix the apply_patch_check error message experienced during an upgrade of the Android OS. Specifically, this will detail the steps for an upgrade of Jelly Bean from 4.1.1 to 4.1.2 on the Nexus 7 with CWM Recovery for a user of Windows. I'm sure similar steps will work for other recoveries/upgrades/devices and PC OSes.
You should only bother with this if you don't want to flash the entire system.img file to your phone, which is way easier.
Here is an example of the error message I'm talking about:
Code:
assert failed: apply_patch_check("/system/app/Chrome.apk", "819b34b66335c6faec86404d736a002b8871600", "9d6b55e63b0bf20bea433fb1ee7089f88ab73fb6")
E: Error in /sdcard/03a4eaf95f73.signed-nakasi-JZO54K-from-JRO03D.03a4eaf9.zip
(Status 7)
Installation aborted.
A few notes about the error:
This doesn't have to happen with the Chrome.apk specifically -- it could happen with any app in /system/app or .so in /system/lib.
Those random strings of numbers/letters are SHA-1 hashes of the apk.
The first one is the hash of the apk installed on your device. In my example, this happens to be the version of Chrome that comes with JB 4.1.2.
The second one is the expected hash of the apk that comes with JB 4.1.1.
Cause of the problem:
The reason this error occurs is because the file was somehow modified from its original state. In my case -- and most likely your case -- this was done by Titanium Backup. TB has an option to "Integrate updates of system apps into ROM", which will cause the apk in /system/app (and associated library files in /system/lib, if needed) to be overwritten with the updated apk.
Solution:
Download this zip file which contains the full /system/app and /system/lib directory from the JB 4.1.1 factory image. *
Extract the zip to a location of your choosing on your PC.
In the extracted folder, locate the .apk or .so file referenced in the error message on your device.
Copy this file to your device via your preferred method (USB cable works fine). I put my file in /sdcard/Download.
On your device, use a root file explorer to move the file from /sdcard/Download to /system/app (or /system/lib).
If you don't have a program that can do this, I use ES File Explorer. Be sure to go to Settings > Root Settings and turn on Root Explorer, Up to Root, and Mount File System.
Reboot into your Recovery and try to install the update again.
Repeat steps 3-6 for each subsequent file that produces an error. You will basically need to do this for each app you integrated using TB and maybe a few library files, too. **
* Future updates (above 4.1.2):
Since I won't be keeping the zip file from step #1 up-to-date, here's how to get the directories that I included in the zip for yourself:
Obtain a factory image for your device's current Android version (the version you're updating from).
For JB 4.1.1, this file is called nakasi-jro03d-factory-e102ba72.tgz.
If you're reading this guide at a later date, the JB 4.1.2 file is called nakasi-jzo54k-factory-973f190e.tgz.
You can try your luck at the official Google site, but they seem to only provide the version you're trying to update to, not from.
Extract the .tgz file somewhere on your PC.
Locate the image-naksi-jro03d.zip file and extract that, as well.
In the folder you just extracted from the previous step, located the system.img file.
Download and use a program called sgs2toext4 (View attachment 645320) to convert the system.img to system.ext4.img. ***
Download and use a program called Linux Reader to open system.ext4.img.
Do this by going to Drives > Mount Image > Next > select your file.
It will then be listed under the Hard Disk Drives section in red as "Linux Ext Volume 1".
Navigate to: Linux Ext Volume 1/system.
Right-click on the app (or lib) directory and pick Save > Next > Output to dir of your choice.
You now have the directories that were included with the zip file from Solution step #1, so just follow those steps now.
** How to avoid repeating steps:
If you'd rather not have to try to reinstall after updating only one file, just to find another file that needs updating, try this:
Obtain the /system/app and /system/lib folders from the factory image and save them to your PC.
For the sake of this guide, let's say you save them to C:\factory_app and C:\factory_lib.
Copy the /system/app and /system/lib directories from your phone to your PC.
For the sake of this guide, let's say you saved them to C:\phone_app and C:\phone_lib.
Download the File Checksum Integrity Verifier utility from Microsoft.
Start > Run > cmd
fciv.exe -sha1 -xml factory_app.xml -wp C:\factory_app
fciv.exe -sha1 -xml factory_app.xml -v -bp C:\phone_app
Don't ask me why, but you need to use -bp instead of -wp for the second command.
Don't forget the -v on the second command.
The output of the last command will show you the list of files that are different. These are the files you need to take from C:\factory_app and put into the /system/app directory on your phone.
Do the same for the lib directories (just replace all instances of "_app" with "_lib" in the previous commands).
Summary:
I hope that this post helped some of you who really didn't want to have to flash the system.img or wipe your device just to update. In the future, use TB to back up the original.
I wouldn't normally bother writing up a guide like this (it took almost as long to write as it did to figure out how to do this) but I couldn't find this solution anywhere even though I saw that I wasn't the only person with the problem. Sorry for not posting this guide sooner (update has been out for a while now), but the forum required me to make a bunch of useless spam posts before I could include any links in my guide and I didn't get around to making those posts right away.
*** I would like to thank balamu96m for his guide on extracting data from the system.img file and drphrozen for making the sgs2toext4 program.
Thanks for this. Will try now.
Worked great. Had to copy the apk and odex file.
Good job! It's great to see the steps for Windows users!
Just a heads up that I simply extracted the files I needed from and on my N7 using Root Explorer, without using my PC at all.
Great guide! Method worked perfectly on my Nexus 7 going from 4.1.2 to 4.2, thanks
Please... is there some other way to update the files w/o installing Java on my Windoze PeeCee? I accidentally messed up my YouTube.apk with Titanium Backup... now I can't update from 4.1.2 --> 4.2 JB.
EDIT: JavaPortable FTW... updating (fingers crossed)
EDIT: SUCCESS TY OP!
For anyone who flashed the 4.2 clock/keyboard already
Hey, for anyone who flashed the 4.2 clock and keyboard on their Nexus 7 already and need to roll back to do the 4.2 update, I used OP's method to make a flashable zip that puts the 4.1.2 clock and keyboard back.
Worked perfectly for my Nexus 7 to get me up and running. Hope it helps anyone!
cantthinkofa.com/files/RestoreClockKeyboard.zip
galaxy nexus
Hi can you post a guide for galaxy nexus? Or if it is the same, can you post the link of JB factory image for galaxy nexus? Sorry, I can't find any thread for galaxy nexus, and I don't want to complete flash the stock image since I don't want to wipe my phone.
Thanks in advance!
Nice Guide
perfect, the guide works just fine. Now finally running 4.2.
Awesome guide... Thanks... Happily running 4.2 now aften beeing stuck at libutils.so...
Sent from my Nexus 7 using xda premium
damagno said:
Hi can you post a guide for galaxy nexus? Or if it is the same, can you post the link of JB factory image for galaxy nexus? Sorry, I can't find any thread for galaxy nexus, and I don't want to complete flash the stock image since I don't want to wipe my phone.
Thanks in advance!
Click to expand...
Click to collapse
I don't have a Galazy Nexus, but I think the steps should be the same. Here is a link to the factory images: https://developers.google.com/android/nexus/images#takju . It looks like they now have links for older versions, rather than just the newest images (which is how it was when I made my guide). So that's pretty sweet.
Thanks a lot man, i succeeded to "patch" my system files to update from 4.2 to 4.2.1. I first check what files didn't correspond with fciv (9 files counting both apks and odex) and then replaced them in system/app. In fact they were the apps I previously integrated with tb (learned lesson: never do it if you want to remain stock and receive OTAs). I also noticed many not-matching files in system/lib but i didn't touch them and the update went smooth the same.
Another thing: when in the OP you say it's way easier just to reflash the system.img you mean just run from bootloader "fastboot flash system system.img" (taken from the factory image as usual) or there's some other thing to do in order to fix the system partition in the right way?
GallStones said:
Thanks a lot man, i succeeded to "patch" my system files to update from 4.2 to 4.2.1.
Click to expand...
Click to collapse
I was wondering if you could tell me how you did it? I'm searching a way to install 4.2.1 with no avail as of yet :crying:
GallStones said:
Thanks a lot man, i succeeded to "patch" my system files to update from 4.2 to 4.2.1. I first check what files didn't correspond with fciv (9 files counting both apks and odex) and then replaced them in system/app. In fact they were the apps I previously integrated with tb (learned lesson: never do it if you want to remain stock and receive OTAs). I also noticed many not-matching files in system/lib but i didn't touch them and the update went smooth the same.
Another thing: when in the OP you say it's way easier just to reflash the system.img you mean just run from bootloader "fastboot flash system system.img" (taken from the factory image as usual) or there's some other thing to do in order to fix the system partition in the right way?
Click to expand...
Click to collapse
Yes. I am having the same issue. I cannot update mine from 4.2 to 4.2.1. I wonder to know which original stock image you have used. Can you list a detail procedure?
Thank you very much.
Ric
dev/block/param
legom said:
Overview:
This thread is a guide on how to fix the apply_patch_check error message experienced during an upgrade of the Android OS. Specifically, this will detail the steps for an upgrade of Jelly Bean from 4.1.1 to 4.1.2 on the Nexus 7 with CWM Recovery for a user of Windows. I'm sure similar steps will work for other recoveries/upgrades/devices and PC OSes.
You should only bother with this if you don't want to flash the entire system.img file to your phone, which is way easier.
Here is an example of the error message I'm talking about:
Code:
assert failed: apply_patch_check("/system/app/Chrome.apk", "819b34b66335c6faec86404d736a002b8871600", "9d6b55e63b0bf20bea433fb1ee7089f88ab73fb6")
E: Error in /sdcard/03a4eaf95f73.signed-nakasi-JZO54K-from-JRO03D.03a4eaf9.zip
(Status 7)
Installation aborted.
A few notes about the error:
This doesn't have to happen with the Chrome.apk specifically -- it could happen with any app in /system/app or .so in /system/lib.
Those random strings of numbers/letters are SHA-1 hashes of the apk.
The first one is the hash of the apk installed on your device. In my example, this happens to be the version of Chrome that comes with JB 4.1.2.
The second one is the expected hash of the apk that comes with JB 4.1.1.
Cause of the problem:
The reason this error occurs is because the file was somehow modified from its original state. In my case -- and most likely your case -- this was done by Titanium Backup. TB has an option to "Integrate updates of system apps into ROM", which will cause the apk in /system/app (and associated library files in /system/lib, if needed) to be overwritten with the updated apk.
Solution:
Download this zip file which contains the full /system/app and /system/lib directory from the JB 4.1.1 factory image. *
Extract the zip to a location of your choosing on your PC.
In the extracted folder, locate the .apk or .so file referenced in the error message on your device.
Copy this file to your device via your preferred method (USB cable works fine). I put my file in /sdcard/Download.
On your device, use a root file explorer to move the file from /sdcard/Download to /system/app (or /system/lib).
If you don't have a program that can do this, I use ES File Explorer. Be sure to go to Settings > Root Settings and turn on Root Explorer, Up to Root, and Mount File System.
Reboot into your Recovery and try to install the update again.
Repeat steps 3-6 for each subsequent file that produces an error. You will basically need to do this for each app you integrated using TB and maybe a few library files, too. **
* Future updates (above 4.1.2):
Since I won't be keeping the zip file from step #1 up-to-date, here's how to get the directories that I included in the zip for yourself:
Obtain a factory image for your device's current Android version (the version you're updating from).
For JB 4.1.1, this file is called nakasi-jro03d-factory-e102ba72.tgz.
If you're reading this guide at a later date, the JB 4.1.2 file is called nakasi-jzo54k-factory-973f190e.tgz.
You can try your luck at the official Google site, but they seem to only provide the version you're trying to update to, not from.
Extract the .tgz file somewhere on your PC.
Locate the image-naksi-jro03d.zip file and extract that, as well.
In the folder you just extracted from the previous step, located the system.img file.
Download and use a program called sgs2toext4 (View attachment 645320) to convert the system.img to system.ext4.img. ***
Download and use a program called Linux Reader to open system.ext4.img.
Do this by going to Drives > Mount Image > Next > select your file.
It will then be listed under the Hard Disk Drives section in red as "Linux Ext Volume 1".
Navigate to: Linux Ext Volume 1/system.
Right-click on the app (or lib) directory and pick Save > Next > Output to dir of your choice.
You now have the directories that were included with the zip file from Solution step #1, so just follow those steps now.
** How to avoid repeating steps:
If you'd rather not have to try to reinstall after updating only one file, just to find another file that needs updating, try this:
Obtain the /system/app and /system/lib folders from the factory image and save them to your PC.
For the sake of this guide, let's say you save them to C:\factory_app and C:\factory_lib.
Copy the /system/app and /system/lib directories from your phone to your PC.
For the sake of this guide, let's say you saved them to C:\phone_app and C:\phone_lib.
Download the File Checksum Integrity Verifier utility from Microsoft.
Start > Run > cmd
fciv.exe -sha1 -xml factory_app.xml -wp C:\factory_app
fciv.exe -sha1 -xml factory_app.xml -v -bp C:\phone_app
Don't ask me why, but you need to use -bp instead of -wp for the second command.
Don't forget the -v on the second command.
The output of the last command will show you the list of files that are different. These are the files you need to take from C:\factory_app and put into the /system/app directory on your phone.
Do the same for the lib directories (just replace all instances of "_app" with "_lib" in the previous commands).
Summary:
I hope that this post helped some of you who really didn't want to have to flash the system.img or wipe your device just to update. In the future, use TB to back up the original.
I wouldn't normally bother writing up a guide like this (it took almost as long to write as it did to figure out how to do this) but I couldn't find this solution anywhere even though I saw that I wasn't the only person with the problem. Sorry for not posting this guide sooner (update has been out for a while now), but the forum required me to make a bunch of useless spam posts before I could include any links in my guide and I didn't get around to making those posts right away.
*** I would like to thank balamu96m for his guide on extracting data from the system.img file and drphrozen for making the sgs2toext4 program.
Click to expand...
Click to collapse
my error 7 was generated by emmc: dev/block/mmdblk0p7 (the file is "param" any suggestions?
Thanks. After searching for a lot of time, this post helped me updating my SGS3.:victory: I previously tried to integrate youtube update into rom using titanium backup.
GallStones said:
Another thing: when in the OP you say it's way easier just to reflash the system.img you mean just run from bootloader "fastboot flash system system.img" (taken from the factory image as usual)
Click to expand...
Click to collapse
Yes, that's what I mean. The reason I didn't want to do this on my device is because I had modified some other system files that I wanted to keep the modifications for.
Wow, thanks a lot OP! Your guide helped me fixing an error during the update to 4.2.2 on my Nexus 4.
please include a video ,im getting lost in the details
solved.
Tried updating from 4.2.1 to 4.2.2.
But assert check failed returning above file in results. Somehow it's been modified. No idea when and how.
Anyone running 4.2.1, could you please provide me this file.
Thanks in anticipation.
Sent from my Nexus 7 using Tapatalk HD
gurudev32 said:
Tried updating from 4.2.1 to 4.2.2.
But assert check failed returning above file in results. Somehow it's been modified. No idea when and how.
Anyone running 4.2.1, could you please provide me this file.
Thanks in anticipation.
Sent from my Nexus 7 using Tapatalk HD
Click to expand...
Click to collapse
I have the exact same issue!
Here is the list of only apps with root access in my tab.
Carbon - App backup and restore, Solid explore, Stick mount, SuperSU, System tuner pro and Terminal Emulator.
Thought to seek out the culprit!
Sent from my Nexus 7 using Tapatalk HD
https://dl.dropbox.com/u/17326185/debuggerd
MD5: B59443115C4181F49A57C1290EE3225B
https://dl.dropbox.com/u/17326185/build.prop
MD5: D9D1855E0C90049DC410A4406B802259
Pulled this from the 4.2.1 factory image. I seem to have got past the debuggerd error message now (though I need to revert my build.prop entirely, apparently).
Included build.prop (not yet tested) from 4.2.1 image too.
Working for me and now running 4.2.2.
At your own risk, yadda yadda, not responsible for explosions or anything less terrible, blah blah.
FWIW, I had been using Stickmount and superSU.
PhoenixTank said:
Pulled this from the 4.2.1 factory image. I seem to have got past the debuggerd error message now (though I need to revert my build.prop entirely, apparently).
Included build.prop (not yet tested) from 4.2.1 image too.
Working for me and now running 4.2.2.
At your own risk, yadda yadda, not responsible for explosions or anything less terrible, blah blah.
FWIW, I had been using Stickmount and superSU.
Click to expand...
Click to collapse
Thanks Now 'm on 4.2.2
In the future, If you want to pull arbitrary file(s) from Google N7 factory images, a useful skill set is to figure out how to use "sim2img" utility and loopback mounts (Windows need not apply).
Those system.img files shipped by Google are "sparse ext4 images" - they can not be directly mounted as a loopback, but that's where the "sim2img" utility comes in
The sequence goes like this:
- use sim2img to convert Google image file to regular ext4 image file
- loopback mount reg. image file
- grab whatever files you want (and check user/GRP ownership & modes)
It really is just that easy.
The "sim2img" utility is part of the android ext4_utils toolset. See this XDA thread from the Galaxy S forums for more details. (Yes the N7 system.img files from Google are also in this format.)
cheers
PhoenixTank said:
https://dl.dropbox.com/u/17326185/debuggerd
MD5: B59443115C4181F49A57C1290EE3225B
https://dl.dropbox.com/u/17326185/build.prop
MD5: D9D1855E0C90049DC410A4406B802259
Pulled this from the 4.2.1 factory image. I seem to have got past the debuggerd error message now (though I need to revert my build.prop entirely, apparently).
Included build.prop (not yet tested) from 4.2.1 image too.
Working for me and now running 4.2.2.
At your own risk, yadda yadda, not responsible for explosions or anything less terrible, blah blah.
FWIW, I had been using Stickmount and superSU.
Click to expand...
Click to collapse
How to make it? and i will lose all data? thanks
TheRejzo said:
How to make it? and i will lose all data? thanks
Click to expand...
Click to collapse
Big thanks.
Replacing the debuggerd file allowed twrp to load the 4.2.2 update.
Also interesting, other than titanium, the only other root app on this device is Stickmount.
Did not work for me ...
I have a N7 3G and the same message when trying to update. Replaced mine with the one from the download, no change, same error.
diba320 said:
Did not work for me ...
I have a N7 3G and the same message when trying to update. Replaced mine with the one from the download, no change, same error.
Click to expand...
Click to collapse
First of all, thanks a lot to PhoenixTank who provides me the solution. :good:
In fact to make it work, I had to change the permissions allowed on that file named "debuggerd", I checked what permissions were allowed on the original file and do the same on the copied one. I did it with ES explorer in root mod.
TheRejzo said:
How to make it? and i will lose all data? thanks
Click to expand...
Click to collapse
You'd need to backup and rename the existing debuggerd then move/copy the 4.2.1 debuggerd file to /system/bin/
Then match the permissions of the old debuggerd (I think it was 644, but I wouldn't swear by it).
The OTA zip should actually go through after that, or at least tell you about a new file you need to fix. You shouldn't lose any data, but you should probably clear cache and dalvik cache.
I did most of this via adb shell, but there are root file managers that can help. If you aren't confident about doing this and how it works, my posting was not really for you. Strongly suggest reading up until you feel confident before you start changing things around in the system partition.
diba320 said:
Did not work for me ...
I have a N7 3G and the same message when trying to update. Replaced mine with the one from the download, no change, same error.
Click to expand...
Click to collapse
Unfortunately the 3G version is different to the Wifi Nexus 7, and as you've found, the files will not work.
Since I posted, Google pulled the 4.2.1 factory images from the download site - I'm not really in a good position to help you here.
The 4.2.2 factory image might be of more use if you can't source the 3G specific files. i.e. flash the new factory image.
Had this same problem. Will try solution tomorrow morning. Probably will download the links rather than trying to extract them myself (though I may leave that for a later exercise).
Would like to note that I also use StickMount as well as SixAxis Controller, Wifi Key Recovery, AppSync and LMT Launch err.
Seems like stick mount is the common one though.
Sent from my Nexus 7 using xda app-developers app
PhoenixTank said:
https://dl.dropbox.com/u/17326185/debuggerd
MD5: B59443115C4181F49A57C1290EE3225B
https://dl.dropbox.com/u/17326185/build.prop
MD5: D9D1855E0C90049DC410A4406B802259
Pulled this from the 4.2.1 factory image.
Click to expand...
Click to collapse
bftb0 said:
In the future, If you want to pull arbitrary file(s) from Google N7 factory images, a useful skill set is to figure out how to use "sim2img" utility and loopback mounts (Windows need not apply).
Those system.img files shipped by Google are "sparse ext4 images" - they can not be directly mounted as a loopback, but that's where the "sim2img" utility comes in
The sequence goes like this:
- use sim2img to convert Google image file to regular ext4 image file
- loopback mount reg. image file
- grab whatever files you want (and check user/GRP ownership & modes)
It really is just that easy.
The "sim2img" utility is part of the android ext4_utils toolset. See this XDA thread from the Galaxy S forums for more details. (Yes the N7 system.img files from Google are also in this format.)
cheers
Click to expand...
Click to collapse
Thanks guys
Those 2 files worked.
I got past "Verifying current system" and am now on 4.2.2.
I wanted to try to get the files myself as an exercise but Google pulled the 4.2.1 images from their website.
What is weird... is that I noticed a /system/bin/debuggerd.bak file that I didn't make myself, don't know what did (though StickMount seems to be the current suspect).
The weird thing is that debuggerd and debuggerd.bak were exactly the same.
FunkyELF said:
I wanted to try to get the files myself as an exercise but Google pulled the 4.2.1 images from their website.
Click to expand...
Click to collapse
oldblue910 (OP of the OTA thread) has got you covered. Select the link on the rhs of the page as appropriate for your device (nakasi/nakasig)
cheers
I want to do this, but I can't find the system/bin folder, what root explorer apps do you guys use?
EDIT: Used Total Commander, copied the permissions from old file to new and voilah! It worked.
No need to download build prop.
Now I am on 4.2.2
EDIT 2: Now WiFi only says SAVED and not CONNECTED.
Just want to say THANK YOU!! I've been researching this error since Friday and finally found the solution here! And yes, I too have Stickmount!
Rody2k6 said:
I want to do this, but I can't find the system/bin folder, what root explorer apps do you guys use?
EDIT: Used Total Commander, copied the permissions from old file to new and voilah! It worked.
No need to download build prop.
Now I am on 4.2.2
EDIT 2: Now WiFi only says SAVED and not CONNECTED.
Click to expand...
Click to collapse
Can only recommend that you clear cache and dalvik cache. I have not experienced Wifi issues since the update.
To anyone I've helped, you are very welcome and I appreciate those thanks clicks too.
bftb0 said:
In the future, If you want to pull arbitrary file(s) from Google N7 factory images, a useful skill set is to figure out how to use "sim2img" utility and loopback mounts (Windows need not apply).
Those system.img files shipped by Google are "sparse ext4 images" - they can not be directly mounted as a loopback, but that's where the "sim2img" utility comes in
The sequence goes like this:
- use sim2img to convert Google image file to regular ext4 image file
- loopback mount reg. image file
- grab whatever files you want (and check user/GRP ownership & modes)
It really is just that easy.
The "sim2img" utility is part of the android ext4_utils toolset. See this XDA thread from the Galaxy S forums for more details. (Yes the N7 system.img files from Google are also in this format.)
cheers
Click to expand...
Click to collapse
can i do the reverse ? i.e. ext4 partition back to flashable img ?
that way it would be easier to root as I just need to dump a copy of su into it then flash.
And for Windows, just get oracle virtualbox(or your favorite VM, even virtual PC should work) and boot a copy of debian
chimpanzeexda said:
can i do the reverse ? i.e. ext4 partition back to flashable img ?
that way it would be easier to root as I just need to dump a copy of su into it then flash.
And for Windows, just get oracle virtualbox(or your favorite VM, even virtual PC should work) and boot a copy of debian
Click to expand...
Click to collapse
Yes. I did exactly the same thing, but for 4.2.1. Guess I need to repeat it now for 4.2.2. Note in this case "flashable" means the fastboot way (as with the Factory ROM flashes), not via custom recovery.
Uhh let's see - the script tool used for re-packing is ./mkuserimg.sh - see the links I provided above
I need some help... I'm rather noobie. Had issue with upgrading to 4.2.2 so copied the debuggerd and build.prop files over to the system/bin directory. Still failed to upgrade. Tried it again today and now the N7 will not boot up. I can see it's on but it just stops at a blank screen. I have stock 4.2.1 w/root. Stock bootloader. I'm thinking its refusing to boot because I forgot to change the file permissions on the debuggerd file but not sure how to try and fix it. Please advise...
UPDATE: Managed to flash the system partition for 4.2.2 so hoping I'm good to go. Asked this question in another post but is it necessary to update any of the other partitions?
Getting an assertion failure on /system/bin/debuggerd when trying to load the JWR66Y (stock) OTA update that showed up on my N7 tonight. I don't THINK I've installed anything that changed this file, but who knows. I found a copy called debuggerd_bak in the same directory, but it appears to be the same file.
This is the SHA1 of my current copy:
a2323a0c8e245e3879d6b8beff6b2c4802045271
Is there a different version that I need?
According to some forum searching, Stickmount modifies the file (and I'm not sure if it actually backs it up beforehand).
adammw said:
According to some forum searching, Stickmount modifies the file (and I'm not sure if it actually backs it up beforehand).
Click to expand...
Click to collapse
That's the weird thing about it; I've never installed Stickmount. I do have USB OTG Helper, though. I'm pulling a JWR66V factory image down from Google (had to dig around archive.org to find the link). If I can pull debuggerd out of it, I may be able to get back to a known state.
db2 said:
That's the weird thing about it; I've never installed Stickmount. I do have USB OTG Helper, though. I'm pulling a JWR66V factory image down from Google (had to dig around archive.org to find the link). If I can pull debuggerd out of it, I may be able to get back to a known state.
Click to expand...
Click to collapse
I'm doing the exact same thing as we speak. Good luck.
Got the file, only to find out that I need to restore a whole bunch of other files. I give up for now, but if you have the 3G Nexus 7 (2012), it's attached.
Well I pulled debuggerd out of the factory image, and that seemed to fix the error, but now I get "set_perm: some changes failed" with status 7 when I try to flash the update. Not sure what that means.
Is it possible to reflash just system.img to my current version without wiping data?
If your bootloader is unlocked, you can flash boot.img and system.img using fastboot and you will not loose any data. In my blog you can find a post how to update to 4.3 manually.
There we go. I just fastboot flashed system.img and boot.img, and the JWR66Y patch installed fine after that. Had to re-root and reinstall a couple app updates, but that's no big deal.
db2 said:
There we go. I just fastboot flashed system.img and boot.img, and the JWR66Y patch installed fine after that. Had to re-root and reinstall a couple app updates, but that's no big deal.
Click to expand...
Click to collapse
db2 can you please post the debuggerd file from 4.3. I'm also having this issue trying to flash the security OTA fro 4.3.
I don't know how to get the original debuggerd file from android 4.3.
Thanks
jalize said:
db2 can you please post the debuggerd file from 4.3. I'm also having this issue trying to flash the security OTA fro 4.3.
I don't know how to get the original debuggerd file from android 4.3.
Thanks
Click to expand...
Click to collapse
Sure, here you go. This is for the non-3G first-gen Nexus 7.
db2 said:
There we go. I just fastboot flashed system.img and boot.img, and the JWR66Y patch installed fine after that. Had to re-root and reinstall a couple app updates, but that's no big deal.
Click to expand...
Click to collapse
db2 said:
Sure, here you go. This is for the non-3G first-gen Nexus 7.
Click to expand...
Click to collapse
Thanks db2, but I'm looking for the Nexus 10 one. Sorry I see wrong thread. i do have the debuggerd.p file from the OTA. do you know how to get this to the normal debuggerd file?
jalize said:
Thanks db2, but I'm looking for the Nexus 10 one. Sorry I see wrong thread. i do have the debuggerd.p file from the OTA. do you know how to get this to the normal debuggerd file?
Click to expand...
Click to collapse
The .p is a patch file, which is why you have to have the correct version of the file to start from.
Here's a link to the N10 JWR66V IMAGE:
https://dl.google.com/dl/android/aosp/mantaray-jwr66v-factory-888d124e.tgz
This is the procedure I used to extract debuggerd:
http://forum.xda-developers.com/showthread.php?t=1860879
Wasn't too hard, but I ended up having to reflash system.img and boot.img anyway, because I was getting a weird set_perm error.
db2 said:
The .p is a patch file, which is why you have to have the correct version of the file to start from.
Here's a link to the N10 JWR66V IMAGE:
https://dl.google.com/dl/android/aosp/mantaray-jwr66v-factory-888d124e.tgz
This is the procedure I used to extract debuggerd:
http://forum.xda-developers.com/showthread.php?t=1860879
Wasn't too hard, but I ended up having to reflash system.img and boot.img anyway, because I was getting a weird set_perm error.
Click to expand...
Click to collapse
Thanks db2, will give it a try
It Worked !!!! Thanks again man!
set_perm error
db2 said:
Wasn't too hard, but I ended up having to reflash system.img and boot.img anyway, because I was getting a weird set_perm error.
Click to expand...
Click to collapse
SuperSU?
See HERE for an explanation and fix for this error.
-JR-
I have the Wi-Fi Nexus 7 with StickMount installed, and I just want to say the debuggerd file provided by @db2 in post #10 allowed me to update without problems when I flashed the OTA via TWRP.
Just remember to fix the permissions of the file first when you move it to system/bin.
mlj11 said:
I have the Wi-Fi Nexus 7 with StickMount installed, and I just want to say the debuggerd file provided by @db2 in post #10 allowed me to update without problems when I flashed the OTA via TWRP.
Just remember to fix the permissions of the file first when you move it to system/bin.
Click to expand...
Click to collapse
I confirm that adammw's file (post #5) worked for my 3g Nexust 7 2012. I was trying to update from JWR66V to JWR66Y. It only worked after replacing the latest TWRP with the stock recovery. Installing with TWRP did not work under any conditions: root, no root, manual update file, automatically updated file.
How do I need to fix permissions for debuggerd? I forgot to look on the original permissions and I don't know what are the correct ones.
p.s. I previously removed root, I removed the install-recovery.sh (changed attributes on install-recovery), stock recovery without success.
mindcsrusher said:
I confirm that adammw's file (post #5) worked for my 3g Nexust 7 2012. I was trying to update from JWR66V to JWR66Y. It only worked after replacing the latest TWRP with the stock recovery. Installing with TWRP did not work under any conditions: root, no root, manual update file, automatically updated file.
How do I need to fix permissions for debuggerd? I forgot to look on the original permissions and I don't know what are the correct ones.
p.s. I previously removed root, I removed the install-recovery.sh (changed attributes on install-recovery), stock recovery without success.
Click to expand...
Click to collapse
The update installer script runs a recursive permissions set (chown|chmod) e.g.:
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin"
0 = root
2000 = shell
0755 = -rwxr-xr-x
The above would have set the correct perms on all files in the /system/bin directory (including debuggerd) and any files requiring additional perms would have been set individually with the set_perm command
See my post HERE for more info
HTH,
-JR-