Kernel Traffic
Home | News | RSS Feeds | Mailing Lists | Authors Info | Mirrors | Stalled Traffic

KDE Traffic #26 For 23�Nov�2001

Editor: Aaron J. Seigo

By Aaron J. Seigo ,� Juergen Appel �and� Rob Kaper

Table Of Contents


Welcome to KC KDE! Compile issues were the bane of CVS this week, but that didn't discourage the developers from pushing closer to KDE3.0. The first beta is now just around the corner!

Perhaps one of the more interesting exchanges of the week occurred on the KDE bug tracking system between Linus Torvalds and David Faure regarding problems with fonts in KWord. Not only is Linus a model bug reporter who provides all relevant details, results of various experiments he conducts in an attempt to understand the bug and well thought out suggestions for improvements and fixes, he also uses CVS HEAD! It seems Linus is only content on the bleeding edge as he admitted, " I've been on the CVS tree for the last year or so now - I stayed on the 2.2.x branch for a while to see it stabilize, but it's gotten boring lately so I went back to the head last week.." You can read the entire bug exchange (and take notes for the next time you report a bug) at

1. Lan Browsing Wizard

7�Nov�2001 (5 posts) Archive Link: "lan browsing setup wizard, please have a look and comment"

Summary By Aaron J. Seigo

Topics: SMB, IOSlave

People: Alexander Neundorf

For those browsing SMB shares through KDE, life has not been as easy as it could be. While many wait for a completed IOSlave based on libsmbclient there are the lisa based facilities. Unfortunately many have found that it is less than intuitive to set it up. In an attempt to fix this problem Alexander Neundorf came up with a solution which he described in an email saying: " I hacked a setup wizard for the lan browsing module, since it is the way it is now obviously very hard to figure out for users how to do it. I put the screenshots online. The values you see in the line edits and stuff will be inserted automatically, so it is mainly an agreeing to the defaults in the common case. Please have a look and tell me what you think. Is it understandable ?"

The screenshots, one for each page of the wizard are listed below:


2. Kinkatta Gets Plugins

7�Nov�2001 (4 posts) Archive Link: "Plugins in Kinkatta!"

Summary By Aaron J. Seigo

Topics: Applications

People: Benjamin Meyer

Kinkatta, an AOL Instant Messenger client for KDE, reached the 1.0 milestone on October 29th. Having released a feature complete and stable version, it was time to start adding new features. Kinkatta developer Benjamin Meyer announced one of these new features saying, " After reading KC KDE #24 with the mention of how many apps are getting plugin support I thought I might add that as of that last weekend Kinkatta (Kaim for those that don't already know) supports Plugins. (Note how we released rock solid Kinkatta 1.0 first and then added plugin suport :) So far I have made a rot13 plugin (easily adapted to your favorite crypto choice), a tic tac toe game (created a base class for games, thus using tic tac toe to show it off), and a half finished (to be finished today) away scheduler ( i.e. from 3-4 on mondays it will automaticly put your away message to "At math lab" etc). It is all in cvs for anyone to play around with and make plugins. Anyone that writes up a cool plugin(s) with get them included with the standard dist of Kinkatta."

Benjamin provided a list of plugins that the developers had made based on suggestions and personal ideas over the last several months:

Benjamin also noted, "The 1.1 release will contain the new plugin code once that base clases have been fully thought out (i.e. end of this week :) and will hopefully drum up some developer interest. Questions, comments etc can be sent to the Kinkatta mailing list:"

3. Boson

9�Nov�2001�-�12�Nov�2001 (3 posts) Archive Link: "Boson"

Summary By Rob Kaper

Topics: KDE-Games

People: Andreas Beckermann

Andreas Beckermann announced that Boson, the KDE real-time strategy game, is back and alive:

I have rewritten nearly everything - there is just a single class that I did not touch beside some name adjustments. Boson is now 100% KGame and therefore supports for example computer players (although there is not yet any AI).

I have commited it all to the boson CVS some minutes ago. See on how to access the CVS anonymously.

Andreas' e-mail ended with a request for developers to join the Boson project. It's one of the KDE games with a lot of potential and hopefully the revived Boson project will deliver a fun game soon.

4. Debugging IOSlaves

