Older blog entries for zeenix (starting at number 299)

Canon Pixma MP560 printer and Linux

When I bought this printer, I failed to find any Linux drivers for it. I must admit I didn't try hard to find them either since I was very much in a hurry at that time. Since then I had just assumed that drivers for Linux just don't exist.

But today I decided to search/try harder to get it working against my fedora laptop. The result was that I found the drivers very easily and after several minutes of efforts, I finally got it working! So I thought it blog about it and provide some pointers so process gets easier for others:

  1. Ensure you have 'DefaultLanguage en_GB' line in your /etc/cups/cupsd.conf and your firewall isn't blocking Port 8611 for TCP/UDP.
  2. Get the drivers from here. The drivers are available as rpm and deb packages.
  3. Once you have the packages downloaded and installed on your system, find out the mac address of your printer somehow. The method I used was to watch for packets in wireshark and pinging the broadcast address of the network.
  4. Once you have the mac address, Run this command as root:

    /usr/sbin/lpadmin -p MP560LAN -m canonmp560.ppd -v cnijnet:/${MAC_ADDRESS} -E

    Note that mac address bytes must be separated by '-' here rather than ':'.
  5. Your printer should now be installed and working!

Syndicated 2011-05-30 19:50:00 (Updated 2011-05-30 19:50:44) from zeenix

Rygel 0.10 is here!

We just made our first stable releases of Rygel after many months of active development. I used to post a blog entry after each release with the full-log but I stopped doing that because some people didn't like it going to planet GNOME and I thought chances are high that other viewer might also be getting annoyed by it.

Anways, I would like to highlight some of the changes since 0.8.3:

  • Lots of improvements to our interoperability with other DLNA devices in the market.
  • Many optimizations to search, browse and streaming.
  • More efficient and correct use of Tracker APIs.
  • Richer media hierarchies.
  • Simplified transcoding by use of new 'encodebin' GStreamer element.
  • Preferences UI has been trimmed down to only provide a few options that users actually need. The plan is for this UI to disappear completely in GNOME 3.2 in favor of better (more integrated with rest of the desktop) alternatives.
  • More configurability (through config files, commandline and environment) for power users.
  • Ability to use Rygel as only a streaming server (without advertising it on the network).
  • Ability to bind Rygel to specific networks by their ESSID or network IP address.
  • Loads of random bug fixes.
  • Port to more modern APIs. For example port from dbus-glib and GValue usage to GDBus and GVariant.
For a full list of changes, please refer to our NEWS file. Hopefully this release is in time to make it to upcoming releases of all major GNU/Linux distributions along with awesome GNOME 3. Which reminds me:

Syndicated 2011-04-17 01:19:00 (Updated 2011-04-17 01:19:03) from zeenix

5 Apr 2011 (updated 5 Apr 2011 at 20:12 UTC) »

Future Perfect

Ever since I blogged about me looking for opportunities outside Nokia, I was contacted by quite some companies. Some of them ended-up giving me nice offers but in the end the offer that stood out amongst all was from Red Hat. So last evening, I accepted their offer to join the awesome Spice team.

The reasons I chose Red Hat over others were:

  1. Red Hat being undoubtedly the leader in Open Source technologies for more than a decade has always been on my 'awesome places to work at some day' list.
  2. The Spice project that I'm being hired to work on is simply awesome.
  3. They offer good working conditions.
I'll be staying in Finland and most likely working from home (unless I'm asked to work at the Espoo office). I will be officially joining Red Hat on May 2 and my last day at Nokia will be on April 21.

Before you ask, nothing disastrous is going to happen to GUPnP and Rygel. Of course I won't be spending as many hours on these projects as now but keeping in mind that my first 2 years of work on both these projects was purely in my spare time, I think I'll still be able to keep these projects running. Perhaps now I'll be able to better focus on upstream needs rather than that of my employers (more like working around DLNA conformance test tool issues).

Syndicated 2011-04-05 18:59:00 (Updated 2011-04-05 19:08:24) from zeenix

Yet another git history visualization

Here is a decade of GStreamer hacking squeezed into 5 minute visualization using gource.

I used the following commandline to create this:

gource -1280x720 -s 0.05 --stop-at-end --hide filenames  --highlight-all-users \
--file-filter po -a 5 --camera-mode track --user-image-dir ~/hackergotchies \
--disable-progress --disable-bloom --output-ppm-stream - --output-framerate 30 \
| gst-launch-0.10 fdsrc fd=0 ! 'image/ppm,width=1280,height=720,framerate=(fraction)30/1' \
! ffdec_ppm ! ffmpegcolorspace ! x264enc speed-preset=10 ! avimux ! \
filesink location=gst-dev-history.avi

