Hi there, we are going to use excellent dsixda's HTC Android Kitchen to cook our custom ROMs for LG P500. The list of the things we are going to need:
Original ROM (Check this thread)
LG Utils 0.4.2 (Check this URL)
DzDecryptor v1.0b(Check this thread)
Cygwin (Check this URL
Unyaffsmbn (Check this thread)
Dsixda's HTC Android Kitchen (Check this thread)
Note: I have a "romcooking" folder on my home (C:\Users\Patricio\romcooking), inside i have all the utils needed, and the .kdz file for the stock ROM. I recommend to use tab to complete filenames since they are too long.
First we need to get a dz from the kdz (original firmware), extract LG Utils 0.4.2 and open KP500-Utils-EN.exe (You need to run this as administrator, or else you are getting an empty .cab file), select the I option (Extract files from KDZ file), and type the route to your .kdz file (Mine is C:\Users\Patricio\romcooking\V10A_00.kdz). Now, you must have a V10A_00.cab (Or another name, it depends on the stock rom you downloaded), open it with a extractor like 7zip or similar and extract the file "LGP500AT-00-V10a-EUR-XX-SEP-25-2010+0.dz" or similar to our romcooking folder.
Then we are going to uncompress the .dz with DZDecrypt (Press Win + R, type cmd and enter, then you cd to the folder where DzDecrypt is located (ex:
Code:
cd C:\Users\Patricio\romcooking\DZDecryptor_v1.0b
then we type:
Code:
DZDecrypt.exe "C:\Users\Patricio\romcooking\LGP500AT-00-V10a-EUR-XX-SEP-25-2010+0.dz" C:\Users\Patricio\romcooking\stockrom
This is going to create a "stockrom" folder in our original romcooking folder, you are going to see a lot of files in the stockrom folder, the important ones are boot.img and system.mbn (DZDecrypt should have merged your system.mbn_0, system.mbn_1 and system.mbn_2)
We need to install cygwin, open the setup.exe, just keep hitting next until you are on the select packages screen, go to "Devel" menu and select to install gcc, gdb and make, in "Interpreters" check perl, in "Archive" check zip and unzip, in "Web" check wget, in "Editors" check nano and vim and in "Utils" select cpio, util-linux and ncurses. Make some tea and wait for the cygwin install to finish and we are ready to go to the next step.
We are going to compile unyaffsmbn, copy the extracted files from unyaffsmbn, system.mbn and boot.img to C:\cygwin\home\Patricio, now fire up cygwin and compile unyaffsmbn with:
Code:
gcc -o unyaffsmbn unyaffsmbn.c
Now uncompress system.mbn, delete symlinks of bin/ and zip everything with:
Code:
mkdir system
cd system
../unyaffsmbn.exe ../system.mbn
find bin -type l -exec rm {} +
cd ..
zip -r stockrom.zip boot.img system/
We are ready to go to the kitchen (We have a stockrom.zip on C:\cygwin\home\Patricio, remember that)
Now we are going to use dsixda's HTC Android Kitchen, we need to have installed JDK. After we have downloaded and uncompressed the kitchen (Mine is in C:\cygwin\home\Patricio\kitchen), we need to put the ziped file we got in the previous step into the original_update folder of the kitchen. We are ready to go! fire up cygwin and cd to the kitchen location and exec ./menu , select option 1, you should see the zip file, put the number of it, and you are ready to go (It will create a WORKING_XXXXXX_XXXXXX folder, you can modify the files in WORKING_XXXX_XXXXX/system, add APKs, modify the apns file, etc).
This command also gives us a lot of options for our rom: enable root, add busybox, deodex our files, zipalign, etc. If you are going to edit text files, use an editor like Notepad++ or any other program that can open/edit/save files in linux compliant style. It's pretty easy to use the kitchen, just check the official thread for options or help
The common options i use are:
Add root permission (option 2), press f when asked and you are done
Add Busybox
Change name of the rom, easy cake
Advanced options, press 0
Add /data/app functionality
Add Apps2SD
Add custom boot animation functionality
Deodex files in your ROM
And Finally: Zipalign all *.apk files to optimize RAM usage
That should do the trick, when you are ready to cook your rom, just type 99, wait for it to build and it should be in the OUTPUT_ZIP folder in your kitchen folder.
Took info from this thread (About decompressing .dz and .mbn, and making it to work with the kitchen), and info from ruigui and tritant in this thread. The awesome android kitchen by dsixda. Sorry if i forgot to mention any work, just post it or pm me
If you have anything you want to add to the guide, just post it
You don't need to dual boot to linux. It can be done with cygwin.
When you follow dsixda's guide to install kitchen, do as said but don't install cygwin from that guide.
Instead, download from official site, choose default options, but add these packages (it will be compliant with kitchen and give a little extra funcionality):
Devel: gcc, gdb, make
Interpreters: perl
Utils: cpio, util-linux, ncurses
Archive: zip, unzip
Web: wget
Editors: vi, nano
Good guide, nicely done
EDIT:
In my wife's machine (using windows 7 64bit. i'm without computer, for now....), i've installed cygwin as said above.
Then added two folders to my home dir:
kitchen and unyaffsmbn
In kitchen, use the kitchen
In unyaffsmbn, copy the files from unyaffsmbn.zip to that dir, then compile it there
EDIT2:
If you edit text files under windows, USE NOTEPAD++, or any other program that can open/edit/save files in linux compliant style.
There are differences in Windows and Linux when ENTER is pressed, and you'll have issues when trying to flash or run your custom ROM
hi there... thanks a lot for your guide.
I'm trying to do the things you wrote step by step... I have extracted the dz file successfully, then I extracted the content using DZDecrypter... I found three files called system.mbn0, system.mbn1 and system.mbn2. The first and second are 80 Mbytes, the third just 17... Which one is the correct? When I try to use the command "unyaffsmbn system.mbn" (obviously I renamed the first and then the second) I get an error message ("impossible to execute binary file", or somenthing like that... I don't know how's in english because I'm italian).. Is that concerning to the presence of those three different files? Did somethind go wrong with the extracting process? Or maybe I didn't do somenthing important? Before doing this, I installed "build-essential" and did "gcc -o unyaffsmbn unyaffs.h" but apparently nothing happend... I got neither errors nor processes...
can you help me?
Awesome bro, I can try to make custom rom with indian version, ty.
vinnux said:
hi there... thanks a lot for your guide.
I'm trying to do the things you wrote step by step... I have extracted the dz file successfully, then I extracted the content using DZDecrypter... I found three files called system.mbn0, system.mbn1 and system.mbn2. The first and second are 80 Mbytes, the third just 17... Which one is the correct? When I try to use the command "unyaffsmbn system.mbn" (obviously I renamed the first and then the second) I get an error message ("impossible to execute binary file", or somenthing like that... I don't know how's in english because I'm italian).. Is that concerning to the presence of those three different files? Did somethind go wrong with the extracting process? Or maybe I didn't do somenthing important? Before doing this, I installed "build-essential" and did "gcc -o unyaffsmbn unyaffs.h" but apparently nothing happend... I got neither errors nor processes...
can you help me?
Click to expand...
Click to collapse
you shouldn't get three system.mbn files, did you used the 1.0b of DzDecryptor? when i used it, it said something about merging, i think that it gets the three files and then combines them to get a proper system.mbn
I used the downloaded version from the link you posted. At least I guess... :/ Well I'm going to try again soon! Thanks a lot again for your guide!
Sent from my LG-P500 using XDA App
Other methode for exctract mbn file, not need to connect the phone.
Windows only....
(1) Download LG-Utils 0.4.2: http://www.assembla.com/spaces/ks360...tils-0.4.2.zip
(2) Run KP500-Utils-EN.exe (or whatever language you prefer out of the available choices) and select I to extract the KDZ.
(3) Open the resulting CAB file and extract the DZ file.
(4) Download DZExtract: http://www.frenchcoder.com/upload/DZExtract-V0.2.zip
(5) Use DZExtract to extract the MBN files:
DZExtract -x GW620RAT-V10c-OCT-21-2009-RGS-CA_DZ+0.dz C:\extractedTo\
after compiling and chmod I do:
Code:
[email protected]:~/work/unyaffsmbn$ unyaffsmbn system.mbn
unyaffsmbn: command not found
both files are in that folder. Am I doing anything wrong?
Cheers.
@tritant - LG-Utils link not working
So.... You MUST compile unyaffsmbn first. Only then you'll have an "executable".
Code:
gcc unyaffsmbn.c -o unyaffsmbn
Then copy system.mbn to unyaffsmbn folder.
After that, do:
Code:
cd PATH_TO_UNYAFFSMBN
./unyaffsmbn system.mbn
You missed the ./
You can download lg utils from here
tuxcomputing said:
after compiling and chmod I do:
Code:
[email protected]:~/work/unyaffsmbn$ unyaffsmbn system.mbn
unyaffsmbn: command not found
both files are in that folder. Am I doing anything wrong?
Cheers.
@tritant - LG-Utils link not working
Click to expand...
Click to collapse
'course I compiled
of course your method worked and the one in the first post didn't...
exist only a windows version of dzextract?
ioshi said:
exist only a windows version of dzextract?
Click to expand...
Click to collapse
couldn't find a linux version, sorry.
btw, i'm rewriting the guide, hope to update it soon
please add the compiling method from ruigui (in the previous page). For some reason that's the only way I was able to compile on Ubuntu 10.
Cheers
It was a typo in first post (he switched file to be used in gcc).
Give the man some time to reorganize his thread
I did not mean to be rude by any means!
I appreciate the effort to create the how-to! Hopefully people will read the thread if they get stuck and use the right commands so that they don't abandon the idea of creating their own ROM
I also didnt want to call you rude... Sorry...
But we were exhanging some pms and he is redoing this tutorial.
Sometimes we make mistakes while typing long posts
installation aborted
thanks for this great tutorial
everything works like a charm , but when i flash my new rom i have an error says no enough space while writing boot image
any idea?
Update: okay i solved the problem, it seems that i missed up with the boot settings!
I finally made the zip file, but when I start the kitchen and select it, i find this:
"Warning: No META-INF folder found under working folder!
Warning: No META-INF/com/google/android folder found, creating it.
Did not find an update-script. Shall I create one (y/n)? (default: y): "
is that normal? and what should I do? :/
vinnux said:
I finally made the zip file, but when I start the kitchen and select it, i find this:
"Warning: No META-INF folder found under working folder!
Warning: No META-INF/com/google/android folder found, creating it.
Did not find an update-script. Shall I create one (y/n)? (default: y): "
is that normal? and what should I do? :/
Click to expand...
Click to collapse
yes this is normal, i got that warning, and i entered "yes" to create one, and everything went just fine!
good luck
For me, work with wine on linux mandriva 2010.2
[[email protected] rootlg]$ wine DZDecrypt.exe "LGP500AT-00-V10b-EUR-XX-OCT-01-2010+0-DZ.dz" rom
DZ-Decryptor v1.0b *ALPHA RELEASE* by BIGB0SS from COPS.
[■] Opening file "LGP500AT-00-V10b-EUR-XX-OCT-01-2010+0-DZ.dz".
[■] Allocated memory: 280 Mo.
[■] Unpacking informations:
- Unpacking "amss.mbn" (Packed:008D2935 - Unpacked:010F6000).
- Unpacking "partition.mbn" (Packed:000000E9 - Unpacked:00000390).
- Unpacking "qcsblhd_cfgdata.mbn" (Packed:00000240 - Unpacked:00002534).
- Unpacking "qcsbl.mbn" (Packed:00007D88 - Unpacked:0000DFF0).
- Unpacking "oemsblhd.mbn" (Packed:00000026 - Unpacked:00000028).
- Unpacking "oemsbl.mbn" (Packed:0002C637 - Unpacked:0005EFB4).
- Unpacking "amsshd.mbn" (Packed:00000028 - Unpacked:00000028).
- Unpacking "appsboothd.mbn" (Packed:00000022 - Unpacked:00000028).
- Unpacking "appsboot.mbn" (Packed:00008A6F - Unpacked:0000D484).
- Unpacking "boot.img" (Packed:00385B3F - Unpacked:0038A800).
- Unpacking "system.mbn_0" (Packed:0307280E - Unpacked:05000000).
- Merging "system.mbn_1" (Packed:028EAA5A - Unpacked:05000000).
- Merging "system.mbn_2" (Packed:00738F81 - Unpacked:01003F40).
- Unpacking "recovery.img" (Packed:003BE683 - Unpacked:003C3800).
- Unpacking "splash.img" (Packed:00001C3A - Unpacked:0004B000).
[■] SubFiles: 0x780C3E84. (DzCreator)
[■] Closing file "LGP500AT-00-V10b-EUR-XX-OCT-01-2010+0-DZ.dz".
Hi!
Since xda-univeristy arised i thought it would be nice to learn something about green droid
I am going to learn about tweaking and theming:and here comes dozens of my questions:
1. I have downloaded Official ics repack by N00BY0815
2. I extracted it and i have:
2 folders ( META-INF and System)
2 files boot.ing and system.img
How can i extract this system.img ?
I tried to use 7zip but it says that" it cannot open it as archive"
Thanks in advance and please for leniency
it can be opened with Diskinternals Linux Reader. if not. use "sgs2toext4.jar" to convert it to .img.ext4 and then open it
Nihiliu said:
Hi!
Since xda-univeristy arised i thought it would be nice to learn something about green droid
I am going to learn about tweaking and theming:and here comes dozens of my questions:
1. I have downloaded Official ics repack by N00BY0815
2. I extracted it and i have:
2 folders ( META-INF and System)
2 files boot.ing and system.img
How can i extract this system.img ?
I tried to use 7zip but it says that" it cannot open it as archive"
Thanks in advance and please for leniency
Click to expand...
Click to collapse
Everything for theming is in the System folder. All the APK's(Applications) Boot.img is probably the recovery image it installs. But to theme you would need to decompile the apks in the system folder
Everythink was in system folder in gingerbread, in this system folder i have only app folder with su.apk and bin folder with su file.
So files i need are in system.img
@broodplank1337 thanks for help, program works well, now i can begin
But first only one question, now i can extract files, but can i pack them using same tool ?
Nihiliu said:
Everythink was in system folder in gingerbread, in this system folder i have only app folder with su.apk and bin folder with su file.
So files i need are in system.img
@broodplank1337 thanks for help, program works well, now i can begin
But first only one question, now i can extract files, but can i pack them using same tool ?
Click to expand...
Click to collapse
I don't know much about S2 but can't you just use 7zip to make it an archive and flash it through rrecovery?
"Anger and intolerance are the enemies of correct understanding." -Mahatma Gandhi
Nihiliu said:
How can i extract this system.img ?
Click to expand...
Click to collapse
Hi. You can use dsixda's Android Kitchen for that.
Nihiliu said:
Everythink was in system folder in gingerbread, in this system folder i have only app folder with su.apk and bin folder with su file.
So files i need are in system.img
@broodplank1337 thanks for help, program works well, now i can begin
But first only one question, now i can extract files, but can i pack them using same tool ?
Click to expand...
Click to collapse
You can pack them with the android kitchen, install the zip, then you do this in terminal emulator to make the system.img file:
Code:
su
cat proc/mounts
now look up the system partition, in my case it's mmcblk0p14
Code:
dd if=/dev/block/mmcblk0p14 of=/sdcard/system.img BS=4096
This will dump the system partition to system.img (for example when making an odin image)
Hey guys,i didnt find a tutorial so i will ask you here.How can i download a rom and odex it from pc before i flash it?Because its not easy to odex every rom i download with universal odex script.Im too lazy to do this(and many times terminal print errors and i have to do this again).I know it could be happen cause many of you create roms and upload which already are odexed!Thanks guys for your help!
I found solution from alin.p. So here is a nice tutorial:
You have to flash it de-odexed first, then odex whatever part of your system you want with the Universal Odex Script which you'll find in the Mini forums, then extract the odex files from:
1. /system/app if you odexed system apps
2. /system/framework if you odexed the bootstrap or the framework
Put the extracted files inside the zip in the appropriate folders.
A little warning here: even a single (no matter how little) change inside the framework code, will break the whole ROM if it is odexed.
where do i find the script need it link please
[email protected] said:
where do i find the script need it link please
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=2527268
thnx
PRInCEI7 said:
Hi .. I will donate money to anyone who helps me
.. I want to edit amazon fire 7 9gen system the TabletSettings.odex and TabletSettings.apk but the problem is
The modification does not accept.. Is there a way .
Click to expand...
Click to collapse
You can use APKTOOL:
https://ibotpeaches.github.io/Apktool/
Before nothing, you need to extract framework-res.apk and SystemUI.apk and then install them as frameworks:
Code:
apktool if framework-res.apk
Code:
apktool if SystemUI.apk
And then extract it:
Code:
apktool d TabletSettings.apk
Now edit whatever you want and when you finish repack it:
Code:
apktool b TabletSettings
Then go to dist and extract the apk.
Now go to original and copy all folders and files to unpacked apk from dist (overwrite all files)
And finally, repack unpacked dist apk with WinRar (extension .zip and then rename to .apk).
Now install the apk to the tablet:
Code:
adb reboot recovery
Code:
adb push TabletSettings.apk /sdcard
Code:
adb shell
Code:
mount system
Code:
mv /sdcard/TabletSettings.apk /system/priv-app/TabletSettings/TabletSettings.apk
Code:
chmod 664 /system/priv-app/TabletSettings/TabletSettings.apk
And reboot to system.
BTW: What modifications you want to do?
Rortiz2 said:
You can use APKTOOL:
https://ibotpeaches.github.io/Apktool/
Before nothing, you need to extract framework-res.apk and SystemUI.apk and then install them as frameworks:
Code:
apktool if framework-res.apk
Code:
apktool if SystemUI.apk
And then extract it:
Code:
apktool d TabletSettings.apk
Now edit whatever you want and when you finish repack it:
Code:
apktool b TabletSettings
Then go to dist and extract the apk.
Now go to original and copy all folders and files to unpacked apk from dist (overwrite all files)
And finally, repack unpacked dist apk with WinRar (extension .zip and then rename to .apk).
Now install the apk to the tablet:
Code:
adb reboot recovery
Code:
adb push TabletSettings.apk /sdcard
Code:
adb shell
Code:
mount system
Code:
mv /sdcard/TabletSettings.apk /system/priv-app/TabletSettings/TabletSettings.apk
Code:
chmod 664 /system/priv-app/TabletSettings/TabletSettings.apk
And reboot to system.
BTW: What modifications you want to do?
Click to expand...
Click to collapse
thanks for replying
Unfortunately this method does not work
I imagine because of a odex file
I want to add the language to the system
All devices accept except this type AMAZON FIRE 7 9gen does not accept
@PRInCEI7
@Rortiz2
You would first need to de-odex the rom, however this as far i know is not possible at the moment.
A few years ago at the time of the HDX devices amazon introduced a customised odex format.
ggow said:
@PRInCEI7
@Rortiz2
You would first need to de-odex the rom, however this as far i know is not possible at the moment.
A few years ago at the time of the HDX devices amazon introduced a customised odex format.
Click to expand...
Click to collapse
I have a tool for deodex the ROM but IDK if it will work. I'll give it a try.
Thanks for the info.
Rortiz2 said:
I have a tool for deodex the ROM but IDK if it will work. I'll give it a try.
Thanks for the info.
Click to expand...
Click to collapse
That's my point it won't work. There is no way to do what you want with any tool.
@Rortiz2 @ggow
I found this
When I root the device
Directly the application com.amazon.kindle.otter.oobe.apk stops working
When I change any file or put any file inside /System/priv-app/
When removing the root or flashing file too boot.img stock
Directly deletes any file or modification from this folder and returns the primary file ...
Why returns the original file when flashing a boot.img file
When I return flash boot.img root file returns my file .
@DragonFire1024
Do you have an idea to solve the problem
ggow said:
@PRInCEI7
@Rortiz2
You would first need to de-odex the rom, however this as far i know is not possible at the moment.
A few years ago at the time of the HDX devices amazon introduced a customised odex format.
Click to expand...
Click to collapse
You can use superr's tool to deodex if you have twrp. It requires rebuilding the firmware.
Sent from my Motorola Droid Razr M using XDA Labs
---------- Post added at 10:29 AM ---------- Previous post was at 10:26 AM ----------
PRInCEI7 said:
@DragonFire1024
Do you have an idea to solve the problem
Click to expand...
Click to collapse
If you are unlocked you can use superr's tool to deodex the firmware .bin package and rebuild it then flash in twrp. Requires Linux https://forum.xda-developers.com/ap...chen-superr-s-kitchen-v1-1-50-v2-1-6-t3597434
Sent from my Motorola Droid Razr M using XDA Labs
thx