Chromebook Pixel 2 - ArchWiki

# Chromebook Pixel 2

From ArchWiki
Warning: This article relies on third-party scripts and modifications, and may irreparably damage your hardware or data. Proceed at your own risk.

This page details installing Arch Linux on the Google Chromebook Pixel (2015). It is commonly referred to as the Chromebook Pixel 2, sometimes referred to by its codename Samus, and sometimes referred to, somewhat erroneously, as the Chromebook Pixel LS.

Also see the Arch Linux forum thread, Laptop Issues » Google Chromebook Pixel 2.

## Installation

Note: USB 3.0 may cause issues. Make sure that the installation media utilizes USB 2.0.

First, enable developer mode.
Then, use the superuser shell in order to enable SeaBIOS. Don't worry about the Boot to SeaBIOS by default section since the Chromebook Pixel (2015) isn't believed to have that issue.
Finally, proceed with installing Arch Linux but be aware of additional notes below, e.g. on Grub.

### Grub

It will not display the menu by default. `GRUB_GFXMODE` is set to auto. Grub does not detect the correct video mode. Using `vbeinfo`, on the grub command line, it's detected at `1280x850x16`. The options to display the menu are to either turn off `GRUB_GFXMODE` or set the correct display. In `/etc/default/grub` either,

    GRUB_TERMINAL_OUTPUT=console

or,

    GRUB_GFXMODE=1280x850x16

and then run

    grub-mkconfig -o /boot/grub/grub.cfg

to update the config.

If you forget to do this you can boot off the installation media again mount your disks and `arch-chroot` in.

### Dual Booting Chrome OS and Arch Linux

See Install Arch Linux in addition to Chrome OS.

## Touchpad, touchscreen and audio

### (Vanilla) Linux 4.9 (Testing)

Touchpad, touchscreen, and audio are all working in the upstream 4.9 kernel.

The linux-samus README details how to unmute speakers but you may need to change the card in the commands, i.e. `-c 0`. You can get the card ID by doing `aplay -l | grep bdw-rt5677 | sed -E 's/card ([0-9]):.*/\1/'`.

### (Samus) Linux 4.9 (AUR)

Install the linux-samus4AUR package. The installed boot loader needs to be configured so that it is possible to boot the linux-samus4AUR image. See [1] for more information (i.e. audio and microphone configuration).

According to Intel graphics if the `linux-samus4` kernel has a blank screen during boot, then try adding `i915` to `MODULES` in `/etc/mkinitcpio.conf`. Finally, run `mkinitcpio -p linux-samus4` to regenerate the image.

Note:

- Make sure that `/boot` is mounted when `mkinitcpio -p linux-samus4` is executed, otherwise on reboot the boot partition will be mounted over the new image.

## Backlight

The screen backlight can be controlled via `/sys/class/backlight/intel_backlight/`; see the brightness script from linux-samus4AUR.

The keyboard backlight can be controlled via `/sys/class/leds/chromeos::kbd_backlight/`; see the keyboard script from linux-samus4AUR.

## Keyboard Bindings

xkeyboard-config 2.16-1 added a `chromebook` model that enables the Chrome OS style functions for the function keys. You can, for example, set this using `localectl set-x11-keymap us chromebook`. See the `chromebook` definition in `/usr/share/X11/xkb/symbols/inet` for the full mappings.

The search button acts as a `Super_L` key, which may be undesirable for keyboard layouts that make good use of this position. Using xmodmap, you can rebind this to whatever you would like. Example using `Tab` for a keyboard layout with six layers:

    $ xmodmap -e "keycode 133 = Tab Tab Tab Tab Tab Tab"

Add this to your .xinitrc to load at login.

## Unresolved Issues

- xkeyboard-config provides a `chromebook` model which can be specified, for example, with `localectl set-x11-keymap us chromebook` but when using GNOME on Wayland the model is not recognized. The media keys still behave as function keys and `setxkbmap -print -verbose 10` doesn't show the `chromebook` model being used.
- Occasional lockup on booting into GDM using Wayland 1.12.0-1, GDM 3.22.1-1, and linux 4.9-1.
- It would be nice if touchscreen behaved more like the touchpad so that the touchscreen could be used for scrolling.
- Touchpad occasionally doesn't work after waking from sleep using linux 4.9-1+. If this happens, reloading the touchpad driver via `sudo modprobe -r atmel_mxt_ts && sudo modprobe atmel_mxt_ts` usually restores touchpad functionality.

## External Links

Chromium OS Developer Information for Chromebook Pixel (2015)

Category:

- Laptops