Jump to content

CyanogenMod

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 129.241.249.6 (talk) at 12:08, 10 July 2012 (No need to repeat "language" so many times). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

CyanogenMod
File:Cyanogenmod Cid Mascot.png
DeveloperSteve Kondik (a.k.a Cyanogen), CyanogenMod team
Written inC (core), C++ (some third party libraries), Java (UI)
OS familyEmbedded Operating System (Linux)
Working stateCurrent
Source modelOpen Source
Initial release3.1 (Dream & Magic)
Latest release7.2.0 / 16 June 2012; 12 years ago (2012-06-16)
Latest preview9.0.0-RC1 / 26 June 2012; 12 years ago (2012-06-26)[1]
Marketing targetFirmware replacement for Android Mobile Devices
Available inEnglish, German, Simplified Chinese, Traditional Chinese, Japanese, Russian, Swedish, Korean, Finnish, Portuguese, Polish, Catalan, French, Italian
Package managerGoogle Play / APK
PlatformsARM
Kernel typeMonolithic, Linux kernel modified
Default
user interface
ADWLauncher (7.x) / Trebuchet (9.x)
LicenseApache License 2 and GNU General Public License v2[2]
Official websitewww.cyanogenmod.com

CyanogenMod (pronounced /saɪ.'æn.oʊ.dʒɛn.mɒd/) is an open source replacement firmware distribution based on the Android mobile operating system for smart phones and tablet computers. It offers features and options not found in the official firmware distributed by vendors of these devices.

Features supported by CyanogenMod include native theming support, Free Lossless Audio Codec (FLAC) support, a large Access Point Name list, an OpenVPN client, an enhanced reboot menu, support for Wi-Fi, Bluetooth, and USB tethering, CPU overclocking and performance enhancements, soft buttons and other "tablet tweaks", toggles in the notification pull-down (such as Wi-Fi, Bluetooth and GPS), app permissions management, as well as other interface enhancements. Unlike many vendor Android distributions, CyanogenMod does not contain pre-installed spyware or bloatware.[3][4][5] CyanogenMod is also stated to increase performance and reliability compared with official firmware releases.[6]

CyanogenMod is developed as free and open source software based on the official releases of Android by Google, with added original and third-party code.

Although only a subset of total CyanogenMod users elect to report their use of the firmware,[7] as of 6 July 2012, CyanogenMod has recorded over 2.5 million installs on a multitude of devices.[8][9]

History and development

Soon after the introduction of the HTC Dream (named the "T-Mobile G1" in the United States) mobile phone in September 2008, a method was discovered to attain privileged control (termed "root access") within Android's Linux-based subsystem.[10] Having root access, combined with the open source nature of the Android operating system, allowed the phone's stock firmware to be modified and re-installed onto the phone.

In the following year, several modified firmwares for the Dream were developed and distributed by Android enthusiasts. One, maintained by a developer named JesusFreke, quickly became popular among Dream owners. In August, 2009, JesusFreke stopped work on his firmware, and suggested users switch to a version of his ROM that had been further enhanced by developer Cyanogen (Steve Kondik) called "CyanogenMod".[11]

CyanogenMod quickly grew in popularity, and a small community of developers, called the CyanogenMod Team (and informally, "Team Douche"[12]) made contributions. Within a few months, the number of devices and features supported by CyanogenMod blossomed, and CyanogenMod quickly became one of the most popular Android firmware distributions.

Like many open source projects, CyanogenMod is developed using a distributed revision control system with the official repositories being hosted on GitHub.[13] Contributors submit new feature or bug fix changes using Google's source code review system, Gerrit.[14] Contributions may be tested by anyone, voted up or down by registered users, and ultimately accepted into the code by one of a handful of CyanogenMod developers.

CyanogenMod 6

Steve Kondik released CyanogenMod 6, based on Android 2.2 codenamed Froyo, for the Nexus One, Dream, Magic, Droid, Aria, Legend, Desire, Evo 4G, Hero, Wildfire, Incredible and myTouch 3G Slide.[15] A release candidate of CyanogenMod 6 became available on 11 July 2010,[16] and the stable version was released on 28 August 2010.[17]

CyanogenMod 7

CyanogenMod 7 firmware is based on Android 2.3 Gingerbread with additional custom code contributed by the CyanogenMod Team. The custom portions of CyanogenMod are primarily written by Cyanogen (Steve Kondik) but include contributions from the xda-developers community (such as an improved launcher tray, dialer, and browser) and code from established open source projects (such as BusyBox in the shell).[18]

CyanogenMod 7 development began when Google released Android 2.3's source code.[19] On 15 February 2011, the first release candidates of CyanogenMod 7 were rolled out on several of the supported devices.[20][21] The fourth release candidate was released on 30 March 2011 and brought increased support for the Nook Color and similar devices as well as many bug fixes.[22] On 11 April 2011, the public version of CyanogenMod 7.0 was released, based on Android 2.3.3.[23] CyanogenMod 7.1 was released on 10 October 2011, based on Android 2.3.4.[24] The latest stable version, CyanogenMod 7.2 was released on 16 June 2012, based on Android 2.3.7,[25] bringing a predictive phone dialer, lock-screen updates, ICS animation backports and many bug fixes.[26]

A myTouch 4G running CyanogenMod

CyanogenMod 8

CyanogenMod version 8 was planned to be based on Android 3.x Honeycomb. However, no source code for Honeycomb was provided by Google until it appeared in the tree history of the Android 4.0 Ice Cream Sandwich source release. Since Honeycomb was superseded by Ice Cream Sandwich, the release schedule advanced from CyanogenMod 7 directly to CyanogenMod 9.

CyanogenMod 9

CyanogenMod 9 is based on Google's Android 4.0 Ice Cream Sandwich.[27] Steve Kondik and his team have announced that they have begun work on the new release after Google released the source code of Android 4.0.1.[28] By the last days of November 2011, some alpha versions had been distributed, in particular for the Samsung mobile phones Nexus S and Galaxy S.[29] On 13 February 2012, CyanogenMod 9 builds (w. Android 4.0) for the p990 (LG Optimus 2X) and p999 (T-Mobile G2x) were released. The first beta version has been distributed to the Samsung Epic 4G Touch.

On 26 June 2012, just prior to the Google IO 2012, CyanogenMod 9 Release Candidate 1 was officially announced and released, providing the first official build "With the ‘core’ OS stabilized".[1]

CyanogenMod 10

In early July, 2012, the CyanogenMod team announced via its Google+ account that CyanogenMod 10 would be based on Android 4.1 Jelly Bean and would likely be available for existing devices that currently support CyanogenMod 9.[30] As is tradition with the project, no ETA will be made for any release date.

Mascot

On 4 April 2012, CyanogenMod.com unveiled "Cid" (pronounced /sɪd/), the new CyanogenMod mascot, which replaced the previous mascot, Andy the skateboarding "bugdroid".[31] Designed by user Ciao, Cid (C.I.D.) is an abbreviation of "Cyanogenmod ID".

Tools

The CyanogenMod source code repository also contains the ClockworkMod Recovery (a "recovery image", maintained by Koushik "Koush" Dutta), which is used to install CyanogenMod and other custom upgrades. A recovery image is a special boot mode, which is used to backup or restore the device's storage and repair or upgrade system software. ClockworkMod Recovery can be automatically installed onto many rooted devices supported by CyanogenMod with Dutta's companion app, "ROM Manager", which is available on the Android Market.

Industry reaction

Until recently, the response of tablet and smartphone manufacturers and mobile carriers has typically been unsupportive of third-party firmware development. Manufacturers had expressed concern about improper functioning of devices running unofficial software[32] and related support costs. Moreover, firmware such as CyanogenMod sometimes offers features for which carriers would otherwise charge a premium (e.g., tethering). As a result, technical obstacles such as locked bootloaders and restricted access to root permissions were common in many devices.

However, as community-developed software has grown popular[33][34] and following a statement by the Librarian of Congress (US) that permits the use of "jailbreaking" mobile devices,[35] manufacturers and carriers have softened their position regarding CyanogenMod and other unofficial firmware distributions, with some, including HTC,[36] Motorola,[37] Samsung[38][39] and Sony Ericsson,[40] even actively providing support and encouraging development.

In 2011, the need to circumvent hardware restrictions to install unofficial firmware lessened as an increasing number of devices shipped with unlocked or unlockable bootloaders, similar to the Nexus series of phones. Device manufacturer HTC has announced that it would support aftermarket software developers by making the bootloaders of all new devices unlockable,[32] and Samsung sent several Galaxy S II phones to the CyanogenMod team with the express purpose of bringing CyanogenMod to the device.[41] Mobile carrier T-Mobile has voiced its support for the CyanogenMod project, tweeting "CM7 is great!"[42]

Licensing

Until version 4.1.11.1, CyanogenMod included several proprietary software applications by Google, such as Gmail, Maps, Market, Talk, and YouTube, as well as several proprietary hardware drivers. These packages were included with the vendor distributions of Android, but not licensed for free distribution. After Google sent a cease and desist letter to CyanogenMod's chief developer, Steve Kondik, in late September 2009 demanding he stop distributing the aforementioned applications, development ceased for a few days.[43][44][45][46] The reaction from many CyanogenMod users towards Google was hostile, with some claiming that Google's legal threats hurt their own interests, violated their informal corporate motto "Don't be evil" and was a challenge to the open source community Google claimed to embrace.[47][48][49]

Following a statement from Google clarifying its position[50] and a subsequent negotiation between Google and Cyanogen, it was resolved that the CyanogenMod project could continue, albeit in a form that did not directly bundle in the proprietary "Google Experience" components.[51][52] It was determined that the proprietary Google apps may be backed-up from the Google-supplied firmware on the phone and then re-installed onto CyanogenMod releases without infringing copyright.

Cyanogen has also warned that while issues no longer remain with Google, there are still potential licensing problems regarding proprietary, closed-source device drivers.[53] However, he is rebuilding the source tree, and believes the licensing issues with drivers can be worked out. He is also receiving assistance from Google employees.[54]

Version history

CyanogenMod
Version
Android
version
Release
date
Notable changes
3.1 Android 1.5
(Cupcake)
2009
3.2 2009
3.3.x 2009
3.4.x 2009
3.5.x 2009
3.6.x 2009-07-01[55] 3.6.8 onwards based on Android 1.5r3
3.9.x 2009-07-22[56] 3.9.3 onwards has FLAC support
4.0.x Android 1.5/1.6
(Cupcake/Donut)
2009-08
4.1.x 2009-08-30[57] 4.1.4 onwards based on Android 1.6 (Donut); QuickOffice removed from 4.1.4 onwards; Google proprietary software separated due to cease and desist from 4.1.99 onwards
4.2.x 2009-10-24[58] 4.2.3 onwards has USB tethering support; 4.2.6 onwards based on Android 1.6r2; 4.2.11 onwards added pinch zoom for Browser, pinch zoom and swipe for Gallery
5.0.0 Android 2.0/2.1
(Eclair)
2010-02-14[59]
5.0.1 2010-02-14[60]
5.0.2 2010-02-14[61]
5.0.3.x 2010-02-20[62]
5.0.4.x 2010-02-27[63]
5.0.5.x 2010-03-19[64]
5.0.6 2010-04-16[65]
5.0.7 2010-05-25[66]
5.0.8 2010-07-19[67] Introduced ADWLauncher as the default launcher
6.0.0 Android 2.2
(Froyo)
2010-08-28[17] Introduced dual camera and ad-hoc Wi-Fi support
6.1.x 2010-12-06[68] 6.1.0 onwards based on Android 2.2.1
7.0.x Android 2.3
(Gingerbread)
2011-04-10[23] 7.0.0 onwards based on Android 2.3.3
7.1.0 2011-10-10[69] Based on Android 2.3.7[26]
7.2.0 2012-06-16 [70] New devices, updated translations, predictive phone dialer, ability to control haptic feedback in quiet hours, lockscreen updates, ICS animation backports, ability to configure the battery status bar icon, many bug fixes[26]
8.x Android 3.x
(Honeycomb)
Not released Planned, but superseded by Android 4.0 and CyanogenMod 9
9.x Android 4.0
(Ice Cream Sandwich)
tba Under development, currently in release candidate which was released on 26 Jun 2012.[1]
10.x Android 4.1
(Jelly Bean)

Supported devices

See List of devices supported by CyanogenMod

See also

References

  1. ^ a b c ciwrl. "CyanogenMod 9.0-RC1!". CyanogenMod. Retrieved 2012-06-30.
  2. ^ "Licenses". Android Open Source Project. Open Handset Alliance. Retrieved 15 Sept 2010. {{cite web}}: Check date values in: |accessdate= (help)
  3. ^ [1]
  4. ^ [2]
  5. ^ [3]
  6. ^ About Page
  7. ^ "CM Stats explanation". Retrieved 27 Oct 2011.
  8. ^ "CyanogenMod Stats". Retrieved 21 Oct 2011.
  9. ^ "CyanogenMod Tweets 1,000,000 Active Users".
  10. ^ Ben Marvin (14 May 2009). "How To: Root Your G1 And Install Android 1.5 Cupcake". The Android Site. Retrieved 28 Oct 2010.
  11. ^ JesusFreke calls it quits
  12. ^ Dustin Karnes (2 October 2010). "Modders round table with Team Douche, makers of CyanogenMod". TalkAndroid. Retrieved 22 Nov 2011.
  13. ^ "CyanogenMod Source Code at Github".
  14. ^ "CyanogenMod Gerrit Site".
  15. ^ Cyanogen (23 June 2010). "CM6 targets". Twitter. Retrieved 23 Dec 2010.
  16. ^ Cyanogen (11 July 2010). "CyanogenMod-6.0.0 RC1". CyanogenMod blog. Retrieved 23 Dec 2010.
  17. ^ a b Whitson Gordon (29 August 2010). "CyanogenMod 6.0 Released, Brings Custom Froyo Goodness to Tons of Android Phones". Lifehacker. Gawker Media. Retrieved 23 Dec 2010.
  18. ^ development thread.
  19. ^ Cyanogen (17 December 2010). "Gingerbread Release". Twitter. Retrieved 23 Dec 2010.
  20. ^ Cyanogen (16 February 2011). "CyanogenMod-7 Release Candidates!". CyanogenMod blog. Retrieved 16 Feb 2011.
  21. ^ Whitson Gordon (16 February 2011). "CyanogenMod 7 RC Brings Gingerbready Goodness, Canned SMS Responses to Android". Lifehacker. Gawker Media. Retrieved 16 Feb 2011.
  22. ^ Cyanogen (30 March 2011). "CyanogenMod-7.0.0-RC4 has arrived". CyanogenMod blog. Retrieved 30 Mar 2011.
  23. ^ a b Cyanogen (10 April 2011). "CyanogenMod 7.0 Released!". CyanogenMod blog. Retrieved 10 Apr 2011.
  24. ^ Cyanogen (10 October 2011). "CyanogenMod 7.1 Released!". CyanogenMod blog. Retrieved 10 Oct 2011.
  25. ^ Cyanogen (16 June 2012). "CyanogenMod 7.2 Released!". CyanogenMod blog. Retrieved 16 Jun 2012.
  26. ^ a b c rmcc (15 March 2012). ""CyanogenMod Changelog". CyanogenMod Changelog. Retrieved 19 Mar 2011.
  27. ^ Android-Life.com story on CM9 and ICS
  28. ^ @cyanogen cyanogen ..and we're off. check back in 2 months :) #cm9 #ics, 2011/11/15, Twitter
  29. ^ Samsung Nexus S Android 4.0 CyanogenMod 9 Alpha hands-on Video, Android Community website, November 28, 2011.
  30. ^ CyanogenMod 10 Announced
  31. ^ "Introducing Cid". http://www.cyanogenmod.com. 5 April 2012. Retrieved 2012-04-5. {{cite web}}: Check date values in: |accessdate= (help); External link in |work= (help)
  32. ^ a b "Unlock Bootloader". Retrieved 2011-10-30.
  33. ^ discusses popularity of CyanogenMod
  34. ^ AndroidAndMe: MIUI firmware is "popular"
  35. ^ LoC rules in favor of jailbreaking
  36. ^ HTC's bootloader unlock page
  37. ^ Motorola Offers Unlocked Bootloader Tool
  38. ^ "CyanogenMod 7 for Samsung Galaxy S2 (II): Development Already Started!". Inspired Geek. 8 June 2011.
  39. ^ "CyanogenMod coming to the Galaxy S 2, thanks to Samsung". Android Central. 6 June 2011.
  40. ^ http://developer.sonyericsson.com/wp/2011/09/28/sony-ericsson-supports-independent-developers/
  41. ^ "CyanogenMod coming to the Galaxy S 2, thanks to Samsung". Android Central. 6 June 2011.
  42. ^ "CM7 is great!"
  43. ^ Taylor Wimberly (24 September 2009). "CyanogenMod in trouble?". Android and Me. Retrieved 28 Oct 2010.
  44. ^ Dan Nosowitz (25 September 2009). "Google Threatens Cyanogen Android Hacker With Cease-and-Desist". Gizmodo. Gawker Media. Retrieved 28 Oct 2010.
  45. ^ Nilay Patel (24 September 2009). "Google hits Android ROM modder with a cease-and-desist letter". Engadget. AOL. Retrieved 28 Oct 2010.
  46. ^ Darryl K. Taft (28 September 2009). "Google Irks Android Developers with Cyanogen Move". eWeek. Ziff Davis. Retrieved 28 Oct 2010.
  47. ^ One of many forum discussions on the Google C&D.
  48. ^ Reaction to C&D on Google's own discussion forum.
  49. ^ Another thread on Google's Android forum.
  50. ^ Dan Morrill (25 September 2009). "A Note on Google Apps for Android". Android Developers. Retrieved 28 Oct 2010.
  51. ^ Cyanogen updates users on licensing controversy.
  52. ^ Roselyn Roark (28 September 2009). "Google Muscles Android Developer, Offers Olive Branch". Wired. Retrieved 28 Oct 2010.
  53. ^ Cyanogen's tweet about the driver issue.
  54. ^ Quick Update from Cyanogen.
  55. ^ ciwrl (01 July 2009). "CM-3.6 is out - STABLE!". Twitter. {{cite web}}: Check date values in: |date= (help)
  56. ^ ciwrl (22 July 2009). "CM-3.9 EXPERIMENTAL is out!". Twitter.
  57. ^ ciwrl (30 August 2009). "CM-4.1 ExperiMENTAL is out!". CyanogenMod blog.
  58. ^ ciwrl (24 October 2009). "CyanogenMod 4.2 STABLE!". CyanogenMod blog.
  59. ^ Cyanogen (14 February 2010). "CyanogenMod 5.0 (Nexus One)". CyanogenMod blog. Retrieved 23 Dec 2010.
  60. ^ Cyanogen (14 February 2010). "CyanogenMod 5.0.1". Twitter. Retrieved 18 Nov 2011.
  61. ^ Cyanogen (14 February 2010). "CyanogenMod 5.0.2". Twitter. Retrieved 18 Nov 2011.
  62. ^ Cyanogen (20 February 2010). "CyanogenMod 5.0.3". Twitter. Retrieved 18 Nov 2011.
  63. ^ Cyanogen (27 February 2010). "CyanogenMOD 5.0.4 Released". xda-developers. Retrieved 23 Dec 2010.
  64. ^ Chase Bahers (19 March 2010). "CyanogenMOD v5.0.5 for HTC/Google Nexus One Released". AndroidSPIN. MobileTweek, Inc. Retrieved 23 Dec 2010.
  65. ^ Cyanogen (16 April 2010). "CyanogenMod 5.0.6 – Tax Deductible". CyanogenMod blog. Retrieved 23 Dec 2010.
  66. ^ Cyanogen (25 May 2010). "CyanogenMod 5.0.7 for Dream and Magic!". CyanogenMod blog. Retrieved 23 Dec 2010.
  67. ^ Cyanogen (19 July 2010). "CyanogenMod-5.0.8 has landed!". CyangenMod blog. Retrieved 23 Dec 2010.
  68. ^ Cyanogen (6 December 2010). "CyanogenMod-6.1 Stable Has Landed!". CyanogenMod blog. Retrieved 23 Dec 2010.
  69. ^ Cyanogen (10 October 2011). "CyanogenMod 7.1 Released". CyanogenMod blog. Retrieved 10 Oct 2011.
  70. ^ ciwrl (16 June 2012). "Announcement: CyanogenMod 7.2 Released!". CyanogenMod blog.
Articles