How To: Create Your Own Custom ROM for Android, Part 1 – Setting Up The Android Kitchen

March 26, 2010 in Android Development How To's, Android How To's, Featured, How To's, ROM Development How To's, Video

So you love loading custom ROMs, but you just wish you could choose what features you wanted in the ROM or even grab a ROM from another device and port it to your phone? Well, thanks to DsiXDA over at XDA Developers, there is a neat little program that can help you do just that. And best of all? No programming skills required. So here’s how to setup the program and get started on your first custom ROM!

I. Before You Begin

1. This ONLY works for HTC Android devices at the moment, later versions might support others (check here for an update when it does).

II. Download a Virtual Machine and Set It Up.

1. Download VirtualBox for free from here (the one for Windows Hosts at the top). Then click next on the setup process until it installs.

2. Open VirtualBox and click on New.

3. Name the New Virtual Machine whatever you want (we named it Linux for simplicity’s sake).

4. For Operating System choose Linux, then choose Ubuntu for Version and click next.

5. Click Next again leaving the Memory Setting at what it is preselected at (should be 384mbs).

6. Click Next on the Boot Disk screen as well leaving boot hard disk and create new hard disk both selected.

7. Keep clicking Next until you get to the slider that asks how much space to set for the Linux. Move the slider to 8Gbs and click next.

8. Click next until it is done and shows you the original screen you started on but now with the Linux Machine Powered Off on the left.

III. Install Linux Ubuntu on the Virtual Machine

1. Download Ubuntu from here.

2. Once it is downloaded, in the VirtualBox program, click the Start button at the top.

3. Close out all the warnings that come up.

4. Then click on Devices > CD/DVD Devices > More CD/DVD Images… then select the .iso image for Ubuntu you downloaded.

6. Follow the prompts on the screen to install Ubuntu on your Virtual Machine.

7. Once it is installed and reboots, goto Applications > Accessories > Terminal and type this line with hitting enter at the end:

sudo apt-get install sun-java6-bin sun-java6-jre

It will ask you for a password, type in the password you created when you went through the Ubuntu installation process (it asked you for it before finishing the install).

Then it will ask you y/n. Hit y then enter. Then when it shows you the terms and conditions, hit right arrow on your keyboard and click enter to select ok. Then hit left arrow on your keyboard and enter to select Yes.

*NOTE – Your keyboard and mouse will not function on your regular computer once you use them in the Ubuntu virtual machine. To re-enable them, click the Ctrl button on the right side of your keyboard.

**IF YOU GET AN ERROR INSTALLING THE JAVA FILES,
Download the java files manually FROM INSIDE THE EMULATOR/LINUX using Firefox here:

Java6 Bin
Java6 Jre

Then open the Terminal App in Ubuntu and type this with hitting enter at the end of the line:

sudo dpkg -i sun-java6-jre_6.18-4_all.deb sun-java6-bin_6.18-4_i386.deb

And that should fix it.

IV. Download and Setup The Android ROM Kitchen

!THIS NEXT SECTION NEEDS TO BE DONE WITHIN THE UBUNTU VIRTUAL MACHINE!

1. Click on the Firefox logo at the top of your Ubuntu installation (in the Virtual Machine).

2. Type this into the url box:

theunlockr.com/2010/03/26/how-to-create-your-own-custom-rom-for-android-part-1-setting-up-the-kitchen (to navigate to this page from within the virtual machine).

3. Now download the latest version of the kitchen file  in the first post from the link below(again from inside the Ubuntu installation on the virtual machine. We are doing this because we want to save this file in our Ubuntu Virtual machine, NOT our regular computer).

Kitchen

4. Again on the Ubuntu machine, Find the .zip file you just downloaded, right click it and click open with Archive Manager and then click Extract at the top.

5. Once you click Extract, it will ask you where. Double click the folder that has the name you created when you installed Ubuntu (my username was theunlockr so my folder is called theunlockr. It is the first folder under recently used in the list on the left). Then click Extract at the bottom right.

