
Para el primer panel tmux
, tuve quehacer estopero puede abrir una ventana. Para el segundo panel y el resto, no puedo abrir ventanas. Por ejemplo:
$ echo $DISPLAY
localhost:10.0
$ meld . &
[1] 466
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:57: GtkWarning: could not open display
warnings.warn(str(e), _gtk.Warning)
/usr/bin/meld:155: GtkWarning: IA__gtk_icon_theme_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
gtk.icon_theme_get_default().append_search_path(meld.paths.icon_dir())
Traceback (most recent call last):
File "/usr/bin/meld", line 155, in <module>
gtk.icon_theme_get_default().append_search_path(meld.paths.icon_dir())
AttributeError: 'NoneType' object has no attribute 'append_search_path'
Lo que hice pero no funcionó:
$ unset DISPLAY
$ meld . &
$ set DISPLAY localhost:0.0
$ meld . &
$ xhost +localhost
xhost: unable to open display "localhost:0.0"
$ xhost +
xhost: unable to open display "localhost:0.0"
$ unset DISPLAY
$ export DISPLAY=localhost:0.0
$ sudo apt-get install xvfb
$ sudo Xvfb :5
$ export DISPLAY=:5
Respuesta1
Una visualización de localhost:10.0
normalmente no es la visualización real, sino un ssh
proceso intermedio diseñado para permitirle usar Windows X11 después de hacerlo ssh -X somehost
. Por lo tanto, normalmente no debes configurar DISPLAY manualmente, ya que solo funcionará a través del túnel ssh si aún existe.
Se muestra localhost:0.0
una conexión TCP al servidor X11 en la máquina local. Hoy en día, el servidor rara vez se inicia con las conexiones TCP habilitadas y esto no funcionará. Por lo tanto, normalmente no deberías configurar DISPLAY en esto. (Busque el proceso Xorg y podrá verlo ejecutándose con la opción: -nolisten tcp
, aunque hoy en día esta suele ser la opción compilada predeterminada).
Una visualización de :0
o :0.0
o unix:0.0
es una conexión de socket de dominio Unix al servidor X11 en la máquina local. Esto suele ser lo que necesitas usar.