LeechCraft

Поделись знанием:
Перейти к: навигация, поиск
LeechCraft

«Сводка»
Тип

Браузер, IM-клиент, Аудиоплеер, Аггрегатор, P2P-клиент, Менеджер закачек

Разработчик

разработчики LeechCraft

Написана на

C++, Qt, Boost

Операционная система

Linux, Mac OS X, FreeBSD, Windows

Языки интерфейса

английский, русский, украинский, немецкий, французский, испанский, итальянский

Первый выпуск

2007

Последняя версия

0.6.70 (4 августа 2014)

Лицензия

GPL 3

Сайт

[leechcraft.org aft.org]

LeechCraftLeechCraftК:Программное обеспечение, разработанное в 2007 году

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

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

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

Программа входит в состав Linux-репозиториев таких дистрибутивов, как Gentoo[1], openSUSE[2], Fedora[3].





Архитектура

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

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

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

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

Модули

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

Azoth

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

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

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

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

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

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

LMP

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

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

SB2

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

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

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

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

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

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

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

Критика

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

Напишите отзыв о статье "LeechCraft"

Примечания

  1. [gentoo-portage.com/Search?search=leechcraft- Gentoo-Portage - Search Results] (англ.). [www.webcitation.org/6E8mNmYuA Архивировано из первоисточника 3 февраля 2013].
  2. [software.opensuse.org/search?q=leechcraft&exclude_debug=true software.opensuse.org: Search Results] (англ.). [www.webcitation.org/6E8mOJC89 Архивировано из первоисточника 3 февраля 2013].
  3. [pkgs.org/search/?keyword=leechcraft Search Results for leechcraft] (англ.). [www.webcitation.org/6E8mPPcc8 Архивировано из первоисточника 3 февраля 2013].
  4. [leechcraft.org/development-leechcraft-architecture Краткое описание архитектуры]
  5. [leechcraft.org/ru/plugins Список модулей]
  6. [leechcraft.org/ru/plugins-azoth/xoox Список поддерживаемых возможнностей протокола XMPP]
  7. [leechcraft.org/ru/plugins-sb2 SB2]
  8. [leechcraft.org/ru/plugins-poshuku Описание плагина Poshuku на официальном сайте]
  9. [leechcraft.org/ru/plugins-aggregator Описание плагина Aggregator на официальном сайте]
  10. [leechcraft.org/ru/plugins-bittorrent Описание плагина BitTorrent на официальном сайте]
  11. Игорь Штомпель, Обзор модульного интернет-клиента Leechcraft // Журнал «Open Source» № 76, стр 3-6, 02.02.2011
  12. Alessio, LeechCraft : client p2p e feed reader per Linux, Windows e Mac] // Обзор в Italia SW Magazine, 21.01.2011
  13. [leechcraft.findmysoft.com/ » Download LeechCraft Free]. Проверено 31 января 2013. [www.webcitation.org/6E8mQJaPl Архивировано из первоисточника 3 февраля 2013].

Ссылки

  • [leechcraft.org/ Официальный сайт]
  • Alessio, [web.archive.org/web/20110203083426/www.italiasw.com/p2p/leechcraft-client-p2p-e-feed-reader-per-linux-windows-e-mac.html LeechCraft : client p2p e feed reader per Linux, Windows e Mac] // Обзор в Italia SW Magazine, 21.01.2011  (итал.)
  • Игорь Штомпель, [osa.samag.ru/info/OpenSource076.zip Обзор модульного интернет-клиента Leechcraft] // Журнал «Open Source» № 76, стр 3-6, 02.02.2011  (PDF, 1.7 МБ)
  • [www.lffl.org/2010/05/leechcraft-aggregatore-rss-client.html LeechCraft Aggregatore RSS Client BitTorrent Client FTP e altro ancora in una Sola Applicazione] // Linux Freedom … for Live, 24.5.10  (итал.)
  • Constantinos, [osarena.net/logismiko/applications/leechcraft-mia-poliefarmogi-me-browser-chat-rss-torrent-ke-alla.html LeechCraft: Μια πολυεφαρμογή με browser, chat, rss, torrent και άλλα!] // Обзор на OSArena.net, 2 января 2013  (греч.)
  • George Norman, [leechcraft.findmysoft.com/ LeechCraft — Cross-platform Modular Live Environment] // Обзор на FindMysoft.com, 12 ноября 2012  (англ.)
  • [krasnoglaziki.rpod.ru/281966.html Упоминание и мини-обзор новой версии в подкасте «Красноглазики» № 88]
  • [techviewpodcast.wordpress.com/2012/11/04/techview-podcast-12-43folge179/ Обзор в подкасте «Techview-Podcast» № 179]  (нем.)

