Flatpak打包更新(4)——開始使用:構建第一個Flatpak

參考:http://docs.flatpak.org/

本教程提供了對flatpak的快速介紹。在這篇文章中,您將學習如何創建一個可以安裝並運行的基本Flatpak應用程序。
要完成本教程,您應該按照指南安裝flatpak。您還需要擁有flatpak-builder工具,該工具通常作爲一個包提供。

1. 添加manifest

flatpak-builder的輸入是一個JSON文件,它描述了構建應用程序的參數。這被稱爲清單。以下示例是gnome字典應用程序的清單:

{
  "app-id": "org.gnome.Dictionary",
  "runtime": "org.gnome.Platform",
  "runtime-version": "3.26",
  "sdk": "org.gnome.Sdk",
  "command": "gnome-dictionary",
  "finish-args": [
     "--socket=x11",
     "--share=network"
  ],
  "modules": [
    {
      "name": "gnome-dictionary",
      "sources": [
        {
          "type": "archive",
          "url": "https://download.gnome.org/sources/gnome-dictionary/3.26/gnome-dictionary-3.26.0.tar.xz",
          "sha256": "387ff8fbb8091448453fd26dcf0b10053601c662e59581097bc0b54ced52e9ef"
        }
      ]
    }
  ]
}

可以看出,該manifest包含有關應用程序的基本信息,其中包括:

  • app-id - 應用 ID
  • runtime - 運行時提供了運行應用程序的環境,以及它可以使用的基本依賴關係
  • sdk - 該軟件開發工具包是具有開發文件和頭文件的運行時版本;這是構建應用程序所必需的
  • command - 用於運行應用程序的命令
  • finish-args - 配置選項,使應用程序可以訪問沙盒外的資源;在這種情況下,應用程序正在接入網絡並訪問x11顯示服務器

manifest的下一部分是modules列表。這描述了要作爲構建過程的一部分構建的每個模塊。其中一個模塊始終是應用程序。其他可以是作爲應用程序的一部分捆綁在一起的庫和其他資源。

模塊源可以有幾種類型,包括.tar.zip壓縮文件,Git或Bzr庫。在這個案例中,只有一個模塊,它是一個將被下載和構建的.tar文件。

字典manifest的模塊部分很短,因爲只建立一個模塊:應用程序本身。

爲字典創建manifes,創建一個名爲org.gnome.dictionary.json的文件,並把上面的JSON代碼粘貼進去。

2.運行構建

要使用manifest構建字典應用程序,請運行以下命令:

$ flatpak-builder --repo=tutorial-repo dictionary org.gnome.Dictionary.json

這個命令執行以下操作:

  • 創建一個名爲dictionary的新文件夾
  • 下載並驗證字典源代碼
  • 在SDK中而不是主機系統中構建並安裝源代碼
  • 通過設置權限來完成構建(在這個案例中,可以訪問x11和網絡)
  • 創建一個名爲repo的新存儲庫(如果它不存在)並將生成的構建導出到其中

flatpak-builder還會做一些其他有用的事情,比如創建一個可單獨安裝的調試運行時(本例中稱爲org.gnome.dictionary.debug)和一個可單獨安裝的翻譯運行時(稱爲org.gnome.dictionary.locale)。

3.創建一個新的存儲庫

要測試已構建的應用程序,需要添加已創建的新存儲庫:

$ flatpak --user remote-add --no-gpg-verify --if-not-exists tutorial-repo tutorial-repo

4.安裝應用

下一步是從存儲庫安裝字典應用程序。要做到這一點,運行:

$ flatpak --user install tutorial-repo org.gnome.Dictionary

要檢查應用程序是否已成功安裝,可以將安裝的應用程序的sha256提交與flatpak-builder打印的提交ID進行比較:

$ flatpak info org.gnome.Dictionary
$ flatpak info org.gnome.Dictionary.Locale

5.運行應用

最後,你可以運行你構建的應用程序:

$ flatpak run org.gnome.Dictionary

其餘文檔提供了使用flatpak-builder的完整指南。如果是flatpak的新手,建議先看flatpak介紹

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章