Hay muchas preguntas y comentarios sobre el uso launchctl setenv PATH /path/to/include
para que las aplicaciones GUI hereden las rutas especificadas por el usuario. Hice esto hace unos cuatro años, y los cambios que agregué persistieron hasta 10.11.6 (SO actual). Desafortunadamente para mí, hace tiempo que olvidé estos ajustes hasta hace poco...
Ninguna de las páginas del manual o comentario indica cómo revertir estos cambios a los valores predeterminados de fábrica. Por ejemplo, ejecutar launchctl getenv PATH
rendimientos:
/usr/local/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/e2fsprogs/sbin:/usr/local/opt/e2fsprogs/bin:/usr/local/opt/flex/bin:/usr/local/opt/gettext/bin:/usr/local/opt/openssl@1.1/bin:/usr/local/opt/openssl/bin:/usr/local/opt/qt/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Frameworks/GDAL.framework/Versions/2.1/Programs:/Library/Python/2.7/site-packages:/usr/local/lib/python2.7/site-packages:/Applications/Wireshark.app/Contents/MacOS
La ejecución launchctl setenv PATH [blank]
es evidentemente un error, que exige un valor que no esté en blanco. También dudo en experimentar con esto porque no sé si hay una configuración predeterminada de macOS para este par clave-valor.
¿Puede alguien decirme cómo puedo vaciar el contenido actual launchctl getenv PATH
o devolver su contenido a lo que aparecería en una instalación nueva? Preferiría no reemplazar lo que hay actualmente con las rutas predeterminadas de /etc/profile
y similares, a menos que sean los mismos valores que aparecen cuando se ejecuta launchctl getenv PATH
en una instalación nueva.
La ejecución launchctl unsetenv PATH
borró la variable, pero no persistió después del reinicio, es decir, los mismos valores de ruta devueltos después de un reinicio.
Lo que terminó funcionando para restaurar los "ajustes preestablecidos de fábrica" predeterminados para mí fue ejecutar:
sudo launchctl config user path /usr/bin:/bin:/usr/sbin:/sbin
Esto no es diferente al consejo que se ve aquí ( Establezca la variable PATH para que se detecte en todas las aplicaciones, incluso fuera de la terminal. (El Capitán) ). Pero quedan algunas preguntas persistentes:
user path
, o promulga una nueva configuración que de otro modo estaría vacía?
andras.tim
launchctl config user path
llamada (esto será un problema después de que cambie el valor predeterminado). - FYI: si ha ejecutado el comandolaunchctl config user path
, puede revertir los cambiosdefaults delete /private/var/db/com.apple.xpc.launchd/config/user.plist PathEnvironmentVariable
.