This is a test version of Biostars. For the public version, visit https://www.biostars.org.
jellyfish installed in conda, but 'command not found' when I try to run it

I'm fairly new to this, and have been following the tutorial in the Biostar handbook. I've gotten to the section on k-mers, which is actually very relevant to what I want to do (count CAG units in some amplicon data), but I'm having trouble getting jellyfish to work.

https://www.biostarhandbook.com/sequence-kmers.html

It's showing as installed in my 'bioinfo' conda environment

> micromamba list
jellyfish                  1.0.3         py310h0e083fb_0        conda-forge

However, when I try to call it I get an error:

$ micromamba activate bioinfo
$ jellyfish count -C -m 10 -s10M KU182908.fa 
-bash: jellyfish: command not found

What's going on?

(PS yes I have activated the environment)

jellyfish conda

maybe simple question, have you activated the enviroment first?

What is the output of which jellyfish and which micromamba?

Would also be useful to know the various conda environment variables

$ which jellyfish
(bioinfo) 

$ which micromamba
/Users/michaelflower/bin/micromamba
(bioinfo) 

It seems there's no filepath for the jellyfish binary.

You could try type jellyfish just to double check, but looks like it might need reinstalling. Was there an error message or similar during installation you could have missed?

Someone more familiar with conda envs might know better than me though

Thanks, I've tried removing and reinstalling jellyfish within the bioinfo environment. Still no joy

$ type jellyfish
-bash: type: jellyfish: not found
(bioinfo) 

Did you have a successfull installation? You probably need to look into the messages during installation, maybe there is an error related to some dependencies.

Yes seems fine:

Transaction starting
Linking jellyfish-1.0.3-py310h0e083fb_0

Transaction finished

To activate this environment, use:

    micromamba activate bioinfo

Or to execute a single command in this environment, use:

    micromamba run -n bioinfo mycommand

Don't you need the bioconda jellyfish? You currently have the conda-forge jellyfish.

Thanks but getting error messages with that:

warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
warning  libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY
error    libmamba Could not solve for environment specs
    The following package could not be installed
     jellyfish is not installable because it conflicts with any installable versions previously reported.
critical libmamba Could not solve for environment specs
(bioinfo) 

1 answer

You have to install the kmer-jellyfish package

 micromamba install kmer-jellyfish

Perfect that's sorted it thanks! Why does it need that version out of interest?

It's not a different version, its that jellyfish in conda is a completely different program to kmer-jellyfish:

From the conda webpage: jellyfish is "A library for doing approximate and phonetic matching of strings."

Log in to answer this question.