Acer C720 Chromebook


These are my notes regarding installing Lubuntu 14.04 on a C720-2802 with an upgraded SSD.

Base Packages

A few essentials I found useful:

sudo apt-get install puavcontrol               \ # audio settings
                     fonts-inconsolata         \ # sane console font
                     fonts-droid fonts-roboto  \ # sane UI fonts
                     ttf-mscorefonts-installer \ # sane web fonts
                     vim htop tmux git remmina \ # basics
                     kupfer                    \ # QuickSilver-like launcher
                     xbacklight                \ # backlight control              
                     gsynaptics                \ # basic touchpad settings

Besides these, I installed Pentadactyl (to survive while I set up the touchpad), pyenv, Chrome, NetBeans + JDK8 and a few other amenities.

Additional PPAs

Some non-trivial essentials for doing development, installing Evernote under WINE, and decent font rendering.

sudo add-apt-repository ppa:stebbins/handbrake-snapshots
sudo add-apt-repository ppa:inizan-yannick/mono          # monodevelop
sudo add-apt-repository ppa:no1wantdthisname/ppa         # infinality
sudo add-apt-repository ppa:ubuntu-wine/ppa              # WINE
sudo add-apt-repository ppa:kilian/f.lux
sudo apt-get upgrade
sudo apt-get install monodevelop           \
                     fontconfig-infinality \
                     wine1.7 winetricks    \
                     fluxgui
sudo bash /etc/fonts/infinality/infctl.sh setstyle osx

Essential GRUB tweaks

Edit /etc/default/grub and add tpm_tis.force=1 to the default boot options to work around a delay in booting.

Trackpad Setup and Tweaks for Natural Scrolling

This script was required to compile a set of suitable kernel modules to support the trackpad. It took a fair amount of time to come up with sensible sensitivity settings that allowed for two-finger scrolling the “right” way.

Those were added as an LXDE startup script, since it is easier to tweak than X11 configs:

#!/bin/sh
echo "Areas"
synclient AreaRightEdge=850 AreaLeftEdge=50 
echo "Pressure"
synclient FingerLow=10 FingerHigh=16
echo "Buttons"
synclient TapButton1=1 TapButton2=3 TapButton3=2
echo "Scroll"
synclient VertScrollDelta=-19 HorizScrollDelta=-19 HorizTwoFingerScroll=1

Backlight and Audio Control

Bound these using obkey to Super+<key>:

pactl set-sink-mute 0 toggle
pactl set-sink-volume 0 -- +5%
pactl set-sink-volume 0 -- -5%
xbacklight -inc 5%
xbacklight -dec 5%

…but using xbindkeys seems to be a better option. Here’s a configuration file for it, taken from here.

Suspend/Resume

As always under Linux that is a work in progress, which is a shame considering that Chrome OS works flawlessly.

The following steps will give you workable suspend/resume at the expense of Bluetooth:

  • Put this file in /etc/pm/sleep.d and set it executable with chmod +x
  • Add these lines to /etc/rc.local
  • Change GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub to contain these options
  • sudo update-grub and reboot

All that remains then is to set the LXDE power manager to suspend on lid close, etc.

Lubuntu Fixes

To get secure swap to work properly, you need to patch the ecryptfs-setup-swap script to include an offset=8 option in /etc/crypttab. This appears to be an Ubuntu bug,which, unaccountably, hasn’t been caught during testing or fixed yet.

Miscellaneous

alias pbcopy="xclip -selection c"
alias pbpaste="xclip -o"

See Also: