[etoys-dev] FreeCell: Etoys interaction with Journal via DBus on Sugar (OLPC)

Bert Freudenberg bert at freudenbergs.de
Wed Jul 29 19:34:28 EDT 2009

On 28.07.2009, at 01:00, Milan Zimmermann wrote:

> Yes, I wonder what the list of "required" meta data is. I will add  
> what I find
> in the Sugar document.

Well, pretty much everything Etoys is storing, see
	SugarLauncher>>propertiesFrom: aProject

The documentation is here:


>> * we do not really need to customize the OBJECT_ID param name because
>> SugarLauncher>>startUp only looks for ACTIVITY_ID. In fact, the param
>> name does not even need to be customized per activity but it just
>> needs to be something different than "ACTIVITY_ID". Say,
> yes, I "knew" it but later forgot. Will change.. I am trying to  
> think of a


or in Python spirit _ACTIVITY_ID ;)

>> * there is some strange formatting in your code. Some temps lost  
>> there
>> names, other methods were saved with style info embedded. How are you
>> developing this?
> Goo question. I first developed it in an image where all changes  
> went to a
> changeset named mz-free-cell or similar. I just kept saving the  
> image. At some
> point I file-out the changeset as FreeCell.st, and started loading  
> it using
> the --document mechanism. At that point, I started just editing  
> FreeCell.st in
> vi. I also globally added some CTRL-J endlines because when  
> exported, the
> changeset was missing end of lines.
> But anyway, "How to start developing an Etoys-based Sugar Activity"   
> is one of
> the important things I want to figure out how to describe in the  
> blog: If
> someone wants to develop a activity similar to FreeCell, how to  
> start? Open
> Etoys, make changes go to changset, make some changes, file-out,  
> quit, move
> the file-out to appropriate directory, start FreeCell.sh using the  
> file-out as
> --document, make some changes etc etc. It IS lots of work just to  
> move the
> changes around, and difficult to explain, probably a deterrent. Or  
> just keep
> things in one image and export at the end - but that is hard to  
> test. Or edit
> the FreeCell.st as a file ... If I am being somewhat understandable  
> here, what
> is your opinion?

I know quite well what you are talking about, and I do not have a good  
answer yet.

Basically we want to deploy a Squeak application, without shipping a  
custom image. I think that's a new problem, typically Smalltalk apps  
ship as customized images.

For developing these apps we want to use all the tools we regularly  
use. That is, browsers instead of text editors. ChangeSorters or  
Monticello instead of git. Resuming images instead of loading dead code.

So I think while developing this you might want to run under Sugar in  
an image set up for development, and for deployment store the  
"difference" between the original image and your app image in a .xo  
bundle. Possibly we would have a simple script in the .xo bundle that  
just runs the start method of your main class while developing (when  
the class is already in the image). After deploying, it would first  
load the app, and then invoke the start method.

>> * Do you have an account here?
>>   http://activities.sugarlabs.org/en-US/sugar/addon/4054
>>   I can add you as an author so you can upload releases yourself once
>> they are ready for users
> yes - milan.zimmermann at gmail.com
> (but, not yet ready)

I added you.

>> * I did set up a git repository for FreeCell a while ago:
>>   http://git.sugarlabs.org/projects/freecell/
>>   If you are familiar with git you might want to contribute right
>> there.
> Yeah I have a git client :) I  will check with you before I put it  
> in, maybe
> at the end of next weekend - large scale cleanup is needed first :)

You could fork the repository so you do not commit to the mainline  
immediately. See

>>> Hope you guys enjoyed Squeakfest Brazil!
>>> Later, Milan
>> We did, it was a great event. Hopefully someone will write an  
>> extended
>> report ...
> Great to hear! Next few days I plan to check tickets and  
> accomodations in LA
> for 10,11,12 .
> Milan

Oh great! Wish I could go too, but someone needs to take care of the  
kids ... and this time it's me.

- Bert -

More information about the etoys-dev mailing list