[Sugar-devel] Squeak / Etoys development under Sugar (was: Object Chooser)

Bert Freudenberg bert at freudenbergs.de
Thu Jun 7 10:57:42 EDT 2012


On 07.06.2012, at 15:57, Ajay Garg wrote:

> Hi Bert.
> 
> a)
> Could you give a rough idea, as to what is the release cycle for squeak-vm?

There is no fixed release cycle, releases are done as needed and as time permits. Once or twice a year has been typical.

What is your time frame? If need be one could package a Squeak VM + patches.

> b)
> Also, I installed etoys-5.0.2406 rpm; and did (as told by you) "update code from server".
> However, upon reboot, I again have to do "update code from server".

No need to reboot, quitting Etoys is enough. Any changes made are not permanent, to encourage free experimentation without breaking anything. Normally Etoys only stores projects (which can contain code), the image is read-only.

> So, is there a way that a "final" etoys image (incorporating all the latest changes) can be retrieved (locally)? That is, we may do all the updating from "update code from server", and then transfer the "final" etoys.image at will?

Of course there is a way ;)

First, copy some files from /usr/share/etoys over to Etoys' $SUGAR_ACTIVITY_ROOT/data direcory:

[olpc at xo-a7-4a-a4 ~]$ cd .sugar/default/org.vpri.EtoysActivity/data
[olpc at xo-a7-4a-a4 data]$ cp /usr/share/etoys/etoys.{image,changes} .
[olpc at xo-a7-4a-a4 data]$ ln -s /usr/share/etoys/{locale,ExampleEtoys,EtoysV5.stc} .
[olpc at xo-a7-4a-a4 data]$ ll
insgesamt 17424
-rw-r--r-- 1 olpc olpc     5014  7. Jun 14:34 etoys.changes
-rw-r--r-- 1 olpc olpc 17823140  7. Jun 14:34 etoys.image
lrwxrwxrwx 1 olpc olpc       28  7. Jun 14:34 EtoysV5.stc -> /usr/share/etoys/EtoysV5.stc
lrwxrwxrwx 1 olpc olpc       29  7. Jun 14:34 ExampleEtoys -> /usr/share/etoys/ExampleEtoys
lrwxrwxrwx 1 olpc olpc       23  7. Jun 14:34 locale -> /usr/share/etoys/locale
drwxrwxr-x 3 olpc olpc     4096  7. Jun 14:20 MyEtoys
drwxrwx--- 3 olpc olpc     4096 31. Mai 17:53 private

(you could also make the files in /usr/etoys/share writable, but copying is safer)
(if your XO uses Rainbow security, the Etoys $SUGAR_ACTIVITY_ROOT will be somewhere in the isolation directory instead)

The next time you launch Etoys, it will use this image at $SUGAR_ACTIVITY_ROOT/data/etoys.image instead. (Etoys also looks for a developer image on a USB stick, see Etoys.activity/bin/etoys-activity and use whatever is most convenient)

Now you are ready for serious Squeak development.

1) The secret is Alt-Shift-W. Press this to bring up the full Squeak world menu.
2) From the menu, choose "previous project". This will jump to a hidden unnamed project. You should recolor this project to remind you this is not the default Etoys anymore (right-click, use the lower-right halo handle to choose a different background color)
3) Load updates
4) Press Alt-Shift-W again, choose "save and quit". Do not use "save as" or "save new version" because those would create new file names.

Done. The next time you launch Etoys, you will see it using your image (because of the different background color). Always go back to the top-level project before saving. Of course, this will also retain all changes you make, windows you have open etc. Make yourself a nice dev environment :)

(there is an older version of these instructions, plus a nice tutorial, at http://wiki.laptop.org/go/Smalltalk_Development_on_XO )

- Bert -




More information about the Sugar-devel mailing list