Old News

For some of you this might be rather old news but just to make sure it’s recorded in the eternal books of Google: I’ve become the official maintainer for the HTC Legend in the CyanogenMod project.

This basically means official support and official nightly builds. It also means that I have to get all my changes into CM or adapt them accordingly. This I’ve been doing for the last couple of days and only the correct support for non-rgb notification lights is missing (a rather big change).

It’s also nice that the new CMStats app seems to be enabled by some Legend users already. This will render my statistics in the android section of this site quite useless at some point.

Dark is the Night

Now that Azure 1.0 has arrived people would certainly complain a lot if I released quite experimental builds based off the latest development in CyanogenMod. Even I wrote “experimental” a thousand times.

The consequence: a separate ROM. I’m pretty sure some will still not get the meaning of “nightly”, but I really can’t do anything about that.

Dark Azure (development thread here) will be the snapshot and development build with new features going there first.

All Blue

Finally done!

After some weeks of heavy development and testing I released Azure 1.0, codename for my port of the famous CyanogenMod 6.0.0 for the HTC Legend.

Bringing you Froyo faster than HTC with nearly all the features you might expect (except for FM radio of course) feels really amazing.

Baking Cakes

I’ve been doing web-development for quite a long time now. But honestly it was never nearly half as much fun as when I discovered CakePHP a year ago.

It took me not even six hours to write the Android ROMs section, a task I would have spend at least a week on before I knew CakePHP.

By the way, the fancy graph is done using the JavaScript InfoVis Toolkit (another great tool for web-developers).

Curing a Legend

Google’s Android platform is mostly great, but it does have a serious problem:

Manufacturers can’t keep their fingers off the interface.

This produces systems that do not even look like Android (and, as with Sony’s, annoy everyone), sometimes even worse than that.

Apart from awful Android skinning there is a new trend and light in the darkness for us purists: Android vanillaizing!

It’s software dermatologists devoting their precious nights and sleep to finding the cure to Android acne. In the case of the HTC Legend (comes with Sense) I was able to compile and tweak the Android Open Source project. Later I decided to start porting (and patching, where necessary) the famous CyanogenMod, which I’m using on my phone right now.

Beans, anyone?

Find first beta versions of my port called “Indigo Bean” and updates and bug reports on xda-developers.

Since we’ve got support by koush’ outstanding ROM-Manager the recommended method to install it (after rooting your phone) is getting this app via the Android market and downloading “Indigo Bean”. Just a few clicks (taps!) and you are set to enjoy.

Android, Signing and Proprietary Apps

Android phones are delivered with proprietary apps that greatly improve the user’s experience. Some might even say an Android device without Google apps is only half the fun.

For being accepted as valid packages, apps are signed. Moreover if an app wants special-1337-system privileges, it has to be signed with the platform key. This is to make sure apps behave correctly.

So if you come across a message that tells you the system just ignored a package (“Package xyz has no signatures that match those in shared user android.uid.system; ignoring!”), just resign it with your platform key. If you don’t have the platform key: Bad luck.

This is rather a note to myself (the sky just fell on my head):
Google apps that always need resigning are GoogleCheckin, GoogleSubscribedFeedsProvider and NetworkLocation.
Don’t ever dare to sign any other proprietary app, Google doesn’t like that and your Android system won’t allow you to use it.

Multiple Twitters

Ben Morrow contacted me some time ago asking me to look into some problems he had with my AJAXed Twitter plugin for WordPress.

AJAXed Twitter was never meant to be used with more than one account, so his request was not a bug, but a design flaw. Yesterday I took the chance and completely rewrote the plugin part, using WordPress’ great 2.8 API (piece of cake!).

Be sure to check it out.

Well, some sync today

After getting an Android phone and blogging about it’s lack of synchronisation options in Gnome I was finally able to make some progress.

The answer is GCALDaemon which can read Evolution’s .ics-files (even the locally cached ones from my university) and copy the events within to Google Calendar.

Combining it with my Notification Server you can use “bin/sync-now.sh” in a script and even get a nice notification after running it (for example a few minutes after logging in).

Not the best solution (I’d rather skip one step and write directly to my Legend), but usable nevertheless.