Saturday, 28 March 2015

The Chromebook strikes back

I had some woes with the Ubuntu 14.10 install on my Acer C720 Chromebook. (See previous post) Even after things improved with fixing display polling and swapdisk usage issues, the compiz/unity managed to produce tiny hiccups and browsing could still bring the system to a standstill. I also encountered unexplainable behavior, such as Processing refusing to run sketches when on battery power. (Hey, I'm just describing what I've seen.)

Now I have both switched to a MyDigital 128GB SSD drive and installed Ubuntu/LXDE using this one weird trick. Now the ChromeOS and the LXDE happily co-exist and they can also share stuff in the Downloads folder. Yes, the desktop might look a bit bare but that's what I like nowadays.

Taking a screenshot using scrot, outputting to Downloads directory and adding the images to this very blog entry in the ChromeOS browser.

I expected the whole thing (both the SSD and the crouton install) to be difficult or timeconsuming but in fact it was all very simple. After you have the ChromeOS recovery USB stick, you can experiment with almost whatever and get your ChromeOS back if you mess things.

The new C720

On the positive side: I've encountered no speed hiccups, halts or other major problems. The touchpad works and I've yet to see any wifi problems either. The switch between the ChromeOS side and the LXDE sides is rapid and thus awesome. My Processing sketches run smoothly and browsing does not choke.

Now, when I turn on the computer, It'll go to ChromeOS after pressing CTRL+D at the start. There I press CTRL+ALT+t to invoke the chrosh developer shell, and type shell to get to the Linux terminal, where again sudo startlxde runs LXDE. It sounds like a rigmarole but I think in the end I'm at the desk faster than with the previous Ubuntu install, which, bear in mind, did not have the handy ChromeOS switch.

Some small issues:
  • Despite setting the keyboard layout via setxkbmap, Scandinavian characters don't either function or display universally. To an extent this was already a problem with the previous Ubuntu install.
    • It's a locale issue. File called /etc/default/locale ought to have LANG=en_US.utf8. The setxkbmap se can be inserted into /etc/xdg/lxsession/LXDE/autostart. These work after restarting.
  • Trying to add a Volume Control element into the bottom panel resulted in a non-response. Using alsamixer from the terminal I could at least alter the master volume level.
    • Erm, it does seem to add it now without problems. I don't know what's different.
  • Inserting USB sticks and SD cards don't seem to register well on the ChromeOS side, but it remembers to whine about them even if the devices have been both mounted and ejected on the LXDE desktop.
  • The filesystem seems to have a mistaken idea about the time/date of files from another system (memorystick etc), they can be two hours off. This goes so far that if a file brought from another computer is "in the future" it may not be shown in the desk windows.
  • The Chromebook does not have F11 or F12, which are often important keys in emulators. (Because old computers mostly had only F1-F10)
    • xmodmap -e "keycode 133 = F11" makes the Magnifying Glass key into F11, and xmodmap -e "keycode 49 = F12" will make the key below ESC into F12.
      • Putting these in the autostart (see above) seems to be a bit hit/miss. I might blame the crouton integration. (see below)
  • Some adventurous attempts at getting Steam to run on this setup resulted in the startlxde failing to take me to chroot, with message "unable to connect to X server: No such file or directory"
    • sudo sh -e ~/Downloads/crouton -n precise -u brought it back to life. (Where 'precise' is the name of the chroot in question.)
    • Tip: Perhaps it's too much to expect Steam to work on this install. Well, some people on the net have managed to do it.
  • It may be worth of note that copy/paste clipboard does not work between the ChromeOS and chroot side. 
    • Creative uses of the shared Download folder helps this somewhat. For example I can set up a textfile for the purposes of sharing snippets. The need does not come up that often, though.
    • A more definite solution comes out from loading the crouton integration from the Chrome Web store. It also needs the crouton extension, from the command line.
  • MIDI did not immediately work, this was due to some permission issues related to the drivers.
    • sudo setfacl -m u:yourusername:rw /dev/snd/*
  • If the chroot desktop offers to upgrade the distribution version, don't do it, it's a waste of time. It's a bit unclear how to proceed with a version upgrade.
So the Chromebook dualboot does require a bit of tinkering, but I'm already much happier with this than the previous Ubuntu install. Currently my uses for the LXDE side are fairly narrow and my first priority is not to make it into a modern desktop computer anyway. Plus that I'm a bit hesitant to install something that might compromise the smooth working of the desk. The ChromeOS side does certain things well enough.

Thanks again for marq for helping sort many of these issues out.


  1. Quite many things on the Crouton side that you can't really do in Chrome OS: Processing, Arduino (plus countless other programming tools), Gimp, Wings 3D, Xchat, emulators, VLC, Skype... On the other hand, everyday surfing works better in Chrome OS.

  2. The clipboard (at least textual) works with the "extension" extension:
    sudo sh ~/Downloads/crouton -t extension -u

  3. it seems "Crouton Integration" extension is needed for Chrome.