2 карты DVI под nouveau

Пытаюсь запустить X-сервер с двумя мониторами. Особенность - каждый монитор подключен к своей видеоплате (Geforce GT520) по интерфейсу DVI. Аппаратных проблем нет - оба монитора отображают картинку, всё завелось автоматически.

Но использовать всё это проблематично. Первое - нельзя перемещать окна между мониторами. Не то, что даже перетаскивать, а просто перенаправить. Единственное, что мне удалось - запустить приложение сразу на втором мониторе, примерно так:
>> DISPLAY=:0.1 konsole
Только тогда приложение запускается на втором мониторе. По-умолчанию они все запускаются на первом.
Как работающее приложение сразу перекинуть на второй монитор - я не понимаю.

Команда xrandr -q показывает только один монитор.
Screen 0 ...
DVI-I-1 connected ...
HDMI-1 disconnected ...
VGA-1 disconnected ...

Вот тут основное отличие от всего, что пишут в сети по этому поводу - большинство подключает один монитор к DVI, а другой к VGA. Так и я могу, но - не хочу. Хочу, чтобы каждый монитор подключался именно по цифровому интерфейсу.

Если указать xrandr, что надо работать со вторым монитором:
>> xrandr -q --screen 1
то она отображает вторую видеокарту, но не первую:
Screen 1
DVI-I-2 connected 1600x1200+0+0
...

Как результат, команды, написанные по аналогии с тем, как делают все:
>> xrandr --output DVI-I-1 --mode 1600x1200 --pos 0x0 --output DVI-I-2 --mode 1600x1200 --pos 1600x0
не работают. Пишет, что "warning: output DVI-I-2 not found; missing", хотя сам пишет, что такой выход есть (если вызывать с ключиком --screen 1).

KDE systemsettings тоже не видит второй монитор - он там только один. Но второй монитор работает, я там вторую панель создал, вторую кнопку KDE и так далее. Мышь спокойно переезжает с экрана на экран, но приложения - нет.

Ещё одна проблема, связанная с kwin. Переключение окон по Alt-TAB - работает, да. Но на каком экране - он решает сам по непонятному правилу - то на одном, то на другом. От того, на каком приложении фокус, где мышь - ничего не зависит. Т.е. использовать Alt-TAB невозможно.

Настройки и логи:
xorg.conf: http://pastebin.com/HfrCccAL
Xorg.0.log: http://pastebin.com/uRHHreTT
Результат "xrandr -q": http://pastebin.com/cMNFxnDd
Результат: "xrandr -q --screen 1": http://pastebin.com/KE1vBqwg

Можно ли как-то сделать, чтобы работало "как у всех". Ну или не перетаскивать приложения с экрана на экран, а хотя бы на ходу переключать с экрана на экран? Или то, что видеоплаты разные - принципиальное ограничение?

Update: Если запустить systemsettings на втором дисплее:
>> DISPLAY=:0.1 systemsettings
то она показывает только второй экран, но не первый. В памяти есть две штуки kwin - по одной на дислей, очевидно. kwin с двумя дисплеями работать может?
KDE-4.7.2
xorg-server 1.11.2-r2.

Опыта с двумя видеокартами не

Опыта с двумя видеокартами не имею поэтому предлогаю поискать в интернет
nouveau xinarama
одну из ссылок могу привести тут
http://nouveau.freedesktop.org/wiki/MultiMonitorDesktop

Это я читал. Опция

Это я читал. Опция ZaphodHeads делает так, чтобы две разные видеоплаты создавали два разных дисплея - у меня так и есть.
Проблема с их последующем объединении с помощью Xinerama. Да, с точки зрения X-сервера она их объединяет. И окна "уезжают" на второй экран, если их туда перетащить мышью. Но на втором экране отображаются только обои (картинка из KDE по-умолчанию) и больше ничего. Пока не знаю, как побороть xinerama.

$BOC(\pi, e)$

сдается мне, мил человек, что

сдается мне, мил человек, что у тебя 2 сервера работают.

П.С то , что ты читал про подключение, к теб не относится, ибо было сделано на дной видеокарте, у тебя же, как минимум, 2 экземпляра видеодрайвера

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

Нет, сервер - один. ps

Нет, сервер - один. ps показывает только одну программу под названием "X". Зато две штуки "kwin".
Приложения можно запускать так:
>> DISPLAY=:0.0 konsole
или
>> DISPLAY=:0.1 konsole
И они будут появляться на соответствующих экранах.
Т.е. сервер - один, а дисплеев - два. B kwin-ов тоже два.
Как я понимаю переменную DISPLAY - первая цифра - номер сервера, второй - номер экрана.

