Показаны сообщения с ярлыком XGL. Показать все сообщения
Показаны сообщения с ярлыком XGL. Показать все сообщения

среда, 7 февраля 2007 г.

Howto: Установка Beryl в Ubuntu (Kubutu) 64-bit.

Просмотрев видео-ролики о том, как красив Linux с установленным Beryl и попробовав его на ноутбуке со стандартной i386 архитектурой, захотелось запустить это украшательство и на компьютере с 64-битным процессором. На компьютере установлен Kubuntu 6.06 LTS Dapper Drake 64-bit Linux. Погуглив немного, я узнал, что поскольку в репозиториях Dapper Drake пакета Beryl нет, обычной установкой не отделаешься. Но я так просто не сдался и нашел почти то, что мне нужно - HOWTO: Build beryl from source, gnome. Правда, вместо Gnome у меня KDE, но это не суть важно - разберемся.

1) Начнем с того, что добавим источники в файл /etc/apt/sources.list.
sudo vi /etc/apt/sources.list
в самом конце списка добавляем следующее
deb http://www.beerorkid.com/compiz dapper main main-amd64
deb-src http://www.beerorkid.com/compiz dapper main main-amd64

2) Установка драйверов видеокарты.

Nvidia:
sudo aptitude update
sudo aptitude dist-upgrade
sudo aptitude install nvidia-glx



Ati: (поскольку у меня Nvidia, установку драйверов Ati я не проверял)
Устанавливаем fglx, как описано здесь.
Запускаем:
glxinfo
И смотрим вывод. Если видите direct rendering: yes - можно идти дальше.


3) Редактируем xorg.conf.

Начнем с создания копии:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_backup
Только для Nvidia:
sudo vi /etc/X11/xorg.conf
В открытом файле ищем секцию "Module". Если в этом разделе присутствуют Load "dri" и(или) Load "glcore" - комментируем их (ставим # в начале строки):
# Load "dri"
# Load "glcore"

Убедитесь что присутствует запись:
Load "glx"
Опускаемся дальше к секции "Device" и смотрим чтобы все было как указано ниже:
Section "Device"
Identifier "NVIDIA Corporation NV41.0"
Driver "nvidia"
BusID "PCI:1:0:0"
Option "RenderAccel" "true"
EndSection

Не изменяйте значение BusID, вверху приведен лишь пример, у Вас может быть другое значение. Если нет Option "RenderAccel" "true" - допишите.

(конец только Nvidia)

4) Установка xgl
sudo aptitude install xserver-xgl libgl1-mesa libglitz-glx1
Настройка запуска xgl.

Gnome:
sudo gedit /etc/gdm/gdm.conf-custom
В конец секции servers добавляем следующее:

Для Nvidia:
[servers]
0=Xgl

[server-Xgl]
name=Xgl server
command=/usr/bin/Xgl :0 -fullscreen -ac -accel glx:pbuffer -accel xv:pbuffer
flexible=true

Для Ati:
[servers]
# Override display 1 to use Xgl (DISPLAY 1 IMPORTANT FOR ATI FGLRX).
1=Xgl

[server-Xgl]
name=Xgl server
command=/usr/bin/Xgl :1 -fullscreen -ac -accel glx:pbuffer -accel xv:pbuffer
flexible=true

Только ATI:

Изменяем /etc/gdm/gdm.conf:
sudo gedit /etc/gdm/gdm.conf-custom
следующим образом
#0=Standard
1=Standard

Идем к строке 198 и изменяем GdmXserverTimeout=10 на (это очень важно!!!):
GdmXserverTimeout=50
KDE:

Nvidia:
sudo vi /etc/kde3/kdm/kdmrc
Ищем строку ServerCmd=/usr/X11R6/bin/X -br, комментируем ее и добавляем следующее:
#ServerCmd=/usr/X11R6/bin/X -br
ServerCmd=/usr/bin/Xgl -fullscreen -ac -accel xv:fbo -accel glx:pbuffer


Для Ati попытайтесь модифицировать, то что было сделано для Gnome.


5) Установка Beryl с исходников.

