Hi,

I'm new to the list so please forgive me if this subject has already been
discussed :-)

After playing around with Shoes for a while, and whilst I wait on my copy of
the book to be delivered I've been thinking about how one would distribute a
Shoes application ? What I mean by this is I think Shoes should have some
sort of standard packaging so that the Shoes app could be classed as a 'run
time' if you will, and developers could distribute there apps in a uniformed
way, which would allow the Shoes 'run time' to recognise them and launch
them transparently to the end user, rather than having to either launch the
app from the command line or open Shoes and then select the Ruby file.

I envisage that this could be done similar to how Mac OS X app bundles work.
We could have a basic folder layout, a standard insertion point (main.rb for
example) which is what Shoes would automatically load when launching the
bundle, and certain resource folders which would store images, data files
etc. All this could be zipped up (Archived!) and given a .shoes extension.

This way, we could just distribute the .shoes bundle, and the end user could
double-click it and have it launch like any other application. The host OS
would recognise that the .shoes extension is loaded by the Shoes 'run time'.

This would also allow for a new method in Shoes to load a resource, so
rather than loading an image with the image keyword, you could use a
resource keyword, and then specify a type as a parameter, in this case :type
=> :image. Implementing such a system would also allow each bundle to
include in it any dependencies, such as gems it requires (because you could
just copy the appropriate folders across) so each bundle would be
independent of any requirements other than Ruby and the Shoes 'run time'.

Anyhow, just I thought I was having which I thought I would share. Feel free
to jump in with your thoughts/ideas.

-Mic

Reply via email to