Вообще, вот всё, что в памяти:
>> ps aux: http://pastebin.com/dpf8NcgW

$BOC(\pi, e)$

Вообще, я нашёл на эту тему

Вообще, я нашёл на эту тему kde bug:
http://bugs.kde.org/show_bug.cgi?id=176407, который является копией http://bugs.kde.org/show_bug.cgi?id=167290 Симптомы как раз те же самые.
Написано, что в kwin-4.7.0 это исправлено. Но у меня kwin-4.7.4. Должно работать. Поэтому, наверное, проблема с конфигурацией.

Но, как советуют, kwin --replace не помогает.

$BOC(\pi, e)$

Вообще, если включить

Вообще, если включить Xinerama, она думает, что полностью выполняет свои функции. Более того, kdm работает на два экрана - диалог с паролями режется пополам и виден на двух мониторах.

Но когда дело доходит до самого KDE, окна перетаскиваются на второй экран, но там не появляются. Виден только указатель мыши, которым я держу окно при перетаскивании, но нет самого окна. На втором экране видна картинка, которая осталась после kdm. Т.е. kwin (или ещё кто-то) ничего не отрисовывает на втором экране кроме курсора мыши. Хотя KDE думает, что всё нормально.

В памяти при включении Xinerama только один X-сервер и один kwin.

Вкладка Оборудование -> Экран в systemsettings отображает:
"Your X server does not support resizing and rotating the display. Please update to version 4.3 or greater. You need X Resize, Rotate, and Reflect extension (RANDR) version 1.1 or greater to use this feature."
То есть Xinerama не даёт работать randr.

$BOC(\pi, e)$

Поставил fvwm2 - с ним

Поставил fvwm2 - с ним Xinerama работает, как надо. Окошки перетаскиваются с экрана на экран. А без Xinerama тоже всё нормально работает - могу запускать приложения на том или ином экране, указывая нужный DISPLAY при запуске.
Вывод - аппаратных ограничений на перетаскивание окошек из одной видеоплаты в другую видеоплату ;) нет. Проблема в совместимости kwin и Xinerama.

$BOC(\pi, e)$

Ещё забавная штука - убиваю

Ещё забавная штука - убиваю X-сервер (в консоли Ctrl-C), он отключается (пропадает из памяти - я смотрел), на та втором мониторе картинка остаётся! Видимо кто-то не чистит память в видеоплате или что-то в этом роде.

$BOC(\pi, e)$

Поставил compiz - он работает

Поставил compiz - он работает только на одном экране, второй - совсем чёрный, по нему только мышь ездит и окна туда переносятся, но их не видно. Т.е. то же самое, что и в kwin, только kwin дополнительно на втором экране показывал, вот и вся разница.

$BOC(\pi, e)$

Сразу не заметил, но

Сразу не заметил, но было
kde-base/kwin -xinerama
Пересборка kwin с xinerama ничего не дала ... а как будто-бы именно на это всё и указывает. Ещё в мире без ксайнрамы оказался fvwm - но как раз он-то и работал нормально.

$BOC(\pi, e)$

eugene_b написал(а): Вообще,

eugene_b написал(а):
Вообще, если включить Xinerama, она думает, что полностью выполняет свои функции. Более того, kdm работает на два экрана - диалог с паролями режется пополам и виден на двух мониторах.

А у тебя включен USE xinerama ? То что ты описал, показатель того что приложение не понимает xinerama, иначе оно бы показало приглашение на одном из экранов.

В начале не был включен. Я

В начале не был включен. Я установил xinerama в make.conf, пересобрал всё с этим флагом (emerge -uND world), ничего не изменилось. До этого я пересобирал только kwin, т.к. не указал -D и думал, что на этом всё. Но потом с ключиком -D он выкатил список, где были такие штуки, как qt-gui и другие, которые могли повлиять - но пока не помогло. Ни с xinerama, ни без ничего не изменилось.

$BOC(\pi, e)$

Да, сейчас диалог с паролями

Да, сейчас диалог с паролями пополам уже не режется. Вообще, всё, как будто бы нормально, но на втором экране кроме обоев kdm ничего нет.
При запуске приложений kwin иногда их помещает на второй экран, т.е. их не видно. Я в панели задач я правой кнопкой вызываю меню, нажимаю "Move" - и на правом экране появляется курсор в виде перекрестия, который используется при перемещении окон. Я перетаскиваю его на левый экран и вместе с ним перетаскивается окно. Т.е. kwin уверен, что всё работает так, как следует. Но на втором экране нет ничего кроме обоев и мышиного курсора.

$BOC(\pi, e)$

