名列最佳Linux版本的Linux Mint發行版,官方在本月的更新訊息中提到,從Linux Mint 20開始,在預設情況下,APT將會禁止安裝snapd工具,APT不會允許儲存庫套件代表使用者安裝Snap套件,此舉是為了避免系統在未經用戶授權就安裝Snap套件管理系統。

官方提到,Linux Mint 20的Chromium套件將會是一個空套件,當用戶試圖安裝Chromium時,系統會跳出說明,告訴用戶該套件為空的原因,並且指引用戶取得Chromium的方法。Linux Mint發行版是以Debian和Ubuntu為基礎,繼承了大量來自兩個版本的套件,這些套件是以APT(Advanced Package Tool)打包,而Ubuntu在2014年的時候,開始並用Snap技術與APT發布軟體。

Snap是由Canonical開發的自包含的套件部署系統,由於系統映像檔snapd能夠綑綁軟體執行所需要的所有相依項目,因此讓管理應用程式相依項目變得簡單,軟體開發商能以簡單的方法發布軟體,讓軟體可以於存在不相容函式庫的系統上執行,甚至一個系統可以同時存在,多個使用不同相依項目的同一軟體。Snap解決跨Ubuntu版本的軟體支援問題,而且還能讓Canonical所發布的套件,在其他Linux發行版上執行。

Linux Mint官方提到,當Fedora用戶想要安裝Spotify,則系統會提示用戶並且跳轉到https://snapcraft.io/spotify,要求用戶從Canonical的Snap商店中安裝,Spotify不再釋出RPM套件、Appimage、Flatpak或其他套件格式,當用戶沒有其他選擇,就只能被迫使用Snap。

雖然Snap角色如同Appimage和Flatpak,可以簡單地向不同的發行版發布軟體,但是比起Snap,Linux Mint官方表示,Flatpak自由的多,而且更具開放多元精神,Flatpak允許任何人創建商店,而且Flatpak客戶端也能夠與多個商店溝通,軟體廠商可以選擇在Flathub發布軟體,在理念不合的時候,廠商能創建自己的Flatpak商店發布軟體。

不過,Snap推出的時候就僅有一個客戶端,無法與其他伺服器溝通,Linux Mint在當時就對此感到擔憂,但是他們認為,只要Snap沒有成為主流,且軟體廠商繼續發布其他格式的套件,那Linux Mint支援Snap也沒有關係。

Canonical在去年改變套件發布的方式,此作法將會影響套件生態的多元性,而讓Linux Mint跳腳的事件是,Ubuntu所發布的Chromium瀏覽器套件,使Linux Mint感受到了危機,Ubuntu置換掉原本的Chromium儲存庫套件,以Snap的形式安裝Chromium,也就是當使用者安裝APT(Advanced Package Tool)更新的時候,系統會先安裝Snap套件管理工具,接著才安裝Snap上的Chromium的套件,這使得Snap成為安裝Chromium的必要工具,而且這個安裝過程是以Root身份執行,不需要用戶參與或是授權。

這種情況不只發生在Chromium,Canonical也在gnome-software套件採取相同的方法,而Linux Mint在意的點是,用戶使用APT安裝軟體,卻必須要先安裝一個由受商業控制的套件管理系統,Linux Mint官方提到,這件事印證了當初Snap宣布時開發人員的擔心,也破壞了Canonical保證不會取代APT的承諾。經過一年協調未果,官方決定不在Linux Mint上支援Snap。


Advertisement

更多 iThome相關內容