Skip to content

Understanding Device Capabilities

Linux on Chrome OS opens the door to countless possibilities that will allow you to push the limits of your device and explore countless possibilities. By having Linux support, you can install millions of third-party applications from thousands of independent developers. Unlike Android applications, Linux applications are not subject to any approval process by Google, so it is not always clear how these applications will run on your device.

To get the most out of Linux on your Chrome OS Device, you will need to have realistic expectations on what your device is capable, which will require you to consider the following:

CPU Architecture

Applications written for Chrome OS and Android rarely limit themselves to specific CPU architectures, however, this is not always the case for Linux applications. While many Linux applications are written to target all major CPU architectures, there are several exceptions.

Most Linux Applications were written to target the amd64/x86_64 architecture, however, the list of ARM/ARM64 applications are growing. If you do intend to make heavy use of Linux, you should consider purchasing Intel or AMD-based devices.

If you are attempting to install an application via apt or another package manager, it will automatically install the correct version of the application to target the architecture of your device, if available. If the application you are looking for is not found with the package manager, but you know it's in the repository, it generally means the application was not written to target the architecture used by your {MODEL}.

CPU Speeds

Many modern Chrome OS devices contain CPUs that balance raw performance with power efficiency to extend battery life and reduce power consumption while still providing users with smooth performance for most tasks. While this does have the advantage of allowing you to have all-day battery life, it does impose some performance issues for some Linux applications that make heavy use of the CPU. You should always check with the maintainer of the software package you wish to install to see how well it will run on your CPU to understand how it will perform on your device.

Memory Management

Most Linux applications will run on your device; however, this does not imply that most applications will run well on your device. Many Chrome OS devices tend to ship with 4 GB of RAM, which will work well for most use. However, there are several Linux applications that can easily consume a large portion of that RAM if allowed. Your {MODEL} ships with {MEMOPTONS} of RAM which is shared with Linux, Android and ChromeOS. You should always check with the maintainer of the software package to ensure it will work on machines with the amount of RAM available to your Linux machines.

GPU Acceleration Support

CPU Acceleration on Chrome OS is new and only supported on a few devices, which is growing with each major release of Chrome OS. Many assume GPU acceleration is only to be used by video games; however, this is far from true. Many image editors, video editors and even some web browsers all use the GPU to speed up calculations and improve performance/rendering times. If your device does not support GPU acceleration, it will revert to CPU rendering, which may often be slower than GPU rendering.

Use Cases

Linux on Chrome OS is primarily intended for use by software developers. However, it is not limited to only being used by developers. Linux excels in a good deal of productivity focused tasks, but on many units, lightweight gaming is definitely possible - You may not be able to run high-end games such as The Witcher or Crysis, but lower end games should function without issue. As a fun fact, this entire book was written on a Chromebook.

Linux Limitations

Linux on Chrome OS is a very open platform which allows users to do almost anything on their device as users are given effective root access to the Chrome OS Linux environment. There are however a number of limitations in place due to the way that Linux on Chrome OS was designed and for security purposes. The following limitations are in place for Linux on Chrome OS, even with root access:

  • Limited Access To Hardware - Your Linux environment can only access some hardware that has specifically been passed to your Linux environment. This is a security feature to prevent a malicious application such as keylogger installed within the Linux environment from being able to capture the keystrokes on your keyboard.
  • No Ability to Modify Kernel - You cannot modify kernel or install Kernel modules or custom kernels to the Linux environment on Chrome OS.
  • Limited Nested Virtualization - Many units are unable to run nested virtual machines, which will prevent software such as Virtual Box from running.
  • No Access to Framebuffer - Linux Applications are unable to access the framebuffer of your device, which will cause Linux applications that attempt to share the screen from working. This will result in some software such as OBS not functioning.
  • Limited Storage Options - Many Chrome OS devices ship with as little as 32 GB of storage, which is fine for users who plan to use their Chrome OS device for web-centric activities, but can be a limiting factor for those who plan to make use of Linux on their devices. It is possible to share a external storage device such as a MicroSD card or USB hard drive with Linux to offload some data storage, but this is not the best solution for those to plan to make heavy use of Linux on their devices.
  • No Google Cloud Backups - Linux on Chrome OS lacks one of the best features of Chrome OS, its ability to automatically backup data to Google Drive. Linux users on Chrome OS are responsible for maintaining backups of their data. It is possible to share your Google Drive storage with your Chrome OS container to allow you to move data to Google Drive.