Syndicated 2011-03-17 01:18:00 (Updated 2011-03-17 01:18:01) from zeenix

Rygel Development History Visualization (part II)

Here is yet another version thats twice slower (and therefore longer), has the gloom off and filenames disabled and is in H264+AVI format. Oh and this time I managed to use GStreamer to record the video, rather than ffmpeg.

In case anyone is interested, I used this commandline to create it:

gource  -1280x720 -s 0.1 --stop-at-end --hide filenames \
--highlight-all-users --file-filter po -a 5 --camera-mode track \
--user-image-dir ~/hackergotchies --disable-progress \
--disable-bloom --output-ppm-stream - |gst-launch-0.10 fdsrc fd=0 \
! 'image/ppm,width=1280,height=720,framerate=(fraction)60/1' ! \
ffdec_ppm ! ffmpegcolorspace ! x264enc speed-preset=10 ! \
avimux ! filesink location=rygel-dev-history.avi

Syndicated 2011-03-16 02:18:00 (Updated 2011-03-16 02:18:05) from zeenix

Rygel Development History Visualization

I recently discovered this awesome tool called, gource. Using that I created a visualization of rygel's development history and uploaded here.

Note that translation commits are missing. That doesn't mean I do not acknowledge or value those contributions but I had to exclude them because otherwise the screen was too crowded for viewer to actually see anything at all.

Syndicated 2011-03-13 16:18:00 (Updated 2011-03-13 16:18:33) from zeenix

12 Feb 2011 (updated 14 Feb 2011 at 01:11 UTC) »


Now that my company has decided to join forces with Microsoft, I am no longer certain of my future at Nokia. Although I would really like to stay until our MeeGo product is out at least since I hate leaving things unfinished but I don't see any harm in starting to look for other opportunities already.

So like my colleague and friend, Alberto I have put my updated CV here. Feel free to send job offers or suggest any good open job positions to my inbox.

Syndicated 2011-02-12 16:44:00 (Updated 2011-02-14 00:17:20) from zeenix


I'm going to FOSDEM, the Free and Open Source Software Developers' European Meeting

Not only that, I am also delivering a talk on one of my favorite programming languages, Vala. My other favorite language is always nicely presented by his awesomeness, Andy Wingo so I don't need to talk about that. :)

Yes, I'm not doing a rygel or gupnp talk this time. My apologies if that disappoints anyone. :)

Syndicated 2011-02-01 22:50:00 (Updated 2011-02-01 22:50:09) from zeenix

24 Jan 2011 (updated 24 Jan 2011 at 02:11 UTC) »

Rygel needs your help!

While it is a well known fact that Rygel is as awesome as this new Intrepid class ship of mine in Star Trek Online

unfortunately its preferences UI looks as ugly as this

Apart from being ugly, it also doesn't really integrate well in GNOME as there is already a UI that lets you easily specify your file sharing preferences: gnome-user-share. I had some discussions with Bastien on how to fix this and we had agreed on a plan to kill this UI while merging the relevant parts of it into gnome-user-share in July 2010:

  • Rygel:
    • always starts as part of the session.
    • times-out and exits if there is nothing to share.
    • (MediaExport backend) doesn't share anything by default.
  • gnome-user-share
    • uses the MediaExport's DBus API to add/remove folders.

While the Rygel parts are mostly in place, Bastien (being a very busy developer) didn't manage to get any time to do the gnome-user-share part and neither did I. :(

GNOME 3.0 is happening very soon and Rygel might not get its due fame in release notes (again) if there is no nice UI to impress the end users with. So if you want to help either Rygel or GNOME 3.0 project, here is you chance!

Syndicated 2011-01-23 23:28:00 (Updated 2011-01-24 01:19:49) from zeenix

Rygel 0.7.6 (A Kiss is But a Kiss)

Rygel 0.7.6 (A Kiss is But a Kiss) is out!

Another micro release to fix the critical regression in 'Year' hierarchy of
Tracker plugin.

All contributors to this release:

Zeeshan Ali (Khattak)

Download source tarball from here

Syndicated 2010-08-18 22:42:00 (Updated 2010-08-18 22:42:09) from zeenix

290 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!