CyanogenMod

CyanogenMod is a discontinued Android custom ROM for smartphones and tablets.

CyanogenMod is based on the Android Open Source Project, it offers features and options not found in the AOSP or official firmware distributed by vendors.

Features
Features supported by CyanogenMod include native theming support (also called the "T-Mobile Theme Engine"), a codec for the Free Lossless Audio Codec (FLAC), a large Access Point Name list, an OpenVPN client, a reboot menu, support for Wi-Fi, Bluetooth, and USB tethering, CPU overclocking, soft buttons and other "tablet tweaks", toggles in the notification pull-down (such as Wi-Fi, Bluetooth and GPS), as well as other interface enhancements. CyanogenMod is also stated to increase performance and reliability compared with official firmware releases.

History and development
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, as of December 7 2011, CyanogenMod has recorded over 900,000 active installs on a multitude of devices.

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

CyanogenMod quickly grew in popularity, and a small community of developers, called the CyanogenMod Team 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.

As of December 2016 Cyanogen Inc, shut down the infrastructure behind CyanogenMod as part of a corporate restructure.

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. A release candidate of CyanogenMod 6 became available on July 11 2010, and the stable version was released on August 28 2010.

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 (as with the inclusion of BusyBox in the shell).

CyanogenMod 7 development began when Google released Android 2.3's source code. On February 15 2011, the first release candidates of CyanogenMod 7 was rolled out on several of the supported devices. The fourth release candidate was released on March 30 2011 and brought increased support for the Nook Color and similar devices as well as many bug fixes. On April 11 2011, the public version of CyanogenMod 7.0 was released, based on Android 2.3.3. The latest stable version, CyanogenMod 7.1, was released on October 10 2011, based on Android 2.3.7.

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 will advance from CyanogenMod 7 directly to CyanogenMod 9.

CyanogenMod 9
CyanogenMod 9 is based on Google's Android 4.x Ice Cream Sandwich. 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. By the last days of November, some alpha versions had been distributed, in particular for the Samsung mobile phones Nexus S and Galaxy S.

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 back up 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 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 and following a statement by the Librarian of Congress that permits the use of "jailbreaking" mobile devices, manufacturers and carriers have softened their position regarding CyanogenMod and other unofficial firmware distributions, with some including HTC and Motorola 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, and Samsung sent several Galaxy S II phones to the CyanogenMod team with the express purpose of bringing CyanogenMod to the device. Mobile carrier T-Mobile has voiced its support for the CyanogenMod project, tweeting "CM7 is great!"

Licensing Disputes
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. 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.

Following a statement from Google clarifying its position 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. 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. 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.