The Linux Rain Linux General/Gaming News, Reviews and Tutorials

Impressions of a Chromebook and Linuxy Goodness

By Andrew Powell, published 18/06/2015 in Editorial


Feeling like something different, I recently bought a HP Chromebook 11. In this article I give my impressions on the device itself and also some Linux-specific goodness thanks to something caled Crouton, plus a few thoughts on working in the "cloud".

As someone who uses a typical GNU/Linux distribution pretty much every day (which ranges from Ubuntu to Arch, Debian etc depending on the hardware), one might wonder why I suddenly decided to buy a Chromebook of all things. One would further wonder this when they consider I'm someone who has some reservations about operating purely in the so-called "cloud". Plus I really like my shell tools and programs, such as Bash, Perl, grep and Vim etc, which are literally tools I just about can't live without.

Firstly, I wanted a new cheap and efficient machine to play with as my several years old 10-inch ASUS netbook (which runs Debian Linux) was becoming rather frustrating with a power plug that would only charge when sitting in a very particular manner and was extremely sensitive, often liable to be charging one second and then not charging the next. Plus certain keys on the keyboard were becoming very hard to use for some reason, needing to be pressed very hard to even register. Needless to say, as a portable machine that netbook was becoming very useless! With this in mind, I figured I'd use the netbook purely as a home file/media server and just SSH into the machine from another computer when I wish to perform tasks/maintenance. That way the netbook can sit in one place, I never have to touch its keyboard and the netbook doesn't have to be thrown out. Win/win for sure.

However, I still needed to replace the netbook with a similar sized and highly portable computer for hopefully no more than a few hundred dollars (AU). There's no shortage of small and fairly cheap laptops these days and in the end it seemed to come down to two HP machines for around the same price of $299 - one your typical machine running Microsoft Windows 8 and the other, the HP Chromebook 11 (the "11" signifying the screen size of 11 inches). I've been around the blocks many times buying machines including Windows and I'm used to the process of either dual-booting or even wiping the Microsoft operatings system to accomodate my Linux distribution of choice, but thanks to a little thing called Secure Boot, it can be a bit more of a fiddly experience in recent times.

A Chromebook however, runs Google's ChromeOS out of the box, which is in fact Linux at its core. A bit of reading also revealed that you could relatively easily install a Linux distribution such as Ubuntu or Debian alongside ChromeOS thanks to a special script called crouton, at the cost of some security.

So for something different and knowing I'd still have Linux at my disposal, I settled on the HP Chromebook 11. This isn't meant to be a proper review on the Chromebook and you can find plenty such in depth reviews elsewhere on the 'net; indeed this is just my look at it from my, a regular Linux users', perspective.

The Device

If there's one thing I instantly noticed about the Chromebook compared to my old ASUS netbook, is that it's a sleek and surprisingly attractive machine. For a sub $300 machine, it wouldn't look terribly out of place sitting amongst a bunch of substantially more expensive Apple Macbook machines. Arguably there's been some design cues taken from Apple, especially in regards to the HP Chromebook's keyboard.

As it turns out, the keyboard is in fact one of the best parts of this Chromebook. It's probably no coincidence being that the keyboard has an obvious similarity to an Apple keyboard and it's very comfortable and easy to type on. I think if you were get a machine like this to do a lot of writing on, you would be very pleased with the keyboard experience.

The touchpad on the other hand... the less said the better. Whereas the keyboard is excellent, especially for what is basically a budget machine, the touchpad goes in the opposite direction. Put simply: it sucks. It's usable, but it has a strange almost rough texture compared to most other, smoother touchpads and can lack responsiveness. For casual use and using multi-touch to scroll web pages and the like, it works okay, but anything more and it's noticeable that the touchpad is lacking. Of course you could plug your own mouse in, but that's besides the point.

One interesting thing pointing out about this Chromebook is the charging port - it's regular old microUSB. Yes, that's right, the same port you generally find on your smartphone or tablet, camera etc. This is obviously useful because if you're lacking your phone charger you could actually plug your phone into the Chromebook's powerpack or even vice versa! By all reports charging the Chromebook on your phone charger is a tad slower, but it works.

Though at this size you only get a 1366x768 resolution, the screen itself is surprisingly great quality and very crisp.

ChromeOS and Crouton

