使用
运行Boxen之后package { 'totalterminal':
provider => 'brewcask',
install_options => ['--appdir=/Applications'],
}
指令,我的系统Ruby无法加载库,包括内置类似Set,渲染命令,如ruby
,irb
,bundle
,gem
等,完全无法使用和Boxen无法运行:
mba2:~ nrser$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin
mba2:~ nrser$ which ruby
/usr/bin/ruby
mba2:~ nrser$ ruby -v
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13]
mba2:~ nrser$ ruby -e ''
Could not find mini_portile-0.5.3 in any of the sources
Run `bundle install` to install missing gems.
irb
,gem
和bundle
都会立即失败并出现同样的错误。
如果我把RBenv的东西放回路径中(通过寻找/opt/boxen/env.sh
),我得到一个更奇怪的失败,Ruby找不到Set模块:
mba2:~ nrser$ echo $PATH
bin:/opt/boxen/rbenv/shims:/opt/boxen/rbenv/bin:/opt/boxen/rbenv/plugins/ruby-build/bin:node_modules/.bin:/opt/boxen/nodenv/shims:/opt/boxen/nodenv/bin:/opt/boxen/bin:/opt/boxen/homebrew/bin:/opt/boxen/homebrew/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin
mba2:~ nrser$ which ruby
/opt/boxen/rbenv/shims/ruby
mba2:~ nrser$ ruby -v
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13]
mba2:~ nrser$ ruby -e ''
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- set (LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/index.rb:1:in `<top (required)>'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/source/rubygems.rb:168:in `fetch_specs'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/source/rubygems.rb:66:in `specs'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/lazy_specification.rb:53:in `__materialize__'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/spec_set.rb:88:in `block in materialize'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/spec_set.rb:85:in `map!'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/spec_set.rb:85:in `materialize'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/definition.rb:133:in `specs'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/definition.rb:178:in `specs_for'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/definition.rb:167:in `requested_specs'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/environment.rb:18:in `requested_specs'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/runtime.rb:13:in `setup'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler.rb:119:in `setup'
from /Library/Ruby/Gems/2.0.0/gems/bundler-1.5.3/lib/bundler/setup.rb:7:in `<top (required)>'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
这是第二个发生这种情况的方框,尽管两个方框都使用非常相似的清单。两者都在OSX 10.9.3上。
我的猜测是,这与TotalTerminal安装程序在安装期间重新启动Terminal应用程序有关,终止了Boxen / Puppet。
有没有人知道出了什么问题,或者我如何修复我的Ruby?
我对通过Boxen安装TotalTerminal并不是那么在意,但对我来说基本上没有Ruby是一台破碎的机器。