From bd4a3cba38d15f784f2805d4f4eff7d58b901927 Mon Sep 17 00:00:00 2001 From: Calum Lind Date: Wed, 3 Apr 2019 13:31:38 +0100 Subject: [PATCH] [Docs] Update install details and add more pages --- docs/source/devguide/packaging/index.md | 1 + docs/source/devguide/packaging/windows.md | 10 ++++ docs/source/devguide/tutorials/01-setup.md | 5 +- docs/source/how-to/set-mime-type.md | 24 ++++++++++ docs/source/index.rst | 1 + docs/source/intro/01-install.md | 53 ++++++++++++++++++++++ docs/source/intro/index.md | 8 ++++ packaging/osx/Instructions.md | 48 ++++++++++++++++++++ 8 files changed, 148 insertions(+), 2 deletions(-) create mode 100644 docs/source/devguide/packaging/windows.md create mode 100644 docs/source/how-to/set-mime-type.md create mode 100644 docs/source/intro/01-install.md create mode 100644 docs/source/intro/index.md create mode 100644 packaging/osx/Instructions.md diff --git a/docs/source/devguide/packaging/index.md b/docs/source/devguide/packaging/index.md index 979679141..9da6a27d7 100644 --- a/docs/source/devguide/packaging/index.md +++ b/docs/source/devguide/packaging/index.md @@ -2,3 +2,4 @@ - [Release checklist](release.md) - [Launchpad recipe](launchpad-recipe.md) +- [Windows Packaging](windows.md) diff --git a/docs/source/devguide/packaging/windows.md b/docs/source/devguide/packaging/windows.md new file mode 100644 index 000000000..253eac097 --- /dev/null +++ b/docs/source/devguide/packaging/windows.md @@ -0,0 +1,10 @@ +# Packaging for Windows + +Currently there is no working package for Deluge 2.0. The previous Python freezing +application `bbfreeze` is not compatible with Python 3 and the project is no longer +maintained. + +There are two alternatives `cxfreeze` and `pyinstaller` but neither is trivial with +the GTKUI application. + +See [#3201](https://dev.deluge-torrent.org/ticket/3201) diff --git a/docs/source/devguide/tutorials/01-setup.md b/docs/source/devguide/tutorials/01-setup.md index c993b3c0f..ec2f4f054 100644 --- a/docs/source/devguide/tutorials/01-setup.md +++ b/docs/source/devguide/tutorials/01-setup.md @@ -21,8 +21,9 @@ system. #### 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 + sudo apt install python3-libtorrent python3-geoip python3-dbus python3-gi \ + python3-gi-cairo gir1.2-gtk-3.0 gir1.2-appindicator3 python3-pygame libnotify4 \ + librsvg2-common xdg-utils ## Setup development environment diff --git a/docs/source/how-to/set-mime-type.md b/docs/source/how-to/set-mime-type.md new file mode 100644 index 000000000..fb3edfa68 --- /dev/null +++ b/docs/source/how-to/set-mime-type.md @@ -0,0 +1,24 @@ +# How to set Deluge as default torrent application + +## Check registered mime types + +gio mime application/x-bittorrent +gio mime x-scheme-handler/magnet + +## Set Deluge as default mime + +gio mime x-scheme-handler/magnet deluge.desktop +gio mime application/x-bittorrent deluge.desktop + +## Troubleshoot + +update-mime-database ~/.local/share/mime +update-desktop-database ~/.local/share/applications + +# XDG + +xdg-mime query default x-scheme-handler/magnet + +References: + +https://help.gnome.org/admin/system-admin-guide/stable/mime-types-custom-user.html.en diff --git a/docs/source/index.rst b/docs/source/index.rst index 828252d9b..da1fdfa8a 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -7,6 +7,7 @@ Contents .. toctree:: :maxdepth: 2 + Getting Started Contributing Developer Guide Reference diff --git a/docs/source/intro/01-install.md b/docs/source/intro/01-install.md new file mode 100644 index 000000000..a60380f91 --- /dev/null +++ b/docs/source/intro/01-install.md @@ -0,0 +1,53 @@ +# Installing Deluge + +These are the instructions for installer Deluge. They are a work-in-progress and feel +free to make suggestions for improvement. + +## Ubuntu + +### PPA + +https://launchpad.net/~deluge-team/+archive/ubuntu/develop/ + +### PyPi + +Deluge requires the following system installed packages: + + sudo apt install python3-pip python3-libtorrent python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-appindicator3 + +Install with pip: + + pip install --user deluge + +## Windows + +There is no installer package currently for Windows, but can try Deluge as follows. + +1. Install Python 3.6. +2. Download and extract the `gvsbuild`. +3. Open a terminal. +4. Add directory to PATH: `set PATH=C:\gvsbuild\release;%PATH%` +5. Install Python wheels from gvsbuild: + pip install C:\gvsbuild\release\python\pycairo-1.17.1-cp36-cp36m-win_amd64.whl + pip install C:\gvsbuild\release\python\PyGObject-3.28.3-py3.6-win-amd64.whl +6. Install Deluge + pip install deluge deluge-libtorrent + +## macOS + +There is no `.app` package currently for macOS, but can try Deluge with homebrew. + +1. Install [Homebrew](https://brew.sh/) +2. Open a terminal. +3. Run the following to install required packages: + + brew install pyobject3 gtk+3 adwaita-icon-theme + brew install libtorrent-rasterbar + +4. To fix translations: + + brew link gettext --force + +5. Install Deluge: + + pip3 install deluge diff --git a/docs/source/intro/index.md b/docs/source/intro/index.md new file mode 100644 index 000000000..32d51ea4e --- /dev/null +++ b/docs/source/intro/index.md @@ -0,0 +1,8 @@ +# Getting Started with Deluge + +This is a starting point if you are new to Deluge where we will walk +you through getting up and running with our BitTorrent client. + +1. [Installing Deluge](01-install.md) +2. Using Deluge +3. Install a plugin diff --git a/packaging/osx/Instructions.md b/packaging/osx/Instructions.md new file mode 100644 index 000000000..985052c11 --- /dev/null +++ b/packaging/osx/Instructions.md @@ -0,0 +1,48 @@ +# Packaging setup with jhbuild + +These are the manual step based upon https://wiki.gnome.org/Projects/Jhbuild/Mac_OS + +If you encounter curl stalling on FTP URLs try disabling `epsv` for curl: +`echo no-epsv >> ~/.curlrc` + +1. Install XCode command line developer tools: + + xcode-select --install + +1. Install jhbuild: + + curl -LO https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/gtk-osx-build-setup.sh + sh gtk-osx-build-setup.sh + jhbuild bootstrap + +1. GTK-OSX Build + + 1. Bootstrap GTK and install PyGTK + + jhbuild build python meta-gtk-osx-bootstrap meta-gtk-osx-python + + 1. GTK OSX Themes: + + jhbuild build meta-gtk-osx-themes gtk-quartz-engine + + Note: ​[Quartz patch] if build error; `'height' is uninitialized`. + +1. Install [MacOS bundler] script + + This script is to help package GTK for Deluge. + + curl -OL http://ftp.gnome.org/pub/gnome/sources/gtk-mac-bundler/0.7/gtk-mac-bundler-0.7.4.tar.xz + tar xf gtk-mac-bundler-0.7.4.tar.xz + cd gtk-mac-bundler-0.7.4 + make install + +1. Build libtorrent and deps using ​libtorrent.modules: + + curl -O http://git.deluge-torrent.org/deluge/plain/osx/libtorrent.modules?h=develop + jhbuild -m libtorrent.modules build meta_libtorrent + + - OpenSSL requires "Skip Module (2)" when install stage fails as unable to use DESTDIR path. See ​patch. + - Note on a potential OpenSSL Error: 'libcrypto is a fat file' is due to mixing arch types (i386, x64) in build process. + +[quartz patch]: https://www.xpra.org/trac/attachment/ticket/533/quartz-style-fix.patch +[macos bundler]: https://wiki.gnome.org/Projects/GTK%2B/OSX/Bundling