LeechCraft

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Логотип LeechCraft LeechCraft
Скриншот программы LeechCraft«Сводка»
Тип Браузер, IM-клиент, Аудиоплеер, Агрегатор, P2P-клиент, Менеджер закачек
Разработчик разработчики LeechCraft
Написана на C++, Qt, Boost
Операционная система Linux, Mac OS X, FreeBSD, Windows
Языки интерфейса английский, русский, украинский, немецкий, французский, испанский, итальянский
Первый выпуск 2007
Последняя версия 0.6.70 (4 августа 2014)
Лицензия GPL 3
Сайт leechcraft.org

LeechCraft — свободная кроссплатформенная модульная рабочая среда, включающая в себя браузер, IM-клиент, аудиоплеер, клиент для чтения лент новостей, BitTorrent-клиент и другие модули.

Проект был начат в марте 2006 года. Первая публичная сборка появилась 23 ноября 2007 года.

LeechCraft написан на C++ с использованием библиотек Qt и Boost. Возможна поддержка модулей на отличных от C++ языках программирования, например, отдельным модулем реализована экспериментальная поддержка Python и JavaScript.

Программа входила в состав Linux-репозиториев таких дистрибутивов, как Gentoo[1], openSUSE[2], Fedora[3] (позже была удалена из нескольких дистрибутивов[4]). Последняя публичная версия была выпущена в 2014 году.

Архитектура

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

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

Модули могут взаимодействовать друг с другом. Например, IM-клиент может использовать модули облачного хранения данных для передачи файлов. Модуль медиаплеера может использовать модули интеграции с различными сайтами для поиска новой музыки, рекомендаций, биографий, текстов песен, обложек. Скачанный документ может быть отображен просмотрщиком документов. Взаимодействие скрыто от пользователя: например, RSS-клиент делегирует скачивание лент новостей HTTP-модулю и использует модуль веб-браузера для полноценного отображения HTML-содержимого.[5]

Также модули могут иметь свои собственные субмодули, как, например, блокировщик рекламы для веб-браузера или модули поддержки конкретных протоколов для IM-клиента. Кроме того, модули могут предоставлять другие модули: таким образом, например, реализуется поддержка скриптовых плагинов при помощи модуля Qrosp.

Модули

Для Leechcraft существуют десятки модулей, в частности:[6]

Azoth

Мультипротокольный IM-клиент.

Включает в себя следующие возможности:

  • Многовкладочный интерфейс.
  • Списки приватности.
  • Передача файлов.
  • Расширенные статусы: настроение, занятие, местоположение, играемая мелодия (информация о которой может автоматически браться по MPRIS или из модулей-плееров вроде LMP).
  • Полная поддержка конференций и закладок.
  • Уведомления об участии в чате.
  • Поддержка регистрации аккаунтов из клиента.
  • Уведомления о доставке.
  • Обзор сервисов.
  • Поддержка PGP.

Отдельные модули предоставляют следующие возможности, среди прочих:

  • Автоматическая вставка длинных кусков текста на pastebin.
  • Антиспам.
  • Метаконтакты.
  • Поддержка Adium-стилей.
  • Проверка орфографии.
  • Отображение LaTeX-формул в окне разговора.
  • Поддержка OTR-шифрования.

В настоящее время поддерживаются следующие протоколы:

LMP

Ориентированный на коллекции аудиоплеер, основанный на Phonon.

  • Поддержка социальных сервисов типа Last.FM (при помощи соответствующих модулей, таких как LastFMScrobble) — скробблинг, отображение биографии, похожих исполнителей, персональных рекомендаций, предстоящих событий, недавних релизов, трендов и т. п.
  • Транскодирование и загрузка файлов на портативные устройства.
  • Автоматическое скачивание обложек альбомов, менеджер обложек.
  • Поддержка радио, как персонализированного с Last.FM, так и потоков вроде Digitally Imported.
  • Получение дискографий и возможность предпрослушивания треков, альбомов и исполнителей при помощи соответствующих модулей, таких как модуль TouchStreams, получающий аудиопотоки из В Контакте.
  • Автоматический поиск текстов песен.
  • Динамические и статические списки воспроизведения.
  • Поддержка gapless playback с gstreamer-бекендом.
  • Редактор тегов аудиофайлов.

SB2

