Наши партнеры

UnixForum






Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Тематический каталог -> Графические оболочки Линукс

Пластическая операция для Linux. Часть 1

От современной операционной системы требуется не только стабильность, большие возможности и высокая скорость работы. Современная "операционка"кроме всего вышеперечисленного, должна иметь дружественный интерфейс и удовлетворять эстетические чувства пользователя. Для этого в Linux существует два вида программ: оконные менеджеры (window managers) и окружения десктопа (desktop environments).

Для начала расставлю все точки над i. Оконный менеджер (или менеджер экрана) - это программа, которая, прежде всего, заботится о том, как будут выглядеть ваши окна. То есть какой и где будет заголовок, как будут выглядеть кнопки закрытия, минимизации и т. д. Но, кроме этого, менеджер также определяет, как окна можно будет перемещать и какие операции над ними можно будет проводить (закрытие, минимизация, максимизация, максимизация только по вертикали и т. д.). Все, что относится к окнам на экране вашего монитора, вменяется в обязанности менеджера окон. Собственно, поэтому он так и называется. Однако современным программам, которые выполняют функции менеджера экрана в системе, приходится также заниматься фоновой картинкой, подвешивать различные иконки на десктоп и т. д. и т. п.

Окружение рабочего стола или среда рабочего стола возлагает на свои плечи заботу обо всем, что касается комфортной работы пользователя в графической оболочке операционной системы. Различные тулбары, ярлыки для выполнения программ и многое другое. Как и большинство оконных менеджеров, все среды рабочего стола имеют средства для переключения между виртуальными экранами. Для этого на панели существует набор кнопок или специальное приложение - пэйджер (никакого отношения к мобильной связи оно не имеет). Современные среды рабочего стола (к примеру, GNOME и KDE) базируются на определенной библиотеке графического интерфейса пользователя и включают в свой дистрибутив разнообразные полезные программы (редакторы, электронные записные книжки, органайзеры, простенькие игры, почтовые клиенты и прочее).

В Windows'9x тоже есть программа, выполняющая функции оконных менеджеров и окружений десктопа Linux. Эта программа называется shell (оболочка). Стандартная оболочка (которая shell) называется explorer (не путать с интернет-браузером). Хотя нет, вру! Explorer не единственная оболочка для Windows. Во время своей бытности пользователем Windows я узнал по крайней мере один заменитель explorer'a - LiteStep. О нем расскажу в самом конце этой статьи, а сначала хотел бы обратиться к менеджерам экрана, которые сегодня существует для Linux.

Оконные менеджеры (Window Managers)

Что же все-таки такое window manager в Linux? Менеджер окон занимает второй уровень в иерархии программ графической оболочки Xwindows (XFree86 в случае Linux). На первом уровне (самом низком) находится сервер Xwindows (XFree86), а на третьем (самом высоком) - прикладные программы, которые взаимодействуют с сервером XFree86 либо напрямую, либо через менеджер окон при помощи специального набора библиотек (Motif, Lesstif, KDElibs, GTK и т. д.). Менеджеры окон в системах, работающих под управлением Xwindow (это справедливо и для XFree86 - свободно распространяемой версии Xwindow для Linux и FreeBSD), отвечают за управление визуальными компонентами экрана (окна, кнопки, рамки, строки текста).

В XWindows (Xfree86) можно работать и без какого-либо менеджера окон. Однако даже на минимальный комфорт в таком случае надеяться не следует. Ваши окна не будут иметь заголовка и границ, а следовательно, их нельзя будет двигать по рабочему столу и изменять размеры. Так что менеджер экрана вам просто необходим для того, чтобы чувствовать себя человеком.

IceWM

Начнем обзор менеджеров окон с самых простых и легковесных. Наиболее известным в этой категории является IceWM, который имеет размер около 650 килобайт. Недавно вышла первая "нормальная" версия (я имею в виду версию 1.0, т. е. не "бетту"). Несмотря на малые размеры, IceWM обладает всеми возможностями нормального менеджера окон. Он даже позволяет устанавливать различные темы. IceWM написан на C++ с самого начала, т. е. в нем не используется исходный код ни от какого другого менеджера окон. При его проектировании ставились следующие цели:

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

IceWM полностью совместим с GNOME и частично с KDE, но может использоваться и отдельно.

Как видно из скриншота, IceWM имеет все для того, чтобы пользователь мог нормально работать. В самом низу экрана располагается панель, на которой расположена кнопка для запуска различных программ (слева), аналогичная кнопке "пуск" в Windows'9x. Сразу после нее находится кнопка, которая показывает список окон (это окно вы сможете увидеть справа внизу экрана). Затем следуют три кнопки для быстрого запуска программ, а потом еще четыре для переключения между виртуальными экранами. Кроме всего этого вы можете наблюдать на тулбаре часы, индикаторы почтового ящика и загрузки системы. Естественно, что наличие/отсутствие кнопок может конфигурироваться пользователем.

