Last week's review
of Ubuntu core 12.10 on
the Nexus 7 tablet showcased one of the alternative operating systems
that can be installed onto this particular device. But Ubuntu is certainly
not the only choice out there. While he was busy installing software onto
the tablet, your editor decided to give the latest CyanogenMod build a
try. As is usual with CyanogenMod, the results were good, but also a bit
discouraging with regard to how the Android development community works.
The cyanogenmod.org page suggests that
there is no stable build for the Nexus 7, but there is a 10.0.0
release listed on the get.cm stable
releases page. Beyond that, "nightly" development builds are available
under the "grouper" code name. Naturally, the nightly build was chosen;
when would a self-respecting editor pick a stable build over something
leading-edge and potentially dangerous? As it happens, the installation of
the December 4 nightly build went without a hitch. Or, at least, it
did once your editor remembered to wipe the device prior to trying to boot
the new system; otherwise it simply hung at the boot splash screen. As
usual, one also needs to install the Google applications separately.
The CM10 nightly release works flawlessly, as far as your editor can tell.
It has some interesting differences from the stock Android install, many of
which are reminiscent of a handset-oriented system. For example, the number of
applications is far below what stock Android has; CyanogenMod
lacks Google+, Chrome (it has the standard Android browser), Maps and more,
but it does include the camera application by default. The missing
applications can, naturally, be installed easily from the "Play" store
As reported here in July, recent
CyanogenMod builds seem to have fewer shiny features above stock Android
than they did in the past. There is a whole set of configuration options,
especially with regard to how the interface works. CyanogenMod also adds
profiles, a more configurable lock screen (though stock Android is catching
up and taking its own direction in this area), a more useful user space for
those who get to the command-line level, and a set of scary "performance"
knobs. That is about it; many users might not ever notice or make use of
the additional features that CyanogenMod offers. Given that, many users
might well wonder why they should bother installing CyanogenMod; for many
of them, the best answer might be that they shouldn't.
That is doubly true for Nexus 7 users at this particular point in time;
CM10, while not yet
released in stable form, is already obsolete: it is based on the Android
4.1.2 release. Anybody running a stock Nexus 7 is likely to have
already been updated to 4.2, which offers a
number of new features. The CyanogenMod developers are busily trying
to catch up with this release and the list of devices supported by the
experimental, 4.2-based CM10.1 release is growing, but the Nexus 7
does not yet appear there. So running CyanogenMod on this device means
accepting a net loss in new features: no fancy lock screen, no swipe
typing, no screen magnifier, etc.
Unfortunately, that state of affairs looks to be a permanent part of the
experience of running CyanogenMod (or any other Android derivative). As
has been pointed out many times, Android is (mostly) open source, but it is
not run as an open-source project. Instead, the world outside of Google
gets an occasional code dump after an official Android release is made.
Thanks to the heroic efforts of the Google folks working on the Android Open Source Project, those
code dumps are both timely and useful for the community. They are a great
gift, and we should never forget the value of that gift.
It is worth keeping in mind why things are done that way as well. Clearly,
it is easier to run a large software project without having to involve all
those pesky community people; there is a whole level of bikeshedding
behavior that the Android developers simply do not have to deal with.
Keeping the code under wraps also allows Google to control when it first
appears on devices — and which devices those will be. The Nexus-branded
handsets and tablets have a lot of nice features, including their relative
openness. Not the least of those features is that they tend to be the
first showcase for new versions of the Android system. If the public
Android repositories were always current, a new Android release could be
old news by the time it appeared on an officially blessed device.
So Google's reasoning is understandable, but it is still hard not to wish
for a different situation. An always-current public repository would allow
the CyanogenMod developers to keep up with the tree as it evolved, rather
than having to figure out a new code dump a couple of times each year.
Perhaps they could even manage to upstream more of their interesting work,
helping Android to evolve more quickly, and in more interesting
directions. It would help Android to be a real open-source project.
That, however, does not appear to be in the cards. So CyanogenMod and
others will tend to lag a bit behind what official Android can do, at least
if Google continues to develop and release the system at the current fast
The result is that, for those who have devices running current, relatively
software, CyanogenMod may not have a lot to offer.
On the other hand,
CyanogenMod retains its value as a laboratory where new features can
be tested. It is unparalleled in its support for older devices that
are no longer supported by their manufacturers — and, in this industry,
"older" can have a value of less than one year. Users who have devices
that are infected with manufacturer- or carrier-supplied "enhancements"
will continue to appreciate the work that the CyanogenMod developers do.
So there is a an important role for CyanogenMod, even if that role is
changing over time.
to post comments)