Kdebase

KDE Software Compilation
Developer(s) KDE
Initial release 12 July 1998 (1.0)
Stable release 4.11 (August 14, 2013; 10 months ago (2013-08-14)[1]) [±]
Development status Current
Written in Mainly C++ (Qt), some C
Operating system Whole desktop: Unix-like with X11 or Wayland and also Windows XP7.[2]
Applications only: Mac OS X v10.410.6
Available in Multilingual[3]
Type Desktop environment
License GPL, LGPL, BSD license, MIT license and X11 license[4]
Website

The KDE Software Compilation (KDE SC) is a desktop environment and an associated range of KDE Applications produced by KDE. Prior to version 4.4, released in February 2010, the Software Compilation was known as KDE, which used to stand for K Desktop Environment until November 2009.[5] The KDE SC includes only applications whose development teams choose to follow the Software Compilation's release schedule; as a result, many popular KDE applications, such as Amarok and Digikam, are not part of the Software Compilation. To date there have been four series of releases.

History

Origins

KDE was founded in 1996 by Matthias Ettrich, who was then a student at the Eberhard Karls University of Tübingen. At the time, he was troubled by certain aspects of the Unix desktop. Among his qualms was that none of the applications looked, felt, or worked alike. He proposed the formation of not only a set of applications, but, rather, a desktop environment, in which users could expect things to look, feel, and work consistently. He also wanted to make this desktop easy to use; one of his complaints with desktop applications of the time was that his girlfriend could not use them. His initial Usenet post spurred a lot of interest, and the KDE project was born.[6]

Ettrich chose to use Trolltech’s Qt framework for the KDE project. Other programmers quickly started developing KDE/Qt applications, and by early 1997, a few applications were being released.

First series

On 12 July 1998, K Desktop Environment 1.0 was released. In November 1998, the Qt toolkit was dual-licensed under the free/open source Q Public License (QPL) and a proprietary license for proprietary software developers. Debate continued about compatibility with the GNU General Public License (GPL), so in September 2000, Trolltech made the Unix version of the Qt libraries available under the GPL, in addition to the QPL. Trolltech continued to require licenses for developing proprietary software with Qt. The core libraries of KDE are collectively licensed under the GNU LGPL, but the only way for proprietary software to make use of them was to be developed under the terms of the Qt proprietary license.

Second series

The second series of releases, K Desktop Environment 2, introduced significant technological improvements.[7] These included DCOP (Desktop COmmunication Protocol), KIO (an application I/O library), KParts (a component object model, which allows an application to embed another within itself), and KHTML (an HTML rendering and drawing engine).[7]

Third series

The third series was much larger than previous series, consisting of six major releases. The API changes between K Desktop Environment 2 and K Desktop Environment 3 were comparatively minor, meaning that the KDE 3 can be seen as largely a continuation of the K Desktop Environment 2 series. All releases of K Desktop Environment 3 were built upon Qt 3, which was only released under the GPL for Linux and Unix-like operating systems, including Mac OS X. It is marked stable running on Mac OS X since 2008. Unlike KDE SC 4, however, it requires an X11 server to operate.[9] In 2002, members of the KDE on Cygwin project began porting the GPL licensed Qt/X11 code base to Windows.[10]

Fourth series

KDE Software Compilation 4 is based on Qt 4, which is also released under the GPL for Windows and Mac OS X. Therefore KDE SC 4 applications can be compiled and run natively on these operating systems as well. KDE Software Compilation 4 on Mac OS X is currently considered beta,[11] while on Windows it is not in the final state, so applications can be unsuitable for day to day use.[12][13]

KDE SC 4 includes many new technologies and technical changes. The centerpiece is a redesigned desktop and panels collectively called Plasma, which replaces Kicker, KDesktop, and SuperKaramba by integrating their functionality into one piece of technology; Plasma is intended to be more configurable for those wanting to update the decades-old desktop metaphor. There are a number of new frameworks, including Phonon (a new multimedia interface making KDE independent of any one specific media backend) Solid (an API for network and portable devices), and Decibel (a new communication framework to integrate all communication protocols into the desktop). Also featured is a metadata and search framework, incorporating Strigi as a full-text file indexing service, and NEPOMUK with KDE integration.[14]

