[Q] - DSIXDA Kitchen updater-script conversion (bug?) in HTC ONE X - Android Q&A, Help & Troubleshooting

Hi all.
First of all, and dont know if this a kitchen bug or my problem, but here it goes.
I passed last days trying to get DSIXDA Kitchen working properly with HTC ONE X device, but i got some problems with updater-script.
I dont know if the problem comes from updater-script to update-script conversion when extracting rom, or from update-script to updater-script conversion when building the rom.
But the problem is, that the kitchen doesnt convert correctly the final updater-script, ill try to give some information about this to see if anyone can give me a clue.
PC Specs:
Windows 7 Professional X64
Java Path: C:\Program Files (x86)\Java\jdk1.6.0_20\bin
Cygwin and Java packages installed according the DSIXDA 1) Windows (2000, XP, Vista, 7) tutorial in his kitchen topic.
Rom that im using is MIUI ENG Sense based. (but i tryed with other roms like AOKP and the output updater-script keeps with the same problem.
Preparing Kitchen and testing stuff:
I setted up kitchen according DSIXDA tutorial, and it works ok.
Then to make kitchen compatible with HTC ONE X i used edify_defs file provided by theintelligent in here http://forum.xda-developers.com/showthread.php?t=1885139
Extrated rom with all kitchen defaults, (updater to update conversion, etc)
Didnt made any changes to rom (just to test this) and build the rom with kitchen defaults again (zipalign,update to updater,sign, etc)
And the problem is in here:
Original updater-script:
Code:
format("ext4", "EMMC", "/dev/block/mmcblk0p12", "0");
mount("ext4", "EMMC", "/dev/block/mmcblk0p12", "/system");
(full updater-script: http://pastebin.com/GKHJCThk)
Kitchen converted updater-script:
Code:
format("ext4", "EMMC", "/dev/block/mmcblk0p12");
mount("ext4", "EMMC", "/dev/block/mmcblk0p12", "/system"); 0
(full updater-script: http://pastebin.com/vUdzKcm1)
The kitchen adds that '0' right there in front of mount line and doesnt add the complete string for format line.
If i flash the rom with the Kitchen updater-script i got this error:
Code:
-- Installing: /sdcard/Arquivo/roms/MIUI_X/endeavoru_signed_092512_200944.zip
Finding update package...
I:Update location: /sdcard/Arquivo/roms/MIUI_X/endeavoru_signed_092512_200944.zip
Opening update package...
Installing update...
line 4 col 20: syntax error, unexpected STRING, expecting $end
1 parse errors
E:Error in /sdcard/Arquivo/roms/MIUI_X/endeavoru_signed_092512_200944.zip
(Status 6)
Installation aborted.
So i removed that '0' that is in front of format line but it keeps giving my an error
Code:
-- Installing: /sdcard/Arquivo/roms/MIUI_X/endeavoru_signed_092612_125439_C1.zip
Finding update package...
I:Update location: /sdcard/Arquivo/roms/MIUI_X/endeavoru_signed_092612_125439_C1.zip
Opening update package...
Installing update...
script aborted: format() expects 4 args, got 3
format() expects 4 args, got 3
E:Error in /sdcard/Arquivo/roms/MIUI_X/endeavoru_signed_092612_125439_C1.zip
(Status 7)
Installation aborted.
(full recovery.log: http://pastebin.com/La8d1U6h)
So my solution was to replace that 2 lines from the kitchen updater-script to the original updater-script.
Now everything works ok, and no problems flashing.
So this is a kitchen problem ? edify_defs problem ? my pc problem ? my phone problem ?
I know i can solve my problem editing the updater-script before i build the rom, but this isnt supposed to happen, i think, the kitchen should convert it correctly, and automatically.
So im confused, its a kitchen problem or its my system problem ? I say this because i saw other people report cooking with sucess for HTC ONE X with DSIXDA Kitchen with no problems, so why i have this problem ? My HTC ONE X is different ?
I know i can round the problem editing mannualy the file, but my intention is to make things right, and make the kitchen work 100% to HTC ONE X.
If annyone can give me some clues and help, ill appreciate and maybe some users with my problem will appreciate to.
Thanks all

Ok!
Problem solved thanks to "backfromthestorm" hint!!
The problem is the Kitchen update to updater conversion.
The kitchen doesnt make correctly the conversion.
So the solution is:
not give any script to kitchen for conversion, remove META-INF folder from original zip and let kitchen create a fresh updater..

ruizit0 said:
Ok!
Problem solved thanks to "backfromthestorm" hint!!
The problem is the Kitchen update to updater conversion.
The kitchen doesnt make correctly the conversion.
So the solution is:
not give any script to kitchen for conversion, remove META-INF folder from original zip and let kitchen create a fresh updater..
Click to expand...
Click to collapse
delete META-INF Folder from rom.zip in original Update FOlder and then create working folder?

-Happy Feet- said:
delete META-INF Folder from rom.zip in original Update FOlder and then create working folder?
Click to expand...
Click to collapse
Really old bump here, but Im still having issues with this. Did you figure out how to make kitchen generate the proper updater script? I still get errors and have tried a million different ways, but end up with Status 0 every time in recovery.
Any luck getting it working?

Related

[Q] Question about making a flashable ROM...

I am trying to build a flashable zip that i compile from the stock system.img and boot.img files from 2.00.405.3 using dsixda's HTC Android Kitchen...
When i go to flash the rom that it creates (even if i dont mod anything else ...) i get a status 0 error..
I edited the update script so that every line could be identified so i could find the last error...
and the last print was "package_extract_dir"...
script follows:
Code:
...
ui_print("format");
format("MTD", "system");
ui_print("mount");
mount("MTD", "system", "/system");
ui_print("package_extract_dir");
package_extract_dir("system", "/system");
ui_print("symlinks");
....
The really interesting thing is that a few lines above this (as can be seen) i format the system partition and upon re-boot the stuff from the old device rom (before my flash attempt) is still on there! ...
What the heck is going on?
Thanks
Kris
Because the flyer/view doesn't use mtd partitions...it uses emmc.
The dsixda kitchen does some conversions on the updater-script that requires some device specific information about mounts. He created a definition folder where you drop device specific definitions for the common mount points.
Go into the kitchen folder > tools/edify_defs
Inside of that folder there are various device definitions. Create one for the flyer. There's also a template in there, but I didn't have much luck editing the template. I just looked at some of the newer defs and plugged in the View mount points.
Here's the one I used for the View, but I'm not sure if the mount points are the same on the Flyer. Also, I'm not sure what the boot mount point for the View is, but writing the boot doesn't seem to require the specific mount.
Code:
change_mnt=yes
param1=ext4
param2=EMMC
param1_sdcard=vfat
param2_sdcard=MTD
sys_mnt=\/dev\/block\/mmcblk0p26
cache_mnt=\/dev\/block\/mmcblk0p31
boot_mnt=???
data_mnt=\/dev\/block\/mmcblk0p30
sdcard_mnt=\/dev\/block\/mmcblk1p1
Ahh that explains it ... i looked through my procs/mounts and found the info
sys_mnt=\/dev\/block\/mmcblk0p25
cache_mnt=\/dev\/block\/mmcblk0p30
boot_mnt=???
data_mnt=\/dev\/block\/mmcblk0p29
Kris
I put in:
Code:
format("ext3", "EMMC", "/dev/block/mcblk0p25");
mount("ext3", "EMMC", "/dev/block/mcblk0p25", "/system");
This causes the status 0 error still when i copy over the files tho with package_extract_dir
Also tried ext4 ... this produces the same issue as above (status 0)
Thanks
Kris
I tried using what was listed about for the View but it doesn't work on the wifi Flyer. How do you find out what they should be? I get a Status 1 error when trying to flash.
Try cat /proc/emmc. Boot is mmcblk0p22 on the view. Thanks to IEF for the pointer
Sent from my SPH-D700 using XDA App

Update-Binary for Evo 3d (UOT Kitchen)

Hey guys just trying to throw a little theme together on UOT. Does anyone know which type of update-binary the Evo 3D uses or is this Recovery dependent?
#Winning# said:
Hey guys just trying to throw a little theme together on UOT. Does anyone know which type of update-binary the Evo 3D uses or is this Recovery dependent?
Click to expand...
Click to collapse
EMMC is the answer I believe you're looking for... if it's asking and your choices are something like MTD, EMMC, and a few others, EMMC is what you want, with edify scripting.
#Winning# said:
Hey guys just trying to throw a little theme together on UOT. Does anyone know which type of update-binary the Evo 3D uses or is this Recovery dependent?
Click to expand...
Click to collapse
the update-binary is semi recovery independent. the recovery has to support edify (as opposed to the old amend). essentially the recovery hands over the processsing of the update.zip file to the update-binary file. i *think* there are three api versions of this update-binary file.
i'm pretty sure we're using and its encouraged to use the latest version of this update-binary file, api 3. if you have compiled aosp or cm7, this binary is located in the output directoy for your device and then under /system/bin/updater. it gets renamed from updater to update-binary in a python script which is called when creating an update.zip file.
i would link you directly to my compiled version of the update-binary which uses api 3 but i don't have it handy at the moment. the one i compiled which works great i have included in my rom. if you wanna grab the rom and extract the update-binary file, feel to use it! also, im quite proud of my updater-script file too! feel free to reference that also
i found this information by grepping thru cm7/aosp directories for update and updater phrases.
Code:
grep -irs updater /home/jk/cm7/*
or
Code:
grep -irs -update /home/jk/aosp/*
empiire said:
EMMC is the answer I believe you're looking for... if it's asking and your choices are something like MTD, EMMC, and a few others, EMMC is what you want, with edify scripting.
Click to expand...
Click to collapse
for reference, as far as i understand, MTD, EMMC, etc are "device type" parameters which are read from the updater-script file by the update-binary file when processing specific mount or format commands.
two examples:
Code:
format("ext4", "EMMC", "system");
or
Code:
mount("ext4", "EMMC", "userdata", "/data");
lots of information. hope that helps!

[Q]update script error

hey huys just cooked a rom for my mt6575... but everytime i try to flash through cwm it gave me status 0..try to edit update-script with notepad++ gave status 7 error again try to edit then gaves status 6 error plese help...meta-inf folder is attached
touseefiqbal said:
hey huys just cooked a rom for my mt6575... but everytime i try to flash through cwm it gave me status 0..try to edit update-script with notepad++ gave status 7 error again try to edit then gaves status 6 error plese help...meta-inf folder is attached
Click to expand...
Click to collapse
the original updater script works fine ???
Just recompile the rom in dsixda's kitchen (assuming that you are using it because "updater-script.orig" states that you use it )
And note : You have enabled the option of "Keep the rom rooted"
Just check if you need updater-script or updater-edify(i dun remember what its exact name is) .. while compiling dsixda's kitchen does ask if you want to keep updater script or the edify script.. just select which one is compatible with your recovery of the device .
When done compiling ,
Go to the updater-script/edify that is generated and then add the code to mount the /system partition
for updater-script the code is :
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p16", "/system");
(thats what you had written in the edited updater-script)
and in the end write
Code:
"unmount("/system");
and no need for any asserts on your part.. if it is generated by the kitchen then its ok .. but you dun need to put any asserts..
And i doubt that the updater-script.orig is edify script.. cuz it doesnt looks like updater-script but i m not sure..

[Oneplus 3] Any Guides on creating an Update-Binary File ? (my Rom is stuck flashing)

Hey Guys,
I think I am the 20th guy that asks a Question similiar to this but I found nothing and yes I used Google .
My Goal is to build a Custom Rom for my Oneplus 3 based on OxygenOS sadly I am a total noob so I thought I could steal some parts from FreedomOS (based on Aroma).XD
The Aroma Installer is very annoying for me (imho) so I modified the Script that it should just flash through without opening the Aroma Installer....
Sadly this isn't the Case:
It flashes until it should extract the system.new.dat File and there TWRP loads to infinity :/,
because I found no Solution I removed this Part and flashed it over again...(the next thing that came up was "Starting Aroma Installer" and then it errored.... -> It reads the Update-Binary ?)(the Error was something like failed to start Aroma exiting now...)
I already opened Update-Binary in Notepad++ but there is just a lot of crap that no Human can read......
Is the Update-Binary unique to every Device or is there a Solution that works for everything like the updater-script ?
Can someone help me getting this Rom to work ???
:crying:
Thank in advance for reading my crappy English
Lucas
PS: My Script: https://pastebin.com/y04Zzhzi
My "Rom": https://mega.nz/#!eBgmzKzT!xyLManD0AxPtsuSLUymuiQhqlnyMQLcnhcO8lihi7NU
I fixed it ^^
Luro02 said:
I fixed it ^^
Click to expand...
Click to collapse
Please share your result:
1. Is the `update-binary` dependent on the device?
2. Is there any `update-binary` available to work with adb sideload feature of the device with no custom recovery.
3. Is it will work if device has bootloader unlocked but it is not rooted?
4. Is following script is valid :
Code:
format("yaffs2", "MTD", "system", "/system");
ui_print("Format Completed");
mount("yaffs2", "MTD", "system", "/system");
package_extract_file("system.img", "/system");
unmount("/system");
I will be very thankful to you if you can answer any of the question :angel:.

Integrating zips inside ROM zips

So guys, this is is my 1st thread in xda...Don't know exactly where to post....so sorry if i broke any rule.
please don't delete this...
My question is how to integrate normal flashable zips inside a ROM zip...
I mean the zip in which the updater-script is not dummy
There are some zips available like A-GAPPS 6.0 and AryaSoundMod in which updater-binary is not a actual file...
the main codes are written in updater-script. So how to call this file within main updater-script file so that it get flashed.
Code:
run_program("/sbin/busybox", "unzip", "/tmp/magisk/magisk.zip", "META-INF/com/google/android/*", "-d", "/tmp/magisk");
run_program("/sbin/sh", "/tmp/magisk/META-INF/com/google/android/update-binary", "dummy", "1", "/tmp/magisk/magisk.zip");
We use such line for flashing updater-binary files...
What command should be given for updater-script ???
Please help Devs.

Categories

Resources