Im trying to add some ringtones and apps into one of my favorite roms so things will be a little easier when Im testing out other roms...I think the new zip file I make though needs to be signed. Can anyone point me into the right direction??
Amon_RA said:
You can get any custom ROM working on your Rogers Magic and basically on every HTC branded Magic around. If you like to "port" a custom Google-branded ROM to a HTC-branded ROM follow these steps :
- I assume that you have basic Linux knowledge and that you know how to set up your own environment and tools, unpack gz files and cpio them etc...
- Download these tools. They contain the JesusFreke's SignApp, William Enck's splitboot using my recompiled mkbootimg-H binary (including the HTC branded offsets), and a repack pearl script.
Now the actually work :
1. Get the boot.img and recovery.img from your original HTC branded Magic (fastboot my recovery image and use nandroid for this).
2. unpack the boot.img and recovery.img using unpack-H.pl.
3. move both kernels somewhere save, you'll need them later.
4. Download the google branded custom ROM you want to port, most of the custom ROMs come in the form of a update.zip file.
5. Extract the boot.img and recovery.img (if there is one) from the update.zip.
6. unpack the boot.img and recovery.img (same as step 2).
7. replace both kernels with the ones you saved previously in step 3.
8. repack boot boot.img and recovery.img using repack-H.pl
9. copy both boot.img and recovery.img in the update.zip package making sure you overwrite the existing ones inside with the new ones.
10. Sign the update.zip file with SignApp (see readme inside rar).
11. Copy the update.zip file to your SDcard.
12. fastboot my recovery image and choose data wipe and then update.
13. reboot
Good luck
Click to expand...
Click to collapse
This is where I get confused at. I read this "Usage:
java -jar signapk.jar testkey.x509.pem testkey.pk8 <update.zip> <update_signed.zip>" But I dont know how to do that...Im using OSX right now is there any way to do it or do I need linux?
Can anyone give me some advice??
Here is everything you need to know:
http://forum.xda-developers.com/showthread.php?t=473580
(A search would have found you the answer faster than I did...)
betelgeuse74 said:
Here is everything you need to know:
http://forum.xda-developers.com/showthread.php?t=473580
(A search would have found you the answer faster than I did...)
Click to expand...
Click to collapse
Agreed
But at least he made the effort unlike some!
Hi guys,
Is it possible to change the kernel of a nand build at all?
I am an Extended Battery user and find only NAND builds with Hastarins kernel work at all..
Is there a way of mixing and matching Kernels with builds?
Ta
nutmegy said:
Hi guys,
Is it possible to change the kernel of a nand build at all?
I am an Extended Battery user and find only NAND builds with Hastarins kernel work at all..
Is there a way of mixing and matching Kernels with builds?
Ta
Click to expand...
Click to collapse
Yes
Just made something for you, note: haven't tested it:
Kernel Theiving
How to:
- Install Nand version which has the kernel you want.
- Run "extract_kernel.bat"
- Install Nand version you like, and want to keep.
- Run "install_kernel.bat".
- Et voila!
Now, you only have to use "install_kernel.bat" if you flash another rom.
Note: You need adb installed on your PC
Quickie on how to install adb:
Moon2 said:
You need adb:
-Get this installer: http://developer.android.com/sdk/index.html
-Go to Available Packages, Expand Third Party - Google - select USB Driver
-Update adb driver, if not already installed from: C:\Program Files\Android\android-sdk-windows\google-usb_driver
-Copy "adb.exe" and "AdbWinApi.dll" from "C:\Program Files\Android\android-sdk-windows\platform-tools" to "C:\Windows\System32".
-Run the batch file.
Click to expand...
Click to collapse
thank you very much!
I will give this a go!
Moon2 said:
Yes
Just made something for you, note: haven't tested it:
Kernel Theiving
How to:
- Install Nand version which has the kernel you want.
- Run "extract_kernel.bat"
- Install Nand version you like, and want to keep.
- Run "install_kernel.bat".
- Et voila!
Now, you only have to use "install_kernel.bat" if you flash another rom.
Note: You need adb installed on your PC
Quickie on how to install adb:
Click to expand...
Click to collapse
I read the batch file and
you have created a folder called boot under data folder and pasted the zimage
so everytime when we boot out Hd2s it going to replace the zimage with the one in boot folder, so i guess its going to delay the booting process (correct me if im wrong) so is it possible to delete that folder after booting our Leos?
agarp said:
I read the batch file and
you have created a folder called boot under data folder and pasted the zimage
so everytime when we boot out Hd2s it going to replace the zimage with the one in boot folder, so i guess its going to delay the booting process (correct me if im wrong) so is it possible to delete that folder after booting our Leos?
Click to expand...
Click to collapse
No, that's not what it does. it mounts the boot partition temporarily to /data/boot, and after it's mounted, adb copies over the zImage file, and overwrites the preexisting kernel image, after this, the partition is unmounted. So it's not repeated at each boot.
works a treat...
I just used Android commander..
made sure it was connected..
then ran the extract batch file
installed the nand build i wanted...
then ran the install Kernel.bat
and it works a treat!!!!
Moon2 said:
No, that's not what it does. it mounts the boot partition temporarily to /data/boot, and after it's mounted, adb copies over the zImage file, and overwrites the preexisting kernel image, after this, the partition is unmounted. So it's not repeated at each boot.
Click to expand...
Click to collapse
thnxx for the clarification, now i get it
nutmegy said:
works a treat...
I just used Android commander..
made sure it was connected..
then ran the extract batch file
installed the nand build i wanted...
then ran the install Kernel.bat
and it works a treat!!!!
Click to expand...
Click to collapse
Is all that done on the phone? It seems you installed the kernel on the phone somehow. I'm clueless about adb, I tried to use it before but was dumbfounded by it all.
Do I need Eclipse? Downloading the SDK stuff...installing JDA SE and it talks about Eclipse.
Moon2 the links dead it says file has been removed anybody re upload it????
Howdy all,
Just wondering, how are the system.img files made? I have read that if it's a YAFFS image file, that the maximum filesize cannot exceed 128MB. However, I've seen on some NAND HD2 Android builds, the system.img filesize is >128MB.
My question is, what method are you guys using for making the NAND system.img files to flash within MAGLDR? (ie. is it like a ZIP archive with a .img extension on it)
I'm currently working on a remix of a ROM that I use (a hint is in my Sig), and I know that the update.zip method that was used on "true-Android" devices to change ROMs doesn't apply to our MAGLDR method now.
Cheers and I'm sure you'll see another ROM for the HD2 in the coming weeks!
IcedCube.
IcedCube said:
Howdy all,
Just wondering, how are the system.img files made? I have read that if it's a YAFFS image file, that the maximum filesize cannot exceed 128MB. However, I've seen on some NAND HD2 Android builds, the system.img filesize is >128MB.
My question is, what method are you guys using for making the NAND system.img files to flash within MAGLDR? (ie. is it like a ZIP archive with a .img extension on it)
I'm currently working on a remix of a ROM that I use (a hint is in my Sig), and I know that the update.zip method that was used on "true-Android" devices to change ROMs doesn't apply to our MAGLDR method now.
Cheers and I'm sure you'll see another ROM for the HD2 in the coming weeks!
IcedCube.
Click to expand...
Click to collapse
The system.img is a yaffs2image. Google 'compiled windows unyaffs' use that program to take a peak inside the .img. When you're completely ready to make your own .img your gonna need a linux distro or cygwin w/mkyaff2image compiled. However I recomend compiling the mkfs.yaffs2 command if you are using linux. Alternatively you can place the /system/ directory you are trying to make an image on your SD and run that command in the terminal emulator in Android. It should look like this #mkyaffs2image /sdcard/system/ System.img
Hope that helps.
KillaHurtz said:
The system.img is a yaffs2image. Google 'compiled windows unyaffs' use that program to take a peak inside the .img.
Click to expand...
Click to collapse
Does this give you write abilities so that files can be changed out pre-flash?
dharvey4651 said:
Does this give you write abilities so that files can be changed out pre-flash?
Click to expand...
Click to collapse
I think you have to dump them to a folder, then you can change what you want. Then do the yaffs2 cmd and it will package it back up to .img for flashing...
Chris
noellenchris said:
I think you have to dump them to a folder, then you can change what you want. Then do the yaffs2 cmd and it will package it back up to .img for flashing...
Chris
Click to expand...
Click to collapse
I think that a tutorial is in order. Someone who knows how to extract and replace files in a system.img needs to write a short tutorial on how to do it. - A simple step by step on how to decompile a system.img and re-compile it.
I for one would be extremely grateful because I finally worked out a perfect MMS patch and I'd like to be able to easily modify the builds pre-flash.
dharvey4651 said:
I think that a tutorial is in order. Someone who knows how to extract and replace files in a system.img needs to write a short tutorial on how to do it.
I for one would be extremely grateful because I finally worked out a perfect MMS patch and I'd like to be able to easily modify the builds pre-flash.
Click to expand...
Click to collapse
I have been trying to do that all night. I can unpack them but haven't got around to repacking them. For now all I do is install the build and push the patched file that I have and do a AD hardrest in MAGLDR. MMS 300-1024k and all TMO US app works.
dharvey4651 said:
I think that a tutorial is in order. Someone who knows how to extract and replace files in a system.img needs to write a short tutorial on how to do it. - A simple step by step on how to decompile a system.img and re-compile it.
I for one would be extremely grateful because I finally worked out a perfect MMS patch and I'd like to be able to easily modify the builds pre-flash.
Click to expand...
Click to collapse
yeah, it would be very nice if smb can write some tutorial on modifying system.img files
i have been trying to figure this out too!
IcedCube said:
This is IcedCube, the Developer of GingerHD2, a Android 2.3 ROM for your HD2.
Click to expand...
Click to collapse
Thought I should point out that you could really confuse things by using that name...
http://forum.xda-developers.com/showthread.php?t=871387
That's not actually a Gingerbread build - it's just themed to look like one, but still got the same name
hnamanh said:
I have been trying to do that all night. I can unpack them but haven't got around to repacking them. For now all I do is install the build and push the patched file that I have and do a AD hardrest in MAGLDR. MMS 300-1024k and all TMO US app works.
Click to expand...
Click to collapse
Another option is to connect to ADB or Android Commander before going through the initial setup(when it asks you to choose your language) and change the files then - use the PC to reboot the phone, not the phone's built-in reboot. This should take you right back to the setup screen where this time, should show United States localization.
Still a bit too much work. I'd like to be able to patch the build, flash it, and be good to go.
found this but too educated for me
http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
sorry i think this one is normal data img.not sure.
well i did say it was too educated for me
Turorial
KillaHurtz said:
The system.img is a yaffs2image. Google 'compiled windows unyaffs' use that program to take a peak inside the .img. When you're completely ready to make your own .img your gonna need a linux distro or cygwin w/mkyaff2image compiled. However I recomend compiling the mkfs.yaffs2 command if you are using linux. Alternatively you can place the /system/ directory you are trying to make an image on your SD and run that command in the terminal emulator in Android. It should look like this #mkyaffs2image /sdcard/system/ System.img
Hope that helps.
Click to expand...
Click to collapse
Windows
-----------------------------------------------------------------------------
Ok, let's start again. If you are using windows, google the said phrase above and you will find the precompiled utility 'unyaffs'.
Place the System.img you want to extract in a new directory with unyaffs.exe & drag the .img onto unyaffs. A command window will open and start extracting the files in the image to that same folder. You can now explore & edit/pull whatever you need to get things going. Once you have it the way you want copt it to your SD/root/ & make a folder for it with an obvious name like "Project" or "Test". Now to get it back into a bootable .img open Terminal Emulator in Android & enter the following
#mkyaffs2image /sdcard/NAMEofFOLDERuCHOSE/ System.img
**alternatively you can do this in windows itself if u have the utility compiled under cygwin or simular.
Linux
-----------------------------------------------------------------------------
Ok, you will need the unyaffs & mkfs.yaffs2 utilities compiled and working 1st off.
mkyaffs2image works to make the image however it fails upon flash with DFT Android Flasher. So I recomend mkfs.yaffs2 & have included it, you will need to place it in /usr/sbin/. If you have trouble copying it open a terminal and run "gksudo nautilus" then copy to the above mentioned directory.
**Now that those utilities are working let's get to work.
open a terminal and run 'unyaffs /home/yourusername/Desktop/targetdirectory/targetimage.img
copy/edit/pull the files you want. When your ready to build the image you are happy with open a terminal and run 'mkfs.yaffs2 /home/yourusername/Desktop/targetdirectory/ System.img'
Now your ready to flash !
System.img & Boot.img Contents
============================================================
System.img contains the entire root/system/ directory in Android
System/
app
bin
etc
fonts
framework
lib
lost+found
media
usr
xbin
build.prop
dmesg.txt
Boot.img contains
Boot/
initrd.gz
zImage
lost+found
============================================================
Hope that helps guys, It's my first tut on XDA
**EDIT: I included an archive for windows users that has unyaffs2.exe & cygwin1.dll
The Linux archive contains mkfs.yaffs2.x86, once moved to /usr/sbin/ rename to mkfs.yaffs2
The process works exactly the same for Boot.img
you need linux and run command by terminal
put them in /bin
http://www23.zippyshare.com/v/13814384/file.html
then you can yaffs or unyaffs
example
unyaffs /home/rafpigna/folder_with_img_you_wann_unpack/system.img
or
mkyaffs2image /home/rafpigna/folder_with_stuff_you_wanna_pack/ system.img
strange thing...when I open with unyaffs and then close with mkfs.yaffs2 or mkyaffs2image I get init: untracked pid 250 exited (where 250 varies) in a loop :S
some light for me?
michyprima said:
strange thing...when I open with unyaffs and then close with mkfs.yaffs2 or mkyaffs2image I get init: untracked pid 250 exited (where 250 varies) in a loop :S
some light for me?
Click to expand...
Click to collapse
What platform are you using? Have u tried copying your target directory to your sdcard and running the command in android's terminal?
Reguards
KillaHurtz said:
What platform are you using? Have u tried copying your target directory to your sdcard and running the command in android's terminal?
Reguards
Click to expand...
Click to collapse
linux x64.
btw no I didn't, because I want to make a rom (I'm not new to android development but that makes me think that I'm probably stupid )
Everything I do doesn't work.
Already tried something like:
- opened a premade working rom, exchanged just app and framework: no way
- exchanged everything but not bin/xbin/lib: no way
- exchanged just what was different between a stock and a premade leo rom: still no way
mmmh...
yaffs2
There is actually a way to modify files in a yaffs2 image but I've not done it my self yet. I'm 100% sure it's possible cuz everything is possible.... under Linux of course.
You need:
Linux, compiling skills, mounting skills, etc.
Basically for any other filesystems you can mount them as loop devices but not yaffs2. For yaffs2 you actually need a virtual mtd block device. once you have the mtd device you can mount the yaffs image on it.
For details google for: mounting yaffs image
and focus on virtual mtd block device.
michyprima said:
linux x64.
btw no I didn't, because I want to make a rom (I'm not new to android development but that makes me think that I'm probably stupid )
Everything I do doesn't work.
Already tried something like:
- opened a premade working rom, exchanged just app and framework: no way
- exchanged everything but not bin/xbin/lib: no way
- exchanged just what was different between a stock and a premade leo rom: still no way
mmmh...
Click to expand...
Click to collapse
http://www.miui-dev.com/forums/showthread.php?481-Howto-Make-your-own-Android-Build-for-the-HD2
This has a list of files to be pulled. Hope this helps. BTW michy I need help with a kernel, know anyone?
I'm Having a problem using on Linix, when i use the unyaffs trough the terminal it extracts the rom but not the squashed contents, which in the main apps and frame work are at on thoughs roms. I do get a file that says squashed but empty. I tried on cyanogens 6.1 rom and everything extracted fine.but that rom does not have a squashed folder, am i doing something wrong?
1. If i unyaffs System.img and manually remove some programs/aplications then create System.img with yaffs, does it programs will appear in apps and does my rom will be caused a more memory for other programs for installation?
2. Is it possible to unyaffs Boot.img then replace zimage with newest kernel like MDJ or hastarin then yaffs to new Boot.img, After that i suppose then this Android OS will be on new kernel???
3. And... If i remove zimage and initrd.gz from Boot.img, create new Boot.img without these two files and these two files copy to SD card and define that two files in flash.cfg for find on SD. Does it works?
Sorry for bad English.
Hi,
I've compiled a modified version of the 2.6.36.3 kernel (downloaded from the git repository) to include a USB Network Adapter driver (AX88772A) into a zImage. But I don't know how to flash the zImage onto my A500. When I run "fastboot flash zimage zImage" it always returns < waiting for device >. But I am able to run adb to pull and push files to the tablet.
How can I update the kernel so that it can detect my USB -> Ethernet adapter (chipset AX88772A)? Any ideas? Thanks!
You have to put it in the boot.img, then you can dd it or create a zip update, like custom roms!
You can ask for more info to a kernel guy like richardtrip or thor202ro!
Try to open one of their zip update to see how it works!
you should use android's mkbootimg
like
mkbootimg --ramdisk initrd.gz --kernel zImage -o boot.img
then you can dd it to boot partition (/dev/mmcblk0p2) and run itsmagic. And do not flash both p1 and p2 at the same time - if you flash two unbootable images or forget to update the checksum, you'll have to pm sc2k to recover the device via nvflash.
Moving to General.
PS: Every Q? thread should be posted in General.
Hi everyone.
I'm trying to increase data partition storage by using ph03n!x walkthru on Paranoid Android 1.992 and 2.0. I'm stuck at extracting boot.img in Working folder. The rom.zip itself don't have boot.img or boot folder so after extracting PA rom in dsixda kitchen i copied boot.img from Nandroid backup on SD. But while im trying to extract that boot.img there's an error
Code:
Working folder found
Android 'magic' header not found at start of boot.img
Cheching if it exists elsewhere ...
Warning: Android header not found in boot.img (unsupported format)
Error: kernel offset (page size) is 0
Press Enter to continue
So i took recovery.img from nandroid backup, renamed it to boot.img and extracting went fine, but there was some problems: could not find init.htcleo.rc file and "on fs" lines in init.rc file
Any suggestions how to do it? I think that real init.rc is placet in boot.img (not recovery.img), but how to extract it?
Do you have a working folder setup? If you do, then forget about the boot.img, just place the 'boot' directory from the ROM's zip (under /kernel/). If you do not have a Working folder setup, then follow my instructions to create a temporary ROM zip with the required folders - meta-inf, system and boot.
ph03n!x said:
just place the 'boot' directory from the ROM's zip (under /kernel/)
Click to expand...
Click to collapse
Thanks a lot ph03n!x. It worked And also thanks for this great mod (Initrd.gz was great, now its time for this new method )