Переменная DISPLAY изменилась

Переменная DISPLAY изменилась - теперь на равна ":0", а не ":0.0" и ":0.1", как было раньше. Это результат работы xinerama. Теперь, если попытаться запустить приложение с DISPLAY=":0.0", оно пускается на левом экране, если с DISPLAY=":0.1" - ругается, что "cannot connect to X server :0.1". Вроде так и должно быть.

$BOC(\pi, e)$

Поставил драйверы nvidia,

Поставил драйверы nvidia, разрешил xinerama, при этом nvidia-xconfig отключил composite - два экрана заработали, как один. Но без композитного режима, естественно. Пишут, что вместе с xinerama нельзя. Ещё проблема - при перемещении окон белый мусор появляется по краям.
Я думал, если драйверы nvidia, то TwinView - замена xinerama. А у меня в конфиге сейчас и TwinView, и xinerama. xinerama я включил через nvidia-xconfig.

$BOC(\pi, e)$

В результате я сдался -

В результате я сдался - помогло, но не совсем.

В какой части сдался? Подключил всё-таки оба монитора к одной видоплате - один по DVI, второй по VGA, чтобы обойтись возможностями Randr.

Помогло - в какой части? Теперь работают оба монитора, можно перетаскивать окошки слева-направо, причём настройки рабочего стола (панель, картинка, всё такое) отдельные для каждого монитора. ДАЖЕ ALT-TAB ЗАРАБОТАЛ!!! Всё с nouveau, думаю, что и с другими драйверами заработает без вопросов.

Казалось бы, наступило счастье! Не тут-то было. KDE всё равно берёт своё. Какие проблемы теперь:
- при смене виртуального рабочего стола он меняется сразу на двух экранах - теряется смысл затеи, мне бы хотелось отдельно на каждом из экранов видеть приложения с разных рабочих столов; куб работает - на двух экранах синхронно ;(
- при запуске приложения заранее не получается угадать, на каком экране оно запустится; хотелось бы, чтобы оно запускалось на том экране, который активен;
- Alt-TAB переключает приложения сразу с двух экранов; хотелось бы переключать приложения только на том экране, который активен;

Я весь в раздумьях - может быть, даже два совершенно независимых десктопа даже лучше, чем это.

$BOC(\pi, e)$

Видимо дело в некоторой

Видимо дело в некоторой отсталости оконного менеджера в КДЕ. Мне конечно несколько странно это говорить, но в Enlightenment 0.17 детально настраивается и синхронность переключения рабочих столов, и какие окна будет цеплять alt+tab... Меня наоборот некоторое ремя расстраивала не синхронность переключения рабочих столов - если на оба экрана растянуть какое-то окно, то при переключении столов на дном мониторе на втором остаётся пол окна... Хотя, может настройки есть но они зарыты глубоко? Можно конечно поменять WM, но E17 плохо впишется в KDE.

evadim написал(а): Видимо

evadim написал(а):
Видимо дело в некоторой отсталости оконного менеджера в КДЕ.

Да-да, в ней самой и дело.

evadim написал(а):
Мне конечно несколько странно это говорить, но в Enlightenment 0.17 детально настраивается и синхронность переключения рабочих столов, и какие окна будет цеплять alt+tab...

Что же, буду пробовать

evadim написал(а):
Меня наоборот некоторое ремя расстраивала не синхронность переключения рабочих столов - если на оба экрана растянуть какое-то окно, то при переключении столов на дном мониторе на втором остаётся пол окна... Хотя, может настройки есть но они зарыты глубоко? Можно конечно поменять WM, но E17 плохо впишется в KDE.

Я вообще считаю растягивание окна на два экрана ненужным. Была бы возможность "на ходу" передавать окно из одного экрана в другой (т.е. из :0.0 в :0.1), я бы вообще предпочёл бы этот вариант, чем объединение экранов через xrandr или xinerama. Но, видимо, такой возможности не бывает - только перезапускать приложение заново.

$BOC(\pi, e)$

eugene_b написал(а): evadim

eugene_b написал(а):
evadim написал(а):
Меня наоборот некоторое ремя расстраивала не синхронность переключения рабочих столов - если на оба экрана растянуть какое-то окно, то при переключении столов на дном мониторе на втором остаётся пол окна... Хотя, может настройки есть но они зарыты глубоко? Можно конечно поменять WM, но E17 плохо впишется в KDE.

Я вообще считаю растягивание окна на два экрана ненужным. Была бы возможность "на ходу" передавать окно из одного экрана в другой (т.е. из :0.0 в :0.1), я бы вообще предпочёл бы этот вариант, чем объединение экранов через xrandr или xinerama. Но, видимо, такой возможности не бывает - только перезапускать приложение заново.

Тут я совершил резкий переход, и второе предложение уже про КДЕ. В Е17 настраивается манера переключений рабочих столов, просто я не сразу откопал это. Ктомуже можно по разному реагировать на переключение рабочих столов мышкой с края экрана (как я люблю) и alt+f*. Когда я разворачивал окно на 2 экрана у меня было 2 монитора 1024*768 и это было полезно, местами.

Также, был какой-то проэкт на гуглокоде про Х-прокси чтобы вот так передавать окна, да хоть и иксы гасить не теряя окон - но чем кончилось не знаю.

Да, в E17 всё работает в

Да, в E17 всё работает в точности, как я хотел:
- два экрана независимы;
- приложения можно перетаскивать с экрана на экран;
- рабочие столы общие для двух экранов;
- Alt-TAB работает так, как следует.
Короче говоря, работает всё то, что глючит в KDE! Пожалуй, это то, что нужно. Пока попробовал, как это работает с randr, надо ещё испытать с xinerama и двумя DVI.

Сюда бы ещё рюшечки kwin/compiz типа куба, вообще было бы хорошо.

$BOC(\pi, e)$

А, вот есть - Ecomorph. Буду

А, вот есть - Ecomorph. Буду пробовать.

$BOC(\pi, e)$

Экоморф умер, хотя до этого я

Экоморф умер, хотя до этого я просто считал что он ненужен. Сейчас есть несколько модулей который используют отрисовку через OpenGL и в самом Е17 в настройках можно включить поддержку аппаратной прозрачности и теней.

UPD: На нашем сервере есть многопользовательские jabber-конференции, и есть профильная по E17 - заходи если что.

Работает, но тупит. И

Работает, но тупит. И работает бестолково. В общем, я его выключил.

$BOC(\pi, e)$

evadim написал(а): Можно

evadim написал(а):
Можно конечно поменять WM, но E17 плохо впишется в KDE.

Забавно, даже plasma запустилась из-под E17. Т.е. можно всё наоборот - взять из KDE только то, что нужно. Допиливать, правда, нужно всё это.

$BOC(\pi, e)$

запустится то она

запустится то она запустилась, а как выглядит? В Е17 свои гаджеты на рабочем столе и полках. Или нормально вписалась?

А что хотелось в идеале?-

А что хотелось в идеале?
- два монитора;
- несколько рабочих столов (я обычно использую восемь - для меня это оптимум);
- один kwin.
И пользоваться этим так.
- На каждом из двух мониторов хочу отображать один восьми из виртуальных рабочих столов - независимо. Т.е. можно и один и тот же рабочий стол на двух мониторах сразу, как частный случай, или разные. Переключать традиционным способом, как всегда переключаются рабочие столы в KDE.
- Приложения переключать, скажем, по Alt-TAB на левом экране, по Win-TAB - на правом. Столы переключать по Alt-стрелка на левом, по Win-стрелка - на правом. Т.е. чтобы это можно было бы без мыши делать. А кнопка Win на клавиатуре - она всё равно без дела пропадает.
- Иметь возможность пересылать окна с экрана на экран - даже не обязательно перетаскиванием, а, скажем, также, как и между рабочими столами - правой кнопкой на заголовок окна, в меню "Отправить на рабочий стол N".

Я этого так и не достиг. С отдельными экранами (в смысле, screen, ну теми, что второй цифрой в переменной DISPLAY идут) этого не получалось:
- Alt-TAB глючит;
- пересылать окна между экранами нельзя вообще никак, только изначально их вызывать на нужном экране;
- kwin два, а не один;
- рабочие столы не могут быть общими на оба экрана, только раздельные.

Короче говоря, вышло, как всегда.

Научиться бы хотя бы для каждого из экранов независимо настроить Alt-TAB и Win-TAB для переключения экранов, этим уже можно было бы пользоваться. kwin две штуки отдельных, мне кажется, принциально это возможно. Но переключением заведует общая программа kglobalaccel4, бороться с которой никак не получается - я так и не понял, где она вызывается и как её настроить, чтобы она по-разному управляла двумя kwin (настройка через systemsettings не в счёт). Да и два kwin с разными настройками как запустить, непонятно.

Кто-нибудь представляет себе процесс инициализации KDE? Там есть скрипты, которые можно было бы покурочить? Я поиском скриптов с запуском kglobalaccel4 не нашёл нигде - боюсь, что это в бинарниках, а не в скриптах. Как всегда, дело идёт к правке конфигурационных файлов с расширением ".c".

$BOC(\pi, e)$

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".