Отрывок, характеризующий LeechCraft

– Так наступление окончательно решено? – сказал Болконский.
– И знаете ли, мой милый, мне кажется, что решительно Буонапарте потерял свою латынь. Вы знаете, что нынче получено от него письмо к императору. – Долгоруков улыбнулся значительно.
– Вот как! Что ж он пишет? – спросил Болконский.
– Что он может писать? Традиридира и т. п., всё только с целью выиграть время. Я вам говорю, что он у нас в руках; это верно! Но что забавнее всего, – сказал он, вдруг добродушно засмеявшись, – это то, что никак не могли придумать, как ему адресовать ответ? Ежели не консулу, само собою разумеется не императору, то генералу Буонапарту, как мне казалось.
– Но между тем, чтобы не признавать императором, и тем, чтобы называть генералом Буонапарте, есть разница, – сказал Болконский.
– В том то и дело, – смеясь и перебивая, быстро говорил Долгоруков. – Вы знаете Билибина, он очень умный человек, он предлагал адресовать: «узурпатору и врагу человеческого рода».
Долгоруков весело захохотал.
– Не более того? – заметил Болконский.
– Но всё таки Билибин нашел серьезный титул адреса. И остроумный и умный человек.
– Как же?
– Главе французского правительства, au chef du gouverienement francais, – серьезно и с удовольствием сказал князь Долгоруков. – Не правда ли, что хорошо?
– Хорошо, но очень не понравится ему, – заметил Болконский.
– О, и очень! Мой брат знает его: он не раз обедал у него, у теперешнего императора, в Париже и говорил мне, что он не видал более утонченного и хитрого дипломата: знаете, соединение французской ловкости и итальянского актерства? Вы знаете его анекдоты с графом Марковым? Только один граф Марков умел с ним обращаться. Вы знаете историю платка? Это прелесть!
И словоохотливый Долгоруков, обращаясь то к Борису, то к князю Андрею, рассказал, как Бонапарт, желая испытать Маркова, нашего посланника, нарочно уронил перед ним платок и остановился, глядя на него, ожидая, вероятно, услуги от Маркова и как, Марков тотчас же уронил рядом свой платок и поднял свой, не поднимая платка Бонапарта.
– Charmant, [Очаровательно,] – сказал Болконский, – но вот что, князь, я пришел к вам просителем за этого молодого человека. Видите ли что?…
Но князь Андрей не успел докончить, как в комнату вошел адъютант, который звал князя Долгорукова к императору.
– Ах, какая досада! – сказал Долгоруков, поспешно вставая и пожимая руки князя Андрея и Бориса. – Вы знаете, я очень рад сделать всё, что от меня зависит, и для вас и для этого милого молодого человека. – Он еще раз пожал руку Бориса с выражением добродушного, искреннего и оживленного легкомыслия. – Но вы видите… до другого раза!
Бориса волновала мысль о той близости к высшей власти, в которой он в эту минуту чувствовал себя. Он сознавал себя здесь в соприкосновении с теми пружинами, которые руководили всеми теми громадными движениями масс, которых он в своем полку чувствовал себя маленькою, покорною и ничтожной» частью. Они вышли в коридор вслед за князем Долгоруковым и встретили выходившего (из той двери комнаты государя, в которую вошел Долгоруков) невысокого человека в штатском платье, с умным лицом и резкой чертой выставленной вперед челюсти, которая, не портя его, придавала ему особенную живость и изворотливость выражения. Этот невысокий человек кивнул, как своему, Долгорукому и пристально холодным взглядом стал вглядываться в князя Андрея, идя прямо на него и видимо, ожидая, чтобы князь Андрей поклонился ему или дал дорогу. Князь Андрей не сделал ни того, ни другого; в лице его выразилась злоба, и молодой человек, отвернувшись, прошел стороной коридора.
– Кто это? – спросил Борис.
– Это один из самых замечательнейших, но неприятнейших мне людей. Это министр иностранных дел, князь Адам Чарторижский.
– Вот эти люди, – сказал Болконский со вздохом, который он не мог подавить, в то время как они выходили из дворца, – вот эти то люди решают судьбы народов.
На другой день войска выступили в поход, и Борис не успел до самого Аустерлицкого сражения побывать ни у Болконского, ни у Долгорукова и остался еще на время в Измайловском полку.