AfterStep (www.afterstep.org)

AfterStep основан на другом менеджере окон - Fvwm, но переработан таким образом, чтобы воспроизводить внешний вид и поведение NextStep. Правда, добавлено множество полезных и интересных возможностей. Начав свое существование под названием Bowman, AfterStep перерос просто эмуляцию NextStep и стал вполне своеобразным менеджером экрана. Экран под управлением этого менеджера окон выглядит следующим образом: сверху строка, которая показывает все работающие приложения и их окна; слева или внизу обычно находится панель для запуска программ и куда помещаются различные индикаторы. В целом это выглядит так, как показано на скриншоте.

К главным характеристикам AfterStep, которые делают его привлекательным для пользователей, можно отнести следующее:

  • Стабильность и вдумчивую проработку всех компонентов. (AfterStep совместим с 2000 годом начиная с 1971 года :) .)
  • Совместимость с большинством библиотек и менеджеров экрана (GNOME, KDE, Motif).
  • Размер основного исполняемого кода составляет не более 750 килобайт.

Window Maker

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

Грубо говоря, док в WM (WindowMaker) похож именно на док в море. Только в данном случае море - это весь ваш экран, а док - определенное место, где "прикрепляются" приложения; они не могут перемещаться по рабочему столу. Приложения прикрепляются в виде иконки (поскольку обычно именно так выглядит минимизированное приложение в WM).В WindowMaker'e все приложения имеют ассоциированные с ними иконки. В любое время вы можете спрятать любое из окон под его иконкой. После двойного нажатия на нее окно приложения вновь появится на экране.

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

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

Сейчас существует много приложений для дока, которые созданы с учетом работы WindowMaker'a. Например, индикаторы нагрузки системы, часы, проигрыватели CD-дисков и MP3-файлов┘

На скриншоте док находится в правом верхнем углу и состоит всего из одной кнопки. Приложения, которые в данный момент запущены, имеют иконки в левом нижнем углу экрана. В WindowMaker'е приложение имеет связанную с ним иконку, даже если не минимизировано, в отличие от explorer'a Windows. И справа вы можете увидеть меню этого менеджера экрана, которое вызывается при нажатии на левую кнопку мыши. Кстати, как и большинство оконных менеджеров, WindowMaker поддерживает систему виртуальных экранов. В левом верхнем углу вы можете увидеть кнопку для переключения экранов.

Enlightment

"Лучше один раз увидеть, чем сто раз услышать" - это точно об Enlightment. Настраивается практически под любого пользователя. Даже под самого привередливого. Имеет огромное количество всевозможных визуальных эффектов (выпадающих меню, выезжающих из-за пределов экрана окон и т. п.), которые радуют глаз и делают общение с компьютером похожим на то, что мы иногда видим в различных техногенных фильмах.

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

Честно говоря, я немного недолюбливаю Enlightment за его слишком уж большую страсть к визуальным эффектам. Да, это в определенной степени скрашивает многие часы, которые человек проводит за компьютером, но я больше ценю удобство и функциональность того окружения, в котором работаю.

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

Среды рабочих столов (Desktop Environments)

Честно говоря, я не совсем уверен в точности моего перевода. Так и слышу шутку, что среды и четверги рабочих столов скрашивают будни одинокого сисадмина. Environment а не Wednesday - вот в чем суть :).

GNOME (www.gnome.org)

GNOME (GNU Network Object Model Environment) - это наиболее продвинутая с моей точки зрения экранная среда, которая берет на себя дополнительные функции управления пользовательским интерфейсом. Продвинута она по таким параметрам, как возможности, настраиваемость под конкретного пользователя, гибкость и удобство. Однако, на мой взгляд, из-за этого приносится в жертву скорость работы. Наиболее часто встречающийся тандем - Enlightment + GNOME комфортно чувствует себя на iPentium-200 с 64 мегабайтами оперативной памяти, а вот на моем домашнем компьютере (iPentium-166MMX с 32 мегабайтами ОЗУ) иногда все-таки "подтормаживает". Однако мне все-таки кажется, что я несколько придираюсь, так как компьютеры давно перешли к намного большим скоростям, нежели несколько лет назад.

Основанный на библиотеке GTK+, GNOME содержит в своей поставке множество приложений, построенных на этой библиотеке. Различные текстовые редакторы и редакторы электронных таблиц, календари, графиче-ские редакторы и много чего еще. Кстати, GIMP (GNU Image Manipulation Program) - самый известный редактор растровой графики для Linux - тоже основан на библиотеке GTK. Вернее будет сказать, что библиотека GTK обязана своим рождением GIMP'у.

Приложения, написанные для GTK и GNOME, обычно можно отличить по первой букве "G" в названии. Например: gnumeric, gftp, GQView.

