nextstrain / conda-base

Conda package build for nextstrain-base
https://anaconda.org/Nextstrain/nextstrain-base
1 stars 1 forks source link

ENH: Support native osx-arm64 conda install #77

Open corneliusroemer opened 3 months ago

corneliusroemer commented 3 months ago

Context

Now that bioconda supports osx-arm64, we can finally try to make a native environment, which will speed up local builds by around a factor of 2.

There's quite a lot of work to do: all our dependencies will need to be supported by osx-arm64, but it should be doable!

This issue is a tracker, to help us see what's still missing.

Tasks

jameshadfield commented 3 months ago

Are we still missing tsv-utils which is osx-64/linux-64?

https://github.com/nextstrain/conda-base/blob/224ad3997cc7ca17fa6fa2ed29ade37c21b3fece/src/recipe.yaml#L83

corneliusroemer commented 3 months ago

@jameshadfield no 😀 I migrated it to conda-forge a few days ago as it's of general utility and not bio limited. check it out at conda-forge/tsv-utils

victorlin commented 3 months ago

There are two stages here - the first one is making sure that dependencies can be installed natively which looked like a big undertaking, thank you for taking care of that!

Next, we have to update the build to produce the package for osx-arm64. I think this is what needs to be done:

  1. Use osx-arm64 here: https://github.com/nextstrain/conda-base/blob/e5090a8092d7f06eeb1392ae223cdedf849ab0ac/devel/conda-subdir#L17-L18
  2. Use macos-14 here: https://github.com/nextstrain/conda-base/blob/e5090a8092d7f06eeb1392ae223cdedf849ab0ac/.github/workflows/ci.yaml#L29-L36

For (2) I think we'll want to append to the list rather than replace macos-12 so that there will still be a native package for Intel Macs.

corneliusroemer commented 3 months ago

Nice @victorlin - I didn't see this comment of yours just now but came to the same conclusions when trying a PR. I've made one here:

It turns out that gzip isn't yet available for osx-arm64. We could potentially drop that for osx-arm64 as gzip is available from the system on macOS arm64.

But I made a migration pr to conda-forge anyways:

victorlin commented 2 months ago

@corneliusroemer let me know if you need any help pushing #80 through. I've prioritized task under my name at our biweekly priorities meetings because it seems close to done, and I think it'd be great to take advantage of all the work that you and others have done to make it possible.