產品和主面板是包含 GN 的組合,用來為 Fauchsia 版本提供基準設定。
GN 版本設定僅包含一個主面板 GNI 檔案,以及一個產品 GNI 檔案。在 fx 中,這個組合是 fx set
指令的主要引數。
在 Fuchsia GN 版本設定中,主機板一律會先加入。白板會開始定義三份依附元件清單,然後由匯入的產品擴增 (日後還會納入選用的 GN 納入項目)。這些清單分別是 Base、Cache 和 Universe,詳細說明如下。
登機時間
找到功能這項設定會影響內含的驅動程式,也可能會影響裝置專用的核心參數。
您可以使用 fx list-boards
列出可用的主面板。
產品
產品會定義建構作業將產生的軟體設定。最重要的是,產品通常會定義提供的使用者體驗類型,例如使用者可能會觀察到的圖形殼層、是否包含多媒體支援等。
你可以使用 fx list-products
列出可用的產品。
依附元件集
董事會定義,產品會擴增三個依附元件清單:「Base」、「Cache」和「Universe」。這些依附元件是 GN 標籤,最終會將套件提供給各種系統構件,例如磁碟映像檔和已簽署的套件中繼資料,以及各種開發成果,例如主機工具和測試。
Base
base
依附元件清單會為磁碟映像檔、系統更新和套件存放區提供套件。base
依附元件集內含的套件優先於 cache
依附元件集中的重複成員資格。系統設定中的基本套件被視為系統,且對安全性至關重要。這些程式庫會更新為不可分割的單元,且無論資源壓力如何,都不會在執行階段撤銷。
快取
cache
依附元件清單會提供在建構作業的磁碟映像檔構件中預先快取的套件,也會在套件存放區中提供。這些套件不會新增至系統更新,而是會暫時更新。系統也可以將快取套件從執行中的系統剔除,以便依據執行階段資源需求釋出資源。
宇宙
universe
依附元件清單只會提供套件至套件存放區。這些套件將可用於執行階段快取和更新,但在系統更新映像檔和任何磁碟映像檔中都找不到。base
和 cache
的所有成員本身也是 universe
的成員。
主要產品設定
除了下列幾項產品定義外,還有以下四項產品特別重要,請務必熟悉以下四種不同的設定:
起重機
bringup
產品是開發過程中最小可行的目標。由於 bringup
產品缺少大部分的網路功能,因此無法使用需要網路連線的 fx
指令,例如 fx serve
和 fx shell
。
詳情請參閱「提供產品定義」
Core
core
是最基本的功能集,可安裝額外軟體 (例如新增至「宇宙」依附元件集的項目)。這是所有更高層級產品設定的起點。它具有常見的網路功能,也能更新無線系統。
極簡
如 RFC-0220 所述,Minimal 是「最小的東西,稱為 Fuchsia。」定義上,這個系統可以:
- 運用於使用者空間。
- 執行元件管理員和元件。
- 使用 Fuchsia 的無線更新系統自行更新。(這表示儲存空間和網路能夠與主機提供的驅動程式同時正常運作。)
工作台
Workbench 是供本機開發使用的產品設定,可執行大型測試 (無法或不應該將測試封裝),並且對 Fuchsia 平台中超出最低支援的部分執行。它就像是文獻工作台,它可以支援開發工具,並允許開發人員在系統上對系統進行叫用。它不是運送使用者的產品,也不是這些產品的基礎。