funannotate

About

This page provides instructions for installing funannotate.

The instructions below will install funannotate in a conda environment. Because the entire funannotate installation (including databases) takes a significant amount disk space, it is best not use the home directory.

If you notice any issues, please let us know.

ALICE

The instructions below assume that you have already used and setup Miniconda on ALICE. You can run the instructions on the login nodes outside of a slurm job.

Because of the disk space required by funannotate, in particular for the databases, we will install it on scratch-shared.

Before you start:

Instructions

  1. Let’s create a directory for funannotate in your user directory on scratch-shared first. The path here is just an example, adjust as needed.

    mkdir /data1/$USER/funannotate

     

  2. Create the conda environment for funannotate in your user directory on scratch-shared. Note that we will note install funannotate right away because we noticed issues with resolving the dependencies:

    conda create --prefix=/data1/$USER/funannotate/funannotate_env "python>=3.6,<3.9"

    Here, we specified the full path to the environment and activating it will require you to do this every time. Alternatively, you can also move your default location for for environments to your user directory to scratch-shared: see

     

  3. Activate the new environment, install mamba to fix the issue with resolving dependencies and then install funannotate

    conda activate /data1/$USER/funannotate/funannotate_env # your prompt should have changed showing the activated environment in brackets # now, we can install mamba conda install mamba # next, we install funannotate mamba install funannotate

     

  4. After the installation has finished, you can keep the environment activated and continue with setting up the databases. First, we create a directory for the databases:

     

  5. Set the environment variable for the location of the database $FUNANNOTATE_DB. Note that the instructions suggest to run the database setup before setting the environment variable. However, we had issues with this so, we will set the environment variables first. For this, you will need the full path to the installation directory of funannotate in your environment:

     

  6. Next, deactivate and activate the conda environment, to make sure that the database location settings are working properly:

     

  7. Run the command to setup the database

     

  8. Create a yml file from the environment which can be used to recreate it later on. This step is optional but recommended for reproducibility and as a backup of the environment. The yml file can be stored in your home directory, but it should also be copied to external storage for backup or uploaded for example to a gitlab repo:

SHARK

For SHARK, you can basically follow the same steps as for ALICE, adjusting of course the location for the conda environment. Again, it is also not recommended to use your home directory, but an export directory to which you have access to.