blob: 4c61f998e208313c38c44c7ecf5c45dc16c5c1eb [file] [log] [blame] [view]
Adam Barth613e61c2019-02-08 15:36:08 -08001# Fuchsia product definitions
James Robinson65af3b82019-02-04 17:55:50 -08002
Adam Barth613e61c2019-02-08 15:36:08 -08003This directory contains definitions for a variety of product configurations. The
Steffen Meschkat7d563312019-03-21 20:22:16 +00004products are organized into tracks that build on one another to produce a fully
Adam Barth613e61c2019-02-08 15:36:08 -08005featured system.
6
James Robinsoneba21b72019-02-21 12:33:48 -08007## Baseline track
Adam Barth613e61c2019-02-08 15:36:08 -08008
9### Bringup
10
John Wittrock081097f2023-07-18 18:20:21 +000011A tiny system used to exercise kernel and core drivers and to bring up new
Adam Barth613e61c2019-02-08 15:36:08 -080012boards.
13
John Wittrock081097f2023-07-18 18:20:21 +000014### Minimal
15
16"The smallest set of features we'd still call Fuchsia." More feature-ful than
17bringup (implying bringup is not a full Fuchsia system).
18
19Per [RFC-0220], minimal can boot to userspace, run Component Manager and
20components, and update itself over a network. It has no graphics, audio, wifi,
21or other bread-and-butter items you'd think of in a consumer operating system.
22
23Minimal is intended to be the basis for all production Fuchsia products, which
24should not subtract from its contents, only add to them.
25
26The main uses of minimal should be:
271. running [hermetic][test-hermeticity] tests
282. creating larger Fuchsia products
29
30### Core (deprecated per [RFC-0220])
James Robinson65af3b82019-02-04 17:55:50 -080031
32Self-updating system with core system services, connectivity, and metrics
John Wittrock081097f2023-07-18 18:20:21 +000033reporting. Supports graphics.
Adam Barth613e61c2019-02-08 15:36:08 -080034
35Builds on [bringup](#bringup)
36
John Wittrock081097f2023-07-18 18:20:21 +000037### Workbench
38
39Based on minimal. Intended to be a figurative workbench for developers working
40with Fuchsia. Supports graphics, media, audio, input, complex drivers like USB
41and WiFi, etc. This contains the features you'd think of a production OS having,
42but this product configuration is not meant for production. Instead, it's meant
43to be a development and testing environment.
44
45Workbench doesn't have a session (user interface) by default, though a developer
46can add one at runtime using `ffx session launch`.
47
Adam Barth613e61c2019-02-08 15:36:08 -080048## Workstation track
49
John Wittrockd3f7eba2023-07-18 18:12:16 +000050### Terminal (deprecated per [RFC-0220])
Adam Barth613e61c2019-02-08 15:36:08 -080051
52A system with a simple graphical user interface with a command-line terminal.
53
James Robinsoneba21b72019-02-21 12:33:48 -080054Builds on [core](#core).
Adam Barth613e61c2019-02-08 15:36:08 -080055
John Wittrock081097f2023-07-18 18:20:21 +000056[test-hermeticity]: https://fuchsia.dev/fuchsia-src/development/testing/components/test_runner_framework#hermeticity
John Wittrockd3f7eba2023-07-18 18:12:16 +000057[RFC-0220]: /docs/contribute/governance/rfcs/0220_the_future_of_in_tree_products.md
OSZAR »