Plugins - Novik/ruTorrent GitHub Wiki

Plugins

ruTorrent is designed with a robust plugin system. The reason for this is to allow users to customize the behavior of the WebUI, and exlude the parts they do not need.

Every plugin has his own directory inside ruTorrent/plugins.

Attention! Please install only those plugins you really need. The more plugins are installed - the longer load of the ruTorrent interface.

(note: many plugins will require a commandline php installation to be set in ruTorrent/conf/config.php (or ruTorrent/conf/users/USERNAME/config.php). Please check your distro for how to install.)

Uninstallation

Three cases are exists:

  1. Remove plugins directory with all its contents. Or
  2. Mark plugin as not loaded in the file conf/plugins.ini. Or
  3. Mark plugin as not loaded on the ruTorrent interface (check context menu on the tab 'Plugins'). This way may be unavailable for some plugins.

Attention! If you select points 1 or 2, don't forget to restart rtorrent after this.

Configuration

With multiusers configuration you have ability to configure every plugin for every user separately. For that you must create directory ruTorrent/conf/users/USERNAME/plugins/plugin-name, copy to it file of plugins configuration - conf.php - and corret this file. Here USERNAME is users login, plugin-name - name of plugin.

For example, you have two users - dick and tom, and each of them want to use concrete utility for torrent creation in the plugin Create. For that you can make something like

mkdir -p /var/www/ruTorrent/conf/users/tom/plugins/create
mkdir -p /var/www/ruTorrent/conf/users/dick/plugins/create
cp /var/www/ruTorrent/plugins/create/conf.php /var/www/ruTorrent/conf/users/tom/plugins/create
cp /var/www/ruTorrent/plugins/create/conf.php /var/www/ruTorrent/conf/users/dick/plugins/create

after that don't forget to change value of variable $useExternal inside tom/plugins/create/conf.php and dick/plugins/create/conf.php.

Starting plugins with rtorrent

Plugins will load when the webui is opened. If you have plugins which need to poll for data (like rss or scheduler) you may wish to have them start when rtorrent starts, regardless of whether or not the webui has been loaded. All plugins can be brought up with a single .rtorrent.rc command. Be sure to edit this command for:

  • php path Your path may be different
  • ruTorrent location ruTorrent may be installed in a different location on your system
  • webusername you may or may not be using web authentication, if you aren't, remove the username entirely, if you are, edit it accordingly

(the following is for user tom with ruTorrent installed at /var/www/ruTorrent)

rtorrent version 0.9+:

execute2 = {sh,-c,/usr/bin/php /var/www/ruTorrent/php/initplugins.php tom &}

or for older rtorrent version:

execute = {sh,-c,/usr/bin/php /var/www/ruTorrent/php/initplugins.php tom &}

Currently there are the following plugins:

  • _cloudflare - this plugin provides cloudflare scraping for websites protected by the DDOS protection service.
  • _getdir - this plugin helps ruTorrent find and render directories.
  • _noty - this plugin provides the notification functionality for other plugins.
  • _noty2 - replacement for _noty using the Web Notifications API instead of the jQuery plugin noty.
  • _task - this plugin provides the possibility of running various scripts on the host system.
  • AutoTools - realizes some automation functions (autolabel, automove).
  • Check_Port - adds an incoming port status indicator to the bottom bar.
  • Chunks - this plugin shows info on torrent pieces (which pieces have downloaded).
  • Cookies - allows to define a set of cookies for trackers which use such method of authorization.
  • Cpuload - shows cpu loading on the bottom bar in an easy to read fashion.
  • Сreate - adds the command of new torrent creation.
  • Data - this plugin adds an http download option to the "files" tab and torrent menu.
  • DataDir - allows to change the torrent's data directory.
  • DiskSpace - shows remaining space on the bottom bar in an easy to read fashion.
  • Edit - allows to edit the trackers list of the existing torrent.
  • EraseData - adds "Delete with the data" to the right click context menu.
  • ExtRatio - this plugin extends the functionality of the ratio plugin.
  • ExtSearch - adds an internal search function to many popular public and private sites
  • Feeds - this plugin is intended for making RSS feeds with information of torrents.
  • FileDrop - allows users to drag multiple torrents from desktop to the browser.
  • GeoIP - shows country name and flag for connected peers.
  • History - this plugin is designed to log a history of torrents.
  • HTTPRPC - similar to RPC but with low bandwidth use in mind.
  • IPad - allows ruTorrent to work properly on iPad-like devices.
  • LoginMgr - this plugin is used for sites where cookies fail, to help support RSS and ExtSearch
  • LookAt - allows to search for torrent name in external sources.
  • Mediainfo - this plugin is intended to display media file information.
  • Ratio - allows to set different ratio limitations for groups of torrents.
  • Retrackers - automatically adds defined re-trackers for newly added torrents.
  • RPC - a plugin for linking rtorrent and a web server. (Replacement for mod_scgi).
  • RSS - realizes operations with RSS-feeds.
  • RSSURLRewrite - this plugin is used to rewrite http links for rss using regular expressions.
  • Rutracker_check - checks the rutracker.org tracker for updated/deleted torrents.
  • Scheduler - allows to change speed limitations of downloads/uploads depending on hour of the day and day of the week.
  • Screenshots - this plugin is intended to show screenshots from video files.
  • SeedingTime - adds the column with the torrent's finishing time to torrents list.
  • Show_peers_like_wtorrent - changes the format of values in "Seeds" and "Peers" columns of the torrents list.
  • Source - this plugin lets you download the .torrent file.
  • Spectrogram - This plugin is intended to show spectrogram of audio files.
  • Theme - adds several themes and the ability to choose which one to use from the settings menu.
  • Throttle - allows to set different speed limitations for groups of torrents.
  • TrackLabels - adds a set of automatically generated by trackers' names labels onto categories pane.
  • Trafic - adds a subsystem of the traffic counting.
  • Unpack - unpack downloaded torrents.
  • UploadETA - Add upload target and ETA columns to torrent list.
  • XMPP - send notification through xmpp about finished downloads.

3rd Party Plugins

  • Autodl-irssi - irc bot for auto downloading
  • Chat - plugin adds a chatbox
  • HostName - plugin which show host column for peers
  • InstantSearch - plugin allows you to search for running torrents, displaying results instantly
  • Logoff - plugin allows you to switch users or logoff
  • NFO - plugin for displaying the content of the .nfo file
  • Pause -- plugin to pause the ui
  • rutorrentMobile - ruTorrent for mobile devices
  • tadd-labels - plugin which makes labeling torrents easier
  • toggle_details_button - plugin which adds a button to toggle details (next to "General" tab)