Jump to Navigation

MeeGo for Real – Our path to a MeeGo consumer product

Session Summary: 
Want to build a MeeGo product? You are not alone! At Accenture Embedded Software Services (AESS), we have walked the walk and we have some experiences to share. In this session, we’ll explore our experience in building a MeeGo consumer device. Starting from stock MeeGo builds, we had put in place infrastructure for building additional packages using OBS, customized the kernel, added some new UI elements and worked hard on producing an integrated user experience. In the process, we have also fixed a few bugs and are contributing back the fixes. So, how did it go? What was easy and what were the challenges? Come to the presentation and find out!
Session Abstract: 

At Accenture, we think long term. MeeGo is ideally positioned to offer great user experience in a variety of devices in the coming years.

Recognising great potential, AESS is building internal capability and knowledge and in the process help the MeeGo community to produce a world class Operating System.

Major advantages of MeeGo are both Linux base OS, and Qt based, native, yet beautiful and easy to develop user interface. There are hardly any contenders with such a spectrum of technical appeal. However, there are some hurdles to adoption that, though relatively benign, must be overcome in future releases. Of course, it is still early days for MeeGo, but perhaps this is all the more reason to get things right now.

Our capability-building project was a MeeGo based set-top-box (STB). We've chosen to use MythTV, primarily due to its spectrum of features and a wealth of resources and plugins. Immediately after installing MeeGo it became clear that the combination of missing packages and lack of upstream distribution forms a problematic mix. Case in point, MythTV's dependencies run deep and wide, from audio and video codecs to many Perl and Python packages which were not directly available. To bridge the gaps, we started by using community repositories with pre-built packages. As this was not enough, we've set up our own OBS, built a the dependency map and started building.

Having all the packages built is hardly enough. Since packages were collected from several sources, we've found various configuration issues, inconsistent filesystem locations and other niggles. While none of these presented significant problems on their own, combined they required considerable time to resolve.

Our demonstration platform of choice is ExoPC tablet. MeeGo images invariably installed without problems, however support for more exotic features - e.g. touchscreen, sensors were somewhat less straightforward. Hardware video decoding via CrystalHD is directly supported by MythTV and required minimal tweaking.

We've drawn some lessons from the project and we have a few suggestions to offer, primarily in making the "integrator's" work easier and more streamlined.

The changes are directed towards reducing time to market and integration complexity, perhaps freeing more time for attractive features and advanced user interface. AESS can perhaps even help with implementing the changes.

The overall experience was a positive one. Whenever we encountered a problem the old mantra "it is Linux, after all" reminded us that everything was doable and possible with MeeGo. And then some. Little wonder that we see a bright, long-term future for MeeGo.