module Bundler

def tmp_home_path(login, warning)

def tmp_home_path(login, warning)
  login ||= "unknown"
  path = Pathname.new(Dir.tmpdir).join("bundler", "home")
  SharedHelpers.filesystem_access(path) do |tmp_home_path|
    unless tmp_home_path.exist?
      tmp_home_path.mkpath
      tmp_home_path.chmod(0o777)
    end
    tmp_home_path.join(login).tap(&:mkpath)
  end
rescue => e
  raise e.exception("#{warning}\nBundler also failed to create a temporary home directory at `#{path}':\n#{e}")
end