KDE

KDE（ˌ）是一個國際性的自由軟體社區，開發運行在Linux、BSD、Solaris、Microsoft Windows與macOS等平台上的一系列跨平台應用程式。它最著名的產品是Plasma桌面，是許多Linux發行版的預設桌面環境，例如openSUSE、Mageia、Kubuntu、PCLinuxOS。

社群的目標是開發基本的桌面功能和日常必需的應用程式，以及提供開發者編寫獨立的應用程式的工具和文檔。許多獨立應用程式和規模較小的項目是基於KDE的技術，這些軟體包括Calligra Suite、digiKam、Rekonq、K3b和許多其他應用程式。KDE軟體是基於Qt框架所開發。

多個國家的政府部門使用KDE軟體，興建於瑞士的大型強子對撞機也使用KDE軟體。

## 概況

KDE社區的工作可以用以下特徵來衡量：

- KDE是最大的自由軟體社區之一。
- 超過1800名貢獻者參與開發KDE軟體。每月大約20位新開發者貢獻他們的第一行代碼。
- KDE軟體包含600多萬行代碼（不包括Qt）。
- KDE軟體被翻譯成超過108種語言。
- KDE軟體可在超過34個國家和地區的114多個官方FTP鏡像中使用。
- 在Github上可以找到所有儲存庫的唯讀映像。

## 歷史

### 起源

<image>

KDE是由德國人Matthias Ettrich於1996年就讀於蒂賓根大學開始的一個計劃。當時，他憂心於Unix桌面沒有一個應用程式外觀、感受或工作方式和其他程式一樣。他建議不僅是建立一套應用程序，而是一個桌面環境，使用者可以得到統一的外觀、感受和工作方式。他還希望這個桌面易於使用及更人性化；他當時對桌面應用的抱怨之一是對最終使用者來說太複雜了。他在Usenet發表的文章引發了很大的迴響，意味著KDE項目就此誕生了。

KDE這個名字是來自於現有的Common Desktop Environment（CDE）的文字遊戲，其用於Unix系統。CDE是一個由惠普、IBM和Sun透過X/Open公司共同開發的基於X11使用者環境，介面和生產工具都基於Motif圖形部件工具包。它被期望是一個直觀易於使用的桌面電腦環境。K原本代表「Kool」，但很快就決定K沒有什麼特別意義——因此KDE這個縮寫擴展為「K Desktop Environment」。而這個意涵最終亦被廢止，由於重塑品牌而提出「KDE=社區」的概念。

### 產品發布

<image>

Mathias Ettrich選擇使用Qt程式庫開發KDE桌面系統，很快地他和其他志願開發人員於1997年初發佈了一些應用程序。

在1998年7月12日，KDE 1發佈。之後KDE 2發布，提出了重大技術改進。KDE 3是遠遠大於以前的系列，包括6個主要版本。KDE 2和KDE 3之間的API變化則較少，即KDE 3可以被看作主要是延續KDE 2。KDE 4包含了許多新技術的變化。

### 品牌重新定位

2009年11月24日，KDE行銷團隊宣布正式更名KDE專案的組成部分。其動機是認為從建構桌面環境，轉向一個｢創造軟體｣社群的完整專案。更名重點在於不再強調桌面環境而「只是一個產品」，並強調社群與其他技術一起提供KDE軟體。重新定位後，KDE不再是過去的K Desktop Environment縮寫，現在充當不同軟體組件的品牌。

### 授權風波

儘管KDE一開始就是自由軟體，但由於它早期使用專有的Qt程序庫，自由軟體開發者如斯托曼在擔心日後可能會出現版權問題，這也是GNU計劃開發GNOME的原因。

很慶幸地是，1998年11月之後，Qt程序庫所屬的Trolltech公司發佈了第一份自由軟體許可Q Public License（QPL）的Qt程序庫授權。同年不久，KDE Free Qt基金會保證假若Trolltech在任意連續12個月期間沒有釋出新的自由版本，那麼Qt程序將更改為基於BSD許可證授權散佈。

