歡迎您光臨本站 註冊首頁

未經授權擅自覆蓋軟體包,Linux Mint 放棄支援 Snap

←手機掃碼閱讀     admin @ 2020-07-14 , reply:0

上個月,隨著 Linux Mint 20 的釋出,Linux Mint 開始預設禁止安裝 snapd 工具。直接起因是,從 Ubuntu 19.10 開始,系統會直接從上游覆蓋 Chromium 的 APT 軟體包,然後自行下載 snapd 工具,隨即以 Snap 包的形式安裝 Chromium 瀏覽器。整個過程以 root 身份執行,自動安裝,並未獲取使用者授權。

在相當長的一段時間內,Linux Mint 是除 Ubuntu 之外擁有最多使用者的 Linux 發行版。基於 Ubuntu 和 Debian 的 Linux Mint 繼承了二者的眾多特性,它與 Ubuntu 的軟體庫也幾乎完全相容,並採用 APT(Advanced Packaging Tools,高階打包工具)進行軟體包管理。直到 2014 年,Ubuntu 推出 Snap,開始用 Snap 和 APT 並行分發軟體。

不同於傳統的 Linux 軟體包管理方法(如 APT 和 RPM),Snap 包含了軟體執行需要的所有依賴關係,並將其全部捆綁在一個系統映象中,這在一定程度上簡化了軟體管理過程。不僅如此,統一化的 Snap 軟體包能夠在不同 Linux 發行版上執行,開發者無需再針對不同的發行版分別構建,軟體部署的難度有所降低,軟體開發和最終部署之間的延遲也得以縮減。

Canonical 最初將 Snap 作為一份跨平臺解決方案提供出來,但如今在 Linux Mint 等看來,它本身更成為一個問題。事實上這並非 Linux Mint 團隊首次公開發聲,他們在一年前就表露過對 Snap 的擔憂:“當它無緣無故替換掉軟體包時,當它開始損害我們與上游專案和軟體供應商的互動,並使我們別無選擇時,它就成為了一種威脅。”

當時,Linux Mint 團隊表示希望與 Ubuntu 及 Snap 專案組進行協商。但一年後的現在,Ubuntu 20.04 中的 Chromium 軟體包仍然是一個空殼子,一切依舊指向 Ubuntu 的 Snap 應用商店。因此,Linux Mint 團隊決定,從 Linux Mint 20 開始,APT 將不再允許以 Snap 形式進行安裝。該版本會保留 Chromium 的空包,告知使用者緣由,並指引合適的獲取方法。

Linux Mint 宣佈不再支援 Snap 後,Canonical 終於給出公開回覆。Ubuntu 工程服務負責人 Alan Pope 針對此次衝突的起源——Chromium 軟體包事件——作出了迴應。

Pope 認為,Chromium 不是 Ubuntu 上的預設瀏覽器,使用者較少,受到的影響也不大。他提到 Chromium 每六週一個大版本,期間還有許多次要版本的高更新頻率,要為不同的 Ubuntu 版本及各類架構提供更新並非易事,而 Snap 能夠支援這樣高頻率的更新。使用者通過 Snap 也能夠並行安裝穩定版、測試版或開發版等多個不同發行版。

不過,整個事件的爭議焦點不在於此,不止 Chromium 會遇到這種情況,Canonical 對 gnome-software deb 軟體包也施加了同樣的方法。Canonical 推行 Snap 不完全是為了幫助簡化軟體包管理過程,更是為了自己的使用者群增長做考慮。

確實,為 Linux 桌面構建應用存在困難。前 KDE 董事會成員 Frank Karlitschek 在 2019 年的 Linux 應用峰會上曾坦言 “Linux 應用程式只有四到五百個,macOS 和 Windows 上卻有數萬個”。Linus Torvalds 也在去年感慨 “The Linux desktop is in trouble”(Linux 桌面陷入了困境),因為“我們沒有一個標準化的 Linux 桌面”,對於許多開發者來說,這是一大阻礙因素。

真正惹惱 Linux Mint 的,是 Canonical 對待 APT 軟體包的態度,和剝奪使用者權利的壟斷式行為。Linux Mint 團隊用 Spotify 做例證:當一個 Fedora 使用者想要安裝 Spotify 時,會被跳轉至 snapcraft 頁面。與此同時,Spotify 不再提供 RPM 軟體包、appimage、Flatpak 或其他格式,使用者別無選擇,只能從 Snap Store 下載。

常與 Snap 一同被提起的 Flatpak 也被 Linux Mint 團隊拿來作比較。相對而言,Flatpak 更加自由,它允許任何人建立商店,它的客戶端也能夠與多個商店建立聯絡,當雙方意見不合時,開發者可以選擇建立自己的 Flatpak 商店,而不一定要在 Flathub 釋出應用。

相較而言,Snap 釋出之初就只有一個客戶端,無法與多個伺服器通訊,這樣的模式讓 Linux Mint 團隊從一開始就感到擔憂。起初,他們以為,“只要 Snap 沒有成為 Linux 的釋出標準,只要開發者持續分發軟體包,只要 Snap 不影響到已經擁有的東西,就可以了”。如今事情的發展顯然不在預期。

在 Linux Mint 團隊看來,原先使用的 apt/dpkg 等軟體包管理器更成熟,也更為自由軟體著想,不商業化,涉及的東西沒有那麼多,只要給使用者授權並提供發行版就好。而 Snap 包無法被修改、重構、打補丁或是映象。現在 Snap 甚至做得過頭了,藉由 APT 軟體包來安裝自己受商業控制的軟體包管理系統,這完全打破了 Snap "永遠不會取代 APT" 的承諾。

一年前釋出的部落格文章中,Linux Mint 的負責人 Clement 曾指出 Snap 的好處:可以提供 Linux 之前無法訪問到的軟體。他表示“希望有一天可以將 snap 整合到 Linux Mint 中,儘管市場可能會受到影響”。目前,尚不清楚雙方是否還會展開對話,以找尋合適的解決方案。

借 LWN.net 之言,“希望 Linux Mint 的這一舉措能夠促使事情朝著更開放的方向發展,以開放形式實現的 Snap 打包系統將會是整個 Linux 社群的勝利”。


[admin ]

來源:OsChina
連結:https://www.oschina.net/news/117171/linux-mint-forbid-snapd
未經授權擅自覆蓋軟體包,Linux Mint 放棄支援 Snap已經有122次圍觀

http://coctec.com/news/soft/show-post-242994.html