1995年8月,微软发布了Windows 95并改变了现代PC桌面环境。在当时,Windows 3.x看起来是笨拙而丑陋的,Windows 95显然更为流畅好看。更重要的是,Windows 95改变了人们对桌面的定义。
Windows 95桌面意味着集成。程序管理器消失了,取而代之的是屏幕底部的任务栏,可以使用更简单的“开始”菜单启动新程序。与之前版本的Windows甚至其他Linux窗口管理器相比,Windows 95界面更加灵活且易于使用。
▲Windows 95上的记事本编辑器
Linux开发人员不甘示弱,创建了一个模仿Windows 95界面的新版FVWM,并称为FVWM95。新的窗口管理器仍然不是桌面,但它看起来比以前好得多。用户可以在任务栏中使用“开始”菜单启动新的X程序,任务栏还使用类似于Windows 95的按钮显示正在运行的程序。
▲Red Hat Linux 5.2上的FVWM95
虽然FVWM95和其他窗口管理器在不断改进,但核心问题仍然存在:Linux并没有真正拥有桌面。它只有一系列窗口管理器罢了。
首个Linux桌面1996年,Matthias Ettrich 希望将所有内容集成在一起,就像一个真正的桌面一样。于是他开始研究K桌面环境(KDE),并于1998年7月完成。KDE 1.0比FVWM95这样的普通窗口管理器有了明显的改进。
▲KDE 1.0
KDE代表着Linux的一大进步,从此Linux拥有了真正的桌面应用程序集成和更现代的桌面图标。
KDE的设计与Windows 95相差无几。它在屏幕底部有一个任务栏,提供了相当于Windows 95的开始菜单以及几个应用程序的快捷方式。此外,KDE还支持虚拟桌面。
但并非所有人都对KDE感到满意。为了从系统中抽象GUI,KDE使用了Trolltech的Qt工具包库。不幸的是,Qt没有在免费软件许可下发布。Trolltech允许Qt在免费软件应用程序中免费使用,但在商业或专有应用程序中使用它需要付费。这使Linux发行版陷入两难抉择:应该包含KDE吗?或者默认使用较旧但免费的软件图形用户界面,如FVWM?
很快,事情有了新的变化。Miguel de Icaza和Federico Mena于1997年开始为新的Linux桌面工作。这个新项目被称为GNOME,用于GNU网络对象模型环境。GNOME旨在成为完全免费的软件,并使用来自GIMP图像编辑器的不同工具包,即GTK(GIMP Tool Kit)。
当GNOME 1.0最终在1999年发布时,Linux又拥有了一个现代桌面环境。
▲GNOME 1.0
此后,KDE与GNOME的竞争持续了一段时间。转眼来到1999年,Trolltech根据新的公共许可证——Q公共许可证(QPL)重新发布了Qt库。但新许可证仍然有所限制,QPL仅适用于Qt在开源软件项目中的使用,而非商业项目。因此,自由软件基金会认为QPL与GNU通用公共许可证(GNU GPL)不兼容。这个许可问题将一直持续到Trolltech在2000年GNU GPL第2版下重新发布Qt库。