Bill Schwab wrote: > It makes a lot of sense to use MC, universes, etc. rather than re-write > them; no argument there. Would it help to roll ScriptLoader into > Installer? Installer works for all commonly used Squeak images, so you would need a ScriptLoader for each image that people are using.
Coincidentally that is almost exactly the way Sake/Packages already works, except that it is aware of dependencies and can sort a list of items that it is asked to load in order to honour dependencies. The functions that ScriptLoader performs should really be rolled into the Packages-Library class PacakgesPharo01, for Sake/Packages which is a repository of "scripts" for loading things (most definitions simply supply a url rather than a script). Installer should be loaded using one of the maintained bootstrap methods, rather than via ScriptLoader. i.e LevelPlayingField. However if you dont want to do that the maintained bootstrap for installer only is: HTTPSocket httpFileIn: 'installer.pbwiki.com/f/Installer.st'. followed by Installer upgrade. Once you have Installer loaded, it can access squeakmap using the web interface, so it doesnt actually need SqueakMap to be loaded to begin bootstrapping other things e.g. Installer websqueakmap install: 'Whatever'. Finally you can put your scripts on a web page somewhere, or use installer.pbwiki.com to provide a simple script that works like so: Installer install: 'SomeScript'. > problem is complex, so must be the solution, but I think it would help > to have a single entry point even if it is merely a facade. > The single entry point for Installer is supposed to be LevelPlayingField, which ensures that Installer has everything it needs to load from Monticello repositories, mantis, urls, and websqueakmap. Followed by Sake/Packages which knows about everything else. (which is very easy to remove once you are done building). Keith _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
