[HTC EVO 3D] arshcaria:
Hi all!

I made an EVO 3D GSM rom(zip rom),using dsixda's Android Kitchen.

Kitchen thread:http://xdaforums.com/showthread.php?t=633246

But when I was flashing this zip file with recovery, an error occured.

Error message is something like this:

Installing: /sdcard/rom.zip
Finding update package...
Opening update package...
Installing update...
E:Error in /sdcard/rom.zip
(Status 0)
Installation aborted.

System environment:

dsixda's Android Kitchen

Cygwin, Java 6 SDK

Windows XP Pro / Windows 7 Pro

I followed the kitchen's instruction with the following steps:

zipaligne apks,

add updater-script to rom,

sign rom. (I did not even add root permission nor deodex apks.)

Then the kitchen generated a zip file.

I renamed it with "rom.zip", put it into sdcard and flashed it.

...

Then error occured:

Installing: /sdcard/rom.zip
Finding update package...
Opening update package...
Installing update...
E:Error in /sdcard/rom.zip
(Status 0)
Installation aborted.

More details:

system.img and boot.img are taken from shipped RUU rom,

recovery version: 4EXT Recovery 2.27,

device unlocked and s-off.

Any guys could help me with it?

Thank you very!

=====================================================

Get it solved(in a compromising way).

After searching forum for hours, I found these two threads:

http://xdaforums.com/showthread.php?t=1197315

http://xdaforums.com/showthread.php?t=1437936

Then I guess there is sth wrong with update-binary.

So I copied a working update-binary file from other evo 3d rom.

And I modified udpater-script for some syntax changes.

Then it worked.

udpater-script code:

#Updater-script
#For HTC EVO 3D

show_progress(0.500000, 0);

ui_print("-Checking Model ID");
assert(getprop("ro.product.device") == "shooteru" || getprop("ro.build.product") == "shooteru" || getprop("ro.product.board") == "shooteru");
ui_print("-Success!");
ui_print("-Model ID - HTC shooter");
ui_print("-Ok to proceed");
ui_print("Now flashing ROM");
ui_print("Please be patient");
ui_print("1st boot may take a few minutes");
ifelse(is_mounted("/system") == "/system", unmount("/system"));
ifelse(is_mounted("/data") == "/data", unmount("/data"));

show_progress(0.500000, 40);

ui_print("-Writing Data");
mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/data");
package_extract_dir("data", "/data");

ui_print("-Formatting System as EXT4");
format("ext4", "EMMC", "/dev/block/mmcblk0p22");
ui_print("-Writing System");
mount("ext4", "EMMC", "/dev/block/mmcblk0p22", "/system");
package_extract_dir("system", "/system");
show_progress(0.400000, 0);
symlink("dumpstate", "/system/bin/dumpcrash");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/cmp");
symlink("toolbox", "/system/bin/date");
symlink("toolbox", "/system/bin/dd");
symlink("toolbox", "/system/bin/df");
symlink("toolbox", "/system/bin/dmesg");
symlink("toolbox", "/system/bin/getevent");
symlink("toolbox", "/system/bin/getprop");
symlink("toolbox", "/system/bin/hd");
symlink("toolbox", "/system/bin/id");
symlink("toolbox", "/system/bin/ifconfig");
symlink("toolbox", "/system/bin/iftop");
symlink("toolbox", "/system/bin/insmod");
symlink("toolbox", "/system/bin/ioctl");
symlink("toolbox", "/system/bin/ionice");
symlink("toolbox", "/system/bin/kill");
symlink("toolbox", "/system/bin/ln");
symlink("toolbox", "/system/bin/log");
symlink("toolbox", "/system/bin/ls");
symlink("toolbox", "/system/bin/lsmod");
symlink("toolbox", "/system/bin/lsof");
symlink("toolbox", "/system/bin/mkdir");
symlink("toolbox", "/system/bin/mount");
symlink("toolbox", "/system/bin/mv");
symlink("toolbox", "/system/bin/nandread");
symlink("toolbox", "/system/bin/netstat");
symlink("toolbox", "/system/bin/newfs_msdos");
symlink("toolbox", "/system/bin/notify");
symlink("toolbox", "/system/bin/printenv");
symlink("toolbox", "/system/bin/ps");
symlink("toolbox", "/system/bin/renice");
symlink("toolbox", "/system/bin/rm");
symlink("toolbox", "/system/bin/rmdir");
symlink("toolbox", "/system/bin/rmmod");
symlink("toolbox", "/system/bin/route");
symlink("toolbox", "/system/bin/schedtop");
symlink("toolbox", "/system/bin/sendevent");
symlink("toolbox", "/system/bin/setconsole");
symlink("toolbox", "/system/bin/setprop");
symlink("toolbox", "/system/bin/sleep");
symlink("toolbox", "/system/bin/smd");
symlink("toolbox", "/system/bin/start");
symlink("toolbox", "/system/bin/stop");
symlink("toolbox", "/system/bin/sync");
symlink("toolbox", "/system/bin/top");
symlink("toolbox", "/system/bin/umount");
symlink("toolbox", "/system/bin/uptime");
symlink("toolbox", "/system/bin/vmstat");
symlink("toolbox", "/system/bin/watchprops");
symlink("toolbox", "/system/bin/wipe");
ui_print("-Setting permissions");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm(0, 3003, 06755, "/system/bin/ip");
set_perm(0, 3003, 02750, "/system/bin/netcfg");
set_perm(0, 3004, 02755, "/system/bin/ping");
set_perm(0, 2000, 06750, "/system/bin/run-as");
set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");
set_perm(0, 0, 0755, "/system/etc/bluetooth");
set_perm(1000, 1000, 0640, "/system/etc/bluetooth/auto_pairing.conf");
set_perm(3002, 3002, 0444, "/system/etc/bluetooth/blacklist.conf");
set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm(0, 0, 06755, "/system/bin/su");
symlink("/system/bin/su", "/system/xbin/su");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
symlink("/system/xbin/busybox", "/system/bin/busybox");
package_extract_file("installbusybox", "/tmp/installbusybox");
set_perm(0, 0, 0777, "/tmp/installbusybox");
run_program("/tmp/installbusybox");
show_progress(0.1, 10);
show_progress(0.2, 0);
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "boot"),
delete("/tmp/boot.img"));
ui_print("-Cleaning up");
ui_print("-Formatting Cache");
unmount("/cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p24");
ui_print("-Deleting Dalvik-Cache");
delete_recursive("/data/dalvik-cache");
delete("/data/.battery-calibrated");
delete_recursive("/data/data/com.noshufou.su");
delete_recursive("/data/system/appusagestats");
delete_recursive("/data/system/dropbox");
delete_recursive("/data/system/usagestats");
show_progress(0.100000, 0);
ui_print(" ");
ui_print("-Flashing Complete");
ui_print(" ");
ui_print(" ");
ui_print(" ");
ui_print("-Please ensure you");
ui_print("-complete at least 1 full boot");
ui_print("-prior to flashing any themes");
ui_print(" ");
show_progress(0.100000, 0);
ui_print(" ");
unmount("/data");
unmount("/system");

This script is mainly written by someone else, I just modified it with some minor changes.

And I wanna say THANKS to the author, though I don't know who you are. :P