Алексей Федорчук
Одной из особенностей последних пре-релизных сборок 12-й Fedora стала последняя стабильная вресия GNOME — 2.28, каковой, как считается, суждено быть и последней во 2-й ветки этой среды. И потому она, в свою очередь, включала в себя прототип рабочего окружения грядущей ветки, 3-й — GNOME Shell.
Особенностью этой оболочки является лежащая в её основе библиотека Clutter, которая, подобно игровым движкам, переносит максимум операций на графический процессор видеоподсистемы (GPU).
Именно это и привлекло к ней моё внимание — наконец-то энергия GPU современных дискретных видеокарт, преврсходящих по номинальной вычислительной мощности суперкомпьютеры древности, будет использоваться в относительно мирных (то есть не чисто игровых) целях. А не простаивать без дела, как это имеет место быть у тех пользователей, которые, подобно автору этих строк, ни во что сложнее объемного тетриса не играют.
Так что одним из первых моих занятий после установки 12-й версии Fedora стало знакомство с GNOME Shell. Правда, сиюминутной актуальности это не представляло — вот уже много лет пользую интегрированное видео (в настоящий момент — от Intel), и необходимости в дискретном не ощутил ни разу. Но подготовку к грядущему надо начинать уже сейчас, дабы, как в случае с KDE 4, не испытать удивления, увидев, во что в одночасье превратился некогда привычный и знакомый десктоп.
По умолчанию в 12-й Fedora используется традиционный рабочий стол GNOME, и использование новой оболочки требует доустановки соответствующих пакетов. Впрочем, ни малейшего труда это не составляет. Можно отыскать необходимое командой yum
# yum search gnome-shell
которая на выводе даст
gnome-shell.x86_64 : Window management and application launching for GNOME ... mutter.x86_64 : Window and compositing manager based on Clutter
После чего установить необходимый пакет командой
# yum install gnome-shell
А можно прибегнуть к графическому фронт-энду PackageKit, найдя в его поисковой строке всё тот же gnome-shell и «поставив птицу» на соответствующем чекбоксе:
В обоих случаях пакет gnome-shell будет установлен вместе с его оконным менеджером mutter, который в 3-й ветке станет таковым по умолчанию для среды GNOME, вместо нынешнего Metacity.
Оконный менеджер Mutter является неотъемлемой частью среды GNOME Shell, которая по отношению к нему выступает в качестве виджета. Он относится к классу композитных WM, то есть каждое окно в нём обрабатывается в собственном буфере с последующим объединением в единое изображение. Это обеспечивает возможность воспроизведения различных спецэффектов, в том числе трёхмерных и анимационных, но возлагает дополнительную нагрузку на видеоподсистему машины, Предполагается, что эту ношу, посредством упомянутой выше библиотеки Clutter, и взвалит на себя GPU, не приводя к снижению быстродействия, а возможно, и обеспечив его повышение. Насколько это предположение оправданно — мы увидим впоследствии.
Теперь остаётся только запустить новую оболочку. Сделать это можно тремя способами. Первый лучше всего подходит для первичного знакомства, и выполняется прямой командой из окна терминала:
$ gnome-shell --replace
Здесь следует обратить внимание на опцию —replace, предписывающую заменить текущее (то есть традиционное) рабочее окружение на таковое новой оболочки. Без неё последует сообщение об ошибке.
Разумеется, новое окружение будет существовать только в текущем сеансе данного терминала. И выйти из него можно в любой момент — нажатием комбинации Control+C в окне запуска.
Второй способ — включить новую среду через Центр управления GNOME, вызываемый щелчком на иконке с именем пользователя в правой части панели запуска и выбрав пункт Администрирование из выпадающего меню:
Отыскиваем здесь секцию Оформление, в ней — пункт Эффекты рабочего стола, после чего видим следующую картину:
Здесь следует отметить радиокнопку Оболочка GNOME и затем в течении 60 секунд принять решение — сохранить ли новые настройки, или вернуться к первозданным:
Этот способ действенен на протяжении всего текущего сеанса Иксов. При перезапуске оных (или после рестарта машины) окружение GNOME Shell, как ни странно, не загружается — возвращается традиционная среда GNOME, хотя и со спецээфектами, обусловленными оконным менеджером Mutter. И для восстановления новой среды приходится повторять процедуру.
Кроме того, любой способ запуска GNOME Shell из среды GNOME приводят к тому, что в нём сохраняются ошмётки старого окружения — пиктограммы на рабочем столе и его обои, возможно — какие-то иконки в области извещений. В общем, нечто вроде этого:
Правда, разглядеть тут мало чего можно, но об этом поговорим чуть позже.
Так для того, чтобы в чистом виде наблюдать новую оболочку, её лучше всего запустить непосредственно из голых Иксов.
Сделать это также можно различными способами — я опробовал первый пришедший мне в голову, лобовой: он не очень изящен, но действенен. А именно:
- для начала создал отдельный пользовательский аккаунт — именно для чистоты эксперимента;
- затем в домашнем каталоге нового пользователя создал файл
~/home/.xinitrc
с единственной строкой:exec /usr/bin/gnome-shell
- задал в /etc/inittab 3-й уровень запуска;
- перезагрузил машину и авторизовался от лица нового пользователя;
- запустил сеанс Иксов из командной строки с помощью startx.
После этого GNOME Shell предстал передо мной в своем первозданном виде, не отягощённый наследием прошлых настроек. А именно — примерно в таком:
Правда, и здесь разобрать можно не много — так что попробую рассказать на словах.
На последнем скриншоте представлен так называемый оверлейный режим GNOME Shell, основными элементами которого являются:
- панель вдоль верхнего края экрана;
- боковая панель (sidebar);
- область рабочих мест (workplaces);
- управляющая кнопка.
В верхней панели по умолчанию наблюдается всего три элемента: кнопка активации (Activities) слева, иконка с именем пользователя справа и часы в середине. Кнопка активации служит для переключения из оверлейного режима в режим показа текущего рабочего места и обратно. Тот же эффект достигается переводом курсора в крайний левый угол экрана. С часам всё ясно. А щелчок на иконке с именем пользователя вызывает управляющее меню, о котором речь пойдёт позже.
Сайдбар образован серией субэлементов. Первым сверху можно видеть строку поиска как приложений, так и имён файлов. Поиск инкрементный, осуществляется по всей файловой системе, но на удивление быстро:
Ниже расположена область приложений (Applications). По умолчанию в ней представлены иконки запуска браузера FireFox, почтового клиента Evolution и текстового процессора из Openoffice.org (последний у меня не установлен, и потому его писктограмма не представлена). По мере открытия приложений их иконки появляются строкой ниже умолчальных, как это можно видеть на пятом скриншоте: они служат для переключения на соответствующее рабочее место и окно в нём. Кнопка Browse разворачивает главное меню приложений GNOME, первой строкой в котором идут чеще всего запускаемые приложения (Frequent):
Каждый пункт главного меню разворачивается, как и в стандартном интерфейсе GNOME:
Далее вниз по сайдбару идут так называемые «места» (places); это аналог одноименного пункта главного менб в традиционном интерфейсе, он содержит некий фиксированный список каталогов и тех каталогов, на которые сделаны закладки в Nautilus’е. Каковые и раскрываются в области рабочих полей при щелчке мышью:
Наконец, область документов содержит список последних открывавшихся файлов прикладных программ (в хронологическом порядке). Щелчок на значке Brouse разворачивает их полный список:
Если он не помещается на экран — то будет выведен постранично, как на следующем скриншоте (впрочем, это уже не умолчальный вид):
Щелчок на имени файла открывает его в том приложении, к которому он приписан, и делает это в области рабочих мест, как можно было видеть на скриншоте 10.
Внимательный читатель заметил, что, говоря об оласти рабочих мест, я в отношении оных использую множественное число. Хотя на умолчальных скриншотах представлено лишь единственное синее поле для размещения открывающихся окон. Откуда же они берутся во множестве?
Тут самое время вспомнить про большую красную управляющую кнопку в правом нижнем углу экрана. Именно нажатие на неё и создаёт новые workplaces в необходимом для комфорта количестве. Например, вот таком:
В каждом из них, как и на стандартных виртуальных десктопах, можно открыть любое количество приложений и документов в собственных окнах. А большой и жирный минус посреди последнего, пустого, рабочего места символизирует, что нажатием на него оно может быть закрыто. Подчеркну — закрыть можно только последнее рабочее место, и только в том случае, если в нём не открыто ни одного окна.
В оверлейном режиме никакую работу в окнах открытых приложений выполнять невозможно: их, то есть окна, можно только перетаскивать с одного (рабочего) места на другое (столь же рабочее). Но переход к трудовому (то есть оконному) режиму осуществляется очень просто — щелчком на нужном workplace или, для более точной привязки, на изображении нужного окна внутри него. После этого workplace разворачивается на полный экран, и выглядит подобно любому виртуальному десктопу в традиционном интерфейсе GNOME (и прочих DE или WM):
Переход между окнами внутри развёрнутого workplace осуществляется циклически, привычной комбинацией клавиш — Alt+Tab (вперёд) и Shift+Alt+Tab (назад). А переход между рабочими местами возможен не только через переключение в оверлейный режим, но и комбинациями клавиш Alt+Control+Right и Alt+Control+Left. Однако тут он уже не циклический, останавливаясь на первом или последнем из существующих workplace, соответственно.
Вообще-то, передать специфику GNOME Shell словами или даже статическими скриншотами довольно сложно — тут всё дело в динамике. Благо, оболочка эта имеет встроенное средство для записи скринкастов — но это уже отдельная история. Как отдельного разговора требуют настройки среды и оценка её особенностей для пользователя. К этим вопросам я надеюсь вернуться в ближайшее время.
А под занавес сегодняшней пьесы — несколько слов об источниках информации. Они не слишком обильны. Во-первых, это README-файлы в /usr/share/doc/gnome-shell-2.27.3/
и /usr/share/doc/mutter-2.27.5/
. Во-вторых — официальный сайт проекта GnomeShell . Перевод пары фрагментов с него можно найти здесь и здесь.
Первый лучше всего подходит бля первичного
2 saturn721
Воспоминаниями об unixinfo навеяло :)
%s/Щелчёк/Щелчок/
принято