Будущее Linux Mint: окружение Cinnamon

Дистрибутив Linux Mint начал свое существование как скромный проект, добавивший к стандартной версии Ubuntu кодеки и собственные инструменты. Со временем популярность нового дистрибутива росла как на дрожжах и в конце 2011 года он вышел на первое место в рейтинге DistroWatch.

Оставлю за бортом вопрос корректности этого рейтинга — важно лишь, что Linux Mint, похоже, действительно близок по популярности к своему именитому родителю. Более того, некоторыми пользователями он воспринимается как «правильная Ubuntu».

И вот, то время как Ubuntu перешла на весьма неоднозначно принятую пользователями оболочку Unity, в Linux Mint долгое время наблюдалась неопределенность и шатание. Давно стало ясно, что Unity использоваться не будет, но что же тогда? Версия Linux Mint 11, вышедшая весной 2011 года, стала последней, где использовался традиционный рабочий стол на основе GNOME 2. Оставаться дальше на устаревшей платформе, разработка которой полностью прекратилась, было нельзя. В Linux Mint 12 была сделана попытка перейти на GNOME 3…

Полумеры — дополнения MGSE

Поскольку оболочка GNOME Shell не соответствовала требованиям разработчиков, в Linux Mint 12 ее доработали, насколько это было возможно, с помощью пакета дополнений Mint GNOME Shell Extensions (MGSE)

Целью было вернуть в GNOME Shell ту функциональность, что присутствовала в GNOME 2, но была намеренно удалена в угоду «планшетно-смартфонным» амбициям.

В MGSE входят дополнения, которые добавляют в GNOME Shell нижнюю панель, а на нее -кнопку меню, сходного с традиционным Mint Menu, и список открытых окон. Кроме того, были добавлены различные мелкие дополнения (в количестве 10 штук), без которых в системе недоставало самой базовой функциональности. При создании MGSE была проделана поистине героическая работа по приведению GNOME Shell в мало-мальски удобоваримый вид, но результат все равно не оправдал ожиданий.

Десктоп Linux Mint 12 — это странная химера, слепленная из «родных» элементов GNOME Shell и не самых удачных имитаций элементов GNOME 2, а к странностям и ограничениям самого GNOME Shell теперь добавились проблемы целого зоопарка дополнений. Кроме того, сама архитектура дополнений GNOME Shell оказалась существенно ограниченной: дополнения способны изменить лишь малую долю функциональности оболочки, они не могут взаимодействовать друг с другом, а порядок их загрузки невозможно контролировать. Закономерно, что создатель Linux Mint Клемент Лефебр (Clement Lefebvre), понял полную бесперспективность дальнейший мучений с дополнениями и в конце 2011 года объявил о форке GNOME Shell, получившем название Cinnamon.

Знакомимся с Cinnamon

Несмотря на то, что проекту Cinnamon всего несколько месяцев, он уже выглядит достаточно впечатляюще. Официальный сайт проекта — http://cinnamon.linuxmint.com — сделан стильно и профессионально.

Девиз нового проекта («Люби свой Linux, чувствуй себя как дома, делай дело!») прекрасно отображает его цель — создать удобное и хорошо настраиваемое, привычное и понятное рабочее окружение на основе технологий GNOME 3 и GNOME Shell.

