summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Delaney <idella4@gentoo.org>2016-03-04 16:43:53 +0800
committerIan Delaney <idella4@gentoo.org>2016-03-04 16:43:53 +0800
commita2954c4b3b64664a3abf9eb10acd73d26da850d1 (patch)
tree35e2366820a12c7eb29d73eb0710104bb316ff3c
parentx11-terms/xfce4-terminal: Keyword 0.6.3 for ~arm64 (diff)
parentnet-p2p/deluge: remove unused patch (diff)
downloadgentoo-a2954c4b3b64664a3abf9eb10acd73d26da850d1.tar.gz
gentoo-a2954c4b3b64664a3abf9eb10acd73d26da850d1.tar.bz2
gentoo-a2954c4b3b64664a3abf9eb10acd73d26da850d1.zip
Merge remote-tracking branch 'remotes/PPed72/net-p2p/deluge_fix_live_ebuild'
Pull request: https://github.com/gentoo/gentoo/pull/945
-rw-r--r--net-p2p/deluge/deluge-9999.ebuild46
-rw-r--r--net-p2p/deluge/files/deluge-1.3.5-rb_libtorrent-disable-python-bindings60
2 files changed, 29 insertions, 77 deletions
diff --git a/net-p2p/deluge/deluge-9999.ebuild b/net-p2p/deluge/deluge-9999.ebuild
index 7aa1cdb941fc..41f5ba8550a0 100644
--- a/net-p2p/deluge/deluge-9999.ebuild
+++ b/net-p2p/deluge/deluge-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -25,38 +25,50 @@ fi
LICENSE="GPL-2"
SLOT="0"
IUSE="geoip gtk libnotify setproctitle sound webinterface"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND=">=net-libs/rb_libtorrent-0.14.9[python]
+ dev-python/setuptools[${PYTHON_USEDEP}]
dev-util/intltool"
RDEPEND=">=net-libs/rb_libtorrent-0.14.9[python]
- dev-python/chardet
- dev-python/pyopenssl
- dev-python/pyxdg
- >=dev-python/twisted-core-8.1
- >=dev-python/twisted-web-8.1
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/pyxdg[${PYTHON_USEDEP}]
+ >=dev-python/twisted-core-8.1[${PYTHON_USEDEP}]
+ >=dev-python/twisted-web-8.1[${PYTHON_USEDEP}]
geoip? ( dev-libs/geoip )
gtk? (
- sound? ( dev-python/pygame )
- dev-python/pygobject:2
- >=dev-python/pygtk-2.12
+ sound? ( dev-python/pygame[${PYTHON_USEDEP}] )
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ >=dev-python/pygtk-2.12[${PYTHON_USEDEP}]
gnome-base/librsvg
- libnotify? ( dev-python/notify-python )
+ libnotify? ( dev-python/notify-python[${PYTHON_USEDEP}] )
)
- setproctitle? ( dev-python/setproctitle )
- webinterface? ( dev-python/mako )"
+ setproctitle? ( dev-python/setproctitle[${PYTHON_USEDEP}] )
+ webinterface? ( dev-python/mako[${PYTHON_USEDEP}] )"
python_prepare_all() {
- local PATCHES=(
- "${FILESDIR}"/${PN}-1.3.5-disable_libtorrent_internal_copy.patch
- )
+# Not needed anymore: bug #518354
+# local PATCHES=(
+# "${FILESDIR}"/${PN}-1.3.5-disable_libtorrent_internal_copy.patch
+# )
distutils-r1_python_prepare_all
}
+_distutils-r1_create_setup_cfg() {
+ # bug 531370: deluge has its own plugin system. No need to relocate its egg info files.
+ # Override this call from the distutils-r1 eclass.
+ # This does not respect the distutils-r1 API. DONOT copy this example.
+ :
+}
+
python_install_all() {
distutils-r1_python_install_all
- newinitd "${FILESDIR}"/deluged.init deluged
- newconfd "${FILESDIR}"/deluged.conf deluged
+ newinitd "${FILESDIR}"/deluged.init-2 deluged
+ newconfd "${FILESDIR}"/deluged.conf-2 deluged
+ newinitd "${FILESDIR}"/deluge-web.init deluge-web
+ newconfd "${FILESDIR}"/deluge-web.conf deluge-web
systemd_dounit "${FILESDIR}"/deluged.service
systemd_dounit "${FILESDIR}"/deluge-web.service
}
diff --git a/net-p2p/deluge/files/deluge-1.3.5-rb_libtorrent-disable-python-bindings b/net-p2p/deluge/files/deluge-1.3.5-rb_libtorrent-disable-python-bindings
deleted file mode 100644
index 301019e04aed..000000000000
--- a/net-p2p/deluge/files/deluge-1.3.5-rb_libtorrent-disable-python-bindings
+++ /dev/null
@@ -1,60 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=437356
-
-From 37ea2854a21e50debdf7bc953a3411e5934b74d9 Mon Sep 17 00:00:00 2001
-From: Calum Lind <calumlind+deluge@gmail.com>
-Date: Thu, 27 Sep 2012 16:53:22 +0000
-Subject: Fix 2160 : Disable use of python bindings for libtorrent extensions and replace with session flag
-
-The fixes a GIL issue causing libtorrent segfault. https://code.google.com/p/libtorrent/issues/detail?id=369
-
-Note: The ut_pex plugin (Peer Exchange) will now always be enabled.
----
-diff --git a/deluge/core/core.py b/deluge/core/core.py
-index 4bda811..4ca3d96 100644
---- a/deluge/core/core.py
-+++ b/deluge/core/core.py
-@@ -84,7 +84,10 @@ class Core(component.Component):
- while len(version) < 4:
- version.append(0)
-
-- self.session = lt.session(lt.fingerprint("DE", *version), flags=0)
-+ # Note: All libtorrent python bindings to set plugins/extensions need to be disabled
-+ # due to GIL issue. https://code.google.com/p/libtorrent/issues/detail?id=369
-+ # Setting session flags to 1 enables all libtorrent default plugins
-+ self.session = lt.session(lt.fingerprint("DE", *version), flags=1)
-
- # Load the session state if available
- self.__load_session_state()
-@@ -103,9 +106,11 @@ class Core(component.Component):
- self.session.set_settings(self.settings)
-
- # Load metadata extension
-- self.session.add_extension(lt.create_metadata_plugin)
-- self.session.add_extension(lt.create_ut_metadata_plugin)
-- self.session.add_extension(lt.create_smart_ban_plugin)
-+ # Note: All libtorrent python bindings to set plugins/extensions need to be disabled
-+ # due to GIL issue. https://code.google.com/p/libtorrent/issues/detail?id=369
-+ # self.session.add_extension(lt.create_metadata_plugin)
-+ # self.session.add_extension(lt.create_ut_metadata_plugin)
-+ # self.session.add_extension(lt.create_smart_ban_plugin)
-
- # Create the components
- self.eventmanager = EventManager()
-diff --git a/deluge/core/preferencesmanager.py b/deluge/core/preferencesmanager.py
-index 40070bb..2a5cb1b 100644
---- a/deluge/core/preferencesmanager.py
-+++ b/deluge/core/preferencesmanager.py
-@@ -338,7 +338,10 @@ class PreferencesManager(component.Component):
- def _on_set_utpex(self, key, value):
- log.debug("utpex value set to %s", value)
- if value:
-- self.session.add_extension(lt.create_ut_pex_plugin)
-+ # Note: All libtorrent python bindings to set plugins/extensions need to be disabled
-+ # due to GIL issue. https://code.google.com/p/libtorrent/issues/detail?id=369
-+ #self.session.add_extension(lt.create_ut_pex_plugin)
-+ pass
-
- def _on_set_encryption(self, key, value):
- log.debug("encryption value %s set to %s..", key, value)
---
-cgit v0.9.0.2