A session is the first product-specific component started on boot. The session component is responsible for building a product's user experience.
To boot into a session, do the following:
For a session to run at boot you need to configure the product build with the session's URL. Identify the component URL for your session:
Replace the following:
.cm
extension.For more information, see fuchsia-pkg
and Package name.
Update your //local/BUILD.gn
to include product_assembly_overrides
.
Run the following command to include your_session
in your base image and set the configuration values you defined in //local:custom_session
.
fx list-products
and fx list-boards
will show lists of the products and boards available to be used in the fx set
command. For more information on fx
commands see the fx documentation.
Rebuild and re-pave the device.
fx build
fx ota
This causes session_manager
to start and launch your session.
For a full explanation of building a session component, see Writing a Hello World Session.
There are cases when you don't want your session to launch at boot but still want to be able to launch it from the command line. session_manager
needs to be running to launch a session. The session_manager
target ensures session_manager
itself starts, but does not autolaunch a session.
To launch a session from the command line, do the following:
//local/BUILD.gn
with product_assembly_overrides
using autolaunch
.Add the session_manager
target in the base dependency set, in addition to the session target.
fx list-products
and fx list-boards
will show lists of the products and boards available to be used in the fx set
command. For more information on fx
commands see the fx documentation.
Run the following command to rebuild and repave the device:
fx build
fx ota
This causes session_manager
to start without launching your session.
Your session can now be launched from the command line.
Run the following command to launch your session:
For more information about the ffx session
command, run ffx session --help
. For more information about ffx
, see the ffx documentation
.