module Musical::Util

Constants

REQUIRED_APPS

Public Instance Methods

check_env() click to toggle source
# File lib/musical/util.rb, line 6
def check_env
  REQUIRED_APPS.each do |app|
    unless installed?(app)
      messages = []
      messages << "'#{app}' is not installed."
      messages << "Try this command to install '#{app}'."
      messages << ""
      messages << "   brew install #{app}"
      messages << ""
      raise RuntimeError, messages.join("\n")
    end
  end
  true
end
execute_command(cmd, silent = false) click to toggle source
# File lib/musical/util.rb, line 25
def execute_command(cmd, silent = false)
  cmd << ' 2>/dev/null' if silent
  execute_out, _ = *Open3.capture2(cmd)
  execute_out
end
installed?(app) click to toggle source
# File lib/musical/util.rb, line 21
def installed?(app)
  !execute_command("which #{app}").empty?
end