Where the Package Data is Stored

While technically there's no reason to know this, it is a little helpful to see a bit of the implementation. So here is how the information about your playpen and project packages are stored. For a lot more information, see Chapter 6.

There are two lists of packages maintained in the Wigwam tree.

ext/etc/installed-packages

the packages (and their versions) that are installed in this Wigwam playpen.

etc/project-packages

the packages (and their versions) that are supposed to be installed to use this project.

For each package archive, there is a list of packages available from that archive and information about the layout of the archive. ARCHIVE-NAME is the url with / converted to the underscore (_) character.

ext/package-archives/ARCHIVE-NAME/package_list

A list of all packages and their version numbers from the package archive.

ext/package-archives/ARCHIVE-NAME/style

The arrangement of the files in the package archive. This is mostly for compatibility; usually it is just set to deep.

Packages and their associated configuration and build files will be downloaded to ext/packages. Therefore, you should use packages to contain local overrides for the configuration.

You can use the update-packages command to synchronize the playpen's packages with the project's package list. It will only recompile packages that have changed.