ChromeOS is the standard OS you'll find on any Chromebook (duh). What you may or may not realise, is that ChromeOS underneath is running the good old Linux kernel. In fact, press CTRL-ALT-T and you'll get a terminal like any Linux environment. Okay, it runs in a Chrome browser tab which might seem a bit funky to an old hat Linux user, but it's there. Then you can run a command like "top" or "ssh" and suddenly things feel a little more familiar. You only have a select amount of shell commands out of the box, but at least there's a shell at all. Which is important, as we'll get to in a moment.

As far as ChromeOS itself goes, even on a device with such modest specs (Samsung Exynos 5250 ARM processor, 2GB RAM) it's obvious that the OS is very lightweight and minimalistic. You would expect as much for an OS that wants to basically have you do everything in the browser and to a point it really does feel like a "web appliance". ChromeOS boots in less than 5 seconds, shuts down instantly and suspends/resumes instantly as well. The interface is suitably minimal as well, although it is attractive enough and in my opinion works well. It would feel familiar enough to both Windows and Mac users while still having its own touch of difference.

There is a panel at the bottom with "pinned" apps, although of course these apps are generally actually Chrome browser applications, which in turn are often shortcuts to an online website/application. For anyone used to using the standard Google Chrome browser and the apps available to it from the Chrome Web Store, you'll be in familiar territory, as it is all basically the exact same thing, just wrapped in an integrated environment that essentially makes Chrome the desktop environment itself, even down to providing the file manager and local video/audio player.

Indeed, despite all the cloudy-ness of ChromeOS, you do get some local storage, albeit in this case only 16GB of it (!) and you can save files or even play media files with the aforementioned local media player. You are limited to what media formats Chrome itself can play, because as I said, the browser itself is powering the media app. You won't find any VLC-type swiss army knives here.

However, if you're like me, while some of the admittedly very impressive capabilities of web applications are interesting and in some cases even very convenient, you will miss some of your standard software. For me, in particular it's the likes of Vim and an assortment of shell tools. For others, it may even be full-blown GUI applications you can only get in a normal GNU/Linux distribution.

This is where crouton comes in. Crouton is really just a very well made shell script that you run in the ChromeOS shell I mentioned earlier that downloads and installs a supported version of Linux for you and sets it up to run in a "chroot", a kind of Linux jail, which allows you to run that distribution side-by-side with ChromeOS. It is important to mention that if you wanted to do this, you must put your Chromebook in "Developer Mode", which you can easily find instructions on how to do so on the web. It's easy to do and fairly safe (besides initially wiping any local data, as ChromeOS has to kind of "reset" itself into Developer Mode, but if you're like me you won't have too much actual local data at this point and of course your other data will just be re-synced) but it does supposedly make your machine overall less secure. So bear this in mind.

Armed with crouton, I installed Kali Linux, which is based on Debian, but you could install any of the distribution releases that crouton currently supports. By running sh crouton -r list the script will list all supported releases.

As you can see in the image above, though it may not be immediately obvious, I'm actually inside the installed Kali Linux chroot inside the ChromeOS shell and I can run any command that I normally could inside a Kali/Debian distribution, including apt-get. The next part, although I didn't get a chance to screenshot it, would be to type (for example), startxfce4 and then we would be taken to a new shiny Xfce4 desktop. From there, you can run any graphical application you normally would in Linux and you can switch anytime back and forth between the Xfce desktop and ChromeOS by using the CTRL-ALT-SHIFT-(back or forward) keys, akin to switching between VT consoles. You can of course use any desktop environment or window manager that the installed distribution provides in its repositories.

Personally I barely ever actually load Xfce or any graphical environment as I actually make use of CLI mode in the Kali chroot more than anything. In there, I can run Vim, git commands and even an Apache2 server. As you can no doubt see, using this technique you could turn a cheap Chromebook into a development environment if you wanted to. Running the Apache2 server inside the chrooted Linux on your Chromebook, you can access your local websites for testing right in the Chrome browser in ChromeOS itself. That last bit is important, as it highlights the fact there's no funky emulation going on here - the Linux distro running in the chroot is running on top of your actual hardware and the same Linux kernel that ChromeOS is using. Effectively, ChromeOS and your Linux distro of choice are literally running side-by-side and even share the same Downloads folder.

