{"id":18819220,"url":"https://github.com/geoscienceaustralia/arcgis_conda_integration","last_synced_at":"2026-03-02T03:32:58.928Z","repository":{"id":145587546,"uuid":"141083378","full_name":"GeoscienceAustralia/arcgis_conda_integration","owner":"GeoscienceAustralia","description":"arcgis_conda_integration","archived":false,"fork":false,"pushed_at":"2020-11-25T00:26:19.000Z","size":38,"stargazers_count":3,"open_issues_count":0,"forks_count":3,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-13T23:53:21.456Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GeoscienceAustralia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-07-16T03:45:10.000Z","updated_at":"2022-04-27T09:45:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"dbb251bd-1769-491e-b2df-1ca5fa7453f8","html_url":"https://github.com/GeoscienceAustralia/arcgis_conda_integration","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/GeoscienceAustralia/arcgis_conda_integration","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeoscienceAustralia%2Farcgis_conda_integration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeoscienceAustralia%2Farcgis_conda_integration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeoscienceAustralia%2Farcgis_conda_integration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeoscienceAustralia%2Farcgis_conda_integration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GeoscienceAustralia","download_url":"https://codeload.github.com/GeoscienceAustralia/arcgis_conda_integration/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GeoscienceAustralia%2Farcgis_conda_integration/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29991792,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-02T01:47:34.672Z","status":"online","status_checked_at":"2026-03-02T02:00:07.342Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T00:21:13.126Z","updated_at":"2026-03-02T03:32:58.923Z","avatar_url":"https://github.com/GeoscienceAustralia.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# arcgis_conda_integration\nThis arcgis_conda_integration repo contains batch files and a Python script to link parallel user-space Anaconda Python installations with either 32-bit ArcMap or 64-bit ArcGIS Pro.\n\nModification of the Python installations bundled with ArcGIS is potentially dangerous, in that updates to module versions could break ArcPy, sometimes requiring a full rebuild of the user environment. For this reason, the Python bundled with a packaged installation of ArcGIS  is usually locked-down and not able to be be extended or modified by users without administrative privileges. A solution is to create a parallel installation of Anaconda Python in user-space, with package versions the same or close to the versions shipped with ArcGIS, and manage the search lists to allow Conda to access ArcGIS libraries and vice versa.\n\nThe usercustomise.py script in this repo will append the Anaconda Python libraries from a Conda virtual environment to the search paths for ArcGIS Python when Python is invoked from ArcGIS, or, conversely, it will append the ArcGIS Python libraries from ArcGIS Python to the search paths for Anaconda when Python is invoked from Anaconda. This allows users to install and update packages more-or-less at will, and provides a safe way to test new packages in Conda virtual environments.\n\n\n# Revisions\n\n| Date       | Author     | Comment                               |\n|------------|------------|---------------------------------------|\n| 25/11/2020 | R. Coghlan | Added new batch script for ArcPro 2.4, Updated readme.md to include python module updates |\n\n\n\n# ArcGIS/ArcPro version updates\n\nThe batch files supplied in this repo can be updated to work on various version of ArcGIS/ArcPro.  To do so, a list of module dependcies must be extracted from the Arc version you are using and then the batch file copied/updated to reference these new versions.\nTo generate a list of python modules, in the python window in either ArcMap or ArcPro paste the following;\n\n\timport pkg_resources\n\tinstalled_packages = pkg_resources.working_set\n\tinstalled_packages_list = sorted([\"%s=%s\" % (i.key, i.version) for i in installed_packages])\n\tprint(\" \".join(installed_packages_list))\n\nThe returned string can be copied into either a new or existing batch script and will replace the existing package list. \n\nThe python version will also have to be updated in the batch script, and can be obtained by typing the following within the python window in either ArcMap or ArcPro;\n\n\timport sys\n\tprint (sys.version)\n\t\nThe python version info should then be updated in the batch script where you find the following text, noting the version may be different; python=3.6.8 \n\n\n# Installation\nThe following instructions assume that there are no instances of Python installed other than the ones bundled with ArcGIS. Please uninstall PythonXY or any other Python distributions you may have installed before commencing the Anaconda installation.\n\nPlease perform the required installation(s) for your version(s) of ArcGIS, selecting the \"Just Me\" option to install in user-space (i.e. without requiring administrative privileges), and accept all other default options except the \"Set as default Python 2/3\". N.B: DO NOT CHECK THE \"Set as default Python 2/3\" OPTION - CHECKING IT WILL CAUSE THE ARCGIS INTEGRATION TO FAIL.\n\nArcMap 10.5 requires a user-space installation of the 32-bit version of Anaconda Python 2 (https://repo.anaconda.com/archive/Anaconda2-5.2.0-Windows-x86.exe). N.B: DO NOT INSTALL THE 64-BIT VERSION OF PYTHON 2 UNLESS ABSOLUTELY NECESSARY, AND THEN ONLY AFTER READING THE NOTE BELOW.\n\nArcGIS Pro  requires a user-space installation of the 64-bit version of Anaconda Python 3 (https://repo.anaconda.com/archive/Anaconda3-5.2.0-Windows-x86_64.exe). N.B: DO NOT INSTALL THE 32-BIT VERSION OF PYTHON 3 UNLESS ABSOLUTELY NECESSARY, AND THEN ONLY AFTER READING THE NOTE BELOW.\n\nNote that you will need to separate the 32-bit and 64-bit versions of either Python 2 or 3 if you require both on your system, since both installers for a given version of Python will attempt to write to the one directory. Recommended practice in this case would be to add a \"_32\" or \"_64\" suffix to each default istallation directory in order to explicitly identify which is which. You will also need to adjust the CONDA_CONFIG section of usercustomize.py to be able to find the \"Anaconda2_32\" directory for Python 2, since the default settings will look for the default \"Anaconda2\" directory.\n\nAfter you have installed the required version(s) of Anaconda, download or clone this repo (https://github.com/GeoscienceAustralia/arcgis_conda_integration.git) to a known directory (e.g. C:\\Temp\\arcgis_conda_integration), then open the \"Anaconda Prompt\" shortcut under the relevant version of Anaconda. At the resultant command line, change directory to the one containing these files, and then run the relevant batch file for the Anaconda version, i.e. prepare_anaconda2.bat for Anaconda2, or prepare_anaconda3.bat for Anaconda3. Each batch file will:\n- update the base environment of Anaconda\n- install some generally useful packages not included in the initial Anaconda installation to the base environment\n- create a virtual environment with specific package versions for ArcGIS compatibility\n- copy the usercustomize.py script to C:\\Users\\%username%\\AppData\\Roaming\\Python\\Python36\\site-packages\n\nNote that if you are prompted for administrative access, you can either accept this if you have access to an administrator account, or just click \"Cancel\" - this is caused by some packages trying (erroneously) to write to the shared startup menu, and will not affect the actual installations or updates. Once the script has completed, you should be able to start the Anaconda Python, and enter \"import arcpy\" without error. We may include a work-around to create the missing user start-menu icons at a later date.\n\nIf you have any issues updating Conda due to proxy issues, you may need to explicitly configure your proxy in the .condarc file in your user directory (e.g. C:\\Users\\%USERNAME\\.condarc). \n\nIf you do not have a .condarc file in your user directory you can create one by entering the command \"conda config --write-default\" using the Anaconda Prompt.\n\nFor GA, you may need to make sure the following section appears in that file:\n\n\tproxy_servers:\n\t    http: http://proxy.ga.gov.au:8080\n\t    https: https://proxy.ga.gov.au:8080\nPlease see https://conda.io/docs/user-guide/configuration/use-condarc.html#config-proxy for further information. \n\nTo use the ArcGIS-compatible virtual environment, you can use the versions of Spyder and/or Jupyter installed in the virtual environment by using the shortcuts in the start menu. Alternatively, you can start the \"Anaconda Prompt\" for the relevant Python, and then type \"activate arc105_32bit\" for ArcMap 105 / Python 2.7, or \"activate arcgispro-py3\" for ArcGIS Pro / Python 3.6. You can then start Python, Jupyter or anything else in the virtual environment from that command prompt.\n\n# Optional - Creating your own Conda Virtual Environments / Recovery\nShould you wish to test different versions of packages, it is possible to clone the virtual environment as follows:\n\nFor ArcMap 105 / Python 2.7:\n\n\tconda create --name myclone --clone arc105_32bit \nFor ArcGIS Pro / Python 3.6:\n\n\tconda create --name myclone --clone arcgispro-py3  \nNote that if you wish to use the libraries in your cloned environment from within ArcGIS, you will need to manually edit the 'default_environment' value in the CONDA_CONFIG variable in the file C:\\Users\\%username%\\AppData\\Roaming\\Python\\Python\u003c27|36\u003e\\site-packages\\usercustomize.py. This is because the usercustomize script can only integrate a single virtual environment.\n\nShould you corrupt a Conda virtual environment, it is possible to delete it and recreate it from a known starting point. Please refer to https://conda.io/docs/user-guide/tasks/manage-environments.html for more information. In a worst-case scenario, it is also possible to manually delete all files and shortcuts created by the user-space installation, and start the installation procedure completely afresh.\n\nThere is also a PDF Conda Cheat Sheet at https://conda.io/docs/_downloads/conda-cheatsheet.pdf which might be of use.\n\n# Contacts and Acknowledgments\nTo provide feedback or obtain further information on this repo, please contact the eGIS team at Geoscience Australia (egis@ga.gov.au).\n\nThe version of usercustomize.py in this repo was functionally based on an original script written by Curtis Price of USGS (cprice@usgs.gov).\nThis usercustomize.py script was written by Alex Ip of Geoscience Australia, based on an augmented version of Curtis Price's script by Duncan Moore, also of GA.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeoscienceaustralia%2Farcgis_conda_integration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgeoscienceaustralia%2Farcgis_conda_integration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeoscienceaustralia%2Farcgis_conda_integration/lists"}