# only redirect module from stderr to stdout in interactive mode to
# avoid breaking non interactive session (scp, sftp, etc) case "$-" in
# /usr/lib/modulecmd.tcl sh $*`; }  # set module
# command in accordance with active version  if [
# "$MODULES_USE_COMPAT_VERSION" = '1' ]; then 
# _moduleraw() { eval `/usr/lib/modulecmd-compat sh $*`; }
#  else  _moduleraw() { eval `/usr/bin/tclsh
# /usr/lib/modulecmd.tcl sh $*`; }  fi module() {
# _moduleraw $* 2>&1 ; } if sh is bash, export functions to get them
# defined in sub-shells if [ "${BASH:-}" != '' ]; then export -f
# eval `/usr/bin/tclsh /usr/lib/modulecmd.tcl sh $*`; } 
# if [ "$MODULES_USE_COMPAT_VERSION" = '1' ]; then 
# module() { eval `/usr/lib/modulecmd-compat sh $*`; }
#  else  module() { eval `/usr/bin/tclsh
# /usr/lib/modulecmd.tcl sh $*`; }  fi if [
# "${BASH:-}" != '' ]; then export -f module fi esac

# define function to switch between C and Tcl versions of Modules
switchml() {
   swfound=1
   if [ "$MODULES_USE_COMPAT_VERSION" = '1' ]; then
      swname='main'
      if [ -e /usr/lib/modulecmd.tcl ]; then
         swfound=0
         unset MODULES_USE_COMPAT_VERSION
      fi
   else
      swname='compatibility'
      if [ -e /usr/lib/modulecmd-compat ]; then
         swfound=0
         MODULES_USE_COMPAT_VERSION=1; export MODULES_USE_COMPAT_VERSION
      fi
   fi

   # switch version only if command found
   if [ $swfound -eq 0 ]; then
      echo "Switching to Modules $swname version"
      . /usr/init/sh
   else
      echo "Cannot switch to Modules $swname version, command not found"
      return 1
   fi
}
if [ "${BASH:-}" != '' ]; then
   export -f switchml
fi

# setup ENV variables to get module defined in sub-shells (works for 'sh'
# and 'ksh' in interactive mode and 'sh' (zsh-compat), 'bash' and 'ksh'
# (zsh-compat) in non-interactive mode.
ENV=/usr/init/profile.sh; export ENV
BASH_ENV=/usr/init/bash; export BASH_ENV

MODULESHOME=/usr; export MODULESHOME

case ":$PATH:" in
   *:/usr/bin:*) ;;
   *) PATH=/usr/bin${PATH:+:}$PATH; export PATH
esac

manpath=`manpath 2>/dev/null`
case ":$manpath:" in
   *:/usr/share/man:*) ;;
   *) MANPATH=/usr/share/man${manpath:+:}$manpath; export MANPATH
esac

if [ "${MODULEPATH:-}" = '' ]; then
   if [ -r /usr/init/.modulespath ]; then
      MODULEPATH=`sed -n 's/[ 	#].*$//; /./H; $ { x; s/^\n//; s/\n/:/g; p; }' \
         /usr/init/.modulespath`; export MODULEPATH
   else
      MODULEPATH=; export MODULEPATH
   fi
fi

if [ "${LOADEDMODULES:-}" = '' ]; then
   LOADEDMODULES=; export LOADEDMODULES
fi

# load modulerc only if module environment is empty
if [ "$MODULES_USE_COMPAT_VERSION" != '1' -a -r /usr/init/modulerc -a "$MODULEPATH" = '' -a "$LOADEDMODULES" = '' ]; then
   module source /usr/init/modulerc
fi
