Las rutas /etc/paths
y /etc/paths.d/*
típicamente son agregadas PATH
por path_helper . path_helper
se ejecuta desde /etc/profile
, por lo que se ejecuta cuando se invoca bash como un shell de inicio de sesión interactivo, pero no cuando se invoca bash como un shell sin inicio de sesión o un shell no interactivo.
/etc/paths
contiene /usr/local/bin
al final de forma predeterminada y /etc/paths.d/
está vacío de forma predeterminada.
Terminal e iTerm 2 abren nuevos shells como shells de inicio de sesión por defecto, y el shell abierto cuando ssh a su computadora también es un shell de inicio de sesión. Sin tmux
embargo, muchos emuladores de terminal en otras plataformas y el modo de shell en Emacs abren nuevos shells como shells sin inicio de sesión.
He agregado esta línea a /etc/launchd.conf
:
setenv PATH ~/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/libexec:/usr/texbin
Cambia el valor del PATH
proceso de lanzamiento raíz. El valor es heredado por todos los demás procesos, incluidos los procesos lanzados por usuario. Puede aplicar cambios /etc/launchd.conf
reiniciando o ejecutando launchctl < /etc/launchd.conf; sudo launchctl < /etc/launchd.conf
y relanzando procesos.
En OS X, ~/.profile
no se lee cuando inicia sesión gráficamente. Si ambos ~/.bash_profile
y ~/.profile
existen, bash tampoco lee ~/.profile
.
~/.MacOSX/environment.plist
dejó de funcionar en 10.8.
/etc/profile
es un script utilizado principalmente por bash? No tengo experiencias con otros proyectiles, pero supongo que siguen una estructura diferente.