AlexanderLabWHOI / EUKulele

Automatic eukaryotic taxonomic classification
MIT License
28 stars 7 forks source link

Fail to install with Conda #47

Open ZongzhiWu opened 2 years ago

ZongzhiWu commented 2 years ago

I try to install EUKulele as instructions of the [documentation] but failed. I got the following error: $ conda create -n EUKulele $ conda activate EUKulele $ conda install -c akrinos -c bioconda -c conda-forge EUKulele Collecting package metadata (current_repodata.json): done Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source. Collecting package metadata (repodata.json): done Solving environment: / Found conflicts! Looking for incompatible packages. This can take several minutes. Press CTRL-C to abort.
failed UnsatisfiableError: Note that strict channel priority may have removed packages required for satisfiability.

ZongzhiWu commented 2 years ago

Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source. Collecting package metadata (repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: / Found conflicts! Looking for incompatible packages. failed / -

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions Your installed version is: 2.17

Note that strict channel priority may have removed packages required for satisfiability.

akrinos commented 2 years ago

hi @ZongzhiWu ! Sorry, I need to get rid of references to -c akrinos in the documentation - could you try with just:

conda create -n EUKulele
conda activate EUKulele
conda install -c bioconda -c conda-forge EUKulele

Also, I do recommend setting up an environment with mamba instead for installing EUKulele, as in -

conda create -n EUKulele -c conda-forge -c anaconda mamba
conda activate EUKulele
mamba install -c bioconda -c conda-forge EUKulele
alephreish commented 1 year ago

As mentioned in a different thread, I'm having trouble with installation via conda/mamba as well. @akrinos could you pls check that mamba does manage to install eukulele with strict channel priority?

$ mamba --version
mamba 1.2.0
conda 22.11.1
$ conda config --show channel_priority
channel_priority: strict
$ cat envs/eukulele.yaml 
channels:
 - conda-forge
 - bioconda
dependencies:
 - eukulele=2.0.5
$ mamba env create -p euk_env -f envs/eukulele.yaml 
...
Looking for: ['eukulele=2.0.5']
Could not solve for environment specs
Encountered problems while solving:
  - package eukulele-2.0.5-pyh723bec7_0 requires wget 1.21.3, but none of the providers can be installed
The environment can't be solved, aborting the operation
$ conda config --set channel_priority flexible
$ mamba env create -p euk_env -f envs/eukulele.yaml
...
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate /path/to/euk_env
#
# To deactivate an active environment, use
#
#     $ conda deactivate
akrinos commented 1 year ago

Hi @alephreish - so in your example it's that it only installs with flexible priority? 2.0.5 is only a couple of weeks old, so I will test downloading it, possible that the package versions need to be updated

alephreish commented 1 year ago

Hi @akrinos , I can confirm that versions 2.0.1, 2.0.2 and 2.0.3 install fine with channel_priority: strict, while 2.0.5 installs only with channel_priority: flexible. I think this essentially fixes my problem (integrating EUKulele in a Snakemake workflow), I'll just stick to version 2.0.3.

akrinos commented 1 year ago

Hi @alephreish - still not sure exactly what's going on here for you, as EUKulele doesn't have a restriction on wget. It's possible to remove that dependency, but for now I can't reproduce the issue. About to push EUKulele 2.0.6 so maybe you can test that one :)