nedialkova-lab / mim-tRNAseq

Modification-induced misincorporation tRNA sequencing
GNU General Public License v3.0
20 stars 14 forks source link

Dockerized mim-tRNAseq #40

Closed joegeorgeson closed 1 year ago

joegeorgeson commented 1 year ago

Dear mim-tRNAseq,

Any chance you've created a docker for this? if not, can you consider making one?

Thanks!

drewjbeh commented 1 year ago

Hi there,

Unfortunately there is no docker image for mim-tRNAseq yet. At the moment, we do not see a need for one either as installation using conda/bioconda has sufficed for most users. Please feel free to generate one if you think the benefits are worth it. This should be fairly straightforward to build from the GitHub repository and using dependencies already specified for bioconda

joegeorgeson commented 1 year ago

Hi there, thanks for the reply. I was eventually able to get mim-tRNAseq working but it took a combination of building your conda as specified along with sourcing programs via modules (as specified below)...this in on CentOS. The pip installation had similar issues.

ml HTSlib/1.12-GCC-10.2.0 samtools/1.9 ncbi-blast+ infernal bedtools/2.26.0 gmap/2019-02-26

edit I have tried to install from the yml you point me to but get the below (truncated) error. I guess the full report should be sent to you. I tried two separate kernels...

     active environment : None
            shell level : 0
       user config file : ~/.condarc
 populated config files : ~/.condarc
          conda version : 22.11.1
    conda-build version : not installed
         python version : 3.9.15.final.0
       virtual packages : __archspec=1=x86_64
                          __glibc=2.17=0
                          __linux=3.10.0=0
                          __unix=0=0
       base environment : /apps/RH7U2/gnu/miniconda/22.11.1_environmentally  (read only)
      conda av data dir : /apps/RH7U2/gnu/miniconda/22.11.1_environmentally/etc/conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/bioconda/linux-64
                          https://conda.anaconda.org/bioconda/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /apps/RH7U2/gnu/miniconda/22.11.1_environmentally/pkgs
                          ~/.conda/pkgs
       envs directories : ~/.conda/envs
                          /apps/RH7U2/gnu/miniconda/22.11.1_environmentally/envs
               platform : linux-64
             user-agent : conda/22.11.1 requests/2.28.1 CPython/3.9.15 Linux/3.10.0-514.el7.x86_64 centos/7.9.2009 glibc/2.17
                UID:GID : 49336:10567
             netrc file : None
           offline mode : False

An unexpected error has occurred. Conda has prepared the above report.

If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers? [y/N]: y
Upload successful.
drewjbeh commented 1 year ago

Hi there,

I will not get the report as I do not work for conda. I guess they will get this, but I'm not sure how much use it will be. Please note that I sent you a link to the yaml in case you needed it for preparing a docker container as it lists all the dependencies and required versions. I don't think the yaml is intended to be used in this way. If you install mimseq using conda (conda install -c bioconda mimseq) this is the yaml that gets used. I'm not entirely sure exactly what the issue is - other users have successfully used conda/mamba to install mimseq in an environment with all dependencies. Does this not work for you?

joegeorgeson commented 1 year ago

Hi there, thanks for your guidance. So I did previously build an environment where this worked with the addition of the aforementioned modules, but now for testing neither installation method (mamba nor bioconda) works for me. Does this work for you? Same behaviour on MacOS and CentOS. My conda channels are defined as recommended by bioconda

mamba fails with the below;

(mimseq) $ which mamba
/Users/opt/anaconda3/envs/mimseq/bin/mamba
(mimseq) $ mamba install -c bioconda mimseq
Traceback (most recent call last):
  File "/Users/opt/anaconda3/envs/mimseq/bin/mamba", line 7, in <module>
    from mamba.mamba import main
  File "/Users/opt/anaconda3/envs/mimseq/lib/python3.7/site-packages/mamba/mamba.py", line 53, in <module>
    from mamba.utils import get_index, to_package_record_from_subjson, _supplement_index_with_system
  File "/Users/opt/anaconda3/envs/mimseq/lib/python3.7/site-packages/mamba/utils.py", line 7, in <module>
    from .FastSubdirData import FastSubdirData
  File "/Users/opt/anaconda3/envs/mimseq/lib/python3.7/site-packages/mamba/FastSubdirData.py", line 23, in <module>
    from conda._vendor.auxlib.ish import dals
ModuleNotFoundError: No module named 'conda._vendor.auxlib'

and bioconda just hangs on 'Solving environment' and eventually times out;

$ conda create --name mimseq -c bioconda mimseq
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: /
drewjbeh commented 1 year ago

The timeout with conda is "normal" - this is why we implemented the mamba workaround. Many people have issues solving environments with complex dependencies. The mamba problem I have never seen and does not seem related to mimseq. A quick Google is always a good place to start - seems to be some useful help here: https://github.com/mamba-org/mamba/issues/1583

joegeorgeson commented 1 year ago

Can you export your mimseq conda to a yaml and copy here so I can try to install with conda env create -f your_mimseq.yml ?

drewjbeh commented 1 year ago

Did you try updating conda-build and mamba in the environment as proposed in the link I sent?

joegeorgeson commented 1 year ago

Yes, anyway it seems that when the conda installer doesn't time out there are some conflicts returned (on macOS);

$ conda create --name mimseq -c bioconda mimseq
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.
.
.
.
UnsatisfiableError: The following specifications were found to be incompatible with your system:

  - feature:/osx-64::__osx==10.15.7=0
  - mimseq -> matplotlib-base[version='>=3.4.2'] -> __osx[version='>=10.11|>=10.12']
Your installed version is: 10.15.7
drewjbeh commented 1 year ago

It seems from the above you're not following the instructions we have detailed for creating the environment and installing the package in the readme for this repo and the documentation linked to it. Versions of python and other packages installed are important for the functioning of the package and it's proper and successful installation. Please follow the instructions, in this case there are definitely no package conflicts, as evidenced by many others successfully using mimseq. The whole point of a bioconda curated package is to ensure that these conflicts are solved.

joegeorgeson commented 1 year ago

I've done exactly as specified...thanks anyways.