Skip to content
Snippets Groups Projects

Aphid

This is a C implementation of the "Aphid" method, following its specifications within Nicolas Galtier's draft paper Phylogenetic conflicts: distinguishing gene flow from incomplete lineage sorting (2023), and the original C code.

Build instructions

With Apptainer/Singularity

Aphid can be run from an apptainer provided you have Apptainer (aka. Singularity) installed.

First, build the container image as root:

# Get definition file.
curl -L \
  https://gitlab.mbb.univ-montp2.fr/ibonnici/aphid/-/jobs/artifacts/main/raw/singularity.def?job=container-recipes \
  > aphid.def # (or download by hand)

# Build image.
sudo apptainer build aphid.sif aphid.def

Then run the container as regular user:

./aphid.sif <my_input_files>

With Docker

Aphid can be run from a docker container, provided you have Docker installed.

First, build the container image:

docker buildx build -t aphid \
  https://gitlab.mbb.univ-montp2.fr/ibonnici/aphid/-/jobs/artifacts/main/raw/Dockerfile?job=container-recipes

Then run the container:

docker run --rm -it -v ${PWD}:/home/aphid aphid <my_input_files>

Manual compilation

The program is still fairly easy to compile yet, provided you have git and gcc installed.

First clone and compile the project:

git clone --recursive https://gitlab.mbb.univ-montp2.fr/ibonnici/aphid/
cd aphid
gcc -lm aphid.*.c -o aphid

Then run the binary obtained:

./aphid <my_input_files>