Install ArcGIS Python API on Apple Silicon
Apple's new ARM-based processors, the M1 and M2, "Apple Silicon," chips, offer impressive performance. Unfortunately, when it comes to the world of Conda Python packages, support has not quite yet caught up. Thankfully, there is a way to use these packages by using the Rosetta 2 emulator provided by Apple. It requires ensuring you have Rosetta 2 and setting up the Conda environment to use the Rosetta 2 emulator.
First, you need to ensure you have the Rosetta 2 emulator installed. In a terminal, just try the following command. If you do not know, running it a second time does not hurt.
softwareupdate --install-rosetta --agree-to-license
Next, you need to create and activate the new environment. In this example, I am naming the new environment
CONDA_SUBDIR=osx-64 conda create -n arcgis && conda activate arcgis
Finally, set an environment variable telling this new Conda environment to use the Rosetta 2 environment emulating the Intel i386 archeteture.
conda env config vars set CONDA_SUBDIR=osx-64
Now, when you attempt to install packages not yet supporting the ARM Apple Silicon archetecture, such as the ArcGIS Python API, you will not have any issues with this environment. Installing the Esri Python API for ArcGIS works just like it always has!
conda install -c esri arcgis
Finally, if you set up your Conda environments using an
environment.yml file, you will need to use the following to complete your environment setup.
CONDA_SUBDIR=osx-64 conda env update -n arcgis -f environment.yml
Have fun and happy geo-coding!