diff options
author | Markos Chandras <hwoarang@gentoo.org> | 2012-12-17 20:40:22 +0000 |
---|---|---|
committer | Markos Chandras <hwoarang@gentoo.org> | 2012-12-17 20:40:22 +0000 |
commit | a168102957e2ba561aa54fbd18b479702e75f390 (patch) | |
tree | b3ed05f2526b879d2c85a058cd3537122a0d6e4a /net-p2p | |
parent | arm stable, bug #443080 (diff) | |
download | gentoo-2-a168102957e2ba561aa54fbd18b479702e75f390.tar.gz gentoo-2-a168102957e2ba561aa54fbd18b479702e75f390.tar.bz2 gentoo-2-a168102957e2ba561aa54fbd18b479702e75f390.zip |
Revbump to fix downloads with recent rb_libtorrent. Bug #437356
(Portage version: 2.1.11.37/cvs/Linux x86_64, signed Manifest commit with key B4AFF2C2)
Diffstat (limited to 'net-p2p')
-rw-r--r-- | net-p2p/deluge/ChangeLog | 8 | ||||
-rw-r--r-- | net-p2p/deluge/deluge-1.3.5-r1.ebuild | 72 | ||||
-rw-r--r-- | net-p2p/deluge/files/deluge-1.3.5-rb_libtorrent-disable-python-bindings | 60 |
3 files changed, 139 insertions, 1 deletions
diff --git a/net-p2p/deluge/ChangeLog b/net-p2p/deluge/ChangeLog index 28040ae745c7..4ac9a80a384e 100644 --- a/net-p2p/deluge/ChangeLog +++ b/net-p2p/deluge/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-p2p/deluge # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/ChangeLog,v 1.177 2012/12/12 18:23:20 ago Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/ChangeLog,v 1.178 2012/12/17 20:40:22 hwoarang Exp $ + +*deluge-1.3.5-r1 (17 Dec 2012) + + 17 Dec 2012; Markos Chandras <hwoarang@gentoo.org> +deluge-1.3.5-r1.ebuild, + +files/deluge-1.3.5-rb_libtorrent-disable-python-bindings: + Revbump to fix downloads with recent rb_libtorrent. Bug #437356 12 Dec 2012; Agostino Sarubbo <ago@gentoo.org> deluge-1.3.5.ebuild: Add ~ppc, wrt bug #413125 diff --git a/net-p2p/deluge/deluge-1.3.5-r1.ebuild b/net-p2p/deluge/deluge-1.3.5-r1.ebuild new file mode 100644 index 000000000000..7a7ba7d88ee9 --- /dev/null +++ b/net-p2p/deluge/deluge-1.3.5-r1.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/deluge-1.3.5-r1.ebuild,v 1.1 2012/12/17 20:40:22 hwoarang Exp $ + +EAPI="3" +PYTHON_DEPEND="2:2.5" + +inherit distutils eutils flag-o-matic + +DESCRIPTION="BitTorrent client with a client/server model." +HOMEPAGE="http://deluge-torrent.org/" +SRC_URI="http://download.deluge-torrent.org/source/${P}.tar.lzma" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~sparc ~x86" +IUSE="geoip gtk libnotify setproctitle webinterface" + +DEPEND=">=net-libs/rb_libtorrent-0.14.9[python] + dev-python/setuptools + dev-util/intltool" +RDEPEND="${DEPEND} + dev-python/chardet + dev-python/pyopenssl + dev-python/pyxdg + || ( dev-lang/python:2.7 dev-lang/python:2.6 dev-python/simplejson ) + >=dev-python/twisted-8.1 + >=dev-python/twisted-web-8.1 + geoip? ( dev-libs/geoip ) + gtk? ( + dev-python/pygame + dev-python/pygobject:2 + >=dev-python/pygtk-2.12 + gnome-base/librsvg + libnotify? ( dev-python/notify-python ) + ) + setproctitle? ( dev-python/setproctitle ) + webinterface? ( dev-python/mako )" + +pkg_setup() { + append-ldflags $(no-as-needed) + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . + epatch "${FILESDIR}/${P}-rb_libtorrent-disable-python-bindings" +} + +src_install() { + distutils_src_install + newinitd "${FILESDIR}"/deluged.init deluged + newconfd "${FILESDIR}"/deluged.conf deluged +} + +pkg_postinst() { + distutils_pkg_postinst + elog + elog "If after upgrading it doesn't work, please remove the" + elog "'~/.config/deluge' directory and try again, but make a backup" + elog "first!" + elog + elog "To start the daemon either run 'deluged' as user" + elog "or modify /etc/conf.d/deluged and run" + elog "/etc/init.d/deluged start as root" + elog "You can still use deluge the old way" + elog + elog "For more information look at http://dev.deluge-torrent.org/wiki/Faq" + elog +} 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 new file mode 100644 index 000000000000..301019e04aed --- /dev/null +++ b/net-p2p/deluge/files/deluge-1.3.5-rb_libtorrent-disable-python-bindings @@ -0,0 +1,60 @@ +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 |