Messing around with the HTC Kitchen and I am getting an error when trying to build a ROM.
Error is:
Code:
format() expects 3 args, got 2
(status 7)
installation aborted
Any ideas?
Find the line it is referring to in the update(r) script. Should be the 7th line as it tells you that. There is probably a comma missing between the numbers in the parenthesis
This is what the script is
Code:
format("MTD", "cache");
format("MTD", "boot");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "boot"),
delete("/tmp/boot.img"));
format("MTD", "userdata");
mount("MTD", "userdata", "/data");
package_extract_dir("data", "/data");
set_perm(1000, 1000, 0771, "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
format("MTD", "system");
mount("MTD", "system", "/system");
package_extract_dir("system", "/system");
I try taking out the format lines, and I get the same error except on mount() this time.
Did you run the script checker?
Don't remove the lines manually... open your kitchen and change " the wipe status if your ROM"
Vinchenzop said:
Did you run the script checker?
Click to expand...
Click to collapse
Script checker only works for update-scripts' not updater-scripts. At least to my understanding... unless there is another one out there ? I am running HTC Android Kitchen, v0.161 on Ubuntu btw.
AT&T I747 UCUEMJB Stock Restore
This is Abandoned. I recommend you do not use this to restore you phone as to a fear of bricking your device.
This is a last ditch effort for restoring the AT&T I747 to factory stock. This zip will wipe all data, clear the binary flash count, restore the system, flash the latest KNOX firmware and stock recovery. There is absolutely no possible way to clear the warranty bit back to 0 IT IS IMPOSSIBLE TO REVERT ONCE TRIPED!! Not even Samsung can undo this.! Its the price we pay for rooting our phones. Also once tripped KNOX is rendered useless and will no longer be available as an app in your drawer.
This is meant for restoring your phone to as near stock as possible in hopes to capture any future OTA updates. Can't guarantee that will work either...
As always I don't take any responsibility for what you do with your phone. Please do not flash this if you don't understand the consequences. This thread will have limited support. Use with caution!
Directions are really simple.
Downloads:
TWRP and CWM 6.0.4.5 http://www.mediafire.com/download/30idxwhg2hidxx2/ATT_I747_UCUEMJB_StockRestore_2282014.zip
MD5: 739f9cf2d0eb570ec7d18146d5e4a45f
CWM 6.0.4.7: http://www.mediafire.com/download/h7mw94pfj5qssty/ATT_I747_UCUEMJB_StockRestore_CWM_2282014.zip
MD5: 487b55449ecf7b0c273d5df86f51c170
Odin: http://forum.xda-developers.com/showpost.php?p=52341560&postcount=227
Verify the MD5
Flash via custom recovery (CWM or TWRP).
When flash is done
Allow phone to fully boot up.
Boot into download mode and verify the count has been reset. (Hold Volume Down, Home and Power till you see D/L mode appear. Quickly release button combo, then Volume Up to continue)
Boot into recovery and verify that it is now stock. (Hold Volume Up, Home and Power till you see "Recovery Booting..." in the upper left hand corner then immediately release button combo)
If your selling your phone or returning for warranty now would be a good time to give one last factory data reset before boxing.
XDA:DevDB Information
MJB Stock Restore, ROM for the AT&T Samsung Galaxy S III
Contributors
enewman17
ROM OS Version: 4.3.x Jellybean
Version Information
Status: Beta
Created 2014-02-23
Last Updated 2014-05-26
First!!! Thank you. Takes out a worry (no warranty but resale potential is nice). Does this work with Knox and efuse?
Sent from my awesome phone.
Second. Will keep this is my arsenal.
Great job on this. Hoping I won't ever need this but it sure is a relief to know someone put hard work into making this for those of us that have no choice
I love you! Thank you so much for this!
Quick noob question... Is it possible to Flash this via Odin?
imcol said:
I love you! Thank you so much for this!
Quick noob question... Is it possible to Flash this via Odin?
Click to expand...
Click to collapse
Custom recovery as mentioned in instructions.
Sent from my awesome phone.
aybarrap1 said:
First!!! Thank you. Takes out a worry (no warranty but resale potential is nice). Does this work with Knox and efuse?
Sent from my awesome phone.
Click to expand...
Click to collapse
Not sure what you mean. Yes this is completely stock so it has knox.
The qfuse or efuse.... are one-time-programmable (OTP) elements that are used to enable and disable security and debug features of the MSM7xxx device. The Qfuses are implemented as an array of one-bit fuse blocks. The Qfuse banks are used for two purposes — providing non-volatile, immutable storage of data, and configuration of hardware features. For immutable data storage, the Qfuses are read via a shadow register which contains the actual value stored and includes error correction. For configuration, each Qfuse is associated with a one-time write register. The value of each Qfuse is sensed at power up and stored in a register. Blowing Qfuses is done by placing a value to a register and applying current to the fuse. The fuse registers are accessible through JTAG and software readable address locations.
So long as your not trying to downgrade there is no fear of erasing this register. Previous versions did not use this feature to secure the bootloader. So in download mode you will see "Warranty Bit 1" if we get an update and they update the firmware it will jump to 2. Does this help? :good:
Sorry about that but thank you. I had a dumb moment. Knew what it was but didn't think first before posting the question
Sent from my awesome phone.
Awesome...Thanks so so much :highfive:
If I flash this can I still root my S3 again after?
Thanks enewman17!
This lil' bugger is hard to get and hard to find. Plus, Samsung and AT&T only made 4.3 OTA only, therefore wasn't released as a ROM. <grrrrr>
No worries though, thanks to you for digging this up. I'm keeping this, in case my phone starts acting crazy or wanted the "stock feel" back.
Big ups, enewman17!
enewman17 said:
AT&T I747 UCUEMJB Stock Restore
Here is what we got. This zip will wipe all data, clear the flash count, restore the system, flash MJB firmware and stock recovery.
I've flashed this many many times and seems to be working just fine. I can not guarantee this will work for any future OTA's (as there is no way to verify)
but should work just fine for any service or warranty work. As always I don't take any responsibility for what you do with your phone.
Directions are really simple.
Download http://www.mediafire.com/download/2j5pf893spm3zpy/ATT_I747_UCUEMJB_StockRestore.zip
Verify the MD5: bb4a69d922030327c97c3a8775476fce
Flash via custom recovery (CWM or TWRP).
When flash is done
Allow phone to fully boot up.
Boot into download mode and verify the count has been reset. (Hold Volume Down, Home and Power till you see D/L mode appear. Quickly release button combo, then Volume Up to continue)
Boot into recovery and verify that it is now stock. (Hold Volume Up, Home and Power till you see "Recovery Booting..." in the upper left hand corner then immediately release button combo)
If your selling your phone or returning for warranty now would be a good time to give one last factory data reset before boxing.
XDA:DevDB Information
MJB Stock Restore, a ROM for the AT&T Samsung Galaxy S III
Contributors
enewman17
ROM OS Version: 4.3.x Jellybean
Version Information
Status: Testing
Created 2014-02-23
Last Updated 2014-02-22
Click to expand...
Click to collapse
TheStart said:
If I flash this can I still root my S3 again after?
Click to expand...
Click to collapse
Absolutely, there are a couple of ways. First you can flash cf auto root via odin or flash cwm or twrp with one of there Odin flashable.tars then flash the latest recovery flashable super user
Sent from my SAMSUNG-SGH-I747 using Tapatalk
Downloaded and saved for later use. Thanks for your hard work and for your unrelentless giving to the community. I hope to one day learn half of what you know about building stuff for phones so I too can give to the community. Thanks again.
Sent from my SAMSUNG-SGH-I747 running S3Rx MJ2 bootloader MJB modem and it is smooth
This was needed badly around here. You're a genius.
However, we still need more to testers to verify this around here as with anything new. I cannot use this yet because I'm still on 4.1.2.
Thanks for this update..
Sent from my SGH-I747 using Tapatalk
I keep getting the "Status 7 Installation Aborted" error. And it says "format () expects 5 args, got 3
I checked the MD5 Checksum and was flashing it through CWM 6.** (currently on 4.3.1 / CM 10.2.1 -d2att)
This is only for AT&T versions correct?
Sent from my SGH-I747 using Tapatalk
ParryB said:
I keep getting the "Status 7 Installation Aborted" error. And it says "format () expects 5 args, got 3
I checked the MD5 Checksum and was flashing it through CWM 6.** (currently on 4.3.1 / CM 10.2.1 -d2att)
Click to expand...
Click to collapse
I'm getting the same error
pwned101 said:
I'm getting the same error
Click to expand...
Click to collapse
ParryB said:
I keep getting the "Status 7 Installation Aborted" error. And it says "format () expects 5 args, got 3
I checked the MD5 Checksum and was flashing it through CWM 6.** (currently on 4.3.1 / CM 10.2.1 -d2att)
Click to expand...
Click to collapse
Alright here is my install script. I only tested on the latest twrp and with the binary I'm using it only wanted 3 arguments.
assert(getprop("ro.bootloader") == "I747UCALEM" || getprop("ro.bootloader") == "I747UCALG1" || getprop("ro.bootloader") == "I747UCDLK3" || getprop("ro.bootloader") == "I747UCDMG2" || getprop("ro.bootloader") == "I747UCUEMJ2" || getprop("ro.bootloader") == "I747UCUEMJB");
ui_print("*********************************");
ui_print("* TouchWiz 4.3 I747UCUEMJB *");
ui_print("* Stock Restore *");
ui_print("*********************************");
ui_print("");
run_program("/sbin/busybox", "mkdir", "/tmp");
ui_print("[*] Resetting flash counter");
package_extract_dir("tools", "/tmp");
set_perm(0, 0, 0777, "/tmp/clearcount.sh");
set_perm(0, 0, 0777, "/tmp/bl");
run_program("/tmp/clearcount.sh");
delete("/tmp/clearcount.sh", "/tmp/bl");
unmount("/cache");
unmount("/system");
unmount("/data");
ui_print("[*] Formatting cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p17");
ui_print("[*] Formatting system");
format("ext4", "EMMC", "/dev/block/mmcblk0p14");
mount("ext4", "EMMC", "/dev/block/mmcblk0p17", "/cache");
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p15", "/data");
ui_print("[*] Formatting dalvik");
delete_recursive("/data/dalvik-cache");
delete_recursive("/data/local");
ui_print("[*] Formatting data");
run_program("/sbin/sh", "-c", "find /data/* -maxdepth 0 -type d ! -name 'media' -exec rm -rf {} +");
ui_print("[*] Restoring system");
package_extract_dir("system", "/system");
ui_print("[*] Symlinking");
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("debuggerd", "/system/bin/csview");
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/reboot");
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("mksh", "/system/bin/sh");
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/touch");
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");
symlink("toolbox", "/system/bin/chcon");
symlink("toolbox", "/system/bin/setenforce");
symlink("toolbox", "/system/bin/grep");
symlink("toolbox", "/system/bin/runcon");
symlink("toolbox", "/system/bin/touchinput");
symlink("toolbox", "/system/bin/md5");
symlink("toolbox", "/system/bin/getsebool");
symlink("toolbox", "/system/bin/setsebool");
symlink("toolbox", "/system/bin/restorecon");
symlink("toolbox", "/system/bin/getenforce");
symlink("toolbox", "/system/bin/load_policy");
symlink("toolbox", "/system/bin/cp");
symlink("toolbox", "/system/bin/playback");
symlink("toolbox", "/system/bin/du");
symlink("wiperiface_v02", "/system/bin/wiperiface");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 0, 0777, 0777, "/system/etc/init.d");
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(1000, 1000, 0640, "/system/etc/bluetooth/auto_pair_devlist.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_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm(0, 2000, 0755, "/system/vendor/lib/hw");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
ui_print("[*] Extracting Kernel");
package_extract_file("boot.img", "/dev/block/mmcblk0p7");
ui_print("[*] Restoring stock firmware");
package_extract_dir("firmware", "/tmp");
set_perm(0, 0, 0777, "/tmp/dd");
run_program("/tmp/dd", "if=/tmp/NON-HLOS.bin", "of=/dev/block/mmcblk0p1");
run_program("/tmp/dd", "if=/tmp/sbl1.mbn", "of=/dev/block/mmcblk0p2");
run_program("/tmp/dd", "if=/tmp/sbl2.mbn", "of=/dev/block/mmcblk0p3");
run_program("/tmp/dd", "if=/tmp/sbl3.mbn", "of=/dev/block/mmcblk0p4");
run_program("/tmp/dd", "if=/tmp/aboot.mbn", "of=/dev/block/mmcblk0p5");
run_program("/tmp/dd", "if=/tmp/rpm.mbn", "of=/dev/block/mmcblk0p6");
run_program("/tmp/dd", "if=/tmp/tz.mbn", "of=/dev/block/mmcblk0p8");
run_program("/tmp/dd", "if=/tmp/recovery.img", "of=/dev/block/mmcblk0p18");
delete_recursive("/tmp");
unmount("/system");
This is what I have: format with 3 argument
ui_print("[*] Formatting cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p17");
ui_print("[*] Formatting system");
format("ext4", "EMMC", "/dev/block/mmcblk0p14");
This is what CWM wants: format with 5 argument.
ui_print("[*] Formatting cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p17", "0", "/cache");
ui_print("[*] Formatting system");
format("ext4", "EMMC", "/dev/block/mmcblk0p14", "0", /system");
It's an easy fix, just open the zip archive pull updater-script form the meta-inf/com/google/android folder. Make the changes then just drag the updater-script back into the zip. I'll upload another one with the changes though.
shiniyoyo said:
This is only for AT&T versions correct?
Sent from my SGH-I747 using Tapatalk
Click to expand...
Click to collapse
That is correct