Archive for June, 2008


Linux Boot Camp – Day 1

So day one of Linux Boot Camp is over. On reflection, day one was a mixed bag. The hands on sessions seem to set the bar too low and I would of liked to have seen at least a ‘good to very good’ knowledge of Linux being the minimum standard. I was racing ahead on much of the material and getting a little bored with some of the other discussions.

On a more positive note, a talk on code optimisation at both the compiler level and the hardware level, using new Intel processors as an example, was fascinating. The advanced theories behind pipe-lining and intricacies that arise for scheduling instructions over multiple processors, cores, and even individual instruction pipes gave me a new found respect for the guys and gals who have to rack their brains daily to come up with greater and greater CPU optimisations. The Itanium2 optimisation of the for loop (or iteration loop) was a great example of some recent innovation but its a shame that this feature is unlikely to see the light of day in the next batch of processors.

A talk on ‘Linux on the PS3’ was postponed due to a transportation issue as far as I could tell which was a little disappointing as I was really looking forward to this one. Hopefully it will be rearranged for tomorrow or Wednesday.

Overall its an OK start and I look forward to more ‘geeky’ topics over the next couple of days.


mCurrency – A currency converter for Maemo

I tend to do a lot of travelling abroad and the internet tablet always comes with me. I’ve been looking for a currency conversion application for Maemo for a little while now and the only offering seemed to be an repackage of gcur with slight tiding up to fit the smaller screen. The original repackager seems to have abandoned it so, spurred on by a request from users at the Internet Tablet Talk forums I decided to implement a conversion application of my own. I present to you … mCurrency.

<img src=";
mCurrency running under Ubuntu *not* Maemo

Currently it’s fully functional, running under Ubuntu. It downloads currency exchange rates from the internet and allows conversions to and from 58 currencies. The next step is to package it up for Maemo and release it into the wild as a 0.1 release. I have more plans for it but it will be nice to let other people have a go at breaking it.

As you may of guessed, this is not a ground breaking application. It’s a simple implementation of a solution to a small but common problem. It was written in a couple of hours, 50% of that time was trying to figure out why I couldn’t append text to a combobox generated by glade (for those interested you need to add a dummy line to the box in glade before you can append dynamically) and the other 50% was brushing up on my GTK skills.

In the next couple of days I’ll add it to, until you will have to settle for the screenshots.

mCurrency about box


Installing Maemo’s Diablo SDK under Ubuntu Hardy

So Diablo has been released. Wasting no time I set about installing the new SDK under my distribution of choice, Ubuntu Hardy. The process is pretty painless thanks to the installer scripts but there are a few little gotcha’s that you need to look out for.

The two extra steps that you will need to do if you are running Ubuntu Hardy are:

as root add

vm.vdso_enabled = 0

to /etc/sysctl.conf and while you are at it change the vm_mmap_min_addr to read

vm.mmap_min_addr = 4096

To make the changes active you have to run

$ sudo sysctl -p

To continue the install first run the scratchbox script which you can get from here by first changing the file permissions and then executing it like so

$ chmod a+x ./
$ ./

From there add a user to the scratchbox environment with

$ sudo /scratchbox/sbin/sbox_adduser USERNAME yes

(replace USERNAME with your username).

and run the SDK script downloaded from here.

$ sh ./

Answer a couple of questions and wait. You will be presented with a screen asking what environment you want to set up. If you will be developing, and I hope you will be, then choose either option 3 or 4.

At this point go grab yourself a coffee, it takes some time.

Install and run Xephr outside of the scratchbox environment with

$ sudo apt-get install xserver-xephyr
$ Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -extension Composite

Finally start Maemo from within the scratchbox environment with

$ scratchbox
$ export DISPLAY=:2
$ start

If everything went as planned you should be confronted with this

<img src=""

Don’t be dismayed that all that work only got you an pretty much empty window. Take heart that will a little reading and a bit of effort, you too can get cool and crazy apps compiled for the Internet Tablet platform.

Happy hacking!


It’s time to start flashing again!

OK, everyone get flashing.

Diablo, Nokia’s latest release in the Tablet OS series, has officially been released. Go get it now.

I haven’t had much time to play around with Diablo yet but I’ll be posting my thoughts shortly.

If you want to know what’s new in this release there is a great (and long) thread over on Internet Tablet Talk discussing the features.

Happy flashing.

EDIT: A comprehensive look at what packages have changed can be found here.


Linux Boot Camp

Next week (Monday 30th) I will be attending a 2 1/2 day conference/workshop at the Bristol Institute of Technology, Bristol, UK titled ‘Linux Boot Camp‘. I quote, ‘The event will involve two and a half days of technical workshops exploring many aspects of modern technology and the use of free open source software’.

It will be nice to meet old and new friends there so if you are attending, come and say ‘hi’.


Carman needs some love

For some time Carman, the car OBD-II analyser, had been incompatible with the OS2008 release of the maemo platform. Lots of noise and much anticipation was directed towards INDT to get it working with the new OS release and seemingly silently, with no fanfare, it is now available for download. After installing it I can see why.

Carman promises a lot. Plug a bluetooth device into your cars OBD-II port and Carman can show you fault codes, engine temps, engine loads, fuel status e.t.c. There is so much potential there especially with today’s energy conciousness. Carman could tell you your current mpg and optimal mpg/speed depending of past recorded data. It could show you the condition of your engine, again looking at past data. Maybe it could anticipate engine problems as it analyses certain sensors that show that it is getting progressively worse over time. Carman could be great but …

.. at the moment it needs a lot of love. I find that it has a hard time connecting to my OBD-II scanner, it crashes too oftern and some of the data it reports is inconsistent and way out from what is actually happening. Nokia and INDT should be pushing Carman, along with Canola and a Maemo Mapper integration as the ultimate ‘in car solution’. Instead, this little know and even less used application is seemingly being left to rot away.

Lets hope INDT have high hopes for it and are just not being public with their intentions yet. Maybe it’s time to put my Python hat on and spend some time on another project other than Entertainer?


Entertainer 0.1 Released

OK, its been a couple of days since the 0.1 release of entertainer and I purposely didn’t blog about it until now.

0.1 is a major milestone for the entertainer project. It may seem such an insignificant number but 0.1 signifies the projects intentions. It shows that we have a piece of software that we are happy to show the rest of the world. We know it’s a little ugly in parts, hell, even we are a little repulsed by parts of it but we know that with time and effort a swan can be made of this ugly duckling.

At this point in time, its a functional and pretty interface to your media. The plan is to make it even better!

Coming up in future releases:

  • Plugin support
  • TV Support
  • A rewrite of the backend indexer
  • Code clean-up
  • and of course lots and lots of cool plugins
  • And much much more.

    Entertainer is an exciting up-and-coming project. Be part of it today.