Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Linux Mint on an HP Chromebook 11 G6 EE (board snappy)

Deze handleiding in het Nederlands

This guide walks you through removing ChromeOS from an HP Chromebook 11 G6 EE and replacing it with Linux Mint Xfce. It is written for people with little Linux experience, and assumes you have a regular Mac or Windows PC on hand.

Everything here was done on a real device. The pitfalls that turned up along the way are included — including the things that did not work.

An HP Chromebook 11 G6 EE running Linux Mint Xfce, with Firefox open on linuxmint.com


Contents


Why would you do this?

Chromebooks only receive updates for a limited number of years. That cut-off date is called AUE (Auto Update Expiration). After it passes the device gets no more security updates, and the browser and system age quickly. The hardware itself is usually fine.

The HP Chromebook 11 G6 EE is an ordinary x86 laptop with an Intel processor. It simply has different start-up software than a normal laptop. Replace that start-up software and the device becomes a perfectly ordinary laptop that will run any Linux distribution — with years of updates ahead of it.

This machine is modest: 4 GB of RAM and 16 GB of storage. That is plenty for browsing, word processing, email, watching video and programming. It is not enough for video editing or demanding games.


What works and what doesn't afterwards

Being honest about this matters more than being enthusiastic.

Works:

  • Wi-Fi, Bluetooth, display, keyboard, touchpad
  • USB ports, SD card reader, webcam
  • Battery and charging
  • Everything you normally do with a laptop

Works with a caveat:

  • Audio. This is the hardest step and the only one this guide does not solve with certainty. See Chapter 7. Expect to get either the internal speakers or the headphone jack, not both without effort. A few-euro USB sound adapter or a Bluetooth speaker sidesteps the problem entirely.
  • Sleep. It works, but the battery drains faster in sleep than it did under ChromeOS.

What you lose:

  • ChromeOS and everything stored on the device
  • The Google Play Store and Android apps
  • Any remaining warranty

Glossary

These terms come up throughout the guide. You do not need to memorise them — skip this chapter and come back when you hit something unfamiliar.

Term Meaning
Firmware Software burned into a chip on the motherboard that runs before any operating system exists. It decides what the computer is allowed to boot from.
BIOS / UEFI The firmware of a normal PC. UEFI is the modern version. Chromebooks have Google-specific firmware instead, and that is exactly what we replace.
coreboot Free, open firmware. MrChromebox's replacement firmware is based on it.
Write protection (WP) A hardware block that prevents the firmware from being overwritten. You need to lift it temporarily.
Developer Mode A built-in ChromeOS mode in which Google's security checks are switched off and you get a command line.
Terminal / command line / shell A window where you type commands instead of clicking.
root The administrator user on Linux, with full rights. On ChromeOS in Developer Mode you log in as this user.
sudo A prefix that runs a single command with administrator rights. sudo apt install x means "install x as administrator".
Distribution (distro) A complete Linux release. Linux Mint, Ubuntu and Debian are distributions.
Xfce A desktop environment: the windows, menu and taskbar. Xfce is light and fast, ideal for 4 GB of RAM.
ISO One large file containing a complete installation disc.
Flashing Writing new firmware to the chip.
Partition A marked-off section of a disk that behaves like a disk of its own.
Mounting Making a disk or USB stick accessible at a location in the file system.
eMMC The type of storage chip found in cheap laptops and phones. Slower than an SSD, soldered in place.
Kernel The core of Linux: it talks to the hardware.
Driver Software that lets the kernel work with a specific piece of hardware.
Repository (repo) An online software archive your distribution pulls packages from.

Chapter 0 — Is your device suitable?

Goal of this chapter: confirming that this guide applies to your particular unit.

This guide is written for the board snappy. That is not the same as the model number on the sticker — several HP models share the same board:

  • HP Chromebook 11 G6 EE
  • HP Chromebook 11-ae0 / 11-ae1 (x360)
  • HP Chromebook 14-ca0 / 14-ca1

Checking the board

  1. Start the Chromebook and log in (or use guest mode).
  2. Open Chrome and go to chrome://system.
  3. Search with Ctrl+F for hwid.
  4. You should see something like SNAPPY E2W-B2B-32A-63Y-E3Q-A9P. The first word is the board.

If it says anything other than SNAPPY, stop here. The approach is similar for other boards, but the way you disable write protection differs per model. Look your board up in MrChromebox's device list.

Checking management status

Search the same page for enterprise. It must say Not managed.

If it says the device is managed, it belongs to a school or company and Developer Mode is blocked. You cannot work around this, and the device is probably not legitimately yours.

Checking storage health

Search for DEVICE_LIFE_TIME_EST. You will see two values (_TYP_A and _TYP_B) and usually PRE_EOL_INFO as well.

  • 0x01 means: virtually unused. Fine.
  • 0x02 through 0x04: still usable.
  • 0x08 or higher: the storage is near the end of its life. Installing on it is a waste of your time.

What to be aware of

  • You will lose everything on the device. Back up whatever is on it first.
  • You have to open the device up. There is no way around this.
  • One step is irreversible. Once the firmware is replaced, you can only go back using a backup file you create during that same step. Store it safely.
  • If something goes badly wrong the device is unusable until you repair it with special equipment (a programmer costing around €10, or a SuzyQable at €25–40).

Set aside two to three hours. Rushing is the single biggest risk factor here.


Chapter 1 — Preparation

Goal of this chapter: getting everything ready without touching the device.

What you need

Hardware:

  • Two USB sticks:
    • one of 8 GB or larger for the Linux installation
    • one small one (1 GB is ample) for the firmware backup
    • Keep them separate and label them. Mixing them up costs you the backup.
  • A PH1 Phillips screwdriver. A precision set from a hardware store will do.
  • A plastic opening tool: a guitar pick, an old bank card or a spudger. No knife or screwdriver — those permanently damage the edge.
  • A power socket you can work near undisturbed for an hour.
  • Optional: a USB keyboard. Handy, not essential.

From your Mac or PC:

  • Internet access and around 3 GB of free space.

Step 1 — Download Linux Mint

Linux Mint is a Linux distribution known for being friendly to people switching from Windows. Xfce is the lightest variant and the only one you want on 4 GB of RAM.

  1. Go to linuxmint.com/download.php.
  2. Choose the Xfce edition. Not Cinnamon (too heavy) and not MATE.
  3. Pick a download location (mirror) near you.
  4. You will download an .iso file of roughly 2.5 GB.

Step 2 — Verify the download

A half-downloaded ISO produces installation errors that look exactly like hardware problems. Five minutes of checking saves hours of hunting.

The download page links to a sha256sum.txt file. A checksum is a kind of fingerprint of a file: identical content always produces the same number.

On macOS — open Terminal (Applications → Utilities → Terminal):

cd ~/Downloads
shasum -a 256 linuxmint-*-xfce-64bit.iso

On Windows — open PowerShell (right-click Start → Terminal):

cd $HOME\Downloads
Get-FileHash .\linuxmint-*-xfce-64bit.iso -Algorithm SHA256

Compare the long string of characters with the one in sha256sum.txt. If they differ, download again.

Step 3 — Create the installation USB

Balena Etcher is a free program that writes an ISO file to a USB stick. Simply copying does not work: the stick has to be bootable, and that requires the file to be written in a particular way.

  1. Download Etcher from etcher.balena.io. Pick the version for your system.
  2. Install and start it.
  3. Flash from file → select your Mint ISO.
  4. Select target → select your 8 GB stick. Check this twice. Etcher completely erases the chosen device.
  5. Flash! and wait. Five to ten minutes.
  6. If your system afterwards warns that the stick "needs to be formatted", ignore and dismiss it. The stick is now Linux-formatted, and Windows and macOS do not understand that.

Step 4 — Prepare the second stick

The small stick must be FAT32 — an old file system that almost everything can read.

  • macOS: Disk Utility → select the stick → Erase → Format MS-DOS (FAT).
  • Windows: right-click the stick in Explorer → Format → File system FAT32.

