Module: Hackmac::Utils

Includes:
FileUtils
Defined in:
lib/hackmac/utils.rb

Instance Method Summary collapse

Instance Method Details

#ask(prompt) ⇒ Object



30
31
32
33
# File 'lib/hackmac/utils.rb', line 30

def ask(prompt)
  print prompt.bold.yellow
  gets =~ /\Ay/i
end

#x(cmd, verbose: true) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/hackmac/utils.rb', line 14

def x(cmd, verbose: true)
  prompt = cmd =~ /\A\s*sudo/ ? ?# : ?$
  cmd_output = "#{prompt} #{cmd}".color(27) + (verbose ? "" : " >/dev/null".yellow)
  output, result = nil, nil
  puts cmd_output
  system "#{cmd} 2>&1"
  result = $?
  if result.success?
    puts "✅ Command succeded!".green
  else
    puts "⚠️  Command #{cmd.inspect} failed with exit status #{result.exitstatus}".on_red.white
    exit result.exitstatus
  end
  output
end