<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.sugarlabs.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Martas</id>
	<title>Sugar Labs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.sugarlabs.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Martas"/>
	<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/go/Special:Contributions/Martas"/>
	<updated>2026-04-24T20:48:37Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Development_Team/Jhbuild/Ubuntu&amp;diff=66975</id>
		<title>Development Team/Jhbuild/Ubuntu</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Development_Team/Jhbuild/Ubuntu&amp;diff=66975"/>
		<updated>2011-07-13T01:22:45Z</updated>

		<summary type="html">&lt;p&gt;Martas: /* Prerequisites */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Supported versions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ubuntu is currently unsupported&#039;&#039;&#039; because all recent versions lack at least one important package ([https://bugs.launchpad.net/ubuntu/+bug/480407/+index python-xpcom]).&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
In order to install sugar-jhbuild, you need git-core and subversion.&lt;br /&gt;
&lt;br /&gt;
== Installing dependencies ==&lt;br /&gt;
&lt;br /&gt;
After installing and updating sugar-jhbuild according to the [[../|common instructions]], you can use this invocation to install all dependencies automatically:&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild depscheck -s | sudo xargs aptitude -y install&lt;br /&gt;
&lt;br /&gt;
== Significant bugs ==&lt;br /&gt;
&lt;br /&gt;
* [https://bugs.launchpad.net/ubuntu/+bug/325706 broken D-Bus security configuration] that prevents sugar-emulator from working (because Xephyr cannot work).&lt;br /&gt;
* [http://bugs.freedesktop.org/show_bug.cgi?id=19365 sugar-emulator doesn&#039;t work properly if the X server uses evdev as keyboard driver] (because of a Xephyr bug).&lt;br /&gt;
* [https://bugs.launchpad.net/ubuntu/+bug/480407/+index python-xpcom missing] (and thus Browse cannot work)&lt;br /&gt;
&lt;br /&gt;
== Potential pitfalls ==&lt;br /&gt;
&lt;br /&gt;
* gtk-recordmydesktop may prevent sugar-emulator from working properly&lt;/div&gt;</summary>
		<author><name>Martas</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Development_Team/Jhbuild&amp;diff=66974</id>
		<title>Development Team/Jhbuild</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Development_Team/Jhbuild&amp;diff=66974"/>
		<updated>2011-07-13T01:20:58Z</updated>

		<summary type="html">&lt;p&gt;Martas: Deleted a link to useless youtube video&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Translations}}{{TOCright}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sugar-jhbuild will automatically download the latest of Sugar&#039;s dependencies as well as Sugar itself directly from their source repositories, rather than relying on source packages that may have become stale.&lt;br /&gt;
Below are generic instructions on how to use jhbuild to get up and running with Sugar.&lt;br /&gt;
&lt;br /&gt;
==Compatible platforms==&lt;br /&gt;
&lt;br /&gt;
Jhbuild is quite demanding with regard to the packages and setup for the host Linux distribution. As a result there are only a few Linux distributions which are known to work with it.&lt;br /&gt;
&lt;br /&gt;
See the distribution-specific instructions for information about whether your distribution is currently supported. Other distros which have a recent-enough release (e.g. including the latest stable GNOME release) can be supported if someone is willing to maintain the dependencies for that distro release (in config/sysdeps).&lt;br /&gt;
&lt;br /&gt;
==Check distro-specific instructions==&lt;br /&gt;
&lt;br /&gt;
Many distributions have some quirks that need to be catered for and there are different package managing tools in use, so please check the page for your distribution before proceeding:&lt;br /&gt;
&lt;br /&gt;
* [[/Debian | Debian]]&lt;br /&gt;
* [[/Fedora | Fedora]] (some [http://www.youtube.com/profile?user=pleabargain&amp;amp;view=videos&amp;amp;query=jhbuild videos of the Fedora jhbuild install process]). &lt;br /&gt;
* [[/Ubuntu | Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Distro packaging guidelines vary, so please don&#039;t worry if jhbuild requires twice/half the packages in one distro that it did on another.&lt;br /&gt;
&lt;br /&gt;
==Some general advice==&lt;br /&gt;
&lt;br /&gt;
Note: Like most other Unix applications, sugar-jhbuild should never be run as root. It may easily screw up your whole system and/or break in unexpected ways if you do. If you get any permissions error, there&#039;s something wrong with your installation that should be fixed.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re stuck or if you get strange errors, feel free to ask for help on the [[Sugar_Labs/Communication channels#irc.freenode.net_channels|#sugar IRC channel]] or the [[Sugar_Labs/Communication channels#Developer_Lists|sugar-devel mailing list]]. Don&#039;t waste too much time chasing strange problems: usually it&#039;s caused by some basic, easy to fix problem. You might also want to check the [https://bugs.sugarlabs.org/query?status=accepted&amp;amp;status=assigned&amp;amp;status=new&amp;amp;status=reopened&amp;amp;component=sugar-jhbuild bug tracker] to see if it&#039;s a known issue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
; python&lt;br /&gt;
: The sugar-jhbuild command is a Python script, so you need the Python interpreter.&lt;br /&gt;
; git&lt;br /&gt;
: To get the source code of sugar-jhbuild itself and many other Sugar packages you need the &amp;lt;code&amp;gt;git&amp;lt;/code&amp;gt; command-line tool from the distributed version control system of the same name. In many distributions the minimal package you need to install is &amp;quot;git-core&amp;quot;.&lt;br /&gt;
; subversion&lt;br /&gt;
: A few packages (as of January 2010, only squeak and part of etoys) do not use git, and you need the &amp;lt;code&amp;gt;svn&amp;lt;/code&amp;gt; command-line tool from the Subversion version control system to get their source code.&lt;br /&gt;
&lt;br /&gt;
These should be enough to run sugar-jhbuild itself on a typical Linux installation.  Running &amp;lt;code&amp;gt;sugar-jhbuild depscheck&amp;lt;/code&amp;gt; (see below) will probably list dozens of additional required packages.&lt;br /&gt;
&lt;br /&gt;
==Check out sugar-jhbuild==&lt;br /&gt;
&lt;br /&gt;
In a suitable directory (i.e. usually your user&#039;s home directory i.e. /home/yourusername/~), execute&lt;br /&gt;
 git clone git://git.sugarlabs.org/sugar-jhbuild/mainline.git sugar-jhbuild&lt;br /&gt;
&lt;br /&gt;
You&#039;ll know if it worked if you get something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
localhost ~]$ git clone git://git.sugarlabs.org/sugar-jhbuild/mainline.git sugar-jhbuild&lt;br /&gt;
Initialized empty Git repository in /home/denny/sugar-jhbuild/.git/&lt;br /&gt;
remote: Counting objects: 4688, done.&lt;br /&gt;
remote: Compressing objects: 100% (1998/1998), done.&lt;br /&gt;
remote: Total 4688 (delta 2759), reused 4488 (delta 2638)&lt;br /&gt;
Receiving objects: 100% (4688/4688), 1.86 MiB | 197 KiB/s, done.&lt;br /&gt;
Resolving deltas: 100% (2759/2759), done.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Build sugar base system and its dependencies==&lt;br /&gt;
&lt;br /&gt;
Go into the directory you created and start the build. It takes about 30 minutes on a 1.6ghz machine with a wireless G connection.&lt;br /&gt;
&lt;br /&gt;
 cd sugar-jhbuild&lt;br /&gt;
 ./sugar-jhbuild update&lt;br /&gt;
 ./sugar-jhbuild depscheck&lt;br /&gt;
&lt;br /&gt;
Install everything depscheck complains about. [[#Check distro-specific instructions|Read the distro-specific instructions]] for how to do this.&lt;br /&gt;
Now build all Sugar packages in sugar-jhbuild:&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild build&lt;br /&gt;
::[http://www.youtube.com/results?search_query=pleabargain+jhbuild&amp;amp;search_type=&amp;amp;aq=f Here are videos of the process].&lt;br /&gt;
&lt;br /&gt;
If everything worked out fine, you can now [[#Run Sugar|run Sugar]].&lt;br /&gt;
If it doesn&#039;t run or you have other problems read on.&lt;br /&gt;
&lt;br /&gt;
=== Dealing with dependencies ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;sugar-jhbuild depscheck&#039;&#039; will print a list of required packages. They are part of the distribution you&#039;re using and should be installed using your favourite package manager (e.g. aptitude/synaptic for Debian, yum for Fedora).&lt;br /&gt;
&lt;br /&gt;
If you notice that there&#039;s a package missing from the &amp;lt;code&amp;gt;./sugar-jhbuild depscheck &amp;lt;/code&amp;gt; output (i.e. it&#039;s required for Sugar to work properly and not installed, but depscheck does not mention it), please [https://bugs.sugarlabs.org/newticket?component=sugar-jhbuild&amp;amp;version=Git%20as%20of%20bugdate&amp;amp;type=defect&amp;amp;summary=Need%20package%20%3cinsert%20name%20of%20package%3e%20on%20%3cinsert%20name%20of%20distribution%3e&amp;amp;description=%3cplease%20explain%20why%20you%20think%20the%20package%20is%20required%20%28e.g.%20error%20message%29%3e file a bug report] (login required first, but currently no automatic redirection to login page) against the sugar-jhbuild Component in the [https://bugs.sugarlabs.org/ Sugar Labs bug tracker].&lt;br /&gt;
&lt;br /&gt;
===Some tips===&lt;br /&gt;
&lt;br /&gt;
A useful sequence of commands for building Sugar, from the [http://mailman.laptop.org/pipermail/sugar/2007-February/001352.html Sugar mailing list]: (Note that build without -n will update first anyway, so run update separately if you want to see what changed more easily.)&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild update&lt;br /&gt;
 ./sugar-jhbuild build -n -a --clean&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator&lt;br /&gt;
&lt;br /&gt;
The use of -a and --clean flags are needed when a file is removed so that autogen.sh is run. &#039;&#039;&#039;Note:&#039;&#039;&#039; Some packages, e.g., squeak and etoys, don&#039;t have a &#039;&#039;make clean&#039;&#039;. Just ignore the error.&lt;br /&gt;
&lt;br /&gt;
=== If build breaks after an update ===&lt;br /&gt;
&lt;br /&gt;
The packages in sugar-jhbuild are the latest development versions, so you not only get the latest features, but also the latest breakages. The dependencies may change often, too, so be sure to run&lt;br /&gt;
 ./sugar-jhbuild depscheck&lt;br /&gt;
regularly and install the missing packages.&lt;br /&gt;
&lt;br /&gt;
If your problem persists for more than a day (and even though you installed all missing packages), please [https://bugs.sugarlabs.org/newticket?component=sugar-jhbuild&amp;amp;version=Git%20as%20of%20bugdate&amp;amp;type=defect&amp;amp;summary=%3cPlease%20enter%20short%20summary%20of%20your%20problem%20here%3e&amp;amp;description=%3cplease%20copy%20exact%20error%20message%20and%20additional%20information%20here%3e file a bug report].&lt;br /&gt;
&lt;br /&gt;
== Run Sugar ==&lt;br /&gt;
&lt;br /&gt;
Note: if you have a non-US keyboard, please follow the instructions on [[#Running sugar in a VNC session|running Sugar in a VNC session]] instead.&lt;br /&gt;
&lt;br /&gt;
This command launches Sugar in a nested X session:&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator&lt;br /&gt;
&lt;br /&gt;
To set debug variables, modify &amp;lt;code&amp;gt;~/.sugar/debug&amp;lt;/code&amp;gt; (this file will be created on first run of Sugar).&lt;br /&gt;
&lt;br /&gt;
Note that due to a [https://bugs.sugarlabs.org/ticket/342 bug in Xephyr] your keyboard might not work as expected. A partial workaround is to run &amp;lt;code&amp;gt;setxkbmap &amp;amp;lt;keymap name&amp;amp;gt;&amp;lt;/code&amp;gt; by adding this command line to &amp;lt;code&amp;gt;~/.sugar/debug&amp;lt;/code&amp;gt;. Most &amp;quot;regular&amp;quot; keys should work fine after that, some &amp;quot;special keys&amp;quot; (e.g. cursor up/down) might still refuse to operate as intended.  The &amp;quot;keymap name&amp;quot; usually is a two letter country code, e.g. &amp;quot;de&amp;quot; for german or &amp;quot;fr&amp;quot; for french.&lt;br /&gt;
&lt;br /&gt;
== Running sugar in a VNC session ==&lt;br /&gt;
&lt;br /&gt;
Many users and developers have reported problems with running sugar-emulator because it uses Xephyr. As an alternative, you can run sugar in a VNC session. To accomplish this create a &amp;lt;code&amp;gt;~/.vnc/xstartup&amp;lt;/code&amp;gt; file containing the code below:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 exec ~/sugar-jhbuild/sugar-jhbuild run dbus-launch --exit-with-session sugar&lt;br /&gt;
&lt;br /&gt;
Note: The above code assumes that sugar-jhbuild is installed in the &amp;lt;code&amp;gt;~/sugar-jhbuild/&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Now, you may run Sugar by creating a VNC session and accessing it using a VNC viewer. E.g.:&lt;br /&gt;
 vncserver :1&lt;br /&gt;
 vncviewer :1&lt;br /&gt;
&lt;br /&gt;
== Run an individual activity ==&lt;br /&gt;
&lt;br /&gt;
Within sugar, e.g. in Terminal, this command launches an individual activity for testing:&lt;br /&gt;
&lt;br /&gt;
 sugar-launch &#039;&#039;bundle_name&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You will see debug output appearing in Terminal.&lt;br /&gt;
&lt;br /&gt;
== Configure the mode and resolution of Xephyr ==&lt;br /&gt;
&lt;br /&gt;
You can make Xephyr run fullscreen or specify a size (in pixels):&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator --fullscreen&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator --dimensions 1200x900&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator --dimensions 832x624&lt;br /&gt;
The default size of 800x600 is currently the minimum that should work without issues. I.e., activities should be tested to work in this mode (and in others as well).  832x624 approximates the display proportions of the XO laptops, closely matching the toolbar, for example.&lt;br /&gt;
&lt;br /&gt;
== Other commands ==&lt;br /&gt;
&lt;br /&gt;
JHBuild has several other commands that can be useful for development. You can get an overview with:&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild --help-commands&lt;br /&gt;
&lt;br /&gt;
== From within Sugar ==&lt;br /&gt;
Once you have Sugar running, here are some useful commands (these are not specific to sugar-jhbuild or sugar-emulator, but work in all Sugar sessions):&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+F&#039;&#039;&#039; makes the frame appear and disappear&lt;br /&gt;
*&#039;&#039;&#039;Ctrl-Q&#039;&#039;&#039; quits an activity&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+Q&#039;&#039;&#039; quits Sugar&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+O&#039;&#039;&#039; opens the search&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+R&#039;&#039;&#039; rotates the screen&lt;br /&gt;
&lt;br /&gt;
== Customize ==&lt;br /&gt;
&lt;br /&gt;
To customize the build you can modify the configuration file named &amp;lt;code&amp;gt;sugar.jhbuildrc&amp;lt;/code&amp;gt; or create a copy of it and pass &amp;lt;code&amp;gt;--file /path/to/your/new/config&amp;lt;/code&amp;gt; to sugar-jhbuild.&lt;br /&gt;
&lt;br /&gt;
== Compiling using 2 or more CPU cores ==&lt;br /&gt;
&lt;br /&gt;
Before running &amp;lt;code&amp;gt;./sugar-jhbuild build&amp;lt;/code&amp;gt;, append this to &amp;lt;code&amp;gt;sugar.jhbuildrc&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
os.environ[&amp;quot;MAKEFLAGS&amp;quot;] = &amp;quot;-j4 -l4&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Adjust the numbers to be twice the number of CPU cores in your machine.&lt;br /&gt;
&lt;br /&gt;
== Using ccache to speed up rebuilds ==&lt;br /&gt;
&lt;br /&gt;
To speed up full rebuilds of sugar-jhbuild (i.e. running &amp;lt;code&amp;gt;./sugar-jhbuild build&amp;lt;/code&amp;gt; after removing the &amp;lt;code&amp;gt;source&amp;lt;/code&amp;gt; directory) you can use [http://ccache.samba.org/ ccache]. Install it and append the following to &amp;lt;code&amp;gt;sugar.jhbuildrc&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
os.environ[&amp;quot;CCACHE_DIR&amp;quot;] = os.path.join(os.path.dirname(__file__), &amp;quot;ccache&amp;quot;)&lt;br /&gt;
os.environ[&amp;quot;PATH&amp;quot;] = &amp;quot;/usr/lib/ccache:&amp;quot;+os.environ[&amp;quot;PATH&amp;quot;]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Adjust &amp;lt;code&amp;gt;/usr/lib/ccache&amp;lt;/code&amp;gt; to the path used by your distribution and create the &amp;lt;code&amp;gt;ccache&amp;lt;/code&amp;gt; directory (inside your &amp;lt;code&amp;gt;sugar-jhbuild&amp;lt;/code&amp;gt; checkout).&lt;br /&gt;
&lt;br /&gt;
== Building specific version of Sugar ==&lt;br /&gt;
&lt;br /&gt;
To build a specific version of Sugar do the following:&lt;br /&gt;
&lt;br /&gt;
* Open &#039;&#039;sugar.jhbuildrc&#039;&#039; and find line:&lt;br /&gt;
&amp;lt;pre&amp;gt;modulesets = &#039;sugar&#039;&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Set this to:&lt;br /&gt;
&amp;lt;pre&amp;gt;modulesets = &#039;sugar-0.84&#039;&amp;lt;/pre&amp;gt;&lt;br /&gt;
customizing the latter to your specific needs.&lt;br /&gt;
* Copy &#039;&#039;sugar.jhbuildrc&#039;&#039; to &#039;&#039;~/.jhbuildrc&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;./sugar-jhbuild&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Suggestions === &lt;br /&gt;
&lt;br /&gt;
* Copy all your sugar-jhbuild to sugar-jhbuild-0.84 (for example) or check the repositories out again.&lt;br /&gt;
* &amp;lt;code&amp;gt;rm -r install source/&amp;lt;/code&amp;gt;&lt;br /&gt;
* If you want to keep the &amp;lt;code&amp;gt;source&amp;lt;/code&amp;gt; directory to save bandwidth, you need to be extra careful: delete all unpacked tarballs and  cleanup all git repositories with &amp;lt;code&amp;gt;git clean -d -a&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Don&#039;t forget to delete or modify &#039;&#039;.jhbuildrc&#039;&#039; after building the specific version of Sugar if you still want to receive the latest updates from the repositories, &#039;&#039;&#039;OR&#039;&#039;&#039;&lt;br /&gt;
* Create another user.&lt;br /&gt;
&lt;br /&gt;
==Useful Internal Links==&lt;br /&gt;
* [[Development Team/Understanding the Code|Understanding Sugar Code]]&lt;br /&gt;
* [[Taxonomy]] -- explains the components of Sugar (Glucose, Fructose, Sugar, Starches)&lt;br /&gt;
* [[Sugar Instructions]] -- how to actually use Sugar once you have it running[http://en.flossmanuals.net/sugar]&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
* [http://library.gnome.org/devel/jhbuild/unstable/ JHBuild manual]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Known issues==&lt;br /&gt;
&lt;br /&gt;
=== Known issue with hulahop ===&lt;br /&gt;
&lt;br /&gt;
* hulahop stopped building because I had installed a more recent version of xulrunner on my machine. The workaround was to &amp;lt;code&amp;gt;rm -rf ~/sugar-jhbuild/source/hulahop&amp;lt;/code&amp;gt; and then run update and build again.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installing Sugar]]&lt;br /&gt;
[[Category:Jhbuild]]&lt;/div&gt;</summary>
		<author><name>Martas</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Development_Team/Jhbuild&amp;diff=66973</id>
		<title>Development Team/Jhbuild</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Development_Team/Jhbuild&amp;diff=66973"/>
		<updated>2011-07-13T01:15:28Z</updated>

		<summary type="html">&lt;p&gt;Martas: edited package name&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Translations}}{{TOCright}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sugar-jhbuild will automatically download the latest of Sugar&#039;s dependencies as well as Sugar itself directly from their source repositories, rather than relying on source packages that may have become stale.&lt;br /&gt;
Below are generic instructions on how to use jhbuild to get up and running with Sugar.&lt;br /&gt;
&lt;br /&gt;
==Compatible platforms==&lt;br /&gt;
&lt;br /&gt;
Jhbuild is quite demanding with regard to the packages and setup for the host Linux distribution. As a result there are only a few Linux distributions which are known to work with it.&lt;br /&gt;
&lt;br /&gt;
See the distribution-specific instructions for information about whether your distribution is currently supported. Other distros which have a recent-enough release (e.g. including the latest stable GNOME release) can be supported if someone is willing to maintain the dependencies for that distro release (in config/sysdeps).&lt;br /&gt;
&lt;br /&gt;
==Check distro-specific instructions==&lt;br /&gt;
&lt;br /&gt;
Many distributions have some quirks that need to be catered for and there are different package managing tools in use, so please check the page for your distribution before proceeding:&lt;br /&gt;
&lt;br /&gt;
* [[/Debian | Debian]]&lt;br /&gt;
* [[/Fedora | Fedora]] (some [http://www.youtube.com/profile?user=pleabargain&amp;amp;view=videos&amp;amp;query=jhbuild videos of the Fedora jhbuild install process]). &lt;br /&gt;
* [[/Ubuntu | Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Distro packaging guidelines vary, so please don&#039;t worry if jhbuild requires twice/half the packages in one distro that it did on another.&lt;br /&gt;
&lt;br /&gt;
==Some general advice==&lt;br /&gt;
&lt;br /&gt;
Note: Like most other Unix applications, sugar-jhbuild should never be run as root. It may easily screw up your whole system and/or break in unexpected ways if you do. If you get any permissions error, there&#039;s something wrong with your installation that should be fixed.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re stuck or if you get strange errors, feel free to ask for help on the [[Sugar_Labs/Communication channels#irc.freenode.net_channels|#sugar IRC channel]] or the [[Sugar_Labs/Communication channels#Developer_Lists|sugar-devel mailing list]]. Don&#039;t waste too much time chasing strange problems: usually it&#039;s caused by some basic, easy to fix problem. You might also want to check the [https://bugs.sugarlabs.org/query?status=accepted&amp;amp;status=assigned&amp;amp;status=new&amp;amp;status=reopened&amp;amp;component=sugar-jhbuild bug tracker] to see if it&#039;s a known issue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
; python&lt;br /&gt;
: The sugar-jhbuild command is a Python script, so you need the Python interpreter.&lt;br /&gt;
; git&lt;br /&gt;
: To get the source code of sugar-jhbuild itself and many other Sugar packages you need the &amp;lt;code&amp;gt;git&amp;lt;/code&amp;gt; command-line tool from the distributed version control system of the same name. In many distributions the minimal package you need to install is &amp;quot;git-core&amp;quot;.&lt;br /&gt;
; subversion&lt;br /&gt;
: A few packages (as of January 2010, only squeak and part of etoys) do not use git, and you need the &amp;lt;code&amp;gt;svn&amp;lt;/code&amp;gt; command-line tool from the Subversion version control system to get their source code.&lt;br /&gt;
&lt;br /&gt;
These should be enough to run sugar-jhbuild itself on a typical Linux installation.  Running &amp;lt;code&amp;gt;sugar-jhbuild depscheck&amp;lt;/code&amp;gt; (see below) will probably list dozens of additional required packages.&lt;br /&gt;
&lt;br /&gt;
==Check out sugar-jhbuild==&lt;br /&gt;
&lt;br /&gt;
In a suitable directory (i.e. usually your user&#039;s home directory i.e. /home/yourusername/~), execute&lt;br /&gt;
 git clone git://git.sugarlabs.org/sugar-jhbuild/mainline.git sugar-jhbuild&lt;br /&gt;
&lt;br /&gt;
::Make sure you are in the _user&#039;s_ home directory&lt;br /&gt;
:: video http://www.youtube.com/watch?v=Tdr1bs4rQ_s&lt;br /&gt;
&lt;br /&gt;
You&#039;ll know if it worked if you get something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
localhost ~]$ git clone git://git.sugarlabs.org/sugar-jhbuild/mainline.git sugar-jhbuild&lt;br /&gt;
Initialized empty Git repository in /home/denny/sugar-jhbuild/.git/&lt;br /&gt;
remote: Counting objects: 4688, done.&lt;br /&gt;
remote: Compressing objects: 100% (1998/1998), done.&lt;br /&gt;
remote: Total 4688 (delta 2759), reused 4488 (delta 2638)&lt;br /&gt;
Receiving objects: 100% (4688/4688), 1.86 MiB | 197 KiB/s, done.&lt;br /&gt;
Resolving deltas: 100% (2759/2759), done.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Build sugar base system and its dependencies==&lt;br /&gt;
&lt;br /&gt;
Go into the directory you created and start the build. It takes about 30 minutes on a 1.6ghz machine with a wireless G connection.&lt;br /&gt;
&lt;br /&gt;
 cd sugar-jhbuild&lt;br /&gt;
 ./sugar-jhbuild update&lt;br /&gt;
 ./sugar-jhbuild depscheck&lt;br /&gt;
&lt;br /&gt;
Install everything depscheck complains about. [[#Check distro-specific instructions|Read the distro-specific instructions]] for how to do this.&lt;br /&gt;
Now build all Sugar packages in sugar-jhbuild:&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild build&lt;br /&gt;
::[http://www.youtube.com/results?search_query=pleabargain+jhbuild&amp;amp;search_type=&amp;amp;aq=f Here are videos of the process].&lt;br /&gt;
&lt;br /&gt;
If everything worked out fine, you can now [[#Run Sugar|run Sugar]].&lt;br /&gt;
If it doesn&#039;t run or you have other problems read on.&lt;br /&gt;
&lt;br /&gt;
=== Dealing with dependencies ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;sugar-jhbuild depscheck&#039;&#039; will print a list of required packages. They are part of the distribution you&#039;re using and should be installed using your favourite package manager (e.g. aptitude/synaptic for Debian, yum for Fedora).&lt;br /&gt;
&lt;br /&gt;
If you notice that there&#039;s a package missing from the &amp;lt;code&amp;gt;./sugar-jhbuild depscheck &amp;lt;/code&amp;gt; output (i.e. it&#039;s required for Sugar to work properly and not installed, but depscheck does not mention it), please [https://bugs.sugarlabs.org/newticket?component=sugar-jhbuild&amp;amp;version=Git%20as%20of%20bugdate&amp;amp;type=defect&amp;amp;summary=Need%20package%20%3cinsert%20name%20of%20package%3e%20on%20%3cinsert%20name%20of%20distribution%3e&amp;amp;description=%3cplease%20explain%20why%20you%20think%20the%20package%20is%20required%20%28e.g.%20error%20message%29%3e file a bug report] (login required first, but currently no automatic redirection to login page) against the sugar-jhbuild Component in the [https://bugs.sugarlabs.org/ Sugar Labs bug tracker].&lt;br /&gt;
&lt;br /&gt;
===Some tips===&lt;br /&gt;
&lt;br /&gt;
A useful sequence of commands for building Sugar, from the [http://mailman.laptop.org/pipermail/sugar/2007-February/001352.html Sugar mailing list]: (Note that build without -n will update first anyway, so run update separately if you want to see what changed more easily.)&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild update&lt;br /&gt;
 ./sugar-jhbuild build -n -a --clean&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator&lt;br /&gt;
&lt;br /&gt;
The use of -a and --clean flags are needed when a file is removed so that autogen.sh is run. &#039;&#039;&#039;Note:&#039;&#039;&#039; Some packages, e.g., squeak and etoys, don&#039;t have a &#039;&#039;make clean&#039;&#039;. Just ignore the error.&lt;br /&gt;
&lt;br /&gt;
=== If build breaks after an update ===&lt;br /&gt;
&lt;br /&gt;
The packages in sugar-jhbuild are the latest development versions, so you not only get the latest features, but also the latest breakages. The dependencies may change often, too, so be sure to run&lt;br /&gt;
 ./sugar-jhbuild depscheck&lt;br /&gt;
regularly and install the missing packages.&lt;br /&gt;
&lt;br /&gt;
If your problem persists for more than a day (and even though you installed all missing packages), please [https://bugs.sugarlabs.org/newticket?component=sugar-jhbuild&amp;amp;version=Git%20as%20of%20bugdate&amp;amp;type=defect&amp;amp;summary=%3cPlease%20enter%20short%20summary%20of%20your%20problem%20here%3e&amp;amp;description=%3cplease%20copy%20exact%20error%20message%20and%20additional%20information%20here%3e file a bug report].&lt;br /&gt;
&lt;br /&gt;
== Run Sugar ==&lt;br /&gt;
&lt;br /&gt;
Note: if you have a non-US keyboard, please follow the instructions on [[#Running sugar in a VNC session|running Sugar in a VNC session]] instead.&lt;br /&gt;
&lt;br /&gt;
This command launches Sugar in a nested X session:&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator&lt;br /&gt;
&lt;br /&gt;
To set debug variables, modify &amp;lt;code&amp;gt;~/.sugar/debug&amp;lt;/code&amp;gt; (this file will be created on first run of Sugar).&lt;br /&gt;
&lt;br /&gt;
Note that due to a [https://bugs.sugarlabs.org/ticket/342 bug in Xephyr] your keyboard might not work as expected. A partial workaround is to run &amp;lt;code&amp;gt;setxkbmap &amp;amp;lt;keymap name&amp;amp;gt;&amp;lt;/code&amp;gt; by adding this command line to &amp;lt;code&amp;gt;~/.sugar/debug&amp;lt;/code&amp;gt;. Most &amp;quot;regular&amp;quot; keys should work fine after that, some &amp;quot;special keys&amp;quot; (e.g. cursor up/down) might still refuse to operate as intended.  The &amp;quot;keymap name&amp;quot; usually is a two letter country code, e.g. &amp;quot;de&amp;quot; for german or &amp;quot;fr&amp;quot; for french.&lt;br /&gt;
&lt;br /&gt;
== Running sugar in a VNC session ==&lt;br /&gt;
&lt;br /&gt;
Many users and developers have reported problems with running sugar-emulator because it uses Xephyr. As an alternative, you can run sugar in a VNC session. To accomplish this create a &amp;lt;code&amp;gt;~/.vnc/xstartup&amp;lt;/code&amp;gt; file containing the code below:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 exec ~/sugar-jhbuild/sugar-jhbuild run dbus-launch --exit-with-session sugar&lt;br /&gt;
&lt;br /&gt;
Note: The above code assumes that sugar-jhbuild is installed in the &amp;lt;code&amp;gt;~/sugar-jhbuild/&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Now, you may run Sugar by creating a VNC session and accessing it using a VNC viewer. E.g.:&lt;br /&gt;
 vncserver :1&lt;br /&gt;
 vncviewer :1&lt;br /&gt;
&lt;br /&gt;
== Run an individual activity ==&lt;br /&gt;
&lt;br /&gt;
Within sugar, e.g. in Terminal, this command launches an individual activity for testing:&lt;br /&gt;
&lt;br /&gt;
 sugar-launch &#039;&#039;bundle_name&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You will see debug output appearing in Terminal.&lt;br /&gt;
&lt;br /&gt;
== Configure the mode and resolution of Xephyr ==&lt;br /&gt;
&lt;br /&gt;
You can make Xephyr run fullscreen or specify a size (in pixels):&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator --fullscreen&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator --dimensions 1200x900&lt;br /&gt;
 ./sugar-jhbuild run sugar-emulator --dimensions 832x624&lt;br /&gt;
The default size of 800x600 is currently the minimum that should work without issues. I.e., activities should be tested to work in this mode (and in others as well).  832x624 approximates the display proportions of the XO laptops, closely matching the toolbar, for example.&lt;br /&gt;
&lt;br /&gt;
== Other commands ==&lt;br /&gt;
&lt;br /&gt;
JHBuild has several other commands that can be useful for development. You can get an overview with:&lt;br /&gt;
&lt;br /&gt;
 ./sugar-jhbuild --help-commands&lt;br /&gt;
&lt;br /&gt;
== From within Sugar ==&lt;br /&gt;
Once you have Sugar running, here are some useful commands (these are not specific to sugar-jhbuild or sugar-emulator, but work in all Sugar sessions):&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+F&#039;&#039;&#039; makes the frame appear and disappear&lt;br /&gt;
*&#039;&#039;&#039;Ctrl-Q&#039;&#039;&#039; quits an activity&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+Q&#039;&#039;&#039; quits Sugar&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+O&#039;&#039;&#039; opens the search&lt;br /&gt;
*&#039;&#039;&#039;Alt+Shift+R&#039;&#039;&#039; rotates the screen&lt;br /&gt;
&lt;br /&gt;
== Customize ==&lt;br /&gt;
&lt;br /&gt;
To customize the build you can modify the configuration file named &amp;lt;code&amp;gt;sugar.jhbuildrc&amp;lt;/code&amp;gt; or create a copy of it and pass &amp;lt;code&amp;gt;--file /path/to/your/new/config&amp;lt;/code&amp;gt; to sugar-jhbuild.&lt;br /&gt;
&lt;br /&gt;
== Compiling using 2 or more CPU cores ==&lt;br /&gt;
&lt;br /&gt;
Before running &amp;lt;code&amp;gt;./sugar-jhbuild build&amp;lt;/code&amp;gt;, append this to &amp;lt;code&amp;gt;sugar.jhbuildrc&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
os.environ[&amp;quot;MAKEFLAGS&amp;quot;] = &amp;quot;-j4 -l4&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Adjust the numbers to be twice the number of CPU cores in your machine.&lt;br /&gt;
&lt;br /&gt;
== Using ccache to speed up rebuilds ==&lt;br /&gt;
&lt;br /&gt;
To speed up full rebuilds of sugar-jhbuild (i.e. running &amp;lt;code&amp;gt;./sugar-jhbuild build&amp;lt;/code&amp;gt; after removing the &amp;lt;code&amp;gt;source&amp;lt;/code&amp;gt; directory) you can use [http://ccache.samba.org/ ccache]. Install it and append the following to &amp;lt;code&amp;gt;sugar.jhbuildrc&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
os.environ[&amp;quot;CCACHE_DIR&amp;quot;] = os.path.join(os.path.dirname(__file__), &amp;quot;ccache&amp;quot;)&lt;br /&gt;
os.environ[&amp;quot;PATH&amp;quot;] = &amp;quot;/usr/lib/ccache:&amp;quot;+os.environ[&amp;quot;PATH&amp;quot;]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Adjust &amp;lt;code&amp;gt;/usr/lib/ccache&amp;lt;/code&amp;gt; to the path used by your distribution and create the &amp;lt;code&amp;gt;ccache&amp;lt;/code&amp;gt; directory (inside your &amp;lt;code&amp;gt;sugar-jhbuild&amp;lt;/code&amp;gt; checkout).&lt;br /&gt;
&lt;br /&gt;
== Building specific version of Sugar ==&lt;br /&gt;
&lt;br /&gt;
To build a specific version of Sugar do the following:&lt;br /&gt;
&lt;br /&gt;
* Open &#039;&#039;sugar.jhbuildrc&#039;&#039; and find line:&lt;br /&gt;
&amp;lt;pre&amp;gt;modulesets = &#039;sugar&#039;&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Set this to:&lt;br /&gt;
&amp;lt;pre&amp;gt;modulesets = &#039;sugar-0.84&#039;&amp;lt;/pre&amp;gt;&lt;br /&gt;
customizing the latter to your specific needs.&lt;br /&gt;
* Copy &#039;&#039;sugar.jhbuildrc&#039;&#039; to &#039;&#039;~/.jhbuildrc&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;./sugar-jhbuild&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Suggestions === &lt;br /&gt;
&lt;br /&gt;
* Copy all your sugar-jhbuild to sugar-jhbuild-0.84 (for example) or check the repositories out again.&lt;br /&gt;
* &amp;lt;code&amp;gt;rm -r install source/&amp;lt;/code&amp;gt;&lt;br /&gt;
* If you want to keep the &amp;lt;code&amp;gt;source&amp;lt;/code&amp;gt; directory to save bandwidth, you need to be extra careful: delete all unpacked tarballs and  cleanup all git repositories with &amp;lt;code&amp;gt;git clean -d -a&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Don&#039;t forget to delete or modify &#039;&#039;.jhbuildrc&#039;&#039; after building the specific version of Sugar if you still want to receive the latest updates from the repositories, &#039;&#039;&#039;OR&#039;&#039;&#039;&lt;br /&gt;
* Create another user.&lt;br /&gt;
&lt;br /&gt;
==Useful Internal Links==&lt;br /&gt;
* [[Development Team/Understanding the Code|Understanding Sugar Code]]&lt;br /&gt;
* [[Taxonomy]] -- explains the components of Sugar (Glucose, Fructose, Sugar, Starches)&lt;br /&gt;
* [[Sugar Instructions]] -- how to actually use Sugar once you have it running[http://en.flossmanuals.net/sugar]&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
* [http://library.gnome.org/devel/jhbuild/unstable/ JHBuild manual]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Known issues==&lt;br /&gt;
&lt;br /&gt;
=== Known issue with hulahop ===&lt;br /&gt;
&lt;br /&gt;
* hulahop stopped building because I had installed a more recent version of xulrunner on my machine. The workaround was to &amp;lt;code&amp;gt;rm -rf ~/sugar-jhbuild/source/hulahop&amp;lt;/code&amp;gt; and then run update and build again.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installing Sugar]]&lt;br /&gt;
[[Category:Jhbuild]]&lt;/div&gt;</summary>
		<author><name>Martas</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Sugar_System_Stack_(ASCII_Text)&amp;diff=66938</id>
		<title>Sugar System Stack (ASCII Text)</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Sugar_System_Stack_(ASCII_Text)&amp;diff=66938"/>
		<updated>2011-07-09T21:45:00Z</updated>

		<summary type="html">&lt;p&gt;Martas: Undo revision 66937 by Martas (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Developer]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
------------------------------------------------------------------------------------------------&lt;br /&gt;
|             Packaging             |   Layer   |             Contents                         |&lt;br /&gt;
------------+-----------+-----------+-----------+-----------------------------------------------&lt;br /&gt;
|           |           |           |   Sugar   | Pre-installed |           Turtle             |&lt;br /&gt;
|           |           |           |  Library  |  From-the-web |  Read       Art              |&lt;br /&gt;
|           |           |           |Collections|Locally-created|      Etoys                   |&lt;br /&gt;
|???????????+-----------+-----------+-----------+---------------|                      ...     |&lt;br /&gt;
|           |           | Fructose  |   Sugar   |               | Write                        |&lt;br /&gt;
|           |           |           | Activities|     Browse    |        Record                |&lt;br /&gt;
|           |  Sucrose  |-----------+-----------+----------------------------------------------|&lt;br /&gt;
|           |           | Glucose   |   Sugar   |sugar sugar-base sugar-toolkit etoys Journal  |&lt;br /&gt;
|           |           |           | Framework |presence-service sugar-datastore sugar-artwork|&lt;br /&gt;
|  Starch   |===========+===========+===========+==============================================|&lt;br /&gt;
|           |           |           | Software  | GNOME freedesktop Gtk+ dbus X Windows System |&lt;br /&gt;
|           |           |           |  Stack    | matchbox gconf telepathy xulrunner abiword   |&lt;br /&gt;
|           |           |           |           |  squeak                                      |&lt;br /&gt;
|           |  Ribose   +-----------+-----------+----------------------------------------------|&lt;br /&gt;
|           |           |           | Operating | Fedora Ubuntu    |     | Mac |MSWindows|     |&lt;br /&gt;
|           |           |           |  System   |Debian Other-Linux| LTSP| OSX | (QEMU)  | ... |&lt;br /&gt;
|           |           |           |           |    -Distributions|     |     |         |     |&lt;br /&gt;
|-----------+-----------+-----------+-----------+----------------------------------------------|&lt;br /&gt;
|           |           |           | Hardware  |   OLPC   |   Asus  |  Intel    | OLPC |      |&lt;br /&gt;
|           |           |           | Platform  |   XO-1   |  EEE PC | Classmate | XO-2 |  ... |&lt;br /&gt;
------------+-----------+-----------+------------+----------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Sugar System Stack]] graphical view.&lt;/div&gt;</summary>
		<author><name>Martas</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Sugar_System_Stack_(ASCII_Text)&amp;diff=66937</id>
		<title>Sugar System Stack (ASCII Text)</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Sugar_System_Stack_(ASCII_Text)&amp;diff=66937"/>
		<updated>2011-07-09T21:44:02Z</updated>

		<summary type="html">&lt;p&gt;Martas: Modified the art a bit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Developer]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-------------------------------------------------------------------------------------------------&lt;br /&gt;
|             Packaging             |   Layer   |             Contents                          |&lt;br /&gt;
------------+-----------+-----------+-----------+------------------------------------------------&lt;br /&gt;
|           |           |           |   Sugar   | Pre-installed |           Turtle              |&lt;br /&gt;
|           |           |           |  Library  |  From-the-web |  Read       Art               |&lt;br /&gt;
|           |           |           |Collections|Locally-created|      Etoys                    |&lt;br /&gt;
|???????????+-----------+-----------+-----------+---------------|                      ...      |&lt;br /&gt;
|           |           | Fructose  |   Sugar   |               | Write                         |&lt;br /&gt;
|           |           |           | Activities|    Browse     |        Record                 |&lt;br /&gt;
|           |  Sucrose  |-----------+-----------+-----------------------------------------------|&lt;br /&gt;
|           |           | Glucose   |   Sugar   |sugar sugar-base sugar-toolkit etoys Journal   |&lt;br /&gt;
|           |           |           | Framework |presence-service sugar-datastore sugar-artwork |&lt;br /&gt;
|  Starch   |===========+===========+===========+===============================================|&lt;br /&gt;
|           |           |           | Software  | GNOME freedesktop Gtk+ dbus X Windows System  |&lt;br /&gt;
|           |           |           |  Stack    | matchbox gconf telepathy xulrunner abiword    |&lt;br /&gt;
|           |           |           |           | squeak                                        |&lt;br /&gt;
|           |  Ribose   +-----------+-----------+-----------------------------------------------|&lt;br /&gt;
|           |           |           | Operating | Fedora Ubuntu     |     | Mac |SWindows|      |&lt;br /&gt;
|           |           |           |  System   |     Debian        |LTSP | OSX | (QEMU) | ...  |&lt;br /&gt;
|           |           |           |           |Other-Linux-Distros|     |     |        |      |&lt;br /&gt;
|-----------+-----------+-----------+-----------+-----------------------------------------------|&lt;br /&gt;
|           |           |           | Hardware  |   OLPC   |   Asus  |  Intel    | OLPC |       |&lt;br /&gt;
|           |           |           | Platform  |   XO-1   |  EEE PC | Classmate | XO-2 |  ...  |&lt;br /&gt;
------------+-----------+-----------+-----------+------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Sugar System Stack]] graphical view.&lt;/div&gt;</summary>
		<author><name>Martas</name></author>
	</entry>
</feed>