KDE Software Compilation

**KDE Software Compilation** (**KDE SC**) là tên gọi chung cho môi trường desktop cộng với một loạt các ứng dụng đi kèm do KDE phát triển. Từ bản phát hành 1.0 của nó tháng 1/1998 cho đến phiên bản 4.4 phát hành tháng 2/2010, Software Compilation được biết đến với tên gọi **KDE**, viết tắt của **K Desktop Environment** cho đến khi đổi thương hiệu. Tên gọi **KDE SC** được dùng từ 4.4 cho đến bản phát hành final 4.14 tháng 7/2014. Nó bao gồm desktop KDE Plasma 4 và các ứng dụng KDE khác, mà các nhóm phát triển đã lựa chọn tuân theo lịch trình phát hành của Software Compilation. Sau đó, KDE SC được chia thành ba sản phẩm riêng biệt: KDE Plasma, KDE Frameworks và KDE Applications, mỗi ứng dụng có lịch phát hành độc lập riêng.

## Lịch sử

### Ban đầu
KDE được thành lập năm 1996 bởi Matthias Ettrich, khi đó đang là sinh viên của University of Tübingen. Vào thời điểm đó, ông gặp rắc rối bởi một số khía cạnh của desktop Unix. Một trong những điều quan trọng của ông là không có ứng dụng nào nhìn, cảm thấy hoặc hoạt động giống nhau. Ông đã đề xuất sự hình thành không chỉ một bộ ứng dụng, mà, thay vào đó, một môi trường desktop, trong đó người dùng có thể mong đợi mọi thứ sẽ nhìn, cảm nhận và hoạt động ổn định. Ông cũng muốn làm cho desktop này dễ sử dụng; một trong những phàn nàn của ông với các ứng dụng desktop thời đó là bạn gái ông không thể sử dụng chúng. Bài đăng trên Usenet ban đầu của ông đã thu hút rất nhiều sự quan tâm và dự án KDE đã ra đời.

Ettrich đã chọn Qt framework của Trolltechcho dự án KDE. Các lập trình viên khác nhanh chóng bắt đầu phát triển các ứng dụng KDE/Qt và đến đầu năm 1997, một vài ứng dụng đã được phát hành.

### Series 1.x

Ngày 12/7/1998, *K Desktop Environment 1.0* được phát hành. Tháng 11/1998, bộ công cụ Qt đã được cấp phép kép theo giấy phép tự do nguồn mở Q Public License (QPL) và giấy phép độc quyền cho các nhà phát triển phần mềm độc quyền. Cuộc tranh luận tiếp tục về khả năng tương thích với GNU General Public License (GPL), vì vậy vào tháng 9 năm 2000, Trolltech đã tạo ra phiên bản Unix của các thư viện Qt có sẵn theo GPL, ngoài QPL. Trolltech tiếp tục yêu cầu giấy phép phát triển phần mềm độc quyền với Qt. Các thư viện cốt lõi của KDE được cấp phép chung theo GNU LGPL, nhưng cách duy nhất để phần mềm độc quyền sử dụng chúng là được phát triển theo các điều khoản của giấy phép độc quyền Qt.

### Series 2.x

Bắt đầu từ ngày 23 tháng 10 năm 2000, Series thứ hai, *K Desktop Environment 2*, đã giới thiệu những cải tiến công nghệ quan trọng. Chúng bao gồm DCOP (Desktop COmmunication Protocol), KIO (một thư viện ứng dụng nhập xuất), KParts (một mô hình đối tượng thành phần, cho phép một ứng dụng nhúng một thứ khác vào trong chính nó) và KHTML (một công cụ render và dựng HTML).

### Series 3.x

Series 3.x có nhiều thay đổi lớn hơn các series trước, bao gồm sáu bản phát hành chính bắt đầu vào ngày 3 tháng 4 năm 2002. API thay đổi giữa *K Desktop Environment&nbsp;2* và *K Desktop Environment&nbsp;3* tương đối nhỏ, có nghĩa là KDE 3 có thể được xem như là phần tiếp theo của series *K Desktop Environment 2*. Tất cả các bản phát hành của *K Desktop Environment&nbsp;3* được built dựa trên Qt&nbsp;3, chỉ được phát hành theo GPL cho các hệ điều hành Linux và tương tự Unix, bao gồm Mac OS X. ó được đánh dấu ổn định chạy trên Mac OS X  từ năm 2008. Không giống KDE SC 4, nó yêu cầu  X11 server để hoạt động.  Năm 2002, các thành viên của dự án KDE on Cygwin bắt đầu porting codebase Qt/X11  được cấp phép GPL sang Windows.

