In costco at the weekend I saw they had a quite nice looking Acer Chromebook 14 (CB3-431 'Edgar') going for 260 bucks. From a while back I've had a policy of not buying a new laptop over 250 bucks, since my last quite nice Asus machine which was under that price. The acer had a IPS (in plane switching - means better viewing angle) HD (1920x1080) display. It has a nice aluminum chasis. 4gb RAM, 32GB SSD and an Intel celeron 3160 4 core processor.
The problem - it's a chromebook. I want a fully functional default non-spying machine. It put my heckles up that just to use an account on it it had to be a google account. Really? Why can't I use a local account? Ugh.
So I did a lookup whilst in the store, and it looked at least feasible to install a flavor of Linux/Ubuntu. As it turns out though it was actually pretty time consuming and scary to get it to work, so I hope with this post I'm providing a short cut for other people who want to do something similar.
The pros with taking this approach are...
The downside compared to just using chromeos
NOTE! I do NOT recommend installing crouton even though the rest of the internet seems to push that. I explain more below - but the short version is: it didn't work when I wanted to install other software, the default UI wasn't great (xfce), you won't have replaced chomeos (and therefore google) and booting to crouton is cumbersome.
How to Install Ubuntu/GalliumOS
It turns out he Acer Chromebook 14 that costco is selling is specifically Acer Chromebook 14 (CB3-431) EDGAR - and you can see from the compatibility list that it should work. For this to work we need to first install new firmware to make the chromebook boot into other operating systems.
That is the first two steps of this post.
This is where I diverged - as I wanted to install GalliumOS and the way I did so was with using chrx. Doing this way automatically re-partitioned the drive and made the chromebook dual boot.
As taken from the instructions on chrx ...
Note that on the Acer Chromebook that the top row of keys has a bunch of symbols but are equivalent to function keys F1-F10. F1 if <- and F2 is -> and so forth.
I set up a partition with 23Gb as the chrx recommended. I also let it use all the defaults - so the original user is chrx. Once I had everything going I created the user I wanted, and gave it super user permissions, so I could disable the chrx one.
I ran across another tutorial for installing GalliumOS which covers a doing some more sophisticated but perhaps risky stuff.
The top row of small keys actually map to the function keys F1-F10. F1 if <- and F2 is -> and so forth.
The 'Search' key is where the caps lock would be. You'd hope it would just work as caps lock in linux but it doesn't. It seems that the actual key code from that key is a 'super' key. I tried mapping that to caps lock, or making pressing both shifts would enable caps - but neither worked. I'll update if I get a fix.
The keyboard doesn't have a delete key only backspace. You can get delete key functionality by pressing Alt & Backspace. This works the same way as it does in chromeOS.
When you plugin headphones in ChromeOs it will automatically switch audio output. In Ubuntu it does not. You can switch from speakers manually though. Click on the 'speaker' icon. Click on 'Output' tab, and then switch from Speakers to Headphones. This is a little clumsy, but at least it works.
Skype for linux installs, and runs but it is unusable because audio playback breaks up multiple times a second. You can work around this by using USB headset.
I didn't just arrive at the solution above I spent many hours trying to get things to work. That is generally my experience with trying to install and dual boot to linux. On my Asus it was in the main fighting UEFI. This was more painful - not least because there are more options.
For any of the options I first needed to setup developer mode, and replace the firmware. This was relatively painless and you can follow the first 2 steps from the techanarchy.
I'm not recommending you try any of the following - I explain why it was a problem and I had to reject.
Linux Mint 64
I burned onto a memory stick, and then booted into the memory stick using the CTRL-L option. The nice thing is that you can test out how it works running from the memory stick before installing.
The first problem was that the touchpad didn't work. To fix this I found this post which says do...
xinput set-prop "Elan Touchpad" "Synaptics Finger" 5 10 50
This worked great, and I put in my .profile.
Okay now the problem was that there was no sound. Moreover in sound settings It did not even list the Realtek sound card, just the HDMI output. I tried for a while to get this to work, but didn't find a way. So for me that was a fail - but since it was my first attempt, and it was close it made me think perhaps using a more mainstream distro would work.
Ubuntu Desktop 64 17.04
Again I burned to memory stick, and booted from it so I could test without installing. Ubuntu never came up though as it was unable to start up the graphics server.
Crouton - Unity
If you search the web for ways to install linux on a chromebook - crouton comes up with the most hits. Crouton allows you to run linux alongside chromeos, where the device drivers and the guts of the underlying operating system remain chromeos. It also means you can flip between chromeos and linux without rebooting.
Note that given the choices - I wasn't super keen on having chromeos running underneath everything. I don't know what it's doing. I don't like the stupid way you have to login (or use a Guest account) - or all the steps to start crouton which are hardly simple.
This Think-Geek article is the one I followed.
It's pretty easy to follow. The actual download an installation take quite a long while - so be prepared to wait perhaps an hour or two for it to complete.
At first this seemed like a success. Sound and the touch pad worked (cos they were just using chromeos). It seemed fairly responsive. But if I tried to install anything new it failed claiming that the privilege module wouldn't allow it. I spent a little while looking into but didn't find anything.
The default ui is not unity but xfce on crouton. So next I tried that.
Crouton - Xfce
So I deleted the chroot, and reinstalled crouton using xfce.
This worked. But I still had the problem with the privilege manager. Moreover the xfce UI was just no to my liking at all. It had to go.
At this point I was getting disheartened, and was wondering if I should just return the machine. I ran across GalliumOS - which said was designed for chromebooks, and had drivers that other distros didn't have. Ok this is good.
My first attempt was to download an iso, and burn to memory stick, and boot this. This worked. The UI was a little different but not too bad. The problem - sound still didn't work.
So I spent several hours looking into this. It was a known problem that sound from the speakers on this machine had been a problem. It looked like it may have been fixed - but for me it clearly didn't work, and so I was in the same situation as I was with Linux Mint, which wasn't good enough.
GalliumOS using chrx
Is the method that I describe above. I'm not 100% sure if audio worked out of the box.
I read this whole thread about it. I may have required doing...
sudo apt-get install galliumos-braswell
from the command line to get sound, I'm not 100% sure.
I've subsequently done a complete new install on another CB3-431 chromebook, and audio worked fine directly from chrx installation.