Note to Mods..
Kindly dont move it to the General section. This thread is about Rom development, and discusses a serious issue about the future of development in the Desire section, and whether we devs should continue to work here..
Some of us are getting irritated at this absolute proliferation of "me-too" roms..Roms which are apparently exact copies of others out there, taking all the files from them, deleting a few files (cut-copy-paste), and releasing it as the new "dev"'s own work..
In this context, I'd like to propose a list of questions a wanna-be Rom dev should ask himself/herself before starting a Rom thread here.
Can you smali and baksmali files individually?
Are you familiar with Edify and Amend?
Do you know about Kernel ramdisk loading, bootclasses and MTD layouts?
Are you familiar with adb and fastboot commands and can you offer support to endusers who have problem with this?
Can you debug Edify code and built an updater-script from scratch without wholly relying on the dsixda kitchen?
Do you know how to modify frameworks, system apps and jars and debug their errors?
Are you familiar with how to port roms between devices? (applicable only if you intend to release a port)
Have you significantly modified a Rom to add new and useful content?
Have you contributed uniquely to the Rom, and not just made a cocktail of features already made by devs?
Can you write/at least understand bash scripts?
Can you compile your own kernel from source code?
The items in Bold are more important..
If the answer to most of these questions is Yes, go ahead, we'd love to have your Rom here, as you most certainly have what it takes to release a finished product.. If not, think thrice before posting a Rom. We cant prevent you from posting in the Dev section, but be forewarned that it might be an invitation for flaming! If your purpose in posting a Rom is to learn development yourself, and you've made a Rom which uses >=80 % of another Dev's work, it may be better to release it as a "ROM-Mod" and work on it further,.
Another suggestion is to use the prefix [ROM] for something which is built originally, and [Rom-MOD] for others with minimal changes from a source Rom, and the latter should give proper credits to the source...
Before posting a new Rom, ask yourself the following questions:
What is the difference between your Rom and the Base?
Have you done active development, other than delete a few files/mix a few files/themes?
Is there a significant difference between your Rom and other Roms out there/your source, in terms of new features added?
The following is a list of items which are not considered development:
Using another Dev's original ROM as your base, where you :
Only add mods from yet another developer/rom
Do not include any actual development done by you in the form of code in bash scripts/updater-script/compiled binaries which add some new functionality to the original Rom
Only mix the source Rom with themes/apps created by another developer
Only remove/add some apps from the source rom, in the process reducing its size
In case the difference between the base Rom and the new Rom is very marginal, but includes a significant development on the part of the new dev, the change from base rom should be clearly documented as part of a changelog attached in the thread OP.
If your purpose in starting a Rom thread is to study to develop, you can clear questions related to development by using the Developer Google plus Huddle maintained here
What do you guys think? Should we suggest to the mod team to append this to the list of rules for posting? Feel free to add your suggestions/criticism/opinion
Droidzone said:
Note to Mods..
Kindly dont move it to the General section. This thread is about Rom development, and discusses a serious issue about the future of development in the Desire section, and whether we devs should continue to work here..
Some of us are getting irritated at this absolute proliferation of "me-too" roms..Roms which are apparently exact copies of others out there, taking all the files from them, deleting a few files (cut-copy-paste), and releasing it as the new "dev"'s own work..
In this context, I'd like to propose a list of questions a wanna-be Rom dev should ask before starting a Rom thread here.
Can you smali and baksmali files individually?
Are you familiar with Edify and Amend?
Do you know about Kernel ramdisk loading, bootclasses and MTD layouts?
Are you familiar with adb and fastboot commands and can you offer support to endusers who have problem with this?
Can you debug Edify code and built an updater-script from scratch without wholly relying on the dsixda kitchen?
Do you know how to modify fameworks, system apps and jars and debug their errors?
Are you familiar with how to port roms between devices?
Have you significantly modified a Rom to add new and useful content?
Have you contributed uniquely to the Rom, and not just made a cocktail of features already made by devs?
Can you write/at least understand bash scripts?
Can you compile your own kernel from source code?
If the answer to most of these questions is Yes, go ahead, we'd love to have your Rom here.. If not, think thrice before posting a Rom. We cant prevent you from posting in the Dev section, but be forewarned that it might be an invitation for flaming!
What do you guys think? Should we suggest to the mod team to append this to the list of rules for posting? Feel free to add your suggestions/criticism/opinion
Click to expand...
Click to collapse
Droidzone, your totally right, there are like 3-4 same roms ... This is jus madness... Get those copyers out now ;o
Greetz
Sent from my HTC Runnymede using XDA App
Totally agree with the statement. There are too many Roms that are 99% the same which makes it not easy to choose one, especially for people with not much experience relating to Roms. On the other side, don't make those "rules" too strict as this is a possible entry barrier for new Rom developers and would limit the varierity.
chrismast said:
Totally agree with the statement. There are too many Roms that are 99% the same which makes it not easy to choose one, especially for people with not much experience relating to Roms. On the other side, don't make those "rules" too strict as this is a possible entry barrier for new Rom developers and would limit the varierity.
Click to expand...
Click to collapse
Totally agree.
Agree 100% , if your just 'adjusting' or 'modding' a rom place the file in a post on original Rom thread , if its a good mod I'm sure users will apteciate it and the original dev may put on op or even enhance the official rom from it.
This way those would be devs will gain respect and learn the trade , without annoying everyone with 'copies' .
Otherwise we could set up a 'mods' section on the forumn to move all copied roms to, would clear the clutter.
Cheers all devs
Sent from my HTC Desire using xda premium
AGREED ...
I am leaning towards learning ROM development myself but there is so much to learn and because i have this interest i have downloaded Ubuntu 10.04 and i am starting to learn how that works and i'll take it from there.
I mod almost every ROM i use before i flash it and trust me 7zip and notepad++ dont make you a DEV, YES it is always nice to see new DEVs and work being released but like back in the froyo days there was 3 Sense 1.9 ROMs that i tested, namely AuraxTSense, LeeDroid and Startburst. Even though they seemed the same they are very different and unique...
Now if you look @ AcedOff, Aurora and CoolAces3D, they are all Cools work and are no different and suffer from the same bugs. All these ROMs are creating is congestion.
Or we could all just use our common sense.
Got to be careful of making a l knee jerk reaction to one or two roms. I found the new stock gingerbread very useful, and that cooker was not a Dev as described by the rules above.
chrismast said:
Totally agree with the statement. There are too many Roms that are 99% the same which makes it not easy to choose one, especially for people with not much experience relating to Roms. On the other side, don't make those "rules" too strict as this is a possible entry barrier for new Rom developers and would limit the varierity.
Click to expand...
Click to collapse
100% agree.
I started messing around with redux source code, intergrated android 2.3.5 source into it, modified jar files, added code, removed code and compiled a unique ROM. I can debug it and can answer yes to maybe half of those questions...
Can you smali and baksmali files individually? Never tried
Are you familiar with Edify and Amend? yes
Do you know about Kernel ramdisk loading, bootclasses and MTD layouts?Maybe, No, Yes
Are you familiar with adb and fastboot commands and can you offer support to endusers who have problem with this? Yes
Can you debug Edify code and built an updater-script from scratch without wholly relying on the dsixda kitchen? Probably
Do you know how to modify frameworks, system apps and jars and debug their errors? Yes
Are you familiar with how to port roms between devices? Sort of
Have you significantly modified a Rom to add new and useful content? Yes
Have you contributed uniquely to the Rom, and not just made a cocktail of features already made by devs? Not really, I haven't invented my own mods
Can you write/at least understand bash scripts? Partly
Can you compile your own kernel from source code? Probably, Never tried. Can compile ROMs and Recoveries.
Click to expand...
Click to collapse
I can completely support my ROM and it isn't a simple clone, but too strict would create a barrier for me at least.
But I am sick to death of seeing people with "recognised Developer" status for simply running someone else's ROM through dsixda kitchen and selecting all the options - Surely this belittles the whole recognition?!
Perhaps the question should be:
Did you install someone elses rom, flash a couple of mods then run the backup through dsixda kitchen?
backfromthestorm said:
Got to be careful of making a l knee jerk reaction to one or two roms. I found the new stock gingerbread very useful, and that cooker was not a Dev as described by the rules above.
Click to expand...
Click to collapse
The new stock gingerbread could have been had from teppic's thread posted many weeks ago (with additional mods). In fact, any newbie could easily have made it by running the zip available from HTC's site through dsixda's kitchen, which is whom the kitchen is intended for..
@3f1f37
Before the start again: But AceSMod007-3D is from me and not from coolexe! Otherwise it would not have been unlocked again my thread!!
rootSU said:
100% agree.
I started messing around with redux source code, intergrated android 2.3.5 source into it, modified jar files, added code, removed code and compiled a unique ROM. I can debug it and can answer yes to maybe half of those questions...
I can completely support my ROM and it isn't a simple clone, but too strict would create a barrier for me at least.
But I am sick to death of seeing people with "recognised Developer" status for simply running someone else's ROM through dsixda kitchen and selecting all the options - Surely this belittles the whole recognition?!
Click to expand...
Click to collapse
@rootsu, yours isnt a clone of anything, and if anything deserves Rom status, it's a Rom built from Android source and modified periodically..
I dont mean the dev should satisfy all these criteria at the time of his first build..
At least he should have done original development of his own..which includes things other than cut-copy-paste and changing hboot/fitting a rom built by another dev on another partition layout..
In any case, these are just suggestions...Maybe it could be a guide for future devs to let them know that blatant copying of someone else's work is not acceptable to the community at large
michaelm_007 said:
@3f1f37
Before the start again: But AceSMod007-3D is from me and not from coolexe! Otherwise it would not have been unlocked again my thread!!
Click to expand...
Click to collapse
Yo Micheal
I was in no way taking a shot at your work buddy, i am refering to ACED OFF!!! and not your AcesMod007.
I know there is a differences between you work and coolexe's, actually i commend you for your time and effort. You and cool remind of Baadnwz and Robocik from 1st half of this year, when the Sense 2.1/3.0 hybrids were coming out. They had similar features but were unique, this applies to both your work and cools.
To further put a feather in your hat, i am im-patiently waiting for your SagasMod007-3D to come out of beta as i follow your work very closely
You could be in danger of alienating noobs who come on here for advise, who want to learn to develop a rom from source or from a ruu. Surely the way to start to learn is from the start!
Not everybody has the knowledge like u Droidzone, but u never had it once either. You learn by doing.
I said im not a dev, i did mine cus there wasn't one out there that fitted for me.Now if i think that then somebody else might, so it helps them to.Surely this is where u start to learn. Granted if there was a rom somebody posted exactly like mine id be like wtf, so i do understand.
Honestly, the dev section is not (imho) for newbies who want to learn to develop, but for developers who have their own contribution to add to the forum..In other words, something genuinely developed by them, and not using the kitchen to select 1,2,3 and make a zip..
For learning to develop, why not make a thread in the General/Q&A section and make a collaborative effort? Then once there is an actual developed product, anyone can release it here.. Agreed, there was a time when I knew nought.. But by the time I released my first rom, I did know enough..Look at people like rootsu who were helping people out for years and learning the tricks of the trade, so to speak, before releasing their first product?
I fail to understand how anyone can call using a bash script and selecting a couple of options as development.. dsixda's kitchen, in dsixda's own words, is intended for newbies to modify a rom for personal use, and in his own words: 'dont expect the kitchen to transform you into a developer overnight'..
Mods are mods, and original roms are that.. Maybe mods can be released in the General section..
dan281082 said:
You could be in danger of alienating noobs who come on here for advise, who want to learn to develop a rom from source or from a ruu. Surely the way to start to learn is from the start!
Not everybody has the knowledge like u Droidzone, but u never had it once either. You learn by doing.
I said im not a dev, i did mine cus there wasn't one out there that fitted for me.Now if i think that then somebody else might, so it helps them to.Surely this is where u start to learn. Granted if there was a rom somebody posted exactly like mine id be like wtf, so i do understand.
Click to expand...
Click to collapse
For me, using dsixda to make stock roms is ok, so long as there arent loads of them available or they offer something different.
My personal issue (without naming names) is someone taking an AOSP ROM or even a Sense Port that is already released by a dev, runnig it through dsixda to add nanotext editor, a2sd+, zipalign or someone else's kernel, then release it as their own ROM and call themselves "Dev".
I personally do not see myself as a Dev. I couldn't take a ROM from another device, and make it work on the desire, or build a ROM for another device without the vendor and device directories from a working repository. I think I am a compiler at best. I can take source code from here and there, put it all together and compile a working ROM.
If I can't call myself a dev but people who take other people's roms and run through the kitchen then call themselves a dev, theres something wrong there. And then XDA supports them with "recognised developer" status
EDIT> @ Droidzone - I would definitely support a Development Q&A Subforum here. I can't believe we haven't got one. I'm sure devs would visit that to help, rather than n00b central (i.e Q&A)
i do agree there droidzone, a dedicated place for people to learn is what this needs.
if it had the support from people like rootsu(who has helped me no end) then it can benefit everybody.
But the support needs to be there not just from the odd one or two.
Droidzone said:
The new stock gingerbread could have been had from teppic's thread posted many weeks ago (with additional mods). In fact, any newbie could easily have made it by running the zip available from HTC's site through dsixda's kitchen, which is whom the kitchen is intended for..
Click to expand...
Click to collapse
I don't have a PC. So its been very useful. and not something I could of easily done. Or have the time. Its a nice upgrade. We shouldn't limit what's available to the rules of the first post.
Can a mod move this thread, its in the wrong section lol only messing, i can see your point of view, you bust your balls to make a rom and fix it and then someone adds a few tweaks and mas it their own, and they think cause they thank you, it makes everything ok, and its not being selfish on your part, you take another rom from a phone that isnt ours, transform that rom so that it works on our phone, to me that is amazing, you put all that effort in and then you must be so proud when you hav finished and majority of people are happy, i can ee how it hurts when someone changes a few things, problem is, youll never win, how many times do things get posted cause someone cant search, anyway to all the devs, keep up the hard work because 99% of the world appreciate your work, dont let the 1% spoil it for the rest !
Sent from my Transformer TF101 using Tapatalk
ZeGuitarist said:
Or we could all just use our common sense.
Click to expand...
Click to collapse
This completely.
Hi,
I'm following the Nexus S Android Development for 6 month now and Rom and Kernel flashing is a a real addiction for me (I flash everyday).
And, since the beginning i want to create my own Rom.
At first, I want to build one from another one (Cyanogen or another).
So, If someone can give me tutos, tools, tips and advices, I'll be very grateful.
Thanks to everybody, waiting for your help.
http://lmgtfy.com/?q=how+to+create+custom+rom?
Sent from my Nexus S 4G using xda premium
Thank you...
[email protected]_OC said:
Hi,
I'm following the Nexus S Android Development for 6 month now and Rom and Kernel flashing is a a real addiction for me (I flash everyday).
And, since the beginning i want to create my own Rom.
At first, I want to build one from another one (Cyanogen or another).
So, If someone can give me tutos, tools, tips and advices, I'll be very grateful.
Thanks to everybody, waiting for your help.
Click to expand...
Click to collapse
Hey you know i find myself sharing this exact interest as you. Let's collaborate and learn this Create A ROM Project
Notice to see the motivation to create a new ROM.
How good are your Linux skills? If you want to do it all properly I suggest you try and build your own AOSP ROM first (from the Adroid Open Source Project).
This is the place where Google publishes the Android source code files. Actually the site is fantatic and guides you through the entire process, but it does require you to understand the basics of the maketools in Linux.
Once you've been able to compile the source, you'll actually have a perfect stock ROM version of Android. Then, you can start doing advanced things to it. Add a different Kernel, add apps, install tweak scripts etc etc etc, the options are endless.
http://source.android.com/source/index.html
Good luck and have fun, because it is
Greetz
-
sippinalizay said:
Hey you know i find myself sharing this exact interest as you. Let's collaborate and learn this Create A ROM Project
Click to expand...
Click to collapse
I think it could be a great idea.
frutelaken said:
Notice to see the motivation to create a new ROM.
How good are your Linux skills? If you want to do it all properly I suggest you try and build your own AOSP ROM first (from the Adroid Open Source Project).
This is the place where Google publishes the Android source code files. Actually the site is fantatic and guides you through the entire process, but it does require you to understand the basics of the maketools in Linux.
Once you've been able to compile the source, you'll actually have a perfect stock ROM version of Android. Then, you can start doing advanced things to it. Add a different Kernel, add apps, install tweak scripts etc etc etc, the options are endless.
http://source.android.com/source/index.html
Good luck and have fun, because it is
Greetz
Click to expand...
Click to collapse
Thank you for your help and advise, i will look into it. I'm a novice concerning linux but i can learn fast.
Thank you again.
oh thats great
Hi every one I dont know where to start i want to make my own rom from source,build it,modify it etc.But i dont know where to start.I know how to build rom from source(learned it from the tutorial on source.android) but i dont know what do those codes mean.i searched on google but cant find an easy tutorial.If i build rom from source how do i make it work on my phone.How do i FIX bugs on my roms,modify it Help please
Check out the chef central section under android. There are a lot of great people working on making development accessible.
For a pure AOSP ROM you are going to have a bit more work, but be rewarded in the end. There is also cyanogenmod and other custom distributions you can build from source and modify.
If you are familiar with C and Java programming you can dig into the actual development more by writing apps or changing source code. If you don't you may want to start on that road. Other wise you will be basically cutting and pasting from everyone else, which doesn't get you any credit.
Themes are also a good place to start. There are lots of good guides in the theme section and people are willing to help if you ask nicely and appropriately.
I have done a bit of this foot work and come to the conclusion, I need to learn programming then come back to source. It is overwhelming to take on an entire operating system in a foreign language, especially when that language has to be perfect to function!
Good luck in your endeavors. Feel free to hit me up for the little knowledge I have!
Sent from my PC36100 using xda premium
But! where to learn
First i want to learn the basics of Rom
are you familiar with Java, C and C++? These are going to be very useful in understanding the "codes" as that is what they are written in. You are also going to have to build AOSP specific for your device, which will require adding your device to the device tree and extracting the necessary drivers and files that are specific to your device. Cyanogenmod has many devices already added to their github and you would simply clone the folder for your device, then build AOSP source and issue make using the device specific folder.
THIS is a helpful tool, and yes it will compile pure AOSP as well.
THIS is also a very helpful tutorial, and you can modify instructions to work for Gingerbread.
If you just want to learn to build and modify the source start with Cyanogenmod build from their source first. You can also build the kernel if you choose but that is a bit more complicated. After you have both of those building without errors then start making changes that you want to see.
The CM Wiki has some good info http://wiki.cyanogenmod.com/wiki/Building_from_source
http://wiki.cyanogenmod.com/wiki/Building_Kernel_from_source
A bit of infos before starting this thread. I'm using a Samsung Galaxy S4 Canadian, I have a high end computer(maybe that helps for coding,stuff like that) and I have "medium" knowledge on rooting/flashing,etc. I am a great designer, well for myself, I think i'm good. So I can edit or create icons and themes for new rom!
I say medium, because the only thing I really know about this kind of stuff,is rooting,flashing,installing roms and pretty much that honestly.
I already downloading the Android SDK to test those custom roms i'd like to create. I thought of doing like a couple of guys on here, using the CM Source? and just adding stuff,etc.
--
What i'm looking to do, is creating a rom based of CM for the Galaxy S4 and just in general a little side project for myself and adding some infos in my head; Some may laugh because of the lack of knowledge, but hey! we all started somewhere
I'm asking the community of dev's or just users, do you have some threads or some stuff to download to "Start" this project ?
Some things I should read before, I won't test rom's on my phone as it's a daily phone, i'll use the emulator instead(AVD or SDK) and i'm already searching on how to run it.
If you have any useful youtube videos i'll gladly accept them
I found a tutorial on how to build a rom but for the Nexus 4, I guess it's the same process but different sources ?
I'll search for the sources of Cm for the Galaxy s4 but if anyone reads this thread and knows where to get it, please link me!
Thanks to the community, this may also be useful for other users. Thanks!
Okay, I will help
1st off, let me teach you some basics.
1.) You cannot test roms on the android sdk, the android sdk has nothing to do with roms, its for building apps and java programming. It will not help you with anything if an issue goes wrong in a rom, well only the adb (android debugging bridge) for taking locats.
2.) You cannot compile a rom on windows, only linux, preferably ubuntu. So you need to just download cm11 for your device and extract the rom zip.
I will tell you more later, but its like 1pm here Goodnight
Hi! I own the Nexus5X and I am interesting in creating a custom ROM for the device. I have synced the AOSP source tree, gotten everything set up and flashed a build on to my device.
How can I start creating a ROM for the device? What are some general guidelines? How do I start tweaking apps, adding features, etc.
Also, if someone could take a look at these errors I am getting with my AOSP build that would be awesome: https://forum.xda-developers.com/nexus-5x/help/issues-aosp-built-source-bullhead-t3555439
Thanks
NateDev said:
Hi! I own the Nexus5X and I am interesting in creating a custom ROM for the device. I have synced the AOSP source tree, gotten everything set up and flashed a build on to my device.
How can I start creating a ROM for the device? What are some general guidelines? How do I start tweaking apps, adding features, etc.
Also, if someone could take a look at these errors I am getting with my AOSP build that would be awesome: https://forum.xda-developers.com/nexus-5x/help/issues-aosp-built-source-bullhead-t3555439
Thanks
Click to expand...
Click to collapse
Hello,
If you have interest in develop a custom rom, i suggest you start at XDA University to learn a bit of everything about Android.
You have some great guides on Android Software Development (look at stick posts)
I have my own guide which is not finished but I will teach everything you need to know about build a custom ROM from source, how to use github, git, mergetool etc... You can follow my progress HERE
FSadino said:
Hello,
If you have interest in develop a custom rom, i suggest you start at XDA University to learn a bit of everything about Android.
You have some great guides on Android Software Development (look at stick posts)
I have my own guide which is not finished but I will teach everything you need to know about build a custom ROM from source, how to use github, git, mergetool etc... You can follow my progress HERE
Click to expand...
Click to collapse
OK thanks, I will take a look at that. If possible, could you take a look at the errors I am getting with my AOSP build? I posed the link in the original post. Also, do you have to run extract-files.sh or can you simply download the vendor binaries from Google and run the extracting script? (AOSP)
NateDev said:
Also, do you have to run extract-files.sh or can you simply download the vendor binaries from Google and run the extracting script? (AOSP)
Click to expand...
Click to collapse
If you fork/download vendor binaries you don't need to run extracting script