On my particular (budget model) machine, it's worth noting it is running an ARM processor, so you are a bit limited to programs that are compiled to run on ARM. Hence quite a few proprietary programs such as Steam, which only run on x86 platforms, won't work, but then again, on hardware like this you would hardly be considering playing too many games. However, on more expensive and higher end Chromebooks, you can get nice fairly late-model Intel hardware, ala Intel Core i5/7 CPUs and Intel HD GPUs and larger SSD hard drives. On such hardware you could undoubtedly run, say, Ubuntu with Crouton and even run many Steam games or use the great XBMC media centre (now known as Kodi). So if you don't mind getting down and dirty, a Chromebook has a bit to offer, giving you both worlds of a fast, snappy web kiosk-like ChromeOS and a full blown GNU/Linux distribution, all at the same time.

Is it worth it?

It would be a fair question to ponder: is it really worth the effort, instead of going the traditional route and just installing Linux on a normal computer?

Like anything, it depends on what you want. For me this was a bit of an experiment and something to tinker with besides the norm, but also a way to get a decent quality machine for a decent price that came with a bit of room to tinker. It's true for the price I paid for the Chromebook, I could have gotten a Windows powered laptop of similar size and perhaps slightly more powerful (and x86 to boot) too, but on the other hand the overall quality in terms of build, keyboard and screen mightn't be so good, for that price-point. Though I do imagine most machines would have a better touchpad...

One could list pros and cons all day, but at the end of the day for the price I paid, I did get a machine that does the casual web thing very well and can literally just be picked up and used whenever it's needed, hassle-free. The ability to load up a proper GNU/Linux distribution at the same time is a nice bonus.

But, as someone is bound to mention it, we come to the "C" word... well, and the "G" word...

That thing called the Cloud... and Google

There is one nagging feeling about the whole thing I get and still ponder even as I write this article. ChromeOS, while running our much loved Linux kernel underneath, is still Google's baby. If you feel like your privacy is being invaded just by running the regular Google Chrome browser, well... running your entire desktop inside Chrome itself will probably feel far worse.

You can't really get away from that fact, short of nuking ChromeOS itself and installing your Linux distro of choice on the system proper (which apparently is possible). But then what's the point of buying a Chromebook?

Which then brings us to the point of ChromeOS, "cloud computing". As much as I despise that term which is, lets face it, really just a vague marketing phrase, it's all the rage right now. There are an incredible amount of web applications appearing that can apparently do a lot of what your regular desktop apps can do, but with the added advantage of being available anywhere you have an internet connection and of course, being cross-platform. Not only that, but increasingly many of these apps (and increasingly many more in the Chrome Web Store) are implementing offline capabilities, so even when you have no internet connection, your apps are still (mostly) usable and your data synced.

While people (nerds?) such as myself can never see web apps replacing tools like the Unix-like shell programs I have mentioned earlier in this article, the issue for me is not even really the usability or features of these web apps, but rather the direction we all seemingly are being pushed towards and where our data goes.

This isn't just aimed at Google. Indeed, there are many companies getting in on the game and making SAAS (software as a service) for various day to day to tasks, even down to web-based IDEs (Integrated Development Environment), text editors/note takers, image manipulation tools and the like. When you think about it, these are the sorts of programs you would traditionally download as an installable package or simply install from your package manager, depending on your operating system, and it was (and still is, for the time being) as simple as clicking download or issuing an install command.

In the age of the "cloud" though, with hosted services offering even a simple piece of software such as a text editor or a task scheduler will generally mean you actually signing up, giving over your email and potentially even your name and other details along with all the potential tracking, ad-targeting and selling of your details that can go along with it.

This is just the opinion of this writer, but thinking about all of that does give a slightly uneasy feeling and makes me wonder if we're heading for yet another age of proprietary, lock-in kind of programs. At least for the masses; after all, our traditional Linux-y programs aren't going to suddenly disappear.

Still, it's food for thought and has gotten me recently looking into interesting movements such as the IndieWeb and Unhosted.

Perhaps a topic for another article!



About the author

Andrew Powell is the editor and owner of The Linux Rain who loves all things Linux, gaming and everything in between.

Tags: chromebook linux chromeos crouton shell cloud
blog comments powered by Disqus