I have a scenario where I need to run graphical applications from other users from shell on the currently active display. In other words, I am logged in as user "A" and in Terminal I su
to user "B" and need to run TextEdit.app as user "B" in user A's graphical display.
Currently if I start up (in Catalina) /Sys/System/Applications/TextEdit.app/Contents/MacOS/TextEdit
I see the following in Terminal:
TextEdit[26292:293814] +[NSXPCSharedListener endpointForReply:withListenerName:]: an error occurred while attempting to obtain endpoint for listener 'ClientCallsAuxiliary': Connection interrupted
TextEdit[26292:293831] Spell server connection invalidated
TextEdit[26292:293792] In -[NSApplication(NSQuietSafeQuit) _updateCanQuitQuietlyAndSafely], _LSSetApplicationInformationItem(NSCanQuitQuietlyAndSafely) returned error -600
And while TextEdit renders on the display I cannot get the Menubar entries for it or save files, etc.
Similar behavior happens with all apps I try such as TextMate.app. I always seem to get this error:
TextMate[26365:295425] +[NSXPCSharedListener endpointForReply:withListenerName:]: an error occurred while attempting to obtain endpoint for listener 'ClientCallsAuxiliary': Connection interrupted
Is there any way to work around this?
DISPLAY
itself will not work, I can't help but wonder if there's another mechanism for helping apps to use another user's display session / wm, etc. - whatever the appropriate terminology may be on macOS. – ylluminate Mar 28 at 17:31