A Wigwam package archive is itself a Wigwam project.
Eventually you will want to create an empty package archive where you can install new packages or new versions of packages which aren't yet in the standard archive. To do this, follow the same steps you would perform when creating a new project, only invoke wigwam-bootstrap as follows:
wigwam-bootstrap --new-package-archive \
--project=my-package-archive \
--package-archive=ORIG-ARCHIVE
cd my-package-archive
./autogen.sh
source ./setup-env
packagectl project build |
The packagectl project build command will create necessary files in the public directory, even if you haven't yet added any packages to the public directory. Whenever you add packages to the public directory, you'll need to run packagectl project build to make them visible to projects which use this package archive.
You should update etc/package-archive in projects where you want to use this new archive. Just include a reference to the my-package-archive/public/ directory as well as listing any other package archives you wish to use.
Because most of the bulk of a Wigwam package archive is from the upstream packages, only locally developed packages and any files describing dependencies, compilation options, etc. are checked in to the the CVS repository.
You might want to create and maintain a local copy of the full package archive so that you have complete control, history, and backup of the packages your projects need.
Alternately, you may want your own copy of the archive if you find that your connectivity to the original package archive is slow or unreliable.
Finally, you might make use of a copy of the standard package archive when you are trying to upgrade versions of packages which are already present in the archive.
To build a local copy of the complete standard Wigwam package archive, check out the project and start by performing the steps you'd perform for any wigwam project:
cvs -d:pserver:anonymous@cvs.wigwam.sourceforge.net:/cvsroot/wigwam checkout wigwam-package-archive
cd wigwam-package-archive
./autogen.sh
source ./setup-env
packagectl project build |
![]() | The project build command will download all the upstream packages for you and generate md5sums for them, and will generate the package_list and other support files necessary for the archive. Warning! This will take a long time and uses a lot of disk space. |
After doing this, the complete package archive will be in $PLAYPEN_ROOT/public.
For example, if php 4.0.4 were released and the package archive already contained a package php-4.0.2-2, you could create the files necessary to include 4.0.4 in your new package archive by doing:
cheesy-upgrade php 4.0.2 2 4.0.4 |