[Q] Update.zip (that I created) Aborts - Galaxy S II Q&A, Help & Troubleshooting

I followed this tutorial: http://fokke.org/site/content/howto-create-android-updatezip-package
...on making update.zip files.
It only says opening... installing... then installation aborted.
I followed the directions to the letter.
It doesn´t even go so far as to do the ui print from step one.
Code:
ui_print("Android Security Enhancements");
ui_print("By: Michiel Fokke - fokke.org/android");
show_progress(1.000000, 0);
ui_print(" Mounting /system");
mount("MTD", "system", "/system");
set_progress(0.100000);
So I don't think it runs any of the code at all.
I signed it and everything... no dice.
Any idea what the problem could be?

Now I've got the exact text in front of me from CWM Recovery:
Code:
--Installing: /emmc/Updates/update.zip
Finding update package....
Opening update package...
Installing update..
E:Error in /emmc/Updates/update.zip
(Status 0)
Installation aborted.
And here´s the exact text of my update.zip:
Code:
ui_print("Simple Font Change");
ui_print("By: Team Rainless");
show_progress(1.000000, 0);
ui_print(" Mounting /system");
mount("MTD", "system", "/system");
set_progress(0.100000);
ui_print(" Extracting files to /system");
package_extract_dir("system/fonts/Clockopia2.ttf", "/system/fonts");
set_progress(0.200000);
ui_print(" Setting permissions to 0644...");
set_perm(0,0,0644,"/system/fonts/Clockopia2.ttf");
set_progress(0.400000);
ui_print(" Unmounting /system");
unmount("/system");
set_progress(0.900000);
ui_print("Update complete. Hope this worked!");
set_progress(1.000000);

Should I perhaps post this in the dev forum instead?
It's really not a general or easy question...

TeamRainless said:
Now I've got the exact text in front of me from CWM Recovery:
Code:
--Installing: /emmc/Updates/update.zip
Finding update package....
Opening update package...
Installing update..
E:Error in /emmc/Updates/update.zip
(Status 0)
Installation aborted.
And here´s the exact text of my update.zip:
Code:
ui_print("Simple Font Change");
ui_print("By: Team Rainless");
show_progress(1.000000, 0);
ui_print(" Mounting /system");
mount("MTD", "system", "/system");
set_progress(0.100000);
ui_print(" Extracting files to /system");
package_extract_dir("system/fonts/Clockopia2.ttf", "/system/fonts");
set_progress(0.200000);
ui_print(" Setting permissions to 0644...");
set_perm(0,0,0644,"/system/fonts/Clockopia2.ttf");
set_progress(0.400000);
ui_print(" Unmounting /system");
unmount("/system");
set_progress(0.900000);
ui_print("Update complete. Hope this worked!");
set_progress(1.000000);
Click to expand...
Click to collapse
TeamRainless said:
Should I perhaps post this in the dev forum instead?
It's really not a general or easy question...
Click to expand...
Click to collapse
This is the right section as it's not development as such but a development question which the dev thread isn't for. This covers all really and you'll always get someone read and come and answer.
Anyway just the first thing I've noticed is your mount instruction looks completely wrong to me and have never seen it like that. I've never read those instructions before but they don't look too great. Also I thought the extract should be ("label", "location").
This is what is common across all the zips I use:
Mount command:
Code:
run_program("/sbin/busybox", "mount", "/system");
Package extract:
Code:
package_extract_dir("system", "/system");
package_extract_file("Clockopia2.ttf", "/system/fonts")
I may be wrong about the extract but also don't forget to unmount the system in the same way:
Code:
run_program("/sbin/busybox", "unmount", "/system");
I only really modify zips as opposed to create whole new ones but give it a go as yours isn't working at the moment.
Hope it helps or someone clarifies this for me too.

AvRS said:
This is the right section as it's not development as such but a development question which the dev thread isn't for. This covers all really and you'll always get someone read and come and answer.
Anyway just the first thing I've noticed is your mount instruction looks completely wrong to me and have never seen it like that. I've never read those instructions before but they don't look too great. Also I thought the extract should be ("label", "location").
This is what is common across all the zips I use:
Mount command:
Code:
run_program("/sbin/busybox", "mount", "/system");
Package extract:
Code:
package_extract_dir("system", "/system");
package_extract_file("Clockopia2.ttf", "/system/fonts")
I may be wrong about the extract but also don't forget to unmount the system in the same way:
Code:
run_program("/sbin/busybox", "unmount", "/system");
I only really modify zips as opposed to create whole new ones but give it a go as yours isn't working at the moment.
Hope it helps or someone clarifies this for me too.
Click to expand...
Click to collapse
Figured it out:
The update-binary was bogus.
And that guide... like ALL the guides on making update.zips... SUCKS.
I'm going to write my own guide now.
Thanks for the help.

