Minimal release
Last updated at 12:45 pm UTC on 17 January 2006
The "Minimal release" of Squeak would be the smallest possible kernel which contains a bootstrappable core of Squeak. This could be used for creating lightweight configurations, experiments, etc. For 3.6 there exists a minimal release done by Boris Gaertner.
Those interested in tiny Squeak images would perhaps like to check out Craig Latta's work at http://www.netjam.org/squat. This is a tiny version of squeak, which could potentially become the official Minimal image.
Contributed minimal versions of Squeak
Found on the Squeak mailing list by Pavel Krivanek:
Hi all,
I have prepared an experimental kernel image based on Squeak 3.7.
Properties:
- size: 1.3 MB
- no Morphic
- no MVC
- no Sound
- no Network
- no Browser, Debugger etc.
- no SUnit
- no Projects support (there’s only one default project)
- only necessary processes
- no ObsoleteClasses (consistent references in sources)
- single font
- simple console with clipboard support
- transcript output (with file log)
- transparent creation mechanism
Download:
- image with changes: ftp://comtalk.net/pub/bootstrap/kernel.zip
- bootstrapping environment: ftp://comtalk.net/pub/bootstrap/Bootstrap.zip
- please, can somebody place it to a new location with better connectivity?
How to prepare it:
- use QuiteSmall image (http://www.swerlingphoto.com/squeak/QuiteSmall-3.7.zip)
- load Mirrors.1.cs
- load Bootstrap.st
- evaluate "Bootstrap start"
- in console type "Bootstrap revert"
- wait a while
- condense changes, clear transcript, save image
How it works:
- for all classes in system "mirrors" are created. Mirrors are classes with prefix "Xxx" that contain only class definition and methods. They contain no valid references to class variables.
- mirrors are modified so they contain whole class hierarchy for new system. There are original classes used in code of methods.
- initial cleanup is executed and system processes are recreated
- for all original classes, methods of mirrors are assigned. Methods that aren’t in mirrors are removed. Then the new definition of class is used.
- unnecessary original classes are removed
- mirrors are removed
- whole sources are recompiled
- additional cleanup is executed
The console is very simple. Now it cannot simulate FillInTheBlank, confirmations, user interrupt etc.
http://keepcool.kf.tu-berlin.de/public/mitarbeiter/sadowski/kernel.zip
http://keepcool.kf.tu-berlin.de/public/mitarbeiter/sadowski/Bootstrap.zip
From 'Edgar J. de Cleene:
I put the new 3.7 MVC image on my ftp.
ftp://elpelotero@200-122-104-133.cab.prima.net.ar/
password: elpelotero.