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.
This commit is contained in:
Calum Lind 2018-10-16 13:15:07 +01:00
parent ec47720686
commit 91164d8dbf
8 changed files with 228 additions and 156 deletions

59
CHANGELOG.md Normal file
View File

@ -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.

View File

@ -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.

29
DEPENDS
View File

@ -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.

102
DEPENDS.md Normal file
View File

@ -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

View File

@ -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

57
README.md Normal file
View File

@ -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"

View File

@ -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

View File

@ -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',