Начнем с того, что удалим compiz (если он установлен)
sudo aptitude remove compiz-core compiz-gnome cgwd csm
Если выдает, что не знает таких пакетов - это нормально. Не обращайте внимания.

Ну а теперь самая важная и самая тяжелая часть. Ниже будет приведен листинг. Все команды запускайте построчно, как указано там. Уделяйте внимание сообщениям об ошибках. Особенно это касается пунктов ./autogen.sh --prefix=/usr. Если видите надписи типа unmet зависимости и названия пакетов, установите указанные пакеты через sudo apt-get install пакет и запустите ./autogen.sh --prefix=/usr еще раз.

Проделываем все как здесь:
cd ~/
sudo aptitude update
sudo aptitude dist-upgrade
sudo apt-get update
sudo apt-get build-dep compiz
sudo aptitude install fakeroot libtool automake1.9 librsvg2-dev x11proto-gl-dev subversion libneon25-dev libapr0-dev libsvn0-dev
sudo update-alternatives --config automake
svn co svn://svn.beryl-project.org/beryl/tags/release-0.1.4/

ln -s ~/release-0.1.4/distro-specific-build-files/bdock/debian ~/release-0.1.4/bdock/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-core/debian ~/release-0.1.4/beryl-core/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-plugins/debian ~/release-0.1.4/beryl-plugins/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-dbus/debian ~/release-0.1.4/beryl-dbus/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-manager/debian ~/release-0.1.4/beryl-manager/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-settings/debian ~/release-0.1.4/beryl-settings/
ln -s ~/release-0.1.4/distro-specific-build-files/emerald/debian ~/release-0.1.4/emerald/
ln -s ~/release-0.1.4/distro-specific-build-files/emerald-themes/debian ~/release-0.1.4/emerald-themes/
ln -s ~/release-0.1.4/distro-specific-build-files/heliodor/debian ~/release-0.1.4/heliodor/

cd ~/release-0.1.4/beryl-core
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-core*.deb beryl-dev*.deb

cd beryl-plugins
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-plugins-data*.deb beryl-plugins*.deb

cd emerald
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i emerald*.deb

cd emerald-themes
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i emerald-themes*.deb

cd beryl-settings
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-settings*.deb

cd beryl-manager
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-manager*.deb *.deb

Если все прошло без проблем - значит, Beryl установлен.

Проблемы, которые возникли у меня.
1.
sudo dpkg -i beryl-core*.deb beryl-dev*.deb
не поставило, а потребовало библиотеки libberylsettings0*, но они были в той же папке. Поэтому поставил их, а потом уже без проблем пакеты указанные выше:

sudo dpkg -i libberylsettings0*.deb
sudo dpkg -i beryl-core*.deb beryl-dev*.deb
2.
sudo dpkg -i emerald*.deb
Выдало, что пакеты зависят от libemeraldengine0*. Фокус, проделанный выше, не прошел, так как при установке libemeraldengine0* выдало, что пакеты зависят от emerald*. Какой-то замкнутый круг. Не знаю, что нужно делать в таких случаях. Сделал по своему. Поставил emerald*, указав игнорировать зависимости от libberylsettings0* и после этого поставил без проблем libberylsettings0*:

sudo dpkg -i --ignore-depends=libberylsettings0 emerald*.deb
sudo dpkg -i libberylsettings0*.deb
Со всем остальным проблем не было.

6) Автозапуск при старте KDE (GNOME):

Для KDE:
ln -s /usr/bin/beryl-manager ~/.kde/Autostart/beryl-manager
Для Gnome:
В Control Center -> Sessions -> Startup Programs добавляем:
beryl-manager
Перегружаем иксы (Ctrl + Alt + Backspace) и с умилением смотрим на работу Beryl :).

При написании данного Howto главным образом использовался материал отсюда

http://www.ubuntuforums.org/showthread.php?t=281613
и дополнительно
http://www.linuxjournal.com/node/1000081
http://linuxforum.ru/index.php?showtopic=30208&st=0


Если у Вас возникли какие-нибудь проблемы при установке или предложение сделать все это более рационально - пишите в комментарии. С удовольствием все рассмотрю.

Читать дальше...