Friday, October 9, 2009

.pathrc

For a long time I've been using a 'usr' directory in my home to install additional/patched software built from scratch. It is very convenient since the main distribution keeps clean and using of environment variables makes it look like everything is normal. For some unknown reason long in the past i've moved variable initializations out of my .bashrc file to .pathrc which is presented below.

Hehe, .pathrc is not something I'm very proud about but several days ago I suddenly urged for it without having any access to my home computer. So let it be posted here.


# set PATH so it includes user's private bin if it exists
USER_PREFIX=~/usr
if [ -d ${USER_PREFIX}/bin ] ; then
PATH=${USER_PREFIX}/bin${PATH:+:$PATH}
export PATH
fi
if [ -d ${USER_PREFIX}/sbin ] ; then
PATH=${USER_PREFIX}/sbin${PATH:+:$PATH}
export PATH
fi
if [ -d ${USER_PREFIX}/include ] ; then
C_INCLUDE_PATH=${USER_PREFIX}/include${C_INCLUDE_PATH:+:$C_INCLUDE_PATH}
export C_INCLUDE_PATH
fi
if [ -d ${USER_PREFIX}/include ] ; then
CPATH=${USER_PREFIX}/include${CPATH:+:$CPATH}
export CPATH
fi
for l in lib lib64; do
if [ -d ${USER_PREFIX}/${l} ] ; then
LIBRARY_PATH=${USER_PREFIX}/${l}${LIBRARY_PATH:+:$LIBRARY_PATH}
export LIBRARY_PATH
fi
if [ -d ${USER_PREFIX}/${l} ] ; then
LD_LIBRARY_PATH=${USER_PREFIX}/${l}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
fi
done
if [ -d ${USER_PREFIX}/share/man ] ; then
# MANPATH should be ended with ":", otherwise man(1) doesn't
# search in system paths. See manpath(1) for details.
MANPATH=${USER_PREFIX}/share/man:${MANPATH}
export MANPATH
fi

No comments: