the Chromium logo

The Chromium Projects

CrOS Tools

This aims to be an reference page to help find CrOS tools and their documentation.

Tools

Alphabetical List

build_image

build_image is the old name for cros build-image. Users should invoke that tool instead.

build_packages

build_packages is the old name for cros build-packages. Users should invoke that tool instead.

cros build-image

cros build-image handles building ChromiumOS and ChromeOS images that can then be flashed to a device or USB stick.

cros build-packages

cros build-packages compiles all of the packages for a given board into a sysroot. Packages can also be listed that should be built.

cros deploy

cros deploy is used to install a single package to a DUT (Device Under Test). See the cros deploy documentation for more information.

cros flash

cros flash is used to flash an image to a DUT or a USB drive. See the tool's documentation for more information.

cros_run_unit_tests

This script runs the src_test phase of the ebuilds for the packages it tests. It allows giving a sysroot, build target (board), or a list of packages.

cros_sdk

The cros_sdk script lives in the [chromite] repo. The implementation can be found here, while its executable can be found in Chromite's bin directory. cros_sdk is used to manage the SDK/chroot. This is one of the first scripts that needs to be run in most cases, to create the chroot.

Some of the most common usages are:

cros_workon_make

Location: platform/dev-util

This script is a bash script that wraps the core operations for working on a specific workon package.

security_test_image

Repo: chromite

This script uses a set of baselines to run security tests for a built image. For most use cases this currently generally requires an internal checkout. The tests it runs are also currently very strongly tied to the concept of the image being for a Chromebook. Use cases of ChromeOS/ChromiumOS for other uses usually fail these tests.

By Entity/Action

AP Firmware

Chroot: See SDK

EC Firmware

Image

Kernel

Package

Note: This is distinct from the Packages section. This section focuses on operations that are relevant to a single package. The Packages section focuses on operations relevant to sets of packages (most often a full sysroot). There is overlap in these sections, and we hope one day to be able to collapse them into a single section.

Packages

SDK

Sysroot

Handled automatically for most users!

Only use these if you're sure you really need to manually do so.

The current test/install phases of the sysroot are very limited and not distinct from the build phase.