TeamRainless said:
Figured it out:
The update-binary was bogus.
And that guide... like ALL the guides on making update.zips... SUCKS.
I'm going to write my own guide now.
Thanks for the help.
Click to expand...
Click to collapse
At least you figured it out. I'm also in the process of writing (just not got round to finishing) a CWM guide but not how to create them so that would work out nicely if you created one.

Related

[Q] Can't flash Modded Update.zip

I modded a flashable zip and now it won't let me flash it.
When I try to flash I get
E:Error in /tmp/sideload/package.zip
(Status 6)
I have edited the update script, and don't know how to edit the update binary if that could be it. I am able to flash other zips though. I've tried removing things and adding things. The funny part is that another modded update zip I made a few days ago worked perfectly fine. Any ideas guys? What does Status 6 mean? Why does it give me the tmp/sideload/package.zip thing? Do I need to go back to factory (PLEASE SAY I DONT )
EDIT: I think it was just that zip.
According to AssassinsLament, the issue is probably your update-binary file (assuming you're already using edify: updater-script), which you can compile in AOSP or use the version AssassinsLament provides as the latest attached in his post here:
http://forum.xda-developers.com/showpost.php?p=16409219&postcount=24
also, you can get a more detailed log in recovery, cat /tmp/recovery.log and pastebin that. with the more detailed recovery log, we will be able to determine more precisely the issue you're experiencing, but as a general solution, updating the update-binary file *should* work. if not, pastebin your /tmp/recovery.log.
hope that helps!
joeykrim said:
According to AssassinsLament, the issue is probably your update-binary file (assuming you're already using edify: updater-script), which you can compile in AOSP or use the version AssassinsLament provides as the latest attached in his post here:
http://forum.xda-developers.com/showpost.php?p=16409219&postcount=24
also, you can get a more detailed log in recovery, cat /tmp/recovery.log and pastebin that. with the more detailed recovery log, we will be able to determine more precisely the issue you're experiencing, but as a general solution, updating the update-binary file *should* work. if not, pastebin your /tmp/recovery.log.
hope that helps!
Click to expand...
Click to collapse
Thanks! That's exactly it!, I wasn't touching the update binary (i dont know how).
EDIT: So how exactly do I update the binary? Or do I just copy the one from assassinlaments post into the update zip.
What are you trying to flash?
il Duce said:
What are you trying to flash?
Click to expand...
Click to collapse
Modded framework, sysui and a few other apks to the system partition.
Sent from my PG86100 using Tapatalk
fowenati said:
Modded framework, sysui and a few other apks to the system partition.
Sent from my PG86100 using Tapatalk
Click to expand...
Click to collapse
Make sure you're not using Wordpad or anything like that to edit the updater-script. You need to use something that encodes the file with Unix encoding. Also, it shouldn't be the update-binary, you would get a sideload error. Check to make sure you're not missing a "," or ";" or little things like that somewhere. Also, if you open the file /cache/recovery/last_log when you reboot (or I think there is a /cache/recovery/recovery.log while you're in recovery [just cat that file]) it will tell you what the error is and the line location of any errors in your updater-script
-viperboy- said:
Make sure you're not using Wordpad or anything like that to edit the updater-script. You need to use something that encodes the file with Unix encoding. Also, it shouldn't be the update-binary, you would get a sideload error. Check to make sure you're not missing a "," or ";" or little things like that somewhere. Also, if you open the file /cache/recovery/last_log when you reboot (or I think there is a /cache/recovery/recovery.log while you're in recovery [just cat that file]) it will tell you what the error is and the line location of any errors in your updater-script
Click to expand...
Click to collapse
Yeah I made sure it was in UTF 8, (using text wrangler). I'm gonna check the log right now.
fowenati said:
Yeah I made sure it was in UTF 8, (using text wrangler). I'm gonna check the log right now.
Click to expand...
Click to collapse
Send me your .zip too if you want and I will take a look at it in the morning!
-viperboy- said:
Send me your .zip too if you want and I will take a look at it in the morning!
Click to expand...
Click to collapse
Alright! Here it is!
This one doesnt give me a tmp/sideload/package.zip error, but when it finshes installing it doesn't really install. It wont give an error, but nothing happens.
http://dev-host.org/65j7ve7q0a2f/SupraMOD.zip
fowenati said:
Alright! Here it is!
This one doesnt give me a tmp/sideload/package.zip error, but when it finshes installing it doesn't really install. It wont give an error, but nothing happens.
http://dev-host.org/65j7ve7q0a2f/SupraMOD.zip
Click to expand...
Click to collapse
A few things... you don't even have an updater-binary. You NEED to have that. For the updater-script, you have:
Code:
ui_print("SupraROM v1.2.1 Upgrade-Beta");
show_progress(0.1, 0);
mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/system");
show_progress(0.2, 0);package_extract_dir("system", "/system");
show_progress(0.3, 0);
unmount("/system");
show_progress(0.4, 0);
mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/system");
show_progress(0.5, 0);
package_extract_dir("system", "/system");
unmount("/system");
ui_print("Done Flashing");
You are mounting and unmounting twice and trying to extract the same package. Also, show progress is a pain in the ass and I doubt the way you have it shows a progress bar. Do it like this:
Code:
ui_print("SupraROM v1.2.1 Upgrade-Beta");
run_program("/sbin/busybox", "mount", "/system");
ui_print("");
ui_print("Installing files...");
package_extract_dir("system", "/system");
set_perm_recursive(0, 0, 0755, 0644, "/system");
ui_print("");
ui_print("Done!");
unmount("/system");
And add in this updater-binary...
http://dl.dropbox.com/u/6621763/update-binary.zip
That should take care of it
-viperboy- said:
A few things... you don't even have an updater-binary. You NEED to have that. For the updater-script, you have:
Code:
ui_print("SupraROM v1.2.1 Upgrade-Beta");
show_progress(0.1, 0);
mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/system");
show_progress(0.2, 0);package_extract_dir("system", "/system");
show_progress(0.3, 0);
unmount("/system");
show_progress(0.4, 0);
mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/system");
show_progress(0.5, 0);
package_extract_dir("system", "/system");
unmount("/system");
ui_print("Done Flashing");
You are mounting and unmounting twice and trying to extract the same package. Also, show progress is a pain in the ass and I doubt the way you have it shows a progress bar. Do it like this:
Code:
ui_print("SupraROM v1.2.1 Upgrade-Beta");
run_program("/sbin/busybox", "mount", "/system");
ui_print("");
ui_print("Installing files...");
package_extract_dir("system", "/system");
set_perm_recursive(0, 0, 0755, 0644, "/system");
ui_print("");
ui_print("Done!");
unmount("/system");
And add in this updater-binary...
http://dl.dropbox.com/u/6621763/update-binary.zip
That should take care of it
Click to expand...
Click to collapse
thanks I got it working

