MCConfigurations quick how-to

Cees De Groot cdegroot at gmail.com
Wed Nov 23 16:40:21 UTC 2005


Hi,

We've switched to MCC, thought that I'd write a quick how-to. MCC is
simple, but the UI isn't (yet) intuitive. I found this out by
trial-and-error, it works for me, but it's hardly authoritative:

I loaded from http://www.squeaksource.com/ToolBuilder
ToolBuilder-Kernel-ar.14
ToolBuilder-Specs-ar.1
ToolBuilder-Morphic-ar.17
and from http://source.impara.de/mc
Monticello-bf.271
MonticelloConfigurations-bf.34

I have a config map for that, but that's a bootstrapping problem ;).
This will also give you some nice updates in Monticello, especially a
creative use of fonts for package state - recommended in any case.

Now, the first configuration - open a Monticello Configurations
browser from the world menu. The empty browser has three panes:
- packages
- repositories
- selected package info.

Add the repository/repositories you want the config map to check by
rightclicking in the middle pane. Add the packages in the top pane, in
the correct load order. Store the configuration. Done. You can now
load, for eternity, exactly this configuration :).

To load an existing configuration, open the repository containing it,
navigate to the configuration, and select Browse - this will open the
MCConfiguration browser again.

To install this configuration into memory, there's the load button.
You can load, merge or upgrade - I can understand what the first two
do, I haven't checked the third option.

To bring an older configuration up-to-date, use the Update button. If
you update from image, the configuration will be updated to reflect
what is in the image; if you update from the repositories, the
repositories will be scanned and the latest versions will be set in
the configuration.

Workflow suggestion:
- In the morning, open the configuration and "update from
repositories", "install". This'll give you everything your colleagues
checked in last night while doing overtime (while you were at the pub
with that girl from HR, remember?);
- Just commit single MC versions, like always.
- In the evening, just leave.
- When building a release, when you have all the components in memory,
"update from image", "store". Choose an appropriate name and you'll
always be able to find that particular version back if a customer
needs support.

The idea is that you don't normally need to store config maps all the
time - usually, if everybody integrates all the time, you can just
grab any old map and do an update from repositories to bring it
up-to-date dynamically before installing it. I think this works better
than saving config maps all the time, it clutters the various browsers
and adds little value. If people branch for extended periods, let them
use their own MC repository so your config map won't pick up this
unintegrated stuff.

Short, but it should get you going. MCC is too nice to be left by the wayside ;)

Hth,

Cees



More information about the Squeak-dev mailing list