[squeak-dev] How do I create SqueakMap package for loading an MCConfiguration?

Chris Muller asqueaker at gmail.com
Tue Jan 13 17:36:00 UTC 2015


The desirable properties of a SqueakMap-based configuration are:

  - Load the application if it isn't already loaded, including any
required dependencies first, as necessary.
  - Update the package to the latest version if older version(s) are
already loaded in the image.
  - Don't lose any local changes I may have made when updating the package.
  - Load exact versions for production released versions of Squeak
  - Load the latest code for the current trunk version of Squeak

Take a look at a working example; say, the "Ma client server" package,
which meets all of the above requirements with a simple script.  It
depends on OSProcess but loads that automatically if you don't already
have it.  The "1.6" version is designated for Squeak 4.4 while "head"
version loads the currently latest code using McmUpdater, the same
process we use for trunk.

Here is some documentation:

  http://wiki.squeak.org/squeak/779
  http://wiki.squeak.org/squeak/6181
  http://wiki.squeak.org/squeak/2726

HTH

On Tue, Jan 13, 2015 at 11:08 AM, Trygve Reenskaug <trygver at ifi.uio.no> wrote:
> I want to configure BabyIDE with a number of examples into a package that
> interested Squeakers can install with a minimum of fuss. I chose
> MonticelloConfigurations because it looked much simpler than Metacello.
> Being utterly confused after reading code, the documentation I could find.
> Also trying what I could guess at.
>
> The configuration is at
>     http://www.squeaksource.com/DCI/BBAllInOne-TRee.1.mcz
> and at
>     http://www.squeaksource.com/DCI/BBAllInOne-TRee.18.mcm
>
> I have defined a SqueakMap package 'BabyIdeAllInOne' with 3 versions for
> loading the configuration. None of them work:
> I open a fresh image and use the SqueakMap Package Loader to load
> BabyIdeAllInOne 1.2. I get an error
> 'No package release found with version TRee.1'
> -----
> The question appears to be:
> Where did SMSqueakMap look when it didn't find a release?
> I have tried these scripts (among many):
>      SMSqueakMap default installPackageNamed: 'BBallInOne' version: 'TRee.1'
> and
>      SMSqueakMap default installPackageNamed: 'BBallInOne' version:
> 'TRee.18'
>
> May be I shouldn't have used a script at all, but relied on some unknown
> convention?
>
> I'm completely lost and badly need help.
> --Trygve
>


More information about the Squeak-dev mailing list