Leaf Setup

leaf setup - downloads, installs and configures your Legato development environment.

$ leaf setup [PROFILE] -p PACKAGE ... [--set KEY[=VALUE] ...]


Name to be given to the profile (optional). If not specified, a profile name will be automatically generated by concatenating upper casing the NAME specified in -p options (see below). Profile names must be unique in a given workspace; if the chosen or generated PROFILE is already used in the current workspace, the command will fail.

To see already created profiles use the leaf status command


-p|--add-package PACKAGE

Package identifier for the package that you wish to install.

The package identifier will be accepted in two formats:

  • NAME: the latest available version with the package NAME will be added to the profile
  • NAMEVERSION: the specified version will be added to the profile
The -p option can be used multiple times, but must be specified at least one time.
The leaf search command can be used to display the available packages.


--set KEY[=VALUE]

Variable to add to the profile definition (see leaf help env).


Create a new workspace and profile, using the latest version

Assuming that you're in a new empty directory:

$ leaf setup MYSDK1 -p mysdkversion1

Add a profile to an existing workspace, with another version

Assuming that you're in a directory that already contains a workspace:

$ leaf setup MYSDK2 -p mysdkversion2


leaf setup will initialize your workspace if none exists, and add another profile in an existing workspace. As an high level command, using leaf setup is equivalent to chaining the following steps:

$ leaf init

If the current directory is not already into a workspace tree (i.e. the workspace root itself or a sub-directory), the workspace will be created here (after confirmation).

$ leaf profile create PROFILE

A new profile will then be created in the current workspace, using PROFILE as a name (user provided or generated). The new profile is then selected to be the current profile.

$ leaf profile config -p PACKAGE

For each specified -p option, the required package will be added to the current profile.

$ leaf profile sync

Finally, the profile provisioning will be triggered to install the required packages (if necessary) and refresh the leaf-data structure.