Yosemite
/etc/launchd.conf
n'est plus supporté dans 10.10. Voir man launchctl
:
Le fichier /etc/launchd.conf n'est plus consulté pour les sous-commandes à exécuter au tout début du démarrage; cette fonctionnalité a été supprimée pour des raisons de sécurité.
Vous pouvez maintenant par exemple enregistrer ce plist en tant que ~/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>
La launchctl setenv
commande est exécutée en tant qu'utilisateur. Elle ne s'applique donc qu'aux processus lancés dans le domaine utilisateur.
Cette méthode ne s'applique pas aux applications qui sont rouvertes lors de la connexion si l'option "Rouvrir les fenêtres lors de la connexion" est cochée.
Mavericks et plus tôt
Dans 10.9 et les versions antérieures, vous pouvez par exemple exécuter
echo setenv PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin|sudo tee -a /etc/launchd.conf
puis redémarrez pour appliquer les modifications.
Autres méthodes
/etc/paths
et /etc/paths.d/
ne s'appliquent que (ou principalement) aux coquilles. Les lignes /etc/paths
et /etc/paths.d/*
sont ajoutées à la voie par path_helper , qui est exécuté à partir de /etc/profile
, /etc/zshenv
, et /etc/csh.login
. Je ne connais pas de programmes autres que des obus qui pourraient être envisagés /etc/paths
ou /etc/paths.d/
.
~/.MacOSX/environment.plist
cessé de travailler dans 10.8.