最近, Canonical 的 CEO 发文说明了一下为什么他们要放弃 Unity 桌面环境. 先不管他说了什么, 且来提一提之前那些年 Ubuntu 上死了的商业化产品:

Ubuntu Music

这个在 2010 年前后出现的, 存活时间不过一两年, 之后就被 放弃了, 原因很简单, 用户基数不够, 付费用户更少, 而且本身 这个音乐商店里的资源也不够丰富.

Ubuntu One

估计是看到了 Dropbox 的火热, Canonical 也决心要搞个 类似的产品. 这个刚开始只可以在 Ubuntu 发行版上使用, 而且它的速度并不好, 再者, 跟 Ubuntu Music 一样, 付费 用户不多. 导致这项目很快就下马了.

Launchpad

这个开发者平台2010年之前是非常火热的, Linux 社区的很多 著名的开源项目都托管在这个平台, 而且它与 Ubuntu 桌面的 整合也很好. 举个例子, 我之前常用的 zim wiki, 开发者 可以在 launchpad 上面处理用户的反馈, 加入 PPA, 合并 其他人的国际化翻译 (i18n). 而对于用户来说, 如果要翻译 这个软件的某一些, 只需要在软件的菜单里面点一下 “翻译” 就可以跳转到 launchpad 上面翻译相应的语句.

更强大的是, launchpad 还自带了一个算不上差的版本管理 系统, bazzar. 当然, 如今天代码版本管理领域早已是 git 的 天下了. 但在当时, bzr 的用户也是成群结队的.

Mir 与 Unity

后来的某个时间点, Ubuntu 决定在 Gnome 桌面环境的基础之上, 创建自己的桌面环境, Unity, 为了统一电脑, 手机与平板等不同的 用户界面. 而且, 社区越来越感觉到 Ubuntu 愈加封闭, 当初因为 开源信念加入到 Canonical 的员工, 有不少陆续离职了.

那时, 因特尔的几个员工倒腾出了叫 Wayland 的显示服务器, 目的 是为了取代老旧的 X11, 因为后者的性能, 架构等已经严重赶不上 时代了.

但是, Ubuntu 宣布要基于此创建了衍生项目, Mir, 据说是因为 补丁合并的问题. 类似的问题还出现在 WebKit 与 chrome 之间, 后来谷歌也是基于 WebKit 创建了 Blink 项目, 并且在很短的时间 内在代码树上移除了为 Safari 提供的一些特性.

这项目在创立之初社区就不接受.

为什么会有这么多的桌面环境?

因为开发 Linux 桌面环境的成本并不高, 至少这样说, 开发出能用的 桌面环境, 并不难. 难的是打磨里面的细节.

但是, 这一些个桌面环境, 并没有为终端用户带来更多的价值, 因为用户 平日里使用电脑, 是为了使用里面的应用软件的, 比如浏览器, Office, 邮件客户端, IDE 等. 用的不是桌面环境.

用户需要的是一个稳定, 方便快捷, 占资源少, 好看的环境, 这个环境 不应该动不动就跳出来打扰用户. 不应该过多占用本就有限有屏幕空间.

为什么好用的 Linux 桌面软件屈指可数?

因为开发者在这平台很难赚到钱. 用户基数少, 付费用户更少. 相比而言, Windows 桌面或者安卓/iOS的移动平台, 都有数以亿计的用户.

Firefox OS, Samsung Tizen, Windows 这些个小众的移动操作系统, 也都渐渐退出了市场.

尽快桌面环境蛮多, 但是因为它们缺少一个统一的标准, 让用户为 Linux 桌面写一个好用的应用, 难上加难. 举例来说.

  • 如果要更改桌面显示的壁纸, 这个有统一接口吗?
  • 如果要注册一个全局快捷键, 这个有统一接口吗?
  • 如果要在下载任务没结束之前, 禁止系统休眠, 这个有统一接口吗?
  • 如果要在播放电影时, 禁止屏幕保护, 这个有统一接口吗?
  • 如果要在下载完成之后, 自动关机, 这个有统一接口吗?

Ubuntu 转而使用 Gnome, 带来了哪些好处?

社区的资源可以更加集中. 或许能更快地解决技术上的问题. 分裂的社区也 有了缓合的趋势.

Canonical 也丢掉了自己的包袝, Unity 项目的初衷, 作为一个统一的 桌面环境, 现在看来, 有这种想法的项目基本都死掉了. 连手握大量资源的 微软也宣布了退出移动端操作系统.

Canonical 现在可以有更多精力专注于服务器版, 云计算平台, 嵌入式 系统. 这些方向都是出路, 才能为它带来持续的高收益.