Microsoft announced this week that it will bring the heart of the open source operating system Linux into Windows. Not to be outdone, Google says all future Chromebooks will be able to run Linux applications.
Chromebooks run an operating system, ChromeOS, that is built on the Linux kernel but was originally designed to only run Google’s web browser Chrome. That meant you could only really use web apps. That changed in 2016 when Google announced support for installing apps written for its other Linux-based operating system, Android. Then last year the company unveiled a feature called Crostini that enables users to install other Linux apps as well. But Crostini was supported on only a few Chromebooks, such as Google’s flagship Pixelbook. At its I/O developer conference this week, ZDnet reports, Google announced that all new Chromebooks will support Crostini.
It’s long been possible to install Linux on a Chromebook, but it used to require overriding some of the device’s security features, which could make your Chromebook less safe. It also took a bit of tinkering. With Crostini, Google makes it possible to easily run Linux apps without compromising your Chromebook.
Why bother? Average users might find it useful to run Linux applications such as the Photoshop alternative Gimp or the Microsoft Office alternative LibreOffice, or play games using Steam. But the real audience for Crostini appears to be programmers, who can use it to write and test both web applications and Android apps from within ChromeOS.
According to Google’s Crostini page, the system works by running a streamlined version of Linux called Termina inside what’s called a virtual machine. This is exactly what it sounds like: a simulation of a computer that can be used to run operating systems and other hardware. Within Termina, you can then run Linux applications inside “containers,” which are similar to virtual machines but virtualize only parts of an operating system. Basically, you’d use Crostini to run another version, or “distribution,” of Linux, such as Ubuntu or Red Hat’s Fedora, inside of a container inside of a virtual machine.
There are some limitations. Running software inside a container inside a virtual machine will go a long way toward protecting the underlying operating system from malware, but it won’t protect any data stored in a container. In other words, if your bank credentials are stored in an app that you’re running in a container, and that container gets infected with malware, there’s nothing ChromeOS can do about it.
The extreme compartmentalization might also break features of some applications. For example, the Crostini page notes that users won’t be able to access their computer microphones from within containers, at least for now. You also won’t be able to run other virtual machines from within Termina, so you won’t be able to run Windows within a virtual machine. You might, however, be able to run Windows applications using the Windows emulator Wine.