User: Password:
|
|
Subscribe / Log in / New account

Development

KDE and FreeDesktop.org

August 25, 2004

This article was contributed by Tom Chance.

FreeDesktop.org always raises a little controversy in conferences - any group trying to integrate some of the most competitive projects in the free software community is bound to do that - and this year's KDE World Summit, aKademy, was no exception. Daniel Stone, freedesktop.org's release manager, gave a well-received presentation on the project to KDE developers, covering both the future of the project, and where he sees KDE fitting in. What follows is a writeup of his presentation, and some reflections from when I caught up with Daniel and Aaron Seigo of KDE later in the summit.

Daniel began his talk by sketching out freedesktop.org's main projects, describing briefly what the future holds for each of them. First on the list was X.org, whose cutting-edge developments has already been covered in some detail on LWN. Happily, Daniel managed to cover entirely different material, but gave a good impression of how X.org development is moving forward.

We should see X11R6.8 released in the near future, bringing Composite and many of the eye-candy enhancements first really developed in Kdrive to our desktops. But freedesktop.org also have their sights set on X11R7, with some major architectural changes planned or in discussion. Since they forked from XFree86, the developers have been trying to modularize the codebase to make it more manageable and digestable, and by X11R7 they hope to have completed this process. They're also thinking about moving the files from /usr/X11R6 to /usr (a pet hate of Daniel's), and after some developers expressed misgivings about CVS they are now discussing which Revision Control System (RCS) to use. Character set problems should also receive some attention, with Smart Common Input Method (SCIM) and Universal Input Method (UIM) bringing proper support to non-Latin character sets like Japanese.

The other major change he discussed was a migration from Xlib, which is said to be too unwieldy, as it is trying to work both for toolkits and GUI developers. A new low-level implementation of the X protocol in C, the X11 C Bindings (or XCB), provide a foundation for toolkits to build upon, allowing them to better optimize their interaction with X and allow developers to focus on the toolkit alone. The X.org project will no doubt attract plenty of attention in coming years.

Of particular interest to many KDE developers was the section on DBUS and HAL. With KDE4 now on the horizon, KDE developers are able to think about major architectural changes. Starting to migrate the internal messaging system from DCOP to DBUS and adapting KDE libraries and applications to take advantage of HAL are both hot topics. Daniel described how they can make the user experience seamless if applied universally across the desktop. DBUS in particular will bring all of the benefits that KDE enjoys from DCOP to the rest of the desktop. It promises an improved system that can, for example, change the proxy settings universally from one place whether it is the KDE or GNOME Control Center or even just a shell script.

When I talked to Daniel and Aaron later, it became clear what KDE will have to do to migrate to DBUS and other freedesktop.org technologies successfully. To begin with, there will be namespace issues that will mean it won't be a straight translation between DCOP and DBUS, though Qt 4 bindings should make accessing DBUS easier. Adapting to composite being available in X will also require removing the pseudo-transparency code found in several KDE applications, and integrating HAL will require entirely new code, although KDE's network/device transparency should mitigate conceptual difficulties. The key, Daniel pointed out, is that KDE can and should migrate gradually, maintaining backward compatibility. Aaron Seigo echoed this sentiment, saying that KDE has to approach the task pragmatically. KDE, he believes, must help drive DBUS and other standards, and properly address problems of how to migrate, what migrated code would look like, how much effort it would take, how compatibility could be preserved, and all the other questions typical for such a change.

The issue of driving standards is particularly poignant given that freedesktop.org is due to release it's first platform, freedesktop.org 1.0, within a couple of weeks. This will provide a stable set of APIs, libraries and standards that developers and companies can use, and it will lay the foundations for freedesktop.org's future. The conservative nature of the freedesktop.org process is best illustrated by the fact that key technologies like DBUS, HAL and Cairo aren't included in the platform, omissions that caused some concern among KDE developers who would like to integrate them within the time frame when the platform will be stable (a matter of years - release 1.1 is planned for late April 2005).

Daniel explained that their omission from the platform doesn't preclude their use in KDE or other desktop environments, and that the process of developing standards is more a matter of trial and error, seeing what works, encouraging projects to coordinate development, and only moving forward when everyone involved can arrive at a consensus. KDE developers were also concerned about this decision making process. Within KDE, technical decisions are made by the person who implements a working solution, and so they didn't want to feel pressured to adopt a solution that freedesktop.org prefers. When talking to Daniel privately, and in the discussion after his talk, he took care to address what he sees as a fundamental misunderstanding about freedesktop.org. The project's decision process is open to all, and the approach is that if people from all the major projects concerned cannot reach a consensus, then there is something wrong with the proposal being discussed. In other words, if developers from any project that relates to freedesktop.org is worried about a particular proposal, they should get involved and either explain why they want it stopped, or how they think it should be modified.

