Search code examples
pythonrcondasnakemakemamba

snakemake-workflows / rna-seq-star-deseq2: Could not create conda environment


I'm trying to run the following snakemake workflow: https://github.com/snakemake-workflows/rna-seq-star-deseq2 . I tried different virtual environments to run this workflow in which I installed the latest snakemake (v7.19.1) and latest mamba (v1.1.0), however I get the error below. I've also tried a different virtual environment using the snakemake version that was present at the last time of this workflow update on August 2021, namely snakemake (v6.7.0) with again the latest mamba (v1.1.0), but I still get the same error below.

I used the following code: snakemake --cores all --use-conda

and get the following error:

Building DAG of jobs...
Creating conda environment workflow/envs/pandas.yaml...
Downloading and installing remote packages.
Environment for workflow/envs/pandas.yaml created (location: .snakemake/conda/e0a50d7235a9332b573ce8090931af98)
Creating conda environment workflow/envs/rseqc.yaml...
Downloading and installing remote packages.
Environment for workflow/envs/rseqc.yaml created (location: .snakemake/conda/e48233de77aab8c87a948f4b39ef2037)
Creating conda environment workflow/envs/biomart.yaml...
Downloading and installing remote packages.
CreateCondaEnvironmentException:
Could not create conda environment from /DATA/m.venkatesan/rna-seq-star-deseq2/workflow/rules/../envs/biomart.yaml:
Could not solve for environment specs
Encountered problems while solving:
  - package r-tidyverse-1.3.1-r36hc72bb7e_0 requires r-dplyr >=1.0.5, but none of the providers can be installed
  - nothing provides r-base 3.2.0* needed by r-stringr-1.0.0-r3.2.0_0

The environment can't be solved, aborting the operation

The other conda environments in this snakemake workflow initialize without a problem, however it's getting stuck with creating conda environment "workflow/envs/deseq2.yaml":

channels:
  - conda-forge
  - bioconda
dependencies:
  - bioconductor-deseq2 =1.30.0
  - r-ashr =2.2_47

Does anyone have any advice on how to solve this?


Solution

  • I can recreate this issue only under the condition that channel_priority: strict is set. However, everything solves without issue with channel_priority: flexible, for both osx-64 and linux-64. Try setting:

    conda config --set channel_priority flexible
    

    Unfortunately, the error reporting is not helpful here and seems to incorrectly identify the issue.