下載 Fuchsia 原始碼

本指南將說明如何下載 Fuchsia 原始碼並設定 Fuchsia 開發作業 虛擬機器環境

步驟如下:

  1. 安裝必要的套件
  2. 執行預檢
  3. 下載 Fuchsia 原始碼
  4. 設定環境變數
  5. 設定防火牆規則 (選用)

1. 安裝必備套件

Fuchsia 需要 curlfileunzipgit 更新。版本 的 git 必須為 2.31 以上。

安裝 (或更新) 下列套件:

sudo apt install curl file git unzip

2. 執行預檢

Fuchsia 提供預檢工具 (ffx platform preflight)。 會檢查您的機器,如果發生任何問題 都不會影響從機器原始碼建構 Fuchsia

執行下列指令:

curl -sO https://storage.googleapis.com/fuchsia-ffx/ffx-linux-x64 && chmod +x ffx-linux-x64 && ./ffx-linux-x64 platform preflight

3. 下載 Fuchsia 原始碼

Fuchsia 提供啟動指令碼,可建立 目錄,然後下載名為 fuchsia 的 Fuchsia 原始碼 目錄。

下載 Fuchsia 原始碼需要約 2 GB 的空間 虛擬機器視建構設定而定,您需要 還有 80 到 90 GB 的空間此外, 下載程序會耗用大量記憶體。可以顯示廣告 藉此關閉非重要程序

如要下載 Fuchsia 來源,請按照下列步驟操作:

  1. 選取要下載 Fuchsia 原始碼的目錄,例如:

    cd $HOME
    
  2. 執行 bootstrap 指令碼:

    curl -s "https://fuchsia.googlesource.com/fuchsia/+/HEAD/scripts/bootstrap?format=TEXT" | base64 --decode | bash
    

    這個指令碼會建立 fuchsia 目錄並下載原始碼。

    如果您在測試期間看到 Invalid authentication credentials 錯誤 開機程序,請參閱驗證錯誤 的說明。

    如果網際網路連線速度較慢且運作逾時,您可能會希望 直接下載 Bootstrap 指令碼並增加 《-fetch-packages-timeout》和《-hook-timeout》。逾時時間為 ,並表示套件內容下載時間為 2 小時逾時。( 在下載 CIPD 套件時,-hook-timeout 的值會乘以 5)。

4. 設定環境變數

Fuchsia 建議您更新殼層設定檔,加入以下內容 動作:

  • .jiri_root/bin 目錄新增到 PATH

    Fuchsia 來源中的 .jiri_root/bin 目錄包含 jirifx 必備工具, Fuchsia 工作流程。Fuchsia 使用 jiri 工具管理 Fuchsia 專案,fx 工具則可協助您設定、建構、執行和 偵錯 Fuchsia。Fuchsia 工具鍊要求 jiri 必須可在 您的 PATH

  • 來源 scripts/fx-env.sh 檔案。

    雖然這並非必要 fx-env.sh 指令碼可讓許多 一些實用的 Shell 函式舉例來說,這項功能會建立 FUCHSIA_DIR環境變數,並提供 fd 指令 使用自動完成功能瀏覽目錄。(若需更多資訊,請參閱 fx-env.sh 中的註解)。

,瞭解如何調查及移除這項存取權。

如要更新殼層設定檔來設定 Fuchsia 的環境變數, :

  1. 使用文字編輯器開啟 ~/.bash_profile 檔案 (如下方範例的 請使用 Nano 文字編輯器):

    nano ~/.bash_profile
    
  2. ~/.bash_profile 檔案中新增下列程式碼:

    export PATH=~/fuchsia/.jiri_root/bin:$PATH
    source ~/fuchsia/scripts/fx-env.sh
    
  3. 儲存檔案並關閉文字編輯器。

  4. 如要更新環境變數,請執行下列指令:

    source ~/.bash_profile
    
  5. 確認您可以在 fuchsia 目錄沒有錯誤:

    jiri help
    
    fx help
    

5. 設定防火牆規則 (選用)

執行下列指令,允許主機機器上的 Fuchsia 特定流量:

fx setup-ufw

這個指令碼需要 sudo (要求您提供密碼) 才能設定適當的指令碼 防火牆規則(如要進一步瞭解這個指令碼,請參閱 setup-ufw)。

後續步驟

如要建構第一個 Fuchsia 系統映像檔,請參閱 設定及建構 Fuchsia

附錄

驗證錯誤

如果系統在啟動期間顯示 Invalid authentication credentials 錯誤 因此,您的 ~/.gitcookies 檔案可能包含來自 Bootstrap 指令碼想要匿名查看的 googlesource.com

如要解決這個錯誤,請按照下列其中一種做法進行:

  • 按照畫面上的指示取得指定密碼 與存放區
  • .gitcookies 檔案中刪除有問題的 Cookie。

在不更新路徑的情況下使用 Fuchsia

以下各節將提供導入 設定環境變數區段:

將該工具複製到二進位檔目錄

如果不想更新環境變數,但想將 jiri 更新為 可以在任何目錄中運作,請將 jiri 工具複製到 ~/bin 目錄, 範例:

cp ~/fuchsia/.jiri_root/bin/jiri ~/bin

不過,您必須擁有 ~/bin 目錄的寫入權限 (沒有 sudo)。如果 如果不是,jiri 就無法自行保持在最新狀態。

同樣地,如果您想在不更新環境的情況下使用 fx 工具 變數,請在 ~/bin 目錄中提供 fx 工具的符號連結,以便 範例:

ln -s ~/fuchsia/scripts/fx ~/bin

或者,您也可以直接使用其路徑執行 fx 工具,例如:

./scripts/fx help

不論是哪一種情況,您都需要在 PATH 中加入 jiri