Запуск с параметром DISPLAY (не работает в GNOME)

Софт под Linux, разные программы, но только связанные с Linux

Модератор: /dev/random

bakulenko
Сообщения: 202
ОС: Ubuntu 12.04

Запуск с параметром DISPLAY

Сообщение bakulenko »

Доброе время суток.

Дома стоит opensuse 11.2 с KDE4
На работе - она же, но с GNOME.

цепляюсь к работе по ssh, хочу включить там Deluge.

# DISPLAY=:0.0 deluge
/usr/lib/python2.6/site-packages/deluge/ui/gtkui/gtkui.py:165: GtkWarning: cannot open display: :0.0
self.gnome_prog = gnome.init("Deluge", deluge.common.get_version())

Дома ktorrent отлично запускается, если подрубаюсь с работы по ssh к дому.
Ставил давеча свежую убунту, там такая же беда, mplayer не стартует с указанием экрана. В KDE все отлично работает.
Кто виноват и что делать?
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5456
ОС: Gentoo

Re: Запуск с параметром DISPLAY

Сообщение /dev/random »

bakulenko писал(а):
14.01.2010 17:23
и что делать?

1) если вы имели в виду запуск с выводом интерфейса на удалённом компе, т.е. на том, к которому вы коннектитесь:
- Проверить, действительно ли иксы имеют номер :0.0.
- Проверить, имеете ли вы доступ к файлу, прописанному в $XAUTHORITY. Если там ничего не прописано, указать эту переменную вместе с $DISPLAY.

2) если вы имели в виду запуск с выводом интерфейса на _вашем_ компе:
- использовать ssh -X и не выделываться с переменной $DISPLAY.
Спасибо сказали:
bakulenko
Сообщения: 202
ОС: Ubuntu 12.04

Re: Запуск с параметром DISPLAY

Сообщение bakulenko »

/dev/random писал(а):
14.01.2010 17:31
1) если вы имели в виду запуск с выводом интерфейса на удалённом компе, т.е. на том, к которому вы коннектитесь:


Поясню на примере убунты. Хочу запустить mplayer на второй экран, который LCD телевизор. Если делаю это собственно из Гнома в его xterm, то параметр DISPLAY работает:

# DISPLAY=:0.1 mplayer file.avi - запускает фильм на телевизор.

если ухожу в комнату смотреть кино, то естественно хотелось бы рулить просмотром, отсюда есть желание с ноутбука подрубиться к системе по ssh и запустить mplayer, указав ему нужный дисплей в качестве переменной среды или параметра.
В KDE работают оба способа, как собственно из KDE, так и по ssh.

/dev/random писал(а):
14.01.2010 17:31
- Проверить, действительно ли иксы имеют номер :0.0.


Имеют.

/dev/random писал(а):
14.01.2010 17:31
- Проверить, имеете ли вы доступ к файлу, прописанному в $XAUTHORITY. Если там ничего не прописано, указать эту переменную вместе с $DISPLAY.


Тут я недопонял. Поизучаю в этом направлении.
Спасибо сказали:
bakulenko
Сообщения: 202
ОС: Ubuntu 12.04

Re: Запуск с параметром DISPLAY

Сообщение bakulenko »

Спасибо /dev/random за толчок в сторону $XAUTHORITY.
Что удалось выяснить:
1. В КДЕ у меня менеджер kdm. В Gnome gdm.
kdm пишет в /home/user/.XAUTHORITY все, что положено.
gdm пишет это в /var/run/gdm/auth-for-user-XXXX/database
Что характерно, и в работающем случае в КДЕ, и в нерабочем с GNOME при подключении к станции по ssh переменные XAUTHORITY и XAUTHLOCALHOSTNAME не устанавливаются. Но в КДЕ тем не менее, mplayer срабатывает (на deluge не проверял), а в GNOME - нет.
Установка переменных в нужные значения приводит к нужному результату в GNOME.

В принципе, проблема наполовину решена. Осталось понять, почему mplayer все-таки отрабатывает в KDE? Я попытался скопировать файл /var/run/gdm/auth-for-user-XXXX/database в /home/user/.XAUTHORITY - не помогло. А я таки подозревал, что mplayer читает его. Видимо, не читает. Отсюда непонятно, чему благодаря он запускается в кедах.

Второй момент. Раз уж в Гноме надо установить переменные XAUTH, то как это сделать автоматом? Ведь gdm при кажном логоне (или при первом логоне после старта Xorg?) создает новый файл вида /var/run/gdm/auth-for-user-XXXX/database. Если XAUTHLOCALHOSTNAME можно еще придумать, куда впихнуть с его одним и тем же значением localhost, то как поступить с XAUTHORITY, значение которой постоянно меняется.
Указывать ее при старте mplayer'a не совсем удобно, командная строка и так дюже загромождена опциями.
Как быть?
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5456
ОС: Gentoo

Re: Запуск с параметром DISPLAY

Сообщение /dev/random »

bakulenko писал(а):
15.01.2010 09:08
Я попытался скопировать файл /var/run/gdm/auth-for-user-XXXX/database в /home/user/.XAUTHORITY - не помогло.

Регистр? Файл называется .Xauthority, а не .XAUTHORITY.

bakulenko писал(а):
15.01.2010 09:08
Второй момент. Раз уж в Гноме надо установить переменные XAUTH, то как это сделать автоматом? Ведь gdm при кажном логоне (или при первом логоне после старта Xorg?) создает новый файл вида /var/run/gdm/auth-for-user-XXXX/database. Если XAUTHLOCALHOSTNAME можно еще придумать, куда впихнуть с его одним и тем же значением localhost, то как поступить с XAUTHORITY, значение которой постоянно меняется.
Указывать ее при старте mplayer'a не совсем удобно, командная строка и так дюже загромождена опциями.
Как быть?

К сожалению, я давно не пользовался gdm, но, вроде бы, там была соответствующая опция в конфиге.
Спасибо сказали:
bakulenko
Сообщения: 202
ОС: Ubuntu 12.04

Re: Запуск с параметром DISPLAY

Сообщение bakulenko »

/dev/random писал(а):
15.01.2010 09:25
Регистр? Файл называется .Xauthority, а не .XAUTHORITY.


С регистром все в порядке, просто тут тупо копировал имена переменных. Более того, нашел в поисковике, что кому то помогала символическая ссылка с именем Xautority (без "h" ). Мне, увы, не помогло.

Поковыряю еще на досуге, в принципе, вектор поиска решения ясен. Спасибо.
Спасибо сказали: