How to install Steam on ChromeOS

Newer Chromebooks are actually pretty good at playing games and thanks to GPU acceleration and Crostini, a Debian Linux container custom-built for ChromeOS, we can easily run Linux applications on ChromeOS without any special hacks.

You’ll need to enable the Linux environment in ChromeOS Settings. You can change your Linux disk size, but 20GB is good enough for me to have a couple games and still have room for dev tools. You probably won’t be able to make it a disk much bigger and still have room for your ChromeOS environment, though.

Once it’s set up, you’ll have to set up a username in the Linux terminal.

Now that you have the Linux environment set up, download steam.deb, the Steam installer for Linux. Once downloaded, open the Files app, right-click on the .deb file, select Open with…, then Install with Linux.

It might take a few minutes to install, and then it should appear in your programs under the Linux apps group.

Troubleshooting

When I started Steam the first time, I ran into some issues with missing libraries, but was able to resolve them by installing the necessary packages from the Linux terminal.

sudo dpkg --add-architecture i386
sudo apt update
sudo apt-get install libgl1-mesa-glx:i386

Well, that was pretty easy. Hope it works out for you. If not, I’d be interested to hear about your issues in the comments.

My $99 development Chromebook

This is inspired by Kenneth White’s $169 development Chromebook. This is mostly just some updates for 2019.

Last Black Friday, Wal-Mart had a Samsung Chromebook 3 for $99. It’s powered by a dual-core Intel Celeron with 4GB RAM, 16GB SSD, Bluetooth, 802.11n, SD card slot, two USB ports, webcam, and 10+ hours of battery runtime. I thought it would only be good for doing browser-based activities in CoderDojo, but it’s grown on me as a tablet replacement. Now, I’m hoping to even replace my notebook.

Following White’s advice, I made a Google account just for the device, but ultimately decided to go back to using my personal account because I wanted access to my Google Play purchases. But like White said, I can always Powerwash and use the device account when I travel to potentially hostile environments.

I changed my authentication to be through a hardware key (and Google Authenticator as a backup) which turns out to be very easy to use.

I’ve more or less gone with White’s guide in my build. In addition to his goals, I added a few:

  • Docker: I’m looking into this, but it looks like I might need a 32-bit x86 version to run under Termux.
  • ADB: I’m not even close to getting this working yet.

Some things to note:

  • It takes some getting used to Termux’s long-press on touchpad to copy/paste. There’s no CTRL+C/V options AFAIK.
  • If you store data in SD card, remember that it’s not encrypted by default.