Sugar on Debian: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Adding packages, doc in spanish)
Line 101: Line 101:


cd sugar-jhbuild
cd sugar-jhbuild
./sugar-jhbuild update
git-pull


* Read the instructions [[Sugar_with_sugar-jhbuild]], and also check [[Sugar]]
* Read the instructions [[Sugar_with_sugar-jhbuild]], and also check [[Sugar]]
* After building everything, ./sugar-jhbuild run failed because other packages were not installed on The system. The following list should be considered prerequisite to anyone wanting to run sugar on debian unstable.
* ./sugar-jhbuild build-base. If the dependency check fails, then try installing the following packages. I'm no expert on what's really required, but it worked for me. (I use debian unstable, march 2007).
This list was compiled before the sugar crew moved to python2.5, so it is possible that installing some of these python things does more harm than good (they will be 2.4 versions I believe... see note above on recompiling for 2.5.) On the other hand, maybe the ./sugar-jhbuild build-base makes custom versions of the required python modules, and these have absolutely no effect... I don't know.


automake1.7 gtk-doc-tools xnest libtiff-tools libtiff4 libtiff4-dev gconf2
apt-get install automake1.7 gtk-doc-tools xnest \
darcs cvs subversion \
gconf2-common libgconf2-dev dbus python-dbus avahi-daemon avahi-utils
libtiff-tools libtiff4 libtiff4-dev libpng12-0 libpng12-dev \
avahi-discover python-avahi network-manager-dev network-manager dhcdbd
gconf2 gconf2-common libgconf2-dev \
libnm-* network-manager-gnome darcs
dbus python-dbus \
avahi-daemon avahi-utils \
avahi-discover python-avahi \
network-manager-dev network-manager dhcdbd \
libnm-* network-manager-gnome \
libsqlite3-0 libsqlite3-dev \
libfreetype6 libfreetype6-dev


* ./sugar-jhbuild build
I recovered these packages from my shell history, by searching for 'apt-get install'.
* ./sugar-jhbuild run
Obviously, many of them brought their own dependencies and I probably happened to some important packages installed already, so please feel free to add to this list, or make corrections.
Hopefully this command will launch xnest with sugar running inside. Enjoy.


--James Bergstra
--James Bergstra



== Other Links ==
== Other Links ==

Revision as of 18:40, 10 March 2007

This article is a stub. You can help the OLPC project by expanding it.


Please contribute instructions for getting Sugar to work with Debian GNU/Linux.


Installing sugar on Debian Unstable

For now Sugar can only be installed on a mix of unstable (SID) and experimental.

Prerequisites

Python 2.5 is installable from Debian testing but, as of 2007 Feb 16, it is "unsupported" in the sense that python modules are not compiled with support for 2.5 by default.

To cause Python 2.5 be supported, you can edit /usr/share/python/debian_defaults.

[DEFAULT]
# the default python version
default-version = python2.4
# all supported python versions
supported-versions = python2.4, python2.5
# formerly supported python versions
old-versions = python2.3
# unsupported versions, including older versions
unsupported-versions = python2.3

Shown above is a copy of my debian_defaults. Yours might look a little different. The important thing is to check where python2.5 is listed.

You may need to change the default python in your $PATH as well:

cd /usr/bin
sudo ln -sf python2.5 python

Recompiling

Before beginning, install tools indicated in debian maint-guide. Also, you need to make sure the experimental source archive is listed in /etc/apt/sources.list:

deb-src http://ftp.debian.org/debian experimental main  #important!

# Also may be required:
deb http://ftp.debian.org/debian testing main contrib non-free
deb http://ftp.debian.org/debian unstable main
deb http://ftp.debian.org/debian experimental main

Now that Python 2.5 is "supported" on your Debian box, you need to recompile any python packages which are required by sugar. An easy way to do this is to use apt-src. For example:

$ mkdir debian   # keep your work somewhere temporary
$ cd debian
$ apt-src install python-dbus
Reading package lists... Done
Building dependency tree... Done
Need to get 471kB of source archives.
Get:1 http://ftp.au.debian.org experimental/main dbus-python 0.80.2-1 (dsc) [881B]
Get:2 http://ftp.au.debian.org experimental/main dbus-python 0.80.2-1 (tar) [453kB]
Get:3 http://ftp.au.debian.org experimental/main dbus-python 0.80.2-1 (diff) [16.2kB]
Fetched 471kB in 38s (12.2kB/s)
gpg: Signature made Tue 13 Feb 2007 11:34:43 PM IST using DSA key ID 5BE41F21
gpg: Can't check signature: public key not found
dpkg-source: extracting dbus-python in dbus-python-0.80.2
dpkg-source: unpacking dbus-python_0.80.2.orig.tar.gz
dpkg-source: applying ./dbus-python_0.80.2-1.diff.gz
$ cd dbus-python-0.80.2
$ dpkg-buildpackage -b -uc -rfakeroot    # wait a long time
$ cd ..
$ sudo dpkg -i *.deb

Here is a list (maybe incomplete) of python packages you will need to recompile:

  • python-avahi
  • python-cairo
  • python-dbus
  • python-gnome2-desktop
  • python-gobject
  • python-gtk2

If you neglect to recompile a python package which is indeed required by sugar then hopefully you will get a helpful failure message indicating where you are remiss.

suger-jhbuild

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

cd sugar-jhbuild
./sugar-jhbuild update
  • Read the instructions Sugar_with_sugar-jhbuild, and also check Sugar
  • ./sugar-jhbuild build-base. If the dependency check fails, then try installing the following packages. I'm no expert on what's really required, but it worked for me. (I use debian unstable, march 2007).

This list was compiled before the sugar crew moved to python2.5, so it is possible that installing some of these python things does more harm than good (they will be 2.4 versions I believe... see note above on recompiling for 2.5.) On the other hand, maybe the ./sugar-jhbuild build-base makes custom versions of the required python modules, and these have absolutely no effect... I don't know.

apt-get install  automake1.7 gtk-doc-tools xnest \
darcs cvs subversion \
libtiff-tools libtiff4 libtiff4-dev libpng12-0 libpng12-dev \ 
gconf2 gconf2-common libgconf2-dev \
dbus python-dbus \
avahi-daemon avahi-utils  \
avahi-discover python-avahi \
network-manager-dev network-manager dhcdbd \
libnm-* network-manager-gnome \
libsqlite3-0 libsqlite3-dev \
libfreetype6 libfreetype6-dev
  • ./sugar-jhbuild build
  • ./sugar-jhbuild run

Hopefully this command will launch xnest with sugar running inside. Enjoy.

--James Bergstra

Other Links