Wednesday, January 1, 2014

2013 year of the Sailfish

2013, year of the Sailfish

Just a few highlights on this years hacking.

As the title of the blog says it really was the year of the Sailfish starting in February with the launch of the Sailfish SDK.  This provided a couple of VM's and integration to Qt creator allowing developers a first look at Sailfish API's.   Apps could be developed run and within an emulator.  I played around with this but my skills as a Qt/QML developer were embryonic but I managed to take some existing code and port to Sailfish.  

Sailfish had been demonstrated on the Nokia N950 by Jolla folks and I was keen to run something up on a real device and the SDK release gave me my first opportunity to do this.  By talking the SDK x86 packages along with the device adaptation packages from the ExoPc and O2 Joggler I was able to run up the emulator up on real hardware.  

In April Carsten Munk published which described well the problems of the 'binary blob' in device adaptation and described a way of utilising Android hardware adaptations with a regular libc linux userspace.  Called libhybris this was to be the foundation of the software stack used on the Jolla phone announced in September and which started shipping to customers at the end of November.  His blog post and follow ups go into much of the details behind libhybris, wayland and qt5-wayland compositor.

Having suffered with the 'binary blob' situation on many of my projects over the years I was keen to learn more and Carsten as always keen to help me in this.  His target for initial development was a HP Touchpad (qualcom adreano) and I was able to reproduce his results on cubieboard (mali).    Shown below is a Qt5 demo running on cubieboard.

This opened the doors for a move to Qt5 / Wayland for lipstick (the nemomobile compositor) and in July nemomobile started to switch . In August Qt5 version of the Sailfish SDK was released

In October a further SDK update was released which among other things added arm support.  This enabled my to do a similar hack to the Sailfish SDK on ExoPc but this time on the cubieboard.


In November the Jolla phone was launched and this again allowed access to the packages required to do a port to N950.  This port uses the nemomobile N950 adaptation packages and runs quite well considering  the age of this target.  I received my real Jolla in December which I'm loving to bits.  See it here with the N950 port.

The final video is the packages from the Jolla running on the cubieboard libhybris adaptation so the future for running sailfish on other Android devices is rosy.

Finally there has been much talk about community and openness but from my standpoint I feel part of the Jolla/nemo/mer community and thank all involved in making those communities special for me.

Happy New Year