mirror of
https://github.com/envmodules/modules.git
synced 2026-06-14 00:42:43 +08:00
Update initialization scripts to make the code for the silent_shell_debug mechanism always defined there.
95 lines
3.2 KiB
Plaintext
95 lines
3.2 KiB
Plaintext
unset _mlshdbg;
|
|
# disable shell debugging for the run of this init file
|
|
if [ "${MODULES_SILENT_SHELL_DEBUG:-0}" = '1' ]; then
|
|
# immediately disable debugging to echo the less number of line possible
|
|
case "$-" in
|
|
*v*x*) set +vx; _mlshdbg='vx' ;;
|
|
*v*) set +v; _mlshdbg='v' ;;
|
|
*x*) set +x; _mlshdbg='x' ;;
|
|
*) _mlshdbg='' ;;
|
|
esac;
|
|
fi;
|
|
|
|
# define modules runtine quarantine configuration
|
|
@setquarvars@export MODULES_RUN_QUARANTINE='@RUN_QUARANTINE@'
|
|
@setquarvars@@export RUNENV_VAR='RUNENV_VAL'@
|
|
@notsetquarvars@#export MODULES_RUN_QUARANTINE='ENVVARNAME'
|
|
@notsetquarvars@
|
|
# setup quarantine if defined
|
|
unset _mlre _mlIFS;
|
|
if [ -n "${IFS+x}" ]; then
|
|
_mlIFS=$IFS;
|
|
fi;
|
|
IFS=' ';
|
|
for _mlv in ${=MODULES_RUN_QUARANTINE:-}; do
|
|
if [ "${_mlv}" = "${_mlv##*[!A-Za-z0-9_]}" -a "${_mlv}" = "${_mlv#[0-9]}" ]; then
|
|
if [ -n "`eval 'echo ${'$_mlv'+x}'`" ]; then
|
|
_mlre="${_mlre:-}__MODULES_QUAR_${_mlv}='`eval 'echo ${'$_mlv'}'`' ";
|
|
fi;
|
|
_mlrv="MODULES_RUNENV_${_mlv}";
|
|
_mlre="${_mlre:-}${_mlv}='`eval 'echo ${'$_mlrv':-}'`' ";
|
|
fi;
|
|
done;
|
|
if [ -n "${_mlre:-}" ]; then
|
|
_mlre="eval ${_mlre}__MODULES_QUARANTINE_SET=1 ";
|
|
fi;
|
|
|
|
# define module command and surrounding initial environment (default value
|
|
# for MODULESHOME, MODULEPATH, LOADEDMODULES and parse of init config files)
|
|
_mlcode=`${^^=_mlre:-}@TCLSH@ @libexecdir@/modulecmd.tcl zsh autoinit`
|
|
_mlret=$?
|
|
|
|
# clean temp variables used to setup quarantine
|
|
if [ -n "${_mlIFS+x}" ]; then
|
|
IFS=$_mlIFS;
|
|
unset _mlIFS;
|
|
else
|
|
unset IFS;
|
|
fi;
|
|
unset _mlre _mlv _mlrv
|
|
|
|
# no environment alteration if the above autoinit command failed
|
|
if [ $_mlret -eq 0 ]; then
|
|
eval "$_mlcode"
|
|
|
|
# setup FPATH to put module completion at hand in case zsh completion enabled
|
|
if [[ ! ":$FPATH:" =~ ':@initdir@/zsh-functions:' ]]; then
|
|
FPATH=@initdir@/zsh-functions${FPATH:+:}$FPATH
|
|
export FPATH
|
|
fi
|
|
@setbinpath@
|
|
@setbinpath@ if [[ ! ":$PATH:" =~ ':@bindir@:' ]]; then
|
|
@setbinpath@@prependbinpath@ PATH=@bindir@${PATH:+:}$PATH
|
|
@setbinpath@@appendbinpath@ PATH=$PATH${PATH:+:}@bindir@
|
|
@setbinpath@ export PATH
|
|
@setbinpath@ fi
|
|
@setmanpath@
|
|
@setmanpath@ # initialize MANPATH if empty (zsh defines MANPATH empty by default) with a
|
|
@setmanpath@ # value that preserves manpath system configuration even after addition of
|
|
@setmanpath@ # paths to this variable by modulefiles
|
|
@setmanpath@ if [ ! -n "${MANPATH:+x}" ]; then
|
|
@setmanpath@ MANPATH=:
|
|
@setmanpath@ export MANPATH
|
|
@setmanpath@ fi
|
|
@setmanpath@@usemanpath@ if [[ ! ":`manpath 2>/dev/null`:" =~ ':@mandir@:' ]]; then
|
|
@setmanpath@@notusemanpath@ if [[ ! ":$MANPATH:" =~ ':@mandir@:' ]]; then
|
|
@setmanpath@ if [ "$MANPATH" = ':' ] || [ "$MANPATH" = '' ]; then
|
|
@setmanpath@ _mlpathsep=''
|
|
@setmanpath@ else
|
|
@setmanpath@ _mlpathsep=:
|
|
@setmanpath@ fi
|
|
@setmanpath@@prependmanpath@ MANPATH=@mandir@$_mlpathsep$MANPATH
|
|
@setmanpath@@appendmanpath@ MANPATH=$MANPATH$_mlpathsep@mandir@
|
|
@setmanpath@ export MANPATH
|
|
@setmanpath@ unset _mlpathsep
|
|
@setmanpath@ fi
|
|
fi
|
|
|
|
unset _mlcode _mlret
|
|
|
|
# restore shell debugging options if disabled
|
|
if [ -n "${_mlshdbg:-}" ]; then
|
|
set -$_mlshdbg;
|
|
unset _mlshdbg;
|
|
fi;
|