By Jonathan Corbet
November 27, 2012
Your editor recently
related that, thanks
to the generosity of the folks at
Google, he had come into possession of a second Nexus 7 tablet. There
are many advantages to that state of affairs, not the least of which being
that one can
install questionable software on one tablet without breaking the other;
it's possible to have your tablet and hack it too. Never one to turn down
such an opportunity, your editor decided to give the recently announced
Ubuntu Nexus 7 port a
try.
Why play with Ubuntu on such a device? Even the most ardent Android
supporters have sometimes been heard to complain that it's not really very
Linux-like above the kernel level. There has been a constant level of
interest in more "pure" alternatives like webOS, MeeGo, Nemo, etc., but, so
far, none of those alternatives have found any great success in the market.
So the availability of Ubuntu 12.10 for a tablet device caught your
editor's eye. Might this be a reasonable path to get "real" Linux in a
mobile setting?
Like all "Nexus" devices, the Nexus 7 is open from the outset; there is
no need to root it via some sort of exploitable vulnerability first. It's a
simple matter of plugging the device into the computer and using "fastboot"
to unlock it. The unlock operation wipes all the data on the tablet, so,
obviously, any needed backups should be made first. The next step is to
use fastboot again to flash the "ClockworkMod" recovery image. ClockworkMod
allows all kinds of low-level manipulation of the device including backups,
operating system installations, and more; it really should be a standard
feature of all Nexus devices.
Installation of
the Ubuntu port is a straightforward task — assuming one has an Ubuntu
desktop system handy. It is just a matter of installing and running the
ubuntu-nexus7-installer package. Some rough edges show through
quickly enough; the installer cannot figure out the storage capacity of the
device and must ask the user to supply that information. More frightening,
perhaps, are the scary warnings about not having any other devices attached
to the system during the installation; there is, it seems, no way to tell
the installer which device to overwrite.
There is another discouraging note during the installation process: the
release as a whole is made available under a noncommercial-use license.
The reason given in the license notice is proprietary drivers and
codecs from Broadcom and NVIDIA. Such restrictions have the potential to
raise all kinds of licensing issues. The problem is not created by Ubuntu,
though: they are simply using a rebuilt Android kernel and the drivers that came
with it. Be that as it may; your editor came to the conclusion that
writing a review constituted fair use rather than commercial use.
The use of the Android kernel raises some other interesting questions,
since Ubuntu's user space is designed for mainline kernels. Some quick
looking around suggests that Ubuntu is not using the Android-specific
interfaces; wakelocks have been configured out, for example. Battery life
under Ubuntu is claimed to be comparable to what is obtained with Android,
but it's being done with Linux-style power management instead of
opportunistic suspend. The Nexus 7 thus provides an ideal platform
for comparison of the two approaches to power management; this is an area
that bears watching.
Once the installation is complete, the tablet reboots and presents the
classic Ubuntu screen with the Unity icon bar on the left; there is no
login screen. It looks
like an interface that was designed for tablets, until one tries to use the
tiny icons in the upper right corner. Then, at least for the fat-fingered
among us, life starts to get harder. And it doesn't stop there. The
simple truth of the matter is that Ubuntu on the Nexus 7 is a painful
system to use; it is really only of interest to developers and other
masochists at this time.
In fairness, nobody ever claimed otherwise; it is described as an
experimental release for those who want to help find and fix problems. So,
sure enough, problems do exist. Many of them derive from the
fact that the traditional Linux desktop (and Unity remains close enough to
"traditional" for the purposes of this discussion) is just not designed
around touch-oriented interfaces. Others are simply glitches in the tablet
port.
So, for example, one cannot scroll windows with the standard drag gesture;
instead, one ends up trying to hit scrollbars in just the right spot.
Anything involving a middle or right mouse button requires a complicated
dance with the "Onboard" on-screen keyboard. Autocompletion popups swallow
keystrokes, so trying to type a URL into Firefox is an exercise in extended
pain. The tablet often freezes or goes into a weird unresponsive mode,
requiring a reboot — there is a reason that the first entry in the Ubuntu Nexus 7 FAQ
is "How do you reset the device when it locks up?". The screen does not
auto-rotate (but one can rotate it
manually with the xrotate command). Neither Bluetooth nor the
camera work. The device often runs out of memory; the known issues page
describes the process for configuring zram (an in-memory compression system
formerly known as Compcache), which helps a
lot. And so on.
On the other hand, there's something refreshing about being able to run
multiple windows on a tablet display; as these devices grow in both size
and resolution, there really is no justification for forcing every
application to run in full-screen mode. It is nice to have a true Linux
user space with a complete package repository behind it.
The Unity "dash" is meant to be the way users find applications on the
tablet. It remains rather painful to use in the touch environment, though;
it is slow and the scrolling is difficult to use. Searching for
applications in the main screen quickly turns up unwanted things — the
opportunity to buy stuff from Amazon, for example. The interaction between
the dash and the onscreen keyboard is problematic; it is often not possible
to get both onto the screen at once, and, when that does work out, the
keyboard tends to cover the part of the window one is trying to use.
Those difficulties notwithstanding, the onscreen keyboard is, it must be said,
one of the best your editor
has encountered — at least, for the task of typing at terminal emulators
and related applications.
Ubuntu's keyboard lacks the word completion and correction
features found on the Android keyboard, but it offers other amenities: easy
access to special characters, "control" and "alt" keys, arrow keys,
function keys, macros, configurable layouts, themes, and
more. Your editor has not attempted to use it with Emacs, but the idea is
only mildly irrational.
Some concluding thoughts
In the end, while Ubuntu on tablets is essentially unusable now, that
could change in the future. Whether it will change in time to be relevant
is not clear, though. Beyond the fundamental issues of making the
distribution work on this hardware (and, in particular, within the tablet's
memory constraints), there needs to be a set of applications that work well
with touchscreens. So it is a little discouraging that Ubuntu has no plans
to support Android applications; doing so would help to jump-start the
distribution on mobile devices. There is also, according to Mark
Shuttleworth (as quoted in this
OMG! Ubuntu! article), no plan to improve the interface for the
upcoming 13.04 release. So a version of Ubuntu that is actually usable on
tablets is, at a bare minimum, a full year away; it may, in fact, take
rather longer than that.
The situation isn't helped by Canonical's apparent
determination to go it alone in this quest. Rather than pick up a system
which has a lot of the basics working now
(Nemo or Plasma Active, say), Canonical is trying
to build up its own "Unity" shell, and it seems to lack a story altogether
when it comes to the development of touch-friendly applications. So it's
going to take a while, and
that is unfortunate: a year or three in the future may well be too late.
There are other tablet-oriented systems out there, mostly of the non-free
variety, that are
ready and grabbing market share now. By the time Ubuntu gets to be a
serious contender, there may be no space for another offering, no matter
how nice. Linux on the tablet may repeat the history of Linux on the
desktop.
So Ubuntu on the tablet has the look of a cool toy that most of us may
never play with. But, then, your editor is highly gifted when it comes to
being wrong on the Internet. This distribution is certainly a cool hack,
fun to play with, and it might just attract contributors and develop
quickly into something people want to use. For now, though, your editor
will be putting Android back onto this particular device.
(
Log in to post comments)