LeechCraft 0.5 released

    Hello, Habr!

    A couple of days ago, a new version of the LeechCraft client’s Internet harvester was released - 0.5.0. On Habré several years ago this program already appeared .

    In short, LeechCraft is a modular cross-platform “about everything” application in C ++ and Qt that combines a browser, an RSS reader, a torrent client, and now also IM. The modularity of the application does not mean just support for these modules themselves, but the fact that, firstly, every function, from the largest (browser, reader, IM core) to the smallest (ad blocking, support for styles in IM, antispam) is poorly implemented connected modules, one way or another interacting with each other. The description of architectural decisions and crutches that arose there during the life of the project draws on a separate article, so we won’t go into it, except to answer one common question right away - yes, now this whole thing is spinning in one process, but in the future (and this is really planned for the next release), the modules will be posted into various processes with the preservation of all (well, or almost all :)) of the buns from their interaction with each other. Thanks to Qt's meta-objects this is quite feasible.



    In version 0.4, a bunch of new modules appeared: for example, a module for supporting script plug-ins (the application itself is written in C ++ / Qt), a user-space package manager, a password manager, and much more. But we will not dwell on this in detail today, but rather talk about the new in version 0.5.

    Perhaps the most important change in this version is the new Azoth module, an IM client , multi-protocol and also modular (yes, in LeechCraft each module can have its own modules, and so arbitrarily deep). For example, the conference in Azoth looks something like this: either, with improved Adium support in master: or, for example, XMPP commands: Version 0.5 includes XMPP support modules (along with a bunch of protocol extensions











    ) and IRC, and the master branch has already implemented initial support for MRIM and MSN, and work has begun on an adapter for the Telepathy framework.

    Adium styles are also supported by a separate module: There is a module for automatic TeX formatting: There are also plugins that implement message history, automatic insertion of long texts on peystbins (it is convenient to throw source codes in conferences, for example), antispam, publication of current songs and much more. There are also integration modules with microblogging services through XMPP like Psto.net.









    This release also introduced a new notification subsystem, Advanced Notifications, which allows you to flexibly configure responses to various events. For example, you can set up a special sound alert for messages from people in the Personal group, and when you receive a message from the Favorite contact, you can generally call the command to blink LEDs on the keyboard. Managing these reactions is somewhat similar to configuring iptables rule chains: Also in this release were added the GreaseMonkey script support module and the synchronization module with social bookmark storage services. Finally, we give a couple of screenshots. Package manager: RSS reader: Web browser with an open next roster Azoth: and without a roster:

























    LeechCraft works best under various Linux systems, however, there is a Windows version, but for various reasons it has a slightly lower priority. So that this article is not considered completely PR, I won’t give direct links to the download pages - everything is on the project’s website :)

    Well, about plans for the future. In the main branch, a new system for working with tabs is already being sawn (you can see such a sidebar on the side in one of the screenshots at the beginning), an email client, an intelligent semantic storage, data / settings synchronization infrastructure, and a lot more. It is planned to switch to WebKit2, in which chrome-style multiprocessing is implemented out of the box, but for this you will have to wait for Qt 5. to exit.

    PS According to requests in the comments, a direct link to download → here . Well, at the same time I will give a link toFAQ , where there are answers to questions such as “why”, “why” and “when”

    Also popular now: