Устанавливаем композитный менеджер окон Compiz и Emerald на Debian Jessie

Автор CoolAller, 15 мая 2016, 00:17:43

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

CoolAller

Для желающих установить Compiz и Emerald на Debian Jessie публикую инструкцию по установке.

Внимание! Репозиторий неофициальный, все действия вы производите на свой страх и риск. В данный момент версия в репозиториях tuxfamily.org изменилась на 0.8.14 "reloaded", в ней уже выпилины многие эффекты, тем кому они нужны качаем версию в архивах ниже, там версия 0.8.12.

Для установки Compiz и Emerald для Debian Jessie подключаем сторонний репозиторий:

1. Открываем терминал, логинимся под рутом.

2. Добавляем репозиторий с собранными пакетами Compiz для Debian Jessie:
wget -q http://download.tuxfamily.org/compiz/apt/key.pub -O- | apt-key add - && echo "deb http://download.tuxfamily.org/compiz/debian $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/compiz-debian.list && apt-get update

3. Устанавливаем Compiz:

sudo apt-get install compiz-reloaded compiz-reloaded-core compiz-reloaded-gtk compiz-reloaded-plugins compiz-reloaded-plugins-main compizconfig-settings-manager-reloaded gir1.2-rsvg-2.0 libcompizconfig-reloaded-0 libdecoration-reloaded-0 python-compizconfig-reloaded fusion-icon
Не актуально:
Открыть содержимое (спойлер)
sudo apt-get install compiz fusion-icon compiz-mate compiz-fusion-plugins-extra compiz-fusion-plugins-unsupported -y
[свернуть]

4. Так же из этого же репозитория можно установить Emerald - это программа, которая используется для отрисовки рамки окна, заголовка, кнопок управления, прозрачности и теней.
sudo apt-get install emerald emerald-themes libemeraldengine0

PS. В данной версии Compiz (0.8.12.1-0) есть собранный пакет для интеграции с DE MATE (compiz-mate), а так же эффект Burn, который в следующих версиях Compiz скорее всего выпилят, а так же Wobbly Windows (желейные окна), ну и конечно 3D-куб, снег, огонь, звезды и т.д.

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

На всякий случай вот ссылки на yandex disk:

Compiz_0.8.12.1-0~jessie_amd64
Compiz_0.8.12.1-0~jessie_i386

Compiz_0.8.12.3-0~jessie_amd64
Compiz_0.8.12.3-0~jessie_i386

На слабых видеокартах, либо если вы не имеете проблем с артефаком tearing (когда экран рвётся в горизонтальной плоскости) рекомендуется отключать опцию Sync To VBlank в настройках компиза, это позволит снизить нагрузку на видеокарту: Compiz Config Setting Manager->General Options->Display Settings->Sync To VBlank (снять чекбокс). Другие советы под спойлером в FAQ ниже.

FAQ по Compiz:

Открыть содержимое (спойлер)

Q: Как мне добавить Compiz в автозагрузку?
    A: Первый способ - добавить в автозагрузку команду compiz --replace. Второй способ - установить пакет fusion-icon и добавить в автозагрузку команду fusion-icon. Тогда при старте будет запускаться эта маленькая утилитка и автоматически загружать Компиз с теми установками, которые были в ней заданы. Fusion-icon добавит значок в трей, по правому щелчку мышки на котором, можно найти основные настройки.

    Q: Как выбрать нужный декоратор окон?
    A: Опять же, первый способ - легкий: с помощью того же fusion-icon. Пункт "Выбрать оконный декоратор (Select window decorator)". Или второй способ, если нет желания ставить fusion-icon - прописать нужную команду в конфигураторе Компиз (ccsm). Там идем в раздел "Эффекты (Effects)" -> "Оформление окна (Window decoration)" и ищем строку "Команда (Command)", в которой пишем следующее:
gtk-window-decorator --replace (если хотим использовать декоратор GTK с темами Metacity).
kde-window-decorator --replace (если хотим использовать декоратор KDE с темами KWin).
emerald --replace (если хотим использовать декоратор Emerald).

    Q: У меня почему-то нет многих, из перечисленных здесь плагинов.
    A: Установите пакеты с дополнительными плагинами: compiz-fusion-plugins-main, compiz-fusion-plugins-extra и, по желанию compiz-fusion-plugins-unsupported

    Q: Поэксперементировал с настройками плагинов и хочу теперь сбросить все изменения на значения по умолчанию.
    A: Нажмите в главном окне конфигуратора кнопочку "Установки (Preferences)", а затем в открывшемся меню кнопочку "Сбросить на значения по умолчанию (Reset to defaults)".

    Q: У меня некоторые окна постоянно съезжают после сворачивания в трей и разворачивания оттуда. Можно с этим как-то бороться?
    A: Можно. Для этого идем в раздел "Управление окнами (Window management)" -> включаем плагин "Размещение окон (Place windows)" -> затем закладка "Фиксированное размещение окна (Fixed window placement)" и в самом верхнем списке "Окно с фиксированной позицией (Windows with fixed positions)" жмем кнопочку "Создать" и выбираем нужное нам окно (которое съезжает и которое мы хотим закрепить). Самый простой способ определения окна по заголовку title или по классу class. Пример строки для аськи, типа Кутима (его лучше определять по заголовку окна): title=qutIM. После определения окна, задаем нужные нам координаты его расположения в пикселях по оси Х и по оси Y.

    Q: Я хочу, чтобы окно при щелчке по заголовку и при перетаскивании становилось до определенной степени прозрачным. Как это сделать?
    A: Это задается в разделе "Управление окнами (Window management)" -> "Переместить окно (Move window)" -> параметр "Прозрачность (Opacity)". Чем меньше его значение, тем сильнее будет прозрачность у окна.

    Q: У меня окна постоянно "прилипают" к краям при перетаскивании. Как от этого избавиться?
    A: Нужно в разделе "Эффекты (Effects)" -> "Вязкие окна (Wobbly windows)" -> снять галочку с параметра "Инвертированная привязка (Snap inverted).

    Q: Как сделать, чтобы при наведении на окна на панели задач появлялись миниатюры с их содержимым?
    A: Для этого надо в разделе "Дополнения (Extras) включить плагин "Окно предпросмотра (Window preview)".

    Q: Как мне развернуть в полноэкранный режим окно, которое не поддерживает такую функцию?
    A: Можно воспользоваться плагином "Дополнительные действия оконного менеджера (Extra WM actions)" в разделе "Управление окнами (Window management)". Там нужно задать горячие клавиши для параметра "Переключение в полноэкранный режим (Toggle fullscreen)". После чего этими хоткеями активное окно будет переводиться в полноэкранный режим.

    Q: Я хочу чтобы некоторые окна были постоянно одного, заданного размера при открытии.
    A: Идем в раздел "Управление окнами (Window management)" -> включаем плагин "Правила поведения окна (Window Rules)" и идем в закладку "Правила размеров (Size rules)". Там выбираем нужное нам окно по принципу, описанному в вопросе, касающегося съезжающих окон. И указываем требуемые размеры окна.

    Q: Где можно задать задержку перед срабатыванием действий на активных краях экрана?
    A: В разделе "Общие (General)" -> "Общие настройки (General Options)" -> параметр "Задержка срабатывания на краю (Edge trigger delay)".

    Q: Хочу сделать такой эффект при выборе окон, чтобы они как бы заходили друг за друга, как при перетасовке карт. Как это сделать?
    A: В разделе "Эффекты (Effects)" -> плагин "Анимации (Animations)" -> вкладка "Анимация фокусировки (Focus animation)" -> выбираем "Эффект трансфокатора (Dodge)".

    Q: У меня некоторые открываемые окна не появляются на переднем плане. А еще когда щелкаешь из какого-нибудь приложения по интернет-ссылке она открывается в браузере, но он не становится активным и не разворачивается, если был свернут. С чем это связано?
    A: В этом виновата опция под названием "Упреждающая фокусировка окон (Focus prevention windows)". Находится она в разделе "Общие (General)" -> "Общие настройки (General settings)" -> на вкладке "Поведение при развертывании (Focus & Raise behaviour)". Параметр "Уровень упреждающей фокусировки (Focus prevention level)" - выберите там "Отключить (Off)".

    Q: Compiz иногда зависает так, что вся картинка на экране становится неподвижной и перестает реагировать на любые действия. Что делать?
    A: Можно избежать перезапуска Х-сервера и потери несохраненных данных. А обойтись одним лишь перезапуском Компиза. Для этого переключаемся в консоль (CTRL+ALT+F1, может быть другая комбинация), логинимся под своей учетной записью и вводим команду: killall -9 compiz. Затем выходим из этого сеанса командой exit и возвращаемся в графический режим (ALT+F7 или ALT+F8 или CTRL+ALT+F7). И видим продолжающие работать приложения, но без Компиза. Возращаем Компиз командой: compiz --replace или через иконку fusion-icon - "Reload window manager".

    Q: У меня видеокарта NVidia и возникают неприятные артефакты при прорисовке окон. Можно как-то это вылечить?
    A: Можно попробовать в разделе "Утилиты (Utility)" -> включить (если еще не включен) плагин "Исправления (Workarounds)" -> найти в нем параметр "Усилить синхронизацию между Х и GLX (Force synchronization between X and GLX)" и включить эту опцию.
[свернуть]

cohiba

Отпишись хоть как работает,скрины предоставь.А мы поглядим стоит ли овчинка выделки.
Debian Sid:
###--- Gott sei Dank, ich bin weg vom Fenster ---###
Полюшко моё, родники
Дальних деревень огоньки
Золотая рожь, да кудрявый лён,
Я влюблён в тебя Россия, влюблён

CoolAller


Sintez

Установил сразу после написании статьи все эффекты работают.Система debian 8.4 mate.Спасибо автору.

CoolAller

Если кому нужно есть еще Ubuntu версия Compiz 0.9.7.12, она собрана с поддержкой OpenGL, правда там требуется больше телодвижений для установки.

dimsat1

CoolAller, сенькс и тебе и ребятам :), установил на деб 8.6, всё с ходу завелось :)
debian(jessie) ...DE_Mate... LINUX - FOREVER!
Sams Smart IPTV nStreamLmod_v.3.х

vladimirse

#6
Все круто, все работает!
Но есть вопрос: использую модуль Grid для пристыковывания окон к краям экрана по горячим клавишам, хотелось бы сделать так, что бы при повторном нажатии сочетания окно принимало первоначальную позицию и размер (как в винде, к примеру, win+left)?
И еще вопрос: Как настроить перемещение окон с одного рабочего места на другое и с одного монитора на другой, стандартные сочетания перестали работать а в compiz я такого не нашел.

CoolAller

vladimirse, если знаете команду с помощью которой это делали раньше, то ее можно занести в "Commands"->"Key Bindings".