Основанный на QML модуль боковой панели, расширяемый при помощи специальных виджетов — кварков[8].

Доступны следующие стандартные кварки:

  • Меню.
  • Кварк открытия и переключения задач и вкладок.
  • Область уведомлений.

Также некоторые модули предоставляют свои кварки, например:

  • TPI отображает прогресс текущих незавершенных задач на панели SB2.
  • Lemon показывает состояние сетевых подключений.
  • GMail Notifier показывает число непрочитанных писем в GMail-ящике.
  • Launchy предоставляет панель быстрого запуска для избранных приложений.

Прочие модули

  • Poshuku — веб-браузер, основанный на WebKit. Имеет плагины[9]:
    • CleanWeb — фильтр рекламы, совместимый с блок-листами расширения AdBlock для Firefox.
    • FatApe — модуль поддержки пользовательских скриптов Greasemonkey.
    • OnlineBookmarks — интеграция с социальными онлайн-сервисами хранения закладок: Read It Later и Del.icio.us.
  • AdvancedNotifications — модуль гибкой настройки уведомлений, позволяющий устанавливать различные параметры уведомлений в ответ на различные события. Позволяет, например, проигрывать определённый звук при заходе конкретного пользователя в конкретную конференцию в IM-модуле, или игнорировать все сообщения от группы контактов.
  • Aggregator — клиент для чтения лент новостей в форматах RSS, Atom и RDF, с поддержкой хранения архива новостей и экспорта в форматы OPML, LCAE, fb2 и PDF.[10].
  • BitTorrent-клиент с поддержкой DHT, Magnet-ссылок, UDP-трекеров, IPv6, последовательной загрузки, переименования файлов и каталогов, ограничений скорости[11].
  • Monocle — просмотрщик документов в форматах PDF, PostScript, DjVu и fb2.
  • LackMan — менеджер пакетов для LeechCraft, работающий в пространстве пользователя и не требующий прав администратора. Служит для установки скриптовых плагинов, наборов медиафайлов или локализаций и т. п. Учитывает зависимости и может автоматически обновлять пакеты.
  • Liznoo — модуль управления питанием, отображающий заряд батарей и обеспечивающий другие модули информацией об электропитании.
  • NetStoreManager — модуль поддержки облачных хранилищ данных (Google Drive).
  • SecMan — менеджер хранения приватной информации — паролей, сохраненных данных форм, и т. д.

Критика

В 2011 году отмечалась незрелость проекта, отход от концепции Unix-way, малое количество разработчиков, слабая документация[12], неинтуитивность[13] и нестабильность работы под ОС Windows[14].

Примечания

  1. Gentoo-Portage - Search Results (англ.) (недоступная ссылка). Архивировано 2 февраля 2013 года.
  2. software.opensuse.org: Search Results (англ.) (недоступная ссылка). Архивировано 2 февраля 2013 года.
  3. Search Results for leechcraft (англ.) (недоступная ссылка). Архивировано 2 февраля 2013 года.
  4. Fedora Packages. (недоступная ссылка)
  5. Краткое описание архитектуры. Дата обращения: 14 апреля 2017. Архивировано 14 апреля 2017 года.
  6. Список модулей. Дата обращения: 14 апреля 2017. Архивировано 24 марта 2016 года.
  7. Список поддерживаемых возможнностей протокола XMPP. Дата обращения: 3 января 2019. Архивировано 4 января 2019 года.
  8. SB2. Дата обращения: 14 апреля 2017. Архивировано 6 марта 2016 года.
  9. Описание плагина Poshuku на официальном сайте Архивная копия от 25 марта 2016 на Wayback Machine.
  10. Описание плагина Aggregator на официальном сайте Архивная копия от 7 марта 2016 на Wayback Machine.
  11. Описание плагина BitTorrent на официальном сайте Архивная копия от 27 сентября 2015 на Wayback Machine.
  12. Игорь Штомпель, Обзор модульного интернет-клиента Leechcraft // Журнал «Open Source» № 76, стр 3-6, 02.02.2011
  13. Alessio, LeechCraft : client p2p e feed reader per Linux, Windows e Mac] // Обзор в Italia SW Magazine, 21.01.2011
  14. » Download LeechCraft Free (недоступная ссылка). Дата обращения: 31 января 2013. Архивировано 2 февраля 2013 года.

Ссылки