近日,“Linux 之父” Linus Torvalds 在 7 年前某會議上對桌面版 Linux 所存在問題進行“吐槽”的視訊,再次被網友和媒體們挖了出來,由此引發了熱議。
視訊中,Linus 強調:亂改核心,造成應用程式不相容,這才是桌面版 Linux 最糟糕的問題所在!
眾所周知,Linus 向來以犀利、激進的言語而聞名。去年,Linus 還對 Intel 的 Advanced Vector Extensions 512(AVX-512)指令集提出了一些激進看法,稱其為“功率病毒”,並怒噴 Intel 直言“去死”。
而在這個視訊中,Linus 就直指各大 Linux 桌面發行版的程式相容性問題,並強調了該問題將給開發者和普通使用者帶來的很多糟糕體驗。
首先,Linus 指出了Linux 分裂的一個重要原因:每個發行版都在隨意地修改 glibc 庫,改變底層 API。
由於這些 API 的差別導致應用開發者無法為 “Linux” 平臺建立一個通用的包,因此應用的二進位制檔案通常只能適用於某個發行版。
我們知道,Linus 一直以來都在呼籲且要求各版本的 Linux 儘量不要更改核心,不能破壞使用者空間,但現實中基本沒人遵守這個原則。
Linus 表示,自己也參與了一個聊天軟體的開發,為 Windows 和 OSX 製作了二進位制檔案包,但“我一般不為 Linux 桌面製作二進位制檔案,不同的 Linux 發行版有不同的規則,因為給不同版本的 Linux 做適配真他X的痛苦。”
其次,API 的變動也會讓一些桌面版 Linux 在向後相容方面變得很差,Linus 稱這會給非開發者的普通使用者帶來很不好的互動體驗。
最後,Linus 也談到了桌面版 Linux 在包管理上浪費了太多精力,以及 SteamOS 對桌面 Linux 發行版的影響等。
其實,這已經不是 Linus 第一次“吐槽”所謂桌面版 Linux “爛”了。
在過去的 20 年裡,我們一直聽說桌面版 Linux 將如何在“5 年”內成為主流的話題。但與此同時,Linus 也花了 20 年時間,試圖向那些“狂熱的”桌面版 Linux 作業系統使用者解釋——Linux 根本不是為普通桌面作業系統使用者設計的,而是為開發者、IT 專家和程式設計師而設計的。
所以,我們看到了這條 Linus 在 7 年前 DebConf14 上的視訊。
但今天看來,Linus 當初提出的程式相容性問題不僅沒解決,新 Linux 版本又在不斷的分裂 Linux 軟體生態,這屬實很無奈。
好在,我們也看到了一些好的方面的改進,比如 Snap、 Flatpak 這種跨 Linux 版本的統一包管理程式。
其中,snap 包中含有軟體的二進位制檔案和其所需的所有依賴和庫,因此可無視軟體版本、在任意 Linux 發行版上安裝軟體。
而 Flatpak 作為分發桌面應用的新框架,可讓開發者完全擺脫為不同 Linux 發行版打包分發應用的這些負擔,只需構建一個 Flatpak app 就可以在多種發行版上安裝使用。
以上這些方法,都能很好的解決了 linux 軟體安裝時煩人的依賴問題。
如果你也正考慮將 Linux 作為自己的主要桌面作業系統,那麼可以先看看來自 Linus Torvalds “吐槽”該問題的完整視訊。
(https://www.reddit.com/r/prog...)