
Para o primeiro painel tmux
, eu tive quefazem istomas pode abrir uma janela. Para o segundo e todos os demais painéis, não consigo abrir janelas. Por exemplo:
$ 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'
O que eu fiz, mas não funcionou:
$ 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
Responder1
Uma exibição localhost:10.0
geralmente não é a exibição real, mas um ssh
processo intermediário projetado para permitir que você use janelas X11 depois de fazer ssh -X somehost
. Portanto, você normalmente não deve definir DISPLAY manualmente, pois ele só funcionará através do túnel ssh se ainda existir.
Uma exibição de localhost:0.0
é uma conexão TCP com o servidor X11 na máquina local. Hoje em dia, o servidor raramente é iniciado com conexões TCP habilitadas e isso não funcionará. Portanto, você normalmente não deve definir DISPLAY para isso. (Procure o processo Xorg e você poderá vê-lo rodando com a opção: -nolisten tcp
, embora hoje em dia esse seja frequentemente o padrão compilado).
Uma exibição de :0
ou :0.0
ou unix:0.0
é uma conexão de soquete de domínio unix com o servidor X11 na máquina local. Geralmente é isso que você precisa usar.