debexpo music photography planet-bongo planet-collabora planet-debian planet-gnome planet-maemo school synce

Have a look at the most recent posts below, or browse the tag cloud on the right. An archive of all posts is also available.

Recently, I've been working on a file transfer app for the N900. It's called monorail and I uploaded it to extras-devel last night, so you can try it out right now.

Click for full-sized image

I implemented an OssoABookContactView with support for filtering on Contact Capabilities (or a draft of it, at least) as old-style caps aren't great. This gives a nice list of address book contacts who have at least one account that should support receiving file transfers. It would be nice if these extra caps could go into the address book which is where they belong, but it won't.

If someone would find this widget useful, I'll clean up the code and maybe throw it in its own library.

Click for full-sized image
Choose one of the accounts which support file transfer.

I also started to implement a sharing plugin, but it turns out it's poorly documented and appears to be impossible to do anything useful for my use-case, like popping up a dialog when the user taps "Share". The example isn't very exemplary, but does contain some amusing code.

This sharing plugin is only half-written and impossible to debug. If anyone has any pointers on writing these plugins, I would appreciate them.

Click for full-sized image

It's a shame that although Hildon widgets can look really good on the device, it can often take some fiddling to make them look consistent with the rest of the UI. Additionally, oddities in some widgets can leave you baffled, or amused.

The most annoying thing I have come across regarding this app is just how little I can get it integrated. The file manager is all hard-coded so there's no way to add a Send to Contact menu item, and no buttons can be added to the libsharing dialog (which appears when the user shares a photo) which is annoying as it looks like it's missing this feature.

Click for full-sized image

Oh, and Telepathy is pretty sweet.

Posted Thu Jan 14 14:44:00 2010 Tags:

A few weeks ago, I got a cool Christmas present from work. It's pretty sweet, and I've been writing some apps for it. I'll try and blog about them here.

A while ago, I wrote some a number of account plugins for Maemo 5, so that other Telepathy connection managers could be used and well-integrated into the N900's Contacts and Conversations User interface. This enables the following extra protocols:

There are still a few problems which I'll try to iron out soon enough but they appear to be working pretty well. The best thing about it is clearly the integration with the rest of the phone, as demonstrated by Marco in the screenshot above.

The PR1.1 update, which is due today, also opens the door for enabling other protocols dynamically by providing libpurple plugins. I will be adding Facebook Chat support soon, and someone else has made a package for Twitter.

This is in extras-testing for you all to download and try out. You can find all the packages in the "Network" category of the Application manager. The Extra protocol plugins for Conversations and Contacts metapackage (telepathy-extras, in reality) pulls in all the cool account plugins and connection managers of the time. File bugs from the maemo.org package link.

Posted Thu Jan 14 12:30:00 2010 Tags:

So we all know how awesome Telepathy is, but sometimes debugging it can be rather a pain. I die a little every time I see "so, just run gabble from the command line with GABBLE_DEBUG=all etc" on #telepathy.

Daf started implementing a debug interface in gabble but he fled the country, so I finished it off, and added a hot new dialog to Empathy.

So now that your debug messages are appearing on D-Bus, you could easily write a simple script to tweet them. Sounds like a good idea, right?

Additionally, if you're a Telepathy developer, this may be overkill^Wuseful for your zshrc:

g () {
    project=$(basename `pwd`)
    GABBLE_DEBUG=all SALUT_DEBUG=all EMPATHY_DEBUG=all HAZE_DEBUG=all \
        GABBLE_PERSIST=1 SALUT_PERSIST=1 HAZE_PERSIST=1  EMPATHY_SRCDIR=. \
        libtool --mode=execute gdb -q --args ./src/$project --g-fatal-warnings
}
Posted Sat May 2 00:31:29 2009 Tags:

From Monday I will be away in Moscow with little internet connectivity. I get back next Sunday.

Posted Sun Aug 31 01:22:55 2008

debexpo (Debian package exposition) is a web application that allows one to run a user-friendly public Debian package repository with social interaction that one may be used to from social networking sites. debexpo will be the basis for the mentors.debian.net site but will be useful for others as well. debexpo is the project I am working on for this year's Summer of Code for Debian under the watch of Christoph Haas

