From Mike's link:

> `.zshenv' is sourced on all invocations of the shell, unless the -f option is set. **It should contain commands to set the command search path**...

I mentioned `~/.zprofile` because OSX may have the same feature/bug as Arch. If the system-level zprofile (`/etc/zsh/zprofile`) sets a `PATH`, it will clobber anything you do in `~/.zshenv` since it's sourced after. I also like that `~/.zprofile` is sourced less frequently so moving what you can there will speed up terminal launch, by however small an amount.