What does it take to start building custom ROMs for OnePlus devices? - OnePlus 5 Questions & Answers

Hola
I am not a developer, but like those with a little time and technical know how, I can compile my own ROM from sources. This was extremely popular when I had the OnePlus 1 device and CM was still around.
The question is what does it take to create custom ROMs? ...especially given that OnePlus has traditionally been developer friendly with releasing not only kernel but firmware sources rather quickly compared to other OEMs. I understand that the OnePlus 3 / 3T sub-forum on XDA even outrival's the Pixel devices from Google. Maybe my inquiry is best suited in the general Android sub-forum on XDA.
That aside, I am surprised we haven't heard much from some developers who run and maintain well known custom ROMs such as LOS, RR, Mokee, DU, AICP, AOSP, etc. regarding support for this OnePlus 5. Am I missing something or it rather just a matter of time
Lastly, and more importantly, my greatest appreciation to all developers, cooks, maintainers, and others who help keep the community alive and well. Without these folks we would just be regular consumers being forced to use what crappy software we are provided with. Thanks to you :highfive:

Related

AOSP vs TW vs CM

Just throwing this out there, but are CM and TW ROMs intended to be in Android Development and only ASOP be in Original Android Development? It's difficult to determine sometimes whether a ROM is a CM, TW, or ASOP ROM as they're kind of intermixed within the Android Development. I'd think that CM and ASOP ROMs should be posted in the Original Android Development forum?
i do know there's a directory, but thanks to everyone developing for the S4 on Sprint!
Original development is anything based off of google code. AOSP such as CM
Anything based off the sprint TW rom goes in the other folder.
Yes, there are some in places they shouldn't be.
Developers are not always clearly indicating what the base of their rom is.
ASOP. Is The Same As CM. I See Difference. But A Big Difference With TW. Is The Bomb!
Sent from my SPH-L720 using xda app-developers app
I think some of the ASOP/CM roms that are not in original are Kangs from someone else, or a different phone all together.
Just an FYI guys, it's AOSP (not ASOP). Android Open Source Project.
I like to think that ROMs built from source belong in Original Dev. That means CM, AOSP.
Everything else goes in Android Dev. But sometimes it can get a little hazy.
pulser_g2 made some good distinctions regarding what should go where:
The following are most likely “Original Development”:
*Official releases of highly original and upstream custom ROMs (built from the ground up with significant original development within them)
*Official releases/development of such original ROMs, perhaps posted by the maintainer or their nominated person.
*A significant “first” in development for a device. Significant is subjective, but it is likely something which took considerable time/effort, and is generally accepted by developers to be significant and non-trivial.
*Significant port of a ROM from one device to another, giving enhanced features or functionality to users of the target device. The port should be beneficial (a port from two virtually identical devices isn’t original development, it’s winzipping, and nobody really benefits from this, as it’s not development)
The following are most likely not “Original Development”, and should be posted in the “Android Development” subforum:
*Your own “unofficial” stock build of your favorite original, source-built (or otherwise) ROM, particularly where an official or maintainer-endorsed thread exists already.
*Minor derivatives of other ROMs with little or no changes, or ROMs consisting of “placebo” features as a main constituent or claim.
*Renames or rebadges of others’ work – these don’t belong on XDA at all! Refer to rule 12 for more information.
*Reposts of existing ROMs with small changes (i.e. kitchen work, such as adding a couple of apps). If you could realistically distribute your changes as an “addon pack” above and beyond a ROM, you should do so. In addition, your “ROM” would not be original development as it would be substantially identical to the original ROM.
*A thread created with unrealistic goals that are clearly unachievable by those starting the thread. This is not intended to discourage high aspirations, rather to prevent threads porting Windows Phone 8 to the HTC Wallaby. This is pretty much common sense.
*A ROM where a main or significant claim/feature is graphical changes to the user interface (ie. Themed ROM)
Click to expand...
Click to collapse
A good explanation of Android Development vs. Original Android Development can be found here by one of the mods.
http://forum.xda-developers.com/showthread.php?p=41633683
Sent from my SCH-I545 using Tapatalk
my bad, that's my dyslexia kicking in there,
one thing that maybe as a suggestion is that the ROM devs can put in the subject line [AOSP] [TW] [CM], etc with what the base of the ROM is? I know there's not too many sprint ROMs out there, but those that do exist it's still a little difficult to search for each.

