Hacking the Chromebook Part 3: ARC Welder meets Xiwi

Back in February 2013 I wrote Hacking the Chromebook for Fun and Profit, little realising that this would become my all time most popular post in five years of blogging, with over 30,000 page views. Two years later and it's time to come back to this and see what has changed.

In that original post I made the point that while Google's best selling Chromebook family of laptops appears to be a cheap machine that only runs the Chrome browser, it is built on top of Linux, and this means that you are only minutes away from having a fully functional Linux distribution running on your Chromebook using the Crouton tool from Google's David Schneider.

Xiwi - X11 in a window

One of the most impressive things that you can do now with Crouton is run native Linux apps, either in a window of their own, or as a browser tab, using Xiwi. See below for an example - running the GIMP image editor as a browser tab. This is literally as simple as typing "xiwi -t gimp" at the Linux command line, once you have installed the GIMP package:

(precise)martin@localhost:~$ xiwi -t gimp

GIMP in a browser tab, courtesy of Crouton and Xiwi
And if Google's own offline document editing (yes, they do that now!) isn't quite cutting it for you, why not run LibreOffice in a browser tab?

LibreOffice in a browser tab, courtesy of Crouton and Xiwi
So far, so good - but we all know that Linux lags behind Windows and OS X in terms of applications. Wouldn't it be good if there was some other source of apps that we could tap into?

Enter ARC Welder - Android apps on your Chromebook

In March 2013 I wrote about merging ChromeOS and Android, and got as far as hacking Android to start up (very, very slowly!) under the QEMU emulator. But this is far from ideal. Wouldn't it be better if we could just run Android apps alongside Chrome browser windows?

Google's ARC (App Runtime for Chrome) does just this - and not just for Chromebooks, either. It's compatible with OS X, Windows and Linux. To use ARC you need to have the ARC Welder extension installed in Chrome.

Right now it's bit fiddly to install Android apps, as you can see from the screenshots below - and they don't always work. However, it's not hard to picture a time in the near future where Chrome just "magically" runs all the Android apps your Google accounts has access to.

Running the ARC Welder Chrome extension

Choosing an APK to load into ARC Welder

The ARC Welder main screen

Ta-da! Now we have the Android Twitter app running in a window

If you're not familiar with the term "APK", this is an Android package - the actual file that your phone or tablet downloads when you install or update an app. I would recommend sideloading APKs from your existing devices using adb rather than downloading them from the web. There are quite a few APK search engines out there, but not all of them are trustworthy. If you don't have the adb command, you'll need to install the android-tools-adb and possibly android-tools-fastboot packages, as described in this guide to doing Android app development on ChromeOS.

Having run ARC Welder against your APK, it should now be available to Chrome as an extension that you can launch by going to Settings -> More Tools -> Extensions.

Closing thoughts

Installing Crouton and running native "Linux apps" on your Chromebook is probably always going to be one for the geeks and nerds. The sad truth is that even now with Linux's massive success in Internet infrastructure and embedded systems (including the billions of phones and tablets running Android, which is Linux under the hood), desktop applications are still largely languishing. Also, many Chromebooks don't have enough storage for full strength desktop applications that pull in lots of libraries and frameworks - although SD card expansion is often available.

ARC on the other hand I can see just being a standard feature of Chrome. Perhaps the question here is whether to expect ARC (and hence anytime anyplace access to all your Android apps) on all platforms, or perhaps just on ChromeOS, as a unique selling point for Chromebooks? Only time will tell...