For the moment this loose and conservative approach seems to be working. Aaron Seigo pointed to examples like the icon, .desktop files, drag and drop, thumbnail and menu structure specifications, and the recent decision to drop the systray specification, as evidence that the process has worked well so far. I put it to Daniel and Aaron that freedesktop.org may in fact need to be more assertive. The decision of which multimedia framework to adopt, for example, is one that should be done through freedesktop.org across all environments to avoid yet more fragmentation. Yet this decision requires some body to help form consensus, since the decision is not so simple as: "do we like this proposal?" Daniel agreed, and suggested that KDE, GNOME and other desktop developers need more joint meetings to discuss the more contentious and complex decisions, much like the multimedia track in aKademy; he was, however, uncertain about how this could be done.

The key to freedesktop.org is active participation, a subject to which Daniel and Aaron kept returning. At present, Aaron believes the perception amongst some KDE developers that freedesktop.org is too GNOME-friendly simply comes from the fact that not enough KDE people are involved (particularly in the logistics). Daniel emphasized in his presentation that KDE is underrepresented, which is both dangerous for KDE, since it may find itself having to either accept the dictate of those that participate or to break away, and it is dangerous for freedesktop.org, which relies on the active participation of the major desktop players for credibility and progress.

Aaron firmly believes that freedesktop.org can provide a politically neutral ground upon which developers can cooperatively develop a platform, one which can then compete with proprietary software produced by companies that have these same kinds of processes internally. If developers in competing projects can come together and discuss where it makes sense to integrate, then not only can problems with integration be solved, but the combined skills and knowledge of all free software desktop developers can bring major advances. It is, they claim, a project with no losers, except those that don't take part.

Comments (5 posted)

System Applications

Database Software

PostgreSQL Releases 7.2.5, 7.3.7, 7.4.5 Available

Several new releases of the PostgreSQL database are available. "Due to insufficient interlocking between transaction commit and checkpointing, it was possible for transactions committed just before the most recent checkpoint to be lost, in whole or in part, following a database crash and restart." Upgrading is recommended.

Comments (none posted)

PL/Java now supports both PostgreSQL 8.0 and 7.4

Version 1.0.0.b4 of PL/Java, a project which provides server side Java for the PostgreSQL database, is available. "The 1.0.0.b4 release of PL/Java is out. It takes full advantage of the new exception handling and custom variables introduced in PostgreSQL 8.0".

Full Story (comments: 1)

PostgreSQL Weekly News

The August 24, 2004 edition of the PostgreSQL Weekly News is out with the latest PostgreSQL developments.

Full Story (comments: none)

Interoperability

Samba 3.0.6 Available for Download

Samba 3.0.6 (Samba goes for the gold!) has been released. Click below for the announcement and changes. "This is the latest stable release of Samba. This is the version that production Samba servers should be running for all current bug-fixes. There have been several issues fixes since the 3.0.4/5 release and new features have been added as well."

Full Story (comments: 1)

Mail Software

bogofilter 0.92.6 released

Version 0.92.6 of bogofilter, a spam mail filter, is out. "Bogofilter-0.92.6 cleans up minor issues with bogofilter's documentation and adds a "-QQ" option to display all the options that can be used in the config file."

Full Story (comments: none)

New mail filters

Milter.org lists several new mail filters including milter-siq version 0.7, milter-limit version 0.1 and seven other milters with support for libsnert 1.39.

Comments (none posted)

Networking Tools

GNOME Nettool 0.99.2 released

Version 0.99.2 of GNOME Nettool, a network information tool, is out. "This is the first release of GNOME Nettool after being splitted from GNOME Network. Version 0.99.2 is feature complete, and will be released as 1.0 after some testing period."

Full Story (comments: none)

Peer to Peer

giFT 0.11.7 released (SourceForge)

Version 0.11.7 of giFT, a cross-platform collection of software components for peer-to-peer file-sharing networks, has been released. "This release is primarily a bugfix release that contains some rather critical bugfixes which affect Windows and 64-bit platforms."

Comments (none posted)

Printing

Common UNIX Printing System 1.1.21rc2

Version 1.1.21rc2 of CUPS, the Common UNIX Printing System has been announced. "CUPS 1.1.21 is primarily a bug fix and performance tuning release and includes fixes for the IPP, LPD, parallel, serial, and USB backends, authentication and status processing issues in the CUPS API, and various PostScript and PDF printing issues. The new release also adds support for Zebra label printers and IPP device URI options."

Comments (none posted)

Web Site Development

Gallery 1.4.4-pl1 now available (SourceForge)

Version 1.4.4-pl1 of Gallery, a web-based photo gallery system, is out. "Gallery v1.4.4-pl1 is an update to Gallery 1.4.4 to resolve several issues found after the release. Most of these issues are fairly minor, and the one security issue fixed in this release requires a fairly unusual Gallery configuration and a bit of effort to exploit"

Comments (none posted)

mnoGoSearch 3.2.20 released

Version 3.2.20 of mnoGoSearch, a web site search engine, is out. Changes include improved support for multiple search databases, URL parser improvements, bug fixes, and more. See the change history for details.

Comments (none posted)

ZopeMag Weekly News

The August 14-24 edition of the ZopeMag Weekly News is online with a new collection of Zope and Plone articles.

Comments (none posted)

Miscellaneous

GNOME System Tools 0.91.0 has been released

Version 0.91.0 of the GNOME System Tools, a set of configuration utilities, is out with lots of improvements.

Full Story (comments: none)

Desktop Applications

Audio Applications

WaveSurfer 1.7.1 released

Version 1.7.1 of WaveSurfer, an audio file editor, is available. Changes include new command line options, bug fixes, and more.

Comments (none posted)

Desktop Environments

GARNOME 2.6.2.1 announced

Version 2.6.2.1 of GARNOME is available. "This release incorporates the GNOME 2.6.2 Desktop & Developer Platform, as well as plenty of new bugfixes and third-party package updates that have been made since the initial release."

Full Story (comments: none)

GDM 2.6.0.4 released

Stable version 2.6.0.4 of GDM, the GNOME Display Manager, is out. Most of the changes involve bug fixes and translation improvements.

Full Story (comments: none)

Gnome OSD 0.4.0 Announced

Version 0.4.0 of Gnome OSD, the On Screen Display notification system, is out with a few new preference choices.

Full Story (comments: none)

KDE 3.3 released

The KDE Project has announced the release of KDE 3.3. The list of enhancements is quite large; see the announcement for an overview or the changelog for a rather more detailed picture.

Comments (5 posted)

KDE-CVS-Digest

The August 20, 2004 edition of the KDE-CVS-Digest is online, here's the content summary: "KDM implements session switching and improves shutdown. KDEPIM adds configuration wizard for Novell Groupwise client. And many bugfixes in KST and Korganizer. Krita now has a gradient tool."

Comments (none posted)

Desktop Publishing

Scribus Team Releases First 1.2 Release Candidate (KDE.News)

The first release candidate of Scribus 1.2, a desktop publishing system, has been announced. Changes include a new story editor, new plugins, PDF exporter improvements, an EPS/PS importer, SVG importer/exporter improvements, a print previewer, a table creator, support for right to left languages, bug fixes, and more.

Comments (none posted)

Electronics

gEDA: SPICE GUI

Mike Waters has announced a new GUI front-end project for Spice. "For some time I've been looking for a circuit simulator I could use under Linux. After coming across gEDA I found that there was no GUI for the circuit simulator and decided to start writing one myself. Please find attached the results of my efforts so far. This is alpha code and so is highly likely to contain bugs. It has been developed over the last 12 month and is getting to the point where it has some usable functionality."

Comments (none posted)

XCircuit 3.2.23 released

Version 3.2.23 of XCircuit, an electronic schematic drawing package, has been released. The changes document says: "Rather important fix from back in revision 19, in which routine "pointtonet" is supposed to merge crossing wires if they cross on top of a subcell port. This is the method used to connect crossing wires with the "dot" symbol, so it is rather important."

Comments (none posted)

Financial Applications

BIE 6.0.4 Stable Released (SourceForge)

Stable version 6.0.3 of BIE, the Business Integration Engine, has been announced. "BIE 6.0.3 adds bug fixes for Map Builder macros and stability."

Comments (1 posted)

SQL-Ledger Version 2.4.2

Version 2.4.2 of SQL-Ledger, a web-based accounting application, is available. Changes include price list functionality, reconciliation screen changes, bug fixes, and more.

Comments (none posted)

