def install
spec_dir = File.join @install_dir, 'specifications'
source_index = Gem::SourceIndex.from_gems_in spec_dir
@gems_to_install.each do |spec|
last = spec == @gems_to_install.last
next if source_index.any? { |n,_| n == spec.full_name } and not last
say "Installing gem #{spec.full_name}" if Gem.configuration.really_verbose
_, source_uri = @specs_and_sources.assoc spec
local_gem_path = download spec, source_uri
inst = Gem::Installer.new local_gem_path,
:env_shebang => @env_shebang,
:force => @force,
:format_executable => @format_executable,
:ignore_dependencies => @ignore_dependencies,
:install_dir => @install_dir,
:security_policy => @security_policy,
:wrappers => @wrappers
spec = inst.install
@installed_gems << spec
end
end