[Q] Creating a Kernel update zip file - Upgrading, Modifying and Unlocking

Ok I'm a bit confused. After hours upon hours of trying, I have yet to successfully create a WORKING update.zip file for flashing a kernel.
I'm trying to create an update.zip file for the 2.6.35.10 kernel from the leaked T-Mobile US Gingerbread 2.13.531.5 ROM.
I properly unpacked the boot.img from the ROM, and my updater-script file seems correct, then I create the zip, sign it and flash thru CWM. The update completes without errors, however, when I reboot the phone, it still says I have 2.6.32.28. I'm stuck. My updater-script is as follows:
Code:
ui_print("");
ui_print("T-Mobile US - G2 Kernel Update");
ui_print("Kernel Version: 2.6.35.10");
ui_print("Prepared by: spyral");
ui_print("");
ui_print("Using: AnyKernel Updater by Koush.");
ui_print("");
set_progress(1.000000);
ui_print("Clearing dalvik and boot cache ...");
delete_recursive("/data/dalvik-cache");
delete_recursive("/data/boot-cache");
ui_print("Extracting System Files...");
set_progress(2.000000);
mount("yaffs2", "MTD", "system", "/system");
package_extract_dir("system", "/system");
unmount("/system");
set_progress(5.000000);
ui_print("");
ui_print("Extracting Kernel files...");
package_extract_dir("kernel", "/tmp");
ui_print("Installing kernel...");
set_progress(6.000000);
set_perm(0, 0, 0777, "/tmp/dump_image");
set_perm(0, 0, 0777, "/tmp/mkbootimg.sh");
set_perm(0, 0, 0777, "/tmp/mkbootimg");
set_perm(0, 0, 0777, "/tmp/unpackbootimg");
run_program("/tmp/dump_image", "boot", "/tmp/boot.img");
run_program("/tmp/unpackbootimg", "-i", "/tmp/boot.img", "-o", "/tmp/");
run_program("/tmp/mkbootimg.sh");
write_raw_image("/tmp/newboot.img", "boot");
set_progress(10.000000);
ui_print("Done!");
I've tried multiple times, with no luck. Any ideas?

Btw, sorry if I posted this in the wrong forum Mods... feel free to move it if need be. I'm still learning the ropes of this place.
Sent from my HTC Vision using XDA Premium App

Nothin so far, huh?
Sent from my HTC Vision using XDA Premium App

Still nothin on this??
Sent from my HTC Vision using XDA Premium App

Related

Question about HTC Kitchen

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.

Flashable ZIP How To?

How do you make flashable zip?
i have alot of mods on my arc s and i want them all in one and flashable..
http://forum.xda-developers.com/showthread.php?t=1374394
Flashable Zip
In few words:
You make a zip file with the order of how the files go.
You make an updater-script which are the instructions for CWM to flash the correct order.
You sign it and that's it.
Everything is in the tutorial XperienceD posted.
XperienceD said:
http://forum.xda-developers.com/showthread.php?t=1374394
Flashable Zip
Click to expand...
Click to collapse
IM sorry but im kinda slow... in the "Flashable Clockwork Mod (CWM) zip:"
TO UNDERSTAND UR GUIDE I OPEN SOME SCRIPT TO GET AN IDEA BUT I FOUND SOME LINES THAT IS NOT INCLUDED IN YOUR EXAMPLE.
LIKE THESE:
show_progress(1.000000, 0);
set_progress(0.125000);
mount("MTD", "system", "/system");
package_extract_file("fix_permissions", "/tmp/fix_permissions");
set_perm(0, 0, 0777, "/tmp/fix_permissions");
WHAT IS show_progress(1.000000, 0); AND set_progress(0.125000); ??
I GUESS mount("MTD", "system", "/system") IS THE SAME AS run_program("/sbin/mount", "/system"); ??
AND ALSO GUESS THAT package_extract_file("fix_permissions", "/tmp/fix_permissions"); AND set_perm(0, 0, 0777, "/tmp/fix_permissions"); IS FOR THE PERMISSIONS, IF U HAVE IN UR ZIP RIGHT?
I DONT REALLY UNDERSTAND THOSE OR I CAN JUST IGNORE THEM?

framework-res permissions

is this permissions script is right? always getting installation complete.
Code:
ui_print("SET FRAMEWORK-RES PERMISSIONS");
mount("MTD", "system", "/system");
set_perm(0, 0, 0644, "/system/framework/framework-res.res");
unmount("/system");
after reboot i'm getting boot loop, forgot set permissions for framework-res.res...
its ok, after one hour of search and making a topic i only saw that type of file is apk not res

AT&T I747 UCUEMJB 4.3 Stock Restore

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

error 6 while trying to use set_perm in updater-script

Heloo, i have hard times finding a solution to my problem, here my script :
Code:
ui_print("Starting...");
mount("ext4", "EMMC", "/dev/block/mmcblk0p41", "/system");
ui_print("...system mounted");
package_extract_dir("modifiedframework", "/system/framework");
ui_print("...framework-res.apk transfered");
set_perm(0, 0, 0644, "/system/framework/framework-res.apk");
ui_print("...permissions set");
unmount("/system");
ui_print("...system unmounted");
it return : Updater process ended with ERROR: 6
and the script is working fine if i remove the line
Code:
set_perm(0, 0, 0644, "/system/framework/framework-res.apk");
any help is welcome, thanks you
thanks for help... i have found the solution, https://github.com/mission-impossible-android/mission-impossible-android/issues/50. i'm using this update-binary and now it is working.
@linpinpin
I'm facing exactly the same issue with TWRP on Xiaomi. set_perm(...); causing error: 6 regardless it's syntactically fine.
Which updater binary can I use for my device?
i use this one https://github.com/mikeperry-tor/mi...ult/META-INF/com/google/android/update-binary click on download
i'm using a xiaomi also

Categories

Resources