[Great News] [Official] [CM12.1][Coming Soon]

Hello Everyone
I have come across device tree for Hima M9/CyanogenMod 12.1 with a custom Kernel. (If I'll tell you the name of either , you'd Google in a second)
The developer is a genius and trust me you'd see both of these within a month. Stay tuned for updates.
I can attach screenshots but I'd not post links as previous experiences that I had meant that people started troubling the developer and he quit the project all together. Respect the developers and read in my signature about development process and what it is actually like to be one.
This is just a confirmation and I can actually prove it to everyone who are interested.
I see many device tree updates every day so I am sure once CM12.1 is available officially, it'd open gates for all sorts of custom ROMs!
Attachments coming in few hours as I'm heading out
wow that would be awesome! cant wait to run a pure android rom on this beast
*all f***** fingers crossed*
Yay!
Sent from my LG-H811 using Tapatalk
Hnk1 said:
Hello Everyone
I have come across device tree for Hima M9/CyanogenMod 12.1 with a custom Kernel. (If I'll tell you the name of either , you'd Google in a second)
The developer is a genius and trust me you'd see both of these within a month. Stay tuned for updates.
I can attach screenshots but I'd not post links as previous experiences that I had meant that people started troubling the developer and he quit the project all together. Respect the developers and read in my signature about development process and what it is actually like to be one.
This is just a confirmation and I can actually prove it to everyone who are interested.
I see many device tree updates every day so I am sure once CM12.1 is available officially, it'd open gates for all sorts of custom ROMs!
Attachments coming in few hours as I'm heading out
Click to expand...
Click to collapse
The link below is to the thread which its being discussed in within m9 Q&A section. Rashid97 is the dev working on the project
http://forum.xda-developers.com/one-m9/help/cyanogenmod-12-12-1-htc-one-m9-t3069920
v1rk said:
The link below is to the thread which its being discussed in within m9 Q&A section. Rashid97 is the dev working on the project
http://forum.xda-developers.com/one-m9/help/cyanogenmod-12-12-1-htc-one-m9-t3069920
Click to expand...
Click to collapse
aaronrw said:
Yay!
Sent from my LG-H811 using Tapatalk
Click to expand...
Click to collapse
sweetrobot said:
about ****ing time!!! so sick of the nonSense...
cm / aosp / aokp ftw.
paperweight for the last couple of months. tried a bunch of the existing roms, just not my cup of tea.
Click to expand...
Click to collapse
k1moe said:
wow that would be awesome! cant wait to run a pure android rom on this beast
*all f***** fingers crossed*
Click to expand...
Click to collapse
I am afraid that is not it what you are pointing out.
Here are the screenshots.
You can clearly see that how much commits are posted daily and it is going on at a very brisk rate. Cheer up everyone!
Request :
Just please do not trouble the developer if you find out who is he.
READ THIS HERE
Alternatively you can see more information in my signature!
Hnk1 said:
DEVELOPMENT PROCESS
INTRODUCTION
I am starting this forum in hope of educating my readers about ROM development according to my experiences. Further, I will highlight what is the usual developers' thought process before they decide to build a ROM for a specific device. The reasons why they usually choose a certain device or why they prefer one device over another would also be stated briefly. I also have intention of looking into ways how we can speed up ROM productions for any device and what you can do to play your part.
I UNDERSTAND YOUR FRUSTRATION FOR NO CUSTOM ROMS EVEN AFTER SOME MONTHS BUT THIS DOESNOT GIVE YOU THE RIGHT TO SPAM
I am sure many of you must be really disappointed by the lack of development for your device and I know this must be frustrating when we see other devices are getting ROMS so quickly. I know many are too excited when they find a little about any OTA/ Custom ROM and sharing such news is fully justified. However, it's beyond my logic & thinking why the forums are SPAMMED for any little information they might find anywhere regardless of their sources or if it has been ALREADY POSTED. I reckon many of these threads could have been avoided by simply searching in the forum.
ROM DEVELOPMENT
I can assure you that many develoeprs are working very hard to PORT and develop different ROMS for a device. However, the reason we can not see any CUSTOM roms till yet is due to complicated nature of a device itself.
Usually developers prefer a device which is :
1. Easy to work with, less complicated to code with or in other terms DEVELOPER friendly. For example, for a while I had a real issue with HTC phones as they have too many things to work with like Bootloader, S Lock, Radios, Hboot version etc while in Nexus devices you only need to unlock your device with one fastboot command. That's all and you are ready to flash ROMs.
2. Personal preference of Device. This simply means that we all have different tastes and thus we choose different devices. A certain developer might only work for a certain brand while other might work with few brands. This has nothing to do with anything but a personal choice.
3. A device that promises reward in terms of money/self satisfaction. Developers usually go for devices which have most active users so if their intention is also to get some money out of it in terms of donation, this will work well with devices which are more in number.
4. Knowledge about a certain brand more than another.
5. MONEY TO BUY A CERTAIN DEVICE/DEVICES. Suppose a developer wants to make ROMS for Xperia L/ SP/Z and Xperia U. Yet he only has 500 dollars to choose from. He then will have to make a choice between devices and this will eventually mean that not all of the devices get the same treatment. Money is the most decisive factor why a developer doesnot chose your device but rather another. For example purpose only, if I have to choose between devices, I might prefer SP over Xperia L as I can see more future of SP than Xperia L(I might be wrong).
6. Simply he bought a device or it is gifted/donated to him
SOME REQUESTS
Please STOP bugging developers by trivial questions. Just think how many other people ask the same question and it gets very frustrating to actually work on the device itself.
Every developer has a LIFE apart from developing ROMs. They also have a family, school, work, hobbies, bad days and so much like us. So they will do it when they feel like doing it. Just sit back and relax. Enjoy your device until developer releases the ROM for your device. Asking a REASONABLE question seems plausible but asking same questions/useless questions without using brains is just STUPID. Kindly refrain from that.
If you have seen a developer who has taken the initiative to work on your device , the best thing to do is to be patient. Let him concentrate. Spamming and spamming again won't help really.Yet some users start SPAMMING developers, their twitters, blogs and accounts. That's really sad. You can discuss on the forum what you think about it but IRKING developers isnot really cool.
WHAT CAN YOU DO TO HELP DEVELOPERS AND SEE CUSTOM ROMS.
1. Search the form first and look for answers. DON'T start new posts/questions/threads when it is ALREADY mentioned in some other section.
2. STOP PMing/SPAMING developers but rather ask a question WHICH havenot been asked before in the forum. Do not engage in the habit of making a new forum for everything. Try to keep threads as little as possible.
3. Follow developers and see what they have updated about on their official twitter,facebook,etc rather than bugging them on different forums/social websites.
4 DONATE THEM. DONATE THEM . DONATE THEM!
The amount of efforts they put, sitting for hours in front of their PCs and I know how frustrating it gets when you try to run commands and everything seems to work yet you can not boot up your ROM. And worse, you can not find WHY really. Just a change in line in build.prop results in failure of ROM to boot up and specially working from source to build ROM is really really tough. The best thing you can do is being supportive and patient !
A ROM development requires not just EXCESSIVE amount of hardwork, time, energy and dedication but also they need MONEY to actually buy devices and try it on. They are happy and encouraged to keep on developing ROMs when they see their efforts are not wasted and they are rewarded and respected for what they do.
SOME BASICS OF ROM DEVELOPMENT
Usually this is required to make a full custom ROM
Blobs which contain hardware information which comes from hardware manufacturer like Qualcomm in case of Snapdragon processors
A fully functional device tree
Latest Android source (Or the android version source you want to build for)
Specific Custom ROM coding which is based on Android Source
Usually a device tree and kernel tree is needed before custom roms can be made available. This is a long trial and error process in which every component of hardware is made functional as usually manufacturers do not provide any code for their devices and thus new code is to be written which is very frustrating and long process!
Click to expand...
Click to collapse
Hnk1 said:
I am afraid that is not it what you are pointing out.
Here are the screenshots.
You can clearly see that how much commits are posted daily and it is going on at a very brisk rate. Cheer up everyone!
Request :
Just please do not trouble the developer if you find out who is he.
READ THIS HERE
Alternatively you can see more information in my signature!
Click to expand...
Click to collapse
What i pointed is where the developer actually mentioned he his working on it and the link can be sourced by anyone, and people in that thread have been checking the github as mentioned. Theres now two threads on the discussion of cm12.1 which talk similar. All you are doing is not mentioning the dev based someone who used his work without his permission. Also to add the dev replied that thread to have to say they having working booting img just some features aren't working.
Link to his github for the current work
https://github.com/Hima-Dev/android_device_htc_hima-common
Thank GOD
---------- Post added at 01:33 PM ---------- Previous post was at 01:32 PM ----------
I'll be happy to donate
I'm really excited about this, because the person doing this is making amazing progress and at last count I want to say it was only Wi-Fi and one other thing not working with said developer already pretty certain that they know how to change that, it's just a lot of trial and error (any dev knows how frustrating it can be having to compile the source all over again to test a tiny change)
What this means for me, personally, is that I can do what I've done on past htc devices and knock out a fairly complete port of miui (some default miui stuff doesn't play nice during flash, like the camera app, so I'll likely include the stock m9 camera app as packaged for other phones so it doesn't rely on sense)
Anyway... ?
v1rk said:
What i pointed is where the developer actually mentioned he his working on it and the link can be sourced by anyone, and people in that thread have been checking the github as mentioned. Theres now two threads on the discussion of cm12.1 which talk similar. All you are doing is not mentioning the dev based someone who used his work without his permission. Also to add the dev replied that thread to have to say they having working booting img just some features aren't working.
Link to his github for the current work
https://github.com/Hima-Dev/android_device_htc_hima-common
Click to expand...
Click to collapse
Cheers for side information. I know the developer and I'm pretty sure you'd get a kernel and Cm12.1 pretty soon.
Actually I Would let the developers sort out their differences themselves, for me it is Cm12.1 coming pretty soon.
agentfusion said:
I'm really excited about this, because the person doing this is making amazing progress and at last count I want to say it was only Wi-Fi and one other thing not working with said developer already pretty certain that they know how to change that, it's just a lot of trial and error (any dev knows how frustrating it can be having to compile the source all over again to test a tiny change)
What this means for me, personally, is that I can do what I've done on past htc devices and knock out a fairly complete port of miui (some default miui stuff doesn't play nice during flash, like the camera app, so I'll likely include the stock m9 camera app as packaged for other phones so it doesn't rely on sense)
Anyway... ?
Click to expand...
Click to collapse
Whhhaaatttttt?!?!?! Miui?!?!?
Wait
Galaxysm said:
Whhhaaatttttt?!?!?! Miui?!?!?
Click to expand...
Click to collapse
Yeah. Once we have a reliable port of CM12, then porting other stuff is pretty easy. All I have to do is find a device that already has miui with the same resolution and dpi/ppi and port the assets over to the m9.
Preferably I'd like to port the miui patchrom so I can setup an automated build system to build a fresh copy every time aosp and miui are updated, but I don't have anywhere near enough time for that.
agentfusion said:
Yeah. Once we have a reliable port of CM12, then porting other stuff is pretty easy. All I have to do is find a device that already has miui with the same resolution and dpi/ppi and port the assets over to the m9.
Preferably I'd like to port the miui patchrom so I can setup an automated build system to build a fresh copy every time aosp and miui are updated, but I don't have anywhere near enough time for that.
Click to expand...
Click to collapse
Nice I can't wait!!
Nice to see this coming ... And for MIUI I haven't been able to use it since I change my original EVO ... It would be great to have it as an option ...
Great news
Daily reminder that CM12 is a desperately needed and coveted thingy for the m8+1.
Is it lollipop 5.1?
Sent from my HTC One M9 using XDA Free mobile app
vegetaleb said:
Is it lollipop 5.1?
Sent from my HTC One M9 using XDA Free mobile app
Click to expand...
Click to collapse
Cm12.1 is lolipop 5.1
Anyone knows the progress on this...
epedrosa said:
Anyone knows the progress on this...
Click to expand...
Click to collapse
Be patient. The OP says "within a month" and it has only been roughly 2 weeks

