Older blog entries for zeenix (starting at number 131)

Implementing UPnP Services just got easier

So jorn has commited my patch that implements the magic of autoconnecting action and state-variable query signals to GUPnPService. I am too lazy to write all about it so I'll just copy&paste the doc-comment:

 * gupnp_service_signals_autoconnect
 * @service: A #GUPnPService
 * @user_data: the data to pass to each of the callbacks
 * @error: return location for a GError, or NULL
 * A convenience function that attempts to connect all
 * possible "action-invoked" and "query-variable" signals to
 * appropriate callbacks for the service @service. It uses
 * service introspection and GModule's introspective
 * features. It is very simillar to
 * glade_xml_signal_autoconnect except that it attempts to
 * guess the names of the signal handlers on its own.
 * For this function to do its magic, the application must
 * name the callback functions for "action-invoked" signals
 * by striping the CamelCase off the action names and either
 * prepend "on_" or append "_cb" to them. Same goes for
 * "query-variable" signals, except that "query_" should be
 * prepended to the variable name. For example, callback
 * function for "GetSystemUpdateID" action should be either
 * named as "get_system_update_id_cb" or
 * "on_get_system_update_id" and callback function for the
 * query of "SystemUpdateID" state variable should be named
 * "query_system_update_id_cb" or
 * "on_query_system_update_id".
 * Note that this function will not work correctly if
 * GModule is not supported on the platform or introspection
 * is not available for service @service.
 * WARNING: This function can not and therefore does not
 * guarantee that the resulting signal connections will be
 * correct as it depends heavily on a particular naming
 * schemes described above.
GUPnP Network Light

Thanks to all the people who made and sent icons since this morning. I think I'll use the modification from Markus Berg though but I need to sort out the legal problems (since the original icon is under cc-by-sa) first.

GUPnP Network Light

Jorn has designed such an easy API for GUPnP that I've already implemented the UPnP part of the network light. Now I'll turn towards the GUI which is quite simple now that I've these images:

The first one I borrowed from the Tango project and it's obviously made by some professional but the second one is a modification on my own using Gimp. I'll still be thankful to anyone who can make me a nicer version of the second image. Note that I've removed the shadow from the second one and I did that because the shadow becomes quite dark when i alpha-composite the two images with alpha set to max.


Didn't realize until yesterday that I had screwed-up the treeview column headers while fixing the device treeview, so had to make a quite minor release.

Network Light

I'll be mostly finished with UPnP part of the Network Light sooner than later. For the GUI part, I desperately need an image of a light bulb, actually two images of the same bulb in two different states (on and off). Any graphics artist out there who would want to contribute to this project, please contact me at zeenix @ gmail.

GUPnP Tools now under GUPnP SVN

Don't ask why would any sane person move from git to svn and just accept the fact that GUPnP Tools is now under the GUPnP SVN. I'll still mostly be using git on my side using git-svn though and i strongly suggest others to do the same since it's still much better than using SVN directly.

gupnp-tools 0.1.1 released

Minor release.

- BUGFIX: Pack the text and pixbuf in the same column of device treeview.
- Require libglade 2.6.0 rather than 2.6.1.
- Print a warning when introspection creation fails.
- Some more english fixes with the help of Robert McQueen.

Download from: http://www.gupnp.org/sources/gupnp-tools/gupnp-tools-0.1.1.tar.gz

23 Aug 2007 (updated 24 Aug 2007 at 22:27 UTC) »
GUPnP tools released

I am pleased to announce the first release (0.1) of GUPnP Tools, featuring GUPnP Universal Control Point. Here are some screenshots:

I must point out at that GUPnP tools is part of the GUPnP project despite the fact that it's source repo is at a different location under a different SCM. Users should use the gupnp bugzilla and mailing-list for reporting bugs and asking questions.

Also I realized that writing a CLI for the universal control point isn't really worth the trouble so I'll start working on the network light now.


The fever played quite some tricks on me last week: there used to be no sign of it in the morning but it used to slowly come back as the day passed. Ultimately, I had to take 2 days off. Together with weekend, I rested for 4 days and now the fever is all gone.

When ansku was going through the pictures and videos from bcn trip on her camera, she found a clip I accidently took in which Andy Wingo is caught saying "oh shit!". Bids for this video starts from 100€.

GUPnP tools

I am done with the universal-cp (gui frontend). At least Jorn seem to like it. Thanks to him, the action invocation dialog is quite GNOME HIG compliant now. I will start working on the CLI frontend now and after I am done with that, I'll make the first release as these are the only two client-side binaries that i currently intend to provide.

14 Aug 2007 (updated 14 Aug 2007 at 18:27 UTC) »
The Barcelona story

Me and Ansku had quite a good time in Barcelona; saw some museums and churches, hanged around with fluendo and ex-fluendo guys. The Friday evening we had some delicious tapas at Ciudad Condal and on Saturday we enjoyed a good BBQ party at Andy's place. Christian had been a very good host, despite his illness. On the way back, I started to feel sick and I am still trying to recover.

GUPnP tools

Action invocation is already working <tada> and now i mostly need to do some code-cleanups and GUI fixing. I hate writing GUIs but to make my life even more miserable some dude tells me that the bug I reported is so low priority that he considers it a waste of time to explain why or how that is so.

9 Aug 2007 (updated 9 Aug 2007 at 20:31 UTC) »
GUPnP tools

Many thanks to Rob Taylor for providing me a publically-accessible git repo to host GUPnP Tools. This evening i pushed all the commits I had accumulated during the past 6 days. Also many thanks to jorn for adding the mutants of gupnp_service_proxy_send_action*() that take hash tables for in and out arguments which would ease things quite a lot for me since a generic client like the one i am writing wouldn't know the arguments at build time. While most of the functionality (not the eye-candy) is already implemented, the method invocation dialog turned out to be much more difficult to implement than i thought so looks like I wouldn't be able to complete it by the end of this week after all. :(

Barcelona! Here i come

After a few hours, I am flying to Barcelona with my sweetheart for a weekend-trip. Looking forward to spend some quality time with employees and ex-employees of fluendo.

122 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!