The C720 is an old Chromebook that I got off eBay in 2014 to try out the experience (and the cheap hardware) and that has lasted an inordinately long time (I’m updating this in 2024 and it still works).
Hardware Specs
- Dual-Core Celeron 2955U
- 2GB of soldered
RAM
- Unremarkable 1366x768
LCD
and potato webcam - Replaceable
SSD
(I upgraded to 128GB) - Somewhat weird Chromebook keyboard
- Barely tolerable trackpad
- 2
USB-A
ports - 1
SD
card slot (which does not work in all OSes) - 5GHz Wi-Fi
HDMI
out
Finally, it is powered by a small barrel jack (plug is 3mm wide, 7.5mm deep, ~1mm bore). That takes 19V/3.42A, ~65W, so can be powered by a $2 USB-PD
adapter in theory, although it will have to be an external one.
The case is plastic, and yet the thing seems pretty much indestructible. The battery still claims to last 6 hours on occasion (more like three, really, but it’s still useful), and I tend to use it as a travel laptop when on vacation.
Software
Once unlocked, you can use SeaBIOS
to install a normal Linux system. Mine started out with Lubuntu 14.04 and is (in 2024) running Fedora 39.
Essential GRUB tweaks (not needed for Fedora)
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 (not needed for Fedora)
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 gave me workable suspend/resume in Lubuntu at the expense of Bluetooth (they are not necessary for Fedora anymore, but I do get the occasional slowdown on resume, so I’m keeping the notes around)
- Put this file in
/etc/pm/sleep.d
and set it executable withchmod +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"