Sugar on Ubuntu

From OLPC
Revision as of 08:48, 7 June 2006 by Marcin (talk | contribs) (gecko-embed)
Jump to: navigation, search

I've installed today sugar on Ubuntu Dapper on i686 and I hope this description will be useful for someone, but I'm not an expert. I have installed everything under $HOME/olpc/ directory, root privilages are required only for apt-get. Feel free to make changes on this page. Marcin 13:07, 2 June 2006 (EDT)

apt-get

You need a number of packages from Ubuntu Dapper repositiories. libidl-dev, gnome-common, gtk-doc-tools, avahi-utils(?), ... and others.

xulrunner

xulrunner is packaged in Debian, but not in Ubuntu yet. I got it from repository, but perhaps a tarball is a better choice.

cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot login
(password: anonymous)
cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co -r MOZILLA_1_8_BRANCH mozilla/client.mk
cd mozilla/
make -f client.mk checkout MOZ_CO_PROJECT=xulrunner

Create mozconfig file:

. $topsrcdir/xulrunner/config/mozconfig
mk_add_options MOZ_OBJDIR=@topsrcdir@/obj-xulrunner
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --disable-javaxpcom
ac_add_options --prefix=$HOME/olpc/local

And make MOZCONFIG point to it:

export MOZCONFIG=$HOME/olpc/mozilla/.mozconfig

Now you can compile xulrunner:

cd mozilla
make -f client.mk build
make -f client.mk install

I prefer to keep everything in one place than to put it into eg. /usr/local/ or /usr/lib/python..., so I set a few variables to make next steps easier:

export PYTHONPATH=$HOME/olpc/local/lib/python2.4/site-packages
export LD_LIBRARY_PATH=$HOME/olpc/local/lib
export PATH=$HOME/olpc/local/bin:$PATH
export PKG_CONFIG_PATH=$HOME/olpc/local/lib/pkgconfig/

gecko-embed

Get it from repository

cvs -d :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome login
(password: anonymous)
cvs -d :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome co gecko-embed

build and install

cd gecko-embed
./autogen.sh --with-gecko=xulrunner --prefix=$HOME/olpc/local # it calls ./configure
make
make install

sugar

Get it from repository. From Mercurial repository.

sudo apt-get install mercurial # if you have not used it yet
hg clone http://hg.fedoraproject.org/hg/olpc/applications/sugar--devel

and ...

cd sugar--devel/
./autogen.sh --prefix=$HOME/olpc/local
make 
make install

Problems

If you have sugar--devel changeset 300, sugar will complain first about modules, which are not found.

cp sugar/browser/*.pyc ../local/lib/python2.4/site-packages/sugar/browser/

Than you may see something like this:

 File "/home/wojdyr/olpc/local/lib/python2.4/site-packages/sugar/shell/shell.py", line 152, in set_tab_icon
   pixstr += chr(c)
ValueError: chr() arg not in range(256)

This should help:

--- sugar--devel.orig/sugar/shell/shell.py      2006-06-02 18:03:21.000000000 +0200
+++ sugar--devel/sugar/shell/shell.py   2006-06-02 19:22:51.000000000 +0200
@@ -150,4 +150,6 @@
                pixstr = ""
                for c in data:
+                        if c < 0:
+                            c += 256
                        pixstr += chr(c)

And I hope you may see sugar - chat and browser :-)

Sugar-ubuntu.png

There are still some problems, sometimes restarting avahi-deamon helps. To be continued ...