среда, 10 июля 2013 г.

Лёгкая система на Qt? May be...

Тема этого поста навеяна статьями Сергея Голубева — [1] и [2]. Если кратко, там делается вывод, что в легких десктопах нет смысла, поскольку всё равно придется запускать тяжелые программы — браузер, офис, вот это всё... Однако, поскольку я уверен, что офисный пакет не нужен абсолютно, а браузеры бывают и полегче, чем жирный FireFox, увешаный плагинами, и монструозный Chrome с отдельным процессом на каждый чих, мне стало интересно, чего такого легкого удастся вытянуть на базе Razor-qt, вдруг для каких-нибудь целей оно и сгодится.

Для этого я создал виртуалку, выделив ей всего 512MB оперативки, завел там Gentoo и пошёл листать Qt-Apps.org, сразу поставив себе задачу ограничиться программами, не требующими для себя ни библиотек KDE, ни GTK+, не говоря уж о Gnome. Еще одним ограничением было наличие программы в официальном репозитории Gentoo, или хотя бы в полуофициальном оверлее Qt.

Итак, что же получилось?


Чего ни хватишься, ничего нет

Свежеустановленный десктоп абсолютно голый и бесполезный, даже MS Windows® и то больше позволяет сделать в ванильном виде: нет даже простейшего текстового редактора, терминала и файлового менеджера (впрочем, к этому мы еще вернемся). Имеется же: рабочий стол с фирменными часами, меню приложений, панель задач, трей и «Центр настроек».

Ну, что ж. Начинаем собирать наш паззл.

Джентельменский набор

Терминал: тут просто — заданным мною ограничениям удовлетворил только один вариант — QTerminal. Без особых изысков, но вполне функциональная вещь. Плюс: имеет quake-режим, правда, по горизонтали лепится исключительно по центру, что мне категорически не нравится. Минус: сыроват, некоторые настройки не сохраняются между сеансами.

Текстовый редактор: из сразу перепробованного — QWriter, Tea и JuffEd — лично мне приглянулся лишь последний. QWriter, как нам любезно сообщает автор — его дипломный проект и, в общем-то, не для того сделан, чтоб им пользоваться. Tea функционален, но крайне непривычен в управлении и настройках. JuffEd же никаких нареканий не вызвал — да, это не комбайн a-la Kate, но мы же сами хотели что-нибудь полегче...

Web-браузер: снова у нас нет выбора — QupZilla. Вполне приличный, впрочем надо специально постараться, чтоб испортить Qt WebKit... Правда, и легкость тут уже относительная...

Файловый менеджер: а вот тут меня поджидала засада. Что qtFM, изображенный на скриншоте выше (на фоне браузера, терминала и редактора), что Andromeda — никуда не годятся. От слова «совсем» — они банально не умеют открывать файлы: qtFM никак не умеет, а Andromeda всё подряд отправляет в браузер (правда, можно использовать в контекстном меню «Открыть как...» и каждый раз выбирать бинарник). Никакой работы с архивами в них тоже не предусмотрено. Копировать/перемещать/удалять они, конечно, могут, но доверие уже потеряно. Остается лишь старый добрый mc, либо взятый в обход репозитория Double Commander (см. скриншот справа).

Про одёжки

Если пытливый читатель установит всё вышеперечисленное и посмотрит на экран, то будет несколько разочарован — картинка далека от приведенного на скриншотах. Да и честно говоря — страшненькая картика-то... Что делать?

  • Обязательно установить наборы иконок:
    • стандартный hicolor-icon-theme
    • и привычный oxygen-icons.
  • Из желательного:
    • настроить (возможно доустановив) стиль виджетов — в моем случае это QtCurve в «плоском» оформлении;
    • поставить какие-нибудь симпатичные декорации окон для OpenBox — дефолтные сами по себе, может быть, и ничего, но в данном контексте не смотрятся, я выбрал «Oxygen for Openbox»;
    • шлифануть это всё композитным менеджером, например — compton.

