mirror of
https://git.deluge-torrent.org/deluge
synced 2025-07-29 04:08:47 +00:00
[Docs] Reorganise and add sections from wiki
- Change the layout and contents of docs to be better organised and follow ideas from: https://www.divio.com/blog/documentation/ - Use markdown for non-technical documents to speed up writing. - Added new sections and imported documents from Trac wiki. Build fixes: - Added a patch to fix recommonmark 0.4 and doc referencing: https://github.com/rtfd/recommonmark/issues/93 - Set docs build in tox to Py2.7 since there are problems with autodoc mocking multiple inheritance on Python 3 resulting in metaclass errors. - Supressed warning about `modules.rst` not in the toctree by creating a static `modules.rst` with `:orphan:` file directive and add to git. Also skip creating this toc file with sphinx-apidoc in setup and tox. - Simplified finding exported RPC and JSON API methods by adding an autodoc custom class directive. Removed unneeded __rpcapi.py.
This commit is contained in:
parent
9dcd90056d
commit
82ecf8a416
31 changed files with 728 additions and 101 deletions
82
docs/source/devguide/tutorials/01-setup.md
Normal file
82
docs/source/devguide/tutorials/01-setup.md
Normal file
|
@ -0,0 +1,82 @@
|
|||
# Setup tutorial for Deluge development
|
||||
|
||||
The aim of this tutorial is to download the source code and setup an
|
||||
environment to enable development work on Deluge.
|
||||
|
||||
## Pre-requisites
|
||||
|
||||
To build and run the Deluge applications they depends on tools and libraries as
|
||||
listed in DEPENDS.md.
|
||||
|
||||
Almost all of the Python packages dependencies will be installed using pip but
|
||||
there are some packages or libraries that are required to be installed to the
|
||||
system.
|
||||
|
||||
### Ubuntu
|
||||
|
||||
#### Build tools
|
||||
|
||||
sudo apt install git intltool closure-compiler
|
||||
pip install --user tox tox-venv
|
||||
|
||||
#### Runtime libraries and tools
|
||||
|
||||
sudo apt install python-libtorrent python-geoip python-dbus python-glade2 \
|
||||
librsvg2-common xdg-utils python-appindicator python-notify python-pygame
|
||||
|
||||
## Setup development environment
|
||||
|
||||
### Clone Deluge git repository
|
||||
|
||||
Download the latest git code to local folder.
|
||||
|
||||
git clone git://deluge-torrent.org/deluge.git
|
||||
cd deluge
|
||||
|
||||
### Create Python virtual environment
|
||||
|
||||
Creation of a [Python virtual environment] keeps the development isolated
|
||||
and easier to maintain and tox has an option to make this process easier:
|
||||
|
||||
tox -e denv3
|
||||
|
||||
Activate virtual environment:
|
||||
|
||||
source .venv/bin/activate
|
||||
|
||||
Deluge will be installed by tox in _develop_ mode which creates links back
|
||||
to source code so that changes will be reflected immediately without repeated
|
||||
installation. Check it is installed with:
|
||||
|
||||
(.venv) $ deluge --version
|
||||
deluge-gtk 2.0.0b2.dev149
|
||||
libtorrent: 1.1.9.0
|
||||
Python: 2.7.12
|
||||
OS: Linux Ubuntu 16.04 xenial
|
||||
|
||||
### Setup pre-commit hook
|
||||
|
||||
Using [pre-commit] ensures submitted code is checked for quality when
|
||||
creating git commits.
|
||||
|
||||
(.venv) $ pre-commit install
|
||||
|
||||
You are now ready to start playing with the source code.
|
||||
|
||||
### Reference
|
||||
|
||||
- [Contributing]
|
||||
- [Key requirements concepts]
|
||||
|
||||
<!--
|
||||
## How-to guides
|
||||
|
||||
- How to install plugins in develop mode?
|
||||
- How to setup and test translations?
|
||||
- How to run tests?
|
||||
- How to create a plugin?
|
||||
-->
|
||||
|
||||
[pre-commit]: https://pre-commit.com
|
||||
[contributing]: https://dev.deluge-torrent.org/wiki/Contributing
|
||||
[requirements topic]: ../topics/requirements.md
|
5
docs/source/devguide/tutorials/index.md
Normal file
5
docs/source/devguide/tutorials/index.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Developer tutorials
|
||||
|
||||
A list of articles to help developers get started with Deluge.
|
||||
|
||||
- [Development setup](01-setup.md)
|
Loading…
Add table
Add a link
Reference in a new issue