How About an InstallSqueak Image?

Andrew C. Greenberg werdna at gate.net
Tue Jun 15 02:22:02 UTC 1999


All this talk about using third party installation programs to setup 
Squeak got me real depressed.  However, particularly with the few 
examples we have seen, got me thinking.  The hard problem is finding 
a good machine-independent installation program.  (There is an 
installshield for Java that's not bad, but hey . . .)

Hey, guys, don't we know a REALLY, REALLY good machine-independent system?

Why not use a tiny Squeak to bootstrap a bigger Squeak?

Here's my observation: (1) the Squeak source files (both original and 
changes), and my image itself compress under gzip really, really, 
well.  (16M -> about 6M)  (2) Squeak has a very nice little 
gzipstream decompression routine already built in.  (A simple test 
shows it works quite nicely).

So, why not make an absolutely ultra-minimum image that is capable, 
say, of supporting a window, progress bar and the stream.  Save the 
gzip versions of the  target files in ByteArrays.  Teach 
installSqueak to quietly ignore its inability to load sources 
(trivial change to openSources), and upon startUp, to automatically 
decompress, perhaps while displaying a nice logotype and some pretty 
progress bars: (1) an image; (2) the image's change file; and (3) the 
original sources.  (Or whatever else we programmed the installSqueak 
image to deliver).

Then, all we need to make a new squeak distribution is a native VM 
and a machine-independent installSqueak image?  (Heck, you might even 
have a machine-dependent installSqueak image to package native 
plugins).

What is more, if we do this with even a mild amount of common sense, 
it should be UTTERLY TRIVIAL to repackage a new image/sources 
combination into an InstallSqueak image.

We only need to do this once, maybe twice before we don't have to 
worry about it any more?  Once we have the basics, we can even build 
InstallSqueak into a super-cool general purpose and 
machine-independent installshield for general purpose stuff.  Anyone 
game to get this started?  [I have depositions booked solid for the 
next two weeks or I'd do this myself.]





More information about the Squeak-dev mailing list