V. Run the Android ROM Kitchen

1. To run the Android ROM kitchen, click on Applications at the top of Ubuntu > Accessories > Terminal then type the following and hit enter:

./menu

2. You will now be greeted by the simple text menu of the application. Enjoy!

VI. Create Your First Custom ROM

Head over to our How To: Create Your Own Custom ROM for Android, Part 2 – Creating Your First ROM

193 responses to How To: Create Your Own Custom ROM for Android, Part 1 – Setting Up The Android Kitchen

  1. i tried… running sun java in the terminal but still getting errors. asks for my password and after i type it in it gives  an error saying not found. so i tried downloading the file from inside the emulator and it still says file not found fml. plz help

  2. Thank you for the tutorial and the step by step on setting up from the beginning to the end, as always will gladly donate to the Developer from XDA for sharing tools and “how to” in creating custom’s made Rom’s! :)

  3. Does it have to be Ubuntu 9.1? cuz I already have Ubuntu 11.6 loaded up on my PC

  4. I type in the JAVA fix, but it comes up, saying, [sudo] password for …: 

    I try and type it in, and it won’t let me, what do I do? 

  5. hey at then end . when i type the command, I get nothing . help pz

  6. Does the procedure shown above for creating custom roms support Android Honeycomb (3.0 and above)? I want to create a custom rom for tablets such as Acer Iconia A500 or Samsung Galaxy Tab 10.1

  7. Trying this now, have VB and Ubuntu 11.6 installed, having a hard time with Java…any help would be appreciated.

  8. need help installing java

  9. need help installing java

  10. i’m getting no such file or directory, when typing in terminal .:/menu.  i followed all the steps thru extraction point.  what did i do wrong?

    • Hi man !
      I got the same problem on the first attempt.
      You mustn’t extract the archive on your desktop on Ubuntu.
      Extract it in your home folder and it will go on !

  11. nvm i got it working had to double click menu in the kitchen folder and opened it….automatically opened on terminal

  12. To install java you must move file to home by right click file you want to move and choose move to home. Then type terminal code like above, this should work

    The file download by firefox in download folder just in case you guys don’t known where it is

  13. Hey, Can I grab a rom from wildfire or any htc devices and port it to my htc tattoo?? plz help me! 

  14. I tried mounting the image (part III. step 4.) and got this error:

    E_FAIL (0×80004005)
    Component:
    Medium
    Interface:
    IMedium {aa8167ba-df72-4738-b740-9b84377ba9f1}
    Callee:
    IVirtualBox {2158464a-f706-414b-a8c4-fb589dfc6b62}

    I wouldn’t mind installing ubuntu/linux (whatever its called, I’m really new with all these modding stuff)
    on my physical hard disk drive.
    I’m running Win 7 x64, is that a problem?

  15. When I try step III, Part 7 (trying to install Java):

    To run a command as administrator (user “root”), use “sudo “.
    See “man sudo_root” for details.

    michael@michael-laptop:~$ sudo apt-get install sun-java6-bin sun-java6-jre
    [sudo] password for michael:
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    E: Couldn’t find package sun-java6-bin
    michael@michael-laptop:~$

    what do I do? Anything I can do? I have tried to use the direct download links provided but one doesn’t have anything to download with it and the other that actual says it has a file, none of the links go to a page that actually works. Is this just too old now?

  16. the java files are not there

  17. the java files died?

  18. does this work on windows 7 becuse everything you guys talk about is linux

  19. just change the directory that is containing the menu file using
    $ cd
    then type
    $./menu and hit enter !!

    arunkumar@arunkumar-VirtualBox:~$ cd dsixda-Android-Kitchen-68eb908
    arunkumar@arunkumar-VirtualBox:~/dsixda-Android-Kitchen-68eb908$ ./menu

  20. I need help setting up my android kitchen i get permission denied also. I have the latest Ubuntu and the latest android kitchen. Need help please.

1 3 4 5

29 trackbacks