[GUIDE][How-to]Create your Own Custom ROM an easy way

What will you rate the thread out of 5 stars comparing other guides?


  • Total voters
    1,590
Search This thread

GuneetAtwal

Senior Member
Oct 6, 2012
2,421
5,327
27
Mohali
OnePlus 7T
Holla Guys this i am back with a Guide which you would have seen many times on XDA but still were you able to follow them??:p
And answer is "NO"as they all focus on Android Kitchen which is a big tool but not a wall for blind!! Mark it you will have to use your own sense(Not Htc Sense :p) while making a ROM!:p
But then also i can provide you a Boost Start in Android Development World for Sure ;)

This tutorial is specially for
  • Newcomers to the world of Android :)
  • People who want to create their own ROM but unable to do so as it is going over the head :p
  • People who did not had any encounters with Programming
  • Even Experienced One :D

  • dsixda for his ultimate kitchen
  • lokeshsaini who is the original writer i have just modified it and simplified for better understanding
  • Neroyoung -For his video tutorials
  • If i left any one's name PM me ;)

Tools Required : (Report me dead links please)


Part 1: Installing the JAVA JDK, Cygwin and Setting up the Kitchen.

Code:
*Before you do anything install the java jdk*

watch this video tutorial by gitagaire for how to setup cygwin and kitchen(recommended)

INSTRUCTIONS

->Download and extract the cygwin_packages.zip
-
>Run the set up(make sure there is no previous cygwin installation)
unledwkc.png


->when it shows all the package names, go to the top and select "all default" until it changes to "all install" (you must click on the arrows)
unti1led.png


->Download the kitchen from above. Then, extract the kitchen's .zip file to a folder under your home account. Rename the dsixda-android-kitchen-*** folder to just "kitchen". In Cygwin, this folder would depend on what was set for your Cygwin install directory, e.g. C:\cygwin\home\John\kitchen

NOTE!! If your user folder contains spaces (e.g. C:\cygwin\home\John Smith\kitchen), then the kitchen will not function properly. Instead, copy it under C:\cygwin\home\kitchen.

->Now your ready to run the kitchen type:
those who have their kitchen like this C:\cygwin\home\John\kitchen use these commands given below

Code:
[COLOR="Sienna"]cd kitchen(enter)[/COLOR]
[COLOR="DarkRed"] ./menu(enter)[/COLOR]
those who have their kitchen like this C:\cygwin\home\kitchen use these commands given below.

If you did things right you should see this:
unledxwb.png
 
Last edited:

GuneetAtwal

Senior Member
Oct 6, 2012
2,421
5,327
27
Mohali
OnePlus 7T
Part 2:Setting up a working folder

THERE ARE TWO METHODS FOR THIS.
1. WHEN YOU HAVE BASE ROM AVAILABLE.
2. WHEN YOU DON'T HAVE BASE ROM.


FIRST METHOD -



->First our folder structure should look like this:
Code:
cygwin folder/home/your user name/kitchen

-> Inside the kitchen it should look like this:
unledmlb.png


-> Now we need a rom to work on, for KarbonnA5 users i will recommend this rom by ME only :p but you can use any rom.

-> Just Place the original rom zip in the original_update folder inside the kitchen.
run the cygwin.exe again type:
Code:
cd kitchen(enter)
./menu(enter)

-> Now enter option 1, enter again. You should see your rom listed, choose and enter
you will be asked about changing the working folders name, at this point it makes no difference so just continue.

congratulations you have a working folder!!!

unledzfr.png


Second METHOD -it is almost like ROM Dumping works on any device!

-> FIRST MAKE A WORKING FOLDER IN CYGWIN FOLDER
IT SHOULD LOOK LIKE THIS
cygwin folder/home/your user name/kitchen/WORKING_(your rom name)

