Checkbox Configs

Configuration values resolution order

The directories that are searched for config files are:

  • /etc/xdg/

  • ~/.config/

  • $SNAP_DATA if run as a snap

Invoking checkbox-cli (without launcher)

By default, Checkbox will look for a config file named checkbox.conf in the directories mentioned above.

Invoking launcher

If using a launcher, the file name to look for is specified using the config_filename variable from the [config] section (see External configuration files for more information). If it’s not present, checkbox.conf is used.

Note that if same configuration variable is defined in more than one place, the value resolution is as follows:

  1. launcher being invoked

  2. config file from ~/.config

  3. config file from /etc/xdg

  4. config file from $SNAP_DATA

Configs with Checkbox Remote

When the Checkbox Agent starts, it looks for config files in the same places that local Checkbox session would look (on the Agent side). If the Checkbox Controller uses a Launcher, then the values from that Launcher take precedence over the values from configs on the Agent side.

Example:

# checkbox.conf on the Agent

[environment]
FOO = 12
BAR = 6
# Launcher used by the Controller

# (...)
[environment]
FOO = 42

A Checkbox job that runs echo $FOO $BAR would print 42 6

Note that BAR is still available even though the Controller used a Launcher that did not define it.