Starting with Qt 4.5, Qt was also made available under the LGPL version 2.1,[15] a major step for KDE adoption in corporate and proprietary environments, as the LGPL permits proprietary applications to link to libraries licensed under the LGPL.

Development

Source code

KDE SC releases are made to the KDE FTP server[16] in the form of source code with configure scripts, which are compiled by operating system vendors and integrated with the rest of their systems before distribution. Most vendors use only stable and tested versions of KDE SC, providing it in the form of easily installable, pre-compiled packages. The source code of every stable and development version of KDE SC is stored in the KDE source code repository, using Git.[17] KDE Platform is licensed under the LGPL, BSD license, MIT license, or X11 license. Applications also allow GPL. Documentation also allow FDL. CMake modules must be licensed under the BSD licence.[18]

Release cycle

Timeline of major releases
Date Release LoC
14 October 1996 Project announced by Matthias Ettrich[19]
KDE 1
12 July 1998 KDE 1.0 released[20] 800,000 [21]
6 February 1999 KDE 1.1 released[22]
KDE 2
23 October 2000 KDE 2.0 released[7]
26 February 2001 KDE 2.1 released[23]
15 August 2001 KDE 2.2 released[24]
KDE 3
3 April 2002 KDE 3.0 released[25]
28 January 2003 KDE 3.1 released[26]
3 February 2004 KDE 3.2 released[27]
19 August 2004 KDE 3.3 released[28]
16 March 2005 KDE 3.4 released[29]
29 November 2005 KDE 3.5 released[30]
KDE SC 4
11 January 2008 KDE 4.0 released[31]
29 July 2008 KDE 4.1 released[32]
27 January 2009 KDE 4.2 released[33]
4 August 2009 KDE 4.3 released[34] 4,200,000 [35]
9 February 2010 KDE SC 4.4 released [36]
10 August 2010 KDE SC 4.5 released [37]
26 January 2011 KDE SC 4.6 released [38]
27 July 2011 KDE SC 4.7 released [39]
25 January 2012 KDE SC 4.8 released [40]
1 August 2012 KDE SC 4.9 released [41]
5 February 2013 KDE SC 4.10 released [42]
14 August 2013 KDE SC 4.11 released [43]

The KDE team releases new versions on a regular basis.

Platform releases

Platform releases are major releases that begin a series (version number X.0). These releases are allowed to break both binary and source code compatibility with the predecessor, or to put it differently, all following releases (X.1, X.2, ...) will guarantee source & binary compatibility (API & ABI). This means, for instance, that software that was developed for KDE 3.0 will work on all (future) KDE 3 releases; however, an application developed for KDE 2 is not guaranteed to be able to make use of the KDE 3 libraries. KDE major version numbers follow the Qt release cycle, meaning that KDE SC 4 is based on Qt 4, while KDE 3 was based on Qt 3.

Standard releases

There are two main types of releases: major releases and maintenance releases.

Major releases (with two version numbers, for example 3.5) contain new features. As soon as a major release is ready and announced, work on the next major release starts. A major release needs several months to be finished and many bugs that are fixed during this time are backported to the stable branch, meaning that these fixes are incorporated into the last stable release by maintenance releases. Starting with the KDE SC 4 series, KDE SC has a major release roughly every six months.

Maintenance releases have three version numbers, e.g. KDE 1.1.1, and focus on fixing bugs, minor glitches, and making small usability improvements. Maintenance releases in general do not allow new features, although some releases include small enhancements. A shortened release schedule is used. Starting with the KDE SC 4 series, KDE SC has a maintenance release roughly every month, except during the month of a major release.

Packages