|
@@ -16,12 +16,28 @@
|
|
|
# rvm and rbenv plugins also provide this alias
|
|
|
alias rubies='chruby'
|
|
|
|
|
|
+
|
|
|
_homebrew-installed() {
|
|
|
whence brew &> /dev/null
|
|
|
+ _xit=$?
|
|
|
+ if [ $_xit -eq 0 ];then
|
|
|
+ # ok , we have brew installed
|
|
|
+ # speculatively we check default brew prefix
|
|
|
+ if [ -h /usr/local/opt/chruby ];then
|
|
|
+ _brew_prefix="/usr/local/opt/chruby"
|
|
|
+ else
|
|
|
+ # ok , it is not default prefix
|
|
|
+ # this call to brew is expensive ( about 400 ms ), so at least let's make it only once
|
|
|
+ _brew_prefix=$(brew --prefix chruby)
|
|
|
+ fi
|
|
|
+ return 0
|
|
|
+ else
|
|
|
+ return $_xit
|
|
|
+ fi
|
|
|
}
|
|
|
|
|
|
_chruby-from-homebrew-installed() {
|
|
|
- [ -r $(brew --prefix chruby) ] &> /dev/null
|
|
|
+ [ -r _brew_prefix ] &> /dev/null
|
|
|
}
|
|
|
|
|
|
_ruby-build_installed() {
|
|
@@ -64,8 +80,8 @@ _chruby_dirs() {
|
|
|
}
|
|
|
|
|
|
if _homebrew-installed && _chruby-from-homebrew-installed ; then
|
|
|
- source $(brew --prefix chruby)/share/chruby/chruby.sh
|
|
|
- source $(brew --prefix chruby)/share/chruby/auto.sh
|
|
|
+ source $_brew_prefix/share/chruby/chruby.sh
|
|
|
+ source $_brew_prefix/share/chruby/auto.sh
|
|
|
_chruby_dirs
|
|
|
elif [[ -r "/usr/local/share/chruby/chruby.sh" ]] ; then
|
|
|
source /usr/local/share/chruby/chruby.sh
|