bcbio / bcbio-nextgen

Validated, scalable, community developed variant calling, RNA-seq and small RNA analysis
https://bcbio-nextgen.readthedocs.io
MIT License
993 stars 354 forks source link

Installation fails with Mamba error: Nothing provides libsodium >=0.4,<1.0 needed by bcbio-nextgen-1.0.0-py27_0 #3747

Open tpham2654 opened 3 months ago

tpham2654 commented 3 months ago

Version info

To Reproduce Exact bcbio command you have used:

wget https://raw.githubusercontent.com/bcbio/bcbio-nextgen/master/scripts/bcbio_nextgen_install.py
python3 bcbio_nextgen_install.py /home/computer/bcbio --tooldir=/home/computer/bcbio/tools --nodata --mamba

Your yaml configuration file:

N/A

Log files (could be found in work/log) Please attach (10MB max): bcbio-nextgen-commands.log, and bcbio-nextgen-debug.log. Final Error is:

                  __    __    __    __
                 /  \  /  \  /  \  /  \
                /    \/    \/    \/    \
███████████████/  /██/  /██/  /██/  /████████████████████████
              /  / \   / \   / \   / \  \____
             /  /   \_/   \_/   \_/   \    o \__,
            / _/                       \_____/  `
            |/
        ███╗   ███╗ █████╗ ███╗   ███╗██████╗  █████╗
        ████╗ ████║██╔══██╗████╗ ████║██╔══██╗██╔══██╗
        ██╔████╔██║███████║██╔████╔██║██████╔╝███████║
        ██║╚██╔╝██║██╔══██║██║╚██╔╝██║██╔══██╗██╔══██║
        ██║ ╚═╝ ██║██║  ██║██║ ╚═╝ ██║██████╔╝██║  ██║
        ╚═╝     ╚═╝╚═╝  ╚═╝╚═╝     ╚═╝╚═════╝ ╚═╝  ╚═╝

        mamba (0.24.0) supported by @QuantStack

        GitHub:  https://github.com/mamba-org/mamba
        Twitter: https://twitter.com/QuantStack

█████████████████████████████████████████████████████████████

Looking for: ['bcbio-nextgen']

conda-forge/linux-64                                        Using cache
conda-forge/noarch                                          Using cache
pkgs/main/linux-64                                          Using cache
pkgs/main/noarch                                            Using cache
pkgs/r/linux-64                                             Using cache
pkgs/r/noarch                                               Using cache
bioconda/linux-64                                             No change
bioconda/noarch                                      5.3MB @   4.4MB/s  1.4s

Pinned packages:
  - python 3.7.*

Encountered problems while solving:
  - nothing provides libsodium >=0.4,<1.0 needed by bcbio-nextgen-1.0.0-py27_0

Traceback (most recent call last):
  File "bcbio_nextgen_install.py", line 306, in <module>
    main(parser.parse_args(), sys.argv[1:])
  File "bcbio_nextgen_install.py", line 50, in main
    bcbio = install_conda_pkgs(anaconda, args)
  File "bcbio_nextgen_install.py", line 114, in install_conda_pkgs
    subprocess.check_call([mamba_bin, "install", "--yes", "--only-deps", "bcbio-nextgen"], env=env)
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/home/computer/bcbio/anaconda/bin/mamba', 'install', '--yes', '--only-deps', 'bcbio-nextgen']' returned non-zero exit status 1.

Full log is attached. bcbio_error_8-6-2024.txt

Based on the fact it's looking for a Python 2.7 version of LibSodium whereas the pinned packages mentions python 3.7.* could this simply be a typo in some configuration file somewhere?

lpantano commented 2 months ago

I think there is some updated packages that are breaking the installation of bcbio. I couldn't pin point the specific error yet. Can you try to install bcbio_nextgen.py from bioconda? I want to eliminate the issue to be something in the install script of requirements in bioconda.

tpham2654 commented 2 months ago

I was able to install BCBio using the bioconda instructions here: https://bioconda.github.io/recipes/bcbio-nextgen/README.html mamba create --name bcbio bcbio-nextgen

It appears to have finished without an error. When I enter the environment and attempt to install a genome using

bcbio_nextgen.py upgrade -u skip --genomes hg38 --aligners star --cores 20

I get this error:

bcbio_nextgen.py upgrade -u skip --genomes hg38 --aligners star --cores 20
/home/computer/miniconda3/envs/bcbio/lib/python3.10/site-packages/Bio/pairwise2.py:278: BiopythonDeprecationWarning: Bio.pairwise2 has been deprecated, and we intend to remove it in a future release of Biopython. As an alternative, please consider using Bio.Align.PairwiseAligner as a replacement, and contact the Biopython developers if you still need the Bio.pairwise2 module.
  warnings.warn(
Upgrading bcbio
Upgrading bcbio-nextgen data files
Traceback (most recent call last):
  File "/home/computer/miniconda3/envs/bcbio/bin/bcbio_nextgen.py", line 228, in <module>
    install.upgrade_bcbio(kwargs["args"])
  File "/home/computer/miniconda3/envs/bcbio/lib/python3.10/site-packages/bcbio/install.py", line 109, in upgrade_bcbio
    upgrade_bcbio_data(args, REMOTES)
  File "/home/computer/miniconda3/envs/bcbio/lib/python3.10/site-packages/bcbio/install.py", line 352, in upgrade_bcbio_data
    data_dir = _get_data_dir()
  File "/home/computer/miniconda3/envs/bcbio/lib/python3.10/site-packages/bcbio/install.py", line 329, in _get_data_dir
    raise ValueError("Cannot update data for bcbio-nextgen not installed by installer.\n"
ValueError: Cannot update data for bcbio-nextgen not installed by installer.
bcbio-nextgen needs to be installed inside an anaconda environment 
located in the same directory as the `genomes` directory.

I still get this even when I create a "genomes" directory inside the root of the environment's folder.

lpantano commented 2 months ago

Thank you for testing, I can reproduce but not sure how to fix it, I am sorry. Still trying to find some time for this, but it is being challenging.