Ах да, еще шрифты. Я использовал Terminus, семейство Droid и Anonymous Pro.

Лирическое отступление

В Gentoo с Razor-qt по умолчанию предлагается поставить LightDM, что я поначалу и сделал. Как оказалось — зря: во-первых, в силу своего убунтовского происхождения, он тянет за собой кое-что из Gnome, что в данном случае минус (хоть и несущественный), а во-вторых, начал он почему-то определять на моей виртуалке разрешение в разы больше заданного...

В итоге поставил я вместо него SLiM — простой, симпатичный, с минимумом зависимостей.

Важные мелочи

Допиливаем среду до состояния комфорта.

Во-первых, нам точно понадобится индикатор раскладки — QXKB, позволяющий управлять вводом символов не хуже, чем это сделано в KDE (см. мою статью «Ввод „типографских“ символов с клавиатуры»).

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

В-третьих, утилита для работы с буфером обмена — Qlipper. Помимо возможностей KDE-шного Klipper, позволяет задать еще и постоянные кусочки текста (в KDE для этого служит отдельный плазмоид).

Идем дальше. В качестве калькулятора мне кажется предпочтительным SpeedCrunch, хотя для большинства случаев сгодится и более примитивный Qalculator. А вот утилитки для просмотра и выбора символов я, к сожалению, не нашел.

Для ведения заметок рекомендую zNotes — помимо обычного текста умеет простенькие todo-списки с галочками.

И закончим сервисную часть установкой словаря — GoldenDict — он, если кто не в курсе, поддерживает кучу разных форматов и умеет подключаться к разнообразным сайтам.

Зачем, зачем всё это?..

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

Эти ваши интернеты

В эту категорию у нас войдут:

QuiteRSS
Читалка новостей (см. скриншот справа). Ленты, метки, встроенный webkit-браузер, возможности «поделиться» в соцсетях (включая VK, что выдает нам национальное происхождение программы), вот это всё... Для своего класса — хорошая функциональная вещь.
qBittorrent
Torrent-клиент. В плане рюшечек и удобств, пожалуй, немного недотягивает до KTorrent, но всё необходимое, включая шифрование, имеется. Бонус — веб-управление и встроенный трекер.
Мессенжеры
Я остановился на двух вариантах: мультипротокольный qutIM (опять же российского происхождения) и jabber-only Psi. Оба, по большому счету, в представлениях не нуждаются.
И, поскольку linux-версия Skype использует именно Qt, с ним тоже проблем не предвидится.

Отдельно, пожалуй, стоит упомянуть монстуозный комбайн с вертикальным взлетом LeechCraft. Отдельно, потому что он давно уже не просто кобайн, а скорее веб-ориентированное окружение рабочего стола. Будь у меня нетбук, я бы, пожалуй, попробовал его установить в таком качестве... А использовать его внутри DE — это как из пушки по воробьям.

Потехе час

Медиапроигрывателей в любой системе гораздо больше, чем достаточно... Поэтому упомяну только четыре. Видео — два классических варианта: SMPlayer и VLC, последний, правда, норовит притащить по зависимостям кучу библиотек, в том числе и gtk-шных, но на то и Gentoo, чтобы пресекать такие желания в зародыше. Аудио: для любителей коллекций в стиле Amarok — Clementine — подобно «старшему брату», поддерживает разнообразные интернет-источники (на скриншоте в плей-листе стоит альбом с Jamendo); для фанатов WinAMP и клонов — Qmmp.

Лучше один раз увидеть

Осторожно, сейчас пойдет речь о вещах, в которых я ничего не понимаю, т.е. о графике.

Photivo
Фото-процессор — аналог darktable или, если взять пример из иного мира, Lightroom. Насколько фунционал соответствует, сказать не могу — см. предыдущий абзац.
Pencil
Программа для рисования и анимации, одновременно векторная и растровая. Именно для рисования, а не для редактирования графики...
Смотрелки
Этого добра навалом, но я остановился на двух: полноэкранная Photo — по названию можно догадаться, что обвешивать ее разными дополнительными функциями фантазия авторов не позволяет; и оконная nomacs, которая помимо собственно просмотра предоставляет базовые возможности обработки.

