Creating a MADDE target for MeeGo Tablet

Hii again.

After spending a swingful easter, found a spot to try out creating a new MADDE target for MeeGo tablet (the same stuff applies to any target).

The basis for these notes are in MeeGo wiki. Following text describes creating a new MeeGo target image and integrating it into MADDE. Please refer to the wiki for further details. Also note that I’m not creating a runtime at all, so this post mainly applies to devs having some MeeGo hardware at hand. Again, the wiki explains about runtime installations too (& the process is not that different).

First, get kickstarter. It’s a tool which creates kickstart files from MeeGo image configurations. MeeGo Image Creator (MIC) eats those kickstart (.ks) files and pops out fresh MeeGo images. I’ll assume you’ve got MIC already installed.

So, get the kickstarter, build it and install. Then clone the MeeGo image configurations repo.

git clone git://gitorious.org/meego-developer-tools/kickstarter.git
cd kickstarter
sudo python setup.py build
sudo python setup.py install

git clone git://gitorious.org/meego-os-base/image-configurations.git

Next, navigate to the image configurations and create the kickstart files:

cd image-configurations

kickstarter -c configurations.yaml -r repos.yaml

The new kickstart files appear under a folder called 1.1.90 (in the time of writing). Go to that folder and run MIC with the following command:

sudo mic-image-creator –config=tablet-ia32-madde-sysroot.ks –format=fs –compress-disk-image=none –package=tar.bz2 –release=latest

You should get a MeeGo Tablet sysroot image under a subdirectory tree ./latest/images/meego-tablet-ia32-madde-sysroot. Copy the image found under that path into /usr/lib/madde/cache. Then, let’s create MADDE config files for the target. MADDE keeps the target config files under /usr/lib/madde/linux-i686/cache/madde.conf.d. In there, create a file called meego-tablet.conf with the following contents:

require meego-core-ia32-latest

target meego-tablet
    sysroot meego-tablet-ia32-madde-sysroot-latest-fs.tar.bz2
    toolchain meego-sdk-i586-toolchain-1.1
    runtime meego-netbook-ia32-qemu-1.1.20101031.2037-sda-runtime
    ccxopts -m32 -march=core2 -mssse3  -mtune=atom -mfpmath=sse
    qttools qt-tools-4.7.0
    arch i586
    os Linux
end

Also, create a file called meego-core-ia32-latest.conf with this stuff inside it:

require meego-core-ia32-1.1

target meego-core-ia32-latest
    sysroot meego-core-ia32-madde-sysroot-1.1.99.4.20110426.4-fs.tar.bz2
    toolchain meego-sdk-i586-toolchain-1.1
    runtime meego-handset-ia32-1.0.80.9.20100706.1-sdk-pre0901-runtime
    ccxopts -m32 -march=core2 -mssse3 -mtune=atom -mfpmath=sse
    qttools qt-tools-4.7.0
    arch i586
    os Linux
end

file meego-core-ia32-madde-sysroot-1.1.99.4.20110426.4-fs.tar.bz2
    url http://mirrors.kernel.org/meego/builds/trunk/1.1.99.4.20110426.4/images/meego-core-ia32-madde-sysroot/meego-core-ia32-madde-sysroot-1.1.99.4.20110426.4-fs.tar.bz2
end

At this point, calling mad-admin should show meego-tablet in the list of installable targets. Next we install the target:

sudo mad-admin create -f meego-tablet

That’s it, now there should be a fresh tablet target installed in MADDE. Mad-admin doesn’t seem to have an update command, so the most straightforward way to update a target is to get those conf files, modify their content, get the latest sysroot image e.g. from

http://mirrors.kernel.org/meego/builds/trunk/latest/images/meego-tablet-ia32-madde-sysroot/

and then create a new target & remove the old.

That’s all, folks.

About sandst1
A technology-oriented guy interested in all-round creativity, be it music, art, or putting software together for creating something new and expressing oneself

Leave a comment