# Yeah im gonna be that guy...



## revosfts (Sep 14, 2011)

So I recently got the cm7 source on my Ubuntu system and felt utterly overwhelmed by the files and folders there. I have scoured the net and find very little useful information on how to start modifying the code to make a custom rom. Maybe just for myself if it sucks I just wanna learn. Can anyone point me in the right direction??

My name is Revos I'm a recovering flashaholic running Liquid Gingerbread 3.0


----------



## gujupmp88 (Jul 25, 2011)

Is this what you are looking for?

http://rootzwiki.com/showthread.php...g-CyanogenMod-7-for-the-HTC-Thunderbolt-FINAL


----------



## Jaxidian (Jun 6, 2011)

gujupmp88 said:


> Is this what you are looking for?
> 
> http://rootzwiki.com/showthread.php...g-CyanogenMod-7-for-the-HTC-Thunderbolt-FINAL


I don't think he's asking how to compile CM7 but more of some code documentation on the architecture of Android's code. I could be wrong, though.


----------



## yarly (Jun 22, 2011)

There really isn't one source out there for android (at least as far as developing on the OS level) that will tell you everything or even one in particular that one can say "yeah you should go there". The android API tells you a little, but that's only the public part of the API...not the entire OS. You just have to isolate a problem and google for it (and experiment/learn from your mistakes). Really experimenting and knowing what you are doing may not work the first (or even the 10th time) is the key to learning in Computer Science in general (or science in general for that matter). It's not exactly the field for those with a lack of patience or without the will to carry on when it seems impossible. However, anything related to android source code itself will work since cyanogen basically follows what android did and adds to it without mucking it up.

Sorry it's not the answer that's as straight as giving you a map and compass, but that's as good as I can offer earnestly.

However...if you don't know any java (more important) or c++ (or c for the kernel itself), you will have a hard time really doing anything past swapping out graphics or modifying some xml structures. That would be a good place to start. Stanford offers some free online classes for intro to programming in java and other languages (as well as a few other schools).


----------



## revosfts (Sep 14, 2011)

"Jaxidian said:


> I don't think he's asking how to compile CM7 but more of some code documentation on the architecture of Android's code. I could be wrong, though.


Yep better than I said it

My name is Revos I'm a recovering flashaholic running Liquid Gingerbread 3.0


----------



## revosfts (Sep 14, 2011)

"yarly said:


> There really isn't one source out there for android. You just have to isolate a problem and google for it (and experiment/learn from your mistakes). Really experimenting and knowing what you are doing may not work the first (or even the 10th time) is the key to learning in Computer Science in general (or science in general for that matter). It's not exactly the field for those with a lack of patience or without the will to carry on when it seems impossible. However, anything related to android source code itself will work since cyanogen basically follows what android did and adds to it without mucking it up.
> 
> Sorry it's not the answer that's as straight as giving you a map and compass, but that's as good as I can offer earnestly.


I really do appreciate this answer. I understand that a guide would be pointless because following a guide would lead you to create the same rom as the person who wrote it. I just kinda want to know like where things are located like image files apps kernel etc so I can start playing

My name is Revos I'm a recovering flashaholic running Liquid Gingerbread 3.0


----------



## yarly (Jun 22, 2011)

revosfts said:


> I really do appreciate this answer. I understand that a guide would be pointless because following a guide would lead you to create the same rom as the person who wrote it. I just kinda want to Knievel like where things are located like image files apps kernel etc so I can start playing
> 
> My name is Revos I'm a recovering flashaholic running Liquid Gingerbread 3.0


 The OS graphics (stuff not in apps) are located in framework-res.apk (under /system/framework). There's guides out there I'm sure though on that and also on how to make themes for cyanogen that are compatible with their theme manager.


----------



## revosfts (Sep 14, 2011)

That sounds like a good place to start

My name is Revos I'm a recovering flashaholic running Liquid Gingerbread 3.0


----------



## revosfts (Sep 14, 2011)

Anybody know of any good tutorials on cm7 themes? Also any other little mods that I can try to help me learn??

My name is Revos I'm a recovering flashaholic running Liquid Gingerbread 3.0


----------



## skinien (Jun 30, 2011)

revosfts said:


> So I recently got the cm7 source on my Ubuntu system and felt utterly overwhelmed by the files and folders there. I have scoured the net and find very little useful information on how to start modifying the code to make a custom rom. Maybe just for myself if it sucks I just wanna learn. Can anyone point me in the right direction??
> 
> My name is Revos I'm a recovering flashaholic running Liquid Gingerbread 3.0


I'm in the same boat as you. I'm a software engineer and I've worked in C, C++, and Java. I've decided to get Ubuntu going on my laptop and start messing around with the code (which I haven't done, yet). If anyone knows of a good resource that describes the different Android modules, please post!


----------

