Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 1 | # Fuchsia product definitions |
James Robinson | 65af3b8 | 2019-02-04 17:55:50 -0800 | [diff] [blame] | 2 | |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 3 | This directory contains definitions for a variety of product configurations. The |
Steffen Meschkat | 7d56331 | 2019-03-21 20:22:16 +0000 | [diff] [blame] | 4 | products are organized into tracks that build on one another to produce a fully |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 5 | featured system. |
| 6 | |
James Robinson | eba21b7 | 2019-02-21 12:33:48 -0800 | [diff] [blame] | 7 | ## Baseline track |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 8 | |
| 9 | ### Bringup |
| 10 | |
John Wittrock | 081097f | 2023-07-18 18:20:21 +0000 | [diff] [blame] | 11 | A tiny system used to exercise kernel and core drivers and to bring up new |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 12 | boards. |
| 13 | |
John Wittrock | 081097f | 2023-07-18 18:20:21 +0000 | [diff] [blame] | 14 | ### Minimal |
| 15 | |
| 16 | "The smallest set of features we'd still call Fuchsia." More feature-ful than |
| 17 | bringup (implying bringup is not a full Fuchsia system). |
| 18 | |
| 19 | Per [RFC-0220], minimal can boot to userspace, run Component Manager and |
| 20 | components, and update itself over a network. It has no graphics, audio, wifi, |
| 21 | or other bread-and-butter items you'd think of in a consumer operating system. |
| 22 | |
| 23 | Minimal is intended to be the basis for all production Fuchsia products, which |
| 24 | should not subtract from its contents, only add to them. |
| 25 | |
| 26 | The main uses of minimal should be: |
| 27 | 1. running [hermetic][test-hermeticity] tests |
| 28 | 2. creating larger Fuchsia products |
| 29 | |
| 30 | ### Core (deprecated per [RFC-0220]) |
James Robinson | 65af3b8 | 2019-02-04 17:55:50 -0800 | [diff] [blame] | 31 | |
| 32 | Self-updating system with core system services, connectivity, and metrics |
John Wittrock | 081097f | 2023-07-18 18:20:21 +0000 | [diff] [blame] | 33 | reporting. Supports graphics. |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 34 | |
| 35 | Builds on [bringup](#bringup) |
| 36 | |
John Wittrock | 081097f | 2023-07-18 18:20:21 +0000 | [diff] [blame] | 37 | ### Workbench |
| 38 | |
| 39 | Based on minimal. Intended to be a figurative workbench for developers working |
| 40 | with Fuchsia. Supports graphics, media, audio, input, complex drivers like USB |
| 41 | and WiFi, etc. This contains the features you'd think of a production OS having, |
| 42 | but this product configuration is not meant for production. Instead, it's meant |
| 43 | to be a development and testing environment. |
| 44 | |
| 45 | Workbench doesn't have a session (user interface) by default, though a developer |
| 46 | can add one at runtime using `ffx session launch`. |
| 47 | |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 48 | ## Workstation track |
| 49 | |
John Wittrock | d3f7eba | 2023-07-18 18:12:16 +0000 | [diff] [blame] | 50 | ### Terminal (deprecated per [RFC-0220]) |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 51 | |
| 52 | A system with a simple graphical user interface with a command-line terminal. |
| 53 | |
James Robinson | eba21b7 | 2019-02-21 12:33:48 -0800 | [diff] [blame] | 54 | Builds on [core](#core). |
Adam Barth | 613e61c | 2019-02-08 15:36:08 -0800 | [diff] [blame] | 55 | |
John Wittrock | 081097f | 2023-07-18 18:20:21 +0000 | [diff] [blame] | 56 | [test-hermeticity]: https://fuchsia.dev/fuchsia-src/development/testing/components/test_runner_framework#hermeticity |
John Wittrock | d3f7eba | 2023-07-18 18:12:16 +0000 | [diff] [blame] | 57 | [RFC-0220]: /docs/contribute/governance/rfcs/0220_the_future_of_in_tree_products.md |