Start the [Fuchsia emulator][femu] on the host machine and configure the emulator instance to use Fuchsia’s new [driver framework][driver-framework] (DFv2).
The tasks include:
In VS Code, do the following:
Click Terminal > New Terminal.
In the terminal, download the latest Workstation image for the emulator:
tools/ffx product-bundle get workstation_eng.qemu-x64 --force-repo --repository workstation-packages
This command may take a few minutes to download the image and product metadata.
Once the download is finished, the ffx product-bundle get command creates a local Fuchsia package repository named workstation-packages on your host machine. This package repository hosts additional system packages for this Workstation prebuilt image. Later in step 9 you’ll register this package repository to the emulator instance.
Stop all emulator instances:
tools/ffx emu stop --all
Start the Fuchsia emulator:
tools/ffx emu start workstation_eng.qemu-x64 --headless \ --kernel-args "driver_manager.use_driver_framework_v2=true" \ --kernel-args "driver_manager.root-driver=fuchsia-boot:///#meta/platform-bus.cm" \ --kernel-args "devmgr.enable-ephemeral=true"
This command starts a headless emulator instance running the Workstation prebuilt image.
When the instance is up and running, the command prints output similar to the following:
$ tools/ffx emu start workstation_eng.qemu-x64 --headless \ --kernel-args "driver_manager.use_driver_framework_v2=true" \ --kernel-args "driver_manager.root-driver=fuchsia-boot:///#meta/platform-bus.cm" \ --kernel-args "devmgr.enable-ephemeral=true" ... Logging to "/home/alice/.local/share/Fuchsia/ffx/emu/instances/fuchsia-emulator/emulator.log" Waiting for Fuchsia to start (up to 60 seconds). Emulator is ready.
Click the Not connected icon at the bottom of VS Code.
{: .screenshot}
This opens the Command Palette at the top of VS Code.
Click Set fuchsia-emulator as default in the Command Palette.
This sets fuchsia-emulator as the default target at the bottom of VS Code:
{: .screenshot}
In the terminal, start the Fuchsia package server:
tools/ffx repository server start
This command prints output similar to the following:
$ tools/ffx repository server start ffx repository server is listening on [::]:8083
Check the list of Fuchsia package repositories available on your host machine:
tools/ffx repository list
This command prints output similar to the following:
$ tools/ffx repository list +-----------------------+------+-------------------------------------------------------------------------------------------------+ | NAME | TYPE | EXTRA | +=======================+======+=================================================================================================+ | workstation-packages* | pm | /home/alice/.local/share/Fuchsia/ffx/pbms/4751486831982119909/workstation_eng.qemu-x64/packages | +-----------------------+------+-------------------------------------------------------------------------------------------------+
Notice a package repository named workstation-packages is created for the Workstation prebuilt image.
Register the workstation-packages package repository to the target device:
tools/ffx target repository register -r workstation-packages --alias fuchsia.com --alias chromium.org
This command exits silently without output.