Lee-Phillips.org
Running full Linux on a Google Chromebook Pixel
Lee Phillips
October 4th, 2017

I’ve been using the 2013 Google Chromebook Pixel as my only laptop for a few years. I don’t use it as a Chromebook, however. It’s running a regular install of Ubuntu Linux.

You can get these used, and sometimes unused, for under $500 now. The hardware is excellent: a very bright, high-resolution touchscreen with good colors and a practical aspect ratio designed for doing things rather than for watching movies; a thin, totally solid and good-looking metal case; SSD; a keyboard that I like (but tastes vary); surprisingly good and loud stereo speakers; and a superb touchpad. This machine is a pleasure to use all day long and is easy to carry, but it only runs for a few hours on its battery.

Here are a few fragmentary notes from my experiences, offered here in case anyone else finds them useful. I have no idea how much of this transfers to the later models (but let me know):


I used chrx to install. If I planned to use ChromeOS as well I would probably go with Crouton. I installed the Xubuntu flavor. I did use Gnome for a while, but it was too heavy and slow. Xubuntu runs very well, and setting up the keyboard shortcuts carefully allows me to use it as like a simple tiling window manager.

See https://github.com/longsleep/pixel-linux for some slightly older general information.

After waking from suspend I need to press a (any?) key on the keyboard to turn on the backlight.

Keyboard backlight

After you reboot the keyboard backlight will be on full-blast, but after a suspend/resume it will be off. https://gist.github.com/stefansundin/7003429 has a lot of good ideas. For now I’ve just installed, through the Ubuntu package manager, the acpi-call-dkms package. This installs a kernel module. Then, as instructed in the above, the command echo "\_SB.KBLT.KBCM x" > /proc/acpi/call adjusts the keyboard backlight, where you substitute a number between 0 and 100 (inclusive) for x. The link above discusses some strategies for turning this into a keyboard shortcut. The keyboard light goes out when the screen blanks, and comes back on when you wake up the screen. Add the line

acpi_call

to /etc/modules so that the kernel module is installed on reboot. If there is no file /proc/acpi/call then you must do

depmod
modprobe acpi_call

(all as root).

Dealing with high resolution

To make menus and window decorations legible on the Pixel’s high resolution screen, do two things:

From the Whisker Menu, the little mouse head on the upper left of the screen, you can access the Settings, from the list in the column on the right of the panel that appears when you click on the mouse. In

Settings → Appearance → Fonts

you will see a setting for Custom DPI. Set this to 239, the resolution of the Pixel. If you prefer menus smaller or larger, you can set this to anything you want.

This does not change the size of the window decorations. For this, go to

Settings → Window Manager → Style tab

and select the Theme

Default-xhdpi

The default for the behavior of windows is to bring them to your current workspace when they are activated (in other words, if you type a command in the terminal for the web browser to open a URL, the browser window will be brought to your current workspace, covering the terminal in which you are typing). I prefer the windows to stay where they belong and to switch workspaces. To get this behavior, open

Settings → Settings Editor → Channels → general → activate_action

and change that setting to "switch", or to "none" if you want nothing to happen.

While you're in there you can turn off "zoom_desktop", unless it helps you. This zooms the screen if you do a mouse or trackpad scroll while holding down the alt key, and is easy to activate accidentally, causing confusion. There's a bunch of other interesting stuff you can change in this dialog, as well.

The trackpad pointer is a bit hard to see using the default xfce settings. Go to

Settings → Mouse and Touchpad → Theme

and choose “DMZ (Black)“ (or something else to your liking). I don’t know how to make the pointer larger, which would be nice.

Sound

To make sound switch between speakers and headphones when the latter are plugged in I unmuted the two HP/Speaker outputs in alsamixer.

USB

To get the USB ports going, use these commands:

echo -n "0000:00:1a.0" | tee /sys/bus/pci/drivers/ehci-pci/unbind
echo -n "0000:00:1d.0" | tee /sys/bus/pci/drivers/ehci-pci/unbind
echo -n "0000:00:1a.0" | tee /sys/bus/pci/drivers/ehci-pci/bind
echo -n "0000:00:1d.0" | tee /sys/bus/pci/drivers/ehci-pci/bind

You will need to repeat this upon reboot, and possibly after some other actions.

Also, after doing the above you will have to reissue the xmodmap command (see below), so do this first.

Keyboard

If you put this in a file (~/.xmodmap is conventional) and do “xmodmap .xmodmap” after loggin in:

clear control
clear mod4
keycode 105 = dead_greek dead_greek dead_greek dead_greek
keycode 133 = Super_L
add control  = Control_L Control_R Super_L
add mod4 = Hyper_L Super_R

then the “super” key (in the usual caps-lock location, sporting a magnifier icon) will be a left-control key, the the right-alt key will be the “compose” key, and the right-ctrl key will be the dead_greek key.

You can also go to

settings → keyboard → layout

to set the compose key and [?] set “super” key to cntrl, but you won’t have to if you use xmodmap.

Also, we seem to need to use xmodmap to set the dead_greek key.

If you reset the USB ports as above, then, I’ve found, you’ll need to issue the xmodmap command again (so do the USB thing first).

The hardware keys on the top row all work.

Application notes

Recent versions of Google Chrome have severe problems, using huge resources, periodically bringing the machine to its knees. One fix is to disable hardware acceleration, but this causes other problems. Firefox seems fine.

Comments

Comments are handled through email. Please send mail to pxsetup__comment@lee-phillips.org if you would like me to include it here. I will never expose your email address. Let me know if you want me to hide your name, as well.

▶  Comment   ∷     ◀Share with FacebookShare with TwitterShare with RedditShare with StumbleUponShare with DiggShare with SlashdotShare with DeliciousShare with Google+
lee-phillips.org is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to amazon.com.
Quotilizer ... loading ...
Subscribe:   RSS icon twitter icon
Tenuously related: