man path_helper
Эта вещь сводила меня с ума.Я использую zsh, и в / etc / zshenv я нашел его.
# system-wide environment settings for zsh(1)
if [ -x /usr/libexec/path_helper ]; then
eval `/usr/libexec/path_helper -s`
fi
path_helper (8) на самом деле имеет полезную цель, я думаю.Это сводится на нет обычной ультра расплывчатой информацией сисадмина от apple.ищите path_helper (8) в вашем файле инициализации оболочки, в / etc, даже если вы используете macports, как я.Это может помочь.
В противном случае вы можете попробовать установить среду в:
/etc/launchd.conf
Но, конечно, страница руководства не является окончательной.http://developer.apple.com - отличная документация, но обычно мне нужны лучшие справочные страницы, а не точные места в памяти.
Наконец, вы можете включить их в окне входа в систему, которое гласит:
~/.MacOSX/environment.plist
Теперь мне кажется странным иметь несколько способов сделать это, но ... черт возьмиСтранно.Они сделали достойную замену инициализации, это должен быть один процесс, чтобы управлять ими всеми, но нет, многие задания выполняются вне этого.Удачи.Вы должны иметь возможность получить $ VAR в свой графический интерфейс одним из следующих способов.
Ах, http://developer.apple.com/library/mac/#qa/qa1067/_index.html.
OSX имеет различные сеансы и домены.Точнее, из
man launchctl
Сеансов:
В настоящее время известны следующие типы сессий: Aqua, LoginWindow, Background, StandardIO и System.
Домены:
Найдите файлы plist (5), оканчивающиеся на * .plist в указанном домене.Допустимые домены включают «системный», «локальный», «сетевой» и «все».
Это имеет смысл, когда вы читаете это.
Тьфу.launchd всегда добирается до меня.
РЕДАКТИРОВАТЬ: https://serverfault.com/questions/16355/how-to-set-global-path-on-os-x/277034#277034
Снова утверждает, что /etc/launchd.conf - это место, где файлы получают путь.
Итак, я запустил
opensnoop -g -c -f /etc/launchd.conf
и открыли терминал, итерм, сафари, брелок ... нада.Никто из них не открыл этот файл.
РЕДАКТИРОВАТЬ: Однако после просмотра видео Google на launchd я запустил
launchctl export
, который показал мне
PATH="/usr/bin:/bin:/usr/sbin:/sbin"; export PATH;
TMPDIR="/var/folders/YH/YHFe3+5RHmuxft5hr1XZTk+++TI/-Tmp-/"; export TMPDIR;
SHELL="/opt/local/bin/zsh"; export SHELL;
HOME="/Users/kb"; export HOME;
USER="kb"; export USER;
LOGNAME="kb"; export LOGNAME;
DISPLAY="/tmp/launch-dcQkBh/org.x:0"; export DISPLAY;
SSH_AUTH_SOCK="/tmp/launch-czhyqj/Listeners"; export SSH_AUTH_SOCK;
Apple_PubSub_Socket_Render="/tmp/launch-TI7lbI/Render"; export Apple_PubSub_Socket_Render;
sudo launchctl export
, который меняет мойконтекст для системного контекста вместо моего контекста Aqua как пользователя вернул
PATH="/usr/bin:/bin:/usr/sbin:/sbin"; export PATH;
Таким образом, контекст действительно имеет значение, другими словами, так же, как и сеанс, в котором выполняется команда.
Документация для этого инструмента, этой замены init, самого важного демона в apple, единственного демона, который управляет ими всеми, очень плохая.Моча.Бедные.