+# -*-sh-*-
#
# $Id: .profile,v 1.3 1997/01/09 20:30:23 mdw Exp $
#
export __mdw_profile=done
+# --- Work out my home directory ---
+#
+# This horrible trick resolves symbolic links. It enables resolving links,
+# changes directory and displays the name of the directory in a subshell
+# to avoid changing the current state.
+
+HOME=`(set -P; cd $HOME; pwd)`
+cd $HOME
+
# --- Add elements to a path string ---
__mdw_addto () {
export $var=$val
}
-# --- What sort of machine am I running on? ---
-
-export arch=`echo $MACHTYPE | tr 'A-Z' 'a-z'`
+# --- Find a configuration item ---
+
+__mdw_conf () {
+ local var=$1
+ val=`sed -n "
+ /^[ ]*$var[ ]*=[ ]*\(\|.*[^ ]\)[ ]*$/ {
+ s//\1/; p; q
+ }
+ " ${MDWCONF-$HOME/.mdw.conf}`
+ case "$val" in "~"*) val=`eval "echo ${val%%/*}"`${val#\~};; esac
+ echo "$val"
+}
# --- Set the path variable ---
__mdw_addto PATH l \
+ $HOME/bin \
{,/usr{,/local}{,/X11R6}}{/bin,/sbin,/games} \
- $HOME{,/arch/{$arch,any-any-any}}/bin \
- /opt/nfast{/bin,/sbin} \
+ /opt/nfast{,/gcc}{/bin,/sbin} \
$HOME/src/ncipher/scripts
-export PLAN9=/usr/local/plan9
-__mdw_addto PATH r \
- $PLAN9/bin
+if [ -d /usr/local/plan9 ]; then
+ export PLAN9=/usr/local/plan9
+ __mdw_addto PATH r \
+ $PLAN9/bin
+fi
# --- And the same for manual pages ---
-case "$arch" in
+case "$MACHTIME" in
*linux*)
MANPATH=`manpath -q`
;;
{/usr{,/local}{,/X11R6}{,/share}}/{man,catman} \
$HOME/man
-# --- Work out my home directory ---
-#
-# This horrible trick resolves symbolic links. It enables resolving links,
-# changes directory and displays the name of the directory in a subshell
-# to avoid changing the current state.
-
-HOME=`(set -P; cd $HOME; pwd)`
-cd $HOME
-
# --- Where my mail comes from ---
-export MAIL=$HOME/Mailbox
+export MAIL=`__mdw_conf mailbox`
export NAME="Mark Wooding"
-export EMAIL="mdw@distorted.org.uk"
+export EMAIL=`__mdw_conf email`
export QMAILINJECT=c
# --- GIT environment things ---
unset LANG
-export EDITOR="emacs -nw"; export VISUAL="$EDITOR"
+export EDITOR=ed
+for ed in "emacs21 -nw" "emacs -nw" vi pico nano ae; do
+ name=`echo $ed | sed 's/ .*$//'`
+ if type -t >/dev/null "$name"; then
+ EDITOR=$ed
+ break
+ fi
+done
+export VISUAL="$EDITOR"
+
export TEXINPUTS=".:$HOME/lib/tex//:"
__mdw_addto INFOPATH r $HOME/info /usr/info /usr/share/info /usr/local/info
__mdw_addto PERLLIB r $HOME/lib/perl
__mdw_addto PYTHONPATH r $HOME/lib/python
-[ -z "$LS_OPTIONS" ] && export LS_OPTIONS="-F"
+export __MDW_ROOTLY=`__mdw_conf rootly`
-export RMBKP="-abc +q -i"
+[ -z "$LS_OPTIONS" ] && export LS_OPTIONS="-F"
export BASCAT="-l +n"
export CVS_RSH=ssh
-case $HOST in
- metalzone | metalzone.* )
- export CVSROOT="/home/cvs/cvs"
- export SVNROOT="file:///home/cvs/svn"
- ;;
- *)
- export CVSROOT="metalzone.distorted.org.uk:/home/cvs/cvs"
- export SVNROOT="svn+ssh://metalzone.distorted.org.uk/home/cvs/svn"
- ;;
-esac
+export CVSROOT=`__mdw_conf cvs-root`
+export SVNROOT=`__mdw_conf svn-root`
+
export BECOME="--preserve-environment"
export PAGER=`type -p less` METAMAIL_PAGER=`type -p less`
export LESSOPEN="|lesspipe.sh %s"
export LESSCHARSET=latin1
# export MAKEFLAGS="-j4"
-[ "$TMPDIR"] || eval `tmpdir -b`
+[ "$TMPDIR" ] || eval `tmpdir -b`
export TMP=$TMPDIR
export PERL_READLINE_NOWARN=yes
-[ -z "$NNTPSERVER" ] && export NNTPSERVER=metalzone.distorted.org.uk
-[ -z "$http_proxy" ] && export http_proxy="http://metalzone.distorted.org.uk:3128/"
+[ -z "$NNTPSERVER" ] && export NNTPSERVER=`__mdw_conf nntp-server`
+[ -z "$http_proxy" ] && export http_proxy=http://`__mdw_conf http-proxy`/
[ -z "$ftp_proxy" ] && export ftp_proxy=$http_proxy
export XUSERFILESEARCHPATH="$HOME/.Xapps/%N:/usr/lib/X11/%T/%N%S"