Sugar on Gentoo Linux: Difference between revisions

From OLPC
Jump to navigation Jump to search
(→‎Emerge(1) the prerequisites: Note that the prerequisites are not readily merged and suggest paths to get around it)
(Note need for a kernel module in the network manager build)
Line 14: Line 14:


Note: as of 2007-01-24 the networkmanager package and a number of its dependencies are now hard-masked by Gentoo due to bug reports To emerge these dependencies you will need to add the packages to /etc/portage/package.unmask. This is generally *not* recommended on Gentoo for anyone not willing to deal with problems that arise themselves.
Note: as of 2007-01-24 the networkmanager package and a number of its dependencies are now hard-masked by Gentoo due to bug reports To emerge these dependencies you will need to add the packages to /etc/portage/package.unmask. This is generally *not* recommended on Gentoo for anyone not willing to deal with problems that arise themselves.

Also note the following message during building:

cryptsetup requires dm-crypt support!
Please enable dm-crypt support in your kernel config, found at:
(for 2.6 kernels)
Device Drivers
Multi-Device Support
Device mapper support
[*] Crypt Target Support
and recompile your kernel if you want this package to work with this kernel


Many of the packages are also not available without using the "unstable" flag for x86 (i.e. adding the package to /etc/portage/package.keywords).
Many of the packages are also not available without using the "unstable" flag for x86 (i.e. adding the package to /etc/portage/package.keywords).

Revision as of 03:23, 26 February 2007

Installation

It was really easy to get Sugar going under gentoo using sugar-jhbuild. The instructions on this page have been tested under Gentoo 2006.1 ~x86


Emerge(1) the prerequisites

There are a number of packages required to get going. All of these, with the exception of jhbuild, are in the portage tree.

emerge -av dev-util/git cvs subversion docbook-sgml-utils gtk-doc avahi expat gstreamer xulrunner pycurl networkmanager

I have definitely missed one or two as I started with a full xorg-x11 desktop with gnome already installed, please add them to this list if you find any!

Note: as of 2007-01-24 the networkmanager package and a number of its dependencies are now hard-masked by Gentoo due to bug reports To emerge these dependencies you will need to add the packages to /etc/portage/package.unmask. This is generally *not* recommended on Gentoo for anyone not willing to deal with problems that arise themselves.

Also note the following message during building:

cryptsetup requires dm-crypt support!
Please enable dm-crypt support in your kernel config, found at:
(for 2.6 kernels)

   Device Drivers
     Multi-Device Support
       Device mapper support
         [*] Crypt Target Support

 and recompile your kernel if you want this package to work with this kernel

Many of the packages are also not available without using the "unstable" flag for x86 (i.e. adding the package to /etc/portage/package.keywords).

Getting and building jhbuild

Instructions for getting and installing jhbuild can be found at: http://www.gnome.org/~jamesh/jhbuild.html#getting-started


Using Sugar-jhbuild

Use of Sugar-jhbuild is detailed on building Sugar from sources. To summarize those instructions:

git-clone git://dev.laptop.org/sugar-jhbuild
cd sugar-jhbuild
./sugar-jhbuild

If you had already checked out sugar-jhbuild previously, make sure your copy is up-to-date before building:

cd sugar-jhbuild
git-pull

The sanity checks are still very basic but, often, good information can be gotten from:

 ./sugar-jhbuild sanitycheck


Troubleshooting

missing db2html

You may find that jhbuild complains about missing 'db2html' in which case you will need to create a symlink from docbook2html:

 ln -s /usr/bin/docbook2html /usr/bin/db2html


missing gconf.def

gnome-python-desktop was complaining about a missing gconf.def:

 IOError: [Errno 2] No such file or directory:
 'sugar-jhbuild/build/share/pygtk/2.0/defs/gconf.defs'

I rectified this with a:

 touch build/share/pygtk/2.0/defs/gconf.defs

and the build completed without problem.


Testing sugar

When using sugar-jhbuild, you can use:

./sugar-jhbuild run

If you want to run Sugar from the source tree enter in a jhbuild shell:

./sugar-jhbuild shell 

Then from the directory sugar-jhbuild/source/sugar), use:

shell/sugar