12�Nov�2001�-�13�Nov�2001 (4 posts) Archive Link: "KDE Debug howto : need help on debugging kio_slave"

Summary By Aaron J. Seigo

Topics: IOSlave, Bug Tracking

People: Eric Devolder,�David Faure,�Stephan Kulow,�Waldo Bastian

A question that new IOSlave authors often face is: "How do I debug an IOSlave?" It isn't as simple as debugging a regular application since IOSlaves are executed and destroyed by the KDE desktop system as required and run as separate processes in the background. Eric Devolder ran into this exact challenge and wrote, " As I'm currently trying to write a kio_slave, I need to use some debugging tools." ... " The kio_slave is probably not the easiest application to debug, as it is loaded as a dynamic library. So if someone has some experience with that kind of soft & gdb, I would be *very* happy."

David Faure pointed him to the kdebase/kioslave/README file and with regard to seeing debug output said, " In ~/.xsession-errors if you start X using xdm. Or simply restart kdeinit in a terminal, typing "kdeinit", you'll see the output there. Once it's launched you can break into it with gdb." Stephan Kulow added another handy tip saying, "export KDE_DEBUG=1 before you start kdeinit to get core dumps of slaves."

Waldo Bastian also stepped up and provided a comprehensive answer saying:

Assuming as an example that you want to debug the io-slave for http, you can (re)start kdeinit in a konsole terminal like this: KDE_SLAVE_DEBUG_WAIT=http kdeinit

Now, when a http slave gets loaded by kdeinit it will get suspended till you either manually tell it to continue or till you attach gdb to it.

See kdebase/kioslave/DEBUG.howto for more information.

It can also be usefull to redirect the debug output of your particular slave to a file instead of stderr. E.g. I myself use the following lines in $KDEDIR/share/config/kdebugrc.


This redirects all debug info for areas 7103 and 7113 (as used by kio_http) to the file /tmp/http.

5. Standardized Scripting Interface

12�Nov�2001�-�14�Nov�2001 (20 posts) Archive Link: "[RFC] Unified Application Scripting Interface"

Summary By Aaron J. Seigo

Topics: DCOP

People: Ian Reinhart Geiser,�Harri Porten,�Cornelius Shumacher,�Waldo Bastian

Recently DCOP has had several additions and improvements made to it for KDE3, including Waldo Bastian's new DCOP command line utilities. Waldo's main co-conspirator in the quest to improve DCOP has been Ian Reinhart Geiser. This week Ian announced that he was working on standardizing how applications in KDE3 would implement DCOP based scripting. Ian announced this development saying:

As many of you know I have been working on adding many new DCOP interfaces to KDE 3.0. Some of you also know I have been working on different approaches to automate and expand KDE. I have attached a link to the current project I am proposing. It mixes the concepts of KParts Plugins and DCOP scripting. Please review the document and let me know about what you think. I would like to commit the interface and the script loader classes this week sometime.

This document is mainly for the scripting interface and its potential. The script loader is something that is a convenience thing and I am still not complete with that. Realisticly each script engine can be loaded just the same as normal KParts, so the loader is just an addition to make addition of the scripting facility easier and more consistent.

Ian provided a small patch against CVS for those willing to test and noted that so far there were engines for shell and python scripts with the ability to other languages later. There was some initial confusion on the list as to what exactly this new capability was supposed to provide, so Ian provided some clarification saying, " The idea is that some out of process behavior is not appropriate for automation. The idea behind this is to provide a common interface for script engines to extend the application. If you read the linked document you will see that the API is made to provide access to the parent object in the application so that you can use something like python or ruby to embed and extend the current application or just script it. This is to bridge the gray area between plugins and dcop scripting again"

Cornelius Shumacher asked for an example of this might be used within KDE and Ian happily obliged him saying:

A secretary has access to 50 staff KOrganizer calenders and every morning she needs to get an idea of who is doing what. For her to open 50 calenders would take all morning. So a staff developer could write a simple shell script that would tell KOrganizer via dcop to iterate through a list of calenders and open them up. Apply a filter to only show a certain event and then save the calender to an HTML file in a certain directory. Now this process assumes that KOrganizer has the needed dcop interfaces.

The idea here is that as far as the secretary knows she is using KOrganizer. We are allowing end users and developers to expand on the features of current applications via automation.

The next stage involves using a shared parent object. This way the script using python/ruby or perl can access the parent objects public member functions. This requires about as much preparation as setting up dcop interfaces in an application so it is really up to the developer. The advantage of this shared parent object or "object twin" is that you can pass large objects back and forth without the overhead it causes to dcop. You can also allow more flexibility in the nature of the script plug in.

With general explanations out of the way Simon Hausman, Harri Porten, Cristoph Cullman and Ian went on to discuss a variety of technical details surrounding Ian's initial implementation.

6. KDE-Edu heading towards KDE 3.0

16�Nov�2001 (2 posts) Archive Link: "[Kde-edu-devel] kdeedu module"

Summary By Juergen Appel

Topics: KDE-Edu, KDE 3

People: Anne-Marie Mahfouf

According to Anne-Marie Mahfouf the kdeedu module is likely to be released with the upcoming KDE 3.0. At the moment the module consists of

Although "some small adjustments like updating the docs a bit and drawing some icons" is still to be done "This could be done very quickly." Anne-Marie also remarked that "It is important that the first release goes well so we need to all work on that one"

7. KMD5 Fixes To Help KMail

16�Nov�2001�-�17�Nov�2001 (4 posts) Archive Link: "KMD5"

Summary By Aaron J. Seigo

Topics: KMail

People: Dirk Mueller,�Dawit Alemayehu,�Dawit Al,�Waldo Bastian

In a system made of numerous components and libraries, bugs in one part of the system can affect applications elsewhere. In a closed source environment this can be very frustrating at times, but when the source is available solutions can be had fairly quickly without implementing ugly kludges in the application code in an attempt to guess-fix the underlying problems. As an example, Dirk Mueller was playing with KMail and noticed problems with KMD5, which is a class that computer the MD5 sums of data given to it. Concerning his experience Dirk said, "after a 5 minute experience with kmail I noticed that some of the leaks of kmail come from KMD5, where every calculation leaked at least 16 bytes because of incorrect class usage. I had a look at the class and I noticed a lot of flaws in the API, so I decided to fix those. Please have a look and comment if we can have a greatly fixed API in KDE 3 or if the source incompatible changes are too much. Note I didn't even test if the class still works - however I didn't change anything in the "core calculation" routine - so it should still work fine. however I don't know a MD5 POP3 or webserver to test with"

Dirk listed eleven items that he fixed in the class and three issues that remained open for further work. Waldo Bastian noted that one of the fixes wasn't correct in all cases and Dirk made appropriate changes. Dawit Alemayehu, the original author of the class, offered his opinions on both the fixes and the open issues and said, " I know HTTP MD5 test sites and I will test it with that once I finish compiling everything. Thanks for fixing this up it now has a clean API."

8. KDE3beta1 Delayed

19�Nov�2001 (1 post) Subject: "CVS HEAD - Beta1 delayed"

Summary By Aaron J. Seigo

Topics: Release Schedule, Bug Tracking, KDE 3

People: Dirk Mueller

Not everything can go smoothly all the time. Dirk Mueller broke the news that the first beta release of KDE3 will be delayed saying, "given the very bad shape of current CVS has I delay the Beta1 release by one week to give more time to fix the numerous (compile) problems. New release target date is December, 10th. Packaging is done on December, 3rd. " Best of luck to all the hardworking KDE developers in their efforts to get KDE3 out on schedule!

9. KOffice Thesaurus

19�Nov�2001 (5 posts) Subject: "Thesaurus now in CVS"

Summary By Aaron J. Seigo

Topics: KOffice, Thesaurus

People: Daniel Naber

In late October Daniel Naber sent an email to the KOffice development list saying, "I'd like to add my wordnet frontend as a KDataTool." Daniel had some questions which the KOffice team answered and he began to write code. Dozens of emails, extensive collaboration with other KOffice developers, and a few weeks later Daniel announced his success: " KOffice now includes an English thesaurus. The data is a subset of WordNet, with many not so common words removed to make it smaller. Please test (use RMB and select "Show related words" in KWord)."

Sharon And Joy

Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License version 2.0.