summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCalum Lind <calumlind@gmail.com>2018-10-16 13:15:07 +0100
committerCalum Lind <calumlind@gmail.com>2018-10-16 14:59:00 +0100
commit91164d8dbfa5e52903d3f271cac637f41611e79c (patch)
tree67ab434441d6ba58b516138c4c8d68c55aee5f64
parentec4772068609b5d89d5a6bfb8f9c1ca1bb35704d (diff)
downloaddeluge-91164d8dbfa5e52903d3f271cac637f41611e79c.tar.gz
deluge-91164d8dbfa5e52903d3f271cac637f41611e79c.tar.bz2
deluge-91164d8dbfa5e52903d3f271cac637f41611e79c.zip
Cleanup and use markdown for source text files
Use markdown to aid readability. Update the README and use it for the long_description in setup.py Add detailed requirement information to the DEPENDS files.
-rw-r--r--CHANGELOG.md59
-rw-r--r--ChangeLog53
-rw-r--r--DEPENDS29
-rw-r--r--DEPENDS.md102
-rw-r--r--MANIFEST.in10
-rw-r--r--README.md57
-rw-r--r--README.rst68
-rwxr-xr-xsetup.py6
8 files changed, 228 insertions, 156 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 000000000..ab69d46cd
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,59 @@
+# Deluge Changelog
+
+## Deluge 2.0.0 - (In Development)
+
+- Improved Logging
+- Removed the AutoAdd feature on the core. It's now handled with the AutoAdd
+ plugin, which is also shipped with Deluge, and it does a better job and
+ now, it even supports multiple users perfectly.
+- Authentication/Permission exceptions are now sent to clients and recreated
+ there to allow acting upon them.
+- Enforced the use of the "deluge.plugins" namespace to reduce package
+ names clashing beetween regular packages and deluge plugins.
+- Fix potential for host_id collision when creating hostlist entries.
+- Add Option To Specify Outgoing Connection Interface.
+- Updated SSL/TLS Protocol parameters for better security.
+
+### Core
+
+- Make the distinction between adding to the session new unmanaged torrents
+ and torrents loaded from state. This will break backwards compatability.
+- Pass a copy of an event instead of passing the event arguments to the
+ event handlers. This will break backwards compatability.
+- Allow changing ownership of torrents.
+- File modifications on the auth file are now detected and when they happen,
+ the file is reloaded. Upon finding an old auth file with an old format, an
+ upgrade to the new format is made, file saved, and reloaded.
+- Authentication no longer requires a username/password. If one or both of
+ these is missing, an authentication error will be sent to the client
+ which sould then ask the username/password to the user.
+- Implemented sequential downloads.
+- Provide information about a torrent's pieces states
+
+### GtkUI
+
+- Allow changing ownership of torrents.
+- Host entries in the Connection Manager UI are now editable.
+- Implemented sequential downloads UI handling.
+- Add optional pieces bar instead of a regular progress bar in torrent status tab.
+- Make torrent opening compatible with all unicode paths.
+- Fix magnet association button on Windows.
+- Add keyboard shortcuts for changing queue position:
+ - Up: Ctrl+Alt+Up
+ - Down: Ctrl+Alt+Down
+ - Top: Ctrl+Alt+Shift+Up
+ - Bottom: Ctrl+Alt+Shift+Down
+
+### WebUI
+
+- Server (deluge-web) now daemonizes by default, use '-d' or '--do-not-daemonize' to disable.
+- Fixed the '--base' option to work for regular use, not just with reverse proxies.
+
+### Blocklist Plugin
+
+- Implemented whitelist support to both core and GTK UI.
+- Implemented ip filter cleaning before each update. Restarting the deluge
+ daemon is no longer needed.
+- If "check_after_days" is 0(zero), the timer is not started anymore. It
+ would keep updating one call after the other. If the value changed, the
+ timer is now stopped and restarted using the new value.
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index 66f94e242..000000000
--- a/ChangeLog
+++ /dev/null
@@ -1,53 +0,0 @@
-=== Deluge 2.0 (In Development) ===
-
- * Improved Logging
- * Removed the AutoAdd feature on the core. It's now handled with the AutoAdd
- plugin, which is also shipped with Deluge, and it does a better job and
- now, it even supports multiple users perfectly.
- * Authentication/Permission exceptions are now sent to clients and recreated
- there to allow acting upon them.
- * Enforced the use of the "deluge.plugins" namespace to reduce package
- names clashing beetween regular packages and deluge plugins.
- * Fix potential for host_id collision when creating hostlist entries.
- * Add Option To Specify Outgoing Connection Interface.
- * Updated SSL/TLS Protocol parameters for better security.
-
-==== Core ====
- * Make the distinction between adding to the session new unmanaged torrents
- and torrents loaded from state. This will break backwards compatability.
- * Pass a copy of an event instead of passing the event arguments to the
- event handlers. This will break backwards compatability.
- * Allow changing ownership of torrents.
- * File modifications on the auth file are now detected and when they happen,
- the file is reloaded. Upon finding an old auth file with an old format, an
- upgrade to the new format is made, file saved, and reloaded.
- * Authentication no longer requires a username/password. If one or both of
- these is missing, an authentication error will be sent to the client
- which sould then ask the username/password to the user.
- * Implemented sequential downloads.
- * Provide information about a torrent's pieces states
-
-==== GtkUI ====
- * Allow changing ownership of torrents.
- * Host entries in the Connection Manager UI are now editable.
- * Implemented sequential downloads UI handling.
- * Add optional pieces bar instead of a regular progress bar in torrent status tab.
- * Make torrent opening compatible with all unicode paths.
- * Fix magnet association button on Windows.
- * Add keyboard shortcuts for changing queue position:
- - Up: Ctrl+Alt+Up
- - Down: Ctrl+Alt+Down
- - Top: Ctrl+Alt+Shift+Up
- - Bottom: Ctrl+Alt+Shift+Down
-
-==== WebUI ====
- * Server (deluge-web) now daemonizes by default, use '-d' or '--do-not-daemonize' to disable.
- * Fixed the '--base' option to work for regular use, not just with reverse proxies.
-
-==== Blocklist Plugin ====
- * Implemented whitelist support to both core and GTK UI.
- * Implemented ip filter cleaning before each update. Restarting the deluge
- daemon is no longer needed.
- * If "check_after_days" is 0(zero), the timer is not started anymore. It
- would keep updating one call after the other. If the value changed, the
- timer is now stopped and restarted using the new value.
diff --git a/DEPENDS b/DEPENDS
deleted file mode 100644
index 795a995ff..000000000
--- a/DEPENDS
+++ /dev/null
@@ -1,29 +0,0 @@
-=== Core ===
- * libtorrent (rasterbar) >= 1.1.1
- * python >= 2.7.7
- * setuptools
- * twisted >= 11.1
- * pyopenssl
- * pyxdg
- * chardet
- * gettext
- * python-geoip (optional)
- * geoip-database (optional)
- * setproctitle (optional)
- * pillow (optional)
- * py2-ipaddress (optional, required for Windows IPv6)
- * rencode >= 1.0.2 (optional), python port bundled.
-
-
-=== Gtk UI ===
- * pygtk >= 2.16
- * librsvg
- * xdg-utils
- * intltool
- * python-notify (optional)
- * pygame (optional)
- * python-appindicator (optional)
-
-=== Web UI ===
- * mako
- * slimit (optional), minifies JS files.
diff --git a/DEPENDS.md b/DEPENDS.md
new file mode 100644
index 000000000..10d394584
--- /dev/null
+++ b/DEPENDS.md
@@ -0,0 +1,102 @@
+# Deluge dependencies
+
+The following are required to install and run Deluge. They are separated into
+sections to distinguish the precise requirements for each module.
+
+All modules will require the [common](#common) section dependencies.
+
+## Prerequisite
+
+- [Python] _>= 2.7.7 or >= 3.5_
+
+## Build
+
+- [setuptools]
+- [intltool] - Translation file tool
+- [closure-compiler] - Minify javascript (alternative is [slimit])
+
+## Common
+
+- [Twisted] _>= 16.6_ - Use `TLS` extras for `service_identity` and `idna`.
+- [OpenSSL] _>= 1.0.1_
+- [pyOpenSSL]
+- [Chardet]
+- [gettext]
+- [PyXDG]
+- [six]
+- [zope.interface]
+- [xdg-utils]
+
+#### Optional
+
+- [setproctitle] - Support correctly naming Deluge processes.
+- [Pillow] - Image library for `.ico` support.
+- [rencode] _>= 1.0.2_ - Encoding library with Python port bundled.
+- [dbus-python]
+
+#### Windows OS
+
+- [pywin32]
+- [certifi]
+- [py2-ipaddress] - Optional for Python 2 IPv6 lookup
+
+## Core (deluged daemon)
+
+- [libtorrent] _>= 1.1.1_
+- [GeoIP] - Optional (_Debian: `python-geoip`_)
+
+## GTK UI
+
+- PyGTK
+- [pycairo]
+- [librsvg] _>= 2_
+- [python-appindicator] - Optional
+
+#### MacOS
+
+- [GtkOSXApplication]
+
+## Web UI
+
+- [mako]
+
+## Plugins
+
+### Notifications
+
+Optional dependencies for this plugin.
+
+- [pygame] - Sound
+- [python-notify] - Desktop popup
+
+[python]: https://www.python.org/
+[setuptools]: https://setuptools.readthedocs.io/en/latest/
+[intltool]: https://freedesktop.org/wiki/Software/intltool/
+[closure-compiler]: https://developers.google.com/closure/compiler/
+[slimit]: https://slimit.readthedocs.io/en/latest/
+[openssl]: https://www.openssl.org/
+[pyopenssl]: https://pyopenssl.org
+[twisted]: https://twistedmatrix.com
+[pillow]: https://pypi.org/project/Pillow/
+[libtorrent]: https://libtorrent.org/
+[zope.interface]: https://pypi.org/project/zope.interface/
+[pywin32]: https://github.com/mhammond/pywin32
+[certifi]: https://pypi.org/project/certifi/
+[py2-ipaddress]: https://pypi.org/project/py2-ipaddress/
+[dbus-python]: https://pypi.org/project/dbus-python/
+[setproctitle]: https://pypi.org/project/setproctitle/
+[gtkosxapplication]: https://github.com/jralls/gtk-mac-integration
+[chardet]: https://chardet.github.io/
+[gettext]: https://www.gnu.org/software/gettext/
+[rencode]: https://github.com/aresch/rencode
+[pyxdg]: https://www.freedesktop.org/wiki/Software/pyxdg/
+[six]: https://pythonhosted.org/six/
+[xdg-utils]: https://www.freedesktop.org/wiki/Software/xdg-utils/
+[pycairo]: https://cairographics.org/pycairo/
+[pygobject]: https://pygobject.readthedocs.io/en/latest/
+[geoip]: https://pypi.org/project/GeoIP/
+[mako]: https://www.makotemplates.org/
+[pygame]: https://www.pygame.org/
+[python-notify]: https://packages.ubuntu.com/xenial/python-notify
+[python-appindicator]: https://packages.ubuntu.com/xenial/python-appindicator
+[librsvg]: https://wiki.gnome.org/action/show/Projects/LibRsvg
diff --git a/MANIFEST.in b/MANIFEST.in
index 3ef10fbed..b07724177 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,5 +1,11 @@
-include AUTHORS ChangeLog DEPENDS LICENSE RELEASE-VERSION README.rst
-include msgfmt.py minify_web_js.py version.py gen_web_gettext.py
+include *.md
+include AUTHORS
+include LICENSE
+include RELEASE-VERSION
+include msgfmt.py
+include minify_web_js.py
+include version.py
+include gen_web_gettext.py
graft docs/man
diff --git a/README.md b/README.md
new file mode 100644
index 000000000..470286a35
--- /dev/null
+++ b/README.md
@@ -0,0 +1,57 @@
+# Deluge BitTorrent Client
+
+[![build-status]][travis-deluge] [![docs-status]][rtd-deluge]
+
+Deluge is a BitTorrent client that utilizes a
+daemon/client model. There are various user interfaces available for
+Deluge such as the GTK-UI, the Web-UI and a Console-UI. Deluge uses
+libtorrent in it's backend to handle the BitTorrent protocol.
+
+## Installation
+
+Instruction for installing from source code. See [DEPENDS](DEPENDS.md) for
+build and runtime dependencies. Further details on the wiki:
+[Installing/Source].
+
+ python setup.py build
+ python setup.py install
+
+## Usage
+
+There are various user-interfaces and a daemon for Deluge that can be used as
+follows:
+
+- **Gtk**
+
+ `deluge` or `deluge-gtk`
+
+- **Console**
+
+ `deluge-console`
+
+- **Web**
+
+ `deluge-web`
+
+ Go to http://localhost:8112 and use default password `deluge`.
+
+- **Daemon**
+
+ `deluged`
+
+ See [Thinclient guide] for connecting to the daemon from another machine.
+
+## Contact/Support
+
+- [Homepage](https://deluge-torrent.org)
+- [Support docs][user guide]
+- [Forum](https://forum.deluge-torrent.org)
+- [IRC Freenode #deluge](irc://irc.freenode.net/deluge)
+
+[user guide]: https://dev.deluge-torrent.org/wiki/UserGuide
+[thinclient guide]: https://dev.deluge-torrent.org/wiki/UserGuide/ThinClient
+[installing/source]: https://dev.deluge-torrent.org/wiki/Installing/Source
+[build-status]: https://travis-ci.org/deluge-torrent/deluge.svg "Travis Status"
+[travis-deluge]: https://travis-ci.org/deluge-torrent/deluge
+[docs-status]: https://readthedocs.org/projects/deluge/badge/?version=develop
+[rtd-deluge]: https://deluge.readthedocs.io/en/develop/?badge=develop "Documentation Status"
diff --git a/README.rst b/README.rst
deleted file mode 100644
index 45f10788c..000000000
--- a/README.rst
+++ /dev/null
@@ -1,68 +0,0 @@
-=========================
- Deluge BitTorrent Client
-=========================
-
-|build-status| |docs|
-
-Homepage: http://deluge-torrent.org
-
-Authors:
- Andrew Resch
- Damien Churchill
-
-For contributors and past developers see:
- AUTHORS
-
-==========================
-Installation Instructions:
-==========================
-
-For detailed instructions see: http://dev.deluge-torrent.org/wiki/Installing/Source
-
-Ensure build dependencies are installed, see DEPENDS for a full listing.
-
-Build and install by running::
-
- $ python setup.py build
- $ sudo python setup.py install
-
-================
-Contact/Support:
-================
-
-:Forum: http://forum.deluge-torrent.org
-:IRC Channel: #deluge on irc.freenode.net
-
-===
-FAQ
-===
-
-For the full FAQ see: http://dev.deluge-torrent.org/wiki/Faq
-
-How to start the various user-interfaces:
- Gtk::
-
- deluge or deluge-gtk
-
- Console::
-
- deluge-console
-
- Web::
-
- deluge-web
- Go to http://localhost:8112/ default-password = "deluge"
-
-How do I start the daemon?:
- deluged
-
-I can't connect to the daemon from another machine:
- See: http://dev.deluge-torrent.org/wiki/UserGuide/ThinClient
-
-
-.. |build-status| image:: https://travis-ci.org/deluge-torrent/deluge.svg
- :target: https://travis-ci.org/deluge-torrent/deluge
-
-.. |docs| image:: https://readthedocs.org/projects/deluge/badge/?version=develop
- :target: https://readthedocs.org/projects/deluge/?badge=develop
- :alt: Documentation Status
diff --git a/setup.py b/setup.py
index db45b0f7a..d5fe90933 100755
--- a/setup.py
+++ b/setup.py
@@ -571,10 +571,8 @@ setup(
maintainer='Calum Lind',
maintainer_email='calumlind+deluge@gmail.com',
keywords='torrent bittorrent p2p fileshare filesharing',
- long_description="""Deluge is a BitTorrent client that utilizes a
- daemon/client model. There are various user interfaces available for
- Deluge such as the GTK-UI, the Web-UI and a Console-UI. Deluge uses
- libtorrent in it's backend to handle the BitTorrent protocol.""",
+ long_description=open('README.md').read(),
+ long_description_content_type='text/markdown',
url='https://deluge-torrent.org',
classifiers=[
'Development Status :: 4 - Beta',