Installation#

Note

Wheels are provided for Linux and OSX x86-64, but other machines will have to build the wheel from the source distribution. Building pyfastani involves compiling fastANI, which requires a C++ compiler to be available on the local machine.

PyPi#

pyfastani is hosted on GitHub, but the easiest way to install it is to download the latest release from its PyPi repository. It will install all dependencies then install pyfastani either from a wheel if one is available, or from source after compiling the Cython code :

$ pip install --user pyfastani

Conda#

pyfastani is also available as a recipe in the bioconda channel. To install, simply use the conda installer:

$ conda install -c bioconda pyfastani

Arch User Repository#

A package recipe for Arch Linux can be found in the Arch User Repository under the name python-pyfastani. It will always match the latest release from PyPI.

Steps to install on ArchLinux depend on your AUR helper (yaourt, aura, yay, etc.). For aura, you’ll need to run:

$ aura -A python-pyfastani

BioArchLinux#

The BioArchLinux project provides pre-compiled packages based on the AUR recipe. Add the BioArchLinux package repository to /etc/pacman.conf:

[bioarchlinux]
Server = https://repo.bioarchlinux.org/$arch

Then install the latest version of the package and its dependencies with pacman:

$ pacman -S python-pyfastani

Piwheels#

PyFastANI works on Raspberry Pi platforms (with NEON vectorization enabled!), and pre-built wheels are made available for armv7l platforms. Run the following command to install them instead of compiling from source:

$ pip3 install pyfastani --extra-index-url https://www.piwheels.org/simple

Check the piwheels documentation for more information.

GitHub + pip#

If, for any reason, you prefer to download the library from GitHub, you can clone the repository and install the repository by running (with the admin rights):

$ git clone --recursive https://github.com/althonos/pyfastani
$ pip install --user ./pyfastani

Caution

Keep in mind this will install always try to install the latest commit, which may not even build, so consider using a versioned release instead.