Clone this repo:
  1. bf8fbf8 Use new Product assembly interface by passing in platform AIBs by Jiaming Li · 5 days ago main
  2. b575115 [embedder] Remove flutter-embedder in workstation by Alexander Biggs · 6 days ago
  3. a2aa143 [assembly] Add harware_revision to partitions config by Aidan Wolter · 7 days ago
  4. 6bb6e40 Add cpp hello world example by Chase Latta · 5 weeks ago
  5. 476aa82 Integrate the released fortune-teller package by Jiaming Li · 5 weeks ago

Workstation.git

NOTE: This repo is not actively maintained. We are planning to resume this work in Q3 2022.

The workstation.git repository holds the source code for building the Workstation outside of fuchsia.git. For more information, see RFC-0095.

This repository is a work in progress and should be considered experimental- the official Workstation product is still in the main fuchsia.git repository.

Fetch submodules

This project uses git submodules. After checking out a branch run the git submodule command to update the dependencies.

git submodule update --init --recursive

Bootstrap

Bootstrap script in scripts/bootstrap.sh will fetch bazel.

The Workstation repository uses Bazel for its build system. To ensure that you are using the version of Bazel that was tested in CQ/CI we recommend using bazelisk. You can either add bazelisk to your path or invoke it directly.

# Assumes that WORKSTATION_REPO is set to your checkout directory
export PATH="${WORKSTATION_REPO}/tools:$PATH"

Build instructions

Pave using

bazel run //src/product:workstation_x64_paver

Additional arguments may be supplied following a -- token, matching the arguments given to the bootserver tool.

Other targets can be found at src/build/BUILD.bazel

Generated files

artifact_spec.json is generated by

bazel run //tools/build_generator

See tools/build_generator/build_generator.go for more information. Eventually, this file will be maintained by hand.

artifact_lock.json is generated by the command:

bazel run artifact_lock_updater

This is an input to the fuchsia_product_repository WORKSPACE target.

checksum.json is generated by the command

bazel run @workstation_external_packages//:workspace_checksum_updater

and is also an input to the fuchsia_product_repository WORKSPACE target.

There are more generated files in src/product. See src/product/README.md for information.