Last updated at 10:24 pm UTC on 2 October 2018
SqueakMap is a tool used by the Squeak community to reliably install or publish, programs and media. It keeps track of software applications, documentation, demos and videos – all for Squeak.
It includes a client in the image and a server: http://map.squeak.org. It is a catalog which contains load scripts to do installations for a particular release.
After its introduction SqueakMap has become the standard way to register and make applications available for Squeak users.
Quick Start for those new to Squeak
The easiest way to use SqueakMap:
- Left-click on the desktop
- Select "open..." from the World menu – a submenu is displayed.
- Select "SqueakMap Catalog" from the submenu.
The tool opens with a list of the catalog for the current-running version of Squeak. These are the packages that have been tested to work with the version of Squeak currently running. To install something expand the package, select a particular release and choose "install" in the context menu.
In 2011, SqueakMap started to be used according to new guidlines designed to keep the catalog relevant and useful.
By default, only the packages which have been tested to work with that image appear in the list. Every Release cataloged by SqueakMap is designated to work with a particular version of the Squeak image.
SqueakMap is also "compatible" with every SCM tool and always will be. That's because it's just a "catalog of install scripts". However, it can also store SAR files for projects that requires external resources like videos, graphics or sound files.
Client side object model
SqueakMap object model
The engine powering SqueakMap on the server is implemented with HttpView2.
With Squeak 4.2, the SqueakMap Catalog opens without the rot showing. Whenever a new version of Squeak is released, all of the packages that were visible in the list in the prior version no longer appear in the new version. This is because the SqueakMap process requires authors to re-designate their applications as working in the new Squeak release. This is an easy thing to do, and so if it is not done then, by definition, that software has not received sufficient love from its owner to be considered "supported" in the new version of Squeak.
This is important because it allows each Squeak release to present its list of only the good stuff – the software that has been tested and is ready to go to work.
About Package Releases
Each SqueakMap Package can have multiple Releases. Because most releases are fixed-configurations that have been tested to work with a particular production-release of Squeak, they have longevity – they can be assured to maintain their current quality-level with that version of Squeak forever.
Everything required to run the selected package installs with "one-click," including all prerequisite packages. This is for folks who just want to use an application with the minimum effort.
Loading the latest code
Developers and enthusiasts often like to keep up with the latest versions of code-packages. At the authors discretion, each package may have a special release named "head". This is the release that updates your image with the latest code packages in a process similar to the trunk-update process. This is smart-loading for developers because the packages being installed are actually merged.
- If its the same version, nothing will be done.
- If its an earlier version, it will be upgraded to support the package being loaded.
- If its a branched version, it will be merged with the code of the package that is being installed. If there are any merge-conflicts they will be presented, as they should be.
The head version represents on-going development, and is never guaranteed to work, so it is intended for developers and daring users. However, most developers at least unit-test their code before publishing it.
Typically, once a package is installed, it is cached locally on the users hard-drive so that it can be easily installed again without needing to access the SqueakMap server.
If you want to learn how to make packages and put them on SqueakMap, see FAQ: Squeak Packages.
Links to SqueakMap
In text, SqueakMap is often abbreviated as "SM". SM lets you do these things (and much more):
- Install other people's published Squeak packages into your image using a single mouse click.
- Upgrade your installed packages using a single mouse click.
- Publish your own packages in SqueakMap making them immediately available for all to use.
...about SqueakMap on this Swiki. Feel free to hook in any page you find that somehow has to do with SqueakMap. This is so that we more easily can keep these up to date.
changed here May 2011 (Nov 2005: Göran Krampeannouncedthat the links above will change soon.)
- http://swiki.krampe.se/gohu/11, the current homepage for "SqueakMap". This is Göran's own readonly swiki where he sometimes puts information that he doesn't want to clutter this Swiki with.
- This URL is gone-http://modules.squeakfoundation.org/People/gk, Göran's Monticello repository where the latest code is always accessible. There are NO guarantees about the snapshots available there - it should only be used if you want to help developing SqueakMap, always use the releases of SqueakMap2 base and the loader that are available through SqueakMap itself!
If you notice that the SqueakMap athttp://map.squeak.org/is down then send email tomailto:email@example.com.
How to change a package on SqueakMap to 'community supported'