Xorg X11 и прозрачность
Материал из Gentoo Linux Wiki
- Вернуться в раздел руководства
Содержание |
[править] Введение
Это руководство поможет в установке X.org на Linux/Gentoo машине, хотя общие настройки должны работать и на любом другом дистрибутиве.
[править] Шаг за шагом
[править] Установка X.org
Установите последнюю версию X.org с помощью команды emerge xorg-x11
После компиляции необходимо настроить X.org путем редактирования /etc/X11/xorg.conf
Если у вас было установленно XFree86 то рабочий /etc/X11/XF86Config будет автоматически использоватся для работы X.org. Для обеспечения целостности рекомендуется переименовать /etc/X11/XF86Config в /etc/X11/xorg.conf.
Для загрузки X.org выполните команду startx
[править] Установка X Composite Extension
Откройте /etc/X11/xorg.conf для редактирования: nano -w /etc/X11/xorg.conf (или используйте ваш любимый редактор ;))
Добавьте следующие строки в любом месте конфиг файла
| Файл: /etc/X11/xorg.conf |
Section "Extensions"
Option "Composite" "Enable"
Option "RENDER" "Enable"
EndSection
|
При следующей перезагрузке X.org у вас будет включен Composite Extension. Это расширение включает предварительную отрисовку вне экрана, чтобы на экран выводилось уже законченное изображение. Это позволяет использовать различные эффекты (например прозрачность и тени).
Для достоверности можно проверить лог файл grep COMPOSITE /var/log/Xorg.0.log
(II) Initializing built-in extension COMPOSITE
[править] Включение теней и настоящей прозрачности
[править] KDE 3.4 или более поздняя
Начиная с версии 3.4 KDE поддерживает прозрачность через Xorg. На заголовке любого окна щелкните правой кнопкой мыши, выберите "настройка поведения окна" и в списке слева найдите пункт полупрозрачность. Поставьте флажок "использовать прозрачность/тени", после чего станут доступны множество настроек прозрачности (активного,неактивного окна, окна при перетаскивании, плавные переходы прозрачности и т.д.) и теней.
[править] xcompmgr и transset
Многие WM еще не обладают поддержкой новых функций X.org, так что нам придется использовать дополнительные инструменты для наших эффектов.
- Вначале нам надо установить xcompmgr
echo "x11-misc/xcompmgr ~x86" >> /etc/portage/package.keywords
emerge xcompmgr
- Затем установим transset
echo "x11-misc/transset ~x86" >> /etc/portage/package.keywords
emerge transset
Теперь у нас есть все необходимое, чтобы включить тени, затенение и настоящую прозрачность. Запустите из Xterm xcompmgr xcompmgr -c Эта команда позволит вам увидеть эффекты от запущенного xcompmgr, если они вам не понравятся, то CTRL+C в консоли позволит вам убить процесс, а если они вам нравятся, то надо убить процесс и запустить его в фоновом режиме (сзади консоли): xcompmgr -c & Примечание: символ & позволяет запустить xcompmgr в фоновом режиме, но при этом если убить сам терминал - процесс тоже сдохнет, чтобы этого не произошло можно использовать утилиту nohup: nohup xcompmgr -c & При этом весь вывод будет направлен в nohup.out
Таким образом xcompmgr включит "мягкие" тени. Если будет использован флаг -s то будут "грубые" тени.
Рабочий пример для xcompmgr с тенью и затенением xcompmgr -cCfF -r7 -o.65 -l-10 -t-8 -D7 &
Теперь о прозрачности. Выполните в консоли transset Теперь ваш курсор изменился, вы можете кликнуть на окне которое хотите сделать прозрачным. Если запустить transset с цифровым значением от 0 до 1 то это укажет насколько прозрачным должно быть окно
- 0 - полностью прозрачно
- 1 - не прозрачно
Попробуйте выполнить tg Рабочий стол Sheridan'а
[править] fvwm scripts
Скрипты для fvwm (через xcompmgr и transset): [1]
[править] Выключение эффектов
Для выключения всех эффектов выполните killall xcompmgr
[править] Примечание
[править] NVIDIA
При использовании NVIDIA видео карточек рекомендуется добавить в /etc/X11/xorg.conf нижеприведенные строки для того, чтобы можно было использовать расширение "Composite" и увеличить производительность при его использовании.
| Файл: /etc/X11/xorg.conf |
|
Section "Device" |
ВАЖНО:
При использовании RenderAccel у вас могут возникнуть проблемы со стабильностью, так как эта опция эксперементальная и использовать ее вам предлагается на свой страх и риск.
При использовании AllowGLXWithComposite у вас могут возникнуть проблемы с opengl приложениями. Могут появляться артефакты, так как glx и composite не рекомендуется использовать одновременно.
[править] ATI
При использовании ATI видео карточек совместно с ATI драйверами, дополните /etc/X11/xorg.conf опцией backingstore, для включения поддержки backing store, механизма с помощью которого пиксельные данные закрытого окна запоминаются Х сервером и снимает необходимость посылки сообщений к Х клиенту когда надо обновить изображение
| Файл: /etc/X11/xorg.conf |
|
Section "Device" |
[править] Заключение
Эти разработки находятся в самой начальной стадии и мы можем использовать их уже в X.org версии 6.8. По мере развития WM и приложений будет возможность воспользоваться новым функционалом X.org в полную меру без установки дополнительных приложений. Некоторые программы, kwin к примеру, уже портируются.
[править] Возможные проблемы
[править] Fluxbox окна не раскрываются
Попробуйте включить
Configure -> Slit -> Layer -> Desktop.
[править] mplayer problem
При затруднениях с mplayer (прозрачность, отображение), попробуйте следующие опции mplayer -vo x11 my_video
[править] mozilla-firefox и flash
Если firefox падает на сайтах с flash-анимацией - возможно, проблемы с composite. Либо отключите flash, либо composite, либо обновитесь.