KDE (www.kde.org)

KDE (K Desktop Environment) - не просто менеджер окон, а полный комплект "окружения рабочего стола" (desktop environment). Кроме библиотек и программ, определяющих внешний вид экрана под Linux, в него входят программы для организации удаленного доступа к Интернету (dial-up), органайзер, текстовый редактор с подцветкой синтаксиса и множество других приложений для комфортной работы.

KDE во многом похож на Windows. Нет, не по внешнему виду, а по функциональности. То же стремление облегчить жизнь пользователю до максимума, что этой системе успешно удается. Если вам понадобилась программа, чтобы что-то сделать, то скорее всего вы найдете ее в KDE. Процесс установки связи с интернет-провайдером не займет много времени и сил, если вы воспользуетесь программой kppp, входящей в состав KDE. По аналогии с GNOME, название приложения для KDE начинается с буквы "K": Konsole, Klock, Killustrator и т. д.

XFCE (www.xfce.org)

Когда-то давно я часто приходил на работу к одному моему знакомому и подолгу сидел за замечательным компьютером фирмы SUN. Так вот, внешний вид XFCE 3 пробудил во мне ностальгию по Sun Solaris, и я сразу же поставил его себе на машину.

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

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

CDE

CDE - Common Desktop Environment. Это - наследие от самого UNIX'a. Так как для работы CDE нужна коммерческая библиотека Motif, этот продукт не выпускается под лицензией GNU и его приходится покупать. Его используют на таких коммерческих операционных системах, как: SCO Unix, BSDI, AIX.

XFCE - свободно распространяемый потомок CDE. Обе программы имеют одну цель: обеспечить достаточно переносимый интерфейс для пользователя и обеспечить его всем необходимым для комфортной работы.

LiteStep для Windows 95/98 (www.litestep.net)

В настоящее время мне известна единственная аналогичная вышеописанным программа для Windows - LiteStep, о которой я упоминал в самом начале этой статьи. Lite-Step имеет много общего с NextStep, как и AfterStep, и поэтому может быть полезен людям, которые переходят с UNIX/Linux на Windows'9x (хм, а такие есть?).

LiteStep полностью меняет вид и поведение рабочей среды Windows. Taskbar перемещается в другое место. Меню "старт" может быть вызвано в любом месте экрана нажатием правой клавиши мыши, а программы при минимизации "падают" на рабочий стол. Думаю, что многие пользователи найдут его удобным и красивым, но все-таки к LiteStep надо привыкнуть после единообразия Windows.

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

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

А это - скриншот моего рабочего стола. Для примера, так сказать :))

Искренне Ваш
Петр Курышев admin@comprice.ru

Глоссарий статьи:

XWindows - стандартный способ обеспечения графическим интерфейсом пользователя в UNIX-системах. Для Linux реализована бесплатная версия под названием XFree86. Не имеет никакого отношения к компании Microsoft.

Window manager (менеджер или диспетчер окон) - программа, которая обеспечивает Вас таким минимумом (или максимумом) удобств, как заголовки окон, границы для изменения окон, различные панели для быстрого запуска программ и т. п.

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

Desktop Environment - среда рабочего стола. Система, которая обеспечивает пользователя полным набором инструментов для комфортной работы.

Тема - набор цветов, изображений, текстур, иконок и других элементов, который позволяет изменить внешний вид того или иного оконного менеджера. Самый известный сервер, где вы можете найти тему по своему вкусу, расположен по адресу www.themes.org .

GNOME - GNU Network Object Model Environment. Окружение рабочего стола, основанное на библиотеке GTK+. Имеет высокую степень интеграции с Интернетом и множество опций настройки.

KDE - K Desktop Environment. Среда рабочего стола, основанная на библиотеке QT. Для нее существуют такие пакеты, как: Kdevelop - пакет для разработки приложений (а-ля Micrisoft Visual Studio), Koffice - набор офисных приложений (в состоянии разработки) и т. д.

Виртуальный экран - представьте, что у вас подключено четыре монитора. Так вот виртуальные экраны - это и есть эти самые мониторы, только в момент времени вы можете смотреть лишь в один из них (ну, на самом, деле монитор-то у вас один). В каждом экране можно работать совершенно полноценно. Я, например, всегда держу у себя по крайней мере один виртуальный экран с открытыми рабочими программами для того, чтобы переключиться на него в случае неожиданного появления начальства в прямой видимости :).

NextStep - когда Стиву Джобсу (одному из создателей Apple) надоело место работы (Apple), он решил организовать свою компанию и изобрести еще один тип компьютеров и еще одну операционную систему для них. Ею и была NextStep (название как платформы, так и операционки).

GTK - Gimp ToolKit library. Библиотека, которая берет свое начало от программы обработки растровой графики - GIMP. В настоящее время широко используется для создания приложений для Linux с дружественным интерфейсом пользователя.