A package manager for the GAP computer algebra system, allowing easy installation and removal of packages from inside GAP.
Example invocations:
gap> InstallPackage("digraphs");
gap> InstallPackage("https://github.com/gap-packages/Semigroups.git");
gap> InstallPackage("https://github.com/gap-packages/design/releases/download/v1.8.2/design-1.8.2.tar.gz");
gap> RemovePackage("semigroups");
By default, verbose information about a command's progress is printed to the screen. To see less of this information, try using:
gap> SetInfoLevel(InfoPackageManager, 1);
For more information on the features of PackageManager, see the documentation at https://gap-packages.github.io/PackageManager/doc/chap1.html or enter GAP and call, for example,
gap> ?InstallPackage
It should be possible to install GAP from source, and install all required
packages, using nothing but GAP and PackageManager. The following instructions
attempt to install GAP in your home directory ~, with the package manager in a
~/.gap/pkg directory. This should work on a Debian/Ubuntu machine, but might
need some alterations on a Mac.
First, make sure you've got the required dependencies for GAP installed on your computer. On a Debian/Ubuntu machine you can get the required software using:
sudo apt install autoconf build-essential curl git graphviz libtool libgmp-dev texlive-fullOn a Mac, you can get the required software by installing Homebrew, and running:
brew install git autoconf automake curl GMP graphviz libtoolNow, to install GAP and PackageManager, open a terminal window and enter the following, choosing either the SSH or HTTPS git links:
cd ~
git clone https://github.com/gap-system/gap # or git@github.com:gap-system/gap.git if you prefer ssh links
cd gap
./autogen.sh
./configure
make
cd ..
mkdir .gap
cd .gap
mkdir pkg
cd pkg
git clone https://github.com/gap-packages/PackageManager # or git@github.com:gap-packages/PackageManager.git if you prefer ssh links
cd ~/gap
./gap --bareIn the GAP window that opens, enter the following:
LoadPackage("PackageManager");
InstallRequiredPackages();
quit;Now compile the documentation using:
make docYou should now be able to load GAP with ./gap and everything should work
normally. Further required packages can be installed with InstallPackage when
you need them.
Please cite this package using the following format, filling in the numbers:
[YouXX] M. Young and the GAP team, PackageManager (GAP package), Easily download and install GAP packages, Version X.Y.Z (20XX), https://github.com/gap-packages/PackageManager.
|
|
PackageManager was partly created with funding from the OpenDreamKit project: https://opendreamkit.org |
|
|
This infrastructure is part of a project that has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No 676541. |