Chrome OS Build Instructions (Chromium OS on Linux)

Chromium on Chromium OS uses Linux Chromium as a base, but adds a large number of features to the code. For example, the login UI, window manager and system UI are part of the Chromium code base and built into the chrome binary.

Fortunately, most Chromium changes that affect Chromium OS can be built and tested on a Linux workstation. This build is called “linux-chromeos”. In this configuration most system services (like the power manager, bluetooth daemon, etc.) are stubbed out. The entire system UI runs in a single X11 window on your desktop.

Updating your gclient config

Chromium OS builds of Chromium require some additional build dependencies which can be synced by adding 'chromeos' to the target_os list in your .gclient configuration. This file is located one level up from your Chromium checkout's src.

If you don't already have a target_os line present, simply add this to the end of the .gclient file:

target_os = ['chromeos']

If you already have a target_os line present in your .gclient file, you can simply append 'chromeos' to the existing list there. For example:

target_os = ['android', 'chromeos']

Once your .gclient file is updated, you will need to run gclient sync once before proceeding with the rest of these instructions.

Building and running Chromium with Chromium OS UI on your local machine

NOTE: You may wish to replace ‘Default’ with something like ‘Cros’ if you switch back and forth between Linux and Chromium OS builds, or ‘Debug’ if you want to differentiate between Debug and Release builds (see below).