Something I have been meaning to do for ages is to have a go with a MeeGo image on a Nokia N900. MeeGo is a Linux distribution intended for embedded devices and netbooks. It is the merger of Nokia's Maemo project and Intel's Moblin project and aims to produce a distribution suitable for use on set top boxes, mobile phones, tablets, in-vehicle entertainment systems. It is also backed by The Linux Foundation who are already offering a training course in it. At the end of October MeeGo v1.1 was released which includes an installable image with a user interface for the Nokia N900.
I've never installed a new operating system to a mobile phone before, only updated what was already there so this was a new experience. As MeeGo is not ready for public consumption the image recently released for the N900 is a developer pre-release and is not recommended for anything apart from having a look at seeing what MeeGo is about. Unfortunately it is not feature complete yet and is quite slow so is not suitable for full time use. All of this is I suppose enough to scare off many people including even developers. Fortunately you can get the N900 to run MeeGo without deleting the operating system that is already on the device. This is a bit like running Ubuntu in live mode from a USB stick.,
Following the excellent instructions on the MeeGo website I installed the bulk of the MeeGo operating system onto a removable Micro SD card. On the instructions it said to make sure that the MicroSD card was not mounted before writing the MeeGo image to it but on my Ubuntu system I found that the card had to be mounted. With this done I was most of the way there and now just had to install a new kernel onto the device. The instructions have been written with the idea of being able to try out the new OS without altering too much permanently on the N900, so the method used here is to flash a new Linux kernel onto the machine, which is temporary. After you cycle the power the N900 goes back to using the build in Maemo. This all worked perfectly and very quickly. The only gripe is the pages and pages of terms and conditions that you are meant to read through to get the firmware flasher and new kernel. I always hope for the day when the legal system is changed to make this unnecessary!
Being pre-release and at an early stage MeeGo occasionally behaves in a somewhat interesting way. It can take a little while to boot up and for a few seconds I was concerned the process has not worked! It does however and eventually you are taken to the home screen. The user experience is of course somewhat limited at this stage and maybe should be thought of as a but of a building site rather than a finished product. It is very slow in operation, although I do not know if this is down to the entire OS running from a MicroSD card. Also the keyboard backlight does not come on which is a bit strange, but not as strange as every title starting with “!!”, e.g. “!!Settings”.
Included is a telephone app, a mobile version of Mozilla Firefox, a music player (preloaded with some jazz) and a place to change settings. I managed to get it to connect to my MiFi but could not connect it to my home router for Internet access. I'm not sure if I miskeyed the security code but sadly I could not find anyway of reviewing it. With the device connected I could browse the web with the in built browser. I didn't try connecting it directly to the mobile network. The accelerometer works too and it is possible to use the device in landscape and portrait mode, again it might take a couple of seconds to switch.
Despite it being early days and understandably an incomplete experience it is possible to get a feel for how MeeGo will operate on mobile devices. It seems reasonably intuitive and it will be very interesting to see what the finished product is like. Whether it will be a success is a different matter, there have been some suggestions that Nokia should abandon MeeGo and adopt Android, an idea that former Nokia CEO Anssi Vanjoki said was like Finnish boys who “pee in their pants” to keep warm in winter. A bizarre analogy, but he made his point.
Perhaps it is understandable that Nokia wants to keep developing their own operating systems. Up to now they have tended to be responsible for both the hardware and software that they ship and this has always made them distinctive. Maybe some companies just naturally work best by producing both hardware and software? Would Apple be as interesting to its fans if it just produced nice hardware that ran Windows or Linux? Probably not, as this is not what the company is known for doing, and this might not distinguish them enough from their rivals. For a company like Nokia this might be a route to making sure people say they have a Nokia phone rather than anything else. In the Android world we can see this, my phone is an HTC, but I would normally say that I own an Android phone. Only time will tell if this understandable course of action is the right one of course.
MeeGo is a Linux distribution aimed at lots of different devices it could be something of great interest to developers of applications. Maemo, a parent of MeeGo is also a Linux distribution and can be stretched in many interesting ways on the N900 to run full scale desktop applications (admittedly slowly) as well as the light weight “apps” more familiar to mobile users. I was disappointed to see that C++ is the language of choice for producing applications for MeeGo. I think something like Python would have been a better choice. I realise C++ has its advantages, and might be appropriate for some larger scale applications, but I can't help thinking that sticking with a traditional language like this was a missed opportunity and might increase the leaning curve for new developers.
It is going to be really interesting watching how MeeGo develops. Linux scales very well to lots of different types of devices and MeeGo builds on this to think about multiple platforms at every other level of the operating system stack too. It would be great to have Nokia phones running a Linux distribution, hopefully as part of upstream projects too. The big problem with all this is that we are still a little while away from a MeeGo release and Nokia will be releasing a new mobile OS into a field with many competitors, many of whom will have had the chance to build up a big user base with lots of additional software and support available. For MeeGo to survive it might have to leapfrog these other operating systems in order to grab the attention of the public and the tech press.