Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ensembl-vep cannot be installed with arm64 (Apple Silicon) #50373

Open
gernophil opened this issue Aug 28, 2024 · 3 comments
Open

ensembl-vep cannot be installed with arm64 (Apple Silicon) #50373

gernophil opened this issue Aug 28, 2024 · 3 comments

Comments

@gernophil
Copy link

First of all thanks that more and more packages are available for arm64. ensembl-vep is available as noarch. However, it cannot be installed since neither perl nor perl-bio-db-hts is availble in the needed version for arm64. Could you make those available so I can install ensembl-vep into my arm64 conda?

% mamba create -n test ensembl-vep 

Looking for: ['ensembl-vep']

bioconda/osx-arm64 (check zst)                      Checked  0.1s
bioconda/noarch (check zst)                        Checked  0.1s
bioconda/osx-arm64                                  35.7kB @ 372.2kB/s  0.1s
bioconda/noarch                                      4.3MB @  11.8MB/s  0.4s
conda-forge/osx-arm64                               11.3MB @  25.4MB/s  0.4s
conda-forge/noarch                                  16.2MB @  29.1MB/s  0.6s
Could not solve for environment specs
The following packages are incompatible
└─ ensembl-vep is not installable because there are no viable options
   ├─ ensembl-vep [100.0|100.1|...|99.2] would require
   │  └─ perl >=5.26.2,<5.26.3.0a0 , which does not exist (perhaps a missing channel);
   └─ ensembl-vep [105.0|106.0|...|112.0] would require
      └─ perl-bio-db-hts >=2.11 , which does not exist (perhaps a missing channel).
@aliciaaevans
Copy link
Contributor

Thanks for the request.

Perl is actually available on conda-forge from v5.32.*, but that message is because the solver was looking at older versions of ensembl-vep because it wasn't able to solve the latest version due to perl-bio-db-hts.

I tried building perl-bio-db-hts to see if it could be done easily. Unfortunately, looks like there are quite a few dependencies in the chain.perl-module-build is needed, which now lives on conda-forge: https://github.com/conda-forge/perl-module-build-feedstock so an issue or PR for osx arm should go there. perl-bioperl requires perl-bio-samtools which requires samtools <=0.1.17, which means we'd have to back build the older version(s) for osx-arm64 unless that constraint could be adjusted to 1.20 (which we could do, but I'm not sure what types of issues might be encountered).

I can't look more into it right now, but I want to leave this info here in case you or someone else wants to work on some of that.

@gernophil
Copy link
Author

Can you maybe guide me a little on what's to do? I never built a package for any conda channel, but I should be able to, if you point me to a direction where to start :).
I should have all the necessary tools for that.

@aliciaaevans
Copy link
Contributor

I wrote up the below general tips for osx-arm64, but I just realized that perl-bio-samtools requires a much older version of samtools than I was thinking. (I was thinking it was 1.17, not 0.1.17.) I don't know what getting that working for osx-arm64 would entail and if it would be feasible. I suppose you could try it locally on your Mac by adding the additional-platforms section (see below) to https://github.com/bioconda/bioconda-recipes/blob/master/recipes/samtools/0.1.19/meta.yaml and building with bioconda-utils. (If that works, it seems like perl-bio-samtools may support samtools 0.1.19 https://metacpan.org/release/LDS/Bio-SamTools-1.43/source/Changes)

Another option for these older packages is to just use the workaround with Rosetta to use the osx-64 version: https://stackoverflow.com/questions/70205633/cannot-install-python-3-7-on-osx-arm64


For conda-forge, here's the documentation and an example PR to add a package to the automated osx-arm64 migration:
https://conda-forge.org/docs/maintainer/knowledge_base/#apple-silicon-builds
conda-forge/conda-forge-pinning-feedstock#6268

For bioconda, all that's initially needed to build osx-arm64 is to add the additional-platforms section with - osx-arm64, but if that runs into errors then additional changes might be needed. Also, here's the contributor docs about how to build.
https://bioconda.github.io/developer/aarch64.html
https://bioconda.github.io/contributor/index.html
Some examples:
#51267
#51281

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants