KDE — один из основных рабочих столов свободных *nix-систем. Но когда во времена перехода на версию 4 разработчики кардинально изменили интерфейс, множество пользователей от KDE отказались. Разработчики учли это, и следующий мажорный релиз был скорее эволюционным, нежели революционным.
Введение
Прежде всего, пятой версии рабочего стола KDE не существует в принципе. Под этим названием скрывается целая плеяда приложений и ПО, а именно:
- Qt — «костяк» всего KDE, набор библиотек, отвечающих за графику и многое другое;
- KDE Frameworks 5, представляющий собой портированный на Qt 5 набор библиотек, ранее сосредоточенный в монолитном пакете kdelibs;
- KDE Plasma 5 — собственно пользовательское окружение KDE со всеми виджетами и плазмоидами;
- KDE Applications 14.12 — набор приложений, построенных на базе KDE Frameworks 5.
Разумеется, по отдельности все это рассматривать смысла не имеет, так что в статье коснемся всего упомянутого.
Архитектура и установка
Как уже было сказано, вместо использования монолитного пакета kdelibs разработчики перешли на модель с разделением функциональности и более мелкими пакетами. Пакеты эти разбиты на уровни, каждый последующий зависит от более низкого:
- Первый уровень расширяет возможности библиотек Qt — например, сюда относятся KArchive, KCoreAddons и KWindowSystem.
- Второй уровень расширяет возможности первого добавлением некоторого функционала, специфичного для данной платформы, — в число таковых входит модуль для интернационализации KI18n или модуль обработки фатальных ошибок KCrash.
- Третий уровень представляет все остальные функции KDE — на данном уровне и находится библиотека для работы с плазмоидами. Также здесь располагается, к примеру, KDEWebKit.
Помимо этих уровней, существуют еще два набора библиотек. В частности, для облегчения портирования имеется слой совместимости с KDE 4, куда включены такие модули, как KHTML, KJS и KMediaPlayer. Про Qt 5 смысла особого рассказывать нет, упомяну лишь, что он стал еще более кросс-платформенный. В самом KDE Plasma 5 стоит отметить поддержку Wayland. Пока еще она не полная, портирован только оконный менеджер KWin, и весь код, специфичный для данного проекта, вынесен в отдельный модуль. Все остальное планируется довести до ума в 2015 году. Кроме того, появился менеджер устройств Bluetooth — BlueDevil, позволяющий настраивать беспроводные мыши, клавиатуры и другие подобные устройства.
Для установки новой оболочки KDE в Ubuntu 14.10 набираем следующие команды:
$ sudo apt-add-repository ppa:kubuntu-ppa/next
$ sudo apt update
$ sudo apt install kubuntu-plasma5-desktop
После этого в диспетчере рабочих столов выбираем Plasma.
GUI. Первые впечатления
Во время запуска появится заставка, более всего напоминающая попугайский хвост. Справедливости ради стоит отметить, что она хоть и цветистая, но достаточно плавная. Загружается KDE где-то секунд 25 — для стабильной версии это непозволительно много, но в случае Ubuntu это preview-релиз, так что подобное поведение, хотя и с натяжкой, допустимо. После запуска будет показан абсолютно пустой рабочий стол с панелью в нижней части экрана — практически во всех современных десктопах такое оформление считается нормой, хотя компьютерщикам старой школы это крайне непривычно.
INFO
В KDE Plasma 5 в качестве Display Manager’а на замену KDM пришел SDDM.
Посмотрим на панель. На ней у нас, как обычно, в левой части иконка лаунчера, а в правой — систрей. При нажатии на лаунчер появляется меню с вкладками, которые выбираются при наведении мыши. Сменяться вкладки должны плавно, но на деле же (особенно при первом нажатии) это происходит рывками. Само меню полупрозрачное, так что любители эффектов могут быть довольны. Кроме того, нет никакого поля для поиска — по всей видимости, подразумевается, что люди знают о возможности поиска и без такого поля. В систрее же (помимо часов) по умолчанию находится регулировка громкости, буфер обмена, уведомления об устройствах и сетевые подключения. Все остальное скрыто в отдельном выпадающем меню — решение, безусловно, удобное.
В этой версии KDE имеется два лаунчера: один из них стандартный, Kickoff, второй же сделан в стиле старого доброго классического меню «Пуск». Последний будет легковесной заменой стандартному, если все, что от него требуется, — запускать приложения.
Обратим внимание на оформление окна. По умолчанию они оформлены в цветовой гамме Oxygen, с равномерной раскраской элементов управления. По щелчку правой кнопкой на обрамлении вызывается системное меню, в котором, на первый взгляд, не очень много пунктов (Minimize, Maximize, Attach as tab to и Close), но стоит только развернуть подменю More Actions, как глазам тут же предстанет пугающее разнообразие действий. Помимо стандартных изменения размеров и перемещения, здесь еще есть возможность закрепить над и под всеми, развернуть на полный экран и многое другое. Если же и этого окажется недостаточно — добро пожаловать в Special Window Settings, где можно настроить буквально все. Решение спрятать данные пункты меню в подменю очень разумно — тем не менее, может быть, стоило бы вообще убрать некоторые пункты, настроив возможность добавить их обратно?
Тем для пятого KDE мало. Де-факто в стандартной поставке всего одна целостная — Breeze. Схем же оформления чуть больше — около пяти. Но при этом некоторые из них очень неаккуратны — так, одна обесцвечивает шрифты меню.
Для настройки (в том числе добавления/удаления) шрифтов в System Settings появился отдельный модуль. Раньше эти настройки были спрятаны в оформлении приложений, что выглядело достаточно неинтуитивно.
Настройки переключения окон также очень велики — по умолчанию при переключении они отображаются в вертикальной панели слева, но можно настроить вывод окон в старом классическом горизонтальном стиле, а можно и вовсе выводить значки а-ля Windows версии до XP включительно. Допустимо и сменить комбинацию клавиш для переключения окон.
Многие диалоговые окна пока что отображаются как попало — в плане компоновки внешнего вида. Например, легко может случиться такое, что текст в новом окне наезжает на кнопки. Строки меню в приложениях нет. Это, правда, зависит от приложения, но тенденция налицо. При попытке вызвать справку в старых приложениях KDE 4 (которых большинство) вылетает ошибка и справка не запускается.
Виджетов, которые можно разместить на рабочем столе, не так уж и много. Из полезных можно выделить разве что System Load Viewer — для просмотра нагрузки. Остальные же выглядят баловством и украшательством. Панель их добавления «переехала» с нижней части рабочего стола в боковую и, соответственно, изменила свою ориентацию с горизонтальной на вертикальную. Из-за «переселения» шрифт в описании стал крупнее, как и значки, что облегчит жизнь пользователям, имеющим проблемы со зрением. Появилась и функция отмены, что позволяет быстро восстановить нечаянно удаленный виджет.
С локализацией возникли некоторые трудности. Нет, язык выбирается нормально, но после применения настроек (с выходом и последующим заходом) plasmashell постоянно вылетает. Были также замечены некоторые проблемы с прокруткой колесиком мыши — во многих приложениях она не работает вообще, приходится использовать классическую полосу прокрутки.
Приложения
Самое значительное изменение — замена внутренней поисковой машины Nepomuk на Baloo. Baloo позволяет делать то же самое, что делала Nepomuk (а именно производить полнотекстовый поиск и определять взаимоотношения между документами, например определять, какие файлы каким контактам соответствуют), и улучшает данные возможности. Работает она крайне быстро и не нагружает процессор, так что шум вентилятора мешать не будет. Nepomuk же нагружала процессор достаточно ощутимо, чтобы это было заметно. Стандартный поиск файлов и папок работает абсолютно так же, как и подобный функционал в других DE/ОС. А вот для более сложного поиска требуется использовать приложения, входящие в состав KDE, иначе индексация документов вызовет трудности. Так, для поиска соответствий «документ — контакт» нужно использовать Kontact Suite. Огромнейшее преимущество Baloo перед поиском того же Unity заключается в том, что она не показывает изображения при поиске по имени файла. Таким образом, если у тебя имеется серия эротических фотографий с любимым человеком, они не попадут внезапно на проектор, можешь спать спокойно. Настройки поисковой машины находятся в System Settings -> Search. Первым пунктом будет Plasma Search, где можно отключить индексирование для некоторых типов документов. В Desktop Search же определяются места, где искать не надо.
Практически все приложения KDE 5 (во всяком случае, те из них, которые включены в репозиторий kubuntu-ppa/next) пока еще основаны на старых библиотеках. Тем не менее распишу и их функционал. Kontact suite — набор приложений для работы с новостями, календарем и почтой. Включает в себя следующие программы:
- KMail — работа с почтой;
- KOrganizer — органайзер и календарь;
- Akregator — читалка лент новостей;
- KAddresBook — управление контактами
...и многое другое.
KMail поддерживает такие возможности, как OpenPGP, поиск по сообщениям, настраиваемые фильтры и импорт из различных почтовых клиентов (поддерживается импорт в том числе и из The Bat, что среди почтовых клиентов весьма редко встречается). Также клиент позволяет переключаться между различными режимами переписок и по-всякому сортировать. Для фильтрации спама предусмотрены две возможности: запуск программы над письмом и направление письма через пайп в программу (в последнем случае заменяется весь текст).
KOrganizer имеет возможность работы с серверами совместного планирования, такими как Open-Xchange и Citadel. Синхронизация с Google Calendar опять же поддерживается. И плагины — хоть и немного, но есть. В частности, плагин This Day in History вытаскивает из Википедии информацию о событиях, которые когда-либо происходили в этот день. Да, поддерживается в том числе и печать календарей. Их импорт/экспорт возможен в двух стандартных форматах — vCalendar и iCalendar.
Читалка лент новостей, Akregator, поддерживает в числе прочих возможностей маркировку тех или иных сообщений. Кроме того, поскольку он интегрирован в KDE, в нем есть возможность использовать движок HTML (либо KWebKit, либо, в случае более старого KDE, библиотеками которого текущая версия пока что и пользуется, KHTML) для работы с куками. Это бывает полезно, когда некая лента новостей доступна только для зарегистрированных пользователей.
KAddressBook — менеджер контактов. Поддерживает возможность импорта контактов с нескольких серверов LDAP, интеграцию с eGroupWare (посредством протокола XML-RPC), а также показ адреса на карте в браузере (может использоваться как Google Maps, так и MapQuest). В целом данный набор приложений выполняет свои возможности достаточно хорошо, и, самое главное, он интегрирован, что позволяет управлять всеми приложениями из единого центра.
В поставке KDE имеется также Okular. Ранее он назывался KPDF и был предназначен исключительно для работы с PDF-файлами. Сейчас же он поддерживает целую кучу форматов (в том числе и FictionBook, который очень распространен в СНГ). Текст можно в том числе и копировать — правда, из-за способа выделения (выделяется область, а не текст) выбирать какой-либо конкретный фрагмент не очень удобно.
У KDE есть и свой Torrent-клиент KTorrent, из отличительных черт которого можно отметить шифрование торрент-трафика и множество плагинов, например для поиска и для генерации Magnet-ссылок. Также имеется плагин для управления ограничением скорости по расписанию.
С мультимедиа все печальнее. Dragon Player ни в какую не хотел воспроизводить видеофайлы (как на сервере Samba, так и локально), при этом настроек у него толком нет. Amarok же музыку проигрывает нормально, но вот кодировка тегов оставляет желать лучшего — вместо кириллицы отображаются кракозябры.
О системных приложениях говорить особо нечего — они действуют как часы. Из них отказались запускаться только KDE Partition Manager и KSystemLog, все остальные работают более чем отлично. Из подобных приложений отмечу KInfocenter, показывающий очень подробные данные о железе. Конечно, аналогичную информацию можно получить и с помощью текстовых приложений, однако тут она вся централизована. Стоит упомянуть и о KSysGuard, менеджере процессов, который позволяет задавать тип планирования для процесса — для этого нужно выбрать желаемый процесс, нажать F8 и затем указать планировщик.
Также появился менеджер ПО под названием Muon. Выглядит симпатично, но немного недоработан, в частности на вкладке Discover приложения разбиты по категориям, а на вкладке Installed эти категории отсутствуют и имеется гигантский список установленных приложений.
LXQt
Помимо KDE, имеется еще один рабочий стол на основе Qt — LXQt. Он разрабатывается на основе LXDE и Razor-qt и, по словам разработчиков, легковесный, модульный, быстрый и удобный. Его особенности:
- Отсутствие привязки к какому-либо менеджеру окон, что позволяет использовать в качестве такового любой современный (Window Maker, Xfwm4, JWM, IceWM, Openbox).
- Использование Qt — в версии 0.8 это был Qt 4, а в версии 0.9 уже Qt 5 c парой библиотек из KDE Frameworks 5.
- Чрезвычайная гибкость в возможности настроек.
- Легковесный файловый менеджер PCManFM-Qt — порт на Qt PCManFM, основанного на GTK+.
- Интеграция с systemd.
LXQt выглядит идеальным решением для тех, кто желает иметь возможность запускать программы на основе Qt, но по тем или иным причинам не хочет ставить KDE.
Средства разработки
Для KDE имеется как минимум две среды разработки — KDevelop и Qt Creator. Они практически независимы друг от друга (обе используют Qt Designer для построения GUI), и у каждой есть свои сторонники.
KDevelop — универсальная среда разработки в KDE, предназначенная, как правило, для больших проектов. Основное его преимущество — поддержка нескольких языков. Кроме того, из особенностей (помимо стандартного набора автодополнение — подсветка синтаксиса — всплывающая документация) можно отметить графический интерфейс к GDB, поддержку множества систем сборки (в том числе make, cmake, autotools, и есть отдельный плагин для QMake) и систем контроля версий (поддерживаются как минимум Git и Bazaar). Пятая же версия KDevelop, основанная на Qt 5 и KDE Frameworks 5, в настоящее время разрабатывается и будет полноценно поддерживаться и на других платформах. Кроме того, будет добавлен плагин на основе LLVM/Clang, который уменьшит размер кодовой базы и улучшит поддержку C/Objective-C.
Qt Creator заточена исключительно под язык С++ (с QML) и библиотеку Qt. Существуют как open source, так и Professional/Enterprise-версии. Особенности — поскольку она разрабатывалась теми же людьми, что разрабатывают Qt, поддержка отладки Qt-приложений идеальна и поддержка новых версий библиотеки Qt появляется быстрее, чем во всех остальных IDE подобного рода. Однако интерфейс у данной среды разработки оставляет желать лучшего — так, нормальная темная тема появилась только недавно. Да и интеграция с CMake хромает. Свободная версия отличается от коммерческих меньшим количеством плагинов, тем не менее ее функционал достаточно обширен, чтобы на это обращать внимание.
Заключение
Радует, что миграция с KDE 4 на новую версию рабочего стола должна пройти незаметно — кардинальных изменений в нем нет. Возможно, использовать данную версию для работы еще рано (особенно если учитывать, что имеются проблемы с локализацией), но попробовать никто не мешает. Тем не менее, подчеркиваю, KDE 5 (для простоты будем называть его именно так) еще достаточно сырой. Практически все приложения для него все еще идут из-под старой версии — перенесенные приложения пока не готовы. Можно сказать, что KDE 5 еще не вышел, и это будет верно. Но если рассматривать KDE лишь как оболочку и набор библиотек, то он уже вышел. Фактически же подобная путаница происходит из-за смены модели разработки.
Новая версия данного рабочего стола (когда она устаканится) будет интересна прежде всего его приверженцам, новичкам, а также тем, кому не нравится GNOME 3 / Unity. Компьютерщики же старой закалки (а также владельцы маломощных машин), несомненно, предпочтут более легковесные среды. Итог — если ты хочешь «убежать» от третьей версии Гнома из-за того, что она тебе не нравится, но желаешь чего-нибудь аналогичного по функционалу, стоит обратить внимание в сторону KDE.