Esta semana he estado actualizando unas cositas en mi Mac, como por ejemplo, el intérprete de Python. Lo he actualizado a la versión 2.5. Todo correcto hasta que me decidí a probar Django, un marco de desarrollo para aplicaciones web en Python. Se instala correctamente, no protesta, pero ¡ay, amigo! Cuando intento ejecutar el script principal de gestión, llamado django-admin.py, no lo encuentra por ningún lado. Se supone que Django se instala donde están las librerías estándar de Python, pero no lo encuentra.
La solución: El proceso de actualización de Python había incluido en la variable de entorno $PATH los directorios adecuados… pero en el fichero .profile del directorio $HOME. El programa Terminal de Mac OS X lo tengo puesto para ejecute /bin/bash y claro, así no hay manera de que lea el entorno descrito en ~/.profile.
Para aquellos con dudas de este tipo, os comento cómo funciona el orden a la hora de buscar en estos ficheros, según lo que he leído por ahí:
Si haces una shell por login:
- Busca el fichero /etc/profile
- Busca el fichero ~/.bash_profile
- Si no existe, busca el fichero ~/.bash_login
- Si no existe, busca el fichero~/.profile
Esto significa que si para que encuentre ~/.profile, no tiene que existir ni ~/.bash_profile, ni ~/.bash_login. Ahí queda eso.
Por supuesto, no he nombrado hasta ahora el fichero ~/.bashrc. El sistema lo busca siempre que abres una shell con bash (los anteriores sólo cuando haces login), así que he cambiado la información sustancial ahí.