Games

GLightOff 0.1.0 announced

Initial version 0.1.0 of GLightOff is available. "GLightOff is a gtk+ version of lightoff, a simple (but not so easy to solve!) puzzle game where the goal is flip to black all the tiles on the 5x5 board."

Full Story (comments: none)

Graphics

Gmsh 1.55 released

Version 1.55 of Gmsh, a 3D mesh generator for FLTK, has been announced. Here are the changes: "added background mesh support for Triangle; meshes can now be displayed using "smoothed" normals (like post-processing views); added GUI for clipping planes; new interactive clipping/cutting plane definition; reorganized the Options GUI; enhanced 3D iso computation; enhanced lighting; many small bug fixes."

Comments (none posted)

GUI Packages

GFC-Core 2.3.1 Announced

Development release 2.3.1 of GFC-Core, the GTK+ Foundation Classes, is out. Changes include a new signal system, dynamic creation of GFC objects, a C++ wrapper for GModule, improved examples and documentation, and more. Version 2.3.2 of the companion GFC-UI package was also announced.

Full Story (comments: none)

GLib 2.5.2 released

Unstable version 2.5.2 of GLib, the low-level core library for GTK+ and GNOME, is available. "This is the third development release loading up to GLib-2.6. This release contains a number of bug and portability fixes and some new API."

Full Story (comments: none)

PythonCard 0.8 Announced

Version 0.8 of PythonCard, a GUI construction kit for building cross-platform applications, is out. "Release 0.8 includes over 50 sample applications and tools to help users build applications in Python, including codeEditor, findfiles, and resourceEditor (layout editor)."

Full Story (comments: none)

Interoperability

Wine Traffic

The August 20, 2004 edition of Wine Traffic is online with the latest Wine project developments.

Comments (none posted)

Music Applications

dssi-vst 0.1 announced

Version 0.1 of dssi-vst is out. "dssi-vst is a DSSI wrapper plugin for VST plugins. It enables any compliant DSSI host to use VST instruments and effects. It requires Wine, liblo-0.9, dssi.h, and the Steinberg VST SDK headers to build."

Full Story (comments: none)

liblo 0.9 released

Version 0.9 of liblo, an implementation of the Open Sound Control protocol, is out. Changes include a nonblocking mesage dispatcher, Unix and TCP domain FIFO support, bug fixes, and more.

Full Story (comments: none)

TAP-plugins 0.7.0 announced