debexpo is more than just a web application though. It was based on suggestions by you, and therefore it has some nifty features:

  • Uploading is done through HTTP PUT directly in debexpo, and handled immediately. This means that packages can be available within seconds of you uploading the package instead of having to wait for a cron job running an importer.
  • debexpo supports plugins for several stages of package life-cycle. The main use of these are for QA purposes on the package, such as automatically running Lintian, checking the watch file, or checking bugs closed actually belong to the package in question, but there is scope for much more. Plugins are easy so you can customize a repository to check for whatever you want. Other cool plugins allow features such as pulling an orig.tar.gz from Debian if it is absent from the upload and not in the repository already. Plugins provide you the option to customize your repository for any purpose.
  • Users will be able to have their own personal repository (much like Launchpad's PPAs) to host binary packages. This is simply achieved by creating a new user, uploading, and adding the appropriate entry to your sources.list.
  • Sponsors will be able to tell debexpo what kind of packages he or she likes to see, and a filtered package list will be shown. These kind of filters will include whether it's a python package, or C library, whether it uses CDBS or straight debhelper, or even whether the maintainer is in the New Maintainer process (this is clearly a mentors-specific feature).
  • Packages will be able to be commented on by other users, in the same way as Ubuntu's REVU tool. This keeps package discussion in one place, and Debian Developers can claim to have uploaded the package. This is useful to stop the scenario of a Debian Developer reviewing a package that has requested a sponsor, and then finding the package has been uploaded already after the initial uploader left no mention of this.
  • And more to come.

Development can be tracked through its Trac instance: http://debexpo.workaround.org/, where I invite you to submit tickets or even submit patches! Its Git repository is public: http://debexpo.workaround.org/debexpo.git (and mirrored here). Last but not least, the there is also a low-traffic mailing list.

I invite you to try it out, and report bugs. Posting to the list is a great way to get in contact.

There is little visible eye-candy in your browser to show for the work so far as nearly all the work so far has gone into the backend. A sneak peek at what it looks like at the moment is available though:

As you can see, the theme is somewhat familiar. Hopefully, as the SoC program nears an end, this will be fixed.

Oh, and hello: this is my first post to Planet Debian.

Posted Wed Jul 9 01:41:46 2008 Tags:

I'm heading off to Norway tomorrow on the university orchestra tour, so will be away from the internet for a week.

Posted Mon Mar 17 19:13:16 2008

So, Bongo 0.3.0 was released yesterday. It has some interesting new features, most notably CalDAV support! I just finished the Debian packages of 0.3.0:

bongoproject (0.3.0-1) experimental; urgency=low

  * New upstream release.
  * Added bongoproject to bongoproject-tools depends. (Closes: #438836)
  * debian/patches:
    + Removed apache-config.diff -- now upstream.
    + Removed sqlite-3.3.17.diff -- now upstream.
    + Removed hawkeye-apache.diff -- now upstream.
    + Removed smtpd-rset.diff -- now upstream.
    + Removed change-libexecdir.diff -- not necessary.
    + Updated remove-bongo-external.diff.
    + Added standalone-etc-default.diff -- allows bongo-standalone to get
      options from /etc/default/bongoproject.
  * Moved bongoproject-tools to pycentral.
  * debian/copyright:
    + Removed cURL license info. This is now gone from import/.
    + Added myself and email addresses.
    + Added information about having repacked the tarball.
  * Bumped Standards-Version to 3.7.3.
  * debian/control:
    + Corrected typo in long descriptions.
    + Added Homepage field.
    + Added Vcs-{Git,Browser} fields.
    + Added python-lxml build-dep and bongoproject-web dep.
    + Removed ldap-utils and slapd deps.
    + Changed bongoproject-dbg to Priority: extra.
    + Misc. dependency updates.
    + Changed bongoproject to Arch: all.
  * debian/rules:
    + Updated install/python-bongoproject rule.
    + Removed libexecdir hack.
    + Added rule to remove empty /usr/lib directory from bongoproject-web.
    + Added --enable-debug-cflags configure argument to produce a proper dbg
      package.
  * debian/*.install: Updated list of files to be installed.
  * debian/*-overrides/: Removed lintian & linda overrides.
  * debian/README.Debian: Updated instructions.
  * debian/bongoproject.postinst: Added call to "bongo-config install".
  * Renamed libbongoproject0-dev package to libbongoproject-dev.
  * Added new package, libbongoproject-runtime, to contain .so files for use
    with the tools.
  * debian/bongoproject.default: Added comments, updated and modified for use
    with the new bongo-standalone agent.

 -- Jonny Lamb  Thu, 31 Jan 2008 16:17:45 +0000

Visit Installation/Debian for instructions on getting these packages. I'll try and get these uploaded to Debian very soon.

Posted Thu Jan 31 17:48:43 2008 Tags:

I got a little bored of looking at gitweb with no syntax highlighting, so I shoved in support for Enscript:

Also, it's easier to select source straight from the browser without the line numbers prefixing every line -- something one does every day, of course:

Of course, there are a few bugs and limitations in this. I just wanted to blog with some pretty pictures, I suppose. Now I can see why I've never touched perl before though.

Posted Sun Jan 6 01:57:42 2008

I've been messing with Empathy recently while setting up a Jabber server, and I thought I'd try out telepathy-butterfly (the Telepathy MSN connection manager). The packages in unstable/experimental kind-of worked, but there were some distinct features missing. Upstream's devel branches of the three main components (telepathy-butterfly, pymsn and telepathy-python) contained most of the functionality I was after. It seems the last release (which is packaged) is rather old.

I created some packages of these snapshots. Add the following lines to /etc/apt/sources.list:

deb http://jonnylamb.com/debian/telepathy-butterfly ./

And execute:

sudo apt-get install python-telepathy python-msn telepathy-butterfly
Posted Sat Dec 15 21:46:41 2007

So, I've been getting into this photography lark recently, and today I tried out a panoramic shot for the first time. I used hugin to stitch the photos together, and quickly found that more control points = better stitching. This is my first attempt and have learnt that taking the photos at 4pm in a really windy day, is not a great idea. Although I am really pleased about the stitching, the differing colours of photos makes it obvious where the stitches have taken place. The wind blowing the trees also didn't help.

So, tomorrow I'm going to attempt to have another go in perhaps a few other places at 12pm, or whenever the Sun is directly above, and hopefully I can patch together a seamless shot. Fingers crossed.

Update: The photo uploaded to flickr is a little small and horrible. Here is a link to a 1.3MB JPEG file of the same thing. The original is 10MB or so, but I don't think I'll put that on the web as it isn't actually any good as a panoramic shot -- I'm just really pleased the stitching is good!

Posted Sun Sep 16 23:22:38 2007 Tags:

This blog is powered by ikiwiki.