Type:
Class
Constants:
ENV_PATHS : %w[/usr/bin/env /bin/env]

Paths where env(1) might live. Some systems are broken and have it in /bin

CHDIR_MUTEX : Mutex.new # :nodoc:

The builder shells-out to run various commands after changing the directory. This means multiple installations cannot be allowed to build extensions in parallel as they may change each other's directories leading to broken extensions or failed installations.

The installer installs the files contained in the .gem into the Gem.home.

Gem::Installer does the work of putting files in all the right places on the filesystem including unpacking the gem into its gem dir, installing the gemspec in the specifications dir, storing the cached gem in the cache dir, and installing either wrappers or symlinks for executables.

The installer invokes pre and post install hooks. Hooks can be added either through a rubygems_plugin.rb file in an installed gem or via a rubygems/defaults/#{RUBY_ENGINE}.rb or rubygems/defaults/operating_system.rb file. See Gem.pre_install and Gem.post_install for details.

verify_gem_home
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

verify_gem_home(unpack = false) Instance Public methods DOC: Missing docs or

2025-01-10 15:47:30
app_script_text
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

app_script_text(bin_file_name) Instance Public methods Return the text for an

2025-01-10 15:47:30
extension_build_error
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

extension_build_error(build_dir, output, backtrace = nil) Instance Public methods Logs

2025-01-10 15:47:30
installation_satisfies_dependency?
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

installation_satisfies_dependency?(dependency) Instance Public methods True

2025-01-10 15:47:30
ensure_loadable_spec
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

ensure_loadable_spec() Instance Public methods Ensures the

2025-01-10 15:47:30
pre_install_checks
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

pre_install_checks() Instance Public methods Performs various checks before

2025-01-10 15:47:30
install
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

install() Instance Public methods Installs the gem and returns a loaded

2025-01-10 15:47:30
windows_stub_script
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

windows_stub_script(bindir, bin_file_name) Instance Public methods return the

2025-01-10 15:47:30
write_cache_file
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

write_cache_file() Instance Public methods Writes the .gem file to the cache

2025-01-10 15:47:30
write_build_info_file
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Installer

write_build_info_file() Instance Public methods Writes the file containing the

2025-01-10 15:47:30