X11 Display and Jack

I have an intel macmini, which has no monitor or keyboard and which I control with VNC remote desktop. This is kind of slow and laggy, so I’d like to just do a remote X11 display. I tried invoking ardour from the command line via /Applications/Ardour.app/Contents/MacOS/Ardour -DISPLAY $DISPLAY , but it ignored my argument (and environment variable) and opened on Display :0.0 . So I tried instead to open it via /Applications/Ardour.app/Contents/Resources/bin/exporter . This worked fine except for it had Jack errors:

allocate_mach_clientport: can’t find mach server port
Can’t allocate mach port

My questions: what’s going on in /Applications/Ardour.app/Contents/MacOS/Ardour ? It’s a binary file, so I can’t read it. Is it in the source tarball? What’s it’s relative path there? What goes on so that it finds jack correctly?

X applications don’t take an argument to specify the display, they use an environment variable. So try:

DISPLAY=wherever:0.0 /Applications/Ardour.app/Contents/MacOS/Ardour

is JACK already running when you get the mach server port error message?

Yeah, I set the display variable via ssh tunneling ( ssh -X me@macmini.local ) and that makes no difference. If I have the display set and I invoke /Applications/Ardour.app/Contents/MacOS/Ardour , it opens in 0:0.

I get the mach error when jack is already running. I get the same error when I try running /usr/local/bin/jack_lsp. But I don’t get it when I double click the icon for Ardour.app.

If I let Ardour start jack, I don’t get a mach error, but it still doesn’t produce sounds. I think this is related to running intel. I suspect that jackd needs special arguments to tell it to use an aggregate device instead of the “built in.” I have not yet determined what those arguments are or where they lurk in a configuration file for Ardour.

Which is why I’m asking about the contents of /Applications/Ardour.app/Contents/MacOS/Ardour , since it does the right thing, I just need to modify it slightly to use the $DISPLAY variable.

You want to modify /Applications/Ardour.app/Contents/Resources/script. The Ardour binary actually just calls that script which sets things up and then launches the real binary.

That script file is setting DISPLAY.

Does the code that calls jack look at the $DISPLAY?

When I try this from the command line, it can’t find jack. Then I double click on the icon, it seems to work.

Maybe this setup is not fated to be.

Not that I know of.