franciscozorrilla / metaGEM

:gem: An easy-to-use workflow for generating context specific genome-scale metabolic models and predicting metabolic interactions within microbial communities directly from metagenomic data
https://franciscozorrilla.github.io/metaGEM/
MIT License
203 stars 42 forks source link

[Bug]: Metawrap Installation failure #154

Open Amit-H opened 10 months ago

Amit-H commented 10 months ago

Hello!

I am trying to install metaGEM using the instructions provided in https://github.com/franciscozorrilla/metaGEM/blob/master/config/README.md

I have managed to get everything installed up until section 3, metawrap.

When running conda create -n metawrap metawrap-mg, I get the following error: LibMambaUnsatisfiableError: Encountered problems while solving: -package metawrap-mg-1.3.0-hdfd78af_0 requires biopython 1.68.*, but none of the providers can be installed

I have then tried the alternative installation mamba env create --prefix ./envs/metawrap -f envs/metaWRAP_env.yml, and get: warning libmamba Problem type not implemented SOLVER_RULE_STRICT_REPO_PRIORITY

Could not solve for environment specs The following packages are incompatible ├─ metawrap-mg >=1.2.3 is not installable because there are no viable options │ ├─ metawrap-mg [1.2.3|1.3.0|1.3.1|1.3.2] would require │ │ └─ maxbin2 2.2.6. , which conflicts with any installable versions previously reported; │ └─ metawrap-mg 1.3.0 conflicts with any installable versions previously reported; └─ r-ggplot2 is not installable because there are no viable options ├─ r-ggplot2 2.2.1 would require │ └─ r-reshape2 but there are no viable options │ ├─ r-reshape2 [1.4.2|1.4.3|1.4.4] would require │ │ └─ r-stringr but there are no viable options │ │ ├─ r-stringr 1.1.0 would require │ │ │ └─ r 3.3.1 , which conflicts with any installable versions previously reported; │ │ ├─ r-stringr [1.0.0|1.1.0|...|1.5.1] conflicts with any installable versions previously reported; │ │ ├─ r-stringr 1.0.0 would require │ │ │ └─ r-base 3.2.1 , which does not exist (perhaps a missing channel); │ │ ├─ r-stringr 1.0.0 would require │ │ │ └─ r-base 3.2.0 , which does not exist (perhaps a missing channel); │ │ └─ r-stringr 1.0.0 would require │ │ └─ r-base 3.2.2 , which does not exist (perhaps a missing channel); │ ├─ r-reshape2 [1.4.1|1.4.2|1.4.3|1.4.4] conflicts with any installable versions previously reported; │ ├─ r-reshape2 1.4.1 would require │ │ └─ r-base 3.2.1 , which does not exist (perhaps a missing channel); │ ├─ r-reshape2 1.4.1 would require │ │ └─ r-base 3.2.0 , which does not exist (perhaps a missing channel); │ └─ r-reshape2 1.4.1 would require │ └─ r-base 3.2.2 , which does not exist (perhaps a missing channel); ├─ r-ggplot2 [2.0.0|2.1.0] would require │ └─ r 3.2.2 , which does not exist (perhaps a missing channel); ├─ r-ggplot2 [2.1.0|2.2.0] would require │ └─ r 3.3.1 , which conflicts with any installable versions previously reported; ├─ r-ggplot2 2.2.1 would require │ └─ r-base 3.3.1 , which requires │ └─ icu 54. , which does not exist (perhaps a missing channel); ├─ r-ggplot2 [2.1.0|2.2.0|...|3.4.4] conflicts with any installable versions previously reported; ├─ r-ggplot2 1.0.1 would require │ └─ r-base 3.2.1 , which does not exist (perhaps a missing channel); ├─ r-ggplot2 1.0.1 would require │ └─ r-base 3.2.0 , which does not exist (perhaps a missing channel); └─ r-ggplot2 1.0.1 would require └─ r-base 3.2.2* , which does not exist (perhaps a missing channel).

conda config --show channels gives me: channels:

Am I missing a particular channel? Any advice would be greatly appreciated, thank you!

franciscozorrilla commented 10 months ago

just double checking, are you installing this on a linux machine?

Amit-H commented 10 months ago

Yes, apologies for omitting that. I am attempting to install on a Linux HPC, with a LSF based queue manager.

franciscozorrilla commented 10 months ago

No problem and sorry for the trouble this is causing, I am looking into this issue. It doesnt seem like metawrap is being actively maintained these days, maybe this problem has to do with some of their dependencies. I will look into the possibility of dropping metawrap as a dependency and providing the bin_refine and bin_reassemble modules as scripts within metaGEM. Also FYI,metaGEM was designed for slurm clusters, so you might have to play around with the Snakefile and config files to submit jobs with LSF. Can you also check that the metawrap environment has python 2.7?

franciscozorrilla commented 7 months ago

Hey @Amit-H,

Did you manage to solve your issues? Check out some issues in the metawrap github repo, e.g. https://github.com/bxlab/metaWRAP/issues/490#issuecomment-1649434916 , https://github.com/bxlab/metaWRAP/issues/507 . This appears to be a common issue unfortunately ... Right now I am rushing to finish my phd projects + thesis, but hopefully after I can find some time to drop the problematic metaWRAP dependency by forking/copying over some of their scripts into the metaGEM codebase, but this will require some time and testing.

marlaux commented 5 months ago

The following command solved this issue for me: 'conda config --set channel_priority flexible'