### Series 4.x
KDE Software Compilation 4, phát hành lần đầu ngày 11/1/2008, nó dựa trên Qt 4, vốn được phát hành dưới giấy phép GPL cho Windows và Mac OS X. Bởi vậy, các ứng dụng KDE SC 4 có thể biên dịch và chạy tốt trên các hệ điều hành này. KDE Software Compilation 4 trên Mac OS X hiện đang là beta, trong khi trên Windows nó không ở trạng thái final, vì vậy các ứng dụng có thể không phù hợp để sử dụng hàng ngày.

KDE SC 4 bao gồm nhiều công nghệ mới, được thay đổi. Trung tâm là một desktop được thiết kế lại và các panel được gọi là Plasma, thay thế Kicker, KDesktop, và SuperKaramba bằng cách tích hợp chức năng của chúng vào một phần công nghệ; Plasmađược dự định là cấu hình nhiều hơn cho những người muốn cập nhật desktop metaphor hàng thập kỷ. Có một số frameworks mới, bao gồm Phonon (giao diện đa phương tiện mới làm cho KDE độc lập với bất kỳ một phụ trợ phương tiện cụ thể nào) Solid (API cho mạng và thiết bị di động), và Decibel (framework giao tiếp mới để tích hợp tất cả các giao thức truyền thông vào desktop). Ngoài ra còn có một framework metadata và tìm kiếm, kết hợp Strigi như một dịch vụ lập chỉ mục file toàn văn, and NEPOMUK với tích hợp KDE.

Bắt đầu với Qt 4.5, Qt đã có sẵn dưới LGPL v2.1, hiện cho phép các ứng dụng độc quyền sử dụng hợp pháp phiên bản Qt nguồn mở.

### Series 5.x

As of August 2014, KDE no longer provides synchronized releases of the entire software compilation; instead the software is split into three parts:

* KDE Frameworks 5, a collection of libraries and software frameworks (5.0 released on ngày 7 tháng 7 năm 2014, and new major releases are made monthly)
* KDE Plasma 5, a desktop environment (5.0 released on ngày 15 tháng 7 năm 2014, and new major releases are made every three months)
* KDE Applications, a bundle of applications and supporting libraries (14.12 was the first version incorporating Frameworks 5 based applications, and introduced date-based version numbers).

Major changes include a move from Qt 4 to Qt 5, support for the next-generation display server protocol Wayland, support for the next-generation rendering API Vulkan and modularization of the KDE core libraries. Initial releases of Frameworks 5 and Plasma 5 were made available in July 2014.

## Triển khai
Hầu hết các phần mềm KDE sử dụng Qt chạy trên hầu hết các hệ thống Unix và Tương tự Unix (bao gồm Mac OS X), Android và Microsoft Windows. , CMake đóng vai trò là công cụ build. Điều này cho phép KDE hỗ trợ nhiều nền tảng hơn, bao gồm cả  Windows. GNU gettext được sử dụng để dịch. Doxygen được sử dụng để tạo tài liệu api.

### Tổng quan

* KDE Software Compilation: KDE Software Compilation (KDE SC) là phiên bản phối hợp của các phiên bản phần mềm mới, thu thập các yếu tố từ các thành phần trước đó để xây dựng lõi tích hợp của phần mềm. KDE SC không phải là một sản phẩm như một thực thể duy nhất.
* Calligra Suite: Bộ ứng dụng văn phòng tích hợp.
* KDEWebdev: Công cụ phát triển web.
* KDE-Extragear: à một tập hợp các ứng dụng liên quan đến KDE. Những ứng dụng đó không phải là một phần của phần mềm biên dịch chính thức, nhưng chúng vẫn là một phần của dự án.
* KDE-Playground: Gói này chứa phần mềm phát hành trước và không ổn định.Đó là một nơi để các ứng dụng hoàn thiện.

### Packages

Software Compilation gồm có các packages sau:

