# /etc/profile for SuSE Linux
#
# PLEASE DO NOT CHANGE /etc/profile. There are chances that your changes
# will be lost during system upgrades. Instead use /etc/profile.local for
# your local settings, favourite global aliases, VISUAL and EDITOR
# variables, etc ...

#
# Check which shell is reading this file
#
if test -f /proc/mounts ; then
  case "`/bin/ls -l /proc/$$/exe`" in
    */bash)	is=bash ;;
    */rbash)	is=bash ;;
    */ash)	is=ash  ;;
    */ksh)	is=ksh  ;;
    */zsh)	is=zsh  ;;
    */*)	is=sh   ;;
  esac
else
  is=sh
fi

#
# Initialize terminal
#
tty=`tty 2> /dev/null`
test $? -ne 0 && tty=""
if test -O "$tty" -a -n "$PS1"; then
    test -z "${TERM}"		&& { TERM=linux; export TERM; }
    test "${TERM}" = "unknown"	&& { TERM=linux; export TERM; }
    # Do not change settings on local line if connected to remote
    if test -z "$SSH_TTY" ; then
	test -x /bin/stty     && /bin/stty sane cr0 pass8 dec
	test -x /usr/bin/tset && /usr/bin/tset -I -Q
    fi
    # on iSeries virtual console, detect screen size and terminal
    if test -d /proc/iSeries -a \( "$tty" = "/dev/tty1" -o "$tty" = "/dev/console" \) ; then
        LINES=24; COLUMNS=80; export LINES COLUMNS TERM
        test -x /bin/initviocons && { eval `/bin/initviocons -e`; }
    fi
fi
unset TERMCAP

#
# Time until a complete key sequence must have arrived
#
#ESCDELAY=2000
#export ESCDELAY

#
# The user file-creation mask
#
umask 022

#
# ksh/ash soemtimes do not know
#
test -z "$UID"  &&  UID=`id -ur 2> /dev/null`
test -z "$EUID" && EUID=`id -u  2> /dev/null`
test -z "$USER" && USER=`id -un 2> /dev/null`
test -z "$MAIL" && MAIL=/var/spool/mail/$USER
test -z "$HOST" && HOST=`hostname -s 2> /dev/null`
test -z "$CPU"  &&  CPU=`uname -m 2> /dev/null`
test -z "$HOSTNAME" && HOSTNAME=`hostname 2> /dev/null`
test -z "$LOGNAME"  && LOGNAME=$USER
case "$CPU" in
    i?86) HOSTTYPE=i386   ;;
    *)    HOSTTYPE=${CPU} ;;
esac
  OSTYPE=linux
MACHTYPE=${CPU}-suse-${OSTYPE}
# Do NOT export UID, EUID, USER, MAIL, and LOGNAME
export HOST CPU HOSTNAME HOSTTYPE OSTYPE MACHTYPE

#
# Adjust some size limits (see bash(1) -> ulimit)
# Note: You may use /etc/initscript instead to set up ulimits and your PATH.
# Setting of ulimits are skipped if /etc/initscript (ulimit package) exists.
if test "$is" != "ash" -a ! -r /etc/initscript; then
    #ulimit -c 20000		# only core-files less than 20 MB are written
    #ulimit -d 15000		# max data size of a program is 15 MB
    #ulimit -s 15000		# max stack size of a program is 15 MB
    #ulimit -m 30000		# max resident set size is 30 MB

    ulimit -Sc 0		# don't create core files
    ulimit -Sd $(ulimit -Hd)
    ulimit -Ss $(ulimit -Hs)
    ulimit -Sm $(ulimit -Hm)
fi

#
# Make path more comfortable
#
if test -z "$PROFILEREAD" ; then
    PATH=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin
    if test "$HOME" != "/" ; then
	for dir in $HOME/bin/$CPU $HOME/bin ; do
	    test -d $dir && PATH=$dir:$PATH
	done
    fi
    test "$UID" = 0 && PATH=/sbin:/usr/sbin:/usr/local/sbin:$PATH
    for dir in  /var/lib/dosemu \
		/usr/games \
		/opt/bin \
		/opt/gnome/bin \
		/opt/kde3/bin \
		/opt/kde2/bin \
		/opt/kde/bin \
		/usr/openwin/bin \
		/opt/cross/bin
    do
	test -d $dir && PATH=$PATH:$dir
    done
    unset dir
    export PATH
fi

#
# Many programs using readline library for line editing
# should know about this (e.g. bash)
#
if test -z "$INPUTRC" ; then
    INPUTRC=/etc/inputrc
    test -s $HOME/.inputrc && INPUTRC=$HOME/.inputrc
    export INPUTRC
fi

#
# Most bourn shell clones knows about this
#
HISTSIZE=1000
export HISTSIZE

#
# Set some environment variables for TeX/LaTeX
#
if test -n "$TEXINPUTS" ; then
    TEXINPUTS=":$TEXINPUTS:$HOME/.TeX:/usr/share/doc/.TeX:/usr/doc/.TeX"
else
    TEXINPUTS=":$HOME/.TeX:/usr/share/doc/.TeX:/usr/doc/.TeX"
fi
export TEXINPUTS

#
# Configure the default pager on SuSE Linux
#
if test -z "$LESS" ; then
    LESS="-M -I"
    LESSKEY=/etc/lesskey.bin
    LESSOPEN="lessopen.sh %s"
    LESSCLOSE="lessclose.sh %s %s"
    LESS_ADVANCED_PREPROCESSOR="no"
    PAGER=less
    export LESSOPEN LESSCLOSE LESS LESSKEY PAGER LESS_ADVANCED_PREPROCESSOR
fi

#
# Minicom 
#
MINICOM="-c on"
export MINICOM

#
# Current manpath
#
unset MANPATH
MANPATH=`test -x /usr/bin/manpath && /usr/bin/manpath -q`
export MANPATH

#
# Some applications do not handle the XAPPLRESDIR environment properly,
# when it contains more than one directory. More than one directory only
# makes sense if you have a client with /usr mounted via nfs and you want
# to configure applications machine dependent. Uncomment the lines below
# if you want this.
#
#XAPPLRESDIR="$XAPPLRESDIR:/var/X11R6/app-defaults:/usr/X11R6/lib/X11/app-defaults"
#export XAPPLRESDIR

#
# Set INFOPATH to tell xemacs where he can find the info files
#
INFODIR=/usr/local/info:/usr/share/info:/usr/info
INFOPATH=$INFODIR
export INFODIR INFOPATH

#
# These settings are recommended for old motif applications
#
XKEYSYMDB=/usr/X11R6/lib/X11/XKeysymDB
export XKEYSYMDB
XNLSPATH=/usr/X11R6/lib/X11/nls
export XNLSPATH

if test -s /etc/nntpserver ; then
    read NNTPSERVER < /etc/nntpserver
    export NNTPSERVER
fi

if test -s /etc/organization ; then
    read ORGANIZATION < /etc/organization
    export ORGANIZATION
fi

#
# Midnight Commander needs this to run in color mode
#
COLORTERM=1
export COLORTERM

#
# For RCS
#
#export VERSION_CONTROL=numbered

#
# Source the files generated by SuSEconfig
#
if test -z "$PROFILEREAD" ; then
    test -r /etc/profile.d/sh.ssh   && . /etc/profile.d/sh.ssh
    test -r /etc/SuSEconfig/profile && . /etc/SuSEconfig/profile
    if test -z "$SSH_SENDS_LOCALE" ; then
        if test -r /etc/sysconfig/language -a -r /etc/profile.d/sh.utf8 ; then
	    tmp="$(. /etc/sysconfig/language; echo $AUTO_DETECT_UTF8)"
	    test "$tmp" = "yes" && . /etc/profile.d/sh.utf8
	    unset tmp
	fi
    fi
fi

#
# Source profile extensions for certain packages
#
if test -d /etc/profile.d -a -z "$PROFILEREAD" ; then
    for s in /etc/profile.d/*.sh ; do
	test -r $s && . $s
    done
    unset s
fi

if test "$is" != "ash" ; then
    #
    # And now let's see if there is a local profile
    # (for options defined by your sysadmin, not SuSE Linux)
    #
    test -s /etc/profile.local && . /etc/profile.local
fi

#
# Avoid overwriting user settings if called twice
#
if test -z "$PROFILEREAD" ; then
    readonly PROFILEREAD=true
    export PROFILEREAD
fi

#
# System BASH specials, maybe also good for other shells
#
test -r /etc/bash.bashrc   && . /etc/bash.bashrc
if test "$is" = "bash" -a -z "$_HOMEBASHRC" ; then
    # loop detection
    readonly _HOMEBASHRC=true
    test -r $HOME/.bashrc  && . $HOME/.bashrc
fi

#
# KSH specials
#
if test "$is" = "ksh" ; then
    test -r /etc/ksh.kshrc && . /etc/ksh.kshrc
fi
if test "$is" = "ksh"  -a -z "$_HOMEKSHRC"  ; then
    # loop detection
    readonly _HOMEKSHRC=true
    test -r $HOME/.kshrc   && . $HOME/.kshrc
fi

#
# End of /etc/profile
#
