KDE Resources

Home David Projects KDE Resources
Updated: 2006-09-06


When working on personal projects, most of my time is spent in the K Desktop Environment (KDE). As a consequence of this, facilities or tools to make this environment easier or more comfortable to use are of interest to me. Since I'd rather write software for KDE in Python, rather than in C++, the PyQt and PyKDE group of Python modules are useful additions to the Python development tools and libraries available.

As well as writing conventional applications, PyKDE in particular allows Python developers to create improvements to the operation of core KDE components through the various plugin mechanisms available. PyQt plays a supporting role in this process by providing the core classes to provide a basic level of functionality required by PyKDE, just as Qt does for the KDE libraries.

I also maintain some Qt Resources that do not depend on PyKDE. These might be useful for people who use Qt on platforms other than KDE.

Available resources

PyKDE components

With PyKDE it is possible to create software components in the Python language which provide facilities and services to developers and users. Various packages have previously been made available that contained examples of such components. I am currently revising these components and hope to release a package for each type of component. There are four separate packages available:

This list should become more complete over time. Pending releases for KPart plugins and thumbnail generators are planned.


The interactive Python shell is very useful for learning about the language, trying out ideas and exploring library functions and classes. Although projects such as ipython make the above tasks more comfortable it is often difficult to visualise the results of such experiments, despite the use of pretty printed object representations by some authors.

Since the PyKDE package includes Python bindings for the KHTMLPart class, a feature rich canvas for displaying HTML pages, we can trivially present objects using representations which would be impossible to render using a normal terminal. We may use different styles of text, images and tables to assist the visualisation of data in a familiar form to users. Since the KHTMLPart is able to apply a style sheet to the HTML document it contains, it is also possible to allow the user to customise the presentation to suit their taste.

Further information on khpython, including examples and screenshots, can be found on a separate page.


An interactive Python shell using PyKDE and a KHTMLPart.
A collection of example kioslaves written in Python.
A collection of example KParts written in Python.
A collection of example KPart plugins written in Python.
A library for launching panel applets written in Python with an example applet for showing a user's bookmarks.
A collection of example ThumbCreators (thumbnail generators) written in Python.