* KDE-Libs: Một bộ sưu tập các thư viện cung cấp frameworks và chức năng cho các nhà phát triển.
* KDE-Base: Bộ các file cơ sở, thư viện và chương trình cần thiết cho Software Compilation. KDE-Base được chia thành ba phần:
** Applications: Chứa các ứng dụng tạo thành desktop KDE, như Konqueror, Dolphin, KWrite, và Konsole.
** Runtime: Các ứng dụng được yêu cầu bởi các ứng dụng KDE để hoạt động đúng khi chạy.
** Workspace: Cung cấp các môi trường đồ họa.
* KDE-Plasma-Addons: bổ sung Plasma widgets.
* KDE-Network
* KDE-Pim
* KDE-Graphics
* KDE-Multimedia
* Phonon
* KDE-Accessibility: Ứng dụng tiếp cận.
* KDE-Utilities
* KDE-Edu
* KDE-Games
* KDE-Toys
* KDE-Artwork: bổ sung các icon, styles...
* KDE-Admin
* KDE-SDK
* KDE-Bindings

### Công nghệ cơ sở

* KHTML – HTML rendering engine, phân nhánh từ WebKit năm 2004
* KJS - JavaScript engine
* KIO – Extensible network-transparent file access
* Kiosk – Cho phép vô hiệu hóa các tính năng trong KDE để tạo môi trường được kiểm soát tốt hơn
* KParts – Framework đồ họa nhẹ trong tín trình
* KWin – Window manager
* XMLGUI – Allows defining UI elements, such as menus and toolbars via XML files
* Phonon – Multimedia framework
* Plasma – Desktop và panel widget engine
* Solid – Device integration framework
* Sonnet – Spell checker
* ThreadWeaver – Thư viện sử dụng hệ thống đa xử lý hiệu quả hơn

### Ứng dụng

Các ứng dụng chính của KDE Software Compilation bao gồm:

* Ark – Công cụ lưu trữ
* Dragon Player – Media player.
* Dolphin – File manager
* Falkon – Trình duyệt web
* Gwenview – Xem ảnh
* Kate&nbsp;/&nbsp;KWrite – Text editor
* Konsole – Terminal emulator
* Kontact – Trình quản lý thông tin cá nhân có tính năng e-mail client, một ứng dụng tin tức, một trình đọc tin trực tuyến, danh sách việc cần làm, v.v.
* Konqueror – Trình duyệt web và Trình duyệt file
* Kopete – Instant messaging client
* KRDC – một remote desktop client. Hỗ trợ cả hai giao thức Virtual Network Computing (VNC) và Remote Desktop Protocol (RDP), do đó có thể tuy cập cả PC tương tự Unix và Windows bằng phần mềm này. như một phần của GSoC, các nhà phát triển dự án đã giúp Libvncserver biên dịch trên nền tảng Windows, cho phép port sang Windows.

*Cho nhiều ứng dụng hơn, xem [[danh sách dứng dụng của KDE]].*

## Cấp phép
Vào tháng 11 năm 1998, Qt framework đã được cấp phép kép theo giấy phép tự do nguồn mở Q Public License (QPL) và một giấy phép thương mại cho các nhà phát triển phần mềm độc quyền. Cùng năm,Quỹ KDE Free Qt được thành lập để đảm bảo rằng Qt sẽ thuộc một biến thể của giấy phép BSD tự do nếu Trolltech ngừng tồn tại hoặc không có phiên bản Qt miễn phí nào được phát hành trong 12 tháng.

Cuộc tranh luận tiếp tục về khả năng tương thích với GNU General Public License (GPL), do đó vào tháng 9 năm 2000, Trolltech đã tạo ra phiên bản Unix của các thư viện Qt có sẵn theo GPL bên cạnh QPL giúp loại bỏ các mối quan tâm của Free Software Foundation. Trolltech tiếp tục yêu cầu giấy phép cho việc phát triển phần mềm độc quyền với Qt. Các thư viện cốt lõi của KDE được cấp phép chung theo GNU LGPL nhưng cách duy nhất để phần mềm độc quyền sử dụng chúng là được phát triển theo các điều khoản của giấy phép độc quyền Qt.

## Xem thêm

* KDE Platform
* Comparison of X Window System desktop environments

## Chú thích

## Liên kết ngoài

* The KDE website
* KDE.News, news announcements
* KDE community forums, the official forum board
* Planet KDE, blog aggregate
* KDE wikis
* KDE Localization
* KDE-Apps, KDE and Qt software repository
* KDE-Look
* KDE-Files