'How to specify the architecture or platform for a new conda environment? (Apple Silicon)

Is there a way to specify the architecture/platform when creating a new conda environment? Alternatively, how does conda detect its current architecture/platform when its run?

What I'm aiming to do is this: I'm running on an Apple Silicon laptop. My pre-existing environments are running fine through Rosetta2, but I'd like to start experimenting with python running natively on Apple Silicon. miniforge provides a conda-forge repository with Apple Silicon builds, and I can tell conda to use the conda-forge channel when I create an environment. But I'm not seeing a way to specify that I'd like this to be an arm64 environment rather than an x86_64 environment, other than starting from miniforge's installer.

Thanks in advance.



Solution 1:[1]

CONDA_SUBDIR=osx-arm64 conda create -n native numpy -c conda-forge will get you a osx-arm64 native env.

To make it permanent, do,

conda activate numpy
conda config --env --set subdir osx-arm64

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1