На сайте уже есть пакеты для установки Cinnamon в дистрибутивы Linux Mint, Ubuntu, Fedora, openSUSE, Arch Linux и Gentoo, а также инструкции по сборке из исходных кодов. Отдельно представлены имеющиеся темы, апплеты и расширения, а также есть подробное руководство по созданию апплета (http://cinnamon.linuxmint.com/?p=156), что очень важно для привлечения разработчиков.

Что же представляет собой Cinnamon по состоянию на февраль 2012 года (версия 1.2)? После установки новая оболочка появляется как отдельная сессия при входе в систему.

Выбрав эту сессию, мы видим десктоп Cinnamon, который очень внешне похож на привычный и понятный десктоп GNOME 2.

Внизу экрана размещается единственная панель с кнопкой главного меню, набором иконок быстрого запуска приложений, списком открытых окон, апплетами, индикаторами и переключателем рабочих столов. Открытие и закрытие окон, меню и индикаторов сопровождается красивой и ненавязчивой анимацией. Все элементы панели снабжены всплывающими подсказками.
Главное меню сделано по образу и подобию Mint Menu. Слева находится избранное (то же, что в оверлее стандартного GNOME Shell). Все меню сделано двухуровневым: слева — категории, а справа — содержимое. Щелчок правой кнопкой мыши на любой программе открывает контекстное меню, позволяющее добавить ее на панель, на рабочий стол или в избранное. Строка поиска активна сразу же при наборе с клавиатуры и обновляет результаты по мере ввода. Поиск работает сносно, но иногда дает странные совпадения и не блещет интеллектом — например, запрос «br» выдает «Brasero» и «Image Viewer», но не находит веб-браузер.

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

Режим оверлея, вокруг которого в GNOME Shell по сути крутится вся работа с системой, в Cinnamon низвели до простого списка окон на активном рабочем столе. Работает он аналогично плагину Expo в Compiz и даже вызывается по привычной комбинации клавиш + + <стрелка вниз>.
На мой взгляд, это очень правильное решение, поскольку оверлей в GNOME Shell нарушал ряд принципов юзабилити.

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

Настройка Cinnamon осуществляется утилитой Cinnamon Settings.

Панель можно разместить снизу или сверху (вертикально пока нельзя). Есть и режим с двумя панелями, как в классическом GNOME 2. Кроме того, панель может автоматически «прятаться», но не имеет «умного» режима скрытия при перекрывании окнами. Можно настраивать формат даты и включить иконку оверлея в верхнем левом углу.

На вкладке Themes представлены темы Cinnamon. По умолчанию доступна только одна тема, а дополнительные (уже сейчас их немало) потребуется скачивать с официального сайта и вручную распаковывать в директорию ~/.themes — в следующих версиях этот процесс обещают автоматизировать.

На вкладке Effects можно настроить эффекты для различных операций с окнами. Количество доступных эффектов огромно, но как бы я ни менял настройки, это не влияло на поведение окон — видимо, в текущей версии что-то не работает.
Кроме дополнений в стиле GNOME Shell в Cinnamon появились апплеты — специальные дополнения, расширяющие функциональность панели. Для апплетов создан свой упрощенный API и именно его рекомендуется использовать. Традиционные расширения оставлены для более глобальных модификаций поведения оболочки. Апплетов в данный момент совсем немного, но можно не сомневаться, что и их число скоро возрастет.

Недостатки

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

Настройки Cinnamon не интегрированы в стандартную панель настроек GNOME 3, что вносит путаницу. Приложение Advanced Settings, где в обычном GNOME 3 меняются темы виджетов и окон, «не дружит» с Cinnamon — мне так и не удалось поменять обрамление окон. На панели отображаются сразу два индикатора раскладок клавиатуры: один унаследован от Ubuntu, а второй — «родной» от GNOME Shell. По идее, первый нужно убрать, но я не понял, как это сделать.

Наконец, Cinnamon пока совершенно не локализован. В общем, все эти недочеты — типичные «болезни роста», которые наверняка будут устранены в следующих версиях.

Впечатления и выводы

Мои впечатления от Linux Mint 12 были удручающими: вместе с отказом от GNOME 2 система потеряла свой шарм и отточенность всех деталей интерфейса. Дополнения MGSE выглядели и вели себя, как неудобные, наспех сделанные «костыли», кое-как приспособленные к непригодной к работе оболочке GNOME Shell моя вера в успех Linux Mint вернулась. Новая оболочка уже сейчас вполне функциональна и пригодна к повседневному использованию. Она содержит все то, что было в GNOME 2, но базируется на актуальной версии платформы GNOME и не тянет за собой груз устаревших зависимостей и технологий. На мой взгляд, Cinnamon вполне может в кратчайшее время превзойти по популярности GNOME Shell, а то и вовсе вытеснить его из состава основных дистрибутивов.

Единственная большая проблема Cinnamon — это его достаточно шаткая база. Разработчики GNOME Shell печально известны игнорированием мнения пользователей и авторов дистрибутивов, так что никакого содействия с их стороны, видимо, ждать не приходится. Со временем проекты неизбежно разойдутся настолько, что синхронизация кода с GNOME Shell станет затруднительной.

Кроме того, уже сейчас Клементу Лефебру пришлось форкнуть в дополнение к GNOME Shell еще и оконный менеджер Mutter (форк был назван Muffin). Не вызовет ли это со временем цепную реакцию, когда все новые компоненты «ванильного» GNOME 3 будет нуждаться в патчах или форках, чтобы обеспечивать работу Cinnamon? Хватит ли у небольшой команды Linux Mint ресурсов на их поддержку? Будем надеяться, что хватит.

На примере Cinnamon мы опять стали свидетелями фрагментации в мире десктопных рабочих окружений. Еще год-два назад в «больших» дистрибутивах встречались в основном только GNOME 2 и KDE 4. Сейчас помимо KDE 4 у нас есть GNOME Shell (в openSUSE и Fedora), Unity (в Ubuntu) и Cinnamon (в Linux Mint), а на подходе еще и Pantheon Desktop от команды elementary OS… Все они совершенно несовместимы друг с другом на уровне тем оформления, настроек, апплетов и дополнений. Для каждой среды надо заново писать тысячи раз уже писанные календари, часы и апплеты погоды, для каждой нужно создавать свои темы и исправлять однотипные баги и регрессии. Это, безусловно, болезненная проблема, однако такова суть открытого ПО — всегда есть выбор и всегда есть свобода переписать все так, как считаешь правильным.

Cinnamon — очень перспективный и бурно развивающийся проект, который наверняка не только украсит новый релиз Linix Mint 13, но и найдет свое место в других дистрибутивах.

Семен Есилевский [email protected]


http://blog.wel.org.ua

работаю админом, прогером сеошнегом :)

Leave a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Загрузка...
Menu Title