Argh dbus-python
10 July 2008

I have banged my head around integrating PackageKit into Jockey for several days now, and it’s driving me up the wall. While a standalone PackageKit client works very well, it completely breaks when I integrate the PackageKit client into my Jockey D-BUS backend. At first I assumed I just made something wrong, so I tried a dozen different approaches, read the libpackagekit source, added a ton of debugging statements, but nothing helps, I never get back D-BUS signals from PackageKit while being in an inner gobject. ... Read More
In order to provide a sensible upstream implementation for package query/install/remove methods in Jockey, I started playing with PackageKit and recently packaged and fixed the latest upstream version 0.2.2 work reasonably well on Intrepid. Unfortunately there are no official Python bindings yet. The raw D-BUS interface is slightly inconvenient to use, since it is fully asynchronous. This seems to be pretty redundant to me, since D-BUS already provides asynchronous method calls (if you need them) and makes writing code painful in synchronous programs. ... Read More
A while ago I blogged about my participation in the c’t programming contest to write a bot that plays against the 1979 Atari console. Submission deadline was June 30th, and the results are trickling in now. I am on rank 104, which I’m more than satisfied with. Unsurprisingly I didn’t make the top 50, I spent way too little time on it. But I had lots of fun with it, I have something that works, and at least outperforms my own Asteroids skills 🙂 ... Read More
Wow, thanks to all for all the good feedback and suggestions I got about the v4l-dvb driver package. If you are still looking for a nice and feature-rich frontend, you can take a look at the newer vdr packages for Ubuntu. Hanno, maybe you are interested in maintaining these packages directly in Ubuntu, together with the MOTUs? Then intrepid will always have up to date packages, and it is no problem to backport them to stable releases, 8. ... Read More
Following up on my recent blog to make my Hauppauge WinTV Nova-T play under Hardy, and my ongoing work for improving the driver situation under Ubuntu and Linux in general, I finally packaged the current development snapshot of the Video4Linux DVB drivers. I used DKMS for generating a Debian package out of the driver source tree, which works really well after I sorted out a couple of issues with upstream (which are by and large fixed upstream now, thanks Matt and Mario! ... Read More
I finally sorted out some remaining issues and released a new Jockey. This brings support for third-party package repositories, and implements an XML-RPC driver database client, aside from the usual load of bug fixes. The test suite improved again, too, it (optionally) uses python-coverage now. Planning ahead, the next things I want to get to are Find some interested people to work on a driver database server (I will write a specification page for it soon). ... Read More
As a lot of you were rightfully complaining, the automatic Apport crash bug retracers had been offline for about two weeks. The main reason was that the hardy chroot became totally broken, due to bugs in fakechroot. Yesterday I finally took some hours to track them down and fix them (see LP #228534). Now, after also dealing with the usual breakage of python-launchpad-bugs and Launchpad getting out of sync, the retracers have been restarted and are working happily again. ... Read More
Thanks to David for summarizing the future of hardware management. Interesting read, and the thread promises an interesting discussion.
The other day I read about the current c’t programming contest and got addicted immediately. The task is to create a program which plays the Atari Asteroids game from 1979: Unfortunately they do not send that gem to everyone :-), but they do send the original 8 KB of ROM, so you can play it on the MAME emulator. So far I got the emulator and the game running, and have a Python script which tracks the objects and their velocity vectors. ... Read More

Python code coverage
8 April 2008

Today I was playing with python-coverage, which seems to be the tool of choice for code coverage measurement in Python. Since I am constantly hacking on Jockey’s test suite, I want to strive for perfection and cover everything, so it does sound like something worthwhile. First I tried to use it like documented: python /usr/share/python-support/python-coverage/ -x tests/run which just caused the tests not to run at all, for no immediately obvious reason (it worked fine with real Python modules in apport). ... Read More