# File lib/guard.rb, line 56
    def setup(options = {})
      @lock = Mutex.new

      @options    = options
      @guards     = []
      self.reset_groups
      @interactor = Interactor.new unless @options[:no_interactions]
      @listener   = Listener.select_and_init(@options[:watchdir] ? File.expand_path(@options[:watchdir]) : Dir.pwd, options)

      @options[:notify] && ENV['GUARD_NOTIFY'] != 'false' ? Notifier.turn_on : Notifier.turn_off

      UI.clear if @options[:clear]

      debug_command_execution if @options[:debug]

      self
    end