Encyclopedia > KDE

  Article Content

KDE

KDE (K Desktop Environment) is a free graphical desktop environment and framework built with Trolltech's Qt toolkit for Unix. The "K" originally stood for "Kool", but was later changed to stand simply for "K", which is "The first letter before 'L' (which stands for Linux) in the Latin alphabet".

According to the KDE website: "KDE is a network transparent contemporary desktop environment for UNIX workstations. KDE seeks to fill the need for an easy to use desktop for Unix workstations, similar to the desktop environments found under MacOS or Microsoft Windows."

KDE was originally patterned after CDE, the "Common Desktop Environment". CDE is an older Unix desktop environment used by commercial Unix vendors, such as Sun Microsystems and Hewlett-Packard.

It is one of the most flexible GUIs in existence, and it features many visually appealing elements such as the Keramik GUI, Crystal icons, translucency in menus and antialiasing, which makes it compare with commercial GUIs such as Windows and MacOS X.


A typical KDE session: the main menu (left), kmail (background), konqueror the KDE web browser and file manager (center/right) and noatun (top right), a multimedia player. (Larger image)

There is both competition and cooperation between KDE and GNOME, another free graphical desktop environment for Unix.

KDE is developed in conjunction with KDevelop and KOffice, a suite of office-software with powerful wordprocessor, spreadsheet etc.

KDE is reported to be in open-source development for the x86 (Intel chip) port of the Darwin OS system. Darwin, the foundation of Mac OS X, is based on the Mach kernel and Free/NetBSD, a popular open-source Unix. Though limited in the hardware it can run on, and as yet without a GUI like KDE, Darwin will be first port of an Apple Computer OS for a PC machine.

Table of contents

Organization of the KDE project Like almost all open source / free software projects KDE is mostly a volunteer effort. Since several hundreds of individuals contribute to KDE in various ways (e.g. code, translation, artwork), organization of such a project is not trivial. Most problems are discussed on the great number of different mailing lists (see external link below). Very important decisions, such as release dates, inclusion of new applications, are made on the "kde-core-devel" list by the so called "core developers". These are developers which have contributed to KDE for a long time. Decisions are not made by a formal voting process, but by discussion on the mailing lists. In most cases this works very well, and major discussions, such as the question whether KDE 2 API should be broken in favor of KDE 3, are rare.

The release coordinator (aka "the release dude"): how is he choosen, tasks, influence, names David Faure, Dirk Müller, Stephan Kulow (FIXME)

Release cycle and version numbers As the project history below shows, the KDE team releases new versions on a frequent basis. They are known for sticking to their release plan, and it is rare that a release delays 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. Holding a release plan for a volunteer project of that size is not natural: The Linux kernel for instance is known for massive delays, and even the Gnome project had several times missed the aimed release date. There are two main types of releases:

Major Release: A major KDE release has two version numbers, e.g. KDE 1.1. Only a major KDE release will incorporate new features. Up to now there have been 7 major releases, namely: 1.0, 1.1, 2.0, 2.1, 2.2, 3.0, 3.1. All KDE releases in the same major version (e.g. KDE1, KDE2 and KDE3) are both binary[?] and source compatible[?]. This means for instance that software developed against KDE 3.0.x will work with all KDE3 releases. Changes requiring recompilation or porting never occur except during major version changes. Keeping the API stable is important for 3rd party developers, and that is the reason why such drastical changes occur very seldom. Changes between KDE 1 and KDE 2 series have been really massive, while the API changes between KDE 2 and KDE 3 were only cosmetical, meaning that applications could be ported within hours 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 month to be finished and many bugs that are fixed during this time are "backported" to the stable branch, meaning that these fixes are incorporated to the last stable release.

Minor Release (aka "bug fix release"): For minor releases a shortened release schedule is used. A minor KDE release has three version numbers, e.g. KDE 1.1.1, and release concentrates on fixing bugs, minor glitches and small useability improvements. A minor release is based on a CVS branch of a previous release and does not affect the "HEAD branch", the branch were the current development of the next major release takes place.

                              new features, 
                             bug fixes
  KDE 3.1 released        -------------------->  KDE 3.2 (also called HEAD branch)
  (new development
   started)                  bug fixes only
                          -------------------->  KDE 3.1 BRANCH (becoming a minor release)

Sidenote: The somewhat unusual name "3.0.5a" was used because of a lack of version numbers. Work on KDE 3.1 already started and up to that day the release coordinator used version numbers such as 3.0.5, 3.0.6 internally in the CVS system to mark snapshots of the upcoming 3.1. Then after 3.0.3 suddenly a number of important and not expected bug fixes was necessary, leading to a conflict, because 3.0.6 was at this time already in use.

Also note that while development on KDE 2 in general has stopped, very important security fixes are backported to KDE 2 in case someone still uses this version.

For more details about the release process please see [1] (http://developer.kde.org/development-versions/release).

Project history

External links



All Wikipedia text is available under the terms of the GNU Free Documentation License

 
  Search Encyclopedia

Search over one million articles, find something about almost anything!
 
 
  
  Featured Article
Alois Alzheimer

... - Wikipedia <<Up     Contents Alois Alzheimer Alois Alzheimer (1864-1915) was a colleague of Emil Kraepelin who first identified the ...