法律上講，雖然同為自由軟體許可證，但是QPL授權與GPL上的條款不相容。Red Hat公司因此始終無法把KDE作為默認桌面，而Mandriva Linux即趁此時機憑藉KDE襲捲了歐洲的市場；2000年9月，一個基於GPL協議的UNIX版Qt程序庫成功釋出，大部份使用者方才對KDE生出信心。

Qt 4.5在2009年3月3日發布，遵循了LGPL 2.1協議，放寬了KDE函數庫的授權，使得平臺下商業私有版權程式的開發較原來自由。

## 社群結構與特徵

<image>

### 吉祥物與標誌

KDE社群的吉祥物是一個名為Konqi的小綠龍，在KDE軟體的版本對話框、各種有關印刷物、會議演示文檔和眾多KDE的相關網站上均可見到他的身影。Konqi有一位名為Katie的女朋友，代表了KDE女性成員。他們在KDE 4.0發布活動和KDE 2010活動中扮演他們的角色。此外Konqi還有一些不同顏色，不同職業，不同隨身物品和不同形狀犄角的派生角色，各自對應在KDE社區不同方面活動的成員們。Kandalf這位巫師在1.x和2.x版本中曾是KDE社區的前吉祥物，但由於版權問題（他與甘道夫相似）而被拋棄。現在的Konqi的外觀由於Plasma 5的推出而正式重新設計，Tyson Tan的參賽作品（見右圖）在KDE論壇上贏得重新設計比賽。

KDE有一個community identity guidelines（CIG）來定義和建議，幫助社群建立獨特的、有特色及吸引人的設計。KDE官方標誌是一個藍色方形中有白色的K與齒輪。KDE軟體標籤是給軟體的開發者用的。證明他們是KDE社群的一分子，或者他們使用KDE平台。有包含包含三種KDE軟體標籤。被標為Powered by KDE軟體標籤代表此軟體是KDE社群的主力軟體並且源自KDE發展平台。使用KDE平台的應用程式則被選擇標示為Built on the KDE Platform。應用程式標為Part of the KDE family則代表此應用程式作者為KDE社群中的一份子。

<image>

- Line art標誌

<image>

- Oxygen標誌

<image>

- Crystal標誌

### 應用命名

許多的KDE應用程序名稱中有一個K字，多數是在第一個字母和大寫表示。然而，有明顯的例外如kynaptic和Amarok（以前稱amaroK）。K在許多KDE應用程序來自於C或Q拼寫單詞不同，例如Konsole和Kuickshow。另外，一些是在一個常用詞前綴上K，例如KOffice。但是在KDE 4應用程序和技術目前的趨勢是名字中不包含K，如Plasma、Phonon和Dolphin。

### 組織與社區

KDE的財務和法律事宜由德國非營利組織 KDE e.V. 負責處理，該組織位於德國柏林。該組織還協助社區成員舉辦會議和會議。KDE e.V. 幫助運營 KDE社區所需的伺服器，它擁有商標「KDE」和相應的徽標。它還支付會議的旅行費用和補貼活動。組建的工作組旨在將KDE中的某些角色形式化，並改進KDE內部各部分的協調與通信工作。KDE e.V.不影響軟體開發。KDE e.V.的徽標由戴維·維諾尼提供。標誌頂部的三個標誌代表 KDE e.V.的三項主要任務：支持社區、代表社區、管理社區。

KDE社區的開發者會議、伺服器和相關活動經常由個人、大學和企業贊助。KDE e.V.的支持成員（Supporting members）是通過財務或物質捐助支持KDE的特別成員。支持會員有權在其網站或印刷材料上展示「KDE會員」徽標。KDE的贊助人（Patron of KDE）是支持會員的最高級別，其也有權在其網站或印刷品上展示獨家的「KDE贊助人」標誌。2006年10月15日，社區宣布馬克·沙烏地爾沃思成為KDE的第一個贊助人。2007年7月7日，又宣布英特爾公司和Novell公司也成為KDE的贊助商。2010年1月，Google成為支持會員。2010年6月9日，KDE e.V.推出了「加入遊戲」活動。這項運動促進了成為個人支持成員的想法。它提供給那些想要支持KDE但沒有足夠的時間來這樣做的人。歐洲自由軟體基金會（FSFE）的創始人格奧爾·格雷夫首先「加入遊戲」。

在很多國家和地區，KDE同樣擁有地方分支機構。這些組織可以是非正式組織（印度），也可以是具有像KDE e.V.一樣具有法定形式（法國）。當地社區常常主辦和維護區域性網站，組織當地活動，如貿易展覽、參與者會議和社區會議。

## 貢獻

和許多自由/開放源碼軟體專案一樣，KDE的開發主要是來自志願者的貢獻。儘管有各種公司，如Novell、諾基亞和Mandriva，僱用員工開發KDE。由於大量的個人貢獻以各種方式（如代碼、翻譯、美工）給KDE，組織這樣一個專案是十分複雜的。

### 開發團隊

KDE平台的整體方向由KDE核心團隊（KDE Core Team）完成。這些開發人員在 KDE 內長時間做出重大貢獻。該團隊使用kde-core-devel郵件列表進行通信，該郵件列表公開存檔且可讀，但加入需要批准。KDE沒有一個可以否決重要決定的中央領導人。相反，KDE的核心團隊由幾十名參與者作出決定。這些決定不是通過正式投票，而是通過討論。開發人員還與專題團隊一起組織。例如，KDE Edu團隊開發免費教育軟體。雖然這些團隊主要獨立工作，並不都遵循共同的發布時間表。每個團隊都在IRC和郵件列表上都有自己的消息傳遞渠道。他們有導師計劃以幫助初學者開始。KDE社區目前使用Git版本控制系統。

2009年7月20日，KDE宣布已經向其Subversion版本庫提交了第100萬次提交。2009年10月11日，KDE的主要開發人員Cornelius Schumacher提及了（運用了SLOCCount與COCOMO模型）開發KDE軟體包的工作量：4,273,291個LoC（代碼行數），約為1,7536,4716美元。此估算不包括Qt、Calligra Suite、Amarok、Digikam和其他不屬於KDE核心的應用程式。

## 軟體

KDE軟體是基於Qt框架開發的，具備了可於多數的Unix及其他類Unix系統下運行的能力，此外還包括有蘋果平臺上的macOS系統和微軟的Windows系統。目前使用的建構工具是CMake，並可以用在多個平台上。gettext 用於作翻譯。Doxygen 用來產生API文件。

### 發行版總覽

版本｜日期｜資訊

1996年10月14日｜KDE宣布開發

1.0｜1998年7月12日

2.0｜2000年10月23日

3.0｜2002年4月3日

4.0｜2008年1月11日

4.0後版本｜2014年7月15日｜之前的KDE/KDE SC 被分成 KDE Plasma、 KDE Frameworks 和 KDE Applications 三個部分

一開始，Matthias Ettrich就選擇為KDE計劃使用Trolltech的Qt框架。其他開發者迅速開始了KDE/Qt應用的開發。到1997年初，一些應用已經被發布。1998年7月12日，稱為KDE 1.0的桌面環境被發布，它是KDE環境的第一個版本。

這個工具包的原始GPL授權版本僅適用於使用X11顯示伺服器的平台，但隨著Qt 4的發布，LGPL授權的版本可用於更多的平台。這使得基於Qt 4或更新版本的KDE軟體理論上可以被分發到微軟Windows和蘋果macOS平台。

切換到Qt 5之後，原來被稱為KDE或KDE SC的核心組件現由三部分組成：

- KDE Plasma：提供不同的工作平台
- KDE Frameworks：基於Qt的庫，之前被稱為「kdelibs」或「KDE Platform」（KDE 平台）
- KDE Applications：建構在KDE平台上的相關應用

### KDE Plasma

KDE Plasma提供了一個統一的桌面環境，用於運行和管理普通電腦、上網本、平板電腦及智慧型手機等不同形式的應用程式。

Plasma首先作為第四代KDE圖形環境（KDE4 SC）的一部分引入。其後繼者KDE Plasma 5於2014年7月15日發布，目前具有以下工作空間：

- 在普通電腦上工作的Plasma Desktop
- 在上網本上工作的Plasma Netbook
- 在電視和機頂盒上工作的Plasma Media Center
- 在平板電腦上工作的Plasma Active
- 用於智慧型手機和普通觸摸式設備的Plasma Mobile

### KDE Frameworks

在KDE 4 SC系列中，KDE平台（即 KDE Platform）由運行KDE應用程式所需的庫和服務組成。當轉換到Qt 5時，KDE平台被轉換成現在被稱為KDE框架（即KDE Frameworks）的模塊化集合。所需的庫包括Solid、Nepomuk、Phonon等，並且必須根據LGPL、BSD許可證、MIT許可證或X11許可證進行許可。

雖然KDE框架主要是用C++編寫的，但是它包含了同其他程式語言的接合模塊。它們使用以下通用技術：

- Smoke：用於同Ruby、C♯ 和PHP接合
- SIP：用於同Python接合
- Kross： C++應用程式的嵌入式腳本，支持 Ruby、Python、JavaScript、QtScript、Falcon和Java

穩定和成熟的接合模塊可用於以下程式語言：

- Python
- Ruby（Korundum，基於QtRuby）
- C♯（然而目前對C#和其他.Net語言進行接合的框架已被棄用，且其替代品僅能在Windows上編譯）
- Perl

### KDE Applications

KDE 應用程式（即 KDE Applications，它們包括 Okular、KTorrent、Kile 和KDE分區管理器）建立在KDE框架之上。KDE應用程式努力實現在各個作業系統之間的可移植性，並且獨立於某種特定的工作空間或桌面環境。某些品牌識別的應用程式套件常常由多個應用程式構建，例如 KDE Network、KDE Graphics 和 KDE Utilities。某些應用程式是常規軟體編譯版本的一部分；其他應用程式則是Extragear的一部分，並按照自己的時間表發布。

### KDE neon

KDE neon 是一個以Ubuntu LTS作為核心的軟體倉庫。它旨在為使用者提供快速更新的Qt和KDE軟體，同時以正常的速度更新Ubuntu庫中的其餘OS組件。KDE 認為它並非是「KDE 發行版」，而是KDE/Qt軟體包的最新版本。

它提供使用者和開發者兩種版本。

### WikiToLearn

WikiToLearn（簡稱WTL）是KDE最新和最獨特的努力之一。它是一個基於MediaWiki（如維基百科）的百科，提供了一個平台來創建和共享開源教科書。這個計劃的目標是創造一個人人都能使用並參與其中的龐大的教科書庫。這個想法肇始於一群米蘭大學物理專業的學生，他們一開始僅僅想要分享筆記。之後，他們決定分享給每個人而不僅僅是他們的朋友圈內。它現在是一個完整的KDE項目，許多大學都支持它。

## 與其他組織的合作

KDE還和各類組織、公司進行合作，如Google、維基媒體基金會等。

2005年6月23日，維基媒體基金會宣布KDE社群和基金會開始合作。這次合作的成果包括Kate中MediaWiki的語法高亮，以及從KDE程序如Amarok和Marble訪問維基百科的內容。

<image>

### 發行商

許多Linux發行版和其他自由的作業系統都參與了軟體的開發、銷售，因此它們也活躍於KDE社群。

## 外部連結

- https://www.kde.org/
- KDE.news：KDE官方的新聞和公告。
- KDE論壇：KDE社群的官方論壇。
- KDE UserBase：提供使用者教學、指南和實用的小提示
- KDE UserBase：提供使用者教學、指南和實用的小提示

### 其他

- GNOME vs KDE：GNOME vs KDE的比較表

## 基本資料

- 創辦人：馬蒂亞斯·埃特里希
- 成立時間：1996年10月14日
- 類型：社群
- 目標：自由軟體
- 產品：KDE Software Compilation、Calligra Suite、KDevelop、Amarok、K3b等
- 方法：美工、開發、文件、推廣、翻譯
- 口號：體驗自由！（Experience Freedom!）