Step 5 — Optional: a ChromeOS recovery stick

Only useful if you want to keep the option of returning to ChromeOS one day. You do not need this to install Linux.

This requires a third USB stick. Recovery images for board snappy are at chrome100.dev. Make this stick now, before Chapter 4.

Step 6 — Back up the device

Everything on the Chromebook gets wiped, as early as Chapter 2. Move local files somewhere safe (copy them to a USB stick or to Google Drive).


Chapter 2 — Enabling Developer Mode

Goal of this chapter: switching off ChromeOS's security mode so that you get a command line.

From here on, all data on the device will be erased.

Doing it

  1. Turn the Chromebook off. Connect the charger and leave it connected.
  2. Hold Esc + Refresh and briefly press Power.
    • The Refresh key is the circular arrow in the top row, fourth from the left. These keys have no F-numbers printed on them.
  3. A recovery screen appears.
  4. Press Ctrl + D.
  5. Confirm with Enter.
  6. The device wipes itself. This takes 10 to 20 minutes. Leave the lid open, leave the charger connected, and do not interrupt it.

From now on, at every start-up

You will see a screen saying "OS verification is OFF".

  • Press Ctrl + D to continue (or wait thirty seconds).
  • Never press the space bar. That turns security back on and wipes the device again.

This screen disappears for good once we replace the firmware in Chapter 4.

Getting to the command line

  1. The device boots into the ChromeOS setup wizard — the OOBE (Out Of Box Experience): language, keyboard, network, terms.
  2. You must enter your Wi-Fi details. ChromeOS will not let you past it, and you need internet later to download the new firmware.
  3. You do not need to log in. Walk through the wizard until you reach the login screen and stop there. No Google account, not even as a guest.
  4. At the login screen, press Ctrl + Alt + F2.
    • F2 on this keyboard is the forward arrow (→), the second key to the right of Esc.
    • You get a black text screen. This is called VT-2 (virtual terminal 2).
  5. At localhost login: type root and press Enter. There is no password.

You can always return to the graphical screen with Ctrl + Alt + F1 (the back arrow ←).

Note: this text console always uses the US keyboard layout, regardless of what you chose in the wizard. That makes no difference for the commands below.

Checking

crossystem hwid
crossystem wpsw_cur
  • hwid should start with SNAPPY.
  • wpsw_cur now returns 1. That means write protection is still on. This is correct — we deal with it in the next chapter.

Chapter 3 — Disabling write protection

Goal of this chapter: lifting the hardware write block so the firmware can be overwritten.

Older Chromebooks had a screw on the motherboard for this. This board does not. On snappy the protection is tied to the battery: as long as the battery is connected, the firmware is protected. So you disconnect the battery and run the device on mains power.

Opening it up

The device opens from the top. The bottom plate does not come off — it is fixed. The screws on the underside hold the keyboard in place.

  1. Shut the device down completely. Unplug the charger and remove anything in the USB ports.
  2. Turn it over and remove all eight screws (PH1): six short and two longer ones. Keep the longer ones separate — they have to go back in their own holes.
  3. Check whether any screws are hiding under the rubber feet or edging. Lift a corner with your fingernail.
  4. Turn the device back over and open the lid to about 90°.
  5. Find the seam between the keyboard frame (the black border around the keys) and the outer edge of the casing.
  6. Start at the front edge, in the middle below the touchpad. Insert the pick a few millimetres and tilt gently until you hear a clip release.
  7. Then slide the pick sideways along the seam rather than levering upwards. Each clip you pass will pop loose.
  8. Work from the front to the sides, and only then towards the hinge side.

If the clips will not budge, let the device warm to room temperature or briefly lay a warm (not hot) cloth on it. Cold plastic snaps before it flexes.

Disconnecting the battery

  1. Lift the keyboard only at the front and fold it back, like a book with the hinges as the spine.
  2. Underneath are two flat ribbon cables running to the motherboard (keyboard and touchpad). They are short — lift no more than 3 or 4 centimetres. You do not need to detach them.
  3. The battery is the large flat pack filling most of the base.
  4. Find the connector: a small white or black plug on two thicker wires, on the motherboard side.
  5. Pull it straight up by the plug housing, not by the wires.

Booting without the battery

  1. Lay the keyboard loosely back in place (do not screw it down — you will need access again) or connect a USB keyboard.
  2. Connect the charger. Without a battery the device only starts on mains power.
  3. Switch it on, press Ctrl + D at the warning screen, then go to Ctrl + Alt + F2root.
crossystem wpsw_cur

It must now read 0. If not, the battery connector is still making contact.

If the device keeps restarting

Without a battery there is no buffer for power spikes. A weak supply causes an endless restart loop. Nothing is broken at this point.

  • Unplug the charger, hold the power button for 30 seconds, reconnect the charger and press Refresh + Power together.
  • Remove all USB devices.
  • Use the original adapter, plugged directly into a wall socket. No extension lead, no phone charger, no power bank. Count on 45 watts minimum.
  • Try the other USB-C port and a different cable.
  • Give it two minutes: the first boot without a battery runs a memory test that may take several attempts.

If it keeps failing, reconnect the battery to confirm the device is otherwise healthy. If it works normally with the battery, this method is not viable on your unit and you need a SuzyQable.


Chapter 4 — Replacing the firmware

Goal of this chapter: replacing Google's firmware with open UEFI firmware, keeping a backup of the original.

This is the irreversible step. Read the whole chapter first.

You will use MrChromebox's script, which has been the standard in this space for over a decade. It is open source and actively maintained.

Starting the script

You are logged in as root in VT-2 (Ctrl + Alt + F2). First check your internet connection:

ping -c3 mrchromebox.tech

Then:

cd /tmp
curl -LOf https://mrchromebox.tech/firmware-util.sh
bash firmware-util.sh

Why /tmp? The rest of ChromeOS lives on a read-only disk, so you cannot put anything there. /tmp is temporary space in memory and always writable.

Why bash script and not ./script? /tmp is configured with the noexec flag — files there are not allowed to run directly. Putting bash in front bypasses that.

Checking what is on your screen

A header block appears above the menu. Check three lines:

Device: HP Chromebook 11-ae0/ae1, 11 G6 EE, 14-ca0/ca1
Board Name: SNAPPY
Platform: Intel ApolloLake
Fw WP: Disabled
  • Device — must name your model.
  • Platform — Intel ApolloLake.
  • Fw WP — must read Disabled. If it says Enabled, go back to Chapter 3.

If you see Unrecognized Device anywhere, stop and flash nothing. Ask at forum.chrultrabook.com.

Backup first, as a separate step

Option 2 also offers a backup along the way, but running option 5 separately lets you verify the result before anything irreversible happens.

  1. Insert the small FAT32 stick.
  2. Choose 5) Backup Current Firmware.
  3. The script shows a list of devices. Pick your stick — recognise it by size, not by number.
  4. It writes a file such as stock-firmware-SNAPPY-<date>.rom.

Verifying the backup

This is the single most important check in the entire guide.

Leave the menu with Q and find the stick:

lsblk -o NAME,SIZE,FSTYPE,LABEL,MOUNTPOINT

The internal storage is called mmcblk0 or mmcblk1 (around 16 GB). Your stick is sda or sdb, with a partition like sda1.

If the stick is not mounted (no mount point), mount it manually:

mkdir -p /tmp/usb
mount /dev/sda1 /tmp/usb
ls -l /tmp/usb

ChromeOS normally mounts USB sticks automatically, but only when someone is logged in. At the login screen it does not.

The file must be exactly 8388608 or 16777216 bytes (8 or 16 MiB — the size of the firmware chip). On this board it is 16777216. Any other number means the read failed; run option 5 again.

If the file ended up elsewhere, find it:

find /tmp /mnt/stateful_partition /home -maxdepth 4 -name '*.rom' 2>/dev/null
cp <path you found> /tmp/usb/

Unmount properly before pulling the stick out:

sync
umount /tmp/usb

sync forces everything to actually be written to the stick. Without it the file may still be sitting in memory.

Now copy the .rom to your computer and to cloud storage. Verify the size again there. Without this file you can never return to ChromeOS.

Flashing

  1. Start the menu again: bash firmware-util.sh.
  2. Choose Install/Update UEFI (Full ROM) Firmware — select by the text, not the number. The numbering differs per device, and the option next to it (RW_LEGACY) does something entirely different.
  3. If it asks for a backup, feel free to say yes again.
  4. A warning appears that ChromeOS will no longer start. Confirm.
  5. Flashing takes thirty seconds to a few minutes. Touch nothing. There is no battery installed: a power interruption now makes the device unusable.
  6. Done? Choose P for poweroff. Not R.

Closing it back up

  1. Unplug the charger.
  2. Press the battery connector back until it clicks.
  3. Keyboard back on, taking care not to pinch the ribbon cables. Press down until all clips snap shut.
  4. All eight screws back in, the two longer ones in their own holes.

First start

The first boot after flashing takes a long time: 20 to 30 seconds of black screen while the firmware measures the memory. This is normal. Do not cut the power.

Then you will see the coreboot logo. Esc takes you into the settings menu.

Without an installation USB you end up in a UEFI Shell — a bare command line. That only means there is nothing to boot yet. Type exit to get to the menu.


Chapter 5 — Installing Linux Mint

Goal of this chapter: getting Mint onto the internal storage.

Booting from USB

  1. Insert the Mint stick into a USB-A port.
  2. Start up and press Esc.
  3. Choose Boot Manager and then your USB stick (recognisable by UEFI and the brand name).
  4. In the Mint start menu: Start Linux Mint.

If Boot Manager does not see the stick: try the other port, or rewrite the stick with Etcher.

Try it first

You are now in a live session: Mint runs entirely from the USB stick without installing anything. Test Wi-Fi, touchpad, keyboard and display.

Audio does not work here. That is normal — fixing it requires a real installation.

Installing

Double-click Install Linux Mint on the desktop.

  1. Choose language and keyboard layout.
  2. Install multimedia codecs: tick this. Needed for video and music.
  3. At Installation type, choose Something else. Not the automatic option.

Partitioning

You will see a list of disks. Note: the SD card reader can claim mmcblk0, which makes the internal storage mmcblk1. Go by the description — the internal storage is the roughly 15.8 GB one, identifiable as MMC HAG4a2 or similar.

  1. Delete all existing partitions on that disk (select, then ).
  2. Use + to create a 512 MB partition, used as EFI System Partition.
    • Choose this directly from the dropdown; do not create it as ext4 first and change it afterwards. That often goes wrong.
  3. Use + to create a second partition using all remaining space, as Ext4 with mount point /.
  4. No separate /home and no swap partition. At 16 GB, every separately reserved chunk is waste; we handle swap more cleverly in Chapter 6.
  5. For Device for boot loader installation: the whole disk (/dev/mmcblk1), not a partition.

Small 1 MB blocks of "free space" are alignment remnants. Leave them.

Finishing up

  1. Install Now. A warning about missing swap can be ignored.
  2. At the confirmation, check that only the internal disk is listed and not your USB stick.
  3. Fill in time zone and username.
  4. Do not tick "Encrypt my home folder". This technique (eCryptfs) is barely maintained any more, keeps files in memory twice — painful at 4 GB — and only protects part of your system. If you genuinely want encryption, full-disk encryption with LUKS is the right choice, but that requires different partitioning.
  5. Installation takes fifteen to thirty minutes on eMMC.
  6. Restart, remove the stick.

At first start

  • Timeshift offers to make system backups. Decline, or point it at an SD card. Snapshots eat your space on a 16 GB disk.
  • Run Update Manager and install all updates.

Chapter 6 — Saving space on 16 GB

Goal of this chapter: making the system fit and sparing the storage.

After installation you have around 7 GB free. That is workable, but you need to do something about it. All the steps below are optional but recommended.

Replacing swap with zram

Swap is disk space used as extra working memory. On eMMC that is slow and it wears out the chip. zram does the same thing but compressed in memory itself: faster, and it costs no disk space.

sudo swapoff -a
sudo rm -f /swapfile
sudo sed -i '/swap/d' /etc/fstab
sudo apt install systemd-zram-generator

Create the configuration file:

sudo nano /etc/systemd/zram-generator.conf

Put this in it:

[zram0]
zram-size = ram
compression-algorithm = zstd

Save with Ctrl+O, Enter, exit with Ctrl+X. Then reboot and check with swapon --show.

Reducing writes

Every write costs lifespan on eMMC.

sudo nano /etc/fstab

Find the line for / and add noatime,commit=60 to the options (comma-separated, no spaces). noatime saves a write on every file you read.

Add at the bottom:

tmpfs /tmp tmpfs defaults,noatime,size=512M 0 0

Put system logs in memory instead of on disk:

sudo nano /etc/systemd/journald.conf
[Journal]
Storage=volatile
RuntimeMaxUse=32M

Stop keeping downloaded installation files:

echo 'Binary::apt::APT::Keep-Downloaded-Packages "false";' | sudo tee /etc/apt/apt.conf.d/99no-cache

Enable weekly TRIM — this tells the storage chip which blocks are free:

sudo systemctl enable --now fstrim.timer

Do not use the discard option in fstab for this. It does the same thing continuously and actually makes eMMC slower.

Clearing out software

See what takes up the most space:

dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -rn | head -40

Candidates for removal if you do not use them:

sudo apt remove --purge libreoffice-* thunderbird hypnotix warpinator celluloid rhythmbox
sudo apt autoremove

LibreOffice alone is around 700 MB. If you mostly work online, that is pure gain.

Avoid Flatpak. It is an alternative installation system that ships every app with its own libraries — one such shared base is already 1 to 2 GB. Use apt where you can.

An SD card as extra space

A 128 GB SD card costs little and lives permanently in the slot.

Format it as ext4 using Disks and add it to /etc/fstab:

UUID=<uuid-of-the-card> /mnt/sd ext4 defaults,nofail,noatime 0 2

Find the UUID with lsblk -f. The nofail option is essential: without it the system refuses to boot when the card is not inserted.

Then move your large folders and put links (symlinks) in their place:

