The KDE Project today announced the immediate availability of KDE 3.0, the third generation of the free and powerful desktop for Linux and other UNIXes. KDE 3.0 is available in 49 languages and ships with the core KDE libraries, the base desktop environment, an integrated development environment, and hundreds of applications and other desktop enhancements from the other KDE base packages (administration, artwork, development, edutainment, development, Games, Multimedia, PIM, utilities, and more). A KDE 3 port of the KDE office suite is available. Consistent with KDE's rapid and disciplined development pace, the release of KDE 3.0 includes an impressive catalog of bug fixes, performance enhancements and feature additions.
KDE, including all its libraries and its applications, is available for free under Open Source licenses. KDE can be obtained in source and numerous binary formats from the KDE http servers or ftp mirrors, and can also be obtained on CD-ROM or with any of the major Linux/UNIX systems shipping today.
"More and more pieces have come together for creating a viable Linux desktop," stated Bernd Kosch, Vice President of Marketing Strategy and Alliances at Fujitsu Siemens Computers. "KDE 3 is an important step forward towards this goal since it will make it easier for ISVs to port to the Linux/KDE platform. We see increasing interest in Linux and KDE and we appreciate the excellent achievements of the development team."
"In response to customer demand, we have made KDE the default desktop environment in our Turbolinux Workstation product," said Dino Brusco, VP of Marketing at Turbolinux Inc. "Our customers really appreciate the features and stability that KDE provides and we will be offering this latest version of KDE in future releases of our Turbolinux Workstation product."
"We are very impressed with the design and performance and productivity boosts KDE 3.0 provides for Linux desktop computing," said Carsten Fischer, SuSE Linux Product Manager. "KDE 3 is perfectly aligned with our strategy to provide our users with simple but powerful tools to perform their daily tasks with Linux, and we are very pleased to ship KDE 3 in our new 8.0 release later this month."
"KDE systems - combined with GNU/Linux or a UNIX system - offer a compelling solution for enterprises which desire to realize substantial savings in their IT budgets, and comes at an opportune time in light of current economic conditions and runaway licensing fee inflation," added Andreas Pour, Chairman of the KDE League. "KDE enables enterprises, governments, schools, retail outlets, charities and other businesses to shed themselves of a substantial portion of maddening licensing fees, restrictions and audits. Essentially, I guess you could say that KGX is opening the gates to freedom for the enterprise."
More information about using KDE systems in an enterprise environment is available at the KDE League website.
KDE 2 applications will work with KDE 3 if the KDE 2 libraries are present. Many KDE 2 applications have already been ported to KDE 3, and much unlike previous major version jumps, the porting is relatively easy and the benefits are substantial.
K Desktop Environment 3.0
Printing
One of the most exciting additions to KDE 3 is the new printing framework, KDEPrint. Its modular design makes it easy to support different printing engines, such as CUPS, LPRng, LPR, LPD or other servers or programs.
The framework consists of a print command/dialog; a printing manager; a job viewer for queue control and management; a Command Editor for cascading a series of external print job filters such as enscript, a2ps and pamphlet and providing the GUI elements to configure these filters; a wizard for auto-detecting and installing new printers; and a CUPS configuration tool.
In conjunction with CUPS, KDEPrint can now manage an elaborate enterprise networked printing system. The new features include complete administrative control over multiple print queues and the queued jobs, drag'n'drop printing, print job scheduling, print job prioritization, billing and accounting support, print queue migration with possible adaptation of the print settings to the new printer's capabilities, per-printer print quotas, per-user print authorization and printer list filtering for restricting the printers which are listed in individual users' printer selection dialog.
As KDEPrint provides a command-line interface, the framework, including the GUI configuration elements, are accessible by any non-KDE application which permits users to configure a printing command, such as StarOffice, OpenOffice, WordPerfect 2000, Netscape, Mozilla, Galeon, Acrobat Reader, gv and many other applications.
Internationalization
KDE 3.0 is shipping in 49 languages and additional languages are expected for the future KDE 3.1 release. Anybody is encouraged to translate KDE into their native language using KDE's advanced translation tools, without the need for any programming skills. Please visit i18n.kde.org for details and coordination.
KDE's impressive internationalization is largely possible due to its use of Unicode (including Unicode 3) throughout its libraries. In addition, KDE provides support for "right-to-left" languages such as Arabic and Hebrew. And multiple font encodings and directions can be displayed in the same document, even largely in absent of "full" unicode fonts.
Browser
Konqueror is KDE's fifth-generation web browser, file manager and document viewer. The standards-compliant Konqueror has a component-based architecture which combines the features and functionality of Internet Explorer/Netscape Communicator and Windows Explorer.
Konqueror uses KHTML as its rendering engine. KHTML supports the full gamut of current Internet technologies. It supports the scripting language ECMAScript ("JavaScript") as well as Java; the XML 1.0 and HTML 4.0 markup languages; cascading style sheets (CSS-1 and -2); secure communications with SSL; Netscape Communicator plug-ins, including Flash and RealAudio and RealVideo; and, in conjunction with some commercial add-ons, Windows Netscape plugins, including Macromedia Shockwave Player, the QuickTime and Windows Media Player 6.5 multimedia players, and various MS Office document viewers.
"One of the major improvements brought by KDE 3.0 over KDE 2.2 is the JavaScript/DHTML support in Konqueror," stated Dirk Mueller, a KHTML developer and the KDE 3 release coordinator. "The implementation of the DOM model, used for rendering XML and well designed HTML pages, has been much improved. The CSS 1 rendering modul support is considered complete. The JavaScript bindings and support is almost complete, faster and more stable than in KDE 2. The resulting improvements in the speed and renderring quality of state of the art web pages is something users will appreciate immediately."
Konqueror's improved JavaScript support is nicely demontrated by the added support for Heirmenus, a sophisticated JavaScript pop-up and drop-down menu system. This release also adds comprehensive SSL certificate and CA management tools, as well as new configuration options in the image managemen and a reimplemented zooming functionality.
File manager
Konqueror is also KDE's file manager. In KDE 3.0, Konqueror can display additional file information - file size, permissions and mimetype-specific information such as ID3 tags for MP3s or comments for JPG images - in a tooltip, and, in appropriate cases, edit this information. Moreover, Konqueror provides audio file "previews" by hovering the mouse over the file's icon. In addition, Konqueror's sidebar now features a media player, to which one can drag audio/video files for quick play.
Email
KMail is KDE's full-featured and user-friendly e-mail client. KMail supports both the popular IMAP and POP3 mail standards. Users can have multiple accounts and multiple identities. Its address book is based on the vCard address book standard, and is shared with the rest of KDE.
Its extensive message management capabilities include powerful filtering, background message sending/receiving (including new, fast POP3 message pipelining), selective message retrieval from POP3 servers using the powerful new filter mechanism on the message headers, fast IMAP header retrieval (new), nested mail folders, drag'n'drop organization of mails and smart mailing-list folders. Its powerful email handling includes support for reading HTML emails, message sorting, inline attachments, auto-email-address completion, distribution lists and aliases (new), and the ability to import existing mail folders from various popular mail agents. Its user-friendly mail editor offers spell-checking, undo/redo, searching, and (new) improved auto-selection of suitable charsets and encodings for messages.
For protecting the privacy of emails, KMail supports OpenPGP encryption via PGP and GnuPG, including automatic encryption of outgoing messages whenever possible ("opportunistic encryption") (new)). In addition, KMail supports SLS/TLS for accessing POP3 or IMAP4 mail servers and SMTP and DIGEST-MD5 authentication, most of which can be auto-configured by KMail (new). The KDE Project is proud that the federal government of Germany has sponsored KMail to participate in Sphinx, its project to provide secure email facilities.
Office suite
KOffice 1.1.1, a free, integrated office suite which utilizes free and open standards for the component object model, is available for KDE 3.0. All KOffice components are capable of embedding other KOffice components/documents as well as images, support scanning images, provide advanced printing features, use a DOM-compliant XML for their native document format, and provide a DCOP interface for desktop scripting.
Word processing
KWord is a FrameMaker-like word-processing and desktop publishing application ideal for those who need not frequently interchange MS Word documents with others, though this limitation should disappear with the release of KOffice 1.2 in mid-August 2002. It has a frame orientation, making it suitable for simple desktop publishing (DTP).
Paragraph style settings include borders, alignment, spacing, indentation, bullet points, tab stops, page breaks, and font type, style, color and size. KWord provides a stylist to edit, add, remove and update styles, and ships a number of predefined styles.
Page-level features include multiple columns per page, headers and footers (including different first page headers/footers) and numerous preset as well as custom page sizes.
Document features include tables, embedding of text frames, images and clip-art (.WMF files) as well as other KOffice components; templates; auto-generation of table of contents; auto-correction and spell checking; chapter numbering; and document variables, such as page number, company name, user name, document summary, date and time or a custom variable.
Spreadsheet
KSpread is a scriptable spreadsheet program which provides both table-oriented sheets and support for complex mathematical formulas and statistics. KSpread's document-level features include templates; multiple tables/sheets per document; headers and footers; comments; and hyperlinks.
KSpread also provides powerful formula support, including over 100 formulas (such as standard deviation, variance and present value of annuities); sorting; and series (days of week, months of year, numbers, etc.).
Its table/cell capabilities include cell data validity checking with configurable warnings/actions; conditional coloring of cells; multiple chart formats for graphically displaying data; row and column customization (size, show/hide, font type, style and size, etc.); and cell customization (data/number format, precision, border, alignment, rotation, background color and pattern, font type, style and size, etc.).
Presenter
KPresenter is a presentation application. It provides basic operations such as inserting and editing rich text (with bullet points, indentation, spacing, colors, fonts, etc.); embedding images and clip-art (.WMF files); and auto-forms. KPresenter can set many object properties, such as background, gradient, pen, shadow, rotation and object-specific settings; manipulate objects, such as resizing, moving, lowering and raising; group and ungroup objects; and assign effects for animating objects or changing slides.
On the document level, KPresenter supports templates; headers and footers; advanced undo/redo; configuring the slide backgrounds (color, gradients, pictures, clip-art, etc.). It also provides a Presentations Structure Viewer.
Besides the capability to generate screen presentations with effects, KPresenter can also generate HTML slide shows or PDF documents with just a few mouse clicks.
In addition to the forgoing components, KOffice 1.1.1 for KDE 3 ships with Kontour (a vector-drawing application); Kivio (a flowchart application); KChart (a chart drawing application); KFormula (a formula editor); Kugar (a tool for generating business quality reports); and filters (for importing documents created by, or exporting documents for use with, other office suites or office programs).
PIM
Calendaring / Group Scheduling. KOrganizer is KDE's calendaring and scheduling program for organizing appointments, todo lists, projects and more. It is an integral part of the KDE PIM suite, which aims to be a complete solution for organizing your personal data. KOrganizer supports the two dominant standards for storing and exchanging calendar data, vCalendar and iCalendar.
The major new feature in this release is support for group scheduling according to the iTIP standard. This addition supports appointment sharing, meeting requests, responses to meeting requests, and more. The group scheduling is based on a peer-to-peer architecture using email as the communication medium. It interoperates with other scheduling applications implementing the iTIP standard, such as Evolution or Outlook.
KOrganizer 3.0 also has a new plugin interface for extending KOrganizer with additional date based information like holidays or new views on the calendar data like the project view, permits pinning contacts to appointments and tasks and provides an innovative way to indicate the current date and time in the agenda views ("Marcus Bains Line").
Address book
This release introduces a new KDE address book library which provides a central address book to all KDE applications. The new library is based on the vCard standard and has provisions for being extended by additional backends like LDAP or database servers.
Reminders
KAlarm is a new application in the KDE 3.0 version of KDE PIM. It allows to quickly setup reminders when the full functionality of a scheduling program isn't needed. KAlarm shares the alarm daemon with KOrganizer.
Multimedia
KDE 3 provides a rich set of multimedia tools, from a CD player to a themeable media player for .WAV, .MP3 and OggVorbis audio files and MPEG-1 and DivX video files (Noatun). Noatun features audio effects, a six-band graphic equalizer, a full plugin architecture, network transparency and several skins. With KDE 3.0, Noatun for the first time offers support for Icecast and SHOUTcast digital audio streaming.
KDE 3 also ships aKtion!, a video player for a large number of video formats.
File, document and data access. KDE provides a network-transparent file, document and network protocol access architecture using the KIOSlave I/O objects. When a new KIOSlave is "dropped in" a system its services are automatically available to all KDE-compliant applications. This modular, plug-in nature of KDE's data architecture makes it simple to add additional protocols (such as IPX) to all of KDE.
A large number of protocols have already been implemented, from HTTP, SFTP/FTP, telnet/SSH, POP/IMAP, NFS/SMB/NetBIOS, LDAP, WebDAV (new) and local files to man and info pages, SQL queries, audio CDs, digital cameras, PDAs and even shell commands. All requests can be bookmarked for simple and quick retrieval of often-accessed data.
Edutainment
A package with "Edutainmant" applications have been added to KDE. It is maintained by the KDE Edutainment Project, which aims to create educational software based around KDE.
The package currently includes: KEduca, an educational project to enable the creation and revision of form-based tests and exams; KGeo, an interactive geometry learning program similar to Euklid(tm); KLettres, an alphabet and sound-recognition game (in French); KStars, a graphical desktop planetarium; KTouch, a program for learning touch typing; and kvoctrain, a foreign language vocabulary trainer.
KDE Kiosk
Some environments, such as kiosks, Internet cafes and enterprise deployments, demand that the user not have full access to all of KDE's capabilities in order to preclude certain undesirable actions. To address these needs, the KDE Kiosk project was launched to supplement standard UNIX permissions.
KDE 3.0 gives birth to the new lockdown framework, which is essentially a permissions-based system for altering application configuration options. The kiosk framework supplements KDE's configuration framework with a simple application API which applications can query to test authorization for certain operations.
Both the KDE panel and the desktop manager already employ this system, and by the KDE 3.1 release the other major desktop components, such as Konqueror and the Control Center, should also have this technology enabled.
K Development Environment 3.0
Libraries
KDE 3.0 offers both free and proprietary software developers a mature, powerful and consistent API for rapid application assembly. Chief among these technologies are the Desktop COmmunication Protocol (DCOP), the I/O libraries (KIO), the component object model (KParts), an XML-based GUI class, a standards-compliant HTML rendering engine (KHTML), the multimedia architecture (aRts), the new database classes, and the XML GUI framework.
I/O and Virtual Filesystems. KIO implements application I/O using KIOSlaves running as a separate process, thereby enabling a non-blocking GUI without the use of threads. The class is network and protocol transparent and hence can be seamlessly used to access data using the whole gamut of data formats and protocols provided by the installed KIOSlaves. KIO also implements a trader which can locate handlers for specified mimetypes; these handlers can then be embedded within the requesting application using the KParts technology.
IPC
DCOP is a client-to-client communications protocol intermediated by a server over the X11 ICE library. The protocol supports both message passing and remote procedure calls using an XML-RPC to DCOP "gateway". KDE 3 greatly expands on DCOP usage and the base KDE applications expose substantial functionality for other applications to exploit. DCOP bindings for C, C++ and Python [ANY OTHERS?], as well as experimental Java bindings and a shell-script interface, are available.
Components
KParts, KDE 3's proven component object model, handles all aspects of application embedding, such as positioning toolbars and inserting the proper menus when the embedded component is activated or deactivated. KParts can also interface with the KIO trader to locate available handlers for specific mimetypes or services/protocols. This technology is used extensively by KOffice, KHTML and Konqueror.
Web technologies
Konqueror's Internet capabilities are actually derived from KHTML. KHTML is available to all KDE applications, both as a widget and as a KPart component, and to all applications using X11 window reparenting, possibly in conjunction with DCOP.
Multimedia
KDE's multimedia system is based on aRts and includes the players noted in the multimedia summary. ARts is a modular media framework with full streaming support which can create sound and play audio and video. Example modules include filters, mixers and faders, codecs, as well as modules for playing sounds on speakers or streaming sound over a network. With this release, aRts has improved its support for recording, MIDI and ALSA, and added support for IRIX.
Database access
KDE 3 provides a new database-independent API for accessing SQL databases, which provides support for ODBC as well as direct support for Oracle, PostgreSQL and MySQL databases (custom drivers may be added as well). In addition, new database-aware controls provide automatic synchronization between the GUI and the database.
Dynamic GUI
The XML GUI framework employs XML to create and position menus, toolbars and possibly other aspects of the GUI. This technology offers developers and users the advantage of simplified configuration of these user interface elements across applications, as well as simple and automatic compliance with the KDE Standards and Style Guide irrespective of modifications to the standard.
Regular Expressions
Finally, KDE 3 offers a powerful new regular expression class. While compatible with, and as powerful as, Perl regular expressions, the Qt regular expression classes additionally provide full support for international (Unicode) character sets.
IDE
KDevelop is the leading free Linux IDE with numerous features for rapid application development, including a setup wizard, a GUI dialog builder (with Qt Designer), integrated debugging (optionally using KDbg), project management, documentation and translation facilities (with KBabel), built-in concurrent development support, a console, man page support, syntax highlighting, and a number of new project templates, including KControl modules, Kicker (panel) applets, KIOSlaves, Konqueror plugins and desktop styles.
With KDE 3.0, KDevelop has benefitted from a greatly improved Qt Designer, which now supports interactive construction of the application main windows with menus and tool bars in addition to dialogs. It supports KDE, Qt and custom widgets, including preview, and integrates smoothly into KDevelop.
In addition, KDevelop has added auto-code-completion for class variables, class methods, function arguments and more; full cross-compiling support, with the ability to specify different compilers, compiler flags, target architecture, etc.; and support for Qt/Embedded projects (such as the Zaurus and iPAQ);
Other development tools. Other KDE development tools include:
- Kate, a multi-view programmer's editor with syntax highlighting and integrated console;
- KDbg, a frontend to gdb (the GNU debugger) which integrates into KDevelop and provides an intuitive interface for setting breakpoints, inspecting variables and stepping through code;
- KBabel, an advanced and easy-to-use editor for translating applications into other languages which integrates into KDevelop and features full navigation capabilities, full editing functionality, search functions, syntax checking and statistics functions; and
- Konsole, KDE's advanced terminal emulator, has been enhanced in a number of signifant ways for this release, including shortcuts for activating menubars and renaming sessions, history management, text drag'n'drop, associating Konsole "sessions" with working directories, and a DCOP interface.
Language bindings
A number of languages have bindings for KDE. In particular, full C, Objective C, Java and Python bindings are available for KDE 3, which look and behave identically to a C++ version, including in most cases access to the signal/slot architecture. In addition, C# bindings for Qt 3 are available and C# bindings for KDE are planned.
Qt integration
KDE 3 improves the integration of pure Qt applications into KDE by applying the KDE widget style plugins to pure Qt applications. In addition, the Qt style engine has been extended to support a wider range of standard widgets, including progress bars, spin boxes, and table headers. Consequently, developers can benefit from Qt's cross-platform support without sacrificing the KDE "look-and-feel" when running in KDE.
Porting to KDE 3
Since KDE 3 is mostly source compatible with KDE 2, porting applications from KDE 2 to KDE 3 can usually be done with only minor adjustments. Even large and complicated applications have been ported in a matter of just hours. Instructions for porting KDE 2 applications to KDE 3 are available separately for the KDE libraries and the Qt libraries. All of the public KDE 3 API is going to be stable for all oncoming KDE 3.x releases, in a source and binary compatible way.