KDE |
KDE (K Desktop Environment) is a Free software desktop environment and development platform built with Trolltech s Qt toolkit. It runs on most Unix and Unix-like systems, such as Linux, BSD, AIX operating system and Solaris Operating Environment. There are also ports to Mac OS X using its X11 layer and Microsoft Windows using Cygwin.
Currently, a large portion of the primary kdelibs and a few other applications can work Native_mode on Microsoft Windows, thanks to the [http://wiki.kde.org/tiki-index.phppage=KDElibs+for+win32 KDElibs/win32 Project]. Ports of other KDE applications are being discussed.
KDE is developed in conjunction with KDevelop, a software development suite, and KOffice, an office suite.
The K originally stood for Kool (as the C as in cool was already used in the acronym for the Common Desktop Environment), but was changed soon after to stand simply for K , which is the first letter before L (which stands for Linux) in the Latin alphabet.
The project s mascot is a green dragon named Konqi. Konqi can be found in various applications, including when the user logs out and in the About KDE screen.
=Early history=
KDE was founded in 1996 by , 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. That post spurred a lot of interest, and the KDE project was born.
Matthias chose to use the Qt toolkit as the toolkit of choice of the KDE project. Other programmers quickly started developing KDE/Qt applications, and by early 1997, large and complex applications were being released. In mid-1997, the GNU project had concerns about the licensing of Qt, leading to their founding the GNOME Desktop project and Harmony toolkit, a now-abandoned project to clone Qt. Qt was later relicensed to provide the GNU General Public License as an option, which has eliminated the concerns of the GNU project. There is still considerable disagreement over the use of the full GPL for a library like Qt, and the restrictions this imposes on code linking to it. In particular, in order to develop proprietary software with KDE and Qt, it is necessary to purchase a commercial license from Trolltech. Both KDE and GNOME now participate in Freedesktop.org, an effort to standardise Unix desktop interoperability, although there is still some friendly competition between them.
=Organization of the KDE project=
Like many open source/free software projects, KDE is primarily a volunteer effort, although various companies, such as Novell (in the form of SUSE), Trolltech, and Mandriva employ developers to work on the project. Since a large number of individuals contribute to KDE in various ways ( e.g. code, translation, artwork), organization of such a project is complex. Most problems are discussed on a number of different mailing lists.
Important decisions, such as release dates and inclusion of new applications, are made on the kde-core-devel list by the so-called core developers . These are developers who have made significant contributions to KDE over a long period of time. Decisions are not made by a formal voting process, but by discussion on the mailing lists. In most cases this seems to work well, and major discussions (such as the question of whether the KDE 2 application programming interface should be broken in favour of KDE 3) are rare.
While developers and users are now located all over the world, the project retains a strong base in Germany. The web servers are located at the universities of Tübingen and Kaiserslautern, a German non-profit organization (KDE e.V.) owns the trademark on KDE , and KDE conferences often take place in Germany.
=Release cycle and version numbers=
As the project history below shows, the KDE team releases new versions on a frequent basis. It is rare that a release is delayed for more than one or two weeks. (An exception was KDE 3.1, which was delayed for more than a month because of a number of security issues in the code base.)
There are two main types of releases:
==Major release==
There have been 10 major releases: 1.0, 1.1, 2.0, 2.1, 2.2, 3.0, 3.1, 3.2, 3.3 and 3.4.
A major KDE release has two version numbers, e.g. KDE 1.1. All KDE releases in the same major version (e.g. KDE1, KDE2 and KDE3) are both binary and source-compatibility. This means for instance that software developed against KDE 3.0.x will work with all KDE3 releases. Only a major KDE release will incorporate new features.
Changes requiring recompilation or porting never occur except during major version changes; this maintains a stable API for KDE application developers. The changes between KDE 1 and KDE 2 series were large and many, while the API changes between KDE 2 and KDE 3 were comparatively minor, meaning that applications could be easily ported to the new architecture. Up to now the KDE major version numbers follow the Qt release cycle.
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.
The current major release is 3.4, which arrived on March 16, 2005. Following that will be 3.5, set for late 2005 with a projected focus on areas such as polish and general usability. KDE 4 will succeed 3.5 sometime in 2006, and will be based on Qt 4.0 encompassing some major changes to the desktop.
==Minor release==
A minor KDE release has three version numbers, e.g. KDE 1.1.1, and the developers focus on fixing bugs, minor glitches and small usability improvements, as opposed to adding new features.
For minor releases, a shortened release schedule is used. A minor release is based on a Subversion (software) branch of a previous release and does not affect the HEAD branch , the branch where the current development of the next major release takes place.
new features, bug fixes KDE 3.2 released --------------------> KDE 3.3 (also called HEAD branch) (new development started) bug fixes only --------------------> KDE 3.2 BRANCH (becoming a minor release)
The somewhat unusual name 3.0.5a was used because of a lack of version numbers. Work on KDE 3.1 had already started and, up to that day, the release coordinator used version numbers such as 3.0.5, 3.0.6 internally in the main Subversion repository to mark snapshots of the upcoming 3.1. Then after 3.0.3, a number of important and unexpected bug fixes suddenly became necessary, leading to a conflict, because 3.0.6 was at this time already in use. More recent KDE release cycles have tagged pre-release snapshots with large revision numbers, such as 3.1.95, to avoid such conflicts.
While development on KDE 2.x in general has stopped, important security fixes are backported to KDE 2.x, since many people still use it.
= Architecture =
==Packaging==
Due to the size of KDE, it is divided into several package categories to simplify installation. This is a reference scheme, packagers are free to use their own packages for KDE.
*aRts - KDE sound server. *kdelibs - Primary libraries, containing most pieces of KDE architecture. *kdebase - The base desktop and applications. Requires kdelibs.
*kdeaccessibility - Accessibility software. *kdeaddons - Add-on software. *kdeadmin - Administrative tools, intended for administering UNIX machines. *kdeartwork - Additional artwork (widget style, screensavers, wallpapers, etc...) *kdeedu - Educational software. *kdegames - Games. *kdegraphics - Tools for manipulating graphics. *kde-i18n - Internationalization for KDE. *kdemultimedia - Multimedia software. *kdenetwork - Network tools and software. *kdepim - Personal information management and E-mail software. *kdesdk - Developer tools. *kdetoys - Desktop Toys and Amusements. *kdeutils - Utilities. *kdewebdev - Web Development. *KOffice - Office suite.
There is also a Subversion (software) module, kdeextragear-(libs-)*, which is used by applications which are part of the KDE project but don t depend on the release cycle of the main codebase; K3b and AmaroK are part of this module. More info can be found on the [http://extragear.kde.org/ homepage].
= Major KDE applications =
For a full list, see list of KDE applications. Applications for KDE include:
=Timeline=
=Naming convention=
Most KDE applications have a K in the name, mostly as an initial letter and capitalized. However, there are notable exceptions like kynaptic, whose K is not capitalized, AmaroK, which has its K in the end and Gwenview, which doesn t have a K in the name at all. Many KDE applications get their K by misspelling a word which originally begins with C or Q , for example Konsole and Kuickshow. Also, some just append a commonly used word to a K , an instance being KMix.
=See also=
*List of computing topics *List of Unix programs *freedesktop.org interoperability between KDE and GNOME
=External links=
*[http://www.kde.org The KDE website] *[http://wiki.kde.org KDE Wiki] *[http://lists.kde.org KDE mailinglists] *[http://dot.kde.org KDE News Site] *[http://groups.google.com/groupsselm=53tkvv%24b4j%40newsserv.zdv.uni-tuebingen.de The original project announcement (from Google Groups)] *[http://developer.kde.org/development-versions/ KDE release schedules] *[http://www.lynucs.org/kde KDE screenshots] *[http://kde-cygwin.sourceforge.net/ KDE on Windows using Cygwin] *[http://events.kde.org/ KDE Events] *[http://developer.kde.org/ KDE Developer s Corner]: a directory of everything to do with KDE development. *[http://quality.kde.org/ KDE Quality Team]: opportunity to learn and to contribute to the KDE project. *[http://planetkde.org/ PlanetKDE]: Aggregation of public weblogs written by contributors of KDE *[http://kdedevelopers.org/ KDE Developer Journals] *[http://www.kde-forum.org/ KDE-Forums.org] *[http://plasma.kde.org/ Plasma]: KDE4 Desktop Shell *[http://accessibility.kde.org/ KDE Accessibility Project] *[http://i18n.kde.org/ KDE Internationalization] *[http://bugs.kde.org/ KDE Bug Tracking System] *[http://kde-look.org/ KDE-Look.org]: Download unofficial KDE artwork and themes *[http://kde-apps.org/ KDE-Apps.org]: Download unofficial KDE applications *[http://kde-files.org/ KDE-Files.org]: Download unofficial KDE documents and templates *[http://www.kde-artists.org/ KDE-Artists.org]: the place to kollaborate on artwork for KDE *[http://kdemyths.urbanlizard.com/ KDE-Myths] *[http://www.ofb.biz/modules.phpname=News&file=article&sid=364&mode=&order=0&thold=0 Debate Without End]: Article on ongoing licencing controversy|
|