Sugar on SUSE: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
(36 intermediate revisions by 11 users not shown)
Line 1: Line 1:
==Installing Sugar on openSUSE==
I had to jump through few hoops to get Sugar to run on suse 10.1. Here are some of my notes. Note that this is a brain dump, so I most probably missed some issues that I had to solve or packages that I had to install. If you face a problem, shoot me an email and if I fixed it, I will point you in the right direction and update this page. If you solved it yourself, then just go ahead and update the page directly :)


To get Sugar and other packages that are required to run Sugar on a standalone desktop or LTSP thin client follow these steps:
This is known to work as of 6/15/06.


As root run the following in shell:
== gecko-embed ==
=== pre-requisites ===
I checked out gecko embed and compiled it, but before I did that I had to install a set of packages:


zypper ar http://download.opensuse.org/repositories/X11:/Sugar/openSUSE_11.1/ sugar
# mozilla-xulrunner: you can install it from the yast package manager
zypper ar http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_11.1/ python
# mozilla-nss-devel: you can't install it with the default packages on package manager, but you can download it directly from [http://download.opensuse.org/distribution/SL-10.1/inst-source/suse/i586/ suse's online repository]
zypper refresh
# gecko-sdk: This is the equivelent of the xulrunner-devel in fedora talk, and you can get it from [http://download.opensuse.org/distribution/SL-10.1/inst-source/suse/i586/ suse's online repository] as well
zypper in sugar sugar-activities
# Had to compile avahi and install it. '''no details, if someone went through this recently, please update with details'''


