unsnap,將 Ubuntu 從 Snap 遷移到 Flatpak 的優秀工具

解開

unsnap,一個將snap包遷移到flatpak的工具

Snap 是 Canonical 開發的軟件包系統。 適用於 Ubuntu,可以在使用 Linux 內核和 systemd init 系統的操作系統上實現。

這個包系統s 被呈現為一個“通用”系統, Canonical 對其進行了很大的推廣,以至於在為 Ubuntu 設計的新版本中,它放棄了對 Flatpak 的支持,從而為其軟件包系統賭上了一切。

另一方面也 Canonical 決定發布完全在 Snap 上的 Ubuntu 版本。 這是一條不受很多人喜歡的消息,並且在社區中產生了分歧,因為 Snap 軟件包沒有被完全接受。

在此之前 為了促進 Flatpak 封裝的使用,已經出現了各種運動。 支持 Flatpak 格式的項目之一是 unsnap,它是作為一種工具開發的,用於將基於 Ubuntu 的系統從使用 snap 包轉換為 flatpak 包。

該實用程序不僅用 flatpak 替換了 snap 包管理器,而且還為系統上已安裝的 snap 包選擇並安裝了 flatpak 對應項。 在理想情況下,用戶可以獲得一組完全相似的應用程序,但以 flatpak 格式安裝。

關於取消捕捉

遷移分幾個步驟完成。 在第一步中, unsnap 生成一組描述替換操作的 shell 腳本。 考慮到系統的當前狀態,創建單獨的腳本來備份 snap 環境,安裝 flatpak 包管理器,激活 flatpak 存儲庫,為系統上已有的 snap 包安裝 flatpak 類似物,刪除 snap 包和 snapd 系統工具包。 在執行自動生成的腳本之前,用戶可以根據自己的喜好對其進行編輯。

該項目是由 Alan Pope 開發Snap 系統的開發人員之一,在 Canonical 工作 2021 年後於 10 年離開。 該工具集仍處於實驗性(pre-alpha)狀態,並且僅限於 Ubuntu 支持。

在相關項目中,unsnap 作者提到了 custom-desktop(一組用於轉換已安裝的 Ubuntu 環境的組成的腳本)和 deb-get(類似於 apt-get,用於處理位於第三方存儲庫中的 deb 包)或在網站上)。

除了包管理器之外,deb-get 項目還提供了可立即安裝的第三方包元數據,可用於將 snap 包替換為 deb 包。

Unsnap可以自動運行一組腳本 生成:

  • 00-backup :為每個正在遷移的已安裝快照運行快照保存
  • 01-install-flatpak :如果尚未安裝,它將安裝 flatpak 包管理器
  • 02-enable-flathub :如果未啟用,將在 flatpak 中添加 flathub 遠程位置
  • 03-install-flatpaks :為每個已識別的插件安裝等效的 flatpaks
  • 04-remove-snaps :刪除已安裝 flatpaks 的 snaps
  • 99-remove-snapd :單獨刪除snapd,這將刪除所有snap包

提到未來,unsnap 計劃支持其他兼容 snap 的發行版,例如 Manjaro、Linux Mint、Zorin、Debian、Fedora、Pop_OS!、KDE ​​Neon、Raspbian、CentOS 和 Elementary OS。 用戶可能還對該項目以 snap 和 flatpak 格式準備的模擬包列表感興趣。

如何在 Ubuntu 上安裝 unsnap?

對於那些有興趣在自己的系統上安裝此工具的人,他們應該知道安裝非常簡單,打開一個終端就足夠了,然後在其中輸入以下內容:

git clone https://github.com/popey/unsnap
cd unsnap
./unsnap

Unsnap 的工作過程分為兩個階段。 最初, Unsnap 生成一組負責執行遷移的腳本 從 snap 包到 Flatpak 都是真實的。 此功能允許用戶在執行之前查看並在必要時編輯腳本,以根據需要驗證或修改它們。

腳本生成後,用戶可以依次運行腳本來完成遷移過程。

或者,如開頭所述,如果您希望執行所有腳本,只需鍵入:

./unsnap auto

最後,值得一提的是,與任何遷移過程一樣,建議對重要信息進行備份,因為它會刪除和安裝應用程序,這也需要刪除信息。

如果您有興趣了解更多信息,可以查看詳細信息 以下鏈接。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。