Archive for category Uncategorized

Building for iOS5 with XCode 8

Part of my day job is creating a mobile app, of which one of the platforms we deploy to is iOS. We still have some users out there on iPad 1’s and the latest version of iOS that’s available for them is 5.1.1, which the latest version of XCode (version 8.1 at time of writing) doesn’t support.

Up to and including XCode 8.0 we’ve been able to build for iOS5 without trouble just by changing the “Development Target” setting to 5.1.1, however XCode 8.1 complains with an error “ld: library not found for -lcrt1.3.1.o”. Turns out that the iOS10 SDK doesn’t ship with this file any more, effectively dropping support for iPad1’s.

Fortunately the solution is simple, to take a copy of crt1.3.1.o from an older copy of XCode and put it into the /Applications/ folder, and just like that it’s possible to build for iOS5 again.

No Comments

Summer Status S’chwupdate

So I was allowed to have a few days break from my day-job over the xmas break, and in between making desserts and back-breaking work in the garden, I managed to do a few Pidgin related things 🙂

Read the rest of this entry »

No Comments

Facebook to shut down their XMPP service

So it’s been recently announced that Facebook are planning on turning off their XMPP gateway for Facebook Messaging. Their announcement says that it’ll be completely turned off for good as of April 2015, but that it’s just deprecated for now.

This is kind of a bittersweet announcement. The XMPP gateway was never really as feature-complete as any of the other messaging options provided by Facebook (by this, I mean the mobile Messenger client and the Firefox-powered Desktop Messenger), but it’s rise to prominence was the main reason I gave up on the old HTTP-based Facebook Plugin for Pidgin, which pretended to be a mobile browser.

So, now it looks like it might be time to dust the cobwebs off the old FB plugin and give it another crack. The other option is starting again, but reverse-engineering how the mobile Messenger clients work (might have something to do with MQTT?).

So that’s another big service dumping XMPP – we’ve already had MSN, AIM and Google deprecate their XMPP gateways. Who’s next? Does this make XMPP dead? What’s going to be the ‘next big thing’ in messengers? I guess that’s half the reason I like working with libpurple/Pidgin is that it’s an ever changing landscape with new things to learn from bigger companies.

No Comments

OpenDyslexic font in MIUI

I’ve been using the OpenDyslexic font from Abelardo Gonzalez ever since I read about it on Slashdot. I wanted to try it out on my Android phone that’s running MIUI rom and the easiest way to do that is by creating a theme.

You can download the theme from: here, then you just need to extract the zip file and copy the mtz inside onto your device’s /sdcard/MIUI/theme/ folder

You can then set a custom font in your current theme to be OpenDyslexic. Easy 🙂

I’ve been trying to upload the theme to the official themes repository, but I don’t read/write Chinese so I’m only guessing that they keep rejecting it because it doesn’t include a lockscreen. But it’s just a font! I don’t understand 🙂

Edit 2013-06-25: Updated to latest version of OpenDyslexic from


Back Up and Running

If you’ve been trying to access the site for the last few months, you’d probably been getting a lot of timeout issues and not being able to connect. Unfortunately several systems failed and I’ve been too unwell to repair/replace a lot of it. A lot of the parts that I did replace ended up being faulty and ended up soaking up more time than I had the energy/health for.

I’m happy to say that I’ve now spent a bit more time to copy files from old servers onto the new one and everything’s back up and running again 🙂 Hurrah! \o/

Apologies too to those people trying to download the Skype plugin from and finding that they couldn’t access the files. I made a mirror of some of the files that I had from an accessible computer on the Google Code page, but not all of them (of particular note, the .exe installer for the Skype plugin). You should be able to download the plugin now, but flick me an email or leave a comment below if you don’t have any luck.

In other news, in the last few months the Steam plugin for Pidgin/Finch has been wrapped into an Adium plugin by Hermi Hg, and it’s even made the front page of as the “xtra of the moment”, as well as getting a mention on Adium’s Twittermobile Big ups to him 🙂

1 Comment

I got hitched…

… so now I’m a free man! Yes, that doesn’t really make sense, but I’ve been working hard with my wife for the last couple of years to make everything for our wedding. So that means that now that it’s over I have a lot of spare time up my hands 🙂

I just have a couple of things to catch up on, a massively overgrown garden to tame and a month-long honeymoon coming up, but other than that I’m really to roll up my sleeves and get coding.

So, what do you want to see fixed/updated/changed next?


Completely dead…

… well, not me, but my server. Unfortunately all the earthquakes have meant occasional power cuts, which completely killed the battery and HDD on my server machine. I’m now running this site off another machine I have as a temporary measure until I move the site somewhere more permanent – probably Google Sites or something.

The backup I had also didn’t have my last blog post in it, so I had to recreate it from a Google cache backup.

No Comments

Pidgin Summer of Code Ideas

Summer of Code is approaching, and there’s been a lot of comments from people on the Pidgin developer mailing list. Most of peoples submissions are from the list at but I’ve been thinking about a few ideas of my own that I’d love to see in Pidgin.

  1. Better Windows 7 integration.
    Windows 7 has new jumplists and preview panes and that file-transfer progress thing. Skype uses them all on Win7 and it looks pretty nifty. Would love to see that in there
  2. SIP protocol plugin
    With the new voice/video API in Pidgin, there’s been a few requests to have SIP (rather than SIMPLE, which is already in Pidgin). There’s a Sophia-SIP prpl at which would be a great starting point
  3. An over-the-net remote control for Pidgin/Finch
    I started working on this one myself with a friend, starting with a web interface for Pidgin to use it with the iPhone, and working on a prpl that would let you remotely sign into, say, your home Pidgin and use it from work, while logging the conversations at home and without signing out of your home accounts. (I should really put the source code for that online sometime)
  4. A plugins site a la or
    Some kind of plugin that can update other plugins would be handy too. I have a lot of users of various plugins of mine that are using old versions, just because they didn’t know a newer one existed. If there was an autoupdate as well as a single place with all the plugins, that would be super-duper

Anyway, that’s my ideas. Anyone have any others?


Its Finally Here! XMPP for Facebook

There’s just been a blog post by the Facebook developers to say that they’re finally allowing XMPP on Facebook. Here’s the details:

  1. Create a new XMPP account in your favourite XMPP client, eg Adium or Pidgin
  2. Use your Facebook username in the ‘username’ field. If you don’t have a username get one at
  3. Use ‘’ (without the quotes) in the ‘domain’ field
  4. Enter in your password
  5. Uncheck the Require SSL/TLS settings
  6. Check the ‘Allow plaintext auth over unencrypted streams’

You should be good to go 🙂


Cross-Browser Gradient Backgrounds

Recently, one of the websites I work on was given a makeover and I was asked to implement the design. One of the features it called for was rounded-cornered gradient backgrounds. Rather than turning the design down, I took up the challenge to try to implement it.

Looking around on the internet, there’s a little bit about how to go about that in a cross-browser way, but I thought I’d document it here.

The basic idea I took is to use an SVG as the background. Unfortunately, IE doesn’t support SVG’s and most of the browsers that do support them didn’t support them as backgrounds at time of writing. Fortunately, we can mess with CSS and HTML to display the SVG as an image behind the content, while at the same time providing a fallback for IE.

The basic idea, is to show the SVG after the content, then push it up behind the content with some absolute/relative positioning, so we write code similar to:

<div id="svg_outside">
    <div id="svg_content"></div>
    <div id="svg_background"></div>

Give the outside div a “position:relative” and the background div “position:absolute” and you’re all set. Put whatever you want for a background in the background div and your content in the content div (funnily enough).

While this doesn’t look nearly as clean as having just a single div with the background set to the svg, it does allow us a lot of flexibility to deal with IE. Since IE can’t natively handle SVG’s (yet), we can use a gradient filter on the background div. Alternatively, we could use some VML. You could even use a video as a background if you so felt like it 🙂

Check out for an example.

There can be issues with the Adobe SVG plugin taking over sometimes.

Can’t be bothered writing about this any more, so I’m just gonna post it. Its been sitting in my drafts folder for long enough 🙂

No Comments