Here you find some scripts that can be used to create very small images. All these scripts completely remove Morphic and many other things.
Shrinking Squeak 3.7 introduces a new and difficult problem: The removal of TTC fonts. It turned out that TextFontReference can cause a lot of problems: A single reference from a TextFontReference to a TTC font mutates nine classes into obsolete classes.
All necessary files are in the archive file Shrink37.zip. This archive contains two files:
It is important to close all change sorters (Change sorters contain references to classes and may therefore obstacle the complete removal of classes.)
| fnt ts | ts := (TextStyle named: 'Accujen') copy. ts defaultFontIndex: 2. fnt := (TextStyle named: 'Accujen') fontOfPointSize: 12. TextConstants at: #DefaultTextStyle put: ts. Preferences setBalloonHelpFontTo: fnt; setButtonFontTo: fnt; setEToysFontTo: fnt; setMenuFontTo: fnt. Preferences setParameter: #standardFlapFont to: fnt. Preferences setParameter: #standardCodeFont to: fnt. Preferences setParameter: #standardListFont to: fnt. ListParagraph initialize. Preferences setParameter: #windowTitleFont to: fnt. StandardSystemView setLabelStyle.
Smalltalk preMajorShrink. Smalltalk majorShrink.
Smalltalk obsoleteClasses size.
Smalltalk condenseSources.
This should give a MVC-only system with a 1.6 MBytes image and a 3.6 MBytes sources file.