Version 18 (modified by hassanibraheem, 15 years ago) (diff)

Clarify that needs python-setuptools installed




  1. Development/Plugins
    1. Intro
    2. Creating a new plugin
    3. Distributing a plugin
  2. Various random facts
    1. Adding a status-field to core
    2. Adding a column to gtk-ui
    3. alerts
    4. signals
  3. Examples


Plugins consist of a core part and ui parts for the various user-interfaces.

They are distributed using python eggs

Creating a new plugin

Here is is a script to create a new plugin :

Note: You may need to install the python-setuptools package if you don't have it.

Go to an empty directory, and run:

python --name MyPlugin2 --basepath . --author-name "Your Name" --author-email ""

This will create a new directory <plugin-name> , contaning a basic plugin template. And it will link it from ~/.config/deluge/plugins

Restart deluge and deluged.

Distributing a plugin

Go to the plugin-name directory, and type

python bdist_egg

This will build an egg.

Rename the egg to <plugin-name>.egg and share it,

Various random facts

  • any "export_*" method in the core plugin is exposed as "plugin-name_*" in deluge.ui.client
  • the deluge.ui.client api is available to core plugins as "from deluge.plugins.coreclient import client"

Adding a status-field to core

Adding a column to gtk-ui