#!/usr/bin/env bash # Base is a collection of general files + commonly included setup functions. #duplicated from scripts/rvm - rare reload issue __rvm_has_opt() { if # pre-gnu [[ -n "${ZSH_VERSION:-}" ]] then setopt | GREP_OPTIONS="" \command \grep "^${1:-}$" >/dev/null 2>&1 || return $? elif # mksh [[ -n "${KSH_VERSION:-}" ]] then set +o | GREP_OPTIONS="" \command \grep "-o ${1:-}$" >/dev/null 2>&1 || return $? elif # bash [[ -n "${BASH_VERSION:-}" ]] then [[ ":${SHELLOPTS:-}:" == *":${1:-}:"* ]] || return $? else # what is this?! return 1 fi } if __rvm_has_opt "errexit" then rvm_stored_errexit=1 fi set +e # duplication marker jkdfkdfngjdjkfngjkdfngjkd if (( ${rvm_trace_flag:-0} == 1 )) then if [[ -n "${BASH_VERSION:-}" ]] then export PS4="+ \$(__rvm_date \"+%s.%N\" 2>/dev/null) \${BASH_SOURCE##\${rvm_path:-}} : \${FUNCNAME[0]:+\${FUNCNAME[0]}()} \${LINENO} > " elif [[ -n "${ZSH_VERSION:-}" ]] then export PS4="+ %* %F{red}%x:%I %F{green}%N:%i%F{white} %_" fi set -o xtrace fi export __array_start rvm_path >/dev/null # # Setup environment parameters. # if [[ -n "${ZSH_VERSION:-}" ]] then __array_start=1 else __array_start=0 fi if (( ${rvm_ignore_rvmrc:=0} == 0 )) then [[ -n "${rvm_stored_umask:-}" ]] || export rvm_stored_umask=$(umask) rvm_rvmrc_files=("/etc/rvmrc" "$HOME/.rvmrc") if [[ -n "${rvm_prefix:-}" ]] && ! [[ "$HOME/.rvmrc" -ef "${rvm_prefix}/.rvmrc" ]] then rvm_rvmrc_files+=( "${rvm_prefix}/.rvmrc" ) fi for rvmrc in "${rvm_rvmrc_files[@]}" do if [[ -f "$rvmrc" ]] then # pre-gnu if GREP_OPTIONS="" \command \grep '^\s*rvm .*$' "$rvmrc" >/dev/null 2>&1 then printf "%b" " Error: $rvmrc is for rvm settings only. rvm CLI may NOT be called from within $rvmrc. Skipping the loading of $rvmrc" return 1 else source "$rvmrc" fi fi done unset rvm_rvmrc_files fi # duplication marker jdgkjnfnkjdngjkfnd4fd export rvm_path if [[ -z "${rvm_path:-}" ]] then if [[ -n "${BASH_SOURCE:-$_}" && -f "${BASH_SOURCE:-$_}" ]] then rvm_path="${BASH_SOURCE:-$_}" rvm_path="$( \command \cd "${rvm_path%/scripts/base}">/dev/null; pwd )" elif (( UID == 0 )) && [[ -d "/usr/local/rvm" ]] then rvm_path="/usr/local/rvm" elif [[ -d "${HOME}/.rvm" ]] then rvm_path="${HOME}/.rvm" elif [[ -d "/usr/local/rvm" ]] then rvm_path="/usr/local/rvm" else echo "Can't find rvm install!" 1>&2 ; exit 1 fi fi true ${rvm_scripts_path:="$rvm_path/scripts"} # Load the general scripts. # Use rvm_base_except="selector", for example, to override the loading. load_rvm_scripts() { \typeset -a scripts scripts=( selector logging support utility init cleanup env rvmrc install environment gemset checksum list ) source "${rvm_scripts_path}/initialize" for entry in ${scripts[@]} do [[ " ${rvm_base_except:-} " == *" $entry "* ]] || source "${rvm_scripts_path}/functions/$entry" || return $? done unset rvm_base_except } load_rvm_scripts