Skip to content

Installing

TACT requires Python 3. When possible, I recommend using the PyPy 3 implementation as it can significantly speed up TACT analyses, particularly on large datasets. In addition, TACT depends on the click, DendroPy, NumPy, and SciPy packages.

Docker

If you can use Docker, this is the recommended method as it is both convenient to install and fast for large datasets thanks to PyPy. Note that Docker images are only provided for x86_64 processors (amd64). Docker images are not automatically built for ARM processors and must either be built manually, or consider installing TACT with one of the other options below.

Install Docker Desktop and run the following to download the TACT image:

docker pull jonchang/tact:latest

Then, run TACT from the container image, giving it access to your current working directory:

mkdir -p examples
cd examples
curl -LO https://raw.githubusercontent.com/jonchang/tact/HEAD/examples/Carangaria.csv
curl -LO https://raw.githubusercontent.com/jonchang/tact/HEAD/examples/Carangaria.tre
docker run -it -v "$(pwd)":/workdir -w /workdir jonchang/tact tact_build_taxonomic_tree Carangaria.csv --output Carangaria.taxonomy.tre
docker run -it -v "$(pwd)":/workdir -w /workdir jonchang/tact tact_add_taxa --backbone Carangaria.tre --taxonomy Carangaria.taxonomy.tre --output Carangaria.tacted

Here's a screencast of how to use the Docker commands:

The above Docker image defaults to the latest tagged release. In the rare case you need to use a different version, a full list of tags is available on Docker Hub.

pipx

Install pipx, then run:

pipx install tact

If you have PyPy3 installed, you can try to install a faster version using:

pipx install --python pypy3 tact

Note that this will take much longer to install and could fail if the proper dependencies (mainly openblas) aren't set up.

On macOS, you'll need to run brew install openblas gcc pypy3 pipx. You may also need to set certain environment variables:

  • PKG_CONFIG_PATH: this should be where openblas.pc lives (e.g., /opt/homebrew/opt/openblas/lib/pkgconfig)
  • MACOSX_DEPLOYMENT_TARGET: this should be your macOS version (e.g., 11.0)

Other

Other ways of installing TACT, including unpacking the tarball somewhere or directly using pip, are neither supported nor recommended.