Class: Bundler::Source::Path::Installer
- Inherits:
-
GemInstaller
- Object
- Gem::Installer
- GemInstaller
- Bundler::Source::Path::Installer
- Defined in:
- lib/bundler/source.rb
Instance Method Summary collapse
- #generate_bin ⇒ Object
-
#initialize(spec, options = {}) ⇒ Installer
constructor
A new instance of Installer.
Methods inherited from GemInstaller
Constructor Details
#initialize(spec, options = {}) ⇒ Installer
Returns a new instance of Installer.
389 390 391 392 393 394 395 396 |
# File 'lib/bundler/source.rb', line 389 def initialize(spec, = {}) @spec = spec @bin_dir = Bundler.requires_sudo? ? "#{Bundler.tmp}/bin" : "#{Bundler.rubygems.gem_dir}/bin" @gem_dir = Bundler.rubygems.path(spec.full_gem_path) @wrappers = [:wrappers] || true @env_shebang = [:env_shebang] || true @format_executable = [:format_executable] || false end |
Instance Method Details
#generate_bin ⇒ Object
398 399 400 401 402 403 404 405 406 407 408 409 410 411 |
# File 'lib/bundler/source.rb', line 398 def generate_bin return if spec.executables.nil? || spec.executables.empty? if Bundler.requires_sudo? FileUtils.mkdir_p("#{Bundler.tmp}/bin") unless File.exist?("#{Bundler.tmp}/bin") end super if Bundler.requires_sudo? Bundler.mkdir_p "#{Bundler.rubygems.gem_dir}/bin" spec.executables.each do |exe| Bundler.sudo "cp -R #{Bundler.tmp}/bin/#{exe} #{Bundler.rubygems.gem_dir}/bin/" end end end |