Version 0.7.0 of TAP-plugins (Tom's Audio Processing plugins) is out. New plugins include a Chorus/Flanger, a Sigmoid Booster, and a TubeWarmth filter. Bug fixes are also included.

Full Story (comments: none)

News Readers

Liferea 0.5.3b announced

Version 0.5.3b of Liferea, a multi-protocol news aggregator, has been released with bug fixes and translation improvements.

Full Story (comments: none)

PDA Software

Guikachu 1.4.2 is available

Version 1.4.2 of Guikachu, the GNOME Resource editor for PalmOS projects, is available with bug fixes.

Full Story (comments: none)

Web Browsers

Mozilla 1.8a3 Released (MozillaZine)

Version 1.8a3 of Mozilla has been announced. "Mozilla 1.8 Alpha 3 release includes a large amount of backend work, including site-specific CSS rules, transparent windows on Windows and GTK2, and undetected document."

Comments (1 posted)

Epiphany 1.3.7 released

Version 1.3.7 of Epiphany has been announced. "Epiphany 1.3.7 is a beta release in the unstable series leading up to GNOME 2.8." Changes include bug fixes and translation work.

Full Story (comments: none)

Miscellaneous

GENIUS 0.7.1 released

Version 0.7.1 of Genius, a calculator program with plotting capabilities, is out. "The coolness factor of this release then is that you can export to PNG. In any case this release is a bunch of fixes and some minor changes. For one we now have short documentation strings for all built-in functions. Secondly the continuity and numerical derivative functions now actually work instead of going into an infinite loop."

Full Story (comments: none)

Gwget 0.14 is out

Version 0.14 of Gwget, the download manager for Gnome 2, is available. Changes include a new speed limit option, show recursive options, bug fixes, and new translations.

Full Story (comments: none)

Nautilus Sendto 0.1 announced

Version 0.1 of Nautilus Sendto has been launched. "This application provide integration between nautilus, evolution, and gaim."

Full Story (comments: 1)

Languages and Tools

Assembly Language

libdisassemble 1.0 released

Version 1.0 of libdisassemble has been released under the LGPL. "Libdisassembly is simply a python library for disassembling x86 opcodes. It has been made for Immunity's PDB Project (a vulnerability development focused debugger), and is partially based on mammon's libdisasm opcode list (http://www.eccentrix.com/members/mammon/). There is still a lot of work to do with the Metadata, but the library tries to return as much information it can get off of an opcode."

Full Story (comments: none)

Caml

Caml Weekly News

The August 17-24, 2004 edition of the Caml Weekly News is online with the week's new Caml language articles.

Full Story (comments: none)

Lisp

GCL 2.6.5 released

Version 2.6.5 of GCL (GNU Common Lisp) has been released. "This version, the latest in the `stable' series, features changes to gmp, support for gprof, performance enhancements and bug fixes."

Full Story (comments: none)

Python

Dr. Dobb's Python-URL!

The August 23, 2004 edition of Dr. Dobb's Python-URL! is available with links to numerous Python language articles and resources.

Full Story (comments: none)

python-dev Summary

The August 1-15, 2004 edition of the python-dev Summary is available with coverage of the python-dev mailing list traffic.

Full Story (comments: none)

Scheme

Schemer's Gazette 2

Issue #2 of the Schemer's Gazette is online with a new collection of Scheme language article links.

Full Story (comments: none)

Tcl/Tk

Dr. Dobb's Tcl-URL!

The August 18, 2004 edition of Dr. Dobb's Tcl-URL! is out with the week's Tcl/Tk article and resource links.

Full Story (comments: none)

Dr. Dobb's Tcl-URL!

The August 23, 2004 edition of Dr. Dobb's Tcl-URL! is available. Take a look for the latest Tcl/Tk articles.

Full Story (comments: none)

XML

XML in localisation: A practical analysis (IBM developerWorks)

Rodolfo M. Raya explores the topic of XML Localization on IBM's developerWorks. "Learn how XML standards help facilitate translation processes that involve many participants in different locations. This article focuses on the most common XML formats used in the localisation industry to show you how important XML is becoming in multilingual document exchange."

Comments (none posted)

Serializing Java Objects with XStream (O'Reilly)

Michael Fitzgerald writes about XStream on O'Reilly. "Joe Walnes's XStream is a unique open-source Java library for serializing objects into XML and deserializing that XML into objects. Unlike other APIs, such as David Megginson's XMLWriter or Elliotte Rusty Harold's XOM, which use specific classes and methods to produce XML, XStream relies on Java idioms such as object names to produce element names and strings within classes to produce element content. It also produces a kind of reflection of objects in XML."

Comments (none posted)

Build Tools

Improve collaborative build times with ccache (IBM developerWorks)

Martin C. Brown introduces ccache on IBM's developerWorks. "Collaboratively building a C/C++ project using cc or gcc to share source files and other components works fine with CVS, but the time required to build the application when it has been merged with everybody else's changes can be significant. Even if you're not developing a project as part of a group, recompiling an application can take a lot of time. The ccache tool improves the build performance by caching the incorporation of header files into source files and therefore speeds the build time by reducing the time required to add in header files with each compilation stage."

Comments (none posted)

IDEs

Develop Your Own Plugins for Eclipse, Part 1 (O'ReillyNet)

O'Reilly is running part one in a series on writing Eclipse plugins. "Eclipse is a nice IDE, of course, but it's arguably the best platform for hosting your own applications. Using Eclipse facilities spares you from re-coding, for the 100th time, a framework for dealing with online help, generating wizards, or saving a file to disk. Eclipse ships with many helpful features, such as a Lucene-ready engine for searching your help documentation. Like any object-oriented developer, you don't want to reinvent the wheel."

Comments (none posted)

Miscellaneous

Gaphor 0.5.0 announced

Version 0.5.0 of Gaphor, a Python-based UML (Unified Modeling Language) modeling environment, is out. Changes include support for Stereotypes and UseCases, plugins, drag-and-drop package reordering, and interface support.

Full Story (comments: none)

Build code with lex and yacc, Part 2 (IBM developerWorks)

Peter Seebach continues his IBM developerWorks series on lex and yacc with part two "The second article of this two-part series explores more advanced lex/yacc development and introduces basic troubleshooting techniques. See e-mail headers parsed before your very eyes! Marvel at cryptic error messages! See a computer actually compute something!"

Comments (none posted)

Page editor: Forrest Cook
Next page: Linux in the news>>


Copyright © 2004, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds