UPDATE (5/22/2011): I figured out how to use the “open” command, instead of digging into the bundle. See the “Scripting the Image” section below.
I go through a lot of images. It’s just the way it is – make some changes to a package, try to load it in a fresh image, open another image with an older version to compare.
The Case for Scripting
The frustrating part is not using many images (which is pretty cool – to have multiple computers running at once… but I digress), but setting up the images every time. So I decided I’d find a way to load common configurations automatically. But how would I communicate to the image that it should run certain code on startup? A quick google found writing scripts.
Poor Command of the Mac Command Line
This sounded like just what I needed, but I ran into a bit of trouble with the Mac command line:
~$ open -a /Applications/Squeak\ 4.2.5beta1UFSPathMakeRef(/Applications/Squeak 4.2.5beta1U) failed with error -43.~$ open -a Squeak\ 4.2.5beta1U ./Pharo-1.1-scripting/Pharo-1.1-11411dev10.07.1.imageUnable to find application named ‘Squeak 4.2.5beta1U’~$ /Applications/Squeak\ 4.2.5beta1U ./Pharo-1.1-scripting/Pharo-1.1-11411dev10.07.1.image-bash: /Applications/Squeak 4.2.5beta1U: No such file or directory~$ /Applications/Squeak\ 4.2.5beta1U.app ./Pharo-1.1-scripting/Pharo-1.1-11411dev10.07.1.image-bash: /Applications/Squeak 4.2.5beta1U.app: is a directory…
Scripting the Image!
~$ open -a /Applications/Squeak\ 4.2.5beta1U.app/ –args
./Pharo-1.1-11411dev10.07.1.image /Users/sean/Squeak/SpdImageSetup.st testArgument
~$ “/Applications/Squeak 4.2.5beta1U.app/Contents/MacOS/Squeak VM Opt” ./Pharo-1.1-11411dev10.07.1.image /Users/sean/Squeak/SpdImageSetup.st testArgument