На заре 16 числа эскадрон Денисова, в котором служил Николай Ростов, и который был в отряде князя Багратиона, двинулся с ночлега в дело, как говорили, и, пройдя около версты позади других колонн, был остановлен на большой дороге. Ростов видел, как мимо его прошли вперед казаки, 1 й и 2 й эскадрон гусар, пехотные батальоны с артиллерией и проехали генералы Багратион и Долгоруков с адъютантами. Весь страх, который он, как и прежде, испытывал перед делом; вся внутренняя борьба, посредством которой он преодолевал этот страх; все его мечтания о том, как он по гусарски отличится в этом деле, – пропали даром. Эскадрон их был оставлен в резерве, и Николай Ростов скучно и тоскливо провел этот день. В 9 м часу утра он услыхал пальбу впереди себя, крики ура, видел привозимых назад раненых (их было немного) и, наконец, видел, как в середине сотни казаков провели целый отряд французских кавалеристов. Очевидно, дело было кончено, и дело было, очевидно небольшое, но счастливое. Проходившие назад солдаты и офицеры рассказывали о блестящей победе, о занятии города Вишау и взятии в плен целого французского эскадрона. День был ясный, солнечный, после сильного ночного заморозка, и веселый блеск осеннего дня совпадал с известием о победе, которое передавали не только рассказы участвовавших в нем, но и радостное выражение лиц солдат, офицеров, генералов и адъютантов, ехавших туда и оттуда мимо Ростова. Тем больнее щемило сердце Николая, напрасно перестрадавшего весь страх, предшествующий сражению, и пробывшего этот веселый день в бездействии.
– Ростов, иди сюда, выпьем с горя! – крикнул Денисов, усевшись на краю дороги перед фляжкой и закуской.
Офицеры собрались кружком, закусывая и разговаривая, около погребца Денисова.
– Вот еще одного ведут! – сказал один из офицеров, указывая на французского пленного драгуна, которого вели пешком два казака.
Один из них вел в поводу взятую у пленного рослую и красивую французскую лошадь.
– Продай лошадь! – крикнул Денисов казаку.
– Изволь, ваше благородие…
Офицеры встали и окружили казаков и пленного француза. Французский драгун был молодой малый, альзасец, говоривший по французски с немецким акцентом. Он задыхался от волнения, лицо его было красно, и, услыхав французский язык, он быстро заговорил с офицерами, обращаясь то к тому, то к другому. Он говорил, что его бы не взяли; что он не виноват в том, что его взяли, а виноват le caporal, который послал его захватить попоны, что он ему говорил, что уже русские там. И ко всякому слову он прибавлял: mais qu'on ne fasse pas de mal a mon petit cheval [Но не обижайте мою лошадку,] и ласкал свою лошадь. Видно было, что он не понимал хорошенько, где он находится. Он то извинялся, что его взяли, то, предполагая перед собою свое начальство, выказывал свою солдатскую исправность и заботливость о службе. Он донес с собой в наш арьергард во всей свежести атмосферу французского войска, которое так чуждо было для нас.
Казаки отдали лошадь за два червонца, и Ростов, теперь, получив деньги, самый богатый из офицеров, купил ее.
– Mais qu'on ne fasse pas de mal a mon petit cheval, – добродушно сказал альзасец Ростову, когда лошадь передана была гусару.
Ростов, улыбаясь, успокоил драгуна и дал ему денег.
– Алё! Алё! – сказал казак, трогая за руку пленного, чтобы он шел дальше.
– Государь! Государь! – вдруг послышалось между гусарами.
Всё побежало, заторопилось, и Ростов увидал сзади по дороге несколько подъезжающих всадников с белыми султанами на шляпах. В одну минуту все были на местах и ждали. Ростов не помнил и не чувствовал, как он добежал до своего места и сел на лошадь. Мгновенно прошло его сожаление о неучастии в деле, его будничное расположение духа в кругу приглядевшихся лиц, мгновенно исчезла всякая мысль о себе: он весь поглощен был чувством счастия, происходящего от близости государя. Он чувствовал себя одною этою близостью вознагражденным за потерю нынешнего дня. Он был счастлив, как любовник, дождавшийся ожидаемого свидания. Не смея оглядываться во фронте и не оглядываясь, он чувствовал восторженным чутьем его приближение. И он чувствовал это не по одному звуку копыт лошадей приближавшейся кавалькады, но он чувствовал это потому, что, по мере приближения, всё светлее, радостнее и значительнее и праздничнее делалось вокруг него. Всё ближе и ближе подвигалось это солнце для Ростова, распространяя вокруг себя лучи кроткого и величественного света, и вот он уже чувствует себя захваченным этими лучами, он слышит его голос – этот ласковый, спокойный, величественный и вместе с тем столь простой голос. Как и должно было быть по чувству Ростова, наступила мертвая тишина, и в этой тишине раздались звуки голоса государя.
– Les huzards de Pavlograd? [Павлоградские гусары?] – вопросительно сказал он.