[Vm-dev] Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Henrik Sperre Johansen henrik.s.johansen at veloxit.no
Sat Feb 6 00:03:46 UTC 2010

On 06.02.2010 00:40, Andreas Raab wrote:
> Henrik Sperre Johansen wrote:
>> On 06.02.2010 00:18, Andreas Raab wrote:
>>> What I was saying to David, not to you, is that we need to make sure 
>>> that we don't introduce any undue dependencies on Metacello. Given 
>>> the dependencies of Metacello itself I think there is an actual risk 
>>> of that happening and I simply wanted to remind David that it's 
>>> important for us to make sure VMMaker doesn't require Metacello.
>> Right. Try loading ConfigurationOfVMMaker though (no dependencies!) 
>> and you'll see what it really is.
>> A declarative way to define the packages (and their versions) which 
>> need to be loaded to build a VMMaker image.
>> You can do it manually without loading the tools used for automatic 
>> loading, or just unload the tools (gofer, metacello, 
>> configurationofxxx) after the functionality is actually loaded.
>> I see it as improbable to make VMMaker depend on Metacello to work, 
>> as it currently is make it depend on .mcm's to work.
>> If there's an obvious point I'm missing, please enlighten me, as I'm 
>> sure David is not the only one interested in what such undue 
>> dependencies on Metacello would actually entail.
> If there are none, that's great. However, the last time I loaded some 
> Metacello stuff (which is a couple of weeks ago) it pulled in all 
> sorts of things including OmniBrowser and left some modification in 
> other packages. If that has been fixed since, all the better.
> Cheers,
>   - Andreas
If OmniBrowser is defined as a prerequisite for what you are trying to 
load with Metacello, then yes, it will pull that in.
If a squeak-specific
If you try to load Metacello with ConfigurationOfMetacello, it will load 
Gofer, which is the Installer-equivalent package it uses to load packages.
If any of the prereqs include extension methods/overrides, then yes, you 
will have dirty packages afterwards, for the same reason you would get 
that when loading the package from Monticello manually.

I think I see your point now though, no external packages only part of a 
ConfigurationOfMetacello should be required for VMMaker to work/alter 
the default behaviour of VMMaker in a way which is required for it to work.
To this I agree fully, please note this is already the situation with 
the -Pools packages though, if you want to build all VMMaker-included 
plugins properly.


PS. If you have loaded the ConfigurationOfVMMaker, you might want to 
look at the grouping feature. While the default is to load all plugins, 
it's easy (well, with the Metacello tools installed ;) ) to load just a 
core install, or a selection of the  plugins you like as well.

More information about the Vm-dev mailing list