mkdir -p /mnt/sd/Downloads
mv ~/Downloads/* /mnt/sd/Downloads/ 2>/dev/null
rmdir ~/Downloads
ln -s /mnt/sd/Downloads ~/Downloads

Chapter 7 — Audio

Goal of this chapter: honestly explaining why this is difficult, and what your options are.

This chapter does not solve the problem with certainty. Be prepared for that.

Why this is hard

Chromebooks use audio hardware that Linux does not recognise automatically. On Apollo Lake there are two possible drivers, and both have a shortcoming:

Driver Internal speakers Headphones Stability
SOF yes no stable
AVS blocked yes variable

The block on AVS is not a bug but a safety measure. This device has an amplifier chip of the max98357a type, and under AVS it can permanently damage the speakers at high volume. The developer is unambiguous about this.

Do not use --force-avs-install. It is the only way to get speakers under AVS, and it is exactly the scenario the block exists for.

Running the script

sudo apt update
sudo apt install git python3
git clone --depth 1 https://github.com/WeirdTreeThing/chromebook-linux-audio
cd chromebook-linux-audio
sudo ./setup-audio

On Apollo Lake the script automatically selects AVS and asks you to type out a sentence confirming you understand the speakers will not work. Type that sentence and let the script finish. It does not enable anything dangerous; it installs the configuration files and firmware you need for either driver.

Copy the sentence literally from your screen, in capitals. If it loops back to the same question, compare character by character.

Switching to SOF (for internal speakers)

If you want to use the internal speakers, you need to switch the driver choice afterwards. Do not reboot yet.

grep -r dsp_driver /etc/modprobe.d/
echo 'options snd_intel_dspcfg dsp_driver=3' | sudo tee /etc/modprobe.d/zz-sof.conf
sudo update-initramfs -u

snd_intel_dspcfg is not a program but a kernel module, and dsp_driver is a setting belonging to it. Files in /etc/modprobe.d/ make such settings permanent. The values: 1 = legacy HDA, 2 = SST, 3 = SOF, 4 = AVS. The zz- in the filename ensures this line is read last and therefore wins.

Reboot and check:

cat /sys/module/snd_intel_dspcfg/parameters/dsp_driver   # should be 3
aplay -l                                                  # should list a sound card

If no sound card is found

A known problem on an Ubuntu 24.04 base, which is what Mint builds on. The kernel is new enough, but the surrounding audio packages are not. chromebook-linux-audio officially does not support old LTS releases.

What to check:

dmesg | grep -iE 'sof|snd|avs|tplg' | tail -40
ls /lib/firmware/intel/sof/ | grep -i apl
ls /lib/firmware/intel/sof-tplg/ | grep -i apl
  • If sof-apl.ri or sof-apl-da7219.tplg is missing, the firmware is not there. On an Ubuntu base it lives in the linux-firmware package, not in firmware-sof-signed (that is the Debian name and does not exist on Mint).
  • If you are stuck with "Dummy Output", report it with your board (snappy), kernel version (uname -r) and the dmesg output at the project's issues.

The practical ways out

If you cannot get there — and that is a realistic scenario:

  • A USB sound adapter. Costs a few euros, works with the standard drivers, gives you headphones and line-out. By far the simplest solution.
  • A Bluetooth speaker or headset. Bluetooth works without trouble.
  • Debian 13 "Trixie" Xfce instead of Mint. Officially supported by the audio script, with newer audio packages. All the firmware work from Chapters 1 through 4 still applies — reinstalling costs half an hour and carries no risk. It does not change the max98357a block, but the odds that everything else lines up are better.

Chapter 8 — Keyboard

Goal of this chapter: making the Chromebook keys usable under Linux.

A Chromebook keyboard has no F keys, no Caps Lock and no Delete. Instead there is a search key where Caps Lock belongs. Under Linux none of this works out of the box.

keyd is a small program that remaps keys at system level.

sudo apt install keyd

Configuration lives in /etc/keyd/default.conf. A working setup for Chromebooks is documented at the Eupnea project, including ready-made files.

What people typically configure:

  • The top row as F1 through F12 when you need them
  • The search key as Super (Windows key) or Caps Lock
  • Search + Backspace as Delete
  • Getting the brightness and volume keys working

After changes:

sudo systemctl restart keyd

A ready-made keyd configuration for Linux Mint Xfce on this device, which turns the top row into working function keys, is available at chromebook-mint-xfce-keys-setup.


Troubleshooting

The device will not start after flashing

The first boot takes 20 to 30 seconds with a black screen. Wait it out. If it stays black afterwards, hold the power button for 30 seconds and try again. If nothing helps, you need a programmer to restore your backup. Ask for help at forum.chrultrabook.com.

Boot Manager does not see my USB stick

Try the other port. Otherwise rewrite the stick with Etcher — some tools write ISOs in a way UEFI cannot read.

Wi-Fi does not work in Mint

Check whether the linux-firmware package is installed. If not, temporarily use a USB Ethernet adapter or USB tethering from a phone.

Sleep drains a lot of battery

Under Linux, Apollo Lake often falls back to a lighter sleep state (s2idle) instead of true sleep (S3). Check with cat /sys/power/mem_sleep. If s2idle appears in brackets, that is what is active. There is not always a fix; shutting down instead of closing the lid is the alternative.

I want to go back to ChromeOS

Run the MrChromebox script again and choose the option to restore the stock firmware from your .rom backup. After that you need a ChromeOS recovery stick (see Chapter 1, step 5).


Sources


Contributing

Does something work differently for you, or did you actually solve the audio problem? Open an issue or a pull request. Always include your board (chrome://systemhwid), your distribution and your kernel version (uname -r).

Licence

CC BY-SA 4.0 — free to use and adapt, with attribution.

About

Step-by-step guide to replacing ChromeOS with Linux Mint Xfce on an HP Chromebook 11 G6 EE (board snappy) — in English and Dutch

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors