LCR-BCCRC / lcr-modules

Collection of standard analytical pipelines for genomic and transcriptomic data
https://lcr-modules.rtfd.io
MIT License
15 stars 7 forks source link

Conda environment reproducibility #329

Open lkhilton opened 1 week ago

lkhilton commented 1 week ago

I've had a lot of trouble installing conda environments from LCR-modules recently. Many of the environment yaml files seem to contain packages that are no longer available or now conflict with other specified packages. I'm not sure exactly how this happens, but there are a couple of things that we could to try to implement:

  1. We need to stop using the Anaconda defaults channel. I just learned that it is not compatible with conda-forge. In addition, Anaconda has started demanding payment from non-profit organizations who are perceived to be using their code. If we stick to conda-forge and bioconda, and even specify nodefaults in the channels, we can hopefully continue to avoid them.
  2. We probably need to investigate using flags like --from-history when exporting conda environments. This will export only the packages and versions that are specifically requested on installation. All dependencies will be installed based on the requirements of the specified packages at the time of installation. This probably also gives more flexibility for different operating systems.