Yosemite
/etc/launchd.conf
non è più supportato in 10.10. Guarda man launchctl
:
The /etc/launchd.conf file is no longer consulted for subcommands to run during early boot time; this functionality was removed for security considerations.
Ora puoi ad esempio salvare questo plist come ~/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>
Il comando launchctl setenv
viene eseguito come utente, quindi si applica solo ai processi avviati nel dominio utente.
Questo metodo non si applica alle applicazioni che vengono riaperte all'accesso se "Riapri finestre quando si effettua il login" è selezionato.
Maverick e precedenti
In 10.9 e precedenti, puoi ad esempio eseguire
echo setenv PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin|sudo tee -a /etc/launchd.conf
e quindi riavvia per applicare le modifiche.
Altri metodi
/etc/paths
e /etc/paths.d/
si applicano solo (o principalmente) alle shell. Le linee in /etc/paths
e /etc/paths.d/*
vengono aggiunte al percorso da path_helper , che viene eseguito da /etc/profile
, /etc/zshenv
e /etc/csh.login
. Non conosco programmi diversi dalle shell che considerano /etc/paths
o /etc/paths.d/
.
~/.MacOSX/environment.plist
ha smesso di funzionare in 10.8.