1: How can I tell where GRASS is finding Python?
if you want to find the path of the executable used by GRASS GIS, go to the Python console of the GRASS GIS Layer Manager
2 How can I tell GRASS where it should be finding Python?
open the file /Applications/GRASS-6.4.app/Contents/MacOS/grass.sh, which is the script that runs GRASS GIS, and look for (lines 198 - 255)
# did user set GRASS_PYTHON already? check it (must have pythonw)
if [ "$GRASS_PYTHON" ] ; then
but proceed with caution because the version of William Kyngesburye use some specific libraries in /Applications/GRASS-6.4.app/Contents/MacOS/etc/python/ like wxPython for the GUI (specific to a Python version)
"One of the problems with doing this kind of stuff on a Mac is that any version of Python you install is going to conflict with the default version of Python that comes with OS X."
Not at all, just adjust the paths in usr/bin as do the Python frameworks of Python.org or Enthought, for example, or the paths specified in .bash_profile like the versions of Homebrew (in /usr/local/bin) or Macports (in /opt/bin). I have several versions of Python installed and I go from one to another without problem.
The problem are the applications that requires a specific version of Python like the version of QGIS of Kyng Chaos. In this case, there are symbolic links (like Python2.7 and Python2.7-config, for example) that you can adjust.
Another solution is to compile yourself GRASS GIS following the indications of Kyng Chaos (long time but not difficult) or use the GRASS GIS versions of Homebrew (which use the Homebrew version of Python) or MacPorts (which use the MacPorts version of Python)