Yosemite
/etc/launchd.confwird in 10.10 nicht mehr unterstützt. Siehe man launchctl:
Die Datei /etc/launchd.conf wird nicht mehr für Unterbefehle herangezogen, die während der frühen Startzeit ausgeführt werden sollen. Diese Funktionalität wurde aus Sicherheitsgründen entfernt.
Sie können diese Liste jetzt beispielsweise speichern als ~/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>
Der launchctl setenvBefehl wird als Benutzer ausgeführt und gilt daher nur für Prozesse, die in der Benutzerdomäne gestartet wurden.
Diese Methode gilt nicht für Anwendungen, die beim Anmelden erneut geöffnet werden, wenn "Fenster beim erneuten Anmelden erneut öffnen" aktiviert ist.
Mavericks und früher
In 10.9 und früher können Sie beispielsweise ausführen
echo setenv PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin|sudo tee -a /etc/launchd.conf
und dann neu starten, um die Änderungen zu übernehmen.
Andere Methoden
/etc/pathsund /etc/paths.d/nur (oder hauptsächlich) auf Muscheln anwenden. Die Linien in /etc/pathsund /etc/paths.d/*werden zu dem Pfad durch hinzugefügt path_helper , die aus ausgeführt wird /etc/profile, /etc/zshenvund /etc/csh.login. Ich kenne keine anderen Programme als Shells, die /etc/pathsoder berücksichtigen würden /etc/paths.d/.
~/.MacOSX/environment.plist hat in 10.8 aufgehört zu arbeiten.