Install ArcGIS Python API on Apple Silicon

Install ArcGIS Python API on Apple Silicon
The Mac That Started This

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 arcgis.

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!