diff --git a/dist/index.js b/dist/index.js index 23afb2715..cc42191ca 100644 --- a/dist/index.js +++ b/dist/index.js @@ -976,6 +976,8 @@ async function run() { const engineVersions = installer.getAvailableVersions(platform, engine) const ruby = validateRubyEngineAndVersion(platform, engineVersions, engine, version) + createGemRC() + const [rubyPrefix, newPathEntries] = await installer.install(platform, ruby) setupPath(ruby, newPathEntries) @@ -1040,6 +1042,13 @@ function validateRubyEngineAndVersion(platform, engineVersions, engine, version) return engine + '-' + version } +function createGemRC() { + const gemrc = path.join(os.homedir(), '.gemrc') + if (!fs.existsSync(gemrc)) { + fs.writeFileSync(gemrc, `gem: --no-document${os.EOL}`) + } +} + function setupPath(ruby, newPathEntries) { const originalPath = process.env['PATH'].split(path.delimiter) let cleanPath = originalPath.filter(entry => !/\bruby\b/i.test(entry)) @@ -3415,7 +3424,7 @@ function getAvailableVersions(platform, engine) { async function install(platform, ruby) { const rubyPrefix = await downloadAndExtract(platform, ruby) - let newPathEntries; + let newPathEntries if (ruby.startsWith('rubinius')) { newPathEntries = [path.join(rubyPrefix, 'bin'), path.join(rubyPrefix, 'gems', 'bin')] } else { diff --git a/index.js b/index.js index 524ba4a98..1cda431ee 100644 --- a/index.js +++ b/index.js @@ -18,6 +18,8 @@ export async function run() { const engineVersions = installer.getAvailableVersions(platform, engine) const ruby = validateRubyEngineAndVersion(platform, engineVersions, engine, version) + createGemRC() + const [rubyPrefix, newPathEntries] = await installer.install(platform, ruby) setupPath(ruby, newPathEntries) @@ -82,6 +84,13 @@ function validateRubyEngineAndVersion(platform, engineVersions, engine, version) return engine + '-' + version } +function createGemRC() { + const gemrc = path.join(os.homedir(), '.gemrc') + if (!fs.existsSync(gemrc)) { + fs.writeFileSync(gemrc, `gem: --no-document${os.EOL}`) + } +} + function setupPath(ruby, newPathEntries) { const originalPath = process.env['PATH'].split(path.delimiter) let cleanPath = originalPath.filter(entry => !/\bruby\b/i.test(entry)) diff --git a/ruby-builder.js b/ruby-builder.js index 819dcf07e..773be9aef 100644 --- a/ruby-builder.js +++ b/ruby-builder.js @@ -14,7 +14,7 @@ export function getAvailableVersions(platform, engine) { export async function install(platform, ruby) { const rubyPrefix = await downloadAndExtract(platform, ruby) - let newPathEntries; + let newPathEntries if (ruby.startsWith('rubinius')) { newPathEntries = [path.join(rubyPrefix, 'bin'), path.join(rubyPrefix, 'gems', 'bin')] } else {