/usr/bin/multiruby is in ruby-zentest 4.11.0-2.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76  | #!/usr/bin/ruby
require 'multiruby'
root_dir = Multiruby.root_dir
def setenv dir
  bin  = "#{dir}/bin"
  gem  = Dir["#{dir}/lib/ruby/gems/*"].first
  ENV['PATH'] = bin + File::PATH_SEPARATOR + ENV['PATH']
  ENV['GEM_HOME'] = gem
  ENV['GEM_PATH'] = gem
end
##
# multiruby -1 1.8.7 ruby_args...
if ARGV.first == "-1" then
  ARGV.shift
  vers = Dir["#{root_dir}/install/#{ARGV.shift}*"]
  abort "ambiguous version: #{vers.map { |p| File.basename p }.inspect}" if
    vers.size != 1
  dir = vers.first
  setenv dir
  exec "#{dir}/bin/ruby", *ARGV
end
versions = Multiruby.build_and_install
versions = ENV['VERSIONS'].split(/:/) if ENV.has_key? 'VERSIONS'
if ENV.has_key? 'EXCLUDED_VERSIONS' then
  excludes = Regexp.union(*ENV['EXCLUDED_VERSIONS'].split(/:/))
  versions = versions.delete_if { |v| v =~ excludes }
end
# safekeep original PATH
original_path = ENV['PATH']
results = {}
versions.each do |version|
  dir  = "#{root_dir}/install/#{version}"
  ruby = "#{dir}/bin/ruby"
  ruby.sub!(/bin.ruby/, 'bin/rbx') if version =~ /rubinius/
  puts
  puts "VERSION = #{version}"
  cmd = [ruby, ARGV].flatten.map { |s| s =~ /\"/ ? "'#{s}'" : s }.join(' ')
  cmd.sub!(/#{ENV['HOME']}/, '~')
  puts "CMD     = #{cmd}"
  puts
  setenv dir
  system ruby, *ARGV
  puts
  puts "RESULT = #{$?}"
  results[version] = $?
  # restore the path to original state
  ENV['PATH'] = original_path
end
passed, failed = results.keys.partition { |v| results[v] == 0 }
puts
puts "TOTAL RESULT = #{failed.size} failures out of #{results.size}"
puts
puts "Passed: #{passed.join(", ")}"
puts "Failed: #{failed.join(", ")}"
exit failed.size
 |