Launch XQuartz app via Automator

automatorhomebrewx11xquartz

I'm trying to launch meld (installed via Homebrew) via an app shortcut, ideally ending up in my Applications folder. A recommended way to launch console apps in Mountain Lion seems to be using Automator.

Running /usr/local/bin/meld in a terminal starts XQuartz and meld launches fine. My Automator script looks like:

Automator script

But when running all I get is the 'Run Shell Script failed' error. XQuartz doesn't launch. If XQuartz is already running meld still doesn't start.

  1. Is there a way to get more useful (stdout/stderr) from Automator actions?
  2. What does the shell do differently do launch XQuartz and apps within it?

Edit: I can get it to work by using open /usr/local/bin/meld in my action, but I then also get a Terminal window (which I don't want).

Best Answer

Aha. Looks like Homebrew wants to run meld via it's own Python, rather than the system one. Terminal sets this up correctly, but obviously Automator doesn't.

Solution: use Run Shell Script in Automator with:

/usr/local/bin/python /usr/local/bin/meld