The day that many ROM enthusiasts have been dreading has arrived: the CyanogenMod Team has announced the end of life support for the original Nexus One, along with other first-generation Snapdragon devices, including the HTC EVO 4G, [Droid] Incredible and Desire and others. None of these devices have official builds of CyanogenMod 9 (though plenty of independent ROM developers have done their best) and they won't be getting any CM updates beyond the 7.X Gingerbread branch.

cm nexus

The reason is a limitation in the media libraries of most of these devices, as well as a general lack of on-board storage in the second generation of Android hardware. Trying to bypass this could lead to a lot of undesirable issues. Here's the CyanogenMod team's official line:

The Nexus One, along with the other first generation Snapdragon devices (devices with the QSD8x50, MSM7x25, MSM7x27 and MSM7x27T SoCs), will not be supported beyond the CM 7.x (Gingerbread) branch.

We’ve been holding off on finalizing this, looking for ways that we could make this work and be happy with the release. Sadly, it never panned out, and we’ve decided that it’s time to stop our efforts.

The Nexus One in particular would have required a custom hboot to repartition the internal memory (which itself was limited to 512 MB, like most devices of that generation) and the proprietary libs available (from 2.3) would have required compromises in the CyanogenMod code that we are not willing to make. The wide variety of MSM7x2x(T) devices, on top of these problems, also have a complete lack of media libraries that are compatible with the new APIs introduced in ICS (video decoding and encoding, specifically). The pieces just aren’t there.

Does the capability to run ICS or Jellybean exist on these devices? Yes, with enough time, effort, and hacks it can be made to work. Do we feel the experience is worth all of that? No.

To measure our releases, we use the same subjective criteria as users do: “speed”, “jank”, “butter”, but also factor in user experience (UX) and other intangibles. However, beyond this is something that we can (and do) use as a ‘pass or fail’ mechanism, the Android Compatibility Test Suite. The CTS is used by device manufacturers to ensure that their changes to Android source do not break Android API, platform and other standards. This, in turn, brings stability to the Play Store for app developers. Breaking CTS would lead to a bad and inconsistent experience for app devs, which in turn would lead to a bad experience for you guys as users. If CyanogenMod was perceived to be blatantly violating CTS, developers could eventually blacklist CyanogenMod users from using their apps (or worse, Google could blacklist CyanogenMod from the Play Store altogether). No one would win by going down that path.

If, in the future, a solution is found that passes CTS, we will revisit the topic. For users that are adamant about trying to run ICS and beyond, options exist. We are not going to recommend other builds however, as they are more than likely breaking CTS, and therefore our quality assurance standards as well. You can find them if you look in the usual places.

-The CyanogenMod Team

Edit The list of affected devices are as follows: blade, bravo, bravoc, buzz, c660, click, cooper, desirec, e510, e720, es209ra, espresso, hero, heroc, inc, legend, liberty, morrisson, motus, one, p500, passion, robym, s5670, supersonic, tass, u8150, u8220, z71, zero

For those of you who don't keep your code names memorized, the affected devices are:

  • Commtiva Z71
  • Geeksphone One
  • Geeksphone Zero
  • Google Nexus One
  • HTC Aria
  • HTC Desire
  • HTC Desire CDMA
  • HTC Droid Eris
  • HTC Droid Incredible
  • HTC EVO 4G
  • HTC Hero
  • HTC Hero CDMA
  • HTC Legend
  • HTC MyTouch 3G
  • HTC Wildfire
  • HTC Tattoo
  • Huawei IDEOS
  • Huawei [T-Mobile] Pulse
  • LG Optimus Chic
  • LG Optimus One
  • LG Optimus Pro
  • LG Univa
  • Motorola Cliq
  • Samsung Galaxy Ace
  • Samsung Galaxy Mini
  • Sony Ericsson Xperia Mini
  • Sony Ericsson Xperia X10
  • ZTE Blade

The move isn't altogether surprising - the CM team said before the CM9 launch that most older and single-core phones wouldn't get an official build. The good new is that most of these devices are at least two years old, so those intent upon keeping an up-to-date CyanogenMod experience are at least eligible for an upgrade. And after all, Steve Kondik and his band of merry developers have supported pretty much all of these devices long after the manufacturers and carriers have forgotten about them.

CyanogenMod - Google+