EnvironmentSetup/Sugar

From Wiki.ooo4kids.org

Jump to: navigation, search

Back to Environment Setup


Please do not translate the page yet


Contents

Sugar build environment

Intro

Here will be described :


Thanks in advance to help us and contribute to this wiki.

Setup

FIXME : complete me, add everything you must install for the build

=> see the current Linux Intel 32 bits installset, extremely close.


Checkout the sources

You must use subversion client to checkout the sources (svn is the binary name).

The command :

svn co svn://svn.adullact.net/svnroot/ooo4kids1/trunk  myOOo4Kids

-> will create a myOOo4Kids directory, containing the whole tree. Count 2 GB for the sources, and 15 GB for a full set after the build.

Configure

Note: the configure command line must be entered in one line.

The "\" symbols are there for readability, and mean new line

By default, pre-installed, named installed package format is choosen on Sugar.


Note: If building on Debian (or whatever other Linux), and if you want to build an XO tree as installed package format, just think to do before configure :

export SUGAR_BUNDLE_PATH="something but not empty string"  

And the "installed" package format will be used. Other solution : become root and create /usr/share/sugar subdir


Once everything above is ready, run configure this way :

./configure         --with-lang="ar de es fi fr it nb nl pt zh-CN zh-TW" \
                    --with-system-python \
                    --with-system-libxml \
                    --disable-gnome-vfs  \
                    --disable-gtk \
                    --with-xo-intel-build \
                    --with-OOo4Kids

And you'll be able to go one step forward ...

The bootstrap (compilation of dmake)

Simply do :

./bootstrap

If successfull, dmake will be built for your machine.

Important : this step has to be done once only. It means, that if you rebuild OOo4Kids later, with the same tree. Just redo "source LinuxX86Env.Set.sh to retrieve the build environment, OOo4Kids sources need.

Build OOo4Kids for Sugar

First, you need to add all the environment variables created during configure in your shell. Simply do :

source LinuxX86Env.Set.sh

The speed of the build depends on your machine. The parallel build has been tested, and no problem so far, but not everybody owns an i7 920 + 6GB of RAM and SSD hard disk ;)

So if you are unsure, just do, from the root dir (containing all the sources ) :

dmake 

Count : 10 hours hours on a Pentium IV 1.5 GHz + 1GB or RAM, less for a more powerfull machine, and around 16h for a 1GHz machine + 1GB or RAM (approximatively). Please add your score on the wiki page ;)


=> If nothing wrong occurs, at the end, the final product, will stand in instsetoo_native/unxlngi6.pro directory.



Language packs

The idea is to build en-US + es here, for the OLPC project needs.


At the end, to build them, do :

1) cd the right place :

cd instsetoo_native/util 

2) build the language packs

dmake ooolanguagepack

3) Go inside the right dir, containing all the nee files for a given locale :

cd instsetoo_native/util/OOo4Kids_languagepack/installed/install/${YOUR_LOCALE}

As example, we'll add the es locale to the en-US, and we'll provide the .xo for both es/en-US


cd instsetoo_native/unxlngi6.pro/OOo4Kids_languagepack/installed/install/es

Copy the files at the right location :

cp -R OOo4Kids.activity ../../../../OOo4Kids/installed/install/en-US


And the spanish files should be added at the right location !


Now, we'll have to re-create the MANIFEST -> see the instruction below in "Creating a Bundle on Sugar"


Creating a Bundle on Sugar

Important : everything must be done as olpc user, so first, become this user:

Once you have a proper Sugar-compatible tree :

python setup.py dev


If the po directory is missing, don't forget to create it :

mkdir po

Then, create the manifest (a file that lists all the files needed for the Activity) by inputting:

find . -type f | sed 's,^./,,g' > MANIFEST


There you have all that is necessary in order to create your XO bundle. Just use the following command:

./setup.py dist_xo

You might have to use this command if you are urged to do so:

./setup.py fix_manifest


At the end, if no problem occurs, the bundle is ready in dist ( full path = /home/olpc/Activities/OOo4Kids.activity/dist )

Installing a Bundle on Sugar

If you successfully created the OOo4Kids-1.xo bundle, you'll be able to install it. The previous command line created a dist subdir, and the .xo archive (a zipped tree + MANIFEST ) is inside.

cd /home/olpc/Activities/OOo4Kids.activity/dist

And then, you can now install the bundle by simply typing:

sugar-install-bundle yourbundle.xo


NOTE : if the install fails, the other way is to unzip the .xo archive in /home/olpc/Activities directory, means you'll obtain :

/home/olpc/Activities/OOo4Kids.activity

At the end. To see the OOo4Kids icon in the activities, just reboot, or if you prefer do (in a terminal) :

init 3 ( type enter ) init 5

And you should be able to launch OOo4Kids. Enjoy and don't forget to report us feedback !!

Aditional links

OLPC France

Install Sugar in a VirtualBox

Other Sugar links

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox