Anaconda and upgrading to new M1 Mac

A quick update as of July 2021.

TLDR

  • The conda-forge group have a M1 native conda installer here.
  • Installation is simple – run the installer, and you have conda up and running.
  • This will install an M1 native conda, and that conda’s default environment will by default install M1 native python versions and M1 native versions of modules (if available).
  • There seem to be native osx M1 native wheels for most common modules now available on the conda-forge channel.

Current status

It seems Anaconda still do not have a native M1 version, nor does Miniconda. …I can’t figure out why it’s taken so long and neither still seem to have native M1 support, but that’s a separate issue.

Alternative

However, as steff above mentioned, conda-forge (as in the group responsible for maintaining the conda-forge channel) do have a installer for their version of conda that is itself both native M1, and also sets up your environment to pull M1 native wheels where available. This they call Miniforge.

Their github is here.

Various installers for their Miniforge (via direct download, curl or homebrew) can be found on their github page (above) – the direct link to the ARM native miniforge installer is here.

A quick search on conda-forge show’s almost all common modules do now have native M1 wheels available. (look for supporting platform ‘osx-arm64` eg numpy)

Caveats

I’ve not tested this too extensively yet, and I’m not sure exactly what happens if a non-M1 wheel is available (I believe it will default to downloading a no-arch version).

I’m also not sure/haven’t tested whether you can mix and match M1 wheels with x86 mac wheels. (I’m guessing this would work, but haven’t tried).

I also have only done minimal testing using the conda’s pip, and how well it recognizes/tries to download/resolves M1 vs x86 pip packages.

Leave a Comment