versiones sierra mountain mavericks mac lion descargar macos osx-lion

macos - sierra - Mac OS X Lion ya no reconoce environment.plist?



macos sierra (10)

Acabo de quemarme por algo similar en Snow Leopard, y luego descubrí cuál era el problema.

Yo estaba haciendo

$ cd $ defaults write .MacOSX/environment FOO bar

... pero resulta que esto es diferente de hacer (en mi caso):

$ cd $ defaults write /Users/ljnelson/.MacOSX/environment FOO bar

Es decir, la "ruta" (no es realmente una ruta) a su dominio debe ser la ruta completa del archivo a su archivo $HOME/.MacOSX/environment.plist (menos el sufijo .plist ). Cualquier otra cosa escribirá variables en un dominio diferente (no se sabe dónde se colocó), al parecer.

Por lo tanto, resultado: siempre haga defaults write /full/path/to/your/.MacOSX/environment VARNAME value ; no use ningún método abreviado para el primer argumento del subcomando de write .

Acabo de instalar Lion hoy y mi variable de env PATH ya no está siendo establecida por ~ / .MacOSX / environment.plist. ¿Cambió algo? Parece que no puedo encontrar ninguna información sobre eso o cómo solucionarlo. ¿Algunas ideas?

Aquí está el contenido de la lista:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>PATH</key> <string>/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11/bin:/Users/mdi/bin</string> </dict> </plist>



Hazlo como brew y crea un enlace simbólico en / usr / local / bin /. Funciona perfectamente para mí y es IMO una solución más parecida a Unix donde todo es un archivo.


Me encontré con el mismo problema hoy. Llamé a Apple Support y, después de pasar a un Asesor Senior, luego a su supervisor, me dijeron que ya no son compatibles con environment.plist y que no hay un método con soporte oficial para definir variables de entorno en Mac OS 10.7.


Puede editar su ~/.MacOSX/environment.plist con este ejemplo de $PATH :

defaults write $HOME/.MacOSX/environment PATH "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin:/opt/local/bin"

Esto reescribirá su ~/.MacOSX/environment.plist

o edita este archivo:

/etc/paths

Para cambiar el orden de las variables del sistema.


Raro, porque aquí funciona perfectamente. Tuve que configurar un entorno JRI para acceder a las partes internas de R desde aplicaciones Java, y actualizar el .profile no fue suficiente para que NetBeans capturara todas las variables env.

La creación del archivo environment.plist hizo el truco.

Para referencia esta el contenido del archivo:

Malessere:~ xxxxx$ cat .MacOSX/environment.plist <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>DYLD_LIBRARY_PATH</key> <string>/Users/xxxxx/lib/jri-2.13</string> <key>R_HOME</key> <string>/Library/Frameworks/R.framework/Resources</string> </dict> </plist>


Recientemente empaqué las herramientas utilizadas por la Fase de Script de Ejecución de Xcode y las coloqué en $ HOME / bin. La variable de entorno PATH de mi shell bash incluía esto, así que asumí que el Xcode también lo haría.

Nunca funcionó y encontré problemas como el de aquí.

Imprimí la variable PATH desde el script (echo $ PATH) llamado por Xcode para ver en qué se configuró la variable PATH.

Afortunadamente, una de esas rutas, /Applications/Xcode.app/Contents/Developer/usr/local/bin nunca se usó.

Aquí estaba mi solución. Creé un enlace simbólico del directorio anterior a $ HOME / bin.

Vaya a /Applications/Xcode.app/Contents/Developer/usr/local y ejecute sudo ln -s $ HOME / bin bin.

Mis herramientas ahora estaban disponibles para la plataforma Xcode.


Use ~/.launchd.conf en ~/.launchd.conf lugar (consulte man launchctl ).

Vea esta respuesta para más detalles.


Ya sea que Apple soporte oficialmente este mecanismo o no, la nota técnica actual Preguntas y respuestas técnicas QA1067 aún es precisa. Sin embargo, una advertencia importante está ausente: la Lista de propiedades debe estar en formato binario. Xcode 4, cuando se utiliza para crear nuevas listas de propiedades, emite archivos que están en formato de texto (independientemente del tipo especificado en el inspector de archivos). Entonces, o bien necesitas convertir el archivo guardado usando ''plutil'':

plutil -convert binary1 environment.plist

o use ''valores predeterminados'' para escribir un nuevo archivo de plantilla que pueda editar en Xcode (que respetará el formato binario original al guardar):

defaults write defaults write $HOME/.MacOSX/environment Root "1"


[[Estoy copiando esta respuesta mía aquí, porque puede ser útil para alguien:]]

Debido a mis propias exploraciones, ahora sé cómo configurar variables de entorno en 7 de 8 formas diferentes. Estaba tratando de obtener un envar a través de una aplicación que estoy desarrollando bajo Xcode. Configuré los "trazadores" de los envars que usan estos métodos diferentes para decirme cuáles entran en el ámbito de mi aplicación. A continuación, puede ver que la edición del "esquema" en Xcode para agregar argumentos funciona, al igual que "putenv". Lo que no lo estableció en ese ámbito: ~ / .MACOS / environment.plist, plist específico de la aplicación, .profile, y agregando una fase de compilación para ejecutar un script personalizado (encontré otra forma en Xcode [al menos] para establecer uno, pero olvidó lo que llamé el trazador y no puedo encontrarlo ahora; tal vez esté en otra máquina ...)

GPU_DUMP_DEVICE_KERNEL es 3

GPU_DUMP_TRK_ENVPLIST es (nulo)

GPU_DUMP_TRK_APPPLIST es (nulo)

GPU_DUMP_TRK_DOTPROFILE es (nulo)

GPU_DUMP_TRK_RUNSCRIPT es (nulo)

GPU_DUMP_TRK_SCHARGS es 1

GPU_DUMP_TRK_PUTENV es 1

... por otro lado, si entro a la Terminal y digo "set", parece que el único que recibe es el de .profile (habría pensado que recuperaría el medio ambiente. también enumerar, y Estoy seguro de que una vez vi un segundo marcador de seguimiento en la Terminal, por lo que es probable que algo se haya ido torciendo desde entonces; un largo día ...)