Как установить настройки xrandr по умолчанию?

Я пытаюсь включить двойные мониторы в Ubuntu. Это работает нормально, но каждый раз, когда я делаю это, эффекты рабочего стола отключаются. Я думаю, что нашел причину, почему:

https://wiki.ubuntu.com/X/Config/Multihead/

As с помощью метода конфигурации GNOME XRandR установка слишком большого значения для Virtual может привести к потере аппаратного ускорения и, следовательно, невозможности использования Compiz и его эффектов рабочего стола.

Когда я использую апплет монитора GNOME или конфигурацию Monitors в меню System, настройки 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
17
задан 3 February 2011 в 02:14

3 ответа

Разве «умная» программа не является просто аварийным завершением compiz, возвращающимся к резервному оконному менеджеру? Ваша команда compiz перезапускает 3D Window manager после исправления неправильных настроек.

Вместо сна вы, вероятно, можете связать команду с помощью ; (второй ожидает завершения первого), чтобы получить желаемый эффект.

xrandr --output VGA1 --above LVDS1 ; compiz --replace &
0
ответ дан 3 February 2011 в 02:14

Размещение их слева направо - это не стандартное значение xrandr, а стандартное значение gnome-settings-daemon. Начиная с версии gnome-settings-daemon 2.32, последняя конфигурация должна быть загружена из monitors.xml; так что если вы сделали вертикальный макет один раз, то в следующий раз он автоматически подберет его, не выбивая Compiz.

Так вы случайно не запускаете 10.04 Lucid? В этом случае вы можете следовать этим инструкциям, чтобы включить эту функцию в gnome-settings-daemon 2.30.1.

1) открыть терминал

2) получить источник:

mkdir src
cd src
apt-get source gnome-settings-daemon

3) отредактировать src / gnome-settings-daemon-2.30.1 / plugins / xrandr / gsd- xrandr-manager.c, в строке 1349 измените

#if 1

на

#if 0

4) в терминале установите зависимости сборки:

sudo apt-get install build-dep gnome-settings-daemon

5 ) дайте вашему пакету новый номер версии:

dch -i "enable monitor.xml default values"

6) соберите и установите свой пакет:

debuild
cd ..
sudo dpkg -i gnome-settings-daemon*.deb

Пожалуйста, дайте мне знать, если это работает для вас, я воспроизвел шаги объем памяти. Кроме того, дайте мне знать, если вам пришлось делать дополнительные шаги, чтобы я мог обновить этот ответ.

0
ответ дан 3 February 2011 в 02:14

Или вы можете просто получить значок Compiz Fusion, он позволяет вам легко перейти к перезагрузке Compiz. Большое спасибо, у меня были те же проблемы, я никогда не думал, что нужно перезагрузить compiz, просто думал, что мне придется жить с этим в двойном режиме. Только что попробовал с иконкой фьюжн, вуаля! Куб, все снова нормально.

0
ответ дан 3 February 2011 в 02:14

Другие вопросы по тегам:

Похожие вопросы: