setup(name='MyPackage', version='1.0', description=
    'You can do anything with MyPackage, anything at all.', url=
    'http://example.com/', author='John Doe', author_email=
    'jdoe@example.com', packages=['mypackage', 'twisted.plugins'])
try:
    from twisted.plugin import IPlugin, getPlugins
except ImportError:
    pass
else:
    list(getPlugins(IPlugin))
How do I write a setup.py for a twistd/twisted plugin that works with setuptools, distribute, etc?