Sure, you should see my config, based heavily on ^chewies... # ~/.bashrc: executed by bash(1) for all shells. if [ -f ${HOME}/.bash_profile ] ; then . ${HOME}/.bash_profile fi umask 002 # ~/.bash_profile: executed by bash(1) for login shells. for i in ${HOME}/.profile.d/*.{sh,bash} ; do if [ -x ${i} ] ; then . ${i} fi done umask 002 Then in ~/.profile.d/ there are 7 bash shell scripts, each with a different purpose. Basically creating a broken up .bashrc. 00path.bash - Standard and non-standard path settings 05prompt.bash - Sets up bash prompt 06env-var.bash - Sets enviorment variables 07cmdaliases.bash - Command Aliases 10lsoptions.bash - ls options (colors, etc) 15irc.bash - IRC settings (for bitchx) 16proxy.bash - http/https/ftp proxy settings (for console tools like wget, lynx, etc. apt-get will follow these as well, but you're better off setting it in /etc/apt.conf) So if you wanted to source a file based on hostname, something like this: if [ -f ${HOME}/.bashrc.${HOSTNAME} ] ; then . ${HOME}/.bashrc${HOSTNAME} fi in your .bash_profile should do the trick... I don't think you need to set the $HOSTNAME variable in bash. I'm fairly sure that every bash enviorment has it set up automatically. echo $HOSTNAME to check. If not, add HOSTNAME=`hostname` above the if statement. -- Andy Zbikowski, Sys Admin | (WEB) http://www.ltiflex.com LTI Flexible Products, Inc. | (PH) 763-428-9119 (EX) 132 21801 Industrial Blvd | (FX) 763-428-9126 Rogers, MN 55374 | (PCS) 612-306-6055