热门问题
时间线
聊天
视角
KDE
桌面環境與圖形化使用者介面 来自维基百科,自由的百科全书
Remove ads
KDE(/ˌkeɪdiːˈiː/)是一个国际性的自由软件社区[1],开发运行在Linux、BSD、Solaris、Microsoft Windows与macOS[2]等平台上的一系列跨平台应用程式。它最著名的产品是Plasma桌面,是许多Linux发行版的默认桌面环境,例如openSUSE[3]、Mageia、Kubuntu、PCLinuxOS与Chakra GNU/Linux。[4]
社群的目标是开发基本的桌面功能和日常必需的应用程式,以及提供开发者编写独立的应用程式的工具和文档。许多独立应用程式和规模较小的项目是基于KDE的技术,这些软件包括Calligra Suite、digiKam、Rekonq、K3b和许多其他应用程式。KDE软件是基于Qt框架所开发。
Remove ads
概况
KDE社区的工作可以用以下特征来衡量:
历史

KDE是由德国人Matthias Ettrich于1996年就读于蒂宾根大学开始的一个计划。当时,他忧心于Unix桌面没有一个应用程式外观、感受或工作方式和其他程序一样。他建议不仅是建立一套应用程式,而是一个桌面环境,用户可以得到统一的外观、感受和工作方式。他还希望这个桌面易于使用及更人性化;他当时对桌面应用的抱怨之一是对最终用户来说太复杂了。他在Usenet发表的文章引发了很大的回响,意味着KDE项目就此诞生了。[11]
KDE这个名字是来自于现有的Common Desktop Environment(CDE)的文字游戏,其用于Unix系统。CDE是一个由惠普、IBM和Sun透过X/Open公司共同开发的基于X11用户环境,接口和生产工具都基于Motif图形部件工具包。它被期望是一个直观易于使用的桌面电脑环境。[12]K原本代表“Kool”,但很快就决定K没有什么特别意义——因此KDE这个缩写扩展为“K Desktop Environment”。而这个意涵最终亦被废止,由于重塑品牌而提出“KDE=社区”的概念。

Mathias Ettrich选择使用Qt程序库开发KDE桌面系统,很快地他和其他志愿开发人员于1997年初发布了一些应用程式。[13]
在1998年7月12日,KDE 1发布。之后KDE 2发布,提出了重大技术改进。[14]KDE 3是远远大于以前的系列,包括6个主要版本。KDE 2和KDE 3之间的API变化则较少,即KDE 3可以被看作主要是延续KDE 2。KDE 4包含了许多新技术的变化。
2009年11月24日,KDE营销团队宣布正式更名KDE项目的组成部分。其动机是认为从建构桌面环境,转向一个“创造软件”社群的完整项目。更名重点在于不再强调桌面环境而“只是一个产品”,并强调社群与其他技术一起提供KDE软件。重新定位后,KDE不再是过去的K Desktop Environment缩写,现在充当不同软件组件的品牌。[15]
尽管KDE作为自由的开放源软件,但由于它使用了开放源始码但当时并非自由软件授权的Qt程序库,有许多人在担心日后可能会出现的著作权问题。
很庆幸地是,1998年11月之后,Qt程序库所属的Trolltech公司发布了第一份自由软件许可Q Public License(QPL)的Qt程序库授权。同年不久,KDE Free Qt基金会[16]保证假若Trolltech在任意连续12个月期间没有发布新的自由版本,那么Qt程序将更改为基于BSD许可证授权散布。
很多人依然争议著认为QPL授权与GPL上的条款会不兼容。Red Hat公司因此始终无法把KDE作为默认桌面,而Mandriva Linux即趁此时机凭借KDE袭卷了欧洲的市场;2000年9月,一个基于GPL协议的UNIX版Qt程序库成功发布,大部分用户方才对KDE生出信心。[17]
Qt 4.5在2009年3月3日发布,遵循了LGPL 2.1协议,放宽了KDE函数库的授权,使得平台下商业私有著作权程序的开发较原来自由[18][19]。
Remove ads
社群结构与特征