В общем, как на мой дилетантский взгляд, не хватает редакторов-тяжеловесов, таких как GIMP и Inkscape (оба требуют GTK+). С другой стороны, легкими их всё же не назовешь, да и вообще для серьезной графики потребны ресурсы куда как большие, чем для того, чтобы нормально работали мейнстримные окружения — не для нетбуков задача.

Слова, слова, слова

А со словами всё очень даже и неплохо. Если вы, конечно, не приверженец офисных пакетов.

Для работы с TeX и LaTeX имеются Texmaker и его форк TeXstudio. Ну, или LyX его особой магией WYSIWYM.

Полученные PDF-файлы (а также PostScript и DjVu) можно просматривать qpdfview. Утилиту для просмотра DVI я искать не стал — этим форматом кто-то вообще еще пользуется? Впрочем, древнего вида Xdvik всё равно установился по зависимостям.

Для чтения же маловысокохудожественной литературы (форматы ePub, FB2, mobi...) есть FBReader.

И снова о монстрах. Говоря об электронных книгах, как-то неудобно будет обойти вниманием calibre — программу для управления «библиотекой», которая ковертирует между собой кучу форматов, редактирует метаданные и т.д. — подробнее можно прочитать у того же Голубева [3]. Требует пакет PyQt4 (после нее я внес и эту зависимость в список нежелательных). Очень, очень тормозная штука, такое ощущение, что там на Python реализовано всё, включая растеризацию и отрисовку контролов. На конфигурации, где она пойдет с более-менее неубийственно раздражающей скоростью, любое известное мне DE будет просто летать, а на нашем условном нетбуке ей делать нечего.

Писать же тексты лучше всего в программе FocusWriter. Must have для всякого, чья «жизнь есть текст» хотя бы отчасти. Скриншотов не привожу, поскольку в силу специфики ни один скрин не передаст главного впечатления и ощущений от этой программы.

И на закуску — можно даже верстать. Scribus вполне укладывается в заданные ограничения и вполне шустр (на пустых страницах... не уверен насчет насыщенной верстки, да и сомневаюсь в ее оправданности — см. конец предыдущего подраздела).

Кодируем помаленьку...

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

Конечно, в pure-Qt окружении можно заниматься pure-Qt разработкой. Для этой цели есть «родной» инструмент — Qt Creator. Если же такая степень интеграции с фреймворком не требуется, можно взять одну из (немного) более легких IDE для C++ — Monkey Studio или QDevelop.

Для Python и Ruby тоже имеется интересная IDE — Eric. Там много вкусного, но надо сразу учитывать, что она требует PyQt4 и временами подтормаживает.

Что касается Free Pascal и Lazarus, ситуация следующая: Lazarus по умолчанию собирается с gtk-интерфейсом, поэтому из портежей мы его просто так не установим. Однако если собирать его из исходников, то никаких проблем: сначала вручную устанавливаем библиотеку-переходник, затем собираем Lazarus волшебным заклинанием «make bigide LCL_PLATFORM=qt».

И прочая

Вообще-то на Qt-Apps.org зарегистрировано великое множество программ, включая игры, IDE для программирования микроконтроллеров и проектирования электронных схем. Так что если у кого свои специфические задачи, начинать смотреть надо оттуда. В рамки обзора вся эта разношёрстная компания не поместится.


Итого

Изначально я планировал закончить обзор чем-нибудь глубокомысленно-банальным, однако все карты спутала появившаяся уже во время написания (да, это многодневный пост, наверное, самый долгий за историю этого блога) новость о том, что на Qt переходит окружение рабочего стола LXDE, причем с Razor-Qt они уже договорились о сотрудничестве. Это уже вполне зрелая среда, так что в итоге должно получиться неплохо... Будем ждать.

Комментариев нет:

Отправить комментарий