Variables de entorno desde Finder |  |
Cuando lanzamos una aplicación desde el terminal,
resulta fácil fijar sus variables de entorno. Sin embargo,
esta operación
se puede complicar cuando es Finder quien debe fijar las variables
de entorno.
En este truco explicamos cómo fijar variables
de entorno en las aplicaciones que ejecuta Finder.
Algunas aplicaciones requieren variables de entorno para
funcionar correctamente. En este truco usaremos como ejemplo
a NetBeans, y supondremos que queremos de pasarle valores en
las variables de entorno PATH y CLASSPATH.
Una primera opción es fijar las variables de entorno
en el terminal y ejecutar la aplicación desde el terminal: $
export CLASSPATH=$CLASSPATH:.:/Library/Java/Home/lib/xjparse-1.0.jar $
export PATH=$PATH:/usr/local/sw/bin $ open
/Applications/Development/NetBeans.app Sin
embargo, en ocasiones preferimos poder ejecutar la aplicación
haciendo doble click en su icono con Finder. En este caso tenemos
dos alternativas: (1) Fijar variables de entorno para todas
las aplicaciones que ejecute Finder, o (2) fijar variables
de entorno para una determinada aplicación que ejecute
Finder. En
el primer caso podemos crear un fichero de propiedades en la
ruta $HOME/.MacOSX/environment.plist.
Para crearlo podemos usar la herramienta Property List Editor
tal como muestra la Figura 1. 
Figura
1: Property List Editor con el fichero environment.plist La
segunda opción es fijar esas variables para una única
aplicación.
En este caso, usando la opción Show
Package Contents podemos editar el fichero Info.plist de
la aplicación en cuestión (p.e. NetBeans) y añadir la propiedad LSEnvironment,
la cual es un diccionario donde cada entrada representa una
variable de entorno. La Figura 2 muestra el resultado de esta
edición. 
Figura
2: Property List Editor con el fichero Info.plist de
NetBeans Para que Finder vuelva a releer el bundle de
la aplicación NetBeans debemos de actualizar su fecha, por
ejemplo ejecutando el comando touch sobre
la aplicación de la forma: $ touch /Applications/Development/NetBeans.app |