
Ich habe XQuartz mit brew installiert und es scheint, dass die X11-Weiterleitung nur funktioniert, wenn ich ein Terminal über XQuartz starte und ssh -X darauf verwende. Es funktioniert nicht, wenn ich ssh -X auf meiner Terminal-App ausführe (XQuartz läuft immer noch im Hintergrund).
Antwort1
Anstelle der Xquartz-Version von Brew sollten Sie versuchen, XQuartz-2.8.5.pkg direkt von der Website xquartz.org herunterzuladen und zu installieren.
Wenn ich eine X11-App vom Terminal oder iTerm aus starte, wird automatisch XQuartz.app gestartet und im Terminal war $DISPLAY bereits auf einen ungewöhnlichen Wert eingestellt, der sicherlich vom Paketinstallationsprogramm festgelegt wurde (ich verwende xquartz nicht von Brew aus). Es sieht irgendwie so aus, als ob ein Launchd-Skript oder eine App diese Variable festlegt. Vielleicht hat die Brew-Version das nicht getan?
$ echo $DISPLAY
/private/tmp/com.apple.launchd.NzZKy3HHcG/org.xquartz:0
Ich finde eine Launchd-Plist unter: /Library/LaunchDaemons/org.xquartz.privileged_startx.plist, die startet:
/opt/X11/libexec/privileged_startx -d /opt/X11/etc/X11/xinit/privileged_startx.d
Und es gibt auch ein anderes Skript unter: /Library/LaunchAgents/org.xquartz.startx.plist, das sich anscheinend um die Einstellung von DISPLAY kümmert.
Wie Sie sehen, ist diese Berechtigungserweiterung und der DISPLAY-Set-Mechanismus in /opt/X11/ installiert, aber nicht in /opt/homebrew/, also muss es vom Paketinstallationsprogramm stammen. Vielleicht ist bei der Brew-Installation etwas schiefgelaufen.