• Announcements

    • PsychoI3oy

      Unsupported devices & future versions   09/03/16

      Unsupported devices posts outside the Device requests forum will be deleted without comment. Posts asking about/for future versions of CM will be locked and/or deleted.   We don't have a crystal ball; we don't know if someone will make CM $version for your deivce or if CM $version+1 will be made for your supported device.
bassmadrigal

Can I Get Cyanogenmod On My Device?

1 post in this topic

In my years on this forum, I've seen more requests for CM to be supported on XX device than I could even begin to count. I want to clear up some common misconceptions.

The CyanogenMod developer team doesn't create CM from scratch. Rather, they take the code put out by Google, called AOSP (Android Open Source Project), and start adding all the awesome features we have come to love and enjoy.

Support for devices is handled by device maintainers. What does this mean? Well, let's back up a bit.

CM devs are consumers first. What this means is that they do not divide up devices among other developers, or assign devices like one would at a job. Developers work in their spare time without monetary compensation. Because of this, the developers are free to work on any device they choose to purchase.

Let's say a dev has bought fancy new device X. It is really sweet, but he wants CM on it, but there is no CM version currently available. He then goes through the trouble of taking the CM vendor and framework codebase (which in and of itself doesn't support ANY devices - that is what all the device trees are for) and then he goes and starts adding the code necessary to make CM work properly on his device. When it gets far enough along, he can then submit that code back to CM for inclusion into CM's github (where all the code for CM and devices are maintained). If that code passes the checks that the CM team has (minimal bugs and formatted properly) then the CM team will merge that code into its own device tree and add official support for that device. That developer has now become a "maintainer" for that device. For continued updates, that maintainer needs to maintain his code to make sure it works properly on his device when new CM code gets put out. If the maintainer's device breaks, or he/she upgrades, they may not be willing to maintain that device anymore, and if someone else doesn't step up, it could lose official support in CyanogenMod.

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).

If you do feel so inclined to still post a device request, know that the CyanogenMod developer team is under no obligation to support your device. This is not a democracy and more replies/votes will not necessarily help get your device support. If you are going to submit a request, please submit them to the Device Requests forum to keep the clutter down in other forums.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.