NOTE: FOR THIS MEETHOD WE NEED 3 FILES AND FOLDERS TO BE PLACED IN WORKING FOLDER.
1. META-INF FOLDER - GET THIS FROM DOWNLOAD FILES LIST IN FIRST POST
2. SYSTEM FOLDER - TUTORIAL BELOW
3. BOOT.IMG - TUTORIAL BELOW

2. getting system folder
(NOTE - Rooted phone required!!)

This is universal method and can be done easily using terminal emulator.
For this simply download Terminal Emulator from Android Market.
we need freshly flashed device here. OTHERWISE YOU WILL HAVE LOT OF JUNK FILES.
Open it and type:

Code:
su
 tar -c system/* >> sdcard/system.tar
This will copy all your /system folder to your SDcard with name System.tar
This will take some time to finish so be patient.
After it's done you should have a tar file in your /sdcard named system.tar
You can extract it using Winrar or 7zip software. But yes this will have huge size , as it has other useless folders so you will have to delete them. After extracting this system.tar file you will get following folders (Similar one)

/etc
/fonts
/framework
/lib
/lost-found
/media
/sd
/usr
/xbin
build.prop

-> Now simply delete the folders marked in red color and its done.Don't worry if you don't have folders with red colors above,we don't need them.
And the final files that we will have in our system folders will be

/app
/bin
/etc
/fonts
/framework
/lib
/media
/semc
/usr
/xbin
build.prop

NOW COPY THIS system FOLDER TO WORKING FOLDER

3. getting boot.img

Here we have 2 options
1. stock boot.img from stock rom - simple kernel which we get in brand new mobile.
2. custom boot.img from custom kernel - kernel which are modified for overclock or other features

1. getting stock boot.img from stock rom.
extract your stock rom with winrar or 7zip. you will see boot.img there. copy it to working folder

2. getting custom boot.img from custom kernel.
download any custom kernel which is only for your device.
extract it with winrar or 7zip and copy boot.img to working folder
NOTE: many of new devices have kernel.bin and other files instead of boot.img so skip this part if your device don't have it...
 
Last edited:

GuneetAtwal

Senior Member
Oct 6, 2012
2,421
5,327
27
Mohali
OnePlus 7T
Part 3 :Change/modify/update rom


  • YOU CAN MODIFY YOUR ROM IN TWO STEPS:

    [*] MODIFY USING ANDROID KITCHEN - for basic modification.
    [*] MODIFY MANUALLY. - for advanced modification.



2. MODIFYING MANUALLY.

Check this Guide for some MODs like center clock,CRT animation, ics and jelly bean style mods etc...

  • Adding/removing applications
    1. Go to the working folder where you extracted your rom, inside you will find:
    unled1gew.png
    OR
    unledgcn.png

    2. Then go to "system/app" inside this folder you will find all the rom applications(apks) you may also find some in the data folder if your rom has this folder.
    3. Copy, replace, and change any app(apk) be carefull if you dont know what the apk is do not delete!!
    LIST OF APPS YOU CAN DELETE - HERE OR HERE
    If you can not find some apps in this guide then try opening all those app in your phone and see app name and icon or move those apps from system/app to sdcard and see what is not working...

  • Adding new boot animation
    android kitchen doesn't works for my Karbonn A5 :(. So we need a different method.
    1) Download and extract the bootanimation and samsungani file from Custom Booting.zip attached in first post.
    2) Put them in the /system/bin folder and replace the existing files there
    3) Now download any boot animation, and rename the bootanimation to “sanim.zip”.
    4) Now, navigate to /system/media and replace the “ODEanim” with “sanim.zip”
    You are done with the bootanimation change


  • Edit the gps script for your country/location
    1. In the workingfolder/system/etc/ you will find a file named gps.conf, you can
    edit this file with notepad++ or even word.
    2. using the right gps script in this file can speed up gps lock, you can
    find some from angeldeath, download extract and replace the gps.conf.
    unledslz.png

  • Adding ringtones :

    • Take your ringtone file...it should be in .ogg format..If not then convert it to .ogg..
    • Locate to the folder system>media>audio>ringtones>
    • Copy and paste your .ogg files here in ringtones folder..
    • You can also change notifications, alarm and UI tones like this..
  • Changing the Fonts :

    • Take your desired font.ttf file and rename it as DroidSans.ttf..
    • Locate to the folder system>fonts>
    • Now, replace the file DroidSans.ttf with your desired DoridSans.ttf...
    • To change the lock screen clock font...replace the Clocktopia.ttf with your desired one..(rename first)..

    build.prop tweaks!!
    check this or this or this post for build.prop
    NOTE: EDIT BUILD.PROP WITH NOTEPAD++. SIMPLE NOTEPAD WILL CORRUPT THE FILE.
 
Last edited:

GuneetAtwal

Senior Member
Oct 6, 2012
2,421
5,327
27
Mohali
OnePlus 7T
MORE ADVANCE MODIFICATION (starters for beginners)

editing .apk files

THERE ARE TWO BEST TOOLS FOR EDITING .APK FILES

1. APKTOOLS
This video by neroyoung teaches you how to setup APKTOOL folder as well as teaches you how to edit .apk files


2. APK Manager
this video by adgoosuc teaches you How to unpack,repack and sign an APK File with APK Manager

Editing .JAR Files

In this video by neroyoung you will get information on how to edit .jar files like services.jar using APKTOOL


How to integrate an app in settings(recommended)
 
Last edited:

GuneetAtwal

Senior Member
Oct 6, 2012
2,421
5,327
27
Mohali
OnePlus 7T
Thread Junction
 
Last edited:

GuneetAtwal

Senior Member
Oct 6, 2012
2,421
5,327
27
Mohali
OnePlus 7T
Few Guides

  1. Xposed - ROM modding without modifying APKs/flashing
    .
  2. Compiling CWM Recovery
    .
  3. Compiling TWRP Recovery
    .
  4. Building Kernels and Android Sources
    .
  5. Porting ARM V7 Roms to ARM V6
    .
  6. Porting MIUI with JB/ICS
    .
  7. Porting Jelly Bean( A few Assists)
    .
  8. Dev Basics Collection
    .
  9. MIUI v4
    .
  10. MIUI v4 Updated- Different and Noob Friendly
    .
  11. Sense UI
    .
  12. Making a Flashable Package (Update.zip)
    .
  13. Making a CWM Flashable Zip
    .
  14. Complete Android ROM development and essential tutorials
    .
  15. Re-Odexing a ROM
    .
  16. Porting AOSP ICS ROMs
    .
  17. Compiling CM9 on Mac-OSX Lion
    .
  18. MIUI (Source GB)
    .
  19. Create your own De-Bloat Tool
    .
  20. Porting LewaOS,JoyOS for Noobs
    .
  21. UOT Kitchen Guide
    .
  22. Making your Own Custom ROM
    .
  23. Unpack or Repack an APK
    .
  24. Building your first KERNEL
    .
  25. Compile JB on Ubuntu
    .
  26. DEODEXing Stock ODEXED ROM
    .
  27. [GUIDE]How to use AROMA Installer on any ROM/Device|NOOB Friendly|
    .
  28. [Guide][How To] Adding Brightness Bar Slider to Status Bar
    .
  29. [Guide] Jellybean navigation layout for CM7 ROM
    .
  30. [GUIDE] How to add TABS to Settings with swipe gesture
    .

  31. [DEV][TOOL] Android Image Kitchen - Unpack/Repack Kernel/Recovery + ramdisk

    .
  32. [EASIEST WAY ROM DUMP] ROM dumping method for any phone
    .
  33. How to use GitHub

Other Modding and Theming:
  1. Remap Hardware Button to ICS Recent Apps
    .
  2. Create GB Dictionary for your Language
    .
  3. ICS Recent Apps Button/Softkeys to Status Bar
    .
  4. Smooth Scrolling and Volume Increase
    .
  5. Re-Odexing a ROM
    .
  6. How to LogCat
    .
  7. Convert .jar to .apk
    .
  8. Setting up Android Dev Environment in Ubuntu 11.10
    .
  9. Modifying APK Files
    .
  10. Modifying APK files - Another Method

CREDITS:
Credits to the Original Developers/Writers for posting this stuff.
I am just linking it to their threads, all credits go to them.

NOTE:
If you find any other Topic that maybe useful, Post it in comments, so that We can make a huge thread of Guides.

THANK YOU ALL:
I Thank you all for referring to this.. I have just searched a bit and though making a thread would be useful. I am really Happy that it helped many of you!! Will keep adding!! :)
 
Last edited:

GuneetAtwal

Senior Member
Oct 6, 2012
2,421
5,327
27
Mohali
OnePlus 7T
Last but the not the least: repackage the rom:D


  • AFTER YOU HAVE DONE ALL CHANGE/MODIFICATION YOU WANTED OPEN CYGWIN AGAIN AND TYPE

    now convert update script to updater script(in option 23)
  • now lets edit updater script(optional)

    the updater-script basically tells CWM what steps to take during the installation(flashing rom).
    If you don't have any experience please don't edit anything other than what is in this simple tutorial.


    TO EDIT UPDATER SCRIPT -
    1.Go to META-INF/com/google/android
    2.Open the updater-scrip file with Notepad++
    3.Any text that would appear during the CWM install should be in this format :

    Code:
    ui_print("Put your text in HERE");

    Add your text start at top and save,
    then replace with new updater-scrip
    unledofd.png


    Add New Aroma Installer to your ROMLink to Guide(By Me only)

    AND AT LAST

    [*]Now that you have made some changes it's time to pack the rom and test!!



    1. Run the cygwin and type
    1. enter option 99 - "biuld rom from working folder"
    2. Choose your build option and few more enters
      I recommend that you go with all default options until you get more experience with the kitchen.
    3. When rom is packed and signed it will ask to change rom zip name (type name of your rom)
    4. When its all done you will find a folder inside "cygwin/home/yousername/kitchen" called output_zip
    5. Inside the folder is your new rom ready to be flashed and tested!!!
      unledwxh.png

    IF YOU WANT THAN YOU CAN MAKE CWM FLASH ABLE ZIP'S MANUALLY USE THIS TOOL BY I.AM.H3RO


    congratulations you have build your own rom

  • TROUBLESHOOTING

    • If you are facing java related problem with cygwin than refer post #8
    • If you have a rom without kernel then remove these lines:
      Code:
      assert(package_extract_file("boot.img", "/tmp/boot.img"),
             write_raw_image("/tmp/boot.img", "/dev/block/mmcblk0p8"),
             delete("/tmp/boot.img"));
    • If there is a package error then extract the files of the rom and repack them using any compression software.
    • If rom installed correctly but stuck onto logo screen?? Then remove try removing kernel and flashing rom again.
    • If rom installed correctly but got onto bootloop then there could be many possibilities which could lead to this. If you want accurate cause of it then do a logcat.
    • If there are some apk's which are not working then check if you correctly modded them.
 
Last edited:

DraXonic

Senior Member
Sep 26, 2012
888
452
IIT Varanasi
OnePlus 7
Re: [UltimateGUIDE][How-to]Create your Own Custom ROM an easy way|Android Secrets -_-

You have done that like a boss..8|

Sent from my Karbonn A5 using xda premium
 

kinfauns

Retired Senior Moderator and Retired DC Lead
Jan 5, 2012
1,864
3,543
Thread cleaned

Discussions of the sort I just removed from this thread need to take place privately. Very little will get accomplished when they get posted on the forum. The primaries need to take this to PM and send me a message when an agreement has been reached.
 

ipernexus

Senior Member
Oct 9, 2012
152
13
Roma
hello, congratulations for the very detailed but the last step guide tells me that java is not installed, I installed java jdk 7u17. How can I fix?
I already tried reinstalling java but no change, here is a photo of the error https://pbs.twimg.com/media/BGcGYNOCIAAy4bk.jpg:large

EDIT: I solved, on Windows 8 64bit, java jdk is installed in x86 version, I had downloaded the x64 version. Now it works;)
 
Last edited:

Catley

Senior Member
Mar 13, 2012
87
19
Kent
Thanks for the guide, its great! But I have a problem, everytime I compile the zip I have a status 6 error, what do I have to edit with notepad++ in the update-script to make it work? Its quite frustrating xD And its already in Unix code ^^
 

Top Liked Posts

  • There are no posts matching your filters.
  • 353
    Holla Guys this i am back with a Guide which you would have seen many times on XDA but still were you able to follow them??:p
    And answer is "NO"as they all focus on Android Kitchen which is a big tool but not a wall for blind!! Mark it you will have to use your own sense(Not Htc Sense :p) while making a ROM!:p
    But then also i can provide you a Boost Start in Android Development World for Sure ;)

    This tutorial is specially for
    • Newcomers to the world of Android :)
    • People who want to create their own ROM but unable to do so as it is going over the head :p
    • People who did not had any encounters with Programming
    • Even Experienced One :D

    • dsixda for his ultimate kitchen
    • lokeshsaini who is the original writer i have just modified it and simplified for better understanding
    • Neroyoung -For his video tutorials
    • If i left any one's name PM me ;)

    Tools Required : (Report me dead links please)


    Part 1: Installing the JAVA JDK, Cygwin and Setting up the Kitchen.

    Code:
    *Before you do anything install the java jdk*

    watch this video tutorial by gitagaire for how to setup cygwin and kitchen(recommended)

    INSTRUCTIONS

    ->Download and extract the cygwin_packages.zip
    -
    >Run the set up(make sure there is no previous cygwin installation)
    unledwkc.png


    ->when it shows all the package names, go to the top and select "all default" until it changes to "all install" (you must click on the arrows)
    unti1led.png


    ->Download the kitchen from above. Then, extract the kitchen's .zip file to a folder under your home account. Rename the dsixda-android-kitchen-*** folder to just "kitchen". In Cygwin, this folder would depend on what was set for your Cygwin install directory, e.g. C:\cygwin\home\John\kitchen

    NOTE!! If your user folder contains spaces (e.g. C:\cygwin\home\John Smith\kitchen), then the kitchen will not function properly. Instead, copy it under C:\cygwin\home\kitchen.

    ->Now your ready to run the kitchen type:
    those who have their kitchen like this C:\cygwin\home\John\kitchen use these commands given below

    Code:
    [COLOR="Sienna"]cd kitchen(enter)[/COLOR]
    [COLOR="DarkRed"] ./menu(enter)[/COLOR]
    those who have their kitchen like this C:\cygwin\home\kitchen use these commands given below.

    If you did things right you should see this:
    unledxwb.png
    177
    Now what do you want more in a thread :p

    Just Press thanks button and rate the thread 5 Stars and Show your Appreciation :highfive:
    156
    Part 2:Setting up a working folder

    THERE ARE TWO METHODS FOR THIS.
    1. WHEN YOU HAVE BASE ROM AVAILABLE.
    2. WHEN YOU DON'T HAVE BASE ROM.


    FIRST METHOD -



    ->First our folder structure should look like this:
    Code:
    cygwin folder/home/your user name/kitchen

    -> Inside the kitchen it should look like this:
    unledmlb.png


    -> Now we need a rom to work on, for KarbonnA5 users i will recommend this rom by ME only :p but you can use any rom.

    -> Just Place the original rom zip in the original_update folder inside the kitchen.
    run the cygwin.exe again type:
    Code:
    cd kitchen(enter)
    ./menu(enter)

    -> Now enter option 1, enter again. You should see your rom listed, choose and enter
    you will be asked about changing the working folders name, at this point it makes no difference so just continue.

    congratulations you have a working folder!!!

    unledzfr.png


    Second METHOD -it is almost like ROM Dumping works on any device!

    -> FIRST MAKE A WORKING FOLDER IN CYGWIN FOLDER
    IT SHOULD LOOK LIKE THIS
    cygwin folder/home/your user name/kitchen/WORKING_(your rom name)

    NOTE: FOR THIS MEETHOD WE NEED 3 FILES AND FOLDERS TO BE PLACED IN WORKING FOLDER.
    1. META-INF FOLDER - GET THIS FROM DOWNLOAD FILES LIST IN FIRST POST
    2. SYSTEM FOLDER - TUTORIAL BELOW
    3. BOOT.IMG - TUTORIAL BELOW

    2. getting system folder
    (NOTE - Rooted phone required!!)

    This is universal method and can be done easily using terminal emulator.
    For this simply download Terminal Emulator from Android Market.
    we need freshly flashed device here. OTHERWISE YOU WILL HAVE LOT OF JUNK FILES.
    Open it and type:

    Code:
    su
     tar -c system/* >> sdcard/system.tar
    This will copy all your /system folder to your SDcard with name System.tar
    This will take some time to finish so be patient.
    After it's done you should have a tar file in your /sdcard named system.tar
    You can extract it using Winrar or 7zip software. But yes this will have huge size , as it has other useless folders so you will have to delete them. After extracting this system.tar file you will get following folders (Similar one)

    /etc
    /fonts
    /framework
    /lib
    /lost-found
    /media
    /sd
    /usr
    /xbin
    build.prop

    -> Now simply delete the folders marked in red color and its done.Don't worry if you don't have folders with red colors above,we don't need them.
    And the final files that we will have in our system folders will be

    /app
    /bin
    /etc
    /fonts
    /framework
    /lib
    /media
    /semc
    /usr
    /xbin
    build.prop

    NOW COPY THIS system FOLDER TO WORKING FOLDER

    3. getting boot.img

    Here we have 2 options
    1. stock boot.img from stock rom - simple kernel which we get in brand new mobile.
    2. custom boot.img from custom kernel - kernel which are modified for overclock or other features

    1. getting stock boot.img from stock rom.
    extract your stock rom with winrar or 7zip. you will see boot.img there. copy it to working folder

    2. getting custom boot.img from custom kernel.
    download any custom kernel which is only for your device.
    extract it with winrar or 7zip and copy boot.img to working folder
    NOTE: many of new devices have kernel.bin and other files instead of boot.img so skip this part if your device don't have it...
    151
    Last but the not the least: repackage the rom:D


    • AFTER YOU HAVE DONE ALL CHANGE/MODIFICATION YOU WANTED OPEN CYGWIN AGAIN AND TYPE

      now convert update script to updater script(in option 23)
    • now lets edit updater script(optional)

      the updater-script basically tells CWM what steps to take during the installation(flashing rom).
      If you don't have any experience please don't edit anything other than what is in this simple tutorial.


      TO EDIT UPDATER SCRIPT -
      1.Go to META-INF/com/google/android
      2.Open the updater-scrip file with Notepad++
      3.Any text that would appear during the CWM install should be in this format :

      Code:
      ui_print("Put your text in HERE");

      Add your text start at top and save,
      then replace with new updater-scrip
      unledofd.png


      Add New Aroma Installer to your ROMLink to Guide(By Me only)

      AND AT LAST

      [*]Now that you have made some changes it's time to pack the rom and test!!



      1. Run the cygwin and type
      1. enter option 99 - "biuld rom from working folder"
      2. Choose your build option and few more enters
        I recommend that you go with all default options until you get more experience with the kitchen.
      3. When rom is packed and signed it will ask to change rom zip name (type name of your rom)
      4. When its all done you will find a folder inside "cygwin/home/yousername/kitchen" called output_zip
      5. Inside the folder is your new rom ready to be flashed and tested!!!
        unledwxh.png

      IF YOU WANT THAN YOU CAN MAKE CWM FLASH ABLE ZIP'S MANUALLY USE THIS TOOL BY I.AM.H3RO


      congratulations you have build your own rom

    • TROUBLESHOOTING

      • If you are facing java related problem with cygwin than refer post #8
      • If you have a rom without kernel then remove these lines:
        Code:
        assert(package_extract_file("boot.img", "/tmp/boot.img"),
               write_raw_image("/tmp/boot.img", "/dev/block/mmcblk0p8"),
               delete("/tmp/boot.img"));
      • If there is a package error then extract the files of the rom and repack them using any compression software.
      • If rom installed correctly but stuck onto logo screen?? Then remove try removing kernel and flashing rom again.
      • If rom installed correctly but got onto bootloop then there could be many possibilities which could lead to this. If you want accurate cause of it then do a logcat.
      • If there are some apk's which are not working then check if you correctly modded them.
    135
    Few Guides

    1. Xposed - ROM modding without modifying APKs/flashing
      .
    2. Compiling CWM Recovery
      .
    3. Compiling TWRP Recovery
      .
    4. Building Kernels and Android Sources
      .
    5. Porting ARM V7 Roms to ARM V6
      .
    6. Porting MIUI with JB/ICS
      .
    7. Porting Jelly Bean( A few Assists)
      .
    8. Dev Basics Collection
      .
    9. MIUI v4
      .
    10. MIUI v4 Updated- Different and Noob Friendly
      .
    11. Sense UI
      .
    12. Making a Flashable Package (Update.zip)
      .
    13. Making a CWM Flashable Zip
      .
    14. Complete Android ROM development and essential tutorials
      .
    15. Re-Odexing a ROM
      .
    16. Porting AOSP ICS ROMs
      .
    17. Compiling CM9 on Mac-OSX Lion
      .
    18. MIUI (Source GB)
      .
    19. Create your own De-Bloat Tool
      .
    20. Porting LewaOS,JoyOS for Noobs
      .
    21. UOT Kitchen Guide
      .
    22. Making your Own Custom ROM
      .
    23. Unpack or Repack an APK
      .
    24. Building your first KERNEL
      .
    25. Compile JB on Ubuntu
      .
    26. DEODEXing Stock ODEXED ROM
      .
    27. [GUIDE]How to use AROMA Installer on any ROM/Device|NOOB Friendly|
      .
    28. [Guide][How To] Adding Brightness Bar Slider to Status Bar
      .
    29. [Guide] Jellybean navigation layout for CM7 ROM
      .
    30. [GUIDE] How to add TABS to Settings with swipe gesture
      .

    31. [DEV][TOOL] Android Image Kitchen - Unpack/Repack Kernel/Recovery + ramdisk

      .
    32. [EASIEST WAY ROM DUMP] ROM dumping method for any phone
      .
    33. How to use GitHub

    Other Modding and Theming:
    1. Remap Hardware Button to ICS Recent Apps
      .
    2. Create GB Dictionary for your Language
      .
    3. ICS Recent Apps Button/Softkeys to Status Bar
      .
    4. Smooth Scrolling and Volume Increase
      .
    5. Re-Odexing a ROM
      .
    6. How to LogCat
      .
    7. Convert .jar to .apk
      .
    8. Setting up Android Dev Environment in Ubuntu 11.10
      .
    9. Modifying APK Files
      .
    10. Modifying APK files - Another Method

    CREDITS:
    Credits to the Original Developers/Writers for posting this stuff.
    I am just linking it to their threads, all credits go to them.

    NOTE:
    If you find any other Topic that maybe useful, Post it in comments, so that We can make a huge thread of Guides.

    THANK YOU ALL:
    I Thank you all for referring to this.. I have just searched a bit and though making a thread would be useful. I am really Happy that it helped many of you!! Will keep adding!! :)