Chromebook Pixel 2

This article or section does not follow the
Laptop page guidelines
.
Reason:
Stub (Discuss in
Talk:Chromebook Pixel 2
)
Warning
This article relies on third-party scripts and modifications, and may irreparably damage your hardware or data.
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 called the Chromebook Pixel LS (which stands for "Ludicrous Speed") when referring to the upgraded version with a Intel Core i7.
Installation
Enable developer mode
.
Use the superuser shell
in order to
enable SeaBIOS
.
You have the option to
Boot to SeaBIOS by default
so you can boot without any keyboard shortcuts.
Install Arch Linux
.
Continue reading below to correctly configure GRUB before rebooting.
GRUB
GRUB does not detect the correct video mode and does not display the menu by default.
GRUB_GFXMODE
is set to auto.    Using
vbeinfo
, on the grub command line, it is 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
regenerate the configuration file
.
If you forget to do this you can boot off the installation media again mount your disks and
arch-chroot
in.
Linux
Touchpad, touchscreen, and audio have been working in the vanilla Linux kernel since v4.9.
Suspend
Since kernel 5.x suspend seems to not work out-of-the-box anymore and instead shuts down when lid is closed. Install
acpi
and
tpm2-tools
, then create:
/etc/modprobe.d/suspend.conf
options tpm_tis force=1 interrupts=0
This should make suspend work on lid close.
Audio, Brightness, and Touch
samus-scripts
AUR
contains some helpful scripts for managing audio (e.g. switching between speaker and headphone output), setting screen backlight and keyboard LED brightness, and fixing the Atmel maXTouch bug (see
#Unresolved Issues
).
Audio scripts fail
If audio scripts from above do not work, create
/etc/modprobe.d/audio.conf
and make sure to install
pulseaudio-alsa
Kernel 5.5 Audio Issues
After Linux Kernel 5.5, there is an extra kernel options to enable SST audio driver for bdw-rt5677 (Which is initially disabled after 5.5).
Add the following switches in the
kernel parameters
to enable audio
snd_intel_dspcfg.dsp_driver=2
Enable pulseaudio-alsa without scripts
The hardware and driver mismatch the left and right channel, and it is defaultly muted.
Just run
alsamixer
, and turn on the following switches will make audio works:
Stereo DAC MIXL DAC1 R
Stereo DAC MIXR DAC1 L
This switches will make all audio works, and enable the auto switch to headphone when connected.
Note
If no other scripts make the audio works, linux-samus's scripts will make the auto switch failed.
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
does not show the
chromebook
model being used.
Touchpad occasionally does not work after waking from sleep using linux 4.9-1+. If this happens, reloading the touchpad driver via
# modprobe -r atmel_mxt_ts && modprobe atmel_mxt_ts
usually restores touchpad functionality. This fix is also available as
enable-touch
from
samus-scripts
AUR
.
See Also
Laptop Issues » Google Chromebook Pixel 2
Chromium OS Developer Information for Chromebook Pixel (2015)
tpm bug: systemctl suspend turns off computer