dotfiles/env
2013-08-30 09:11:14 -07:00

72 lines
2 KiB
Bash

# .env
# vim: ft=zsh
#
# Environment settings for bash and derivatives. The env scripts are sources by
# Zsh for every shell, even the non-interactive ones, so this needs to be small
# and quick. Any configuration that will only be used for interactive sessions
# should be in the rc scripts.
#
# Eryn Wells <eryn@erynwells.me>
[ -e $HOME/.shell-functions ] && source $HOME/.shell-functions
export SYS=`uname -s | tr A-Z a-z`
# Set this to a non-zero integer to see startup messages
export NOISY=10
print_heading -l 1 'Initializing environment'
PAGER="less"
MANPAGER=$PAGER
EDITOR="vim"
VISUAL=$EDITOR
LESSHISTFILE="-"
GREP_OPTIONS="--color=auto"
GREP_COLOR="1;32"
export PAGER MANPAGER \
EDITOR VISUAL \
LESSHISTFILE \
GREP_OPTIONS GREP_COLOR
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin
# NOTE: These prepended to $PATH in reverse order, so $HOME/bin will end up
# being the first path component.
[[ -d /usr/X11/bin ]] && PATH=$PATH:/usr/X11/bin
[[ -d /opt/local/bin ]] && PATH=/opt/local/bin:$PATH
[[ -d $HOME/.local/bin ]] && PATH=$HOME/.local/bin:$PATH
[[ -d $HOME/bin ]] && PATH=$HOME/bin:$PATH
export PATH
print_info -l 2 "Setting up $SYS environment"
case $SYS in
darwin)
if [[ -d "$HOME/Library/Python/2.7/bin" ]]; then
export PATH="$HOME/Library/Python/2.7/bin:$PATH"
fi
local py27local=$HOME/Library/Python/2.7/lib/python/site-packages
if [[ ! -z $PYTHONPATH ]]; then
[[ -d $py27local ]] && PYTHONPATH=$py27local:$PYTHONPATH
else
PYTHONPATH=$py27local
fi
export PYTHONPATH
;;
linux)
export MAIL="/var/mail/$USER"
;;
esac
# System specific settings
if [[ -e "$HOME/.env.$SYS" ]]; then
print_info -l 2 "Sourcing environment setup for $SYS systems"
source "$HOME/.env.$SYS"
fi
# Local environment settings
if [[ -e $HOME/.env.local ]]; then
print_info -l 2 "Sourcing local environment setup"
source $HOME/.env.local
fi