OSX の path_helper と zsh の組み合わせが難しかった

rbenv とか plenv で RubyPerl をインストールして使うときに、login shell の zsh では $HOME/.rbenv/shims/ruby が見えてるのに、screen 起動すると /usr/bin/ruby になっちゃってアレーってなってちょっと調べた。

結論から言うと path_helper というものがあって、これを使うと /etc/paths や /etc/paths.d に定義したパスを $PATH に設定する仕組みになっていて、/etc/zshenv でこれを読んでいるんだけど、それは /etc/zprofile で呼ぶべきとかナントカで、とても面倒な話だった。

ついでに brew 使ってるんで、/etc/paths も /usr/local/bin が優先されるように変更しつつ、zshenv を移動して回避(?)できた。

$ cat /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin

$ sudo mv /etc/{zshenv,zprofile}
$ screen