1NIX_LISP_ASDF="@asdf@" 2 3CL_SOURCE_REGISTRY="@asdf@/lib/common-lisp/asdf/:@asdf@/lib/common-lisp/asdf/uiop/" 4 5addASDFPaths () { 6 for j in "$1"/lib/common-lisp/*; do 7 if [ -d "$j" ]; then 8 CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY:$j/" 9 fi 10 done 11} 12 13setLisp () { 14 if [ -z "$NIX_LISP_COMMAND" ]; then 15 for j in "$1"/bin/*; do 16 case "$(basename "$j")" in 17 sbcl) NIX_LISP_COMMAND="$j" ;; 18 ecl) NIX_LISP_COMMAND="$j" ;; 19 clisp) NIX_LISP_COMMAND="$j" ;; 20 esac 21 done 22 fi 23 if [ -z "$NIX_LISP" ]; then 24 NIX_LISP="${NIX_LISP_COMMAND##*/}" 25 fi 26} 27 28collectNixLispLDLP () { 29 if echo "$1/lib"/lib*.so* | grep . > /dev/null; then 30 export NIX_LISP_LD_LIBRARY_PATH="$NIX_LISP_LD_LIBRARY_PATH${NIX_LISP_LD_LIBRARY_PATH:+:}$1/lib" 31 fi 32} 33 34export NIX_LISP_COMMAND NIX_LISP CL_SOURCE_REGISTRY NIX_LISP_ASDF 35 36envHooks+=(addASDFPaths setLisp collectNixLispLDLP) 37 38mkdir -p "$HOME"/.cache/common-lisp || HOME="$TMP/.temp-$USER-home" 39mkdir -p "$HOME"/.cache/common-lisp