1

近日,“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...


MissD
955 声望40 粉丝