[squeak-dev] All-in-one VM for 4.4?

Bert Freudenberg bert at freudenbergs.de
Thu Mar 7 14:40:25 UTC 2013


On 2013-03-07, at 10:57, "Juan Vuletich (mail lists)" <juanlists at jvuletich.org> wrote:

> Hi Eliot,
> 
> The Mac interpreter Squeak 4.2.4beta1U.app, preloaded with lots of plugins is about 23Mb.

That's because it includes more plugins than any other VM, and these are fat binaries for both x86 and PPC.

But you can remove the PPC code easily:

bert$ ditto --rsrc --arch i386 "Squeak 4.2.5beta1U.app"  "Squeak 4.2.5beta1i.app"
bert$ du -h "Squeak 4.2.5beta1"* | grep -v app/
 18M	Squeak 4.2.5beta1U.app
9.9M	Squeak 4.2.5beta1i.app

Now it's not a "U"niversal app anymore but an "i"ntel only one.

> The VM might be an order of magnitude larger than a dev image! One of the things I really like about Cog is that it is a lot smaller. If at all possible, please add any non-essential plugins as external. Most people don't need additional plugins. For example, RomePlugin, CurlPlugin, FT2Plugin and OggPlugin are bigger than Cog itself, and together they are 16MB.

These are external in the interpreter too, it can easily be trimmed down:

mephisto:Downloads bert$ rm -r "Squeak 4.2.5beta1i.app"/Contents/Resources/{Rome,FT2,Curl,Ogg}*
mephisto:Downloads bert$ du -h "Squeak 4.2.5beta1"* | grep -v app/
 18M	Squeak 4.2.5beta1U.app
3.9M	Squeak 4.2.5beta1i.app

Btw, if you're serious about reducing the installation footprint, consider shipping a compressed sources file, as we do in Etoys (*.stc).

> In any case, ClipboardExtendedPlugin is potentially useful for most people and really small, although it doesn't exists for Windows.

+1 

Copying/pasting images and rich text is nice.

- Bert -

> Thanks,
> Juan Vuletich
> 
> Quoting Eliot Miranda <eliot.miranda at gmail.com>:
> 
>> Hi David,
>> 
>>    I'm very happy to build new plugins.  Cog was developed with the set of plugins that Qwaq/Teleplace used so the current set is a historical accident.  However I'd appreciate any and all help in deciding which ones are needed and updating the build scripts to make then.
>> 
>> Eliot (phone)
>> 
>> On Mar 6, 2013, at 9:06 AM, David Corking <lists at dcorking.com> wrote:
>> 
>>> I read Paul's lists of external plugins. Thanks: I, for one,
>>> appreciate the attention to detail.
>>> 
>>> (1) I recall that there was a plan to include the four Scratch
>>> plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
>>> in the image that requires them, but they may encourage interesting
>>> new packages, or smooth the way for the port of Etoys to trunk.
>>> 
>>> Please consider adding them in 4.4 or 4.5 all-in-ones.
>>> 
>>> (2) Cog VMs list of externals seem shorter. Unless Eliot has built the
>>> others as internals, Cog VMs may miss important functionality. For
>>> example, Linux users could get crashes without the pulse audio plugin.
>>> (There are workarounds in one version of Bert's launcher script, but I
>>> don't know if they are well tested, or if that version of the script
>>> can be included in the All-in-One.) I think all platforms will miss
>>> Kedama.
>>> 
>>> Please mention in the release notes that (for now) users who download
>>> the Cog all-in-one will trade functionality for speed.
>>> 
>>> (3) Tobias Pape wrote:
>>>> I was under the impression, that 5.4.7.1 was the
>>>> latest, recommended non-Cog VM for mac… go figure
>>> 
>>> I think Bert has advised you correctly. My recollection is that the
>>> "Cocoa Interpreter VM" line of development was abandoned in favour of
>>> the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
>>> made it difficult to achieve quite the same level of quality as the
>>> 'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
>>> Squeak 4.2.5beta1U.app as linked works fine in OS X.
>>> 
>>> (I think http://squeakvm.org/mac/ might benefit moving 'Cocoa VM'
>>> further down the page.)
>>> 
>>> (4) Isn't there a stub version of HostWindow for Mac and Win? Should
>>> that be in the VMs?
>>> 
>>> Please educate me if I have the wrong end of the stick in any of my 4 comments.
>>> 
>>> Have fun! David
>>> 
>> 
> 
> 



More information about the Squeak-dev mailing list