[Q] update.zip problems

I'm trying to make a zip to remove the stuff I remove every time and install Titanium Backup, but I keep getting error 6 when I try to flash it. I did sign it, and it was written using Notepad++.
Directory Structure:
data
-app
--com.keramidas.TitaniumBackup-1.apk
--com.keramidas.TitaniumBackupPro-1.apk
META-INF
-com
--google
---android
----update-binary
----updater-script
-CERT.RSA
-CERT.SF
-MANIFEST.MF
updater-script:
show_progress 0.1 0
ui_print(" ===============================================");
ui_print(" | Removing Sense |");
ui_print(" ===============================================");
mount("MTD", "system", "/system");
delete("/system/app/com.htc.FMRRadioWidget.apk");
delete("/system/app/com.htc.FriendStream3DWidget.apk");
delete("/system/app/com.htc.htcmsgwidgets3d.apk");
delete("/system/app/com.htc.MusicWidget.apk");
delete("/system/app/com.htc.Sync3DWidget.apk");
delete("/system/app/com.htc.TrendsdWidget.apk");
delete("/system/app/com.htc.Twitter3DWidget.apk");
delete("/system/app/FusionStockWidget.apk");
delete("/system/app/GenieWidget.apk");
delete("/system/app/HtcAddProgramWidget.apk");
delete("/system/app/HtcAutoRotateWidget.apk");
delete("/system/app/HtcBackgroundDataWidget.apk");
delete("/system/app/htcbookmarkwidget3d.apk");
delete("/system/app/HtcCalculatorWidget.apk");
delete("/system/app/htccalendarwidget3d.apk");
delete("/system/app/HtcClock3DWidget.apk");
delete("/system/app/htccontactwidgets3D.apk");
delete("/system/app/HtcDataRoamingWidget.apk");
delete("/system/app/HtcDataStripWidget.apk");
delete("/system/app/HtcFootprintsWidget3d.apk");
delete("/system/app/HtcGreaderWidget.apk");
delete("/system/app/htcmailwidgets3d.apk");
delete("/system/app/HtcPhotoGridWidget3D.apk");
delete("/system/app/HtcPhotoWidget.apk");
delete("/system/app/HtcPowerStripWidget.apk");
delete("/system/app/HtcProfileWidget.apk");
delete("/system/app/HtcRingtoneWidget.apk");
delete("/system/app/HtcScreenBrightnessWidget.apk");
delete("/system/app/HtcScreenTimeoutWidget.apk");
delete("/system/app/htcsettingswidget.apk");
delete("/system/app/HtcWeather3DWidget.apk");
delete("/system/app/Rosie.apk");
delete("/system/app/Stock.apk");
ui_print(" ===============================================");
ui_print(" | Removing Sense Lockscreen |");
ui_print(" ===============================================");
delete("/system/app/com.htc.idlescreen_SN.apk");
delete("/system/app/HtcLockScreen.apk");
delete("/system/app/Idlescreen_Base.apk");
delete("/system/app/idlescreen_photo.apk");
delete("/system/app/idlescreen_shortcut.apk");
delete("/system/app/IdleScreen_Stock.apk");
delete("/system/app/IdleScreen_Weather.apk");.apk");
ui_print(" ===============================================");
ui_print(" | Removing Bloatware |");
ui_print(" ===============================================");
delete("/system/app/AppSharing.apk");
delete("/system/app/BlueSky.apk");
delete("/system/app/Burgundy.apk");
delete("/system/app/DockMode.apk");
delete("/system/app/Flickr.apk");
delete("/system/app/FriendStream.apk");
delete("/system/app/HtcCarPanel.apk");
delete("/system/app/HtcConnectedMedia.apk");
delete("/system/app/HtcFacebook.apk");
delete("/system/app/HtcFMRadio.apk");
delete("/system/app/HtcFootprints.apk");
delete("/system/app/HtcGreader.apk");
delete("/system/app/HTCLivewallpaperStreak.apk");
delete("/system/app/HtcRingtoneTrimmer.apk");
delete("/system/app/HtcTwitter.apk");
delete("/system/app/HtcWeatherWallpaper.apk");
delete("/system/app/MagicSmokeWallpapers.apk");
delete("/system/app/Maps.apk");
delete("/system/app/MyShelf_Widget.apk");
delete("/system/app/Protips.apk");
delete("/system/app/Swype.apk");
delete("/system/app/TaskManager.apk");
delete("/system/app/Twitter.apk");
delete("/system/app/WeatherLiveWallpaper.apk");
delete("/system/app/MyReportAgent.apk");
unmount("/system");
ui_print(" ===============================================");
ui_print(" | Installing Titanium Backup |");
ui_print(" ===============================================");
mount("MTD", "data", "/data");
copy_dir PACKAGE:data DATA:
unmount("/data");
dementio said:
I'm trying to make a zip to remove the stuff I remove every time and install Titanium Backup, but I keep getting error 6 when I try to flash it. I did sign it, and it was written using Notepad++.
Directory Structure:
data
-app
--com.keramidas.TitaniumBackup-1.apk
--com.keramidas.TitaniumBackupPro-1.apk
META-INF
-com
--google
---android
----update-binary
----updater-script
-CERT.RSA
-CERT.SF
-MANIFEST.MF
updater-script:
show_progress 0.1 0
mount("MTD", "system", "/system");
mount("MTD", "data", "/data");
copy_dir PACKAGE:data DATA:
unmount("/data");
Click to expand...
Click to collapse
the script looks like a great method and its wonderful to see people putting together their own scripts.
i'm assuming you wrote that updater-script file and understand the different components. if you don't, please ask and i can provide more detail.
critique: off the top of my head, two things catch my attention.
1) copy_dir command ends with a : instead of a ; and it appears to be the amend command, not the edify version of the command. edify version of the command would be: package_extract_dir("data", "/data");
2) in the latest version of the update-binary, i think it requires 4 args instead of 3 args for the mount command. also our file system is not MTD as supplied in the 3 args version of the mount command given above. edify version for api 3 used by the latest update-binary should be: mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/system");
here is a great post which outlines some of these changes and how to execute commands under edify: [TUT]Edify Installation Script Syntax's
for advanced troubleshooting, when the custom recovery throws an error, like the error 6 you mention above, via adb check out the /tmp/recovery.log file as this will provide detail around the error and usually a line number to narrow down the issue. i usually access the tmp/recovery.log file via adb shell then cat /tmp/recovery.log .
also, if you're interested, i have a php script on my custom EVO 3D stock app custom site which creates a custom removal .zip file to be loaded through recovery. if you create your own, you can see my updater-script syntax and also my update-binary (latest version). feel free to use them as i enjoy giving back to the community!
hope that helps! good luck!
Nice. Thanks
I didn't realize there were different syntaxes for the different versions, when I was researching, I was looking at several different sites.
Sent from my PG86100 using xda premium
dementio said:
Nice. Thanks
I didn't realize there were different syntaxes for the different versions, when I was researching, I was looking at several different sites.
Click to expand...
Click to collapse
Nice. You're definitely on the right path.
Only a few tweaks to the syntax and you should be all set. The two main versions of update(r)-script code are amend and edify. Edify being the latest and most recent version, you'll want to stick with that for the EVO 3D and probably most android devices/custom recovery's going forward.
Hope you post up your script when you're done!
I will once I figure out this line 1 expected eof error
Sent from my PG86100 using xda premium
dementio said:
updater-script:
show_progress 0.1 0
Click to expand...
Click to collapse
dementio said:
I will once I figure out this line 1 expected eof error
Click to expand...
Click to collapse
i'm assuming the line one error is relating to the command you issue on line 1 of the updater-script file you posted above, i.e. no changes have been made to the first line since you posted.
if you refer to the guide i linked to above, it gives a proper example of the show_progress command under edify syntax. the show_progress command quoted in your original post is using amend syntax.
amend syntax: show_progress 0.1 0
edify syntax: show_progress(0.1, 10);
hope that helps!
joeykrim said:
also, if you're interested, i have a php script on my custom EVO 3D stock app custom site which creates a custom removal .zip file to be loaded through recovery. if you create your own, you can see my updater-script syntax and also my update-binary (latest version). feel free to use them as i enjoy giving back to the community!
Click to expand...
Click to collapse
Wow, nice tool, and bookmarked
joeykrim said:
i'm assuming the line one error is relating to the command you issue on line 1 of the updater-script file you posted above, i.e. no changes have been made to the first line since you posted.
if you refer to the guide i linked to above, it gives a proper example of the show_progress command under edify syntax. the show_progress command quoted in your original post is using amend syntax.
amend syntax: show_progress 0.1 0
edify syntax: show_progress(0.1, 10);
hope that helps!
Click to expand...
Click to collapse
I noticed that, but still got the same error, even after I took that line out
dementio said:
I noticed that, but still got the same error, even after I took that line out
Click to expand...
Click to collapse
the only other idea which comes to mind for EOF on first line would be the type of text editor being used as windows and unix text files are setup differently with return/new line characters.
best method on windows is to use notepad++ and make sure under the settings for new files it is set to use unix standard instead of windows.
i prefer editing the file on a unix/linux machine and if in windows, i'd run a VM.
if you wanted to eliminate that possibility, feel free to grab one of my updater-script files which are known to be working correctly and make sure to use a proper text editor which will maintain the file integrity.
hope that helps!
FINALLY, here's the completed script. It completely? removes Sense, the stock lockscreen (I use Hidden Lock), and a bunch of apps that I never use, and installs Titanium Backup Premium so I can restore everything else. The progress bar doesn't actually work, but it runs so quick I don't really care.
Code:
show_progress(0.1, 10);
ui_print(" ===============================================");
ui_print(" | Removing Sense |");
ui_print(" ===============================================");
mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/system");
delete("/system/app/com.htc.FMRRadioWidget.apk");
delete("/system/app/com.htc.FriendStream3DWidget.apk");
delete("/system/app/com.htc.htcmsgwidgets3d.apk");
delete("/system/app/com.htc.MusicWidget.apk");
delete("/system/app/com.htc.Sync3DWidget.apk");
delete("/system/app/com.htc.TrendsdWidget.apk");
delete("/system/app/com.htc.Twitter3DWidget.apk");
delete("/system/app/FusionStockWidget.apk");
delete("/system/app/GenieWidget.apk");
delete("/system/app/HtcAddProgramWidget.apk");
delete("/system/app/HtcAutoRotateWidget.apk");
delete("/system/app/HtcBackgroundDataWidget.apk");
delete("/system/app/htcbookmarkwidget3d.apk");
delete("/system/app/HtcCalculatorWidget.apk");
delete("/system/app/htccalendarwidget3d.apk");
delete("/system/app/HtcClock3DWidget.apk");
delete("/system/app/htccontactwidgets3D.apk");
delete("/system/app/HtcDataRoamingWidget.apk");
delete("/system/app/HtcDataStripWidget.apk");
delete("/system/app/HtcFootprintsWidget3d.apk");
delete("/system/app/HtcGreaderWidget.apk");
delete("/system/app/htcmailwidgets3d.apk");
delete("/system/app/HtcPhotoGridWidget3D.apk");
delete("/system/app/HtcPhotoWidget.apk");
delete("/system/app/HtcPowerStripWidget.apk");
delete("/system/app/HtcProfileWidget.apk");
delete("/system/app/HtcRingtoneWidget.apk");
delete("/system/app/HtcScreenBrightnessWidget.apk");
delete("/system/app/HtcScreenTimeoutWidget.apk");
delete("/system/app/htcsettingswidget.apk");
delete("/system/app/HtcWeather3DWidget.apk");
delete("/system/app/Rosie.apk");
delete("/system/app/Stock.apk");
ui_print(" ===============================================");
ui_print(" | Removing Sense Lockscreen |");
ui_print(" ===============================================");
delete("/system/app/com.htc.idlescreen_SN.apk");
delete("/system/app/HtcLockScreen.apk");
delete("/system/app/Idlescreen_Base.apk");
delete("/system/app/idlescreen_photo.apk");
delete("/system/app/idlescreen_shortcut.apk");
delete("/system/app/IdleScreen_Stock.apk");
delete("/system/app/IdleScreen_Weather.apk");
ui_print(" ===============================================");
ui_print(" | Removing Bloatware |");
ui_print(" ===============================================");
delete("/system/app/AppSharing.apk");
delete("/system/app/BlueSky.apk");
delete("/system/app/Burgundy.apk");
delete("/system/app/DockMode.apk");
delete("/system/app/Flickr.apk");
delete("/system/app/FriendStream.apk");
delete("/system/app/HtcCarPanel.apk");
delete("/system/app/HtcConnectedMedia.apk");
delete("/system/app/HtcFacebook.apk");
delete("/system/app/HtcFMRadio.apk");
delete("/system/app/HtcFootprints.apk");
delete("/system/app/HtcGreader.apk");
delete("/system/app/HTCLivewallpaperStreak.apk");
delete("/system/app/HtcRingtoneTrimmer.apk");
delete("/system/app/HtcTwitter.apk");
delete("/system/app/HtcWeatherWallpaper.apk");
delete("/system/app/MagicSmokeWallpapers.apk");
delete("/system/app/Maps.apk");
delete("/system/app/MyReportAgent.apk");
delete("/system/app/MyShelf_Widget.apk");
delete("/system/app/Protips.apk");
delete("/system/app/Swype.apk");
delete("/system/app/TaskManager.apk");
delete("/system/app/Twitter.apk");
delete("/system/app/vtt-sprint.apk");
delete("/system/app/WeatherAgentService.apk");
delete("/system/app/WeatherLiveWallpaper.apk");
delete("/system/app/WeatherProvider.apk");
delete("/system/app/WeatherSyncProvider.apk");
unmount("/system");
ui_print(" ===============================================");
ui_print(" | Installing Titanium Backup |");
ui_print(" ===============================================");
mount("ext3", "EMMC", "/dev/block/mmcblk0p26", "/data");
package_extract_dir("data", "/data");
unmount("/data");

[SOLVED] Help modifying (flashing) theme files.

Alright, I'm wanting to modify the theme of my rom (eclipse 2.0.2 to be exact). I'll explain my steps below, but the problem I'm having is when flashing the update.zip from my SD card during BSR, I get "E: There is a syntax error in the update" and nothing happens.
Here's my steps. I'm using APK manager 4.9, trying to modify Eclipse 2.0.2.
1. I've installed APK Manager and it's running fine.
2. I grab "framework-res.apk" from Eclipse /system/framework directory and place it inside APKManager's "place-apk-here-for-modding" dir.
3. I run APKManager and choose option 9 (Decompile APK)
4. Once decompiled, I edit the files inside APKManager's "project" dir.
5. I then run APKManager and choose option 11 ("Compile APK"). This places "unsignedframework-res.apk" in the "place-apk-here-for-modding" dir.
6. I take this new file, rename it to "framework-res.apk" and place it in a zip file, along with the META-INF. Here is my dir structure inside the .zip:
Code:
/META-INF/com/google/android/update-script
/system/framework/framework-res.apk
7. I place the following code inside "update-script"
Code:
show_progress 0.1 0
copy_dir PACKAGE:system SYSTEM:
set_perm_recursive 0 0 0755 0644 SYSTEM:framework
show_progress 0.1 10
8. I then sign the .zip using "Testsign" (http://forum.xda-developers.com/showthread.php?t=538020)
9. I now place the newly signed .zip onto my sd card.
10. I reboot my phone into BSR, clear cache/dalvik cache, and attempt to install update from zip.
11. After selecting my .zip and starting the update process, I get the syntax error.
Any ideas? What am I doing wrong?
-------------------------
UPDATE
-------------------------
This topic is solved!
To make this even simpler, download Framework Flasher and easily create flashable update.zip files! http://forum.xda-developers.com/showthread.php?p=21113455
The structure of the files must be like the following:
update.zip/system/framework/framework-res.apk
Store file here
update.zip/META-INF/com/google/android/updater-script
Code:
ui_print("Installing...");
show_progress(0.1, 0);
run_program("/sbin/busybox", "mount", "/system");
package_extract_dir("system", "/system");
show_progress(0.1, 10);
show_progress(0.2, 0);
show_progress(0.2, 10);
set_perm_recursive(0, 0, 0755, 0644, "/system/framework/framework-res.apk");
ui_print("Done!")
run_program("/sbin/busybox", "umount", "/system");
update.zip/META-INF/com/google/android/update-binary
You will need to pull this from a ROM or Theme .zip
Thanks!
Would this be better off posted in another Droid x2 forum? Or is this the correct forum? I'm still needing help with this. I just can't seem to get it to work for some reason. Thanks again!
Sent from my DROID X2 using XDA App
This is the correct forum. Hopefully one of our fantastic themers decide to poke their head in and answer but to me it sounds like a problem while creating your zip file.
Sent from my DROID X2 using xda premium
Not sure if this is your issue but I'm pretty sure there's an update to APK Manager. I'm also playing around with theming and I believe the version I have is 5.
Yeah I definitely think the problem is due to either the zip sign our the update-script file.
As for updating apk manager, I'll try it, but I read somewhere that apk manager has bugs and to stick with 4.9. I did however update apktool.jar to the latest version.
Sent from my DROID X2 using XDA App
Don't rename the file in step 6. Do option 12 to sighn the apk. That will create sighnedframework-res. Rename that file and put it in your zip.
I use version 5. Think the option is still 12 to sign the file.
EDIT: Sorry I see step 8 where you sign the apk. I missed that. Never used 4.9 myself.
Sent from my DROID X2 using Tapatalk
hedwig34 said:
Don't rename the file in step 6. Do option 12 to sighn the apk. That will create sighnedframework-res. Rename that file and put it in your zip.
I use version 5. Think the option is still 12 to sign the file.
EDIT: Sorry I see step 8 where you sign the apk. I missed that. Never used 4.9 myself.
Sent from my DROID X2 using Tapatalk
Click to expand...
Click to collapse
Thanks for that reply. I've since downloaded APKManager v5 and signed the APK like you said. I signed the .zip as well. However, I still ended up getting the syntax error.
After more research, I learned the differences between update-script and updater-script. So, I've converted to use the newer method (updater-script).
Inside my updater-script:
Code:
show_progress(1.000000, 0);
mount("yaffs2", "MTD", "system", "/system");
set_progress(0.200000);
package_extract_dir("system", "/system");
set_progress(0.400000);
set_perm(0,0,0644,"/system/framework/framework-res.apk");
set_progress(0.500000);
unmount("/system");
set_progress(0.900000);
ui_print("Update complete. FINALLY");
set_progress(1.000000);
I'm no longer getting the syntax error like before, but now, all I see is the following messages:
Code:
Finding update package...
Opening update package...
Installing update...
THEN IT JUST FREEZES. I end up having to remove my battery and reboot my phone.
Why is this so hard for me?
I do believe its your update script it does not look right at all to me but I'm not using same device will have a look later when I get up
sent from my dhd
leith51 said:
I do believe its your update script it does not look right at all to me but I'm not using same device will have a look later when I get up
sent from my dhd
Click to expand...
Click to collapse
Well, after even more research, I've learned some more. I've ditched the UPDATE-SCRIPT idea since updater-script is the preferred method of flashing.
In order to run updater-script, you need the "update-binary" files as well. As far as I know, all this file does is interpret the updater-script so it can be read. So I grabbed update-binary from a theme .zip that was posted on these forums and am using that.
Along with that, here is my modified updater-script
Code:
show_progress(0.200000, 10);
ui_print("Installing...");
mount("MTD", "system", "/system");
show_progress(0.500000, 40);
package_extract_dir("system", "/system");
show_progress(0.100000, 10);
ui_print("Done!");
unmount("/system");
This code seems to be working, but not 100% yet. I was getting status 6 errors until I converted the newline characters from windows to unix. Now that I've done that, I'm getting Status 7 errors.
So that's where I stand now. With a Status 7 error. Below is my updated .zip structure just for clarification:
Code:
/META-INF/com/google/android/(updater-script and update-binary)
/system/framework/(framework-res.apk)
I'm getting close, but not quite there.
i also am trying to figure this out, i hope you figure it out man
try this script
ui_print("Installing...");
show_progress(0.1, 0);
run_program("/sbin/busybox", "mount", "/system");
package_extract_dir("system", "/system");
show_progress(0.1, 10);
show_progress(0.2, 0);
show_progress(0.2, 10);
set_perm_recursive(0, 0, 0755, 0644, "/system/framework/framework-res.apk");
ui_print("Done!")
run_program("/sbin/busybox", "umount", "/system");
if this does not work let me know also like i said i dont have the device so are you you sure its mtd and not emmc ?
leith51 said:
try this script
ui_print("Installing...");
show_progress(0.1, 0);
run_program("/sbin/busybox", "mount", "/system");
package_extract_dir("system", "/system");
show_progress(0.1, 10);
show_progress(0.2, 0);
show_progress(0.2, 10);
set_perm_recursive(0, 0, 0755, 0644, "/system/framework/framework-res.apk");
ui_print("Done!")
run_program("/sbin/busybox", "umount", "/system");
if this does not work let me know also like i said i dont have the device so are you you sure its mtd and not emmc ?
Click to expand...
Click to collapse
Wow thanks! The busybox method worked flawlessly, no problem.
I'll update my original post in this topic to help whoever is needing help with this. I also created a script that will automate this entire process for you! Check the original post in this topic for all the details.
Thanks to everyone that helped!
Hi community,
Sorry for bumping this old thread but I'm having some issues when trying this stuff, I created the update.zip file but can't flash it.
The error I get with flashboot is
$ fastboot update update.zip
ERROR: could not clear input pipe; result e000404f, ignoring...
ERROR: could not clear output pipe; result e000404f, ignoring....
archive does not contain 'android-info.txt'
error: update package 'update.zip' has no android-info.txt
And
$ adb sideload upload.zip
shows error installation aborted on the device
This is the only thread that I've seen when users are reporting that the operation was successfully accomplished, although my device is different that's why I'm posting here.
Any help or comment is appreciated,
King regards.

Dumb question.. How to make a update.zip

I know people talk about this all the time... I found a lot of thread of how to create a flashable zip file.. But every thread has it different than others. So I have tried it several ways and still get errors...
I'm trying to make a flashable zip to push an apk to system/app and I decided to do this to test it out...
This is the update-script I have tested it with
run_program("/sbin/busybox", "mount", "/system");
delete("/system/app/FlashBarService.apk");
package_extract_dir("system", "/system");
run_program("/sbin/busybox", "unmount", "/system");
Ok what I figure is the run_program is to mount system with busybox. Every line i see that it have this on there.. Then Im trying to replace an app from system/app so I put in delete("/system/app/name of app");
then package_extract_dir("system", :/system"); is so recovery can extract and push the zip file
and again run_program to unmount... But recovery is giving me an error status 4
I also deleted that delete line and still got status 4.
Again this is another way I tried it to do it with
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/cache");
run_program("/sbin/busybox", "mount", "/data");
package_extract_dir("system", "/system");
run_program("/sbin/busybox", "umount", "/system");
run_program("/sbin/busybox", "umount", "/cache");
run_program("/sbin/busybox", "umount", "/data");
And this way too
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/data");
package_extract_dir("system", "/system");
run_program("/sbin/busybox", "unmount", "/system");
run_program("/sbin/busybox", "unmount", "/data");
And till got status 4.
Inside my xxx.zip I have it set up this way META-INF/com/google/android
And other folder on root system/app
I have a GS3.
Like I said I have followed several threads about this and all looks different and none worked.
I know this is supposed to be the easies thing to do when it comes to android. But I just need to be directed to the right path.
Can somebody with more experience with this help me out?
Status 4 means that you have a syntax error somewhere... (yep, you have a syntax error or you're using notepad or wordpad to edit the files. That's it).
The best guide I ever seen out there is this one, take a look at it.
I use notepad++ to edit any android related files like build.prop. Thanks will look at that
Sent from my SGH-T999 using Tapatalk 4 Beta
Anyone?
gypsy214 said:
I use notepad++ to edit any android related files like build.prop. Thanks will look at that
Sent from my SGH-T999 using Tapatalk 4 Beta
Click to expand...
Click to collapse
Yeah. Notepad++ is best for this type of Editing in Windows.
Have you chosen the correct format in settings?
Edit>>EOL Conversions>>UNIX Format
The problem may be that windows use CR(carriage return) while unix(Android) uses LF (line feed) for a new line character.
You can also try to mount the system manually(there is option in CWM for that) & may be leave only the "package_extract_dir("system", "/system");" in the updater script.
Also, post the zip file here, so that problem can be easily identified.
GobletSky31689 said:
Yeah. Notepad++ is best for this type of Editing in Windows.
Have you chosen the correct format in settings?
Edit>>EOL Conversions>>UNIX Format
The problem may be that windows use CR(carriage return) while unix(Android) uses LF (line feed) for a new line character.
You can also try to mount the system manually(there is option in CWM for that) & may be leave only the "package_extract_dir("system", "/system");" in the updater script.
Also, post the zip file here, so that problem can be easily identified.
Click to expand...
Click to collapse
Will do.. But it works when I use notepad++ to add ui_print.

[HELP] Fix TWRP Error 255

Hello XDA Members! I Have Developed A Custom ROM. I Have Create A updater-script. It Showing "Process Ended With Error:255". Here Is My updater-script.
Code:
ui_print(">>> ZenMod Xperia <<<");
format("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "0", "/system");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system");
ui_print("Installing ZenMod");
ui_print("Please wait...");
show_progress(1.34,175);
package_extract_dir("system", "/system");
unmount("/system");
ui_print("Flashing Kernel...");
package_extract_file("boot.img", "/dev/block/platform/msm_sdcc.1/by-name/boot");
ui_print("Finished!");
show_progress(1.000000, 0);
Anybody Know How To Fix It?. If Anybody Know Please Help Me...
in recovery , that command row make the mistake ???
And where are the symlinks????
format("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "0", "/system"); <- What's the purpose of "0" in here?
Everything else looks fine though.
Copy the logcat of TWRP and upload, so you could help more
lol u need symlinks, permitions and much more and also add get device prop..lol updater script cant be this much short...
Harsh_1998 said:
lol u need symlinks, permitions and much more and also add get device prop..lol updater script cant be this much short...
Click to expand...
Click to collapse
lol why would he add symlinks and permissions uselessly?
and for the device prop it's a good practice to add it but not so necessary.
Updater-script can be shorter than this.
http://forum.xda-developers.com/showthread.php?t=1931585

Categories

Resources