Я пытаюсь включить двойные мониторы в Ubuntu. Это работает нормально, но каждый раз, когда я делаю это, эффекты рабочего стола отключаются. Я думаю, что нашел причину, почему:
https://wiki.ubuntu.com/X/Config/Multihead/
Как и в случае метода конфигурации GNOME XRandR, установка слишком большого значения для Virtual может привести к потере аппаратного ускорения и, следовательно, невозможности использования Compiz и его эффектов рабочего стола.
Когда я использую апплет монитора GNOME или конфигурацию Monitors в системном меню, настройки xrandr по умолчанию помещают второй монитор справа от первого, и, как я обнаружил с этой ошибкой , для большинства мониторов это создает виртуальный рабочий стол большего размера. чем максимальное разрешение по горизонтали 2048, необходимое для аппаратного ускорения на моем нетбуке.
Таким образом, похоже, что если я смогу изменить настройки по умолчанию для xrandr, чтобы новый рабочий стол располагался выше или ниже (север или юг) основного дисплея LVDS, тогда аппаратное ускорение и, следовательно, compiz будут продолжать работать. Может кто-нибудь сказать мне, как проще всего это сделать?
ОБНОВИТЬ:
Я подтвердил, что поддержка нескольких головок с эффектами рабочего стола и аппаратным ускорением работает, когда я перемещаю дисплей внешнего монитора к северу от основного дисплея LVDS. Прямо сейчас это включает в себя следующий процесс: подключение внешнего монитора, запуск меню конфигурации мониторов, эффекты рабочего стола отключаются автоматически (и все окна в моих рабочих пространствах перемещаются в первое рабочее пространство), перемещая внешний дисплей так, чтобы он был к северу от LVDS отобразится и щелкните «Применить», а затем перейдите в меню «Внешний вид» и укажите включенные эффекты рабочего стола. Есть ли более простой способ сделать это?
ОБНОВЛЕНИЕ 2:
Хорошо, поэтому я подумал, что, возможно, экран конфигурации мониторов GNOME пытается быть умным и может мешать эффектам рабочего стола. Итак, я просто попытался использовать клиент командной строки xrandr следующим образом:
xrandr --output VGA1 --above LVDS1
Когда я это делаю, эффекты рабочего стола все еще отключены, и мне нужно вручную включить их. И это несмотря на то, что аппаратное ускорение работает, и никогда не наступает момент, когда аппаратное ускорение перестает работать, потому что горизонтальный размер виртуального дисплея слишком велик. Итак, какая программа пытается быть умной и отключает эффекты рабочего стола, когда в этом нет необходимости? И как мне это остановить?
Если бы был способ повторно включить эффекты рабочего стола из командной строки, который я мог бы затем добавить в сценарий вместе с надлежащим вызовом xrandr, я бы принял это в качестве обходного пути.
ОБНОВЛЕНИЕ 3:
Хорошо, вот мой скрипт для включения второго монитора с эффектами рабочего стола. Это может быть зло, я не уверен
second-monitor.sh
xrandr --output VGA1 --above LVDS1
sleep 3
compiz --replace &
Заявление о сне может быть необязательным.
Если есть лучший способ сделать это, пожалуйста, дайте мне знать.
ОБНОВЛЕНИЕ 4:
Это Dell Mini Inspiron 1012.
Вот мои технические характеристики системы:
lspci -vv
00:02.0 VGA compatible controller: Intel Corporation N10 Family Integrated Graphics Controller
Subsystem: Dell Device 041a
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 29
Region 0: Memory at f0b00000 (32-bit, non-prefetchable) [size=512K]
Region 1: I/O ports at 18d0 [size=8]
Region 2: Memory at d0000000 (32-bit, prefetchable) [size=256M]
Region 3: Memory at f0900000 (32-bit, non-prefetchable) [size=1M]
Capabilities: <access denied>
Kernel driver in use: i915
Kernel modules: i915
00:02.1 Display controller: Intel Corporation N10 Family Integrated Graphics Controller
Subsystem: Dell Device 041a
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Region 0: Memory at f0b80000 (32-bit, non-prefetchable) [size=512K]
Capabilities: <access denied>
lsmod | grep i915
i915 287458 2
drm_kms_helper 29329 1 i915
drm 162409 3 i915,drm_kms_helper
intel_agp 24375 2 i915
i2c_algo_bit 5028 1 i915
video 17375 1 i915