Present Location: News >> Blog >> Cr-48, Chrome OS, and Google Chrome

Blog

> Cr-48, Chrome OS, and Google Chrome
Posted by prox, from Charlotte, on September 24, 2011 at 23:19 local (server) time

It started as another impulse buy of mine.  Shocker.

While browsing eBay I spotted a new Google Cr-48 Chromebook.  I snagged it for a decent price and had it a day or so later (the seller lives in Charleston, SC).  Actually, I got it right before I left for New Jersey to participate in my college roommate's wedding.

History

The Google Cr-48 is a prototype piece of hardware running Chrome OS, a specialized distribution of GNU/Linux that runs only one application: Google Chrome.  It was shipped out to 60,000 beta testers (at no cost) starting in December of 2010 and ending in March of 2011.

No, I didn't get one.  And, at the time, after trying a few of Hexxeh's builds Chromium OS in VMware, I was glad I didn't - the OS seemed like a pile of garbage.  My opinion has changed slightly, so read on.

After the Cr-48s had run their course, two new Chromebooks surfaced in the summer of 2011, boasting almost idential specifications to the Cr-48 except for different processor models (Atom N570 vs. Atom N455 in the Cr-48).

Cr-48 Hardware

The Cr-48 that I obtained is apparently one of two models that beta testers received.  Mine is labeled "IEC MARIO FISH 2330" and apparnetly there's another one out there labeled "IEC MARIO PONY 6101" (see this page for more details).  It seems that they're idential, for all intents and purposes.

Google Cr-48

The hardware itself is fairly small and light, but huge and bulky compared to the MacBook Air.  It's got a 12.1" screen (1280 by 800 pixels), 2GiB SSD, 802.11abgn Wi-Fi, webcam (I haven't tried this), and SD card slot.  There's a USB port, too, but I've heard only HID-related and mass storage devices work correctly.  The battery is fairly large, but thin, and sometimes feels like it doesn't sit very securely when installed.  I suspect this is the result of corners being cut in the manufacturing or design process, since the laptop was originally intended for testing and not meant to be sold.

The keyboard has no F-keys and the would-be caps-lock key is a "search" button that opens a new tab.  An oversized Alt key takes the place of a Windows key.  There's no trackpoint-like device, just a touchpad that supports multi-touch, which seems to be coming out of the case, slightly.  Again, this is probably due to corners cut in the manufacturing process.

The case itself has a soft rubbery feel and unfortunately visibly shows fingerprints and other grease marks, which sucks for those of us who suffer from OCD.  That being said, one of the great things about the Cr-48's case is that it's completely free of branding.  In fact, nobody really knows (with certainty) who manufactured the Cr-48s for Google.  Anyway, the case looks like it might be a black MacBook at first glance.. but the white Apple logo on the screen is notably absent.  I've seen one or two double-takes by people passing me by while hanging out at Panera Bread, and one person struck up a conversation with me about it.  I dislike excessive branding, so this makes the Cr-48 a little bit more fun.

The Cr-48 also has another little hidden gem: a Qualcomm EvDO (rev. A) modem that operates on Verizon Wireless's network.  Upon activation, there's two years worth of free data (up to 100MiB per month) included with the Cr-48.  Data over 100MiB is charged to a credit card.

Oh, also, the battery lasts around a solid eight (8) hours with Wi-Fi enabled.  The Atom processor's clock frequency is throttled by usage with cpufreq's "ondemand" scheduler.

Chrome OS

Chrome OS is a pretty lean Linux distribution.  No boot messages, no windows, just a logon screen and the Google Chrome browser.

The first boot presents the user with a list of languages, connectivity options (I chose Wi-Fi initially), and sign-on options (Google accounts only).  Chrome OS then updates itself and reboots.  I'll talk about the Google Chrome browser experience later, but other than items on the logon screen (language, connectivity options), all configuration and operation is done through browser tabs.  This results in configuration feeling a little bit laggy, for some reason.

The Wi-Fi configuration is interesting, since it allows networks to be defined and saved on a per-user basis.  This means that I can define a network, save the PSK (or whatever) for it, and only have the configuration accessible when my user is logged into Chrome OS.  This doesn't really help me, but I suppose it can can be appropriate for some situations.  The one weird thing about the network configuration is that proxy server settings must be done on a per-connection basis.  I always run my browsing through a proxy (accessed via a VPN or SSH tunnel), so this is a little odd.

