LeechCraft

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

LeechCraft

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

Проект был начат в марте 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. Краткое описание архитектуры
  6. Список модулей
  7. Список поддерживаемых возможнностей протокола XMPP
  8. SB2
  9. Описание плагина Poshuku на официальном сайте.
  10. Описание плагина Aggregator на официальном сайте.
  11. Описание плагина BitTorrent на официальном сайте.
  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 года.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.