Once all the packages are installed, sugar-shell session will be available from Display Manager such as: GDM, KDM or LDM (ltsp) along with GNOME/KDE etc to log in to.
=== compile geck embed ===
* First you need to check it out from cvs. Use the following command:
cvs -d :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome co gecko-embed
* cd into the gecko-embed folder and run autogen.sh (./autogen.sh)
* run make
* run "make install" as root (or use sudo if you're a good linux citizen)


Run sugar-emulator to test within running session.
== Sugar ==
* If you don't have mercurial, get it from [http://rpmfind.net//linux/RPM/opensuse/factory/i586/mercurial-0.9-2.i586.html here]. This is not where I installed it from, but this will do
* to check out sugar, use:
hg clone http://hg.fedoraproject.org/hg/olpc/applications/sugar--devel
* autogen.sh
* make
* run "avahi-daemon -D" (if you haven't configured it to run as a service)
* run sugar/sugar


There are few basic activities already installed along with sugar, if you need more, launch xo-get activity and install more, you would of course need an internet connection to do all the above.
The first time I ran sugar, it seg-faulted. We traced the problem down to an issue loading the olpc theme. I am running KDE on suse, so there might be some misconfiguration of gnome there, I'll figure it out later, right now I am happy with the workaround even if the interface doesn't look as shakadelic.


Help improve Sugar by filing bug/enhancement requests on http://dev.laptop.org. If you find any bugs with RPM packages please mail cyberorg<removethis>@opensuse.org.
The workaround is to comment out the following two lines in sugar/__init__.py

if settings.get_property('gtk-theme-name') != 'olpc':
Follow the guide below if you wish to install sugar from source.
settings.set_string_property('gtk-theme-name', 'olpc', '')

==Installation Notes==

These notes are based on my experiences running sugar-jhbuild on openSUSE 10.2. If you plan to install Sugar on SUSE you would be well advised to first upgrade to a recent version. Sugar uses a LOT of very current software, so the more recent the distribution the less you will have to build from source.

The sugar-jhbuild script changes frequently, so any detailed instructions should be assumed to be obsolete. Instead of trying to use these instructions to prevent problems, use them as a reference for things to try if there are problems.

Befor you run sugar-jhbuild for the first time, make certain you have the '''python curses''' package installed. SUSE does not install this by default and the script won't run without it.

You ''may'' need two different versions of automake installed. This would not be specific to Suse, it is a general issue with sugar-jhbuild. OpenSuse 10.2 provides automake 1.9. You can install 1.7.9 from source. Once you do, as root go to /usr/local/bin and delete '''automake''' and '''aclocal'''. Versions of these files with version numbers appended will remain, and that will allow the steps in sugar-jhbuild that need the older automake to compile.

The first time you run sugar-jhhbuild build it may list out the packages it thinks it needs from your distribution. Some of these you'll need to compile from source. When the script thinks you have all of them it will run. However, you will find the the script's upfront checks are not 100% reliable, so you can still discover missing dependencies later. sugar-jhbuild allows you to easily rerun steps without starting over, so there is no need to agonize over what you might be missing before you get started. When an error shows up, just open another xterm and compile what's missing from source or get it from YAST. Then select the option to rerun the configure step for that module and hopefully that will let you continue. If you don't know how to satisfy a dependency that turns up you can "give up" on that module and continue. You may or may not wind up with a functional version of Sugar to try out.

In the sugar module, you may need to create a directory named "m4" in the sugar source directory to get configure to work.

While installing Sugar on Suse is not a painless, let it run overnight unattended process, it does work.

To compile farsight, you may need a version of gstreamer that is newer than what 10.2 provides, but is NOT the latest. Using 0.10.17 might cause compile errors in farsight. If so, 0.10.11 will work OK.

Also, it is worth pointing out that sometimes you'll get compile errors running this script that seem to be actual errors in the code, not missing dependencies. This I would guess is caused by someone checking bad code into git. Wait a day then try to run the script again and you may find that the problem has corrected itself.

== Running sugar-jhbuild ==

Get sugar-jhbuild through git as described in [[Sugar with sugar-jhbuild]].

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

After running build you may get a list of required packages that need to be installed from YAST. Most of them are available; the rest you'll need to search for or compile from source. Then run build again.

== Things I needed to compile from source ==

Again, don't assume you WILL need to compile all these from source. Instead, consider it a warning of what you might be getting into.

* automake-1.7.9
* gnome-icon-theme-2.22.0
* gst-plugins-base-0.10.11
* gst-python-0.1.0
* gstreamer-0.10.11
* icon-naming-utils-0.8.2
* numpy-1.0.4
* simplejson-1.7.5




[[Category:Sugar]]
[[Category:Developers]]
[[Category:Developers]]
[[Category:Installing Sugar]]

Latest revision as of 10:12, 8 March 2009

Installing Sugar on openSUSE

To get Sugar and other packages that are required to run Sugar on a standalone desktop or LTSP thin client follow these steps:

As root run the following in shell:

 zypper ar http://download.opensuse.org/repositories/X11:/Sugar/openSUSE_11.1/ sugar
 zypper ar http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_11.1/ python
 zypper refresh
 zypper in sugar sugar-activities

Once all the packages are installed, sugar-shell session will be available from Display Manager such as: GDM, KDM or LDM (ltsp) along with GNOME/KDE etc to log in to.

Run sugar-emulator to test within running session.

There are few basic activities already installed along with sugar, if you need more, launch xo-get activity and install more, you would of course need an internet connection to do all the above.

Help improve Sugar by filing bug/enhancement requests on http://dev.laptop.org. If you find any bugs with RPM packages please mail cyberorg<removethis>@opensuse.org.

Follow the guide below if you wish to install sugar from source.

Installation Notes

These notes are based on my experiences running sugar-jhbuild on openSUSE 10.2. If you plan to install Sugar on SUSE you would be well advised to first upgrade to a recent version. Sugar uses a LOT of very current software, so the more recent the distribution the less you will have to build from source.

The sugar-jhbuild script changes frequently, so any detailed instructions should be assumed to be obsolete. Instead of trying to use these instructions to prevent problems, use them as a reference for things to try if there are problems.

Befor you run sugar-jhbuild for the first time, make certain you have the python curses package installed. SUSE does not install this by default and the script won't run without it.

You may need two different versions of automake installed. This would not be specific to Suse, it is a general issue with sugar-jhbuild. OpenSuse 10.2 provides automake 1.9. You can install 1.7.9 from source. Once you do, as root go to /usr/local/bin and delete automake and aclocal. Versions of these files with version numbers appended will remain, and that will allow the steps in sugar-jhbuild that need the older automake to compile.

The first time you run sugar-jhhbuild build it may list out the packages it thinks it needs from your distribution. Some of these you'll need to compile from source. When the script thinks you have all of them it will run. However, you will find the the script's upfront checks are not 100% reliable, so you can still discover missing dependencies later. sugar-jhbuild allows you to easily rerun steps without starting over, so there is no need to agonize over what you might be missing before you get started. When an error shows up, just open another xterm and compile what's missing from source or get it from YAST. Then select the option to rerun the configure step for that module and hopefully that will let you continue. If you don't know how to satisfy a dependency that turns up you can "give up" on that module and continue. You may or may not wind up with a functional version of Sugar to try out.

In the sugar module, you may need to create a directory named "m4" in the sugar source directory to get configure to work.

While installing Sugar on Suse is not a painless, let it run overnight unattended process, it does work.

To compile farsight, you may need a version of gstreamer that is newer than what 10.2 provides, but is NOT the latest. Using 0.10.17 might cause compile errors in farsight. If so, 0.10.11 will work OK.

Also, it is worth pointing out that sometimes you'll get compile errors running this script that seem to be actual errors in the code, not missing dependencies. This I would guess is caused by someone checking bad code into git. Wait a day then try to run the script again and you may find that the problem has corrected itself.

Running sugar-jhbuild

Get sugar-jhbuild through git as described in Sugar with sugar-jhbuild.
cd sugar-jhbuild
git-pull
./sugar-jhbuild update
./sugar-jhbuild build

After running build you may get a list of required packages that need to be installed from YAST. Most of them are available; the rest you'll need to search for or compile from source. Then run build again.

Things I needed to compile from source

Again, don't assume you WILL need to compile all these from source. Instead, consider it a warning of what you might be getting into.

  • automake-1.7.9
  • gnome-icon-theme-2.22.0
  • gst-plugins-base-0.10.11
  • gst-python-0.1.0
  • gstreamer-0.10.11
  • icon-naming-utils-0.8.2
  • numpy-1.0.4
  • simplejson-1.7.5