Monday, April 28, 2008

whats wrong with my python setup?

Can any python guru out there explain whats going on here:

$ /usr/bin/gnome-about
Traceback (most recent call last):
File "/usr/bin/gnome-about", line 35, in ?
import gtk
ImportError: No module named gtk

$ head -n 1 /usr/bin/gnome-about

$ head -n 36 /usr/bin/gnome-about|tail -n +29

import pygtk
pygtk.require ('2.0')

import gobject
from gobject.option import OptionParser, make_option
import gtk

$ /usr/bin/python
Python 2.4.5 (#2, Mar 12 2008, 00:15:51)
[GCC 4.2.3 (Debian 4.2.3-2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygtk
>>> import gtk

$ /usr/bin/python
Python 2.4.5 (#2, Mar 12 2008, 00:15:51)
[GCC 4.2.3 (Debian 4.2.3-2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygtk
>>> pygtk.require ('2.0')
>>> import gtk
Traceback (most recent call last):
File "", line 1, in ?
ImportError: No module named gtk

UPDATE: Thanks to Karl-Lattimer, the problem was solved by:

# rm /usr/bin/python
# ln -s /usr/bin/python2.5 /usr/bin/python

Saturday, April 26, 2008

gupnp-media-server coming soon..

Next on my TODO is a desktop-wide UPnP MediaServer based on tracker. Basically, it will make all of your media availabe to other UPnP devices that is tagged as "shared via UPnP". I already have a working dummy implementation, based on code from Jorn's rhythmbox plugin. I call it "dummy" because ATM it only exports a hardcoded list of media files. Here is a screenshot of Windows Media Player playing music from it using on2share plugin:

Thursday, April 17, 2008

History Meme

I don't know what the hell is this all about but seems like a cool thing to do and in-fashion these days so here I go:

$ history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head
100 cd
78 make
58 ls
36 vim
22 ldd
21 ssh
12 git-diff
11 src/av-cp/gupnp-av-cp
10 git-log
10 ./

Saturday, April 12, 2008

talking of overnight changes

My last blog entry reminds me of what my bank (Sampo bank) recently did. They were recently bought by a Danish bank and as part of the integration process, the e-banking system of Sampo was replaced by a stupid system that Danish bank had been using. The biggest problem with it is that it doesn't work on every machine, not even all i386 running windows. The result was that a large number of customers moved there money to other banks. Fortunately for me their system do work on this Linux laptop I am using to write this blog entry but my 64-bit desktop is another story. :( According to Riku Voipio, the problem is that they are using some 'native code' in their JAVA applet, now how pathetic is that. These kinds of things happen when a bunch of no good managers with no (or not enough) technical knowledge make decisions about technology behind closed doors.

To add to my agony, their cross-border money transfer has some problems too and if I knew that I would never have used bank-to-bank transfer as the method to send money to my mother for her chemotherapy. I had to call my ex-boss to talk to his friend who works in the destination bank and he just told us that the Bank's branch number/name wasn't conveyed to them.

SOAP support dropped from libsoup

Soon after I announced the release of gupnp-tools/av, someone pointed out that libsoup-2.4 is already out and therefore gssdp and gupnp needs to be ported to the new API. I am already done with the porting of gssdp and most of the gupnp (thanks to Dan Winship for being so helpful) but then came the shock: the SOAP support has suddenly been dropped from libsoup. I blamed my ignorance on me not being subscribed to libsoup ML so I started to dig into the archives but failed to find any mention of this change.

I know how to solve this issue and I am sure Dan will help me out in this one as well but IMO APIs should be deprecated first and then removed in the next major release.

Tuesday, April 8, 2008


If you have recently seen a post by the name "Back to Hel(sinki)", from me, please ignore that. It's just just (or is it p.g.o?) punishing me for adding tags to a two week old post. :(

GUPnP Tools 0.3 released

This release features AV Control Point, a simple media player UI that enables one to discover and play multimedia contents available on a network. Hopefully a useful tool to test and debug UPnP MediaServer and MediaRenderer implementations. [Zeeshan Ali]

Other changes in this release:

- Desktop file for each tool. [Ross Burton, Zeeshan Ali]
- New Icons. [Vinicius Depizzol]
- Various misc improvements and fixes. [Zeeshan Ali]

Download from

Here is a screenshot of GUPnP AV CP in action:

Introducing GUPnP A/V

The first release of GUPnP A/V is now available. GUPnP A/V is a small utility library that aims to ease the handling and implementation of UPnP A/V profiles.

GUPnP A/V is free software released under the GNU LGPL.