What is CyanogenMod

From CyanogenMod Wiki

Jump to: navigation, search

Contents

[edit] What is CyanogenMod?

CyanogenMod is a customized, aftermarket firmware distribution for a few HTC phones:

  • the HTC Dream (also marketed as T-Mobile G1 in Europe and the USA or Era G1 in Poland)
  • the Magic (known as the T-Mobile myTouch 3G in the USA, the Rogers HTC Magic in Canada, and the DoCoMo HT-03A in Japan)
  • the Google/HTC Nexus One

Based on the open-source Android operating system, CyanogenMod is designed to increase performance and reliability over Android-based ROMs released by vendors/carriers such as Google, T-Mobile, and HTC. CyanogenMod also offers features not found in these releases, such as FLAC Lossless Audio, multi-touch,Template:Citation needed the ability to store downloaded applications on the microSD card, support for tethering, and the new version of the Android Market which is planned for the official 1.6 firmware releases [1].

CyanogenMod is the first mobile OS to incorporate BFS as the scheduler, a change that it is now officially being adopted by Google. [2]

There may be a potential downside to running CyanogenMod's. According to the architect, Cyanogen:

"While this build is heavily optimized, it is also capable of pushing your G1 much harder. I am not responsible for bricked devices, dead SD cards, thermonuclear war, or the current economic crisis. Please do some research if you have any concerns about features included in this ROM before flashing it! You are choosing to make these modifications, and if you point the finger at me for messing up your device, I will laugh at you."

[edit] Features of the Dream/Magic ROM

  • Automatic Apps2SD (after you partition the card, everything else is automatic)
  • Support for ext3/ext4 file systems on SD card
  • Support for ext2/ext3/ext4 file systems for Apps2SD
  • Multitouch browser
  • UNIVERSAL! Runs on both Dream and Magic 32B
  • Now identifies itself as either T-Mobile G1 or myTouch (due to popular demand, and T-Mobile's lameness to support [ADP] devices)
  • Based on AOSP 1.5r3, a heap of Donut, various collected patches, and some help from JF-1.51-ADP
  • Enhanced ramdisk which uses optimal mount options and smart startup
  • Includes E2FSProgs for checking and converting Ext filesystems
  • Includes script to upgrade to ext3 (from recovery mode, see FAQ)
  • Includes HTC Framework, various HTC applications, and HTC VK <-- no longer applicable since 4.1.99+
  • Launcher with 5 screens and auto-orientation and compact drawer layout
  • Clean filesystem shutdown at poweroff/reboot, and fsck at boot (no FS corruption!)
  • Includes T-Mobile IM application, Amazon MP3 (with Stericson's hack), and updated Google Maps
  • Does not require "DangerSPL"
  • Highly optimized kernel with many extra modules
  • Includes a massive APN list
  • Maximum CPU scaling frequency set to 528MHz with latency tweaks
  • Various enhancements to the Settings app including extra partition space
  • Runs /system/sd/userinit.sh after A2SD setup and before starting the runtime for user scripts
  • Microsoft Exchange support (Work Email from myTouch by HTC) <-- no longer applicable since 4.1.99+ (correct me if wrong)
  • Compcache 0.6 enabled by default (if no userinit is present)
  • Linux cgroups for better app prioritization
  • Power Widget and App Fuel Gauge from Donut
  • Custom boot screen by matt_stang
  • Phone app enhancements by cytown
  • OpenOBEX commandline tools ported by Erin Yueh (just need an app to run them)
  • Ability to add dialer and MMS shortcuts
  • PPTP/L2TP VPN and WPA Enterprise support from Donut
  • MMS enhancements from rgv151
  • FLAC support from Kruton (buy this man a beer)
  • LocationServices memory leak fixed (by itp)
  • Not vulnerable to the "one click root" exploit

[edit] Development

Shortly after the introduction of the HTC Dream mobile phone in September 2008, a method similar to jailbreaking an iPhone was discovered by which one could attain privileged control (known as "root access") to the inner workings of the device.[3] This discovery, 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 at will.

The CyanogenMod firmware is currently based on code released by the Android team including the standard 1.5r3 "Cupcake" release and portions of the upcoming 1.6 "Donut" development branch. CyanogenMod is primarily developed by Cyanogen (Steve Kondik) but includes contributions from the xda-developers community and other sources.

Cyanogen is also the maintainer of a "phone recovery image" used in conjunction with CyanogenMod. The recovery image is a special boot mode which is used to back up or restore the entire phones contents, repair or upgrade the devices firmware, and access the shell.[4] Cyanogen's recovery image is integral to the "One-Click Root" method of rooting the majority of currently available Android devices.[5][6]

An application called CyanogenMod Updater allows CyanogenMod users to receive notifications when new updates are available, download them to their phone, and install them. It is available on the Android Market.

[edit] Licensing Controversy

Until version 4.1.11.1, CyanogenMod included several closed-source apps (Gmail, Maps, Market, Talk, and YouTube), which were included with the vendor distributions of Android but not licensed for free distribution. After Google sent a Cease and Desist letter to Cyanogen demanding he stop distributing these apps, development ceased for a few days.[7][8][9][10] The reaction from many CyanogenMod users towards Google was predictably hostile with some claiming that Google's legal threats hurt their own interests and violated their informal corporate motto to do no evil.[11][12][13] The cease-and-desist letter also generated substantial press coverage in various major media outlets including PC World, The Register, The Inquirer, Ars Technica, The H, ZDNet, Gigaom, and eWeek

Following a statement from Google clarifying its position[14] and a subsequent negotiation between Google and Cyanogen, it was resolved that it could be possible to continue the CyanogenMod project, albeit in a form that did not bundle in the proprietary "Google Experience" components.[15][16]

It was also 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. However, due to the controversy, some Android developers have decided to create open-source apps to replace the Google-owned ones.[17] Google's letter also appears to have upset Google's Android developer Jean-Baptiste Queru, who suggested he is seeking other employment options.[18]

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

Cyanogen and other developers have also formed the Open Android Alliance (not to be confused with the Open Handset Alliance) an organization whose stated goal is to distribute "a *Flavor* of Android that is fully customizable and does not rely on Google or other copyrights. As of now the goal is a Rom (No google at all) that we can make calls from and text."[21]

[edit] References

Personal tools