To all Cyanogenmod lovers out there

Hi,
I just thought it could be worth mentioning that there's a device request thread on Cyanogenmod forums for our beloved Idol 3 :
http://forum.cyanogenmod.org/topic/111850-alcatel-onetouch-idol-3-55/
May I suggest that everyone who wants a Cyanogen rom to be ported on our phones should take a minute to register there and add their voices to the request ?
There's already 24 posts in this thread
Already demanded it
Cool
Just made a post, but later found out that posting a request for CM does not guarantee anything. In the sticky it states
Now, what does this mean to you? First off, requesting anywhere in the CM forum, the CM Blog, or the Facebook/Google+/Twitter accounts for device XX to be supported is probably a waste of your time and anybody who reads said request. CyanogenMod does not work on device requests as there is no guaranteeing that a current CM maintainer is even interested in the device. Additionally, its not as simple as 'porting' code, the device trees must be coded from scratch and made to work with the AOSP sourced code and CM enhancements. This takes a large amount of time and effort, especially when the device's OEM fails to release the latest version of Android for it. Second, in hoping a worthy developer sees the post and decides to take up the project... well, that is probably just wishful thinking. Many developers do not like interacting with end users (too much finger pointing between both devs and users or anger directed at the devs for something working other than how the user expects - it happens far too often); because of that, many developers don't frequent the forum (or if they do, they only view the forums for the devices they maintain).
The best way to get a device official support is not requesting it from the CM team, but learning how to do it yourself or encouraging a maintainer of an unofficial build to submit their code for review. Many developers will work on unofficial ports on the xda-developers forum, so that would be the first place to check out. If there isn't any work currently being done, you can attempt it yourself. There is a pretty in-depth article in the wiki explaining a lot of the steps of porting a device (as the bottom of the wiki states, nothing can cover every single process of porting, but it is a really great start).
Click to expand...
Click to collapse
So it would need to be someone willing to take the time out to buy an Idol 3, if one has not done so already, and then port the code for our device out of their free time. And considering the userbase for this phone does not seem all that large to be noticed, I'm not sure if CM will work on our phones anytime soon.
Well thank you very much for your posts and your research.
I'm afraid you're right, but we had to ask
Let's not lose hope too soon anyway, the fact that the device request thread exist seems to be a good point. I don't know if any device had received a CM port because of this thread, but... why not ?
I've red that Alcatel and cyanogen had been in contact for a tablet. The project has been cancelled but this might suggest they could have access to resources that would ease their work (pilots ?).
Original rom on the idol is pretty much stock Android, this is a good thing too (well I'm not a developer but I guess it's easier when it's close to the original).
And, like you said, even if the user base is not that large, chances that someone from cyanogen got seduced by the idol (like we did) are still possible... (this is the moment where everybody crosses their fingers ).
Anyway thanks again !
The thread has now 31 posts (ah no, 32 webgaffeur just added his voice !)
Thanks to all the people that took some time to post there, let's not give it up : it's time to flood the forum !
i had posted the github with source for the phone but no one seems to respond not even one single admin? we can ask other devs crdroid pacrom dirty unicorns paranoid etc.
Alas, I think Brian is right : it's probably a waste of time posting on the device request thread
I checked devices with a lot more posts and views than ours and... nothing from a dev (like huyawei and Asus zenforce 5).
Asking to other rom devs will probably be useless also. Our only hope is that a competent developer buy an idol and start working on it... If this happens, I'm pretty sure he will share his work on XDA.
Well, meanwhile we already have root, twrp and xposed working, so I guess the best thing to do is to customise out phones till it suits our needs and that's all.
Let's hope also that Alcatel will continue to push updates (marshmallow ?)
Anyway thanks for your efforts Gecko.
Sorry, didn't mean to rain on anyones parade. Just wanted to let everyone know what the stickied thread on the CM forum for device requests stated. I'm not saying it won't ever happen, just that it might take some time to get a valued reputable dev who owns, or wouldn't mind purchasing the Idol 3 and working on it for us. Most dev's accept donations of devices that want development on from the users, so if we were able to locate and contact a reputable dev, asking them if we were to provide them with the device, would they mind porting or creating a ROM for it. It's worth a try. Maybe start a bounty or fundraiser etc. I myself do not know of any dev's that would be willing to work on this device as the ones I do know of have only worked on Samsung devices.
I don't know any dev at all
P.S. : thread has 34 answers now !
Cannadoux said:
I don't know any dev at all
P.S. : thread has 34 answers now !
Click to expand...
Click to collapse
theres always other devs like pacrom paranoid android crdroid and omnirom even dirtyy unicorns
Good news, it seems we haven't hoped for nothing : http://www.cyanogenmod.org/blog/releases-releases-releases-august-2015#comment-2229134454
Thanks to @purple.epod for posting the news.
From cirwl himself : "A couple of us have one, and kernel source was just released, so strong possibility of yes"
Yiiiihaaaa
this is great i hope that we get a nightly soon

Lack of development!?why?

pixel's are some great phones.but its development?seems developers are not so intrested in our phones.not to forget devlopers like @Chainfire, @Dees_Troy , @flar2 we got the platform ready for the development but all the developments stopped at that same level.when comparing to oneplus 3 forum there is a lot of development over there.it's like we are left alone by the developers community.what makes our device not so likable to the developers?!.maybe because of all the complications that are involved in rooting,dual slots,etc?in this thread we can discuss what can be done to get in our beloved developers to our forum..
P.S.if you guys think it is a useless forum please forgive me and delete it.
Fyi there are already other posts of this same topic. The slowness basically boils down to the new partition setup and I bet once we get a good stable TWRP and devs figure out the issue they are running into with the gapps having to be integrated we will see more development. I know Dirty Unicorns has their rom out in testing on their g+ group and Pure Nexus is also in testing.
Development took a long time to get rolling on my last phone, the Nexus 5X, and that's a NEXUS DEVICE. There are a few new hurdles this time around but just have patience. I'm confident development will pick up. Dirty Unicorns is already out and UberStock is in testing. There are several kernels that have been released as well.
Here is a development discussion thread already in progress:
http://forum.xda-developers.com/pixel-xl/how-to/pixel-development-t3511607
A flashable zip creation process is hindering some folks right now.
Alcolawl said:
Development took a long time to get rolling on my last phone, the Nexus 5X, and that's a NEXUS DEVICE. There are a few new hurdles this time around but just have patience. I'm confident development will pick up. Dirty Unicorns is already out and UberStock is in testing. There are several kernels that have been released as well.
Click to expand...
Click to collapse
AOSip is in testing too!
Sent from my Google Pixel XL using XDA Labs

[ELI5] AOSP..->..Tissot? @ghpranav and lack of stable 8.0 / 8.1 trees

I'm googling while compiling this post but I just lack too much knowledge about aosp so I'm asking for some eli5 or just a link to an article where there is a well organized explanation on open source android development closely related to what I want to know here. (I prefer public sharing but PM would work too)
So, @tissot-dev (who is this? Xiaomi engineers?) published open source code for Tissot. (is this only for mi a1, who named it, when and why, what is it made from, is it build on aosp, if so in how many iterations to get to "Tissot").
What did @ghpranav do to become the standard? (What from his background contributed to his knowledge on this topic if known?)
Why can't we get a stable Oreo tree? How do we get to it?
Are unofficial builds contributing in any way and how are those built to be stable enough?
Why are officials running away from mi a1? (Few of them built a stable nougat but stopped, some even ditched doing simple fixes to make it fully functional)
Edit: Where does the Android one project come to play?
I want to learn a lot more and contribute if enough of these concepts get cleared in my head, so it's a bit technical, but I made this post to help myself and hopefully others with a compiled list of errors my brain is generating and if someone is kind enough, eli5 please, or just share a link or two, I need a bit of guidance at least to help my brain generate some good kw args for googling.

Categories

Resources