Class: Gem2exe::Cli::SetupCommand

Inherits:
Clamp::Command
  • Object
show all
Defined in:
lib/gem2exe/cli/setup_command.rb

Instance Method Summary collapse

Instance Method Details

#executeObject



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
# File 'lib/gem2exe/cli/setup_command.rb', line 8

def execute
  $stderr.puts "installing dependencies ..."

  if Gem2exe.platform == "darwin"
    runner_opts = {
      shell: true, output: true, prepend: {
        stdboth: "  brew: "
      }
    }

    Runner.run! "brew install squashfs || brew upgrade squashfs || true", runner_opts
    Runner.run! "brew install openssl || brew upgrade openssl || true", runner_opts
    Runner.run! "curl -sL https://curl.haxx.se/ca/cacert.pem > /usr/local/etc/openssl/cacert.pem", runner_opts
  else
    runner_opts = {
      sudo: sudo?, shell: true, output: true, prepend: {
        stdboth: "  apt-get: "
      }
    }
    $stderr.puts "installing dependencies with apt-get ..."
    Runner.run! "apt-get update", runner_opts
    Runner.run! "apt-get install -y ruby squashfs-tools build-essential bison curl", runner_opts
  end
  $stderr.puts "... dependencies installed"

  $stderr.puts "installing rubyc ..."
  Gem2exe.download_rubyc
  $stderr.puts "... rubyc installed"

  puts ""
  puts "setup ok"
end