zsh/config/zsh/login/langs

53 lines
1.4 KiB
Bash

#! zsh
local -a newbins
# go
[[ -z $GOPATH ]] && export GOPATH=~/.go
newbins+=(~/.go/bin)
# haskell
newbins+=(~/.cabal/bin ~/Library/Haskell/bin)
export STACK_ROOT=$XDG_DATA_HOME/stack
# ooc
if (( $+commands[rock] )); then
export -UT OOC_LIBS ooc_libs
ooc_libs=(/usr/local/Cellar/rock/*(N) $XDG_DATA_HOME/ooc)
newbins+=($XDG_DATA_HOME/ooc/sam/bin)
fi
# ruby
newbins+=(~/.gem/ruby/*/bin(N) /usr/local/opt/ruby/bin)
# rust
export CARGO_HOME=$XDG_DATA_HOME/cargo
newbins+=($CARGO_HOME/bin)
# perl
export -UT PERL_LOCAL_LIB_ROOT perl_local_lib_root
export -UT PERL5LIB perl5lib
perl_local_lib_root=($XDG_DATA_HOME/perl5 $perl_local_lib_root)
perl5lib=($XDG_DATA_HOME/perl5/lib/perl5 $perl5lib)
newbins+=($XDG_DATA_HOME/perl5/bin)
export PERL_MB_OPT="--install_base '$XDG_DATA_HOME/perl5'";
export PERL_MM_OPT="INSTALL_BASE=$XDG_DATA_HOME/perl5";
# php
export PHIVE_HOME=$XDG_DATA_HOME/phive
# I have no idea why Composer decided that the right place to install global
# packages is $XDG_CONFIG_HOME. It *clearly* should be $XDG_DATA_HOME. But
# there you go, I guess.
newbins+=($XDG_CONFIG_HOME/composer/vendor/bin)
# python
export -UT PYTHONPATH pythonpath
# pipenv already uses $XDG_DATA_HOME, but pyenv doesn't, so we need to
# configure it explicitly.
export PYENV_ROOT=$XDG_DATA_HOME/pyenv
export PYENV_SHELL=zsh
newbins+=($XDG_DATA_HOME/pyenv/shims $HOME/.poetry/bin)
path=($newbins $path)