The Motivation
I have been using "One-Click" Smalltalk images for Squeak and Pharo and I want a better organized.Throw away images
There is a deeper philosophy involved. The Monticello packages are the valuable product from the programmer. The image files are transient they are just runtime used for development and deployment. The programming value is in the code.
VMs and Images
At the highest level there are only two things to worry about virtual machines (VM) and images. The VM contains all the operating system dependent code, .exe and .dll files in the case of windows.
To startup an image with a VM in a batch file you would
Where %VM% is a path to the VM executable and %IMAGE% is the path to the .image file.
There are a couple of implicit assumptions which are that all the .dll files are contained in the folder with the vm.exe file. And the .changes and base directory of the smalltalk environment image file.
Monticello Cache problem
Monticello caching is useful if that cache applies for all images and that can be accomplished by the following code for each image. This is likely part of my image customization in my image building script.
MCCacheRepository default directory:
(FileDirectory on: '/home/enter your directory/package-cache/')
Directory Layout
I create a folder called Smalltalk it containes the folders Pharo, Squeak, VM and Cache.Pharo contains image files for Pharo, Squeak contains image files for Squeak, VM contains folders with various VM configurations and Cache contains a Folder Montecello with the common cached packages.
Project images are created outside of the Smalltalk folder but refer within that folder as appropriate.