In reality, Chrome OS doesn't completely force the user to use a web browser for everything, a limited command-line environment (crosh) can be invoked by pressing Ctrl+Alt+t.  Switching between Chrome browser windows (add more by hitting Ctrl+n, duh) is done with Alt+Tab, just like Windows.  In fact, the whole thing runs on X11 but has a customized window manager that forces all applications to run in full-screen.  Anyway, crosh lets one perform some diagnostics (traceroute, PING, etc.) and invoke an SSH client.  The SSH client is troublesome because the terminal that crosh is started in (urxvt) somehow doesn't support UTF-8 properly, possibly due to the font selection.  It's also annoying when connectivity drops, as there's no way to kill the SSH session (enter-~-. does not work).

Surprisingly, things like Netflix are supported due to Trusted Computing and Chrome OS's link with the built-in TPM.  Basically, this gives content providers an assurance that their media won't be copied, stolen, or otherwise "hijacked" from users.  If the Chrome OS bootup process is altered, I suspect the TPM will raise and error and prevent DRM-ish things from working.

Developer Mode Boot

In fact, speaking of preventing DRM-ish things from working.. there's a hidden developer button in the battery compartment that enables the "shell" command in crosh.  I flipped this switch and it wiped all information on the Cr-48 and disabled the TPM (boot verification).  I now have to hit Ctrl+d to bypass the frowny-face screen, but now I have access to the shell from crosh, and mostly everything works the same way.  I say mostly everything.. because Netflix and other applications and pages that rely on the TPM won't work.  No big deal, for me.

I've put some information I got from the shell here.  One thing I just noticed while looking at the mount(8) output is that the stateful partition on the SSD is encrypted.  I guess this is to prevent someone stealing the laptop, pulling the SSD out of it, and mounting it on another machine.

One nice thing about the developer switch is that Chrome synchronization with Google can be completely disabled.  I don't care to synchronize things with Google, I'm weird like that, but unfortunately under normal operation you can't actually disable this (you can disable all but one category to synchronize, which is stupid).

Another nice thing about the developer switch is I can fire up an SSH tunnel from the shell (ssh -L etc..) and get access to a proxy server of mine, so I don't have to surf the Internet at coffee shops in the clear.  I noticed OpenVPN binaries are installed, too, but I haven't bothered to setup anything to use it.

Google Chrome

I've used Google Chrome before obtaining the Cr-48, but never liked it enough to switch from Iceweasel (a non-branded Firefox).  I'm getting used to it a bit more on the Cr-48, since I don't really have a choice of browsers, but some things still bug me a bit.

Instead of using some bookmark synchronization tool or service, I have a personal "start" page of mine that lists all my bookmarks and sorts them by use.  It's backed by a MySQL database, and I set this as my home page on all of my systems.  I rely on Firefox's (and previously, Epiphany's) type-ahead find feature so I don't have to move my hand to the mouse in order to select a link.  If I want to load a link, I hit Ctrl+t, type a unique subset of the link (shdot - Slashdot, for example) and it's logged to MySQL and loaded in my browser.  Nice and fast.

Unfortunately, Google Chrome doesn't support the two features that allow me to take advantage of this: loading the home page for each new tab and type-ahead find.  What's even worse is that they won't even add the type-ahead find as an option (see here).  I've found two extensions that emulate this behavior:

Unfortunately, the Type-ahead-find extension is a little laggy, but it's better than nothing.

It's possible to download and install applications in Google Chrome using the Chrome Web Store.  However, compared to the App Store in iOS or Mac OS X, most of the applications aren't really downloaded or installed, links for them are just added to the New Tab Page.  Some applications seem to be able to request offline storage, like the Amazon Cloud Reader that allows the reading of Kindle books.

Although probably just limited by the Cr-48's CPU, 720p (or higher) Flash Video on YouTube barely plays.  HTML5-based video runs fine, though (can we kill Flash now, please?).

Conclusions

Although I had severe reservations about a browser-only laptop, the Cr-48 seems to have softened my opinion of Chrome OS quite a bit.  The funny thing is I'd probably recommend a Chromebook for my grandmother over any Apple product, at this point.

For techie or hacker-types, it's still a bit rough around the edges, but does show promise.

> Add Comment

New comments are currently disabled for this entry.