KDE社群的吉祥物是一个名为Konqi的小绿龙,在KDE软件的版本对话框、各种有关印刷物、会议演示文档和众多KDE的相关网站上均可见到他的身影。[20]Konqi有一位名为Katie的女朋友,代表了KDE女性成员。他们在KDE 4.0发布活动和KDE 2010活动中扮演他们的角色。[21]此外Konqi还有一些不同颜色,不同职业,不同随身物品和不同形状犄角的派生角色,各自对应在KDE社区不同方面活动的成员们。Kandalf这位巫师在1.x和2.x版本中曾是KDE社区的前吉祥物,但由于著作权问题(他与甘道夫相似)而被抛弃。现在的Konqi的外观由于Plasma 5的推出而正式重新设计,Tyson Tan的参赛作品(见右图)在KDE论坛上赢得重新设计比赛。[22]
KDE有一个community identity guidelines(CIG)来定义和建议,帮助社群建立独特的、有特色及吸引人的设计。[23]KDE官方标志是一个蓝色方形中有白色的K与齿轮。[24]KDE软件标签是给软件的开发者用的。证明他们是KDE社群的一分子,或者他们使用KDE平台。有包含包含三种KDE软件标签。被标为Powered by KDE软件标签代表此软件是KDE社群的主力软件并且源自KDE发展平台。使用KDE平台的应用程式则被选择标示为Built on the KDE Platform。应用程式标为Part of the KDE family则代表此应用程式作者为KDE社群中的一分子。[25]
-
Line art标志
-
Oxygen标志
-
Crystal标志
Remove ads
许多的KDE应用程式名称中有一个K字,多数是在第一个字母和大写表示。然而,有明显的例外如kynaptic和Amarok(以前称amaroK)。K在许多KDE应用程式来自于C或Q拼写单词不同,例如Konsole和Kuickshow。另外,一些是在一个常用词前缀上K,例如KOffice。但是在KDE 4应用程式和技术目前的趋势是名字中不包含K,如Plasma、Phonon和Dolphin。
KDE的财务和法律事宜由德国非营利组织 KDE e.V. 负责处理,该组织位于德国柏林。该组织还协助社区成员举办会议和会议。[26]KDE e.V. 帮助运营 KDE社区所需的伺服器,它拥有商标“KDE”和相应的徽标。它还支付会议的旅行费用和补贴活动。[27]组建的工作组旨在将KDE中的某些角色形式化,并改进KDE内部各部分的协调与通信工作。[28]KDE e.V.不影响软件开发。KDE e.V.的徽标由戴维·维诺尼提供。标志顶部的三个标志代表 KDE e.V.的三项主要任务:支持社区、代表社区、管理社区。[29]
KDE社区的开发者会议、伺服器和相关活动经常由个人、大学和企业赞助。[30]KDE e.V.的支持成员(英语:Supporting members)是通过财务或物质捐助支持KDE的特别成员。[31]支持会员有权在其网站或印刷材料上展示“KDE会员”徽标。KDE的赞助人(英语:Patron of KDE)是支持会员的最高级别,其也有权在其网站或印刷品上展示独家的“KDE赞助人”标志。[32]2006年10月15日,社区宣布马克·沙特尔沃思成为KDE的第一个赞助人。[33]2007年7月7日,又宣布英特尔公司和Novell公司也成为KDE的赞助商。[34]2010年1月,Google成为支持会员。 2010年6月9日,KDE e.V.推出了“加入游戏”活动。这项运动促进了成为个人支持成员的想法。它提供给那些想要支持KDE但没有足够的时间来这样做的人。欧洲自由软件基金会(FSFE)的创始人格奥尔·格雷夫首先“加入游戏”。[35]
在很多国家和地区,KDE同样拥有地方分支机构。这些组织可以是非正式组织(印度),也可以是具有像KDE e.V.一样具有法定形式(法国)。当地社区常常主办和维护区域性网站,组织当地活动,如贸易展览、参与者会议和社区会议。
Remove ads
贡献
和许多自由/开放原始码软件项目一样,KDE的开发主要是来自志愿者的贡献。尽管有各种公司,如Novell、诺基亚和Mandriva,雇用员工开发KDE。由于大量的个人贡献以各种方式(如代码、翻译、美工)给KDE,组织这样一个项目是十分复杂的。
KDE平台的整体方向由KDE核心团队(KDE Core Team)完成。这些开发人员在 KDE 内长时间做出重大贡献。该团队使用kde-core-devel邮件列表进行通信,该邮件列表公开存档且可读,但加入需要批准。 KDE没有一个可以否决重要决定的中央领导人。相反,KDE的核心团队由几十名参与者作出决定。这些决定不是通过正式投票,而是通过讨论。[36]开发人员还与专题团队一起组织。例如,KDE Edu团队开发免费教育软件。虽然这些团队主要独立工作,并不都遵循共同的发布时间表。每个团队都在IRC和邮件列表上都有自己的消息传递渠道。他们有导师计划以帮助初学者开始。[37][38]KDE社区目前使用Git版本控制系统。
2009年7月20日,KDE宣布已经向其Subversion版本库提交了第100万次提交。[39]2009年10月11日,KDE的主要开发人员Cornelius Schumacher[40]提及了(运用了SLOCCount与COCOMO模型)开发KDE软件包的工作量:4,273,291个LoC(代码行数),约为1,7536,4716美元。[41]此估算不包括Qt、Calligra Suite、Amarok、Digikam和其他不属于KDE核心的应用程式。
软件
KDE软件是基于Qt框架开发的,具备了可于多数的Unix及其他类Unix系统下运行的能力,此外还包括有苹果平台上的macOS系统和微软的Windows系统。目前使用的建构工具是CMake,并可以用在多个平台上。[42]gettext 用于作翻译。Doxygen 用来产生API文件。[43]
一开始,Matthias Ettrich就选择为KDE计划使用Trolltech的Qt框架。[44]其他开发者迅速开始了KDE/Qt应用的开发。到1997年初,一些应用已经被发布。1998年7月12日,称为KDE 1.0的桌面环境被发布,它是KDE环境的第一个版本。
这个工具包的原始GPL授权版本仅适用于使用X11显示伺服器的平台,但随着Qt 4的发布,LGPL授权的版本可用于更多的平台。这使得基于Qt 4或更新版本的KDE软件理论上可以被分发到微软Windows和苹果macOS平台。[45]
切换到Qt 5之后,原来被称为KDE或KDE SC的核心组件现由三部分组成:
- KDE Plasma:提供不同的工作平台
- KDE Frameworks:基于Qt的库,之前被称为“kdelibs”或“KDE Platform”(KDE 平台)
- KDE Applications:建构在KDE平台上的相关应用
KDE Plasma提供了一个统一的桌面环境,用于运行和管理普通电脑、上网本、平板电脑及智能电话等不同形式的应用程式。[46]
Plasma首先作为第四代KDE图形环境(KDE4 SC)的一部分引入。其后继者KDE Plasma 5于2014年7月15日发布,目前具有以下工作空间:
- 在普通电脑上工作的Plasma Desktop
- 在上网本上工作的Plasma Netbook
- 在电视和机顶盒上工作的Plasma Media Center
- 在平板电脑上工作的Plasma Active[47]
- 用于智能电话和普通触摸式装置的Plasma Mobile
在KDE 4 SC系列中,KDE平台(即 KDE Platform)由运行KDE应用程式所需的库和服务组成。当转换到Qt 5时,KDE平台被转换成现在被称为KDE框架(即KDE Frameworks)的模块化集合。所需的库包括Solid、Nepomuk、Phonon等,并且必须根据LGPL、BSD许可证、MIT许可证或X11许可证进行许可。[48]
虽然KDE框架主要是用C++编写的,但是它包含了同其他编程语言的接合模块。[49]它们使用以下通用技术:
- Smoke:用于同Ruby、C♯ 和PHP接合
- SIP:用于同Python接合
- Kross: C++应用程式的嵌入式脚本,支持 Ruby、Python、JavaScript、QtScript、Falcon和Java
稳定和成熟的接合模块可用于以下编程语言:[50]
KDE 应用程式(即 KDE Applications,它们包括 Okular、KTorrent、Kile 和KDE分区管理器)建立在KDE框架之上。KDE应用程式努力实现在各个操作系统之间的可移植性,并且独立于某种特定的工作空间或桌面环境。某些品牌识别的应用程式包常常由多个应用程式构建,例如 KDE Network、KDE Graphics 和 KDE Utilities。 某些应用程式是常规软件编译版本的一部分;其他应用程式则是Extragear的一部分,并按照自己的时间表发布。
KDE neon (页面存档备份,存于互联网档案馆)是一个以Ubuntu LTS作为核心的软件仓库。 它旨在为用户提供快速更新的Qt和KDE软件,同时以正常的速度更新Ubuntu库中的其余OS组件。[52][53]KDE 认为它并非是“KDE 发行版”,而是KDE/Qt软件包的最新版本。
它提供用户和开发者两种版本。
WikiToLearn(简称WTL)是KDE最新和最独特的努力之一。 它是一个基于MediaWiki(如维基百科)的百科,提供了一个平台来创建和共享开源教科书。这个计划的目标是创造一个人人都能使用并参与其中的庞大的教科书库。这个想法肇始于一群米兰大学物理专业的学生,他们一开始仅仅想要分享笔记。之后,他们决定分享给每个人而不仅仅是他们的朋友圈内。它现在是一个完整的KDE项目,许多大学都支持它。
与其他组织的合作
KDE还和各类组织、公司进行合作,如Google、维基媒体基金会等。
2005年6月23日,维基媒体基金会宣布KDE社群和基金会开始合作。[54]这次合作的成果包括Kate中MediaWiki的语法高亮,以及从KDE程序如Amarok和Marble访问维基百科的内容。

许多Linux发行版和其他自由的操作系统都参与了软件的开发、销售,因此它们也活跃于KDE社群。
参见
参考文献
外部链接
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads