Это старая версия документа.


Внимание! Эта статья не содержит руководства по настройке того или иного оконного менеджера. В ней объясняются некоторые общие теоретические и практические аспекты использования оконных менеджеров. Для получения инструкций обратитесь к статье о конкретном оконном менеджере в этой вики или задайте вопрос на форуме

Оконный менеджер - это приложение, которое отвечает за размещение, декорирование окон, взаимодействие с окнами - изменение размеров, максимизация, свёртывание, закрытие. Оконный менеджер взаимодействует с графическим сервером X11, который занимается взаимодействием c видеокартой и устройствами ввода/вывода (клавиатура, мышь и монитор).

Оконный менеджер может работать как вместе с окружением рабочего стола (Gnome, KDE, XFCE), так и отдельно от него. Функционал, предоставляемый оконными менеджерами, может достаточно серьёзно различаться.

Оконный менеджер в окружении рабочего стола

Итак, в состав окружения рабочего стола уже входит оконный менеджер. В случае с Gnome это Metacity, в случае с KDE - kwin, XFCE использует по умолчанию xfwm4. Окружение рабочего стола LXDE использует менеджер окон openbox - в отличие от других DE, использующих оконные менеджеры, написанные специально для них, LXDE включает в свой состав менеджер окон, разрабатываемый независимо от остального окружения.

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

Два, пожалуй, самых показательных для Ubuntu примера - замена стандартного менеджера окон Metacity на Compiz для включения различных спецэффектов или на Openbox для снижения потребления ресурсов и обеспечения более точного управления окнами (более эффективное использование горячих клавиш, помещение окон в различные слои (Always on top) и т.д.)

Собственно, не существует никаких препятствий для использования оконного менеджера kwin в рабочем окружении Gnome или наоборот.

В случае, если в составе рабочего окружения заменяется оконный менеджер, обычно достаточно следующих действий:

  • Добавление команды на замену оконного менеджера в автозапуск средствами утилит контроля сессий данного окружения (хрестоматийный compiz –replace)
  • В случае, если требуется передать оконному менеджеру контроль над рабочим столом (например, для того, чтобы заработало меню Openbox, появляющееся при правом клике на рабочем столе) - отключение функции контроля рабочего стола в настройках приложения, которое по умолчанию этим занимается. В случае с Ubntu это Nautilus.

При замене оконного менеджера в составе рабочего окружения последнее продолжает выполнять для вас ряд важных функций - контроль сессий, монтирование съёмных носителей, управление буфером обмена и сетью, ассоциацию файлов с приложениями. Вы меняете только и исключительно механизм управления окнами и рабочим столом.

Оконный менеджер без окружения рабочего стола

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

Что до сих пор обеспечивало вам рабочее окружение? Что вам теперь предстоит настроить самостоятельно? Какие задачи решает большинство оконных менеджеров, а какие выполняются с помощью сторонних утилит?

Давайте разберём по порядку.

* Автозапуск и контроль сессий. Если в окружении рабочего стола вы могли добавить приложение в автозапуск через графический интерфейс, то теперь вам, скорее всего, придётся прописывать такие приложения в конфигурационном файле вашего оконного менеджера. Забегая вперёд, скажу, что скорее всего в автозапуск нужно будет добавить трей и/или панель, переключатель раскладки клавиатуры, утилиту для управления сетевыми подключениями, утилиту для монтирования съёмных носителей, утилиту для отрисовки обоев, почтовый клиент и интернет-мессенджер, торрент-клиент.

При добавлении в автозапуск приложений следите за порядком, в котором они запускаются. Например, если вы хотите запустить менеджер сетевых подключений или торрент-клиент, им, скорее всего, потребуется трей, поэтому они должны запускаться после трея, возможно, с некторой задержкой (используйте команду sleep)

* Управление сетевыми подключениями. Окружение рабочего стола предоставляет вам менеджер сетевого подключения,