yum install https://dl.dropbox.com/u/49862637/Mate-desktop/fedora_17/mate-desktop-fedora-updates/noarch/mate-desktop-release-17-2.fc17.noarch.rpm yum groupinstall MATE-DesktopПосле установки MATE можно установить Компиз. Для этого в файле /etc/yum.repos.d/Mate-Desktop_fedora_17-new-application-testing.repo заменяем строку
enabled=0в настройке [mate-desktop-fedora-new-application-testing] на
enabled=1Теперь устанавливаем Компиз и Эмеральд:
yum install compiz emerald ccsm compiz-mate compiz-plugins-extra compiz-plugins-extra-mate compiz-plugins-main-mate compiz-plugins-unsupported compiz-plugins-unsupported-mate emerald-themes fusion-iconТеперь самое время перелогиниться, не забыв поменять сессию на MATE. После загрузки MATE следует настроить привычный интерфейс (конфигурационные файлы MATE отличаются от файлов Gnome 2, поэтому если у вас остались настройки Gnome 2, то толку от них немного - проще заново настроить MATE). Теперь надо проверить Компиз - запускаем fusion-icon. Кликаем правой кнопкой мыши по значку fusion-icon и выбираем Compiz в качестве Window Manager и Emerald в качестве Window Decorator. Настройки Emerald у меня сохранились c прошлых лет, а вот Компиз пришлось настраивать заново (для этого можно в fusion-icon кликнуть на Settings Manager или просто вызвать из терминала команду ccsm). Для того, чтобы fusion-icon запускался автоматически при логине в MATE, можно зайти в меню Система -> Параметры на верхней панели и кликнуть на Запускаемые Приложения. В открывшемся меню во вкладке Автоматически Запускаемые Программы добавляем новый элемент со значением Команда равным fusion-icon. Но... пока лучше не делайте этого, дальше мы напишем простой скрипт, который будет запускать компоненты, зависимые от Компиз мягко, без видимых изменений отрисовки, связанных с перезагрузкой композитного менеджера.
Это еще не все. Раньше я использовал avant-window-navigator - док-бар в нижней части дисплея. К сожалению, этот компонент был также выпилен из репозиториев Fedora, но зато я опробовал cairo-dock из репозитория rpmfusion и нашел его вполне неплохой заменой. Еще одна интересная программа - screenlets, которую можно использовать для раскидывания по экрану разных полезных штуковин - скринлетов. Ее пришлось скачать отсюда и собрать из исходников самому. К счастью, это не сложно, однако в процессе установки пришлось доустановить несколько пакетов среди которых python-BeautifulSoup и gnome-python2-libwnck.
Результат изысканий представлен на следующей картинке (картинка кликабельна). Он почти полностью (наверное только за исключением avant-window-navigator, замененного на cairo-dock) соответствует тому, что у меня было на Fedora 14.
Теперь вернемся к упомянутому скрипту для запуска fusion-icon (и не только) при входе в систему. Зачем он нужен? Видите черненькую полоску на картинке внизу экрана? Это cairo-dock. Если его запустить в некомпозитном режиме, то вместо этой красивой полоски мы увидим черный непрозрачный квадрат с непрозрачными иконками. Кто у нас запускает композитный менеджер (то бишь Компиз)? Правильно, fusion-icon. Кто запускает fusion-icon? MATE. И это настраивается в диалоге Автоматически Запускаемые Программы, там же, где настраивается запуск cairo-dock. Так вот, к сожалению Gnome 2 / MATE не гарантирует последовательность запуска этих программ и мы на какое-то мгновение можем увидеть "черный квадрат" вместо нормального cairo-dock при входе в систему. Чтобы загрузка Компиз выглядела мягкой, мы будем запускать все программы, отрисовка которых зависит от наличия композитного менеджера, внутри специального скрипта StartCompizSession после гарантированного старта Компиз. Этот скрипт мы поместим в качестве нового элемента в Автоматически Запускаемые Программы, а программы, зависящие от присутствия композитного менеджера, соответственно оттуда удалим. Помимо cairo-dock сюда относятся различные скринлеты.
#!/bin/bash fusion-icon & sleep 1 nmbOfTry=1 nmbOfTryLimit=20 while (( $nmbOfTry < $nmbOfTryLimit )) ; do ps -U $USER -o args | grep '^emerald' > /dev/null (( $? == 0 )) && break (( ++$nmbOfTry )) sleep 1 done if (( $nmbOfTry < $nmbOfTryLimit )) ; then #avant-window-navigator & cairo-dock -o & # screenlets daemon screenlets-daemon & # various screenlets python -u /usr/share/screenlets/PerfectClock/PerfectClockScreenlet.py & python -u /usr/share/screenlets/DiskSpace/DiskSpaceScreenlet.py & python -u /usr/share/screenlets/ClearCalendar/ClearCalendarScreenlet.py & python -u /usr/share/screenlets/Slideshow/SlideshowScreenlet.py & python -u /usr/share/screenlets/aSensors/aSensorsScreenlet.py & fi
Комментариев нет:
Отправить комментарий