Yosemite
/etc/launchd.conf
больше не поддерживается в 10.10. Смотрите man launchctl
:
Файл /etc/launchd.conf больше не используется для подкоманд, запускаемых во время ранней загрузки; эта функциональность была удалена из соображений безопасности.
Теперь вы можете, например, сохранить этот лист как ~/Library/LaunchAgents/my.startup.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>Label</key>
<string>my.startup</string>
<key>ProgramArguments</key>
<array>
<string>sh</string>
<string>-c</string>
<string>launchctl setenv PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Команда launchctl setenv
запускается от имени пользователя, поэтому она применяется только к процессам, запущенным в пользовательском домене.
Этот метод не применяется к приложениям, которые открываются при входе в систему, если установлен флажок «Открывать окна при повторном входе в систему».
Маверикс и ранее
В версии 10.9 и более ранних, например, вы можете запустить
echo setenv PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin|sudo tee -a /etc/launchd.conf
и затем перезапустите, чтобы применить изменения.
Другие методы
/etc/paths
и /etc/paths.d/
применять только (или в основном) к оболочкам. Линии /etc/paths
и /etc/paths.d/*
добавляются к пути с помощью path_helper , которая запускается из /etc/profile
, /etc/zshenv
, и /etc/csh.login
. Я не знаю никаких программ, кроме оболочек, которые рассматривали бы /etc/paths
или /etc/paths.d/
.
~/.MacOSX/environment.plist
перестал работать в 10.8.
/etc/launchd.conf
был удален в 10.10.launchctl setenv
.launchctl setenv
никогда не влиял на существующие процессы.Есть гораздо более простой способ. Поместите текстовый файл в папку
/etc/paths.d/
. В этом текстовом файле введите желаемый путь и символ новой строки. Лучший способ - создать новый файл для каждого пути.В моей системе есть файл MySQL с текстом «/ usr / local / mysql / bin» и переводом строки.
источник
Вы можете установить переменные среды в файле
/etc/launchd-user.conf
...В Mavericks мне удалось настроить переменную среды в файле с помощью строки:
После новой загрузки
$TEST
из /etc/launchd-user.conf устанавливается.редактировать
Возможно, синтаксис файла в /etc/launchd.conf недействителен. Можете ли вы опубликовать содержимое этого файла для проверки?
Из того, что я вижу, установка переменной PATH в /etc/launchd.conf работает нормально. Однако
launchd
не выполняет никаких расширений параметров . Поэтому, если у вас есть такая записьsetenv PATH $PATH:/usr/local/bin
, ваш результирующий путь будет установлен на «$PATH:/usr/local/bin
» (примечание: не значение PATH, а текст «$ PATH»)источник
в моей установке Mavericks, добавление «setenv PATH blablabla» в /etc/launchd.conf не работало после перезагрузки
поэтому я добавил свой новый путь в конец / etc / paths, который сработал.
источник
/etc/paths
содержит все , что я хочу, и все же Sublime по-прежнему видит только оригинальный путь. Если я запускаю его из терминала, он работает.Я обнаружил, что setenv PATH по-прежнему работает для меня в терминале и приложениях, но не работает в сценариях оболочки, запускаемых непосредственно с помощью нажатия или «Открыть с помощью» в терминале, скажем, из Finder. Это очень странно Другие переменные среды, установленные в
/etc/launchd.conf
работе.Чтобы исправить это для сценариев оболочки, запускаемых напрямую, я продублировал настройку PATH в
~/.bash_profile
.источник
Редактирование
/etc/paths.d
или использование.bash_profile
не работало для меня, однако, как это было предложено кем-то другим (я действительно пришел сюда, чтобы выразить свое мнение, но я не смог найти его снова ?!), я отредактировал,/etc/paths
который работает для меняВ моем случае я добавил android-tool
adb
иandroid
команды терминала с указанием их путей sdk (вadb
настоящее время перемещен в другой каталог), которые выглядят какисточник
SWEET, добавление этого XML в ~ / Library / LaunchAgents / setenv.SVN.plist позволило BBEdit использовать двоичные файлы Subversion, которые я установил в / opt.
источник
Просто добавьте путь 'bin' (путь, который вы хотите добавить) к файлу / etc / paths - перезагрузите компьютер или перезапустите !!!
сохраните файл и перезапустите ... надеюсь, это поможет
источник