diff options
Diffstat (limited to 'net-p2p')
32 files changed, 0 insertions, 1618 deletions
diff --git a/net-p2p/Makefile b/net-p2p/Makefile index 9fff7e39a162..4d8ccb4e73cc 100644 --- a/net-p2p/Makefile +++ b/net-p2p/Makefile @@ -96,8 +96,6 @@ SUBDIR += py-bittornado-core SUBDIR += py-bittorrent SUBDIR += py-bittorrent-core - SUBDIR += py-bittorrent-core-devel - SUBDIR += py-bittorrent-devel SUBDIR += py-fngrab SUBDIR += py-kenosis SUBDIR += py-kenosis-bittorrent diff --git a/net-p2p/py-bittorrent-core-devel/Makefile b/net-p2p/py-bittorrent-core-devel/Makefile deleted file mode 100644 index 2bb7bca0e9a6..000000000000 --- a/net-p2p/py-bittorrent-core-devel/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -# New ports collection makefile for: py-bittorrent-core -# Date created: 21 October 2003 -# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> and Mezz <mezz7@cox.net> -# -# $FreeBSD$ -# - -PKGNAMESUFFIX= -core-devel - -COMMENT= Client 'core' for the BitTorrent peer-to-peer network - -# build only the CORE -WITHOUT_GUI= yes - -MASTERDIR= ${.CURDIR}/../py-bittorrent-devel - -.include "${MASTERDIR}/Makefile" diff --git a/net-p2p/py-bittorrent-devel/Makefile b/net-p2p/py-bittorrent-devel/Makefile deleted file mode 100644 index 903f21361085..000000000000 --- a/net-p2p/py-bittorrent-devel/Makefile +++ /dev/null @@ -1,239 +0,0 @@ -# New ports collection makefile for: BitTorrent -# Date created: Sun Mar 16 06:34:12 UTC 2003 -# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> -# -# $FreeBSD$ -# - -PORTNAME= BitTorrent -PORTVERSION= 4.20.4 -PORTREVISION= 4 -PORTEPOCH= 1 -CATEGORIES?= net-p2p python -MASTER_SITES= http://download.bittorrent.com/dl/ -MASTER_SITE_SUBDIR= ${PORTNAME:L} -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -PKGNAMESUFFIX?= -devel - -MAINTAINER= ports@FreeBSD.org -COMMENT?= A peer-to-peer tool for distributing files written in Python - -RUN_DEPENDS+= ${PYTHON_SITELIBDIR}/dns/__init__.py:${PORTSDIR}/dns/py-dnspython \ - ${PYTHON_SITELIBDIR}/Crypto/__init__.py:${PORTSDIR}/security/py-pycrypto - -USE_GETTEXT= yes -USE_PYTHON= yes -USE_PYDISTUTILS= yes -USE_TWISTED_RUN= yes - -CONFLICTS= py??-*[Bb]it[Tt]orrent* py??-*[Bb]it[Tt]ornado* btqueue* - -NO_LATEST_LINK= yes - -.ifndef(NOPORTDOCS) -PORTDOCS= \ - INSTALL.unix.txt \ - LICENSE.txt \ - README.txt \ - TRACKERLESS.txt \ - credits.txt \ - credits-l10n.txt -.else -EXTRA_PATCHES+= ${FILESDIR}/extra-noportdocs-setup.py -.endif - -.include <bsd.port.pre.mk> - -.if ${ARCH} != "i386" -WITHOUT_PSYCO= yes -.endif - -# required for GUI -.ifndef(WITHOUT_GUI) -RUN_DEPENDS+= ${PYTHON_SITELIBDIR}/wx-2.6-gtk2-unicode/wxPython/__init__.py:${PORTSDIR}/x11-toolkits/py-wxPython26-unicode - -PLIST_FILES+= \ - bin/bittorrent \ - bin/maketorrent \ - share/pixmaps/BitTorrent/bittorrent.ico \ - share/pixmaps/BitTorrent/flags/AE.png \ - share/pixmaps/BitTorrent/flags/AR.png \ - share/pixmaps/BitTorrent/flags/AT.png \ - share/pixmaps/BitTorrent/flags/AU.png \ - share/pixmaps/BitTorrent/flags/BE.png \ - share/pixmaps/BitTorrent/flags/BG.png \ - share/pixmaps/BitTorrent/flags/BR.png \ - share/pixmaps/BitTorrent/flags/CA.png \ - share/pixmaps/BitTorrent/flags/CH.png \ - share/pixmaps/BitTorrent/flags/CL.png \ - share/pixmaps/BitTorrent/flags/CN.png \ - share/pixmaps/BitTorrent/flags/CO.png \ - share/pixmaps/BitTorrent/flags/CY.png \ - share/pixmaps/BitTorrent/flags/CZ.png \ - share/pixmaps/BitTorrent/flags/DE.png \ - share/pixmaps/BitTorrent/flags/DK.png \ - share/pixmaps/BitTorrent/flags/ES.png \ - share/pixmaps/BitTorrent/flags/EU.png \ - share/pixmaps/BitTorrent/flags/FI.png \ - share/pixmaps/BitTorrent/flags/FR.png \ - share/pixmaps/BitTorrent/flags/GB.png \ - share/pixmaps/BitTorrent/flags/GR.png \ - share/pixmaps/BitTorrent/flags/GT.png \ - share/pixmaps/BitTorrent/flags/HK.png \ - share/pixmaps/BitTorrent/flags/HU.png \ - share/pixmaps/BitTorrent/flags/IT.png \ - share/pixmaps/BitTorrent/flags/JP.png \ - share/pixmaps/BitTorrent/flags/KR.png \ - share/pixmaps/BitTorrent/flags/KW.png \ - share/pixmaps/BitTorrent/flags/LT.png \ - share/pixmaps/BitTorrent/flags/LV.png \ - share/pixmaps/BitTorrent/flags/MX.png \ - share/pixmaps/BitTorrent/flags/NA.png \ - share/pixmaps/BitTorrent/flags/NL.png \ - share/pixmaps/BitTorrent/flags/NO.png \ - share/pixmaps/BitTorrent/flags/PR.png \ - share/pixmaps/BitTorrent/flags/PT.png \ - share/pixmaps/BitTorrent/flags/RU.png \ - share/pixmaps/BitTorrent/flags/SE.png \ - share/pixmaps/BitTorrent/flags/SG.png \ - share/pixmaps/BitTorrent/flags/SI.png \ - share/pixmaps/BitTorrent/flags/TW.png \ - share/pixmaps/BitTorrent/flags/US.png \ - share/pixmaps/BitTorrent/flags/YU.png \ - share/pixmaps/BitTorrent/flags/ZA.png \ - share/pixmaps/BitTorrent/flags/noimage.png \ - share/pixmaps/BitTorrent/flags/unknown.png \ - share/pixmaps/BitTorrent/logo/banner.png \ - share/pixmaps/BitTorrent/logo/bittorrent_icon.png \ - share/pixmaps/BitTorrent/logo/bittorrent_icon_16.png \ - share/pixmaps/BitTorrent/logo/bittorrent_icon_24.png \ - share/pixmaps/BitTorrent/logo/bittorrent_icon_32.png \ - share/pixmaps/BitTorrent/logo/bittorrent_icon_48.png \ - share/pixmaps/BitTorrent/themes/default/add_16.png \ - share/pixmaps/BitTorrent/themes/default/add_24.png \ - share/pixmaps/BitTorrent/themes/default/add_32.png \ - share/pixmaps/BitTorrent/themes/default/fileops/first_16.png \ - share/pixmaps/BitTorrent/themes/default/fileops/first_24.png \ - share/pixmaps/BitTorrent/themes/default/fileops/first_32.png \ - share/pixmaps/BitTorrent/themes/default/fileops/never_16.png \ - share/pixmaps/BitTorrent/themes/default/fileops/never_24.png \ - share/pixmaps/BitTorrent/themes/default/fileops/never_32.png \ - share/pixmaps/BitTorrent/themes/default/fileops/normal_16.png \ - share/pixmaps/BitTorrent/themes/default/fileops/normal_24.png \ - share/pixmaps/BitTorrent/themes/default/fileops/normal_32.png \ - share/pixmaps/BitTorrent/themes/default/progressbar.png \ - share/pixmaps/BitTorrent/themes/default/search_16.png \ - share/pixmaps/BitTorrent/themes/default/search_24.png \ - share/pixmaps/BitTorrent/themes/default/search_32.png \ - share/pixmaps/BitTorrent/themes/default/settings_16.png \ - share/pixmaps/BitTorrent/themes/default/settings_24.png \ - share/pixmaps/BitTorrent/themes/default/settings_32.png \ - share/pixmaps/BitTorrent/themes/default/statuslight/broken.png \ - share/pixmaps/BitTorrent/themes/default/statuslight/natted.png \ - share/pixmaps/BitTorrent/themes/default/statuslight/pre-natted.png \ - share/pixmaps/BitTorrent/themes/default/statuslight/running.png \ - share/pixmaps/BitTorrent/themes/default/statuslight/starting.png \ - share/pixmaps/BitTorrent/themes/default/statuslight/stopped.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/info_16.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/info_24.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/info_32.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/launch_16.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/launch_24.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/launch_32.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/remove_16.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/remove_24.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/remove_32.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/resume_16.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/resume_24.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/resume_32.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/stop_16.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/stop_24.png \ - share/pixmaps/BitTorrent/themes/default/torrentops/stop_32.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/complete.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/created.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/downloading.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/error.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/finishing.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/force-seed.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/paused.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/seeding.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/starting.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/stopped.png \ - share/pixmaps/BitTorrent/themes/default/torrentstate/unknown.png - -PLIST_SUB+= \ - GUI="" -.else -EXTRA_PATCHES+= ${FILESDIR}/extra-nogui-patch-setup.py - -PLIST_SUB+= \ - GUI="@comment " -.endif -# required for PSYCO -.ifndef(WITHOUT_PSYCO) -RUN_DEPENDS+= ${PYTHON_SITELIBDIR}/psyco/_psyco.so:${PORTSDIR}/devel/py-psyco - -EXTRA_PATCHES+= \ - ${FILESDIR}/extra-psyco-patch-bittorrent-console.py \ - ${FILESDIR}/extra-psyco-patch-bittorrent-curses.py \ - ${FILESDIR}/extra-psyco-patch-bittorrent-tracker.py \ - ${FILESDIR}/extra-psyco-patch-bittorrent.py \ - ${FILESDIR}/extra-psyco-patch-changetracker-console.py \ - ${FILESDIR}/extra-psyco-patch-launchmany-console.py \ - ${FILESDIR}/extra-psyco-patch-launchmany-curses.py \ - ${FILESDIR}/extra-psyco-patch-maketorrent-console.py \ - ${FILESDIR}/extra-psyco-patch-maketorrent.py \ - ${FILESDIR}/extra-psyco-patch-torrentinfo-console.py -.endif - -# public.key -PLIST_DIRS+= \ - %%DATADIR%% -PLIST_FILES+= \ - %%DATADIR%%/public.key - -pre-everything:: -.ifndef(WITHOUT_GUI) - @${ECHO_MSG} '===> Define WITHOUT_GUI to disable GUI installation' -.endif -.ifndef(WITHOUT_PSYCO) - @${ECHO_MSG} '===> Define WITHOUT_PSYCO to disable devel/py-psyco optimization' -.endif - -pre-patch: -# do not install public.key, we will do it ourselves - @${REINPLACE_CMD} -E \ - -e "s|^.*'public.key'.*$$||" \ - ${WRKSRC}/setup.py - -post-patch: -# public.key will be located under ${DATADIR} not ${DOCSDIR} - @${REINPLACE_CMD} -E \ - -e "s|%%DATADIR%%|'${DATADIR}/'|" \ - ${WRKSRC}/BitTorrent/NewVersion.py - -post-install: -# set proper permissions - @${CHMOD} -R ${SHAREMODE} \ - ${PYTHONPREFIX_SITELIBDIR}/BitTorrent - @${CHMOD} ${SHAREMODE} ${PYTHONPREFIX_SITELIBDIR}/BitTorrent - @${CHMOD} -R a+X ${PYTHONPREFIX_SITELIBDIR}/BitTorrent -.ifndef(WITHOUT_GUI) -# pixmaps - @${CHMOD} -R ${SHAREMODE} \ - ${PREFIX}/share/pixmaps/${PORTNAME}/* - @${CHMOD} -R a+X \ - ${PREFIX}/share/pixmaps/${PORTNAME} -.endif -.ifndef(NOPORTDOCS) -# docs - @${CHMOD} -R ${SHAREMODE} \ - ${DOCSDIR}/* -# install missing doc - @${INSTALL_DATA} ${WRKSRC}/TRACKERLESS.txt ${DOCSDIR} -.endif -# public.key - @${MKDIR} ${DATADIR} - @${INSTALL_DATA} ${WRKSRC}/public.key ${DATADIR} - -.include <bsd.port.post.mk> diff --git a/net-p2p/py-bittorrent-devel/distinfo b/net-p2p/py-bittorrent-devel/distinfo deleted file mode 100644 index df01d12055a2..000000000000 --- a/net-p2p/py-bittorrent-devel/distinfo +++ /dev/null @@ -1,3 +0,0 @@ -MD5 (BitTorrent-4.20.4.tar.gz) = 6616f6ae8a8460804ce43b3cf4b6f73b -SHA256 (BitTorrent-4.20.4.tar.gz) = 54a231c6f95175fab6e493fef1e726f7f198d84396f0d6e5d6541db77b545d69 -SIZE (BitTorrent-4.20.4.tar.gz) = 2395512 diff --git a/net-p2p/py-bittorrent-devel/files/extra-nogui-patch-setup.py b/net-p2p/py-bittorrent-devel/files/extra-nogui-patch-setup.py deleted file mode 100644 index d26926ac5560..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-nogui-patch-setup.py +++ /dev/null @@ -1,17 +0,0 @@ ---- setup.py.orig Sat Jun 24 16:54:04 2006 -+++ setup.py Sat Jun 24 16:54:55 2006 -@@ -42,2 +42,2 @@ --symlinks = ["bittorrent" , "bittorrent-curses", "bittorrent-console", -- "maketorrent", "maketorrent-console", -+symlinks = ["bittorrent-curses", "bittorrent-console", -+ "maketorrent-console", -@@ -68,1 +68,0 @@ -- (img_root, ['images/bittorrent.ico',]), -@@ -74,7 +74,0 @@ --for d in ('flags', 'logo', 'themes/default', -- 'themes/default/statuslight', 'themes/default/torrentstate', -- 'themes/default/torrentops' , 'themes/default/fileops' ,): -- data_files.append( -- (os.path.join(img_root, d), -- glob.glob(os.path.join('images', d, '*.png'))) -- ) diff --git a/net-p2p/py-bittorrent-devel/files/extra-noportdocs-setup.py b/net-p2p/py-bittorrent-devel/files/extra-noportdocs-setup.py deleted file mode 100644 index 8a4d838e55db..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-noportdocs-setup.py +++ /dev/null @@ -1,6 +0,0 @@ ---- setup.py.orig Sat Jun 24 16:55:50 2006 -+++ setup.py Sat Jun 24 16:57:02 2006 -@@ -69,3 +69,0 @@ -- (doc_root, ['credits.txt', 'credits-l10n.txt', 'LICENSE.txt', 'README.txt', -- -- 'INSTALL.unix.txt'] + extra_docs), diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-console.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-console.py deleted file mode 100644 index 19a0d8acf7a7..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-console.py +++ /dev/null @@ -1,16 +0,0 @@ ---- bittorrent-console.py.orig Tue Jun 6 20:43:25 2006 -+++ bittorrent-console.py Thu Jun 15 14:44:32 2006 -@@ -14,6 +14,13 @@ - - from __future__ import division - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - from BitTorrent.translation import _ - - import pdb diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-curses.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-curses.py deleted file mode 100644 index 54df94ae3b13..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-curses.py +++ /dev/null @@ -1,16 +0,0 @@ ---- bittorrent-curses.py.orig Tue Jun 6 20:43:25 2006 -+++ bittorrent-curses.py Thu Jun 15 14:45:05 2006 -@@ -15,6 +15,13 @@ - - from __future__ import division - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - from BitTorrent.translation import _ - - SPEW_SCROLL_RATE = 1 diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-tracker.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-tracker.py deleted file mode 100644 index d2e5b60d36d2..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent-tracker.py +++ /dev/null @@ -1,16 +0,0 @@ ---- bittorrent-tracker.py Wed Oct 12 01:08:15 2005 -+++ bittorrent-tracker.py Wed Oct 12 07:57:55 2005 -@@ -12,6 +12,13 @@ - - # Written by Bram Cohen - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - if __name__ == '__main__': - from BitTorrent.platform import install_translation - install_translation() diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent.py deleted file mode 100644 index 1c705e8f7928..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-bittorrent.py +++ /dev/null @@ -1,16 +0,0 @@ ---- bittorrent.py.orig Tue May 16 20:59:49 2006 -+++ bittorrent.py Thu May 18 23:04:01 2006 -@@ -14,6 +14,13 @@ - - from __future__ import division - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - import os - import sys - try: diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-changetracker-console.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-changetracker-console.py deleted file mode 100644 index 7828bb958cc9..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-changetracker-console.py +++ /dev/null @@ -1,16 +0,0 @@ ---- changetracker-console.py.orig Tue Jun 6 20:43:34 2006 -+++ changetracker-console.py Thu Jun 15 14:45:47 2006 -@@ -12,6 +12,13 @@ - - # Written by Henry 'Pi' James and Bram Cohen - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - from BitTorrent.translation import _ - - from os.path import basename diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-launchmany-console.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-launchmany-console.py deleted file mode 100644 index 0a885f9d4c2d..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-launchmany-console.py +++ /dev/null @@ -1,16 +0,0 @@ ---- launchmany-console.py Wed Oct 12 01:08:27 2005 -+++ launchmany-console.py Wed Oct 12 07:58:23 2005 -@@ -12,6 +12,13 @@ - - # Written by John Hoffman - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - if __name__ == '__main__': - from BitTorrent.platform import install_translation - install_translation() diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-launchmany-curses.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-launchmany-curses.py deleted file mode 100644 index 5d5e66a64ae5..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-launchmany-curses.py +++ /dev/null @@ -1,16 +0,0 @@ ---- launchmany-curses.py.orig Tue Jun 6 20:43:42 2006 -+++ launchmany-curses.py Thu Jun 15 14:46:16 2006 -@@ -14,6 +14,13 @@ - - from __future__ import division - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - from BitTorrent.translation import _ - - DOWNLOAD_SCROLL_RATE = 1 diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-maketorrent-console.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-maketorrent-console.py deleted file mode 100644 index 476f36587378..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-maketorrent-console.py +++ /dev/null @@ -1,16 +0,0 @@ ---- maketorrent-console.py Wed Oct 12 01:08:27 2005 -+++ maketorrent-console.py Wed Oct 12 07:58:31 2005 -@@ -12,6 +12,13 @@ - - # Written by Bram Cohen - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - if __name__ == '__main__': - from BitTorrent.platform import install_translation - install_translation() diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-maketorrent.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-maketorrent.py deleted file mode 100644 index d2d3527d7479..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-maketorrent.py +++ /dev/null @@ -1,16 +0,0 @@ ---- maketorrent.py.orig Tue Jun 6 20:43:43 2006 -+++ maketorrent.py Thu Jun 15 14:46:45 2006 -@@ -14,6 +14,13 @@ - - from __future__ import division - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - from BitTorrent.translation import _ - - import os diff --git a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-torrentinfo-console.py b/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-torrentinfo-console.py deleted file mode 100644 index a78b3c2fb46d..000000000000 --- a/net-p2p/py-bittorrent-devel/files/extra-psyco-patch-torrentinfo-console.py +++ /dev/null @@ -1,16 +0,0 @@ ---- torrentinfo-console.py.orig Tue Jun 6 20:44:39 2006 -+++ torrentinfo-console.py Thu Jun 15 14:47:13 2006 -@@ -12,6 +12,13 @@ - - # Written by Henry 'Pi' James, Loring Holden and Matt Chisholm - -+try: -+ import psyco -+ assert psyco.__version__ >= 0x010300f0 -+ psyco.full() -+except: -+ pass -+ - from BitTorrent.translation import _ - - from sys import * diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__AutoUpdateButler.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__AutoUpdateButler.py deleted file mode 100644 index f70e5ea80595..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__AutoUpdateButler.py +++ /dev/null @@ -1,11 +0,0 @@ ---- ./BitTorrent/AutoUpdateButler.py.orig Fri Jul 28 23:30:10 2006 -+++ ./BitTorrent/AutoUpdateButler.py Fri Jul 28 23:29:47 2006 -@@ -375,7 +375,7 @@ - self.multitorrent.remove_auto_updates_except(infohash) - - try: -- df = self.multitorrent.create_torrent(metainfo, installer_path, installer_path, hidden=True, is_auto_update=True) -+ df = self.multitorrent.create_torrent(metainfo, installer_path, installer_path, installer_path, installer_path, hidden=True, is_auto_update=True) - yield df - df.getResult() - except TorrentAlreadyRunning: diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__HTTPHandler.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__HTTPHandler.py deleted file mode 100644 index c2a4671a75d2..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__HTTPHandler.py +++ /dev/null @@ -1,11 +0,0 @@ ---- ./BitTorrent/HTTPHandler.py.orig Wed Jul 12 02:18:18 2006 -+++ ./BitTorrent/HTTPHandler.py Sat Jul 22 17:42:24 2006 -@@ -19,7 +19,7 @@ - - - --DEBUG = True -+DEBUG = False - - weekdays = [_("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat"), _("Sun")] - diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__MultiTorrent.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__MultiTorrent.py deleted file mode 100644 index 4e805f6facfe..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__MultiTorrent.py +++ /dev/null @@ -1,35 +0,0 @@ ---- ./BitTorrent/MultiTorrent.py.orig Mon Jul 24 00:58:59 2006 -+++ ./BitTorrent/MultiTorrent.py Sat Jul 29 00:02:03 2006 -@@ -270,6 +270,8 @@ - self.logger.log(severity, message, exc_info=exc_info) - - def create_torrent(self, metainfo, save_incomplete_as, save_as, -+ saveas_style_save_incomplete_as=None, -+ saveas_style_save_as=None, - hidden=False, is_auto_update=False): - if self.is_single_torrent and len(self.torrents) > 0: - print "create_torrent: len(self.torrents)=", len(self.torrents) -@@ -295,9 +297,11 @@ - infohash, - lambda s : self.global_error(logging.ERROR, s)) - -- t = Torrent(metainfo, save_incomplete_as, save_as, self.config, -- self.data_dir, self.rawserver, self.choker, -- self.singleport_listener, self.ratelimiter, -+ t = Torrent(metainfo, save_incomplete_as, save_as, -+ saveas_style_save_incomplete_as, -+ saveas_style_save_as, -+ self.config, self.data_dir, self.rawserver, -+ self.choker, self.singleport_listener, self.ratelimiter, - self.total_downmeasure, self.filepool, self.dht, self, - self.log_root, hidden=hidden, is_auto_update=is_auto_update) - retdf = Deferred() -@@ -686,7 +690,7 @@ - '('+unicode(e.args[0])+')') - return None - -- t = Torrent(metainfo, "", "", self.config, self.data_dir, -+ t = Torrent(metainfo, "", "", "", "", self.config, self.data_dir, - self.rawserver, self.choker, - self.singleport_listener, self.ratelimiter, - self.total_downmeasure, self.filepool, self.dht, self, diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__NewVersion.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__NewVersion.py deleted file mode 100644 index 7834b5461084..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__NewVersion.py +++ /dev/null @@ -1,11 +0,0 @@ ---- ./BitTorrent/NewVersion.py.orig Mon Jun 12 22:45:49 2006 -+++ ./BitTorrent/NewVersion.py Wed Jun 21 23:57:08 2006 -@@ -170,7 +170,7 @@ - self.threadwrap(self.errorfunc, logging.WARNING, '\n'.join(terrors)) - - if torrentfile and signature: -- public_key_file = open(os.path.join(doc_root, 'public.key'), 'rb') -+ public_key_file = open(os.path.join(%%DATADIR%%, 'public.key'), 'rb') - public_key = pickle.load(public_key_file) - h = sha(torrentfile).digest() - if public_key.verify(h, signature): diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__OldTorrentQueue.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__OldTorrentQueue.py deleted file mode 100644 index ca4c402e45e0..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__OldTorrentQueue.py +++ /dev/null @@ -1,11 +0,0 @@ ---- ./BitTorrent/OldTorrentQueue.py.orig Wed Jul 12 02:18:22 2006 -+++ ./BitTorrent/OldTorrentQueue.py Sat Jul 22 17:42:24 2006 -@@ -20,7 +20,7 @@ - - - from BitTorrent.platform import bttime --from BitTorrent.download import Feedback, Multitorrent -+from BitTorrent.MultiTorrent import Feeback, MultiTorrent - from BitTorrent.bencode import bdecode - from BitTorrent.ConvertedMetainfo import ConvertedMetainfo - from BitTorrent.prefs import Preferences diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__Rerequester.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__Rerequester.py deleted file mode 100644 index acf24f0cdad7..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__Rerequester.py +++ /dev/null @@ -1,12 +0,0 @@ ---- ./BitTorrent/Rerequester.py.orig Wed Jul 12 02:18:25 2006 -+++ ./BitTorrent/Rerequester.py Sat Jul 22 17:42:24 2006 -@@ -369,7 +369,8 @@ - def _postrequest(self, data=None, errormsg=None, exc=None, peerid=None): - assert thread.get_ident() == self.rawserver.ident - self.current_started = None -- self.errorfunc(logging.INFO, 'postrequest: ' + str(self.current_started)) -+ if self.current_started is not None: -+ self.errorfunc(logging.INFO, 'postrequest: ' + str(self.current_started)) - self.last_time = bttime() - if self.dead: - return diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__Torrent.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__Torrent.py deleted file mode 100644 index 6b59f773ed70..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__Torrent.py +++ /dev/null @@ -1,61 +0,0 @@ ---- ./BitTorrent/Torrent.py.orig Wed Jul 12 02:18:28 2006 -+++ ./BitTorrent/Torrent.py Sat Jul 29 00:08:59 2006 -@@ -58,7 +58,6 @@ - - from khashmir import const - -- - class Feedback(object): - """Inidivual torrents (Torrent) perform callbacks regarding - changes of state to the rest of the program via a Feedback -@@ -90,8 +89,9 @@ - POLICIES = ["stop", "start", "auto"] - PRIORITIES = ["low", "normal", "high"] - -- def __init__(self, metainfo, working_path, destination_path, config, -- data_dir, rawserver, choker, -+ def __init__(self, metainfo, working_path, destination_path, -+ saveas_style_working_path, saveas_style_destination_path, -+ config, data_dir, rawserver, choker, - singleport_listener, ratelimiter, total_downmeasure, - filepool, dht, feedback, log_root, - hidden=False, is_auto_update=False): -@@ -152,8 +152,11 @@ - - self.config = Preferences(config)#, persist_callback=self._dump_torrent_config) - self.working_path = working_path #sets in config. See _set_working_path -- - self.destination_path = destination_path # sets in config. -+ -+ self.saveas_style_working_path = saveas_style_working_path -+ self.saveas_style_destination_path = saveas_style_destination_path -+ - self.priority = "normal" - self.policy = "auto" - -@@ -258,6 +261,9 @@ - def is_running(self): - return self.state == "running" - -+ def is_seeding(self): -+ return self._activity == (_("seeding"), 1) -+ - def is_context_valid(self): - return self.context_valid - -@@ -819,8 +825,13 @@ - self.logger.debug("successfully paused torrent, moving file") - - self.state = "finishing" -- df = ThreadedDeferred(_wrap_task(self._rawserver.external_add_task), -- move, self.working_path, self.destination_path) -+ if self.saveas_style_working_path is not None and self.saveas_style_destination_path is not None: -+ df = ThreadedDeferred(_wrap_task(self._rawserver.external_add_task), -+ move, self.saveas_style_working_path, -+ self.saveas_style_destination_path) -+ else: -+ df = ThreadedDeferred(_wrap_task(self._rawserver.external_add_task), -+ move, self.working_path, self.destination_path) - yield df - df.getResult() - diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__XMultiTorrent.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__XMultiTorrent.py deleted file mode 100644 index 5d60552e6e3a..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__XMultiTorrent.py +++ /dev/null @@ -1,15 +0,0 @@ ---- ./BitTorrent/XMultiTorrent.py.orig Fri Jul 28 23:25:45 2006 -+++ ./BitTorrent/XMultiTorrent.py Fri Jul 28 23:27:31 2006 -@@ -50,10 +50,10 @@ - - return Binary(infohash) - -- def _create_torrent(self, torrent, dlpath): -+ def _create_torrent(self, torrent, save_incomplete_as, save_as): - d = bdecode(torrent) - metainfo = ConvertedMetainfo(d) -- self.multitorrent.create_torrent(metainfo, dlpath) -+ self.multitorrent.create_torrent(metainfo, save_incomplete_as, save_as) - return metainfo.infohash - - def xmlrpc_start_torrent(self, infohash): diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__XTorrentQueue.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__XTorrentQueue.py deleted file mode 100644 index 42420a514b0f..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__XTorrentQueue.py +++ /dev/null @@ -1,15 +0,0 @@ ---- ./BitTorrent/XTorrentQueue.py.orig Fri Jul 28 23:27:55 2006 -+++ ./BitTorrent/XTorrentQueue.py Fri Jul 28 23:28:20 2006 -@@ -32,10 +32,10 @@ - - return Binary(infohash) - -- def _create_torrent(self, torrent, dlpath): -+ def _create_torrent(self, torrent, save_incomplete_as, save_as): - d = bdecode(torrent) - metainfo = ConvertedMetainfo(d) -- self.tq.create_torrent(metainfo, dlpath) -+ self.tq.create_torrent(metainfo, save_incomplete_as, save_as) - return metainfo.infohash - - def xmlrpc_start_torrent(self, infohash): diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__defaultargs.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__defaultargs.py deleted file mode 100644 index 0befcfd6c20f..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__defaultargs.py +++ /dev/null @@ -1,22 +0,0 @@ ---- ./BitTorrent/defaultargs.py.orig Wed Jul 12 02:18:33 2006 -+++ ./BitTorrent/defaultargs.py Sat Jul 22 17:42:24 2006 -@@ -20,6 +20,8 @@ - if os.name == 'posix': - if os.uname()[0] in ['Darwin']: - BAD_LIBC_WORKAROUND_DEFAULT = True -+ if os.uname()[0] in ['FreeBSD']: -+ BAD_LIBC_WORKAROUND_DEFAULT = True - - MAX_INCOMPLETE = 100 - MAX_FILES_OPEN = 50 -@@ -376,6 +378,10 @@ - "name determined by --saveas_style. If this is left empty " - "each torrent will be saved under the directory of the " - "corresponding .torrent file")), -+ ('save_incomplete_in', u'', -+ _("local directory where the incomplete torrent downloads will be " -+ "stored until completion. Upon completion, downloads will be " -+ "moved to the directory specified by --save_in.")), - ('parse_dir_interval', 60, - _("how often to rescan the torrent directory, in seconds") ), - ('launch_delay', 0, diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__launchmanycore.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__launchmanycore.py deleted file mode 100644 index e669d2bde00a..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__launchmanycore.py +++ /dev/null @@ -1,475 +0,0 @@ ---- ./BitTorrent/launchmanycore.py.orig Wed Jul 12 02:18:34 2006 -+++ ./BitTorrent/launchmanycore.py Fri Jul 28 23:45:22 2006 -@@ -22,14 +22,17 @@ - from traceback import print_exc - import logging - from BitTorrent import configfile -+from BitTorrent import platform - from BitTorrent.parsedir import parsedir --from BitTorrent.MultiTorrent import MultiTorrent, Feedback -+from BitTorrent.MultiTorrent import MultiTorrent, Feedback, TorrentAlreadyRunning, TorrentAlreadyInQueue, TorrentNotInitialized - from BitTorrent.ConvertedMetainfo import ConvertedMetainfo - from BitTorrent import BTFailure, UserFailure - from BitTorrent.RawServer_twisted import RawServer - from BitTorrent.yielddefer import launch_coroutine, _wrap_task - from BitTorrent.ConvertedMetainfo import ConvertedMetainfo - from BitTorrent.defer import DeferredEvent -+from BitTorrent.platform import encode_for_filesystem -+from BitTorrent.prefs import Preferences - from time import time - - -@@ -51,13 +54,13 @@ - # logger Formatter, which is specific to exceptions, warnings, and - # info messages. - try: -+ self.display = display.display - self.logger = logging.getLogger(configfile_key) - - self.multitorrent = None - self.rawserver = None -- self.config = config -+ self.config = Preferences().initWithDict(config) - self.configfile_key = configfile_key -- self.display = display - - self.torrent_dir = config['torrent_dir'] - -@@ -78,30 +81,31 @@ - - self.hashcheck_queue = [] - self.hashcheck_store = {} -- self.hashcheck_current = None - - self.core_doneflag = DeferredEvent() -- rawserver_doneflag = DeferredEvent() -+ self.rawserver_doneflag = DeferredEvent() - self.rawserver = RawServer(self.config) - try: - - # set up shut-down procedure before we begin doing things that - # can throw exceptions. - def shutdown(): -- print "SHUTDOWNSHUTDOWNSHUTDOWN" -+ #print "SHUTDOWNSHUTDOWNSHUTDOWN" - self.logger.critical(_("shutting down")) -- for infohash in self.multitorrent.get_torrents(): -- self.logger.info(_('dropped "%s"') % -- self.torrent_cache[infohash]['path']) -- # torrent = self.downloads[infohash] -- # if torrent is not None: -- # torrent.shutdown() -+ for torrent in self.multitorrent.get_torrents(): -+ try: -+ removed = self.torrent_cache[torrent.infohash]['path'] -+ self.logger.info(_('dropped "%s"') % removed) -+ except KeyError: -+ pass -+ if torrent is not None: -+ torrent.shutdown() - if self.multitorrent: - df = self.multitorrent.shutdown() -- set_flag = lambda *a : rawserver_doneflag.set() -+ set_flag = lambda *a : self.rawserver_doneflag.set() - df.addCallbacks(set_flag, set_flag) - else: -- rawserver_doneflag.set() -+ self.rawserver_doneflag.set() - - # It is safe to addCallback here, because there is only one thread, - # but even if the code were multi-threaded, core_doneflag has not -@@ -112,9 +116,9 @@ - - self.rawserver.install_sigint_handler(self.core_doneflag) - -- data_dir = config['data_dir'] -- print "Creating MultiTorrent" -- self.multitorrent = MultiTorrent(config, self.rawserver, data_dir) -+ data_dir = self.config['data_dir'] -+ #print "Creating MultiTorrent" -+ self.multitorrent = MultiTorrent(self.config, self.rawserver, data_dir) - - self.rawserver.add_task(0, self.scan) - self.rawserver.add_task(0, self.stats) -@@ -131,162 +135,221 @@ - self.rawserver.add_task(0,self.core_doneflag.set()) - - except UserFailure, e: -- output.exception(unicode(e.args[0])) -+ display.exception(unicode(e.args[0])) - self.rawserver.add_task(0,self.core_doneflag.set()) - except: - data = StringIO() - print_exc(file = data) -- output.exception(data.getvalue()) -+ display.exception(data.getvalue()) - self.rawserver.add_task(0,self.core_doneflag.set()) - - # always make sure events get processed even if only for - # shutting down. -- print "listening forever" -- self.rawserver.listen_forever(rawserver_doneflag) -+ #print "listening forever" -+ try: -+ self.rawserver.listen_forever(self.rawserver_doneflag) -+ except AttributeError, e: -+ output.message(str(e)) -+ raise -+ except KeyboardInterrupt: -+ raise - - except: - data = StringIO() - print_exc(file = data) -- output.exception(data.getvalue()) -+ display.exception(data.getvalue()) -+ self.core_doneflag.set() -+ self.rawserver_doneflag.set() - - def scan(self): -- print "LaunchMany.scan top." -+ #print "LaunchMany.scan top." - self.rawserver.add_task(self.config['parse_dir_interval'], self.scan) - - r = parsedir(self.torrent_dir, self.torrent_cache, - self.file_cache, self.blocked_files, - self.logger.error) - -- print "After parsedir" -+ #print "After parsedir" - ( self.torrent_cache, self.file_cache, self.blocked_files, - added, removed ) = r - for infohash, data in removed.items(): - self.logger.info(_('dropped "%s"') % data['path']) - self.remove(infohash) - for infohash, data in added.items(): -- print "adding item:", data['path'] -+ #print "adding item:", data['path'] - self.logger.info(_('added "%s"' ) % data['path']) -- print "after self.logger.info" -+ #print "after self.logger.info" - if self.config['launch_delay'] > 0: - self.rawserver.add_task(self.config['launch_delay'], self.add, infohash, data) - # torrent may have been known from resume state. - elif not self.multitorrent.torrent_known(infohash): - self.add(infohash, data) -- print "LaunchMany.scan bottom" -+ #print "LaunchMany.scan bottom" - - def stats(self): - self.rawserver.add_task(self.config['display_interval'], self.stats) - data = [] -- for d in self.get_torrents(): -- infohash = d.infohash -- cache = self.torrent_cache[infohash] -- if self.config['display_path']: -- name = cache['path'] -- else: -- name = cache['name'] -- size = cache['length'] -- #d = self.downloads[infohash] -- progress = '0.0%' -- peers = 0 -- seeds = 0 -- seedsmsg = "S" -- dist = 0.0 -- uprate = 0.0 -- dnrate = 0.0 -- upamt = 0 -- dnamt = 0 -- t = 0 -- msg = '' -- #if d.state in ["created", "initializing"]: -- # status = _("waiting for hash check") -- #else: -- stats = d.get_status() -- status = stats['activity'] -- progress = '%.1f%%' % (int(stats['fractionDone']*1000)/10.0) -- if d.is_running(): -- s = stats -- dist = s['numCopies'] -- if d.is_seed: -- seeds = 0 # s['numOldSeeds'] -- seedsmsg = "s" -+ for d in self.multitorrent.get_torrents(): -+ if d is not None: -+ infohash = d.infohash -+ try: -+ cache = self.torrent_cache[infohash] -+ except KeyError: -+ self.remove(infohash) -+ continue -+ if self.config['display_path']: -+ name = cache['path'] - else: -- if s['numSeeds'] + s['numPeers']: -- t = stats['timeEst'] -- if t is None: -- t = -1 -- if t == 0: # unlikely -- t = 0.01 -- status = _("downloading") -+ name = cache['name'] -+ size = cache['length'] -+ progress = '0.0%' -+ peers = 0 -+ seeds = 0 -+ seedsmsg = "S" -+ dist = 0.0 -+ uprate = 0.0 -+ dnrate = 0.0 -+ upamt = 0 -+ dnamt = 0 -+ t = 0 -+ msg = '' -+ #if d.state in ["created", "initializing"]: -+ # status = _("waiting for hash check") -+ #else: -+ stats = d.get_status() -+ status = stats['activity'] -+ progress = '%.1f%%' % (int(stats['fractionDone']*1000)/10.0) -+ if d.is_running(): -+ s = stats -+ dist = int(s['distributed_copies']) -+ if d.is_seeding(): -+ seeds = 0 # s['numOldSeeds'] -+ seedsmsg = "s" - else: -- t = -1 -- status = _("connecting to peers") -- seeds = s['numSeeds'] -- dnrate = stats['downRate'] -- peers = s['numPeers'] -- uprate = stats['upRate'] -- upamt = s['upTotal'] -- dnamt = s['downTotal'] -+ if s['numSeeds'] + s['numPeers']: -+ t = stats['timeEst'] -+ if t is None: -+ t = -1 -+ if t == 0: # unlikely -+ t = 0.01 -+ status = _("downloading") -+ else: -+ t = -1 -+ status = _("connecting to peers") -+ seeds = s['numSeeds'] -+ dnrate = stats['downRate'] -+ peers = s['numPeers'] -+ uprate = stats['upRate'] -+ upamt = s['upTotal'] -+ dnamt = s['downTotal'] - -- data.append(( name, status, progress, peers, seeds, seedsmsg, dist, -+ data.append(( name, status, progress, peers, seeds, seedsmsg, dist, - uprate, dnrate, upamt, dnamt, size, t, msg )) - stop = self.display(data) - if stop: - self.core_doneflag.set() - - def remove(self, infohash): -- self.torrent_list.remove(infohash) -- if self.downloads[infohash] is not None: -- self.downloads[infohash].shutdown() -+ torrent = self.multitorrent.get_torrent(infohash) -+ if torrent is not None: -+ torrent.shutdown() - self.was_stopped(infohash) -- del self.downloads[infohash] - - def add(self, infohash, data): -- - # data is a dict like - # { path:'/a/b/c.torrent', file:'c.torrent', length:90911, name:'Sea', - # metainfo: <metainfo>} Metainfo has bdecoded but not passed - # to ConvertedMetainfo. -- self.torrent_list.append(infohash) -- self.downloads[infohash] = None - self.hashcheck_queue.append(infohash) - self.hashcheck_store[infohash] = ConvertedMetainfo(data['metainfo']) - self.check_hashcheck_queue() - - def check_hashcheck_queue(self): -- if self.hashcheck_current is not None or not self.hashcheck_queue: -+ if not self.hashcheck_queue: - return -- infohash = self.hashcheck_current = self.hashcheck_queue.pop(0) -+ infohash = self.hashcheck_queue.pop(0) - metainfo = self.hashcheck_store[infohash] - del self.hashcheck_store[infohash] -- filename = self.determine_filename(infohash) -+ save_incomplete_as, save_as = self.determine_filename(infohash) -+ saveas_style_save_incomplete_as, saveas_style_save_as = self._determine_filename(infohash) - torrent_path = self.torrent_cache[infohash]['path'] -- self.start_torrent(torrent_path, metainfo, filename, filename) -+ self.start_torrent(torrent_path, metainfo, save_incomplete_as,save_as, -+ saveas_style_save_incomplete_as, saveas_style_save_as) - -- def start_torrent(self,torrent_path,metainfo,save_incomplete_as,save_as): -+ def start_torrent(self,torrent_path,metainfo,save_incomplete_as,save_as, -+ saveas_style_save_incomplete_as=None,saveas_style_save_as=None): - assert isinstance(metainfo, ConvertedMetainfo) - df = launch_coroutine(_wrap_task(self.rawserver.add_task), - self._start_torrent, metainfo, -- save_incomplete_as, save_as) -+ save_incomplete_as, save_as, -+ saveas_style_save_incomplete_as=saveas_style_save_incomplete_as, -+ saveas_style_save_as=saveas_style_save_as) - df.addErrback(lambda e : self.logger.error(_("DIED: "),exc_info=e)) - return df - -- def _start_torrent(self, metainfo, save_incomplete_as,save_as): -+ def _start_torrent(self, metainfo, save_incomplete_as,save_as, -+ saveas_style_save_incomplete_as,saveas_style_save_as): - assert isinstance(metainfo, ConvertedMetainfo) -- df = self.multitorrent.create_torrent(metainfo, -- save_incomplete_as, save_as) -- yield df -- torrent = self.multitorrent.get_torrent(metainfo.infohash) -- if torrent.is_initialized(): -- multitorrent.start_torrent(metainfo.infohash) -- #else: ???? # this would be an error condition already reported -- # to logger. -- check_hashcheck_queue() -+ save_incomplete_as, junk = platform.encode_for_filesystem(save_incomplete_as) -+ save_as, junk = platform.encode_for_filesystem(save_as) -+ if saveas_style_save_incomplete_as is not None: -+ saveas_style_save_incomplete_as, junk = platform.encode_for_filesystem(saveas_style_save_incomplete_as) -+ if saveas_style_save_as is not None: -+ saveas_style_save_as, junk = platform.encode_for_filesystem(saveas_style_save_as) -+ try: -+ df = self.multitorrent.create_torrent(metainfo, -+ save_incomplete_as, save_as, -+ saveas_style_save_incomplete_as, -+ saveas_style_save_as) -+ yield df -+ df.getResult() -+ except (TorrentAlreadyRunning, TorrentAlreadyInQueue): -+ pass -+ except: -+ raise - -- def determine_filename(self, infohash): -+ infohash = metainfo.infohash -+ -+ # find out if torrent has been recorded -+ try: -+ torrent = self.multitorrent.get_torrent(infohash) -+ if not torrent or torrent is None: -+ raise UnknownInfohash(infohash.encode("hex")) -+ except: -+ raise -+ -+ # function to requeue torrent if has not been initialized just yet -+ def hashcheck_requeue(infohash): -+ df = self.remove(infohash) -+ data = self.torrent_cache[infohash] -+ if self.config['launch_delay'] > 0: -+ self.rawserver.add_task(self.config['launch_delay'], self.add, infohash, data) -+ else: -+ # wait at least 1 -+ self.rawserver.add_task(1, self.add, infohash, data) -+ -+ # Is it running? -+ running = self.multitorrent.torrent_running(infohash) -+ if not running: -+ try: -+ if torrent.is_initialized(): -+ df = self.multitorrent.start_torrent(infohash) -+ yield df -+ df.getResult() -+ else: -+ raise TorrentNotInitialized -+ except TorrentAlreadyRunning: -+ pass -+ except TorrentNotInitialized: -+ hashcheck_requeue(infohash) -+ except: -+ raise -+ -+ self.check_hashcheck_queue() -+ -+ def determine_saveas_style(self, infohash): - x = self.torrent_cache[infohash] - name = x['name'] -- savein = self.config['save_in'] -- isdir = not x['metainfo']['info'].has_key('length') - style = self.config['saveas_style'] - if style == 4: - torrentname = os.path.split(x['path'][:-8])[1] -@@ -295,20 +358,54 @@ - style = 1 - else: - style = 3 -+ return style -+ -+ # Specially handle the style 3 case. -+ # Style 3 breaks Torrent.move so we have an intermediate -+ # _determine_filename for Torrent.move benefit -+ # but determine_filename for general use -+ def determine_filename(self, infohash): -+ x = self.torrent_cache[infohash] -+ name = x['name'] -+ isdir = not x['metainfo']['info'].has_key('length') -+ style = self.determine_saveas_style(infohash) -+ saveincompleteas, saveas = self._determine_filename(infohash) -+ -+ # add filename -+ if style == 3 and not isdir: -+ saveas = os.path.join(saveas, name) -+ saveincompleteas = os.path.join(saveincompleteas, name) -+ -+ return saveincompleteas, saveas -+ -+ # generate paths appropriate for Torrent.move method -+ def _determine_filename(self, infohash): -+ x = self.torrent_cache[infohash] -+ name = x['name'] -+ savein = self.config['save_in'] -+ saveincompletein = self.config['save_incomplete_in'] -+ style = self.determine_saveas_style(infohash) - - if style == 1 or style == 3: - if savein: - saveas = os.path.join(savein,x['file'][:-8]) # strip '.torrent' - else: - saveas = x['path'][:-8] # strip '.torrent' -- if style == 3 and not isdir: -- saveas = os.path.join(saveas, name) -+ if saveincompletein: -+ saveincompleteas = os.path.join(saveincompletein, x['file'][:-8]) # strip '.torrent' -+ else: -+ saveincompleteas = x['path'][:-8] # strip '.torrent' - else: - if savein: - saveas = os.path.join(savein, name) - else: - saveas = os.path.join(os.path.split(x['path'])[0], name) -- return saveas -+ if saveincompletein: -+ saveincompleteas = os.path.join(saveincompletein, name) -+ else: -+ saveincompleteas = os.path.join(os.path.split(x['path'])[0], name) -+ -+ return saveincompleteas, saveas - - def was_stopped(self, infohash): - try: -@@ -317,8 +414,6 @@ - pass - else: - del self.hashcheck_store[infohash] -- if self.hashcheck_current == infohash: -- self.hashcheck_current = None - self.check_hashcheck_queue() - - # Exceptions are now reported via loggers.< -@@ -343,7 +438,7 @@ - # the self.failed() callback can run during this loop. - for option, value in newvalues.iteritems(): - self.multitorrent.set_option(option, value) -- for torrent in self.downloads.values(): -+ for torrent in self.multitorrent.get_torrents(): - if torrent is not None: - for option, value in newvalues.iteritems(): - torrent.set_option(option, value) diff --git a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__platform.py b/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__platform.py deleted file mode 100644 index a18c4d640cc9..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-BitTorrent__platform.py +++ /dev/null @@ -1,11 +0,0 @@ ---- ./BitTorrent/platform.py.orig Wed Jul 12 02:18:37 2006 -+++ ./BitTorrent/platform.py Sat Jul 22 17:42:24 2006 -@@ -334,7 +334,7 @@ - - - def calc_unix_dirs(): -- appdir = '%s-%s'%(app_name, version) -+ appdir = '%s'%(app_name) - ip = os.path.join(efs(u'share')[0], efs(u'pixmaps')[0], appdir) - dp = os.path.join(efs(u'share')[0], efs(u'doc')[0], appdir) - lp = os.path.join(efs(u'share')[0], efs(u'locale')[0]) diff --git a/net-p2p/py-bittorrent-devel/files/patch-launchmany-console.py b/net-p2p/py-bittorrent-devel/files/patch-launchmany-console.py deleted file mode 100644 index f2c8b8ff2f73..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-launchmany-console.py +++ /dev/null @@ -1,32 +0,0 @@ ---- ./launchmany-console.py.orig Wed Jul 12 02:18:54 2006 -+++ ./launchmany-console.py Fri Jul 28 23:56:07 2006 -@@ -49,6 +49,10 @@ - uprate/1000, dnrate/1000, upamt/1024, dnamt/1024, msg)) - return False - -+ def exception(self, s): -+ exceptions.append(s) -+ #logging.getLogger('').info(_("SYSTEM ERROR - EXCEPTION GENERATED")) -+ - - if __name__ == '__main__': - uiname = 'launchmany-console' -@@ -76,7 +80,7 @@ - platform.decode_from_filesystem(torrent_dir) - else: - torrent_dir = config['torrent_dir'] -- torrent_dir,bad = platform.encode_from_filesystem(torrent_dir) -+ torrent_dir,bad = platform.encode_for_filesystem(torrent_dir) - if bad: - raise BTFailure(_("Warning: ")+config['torrent_dir']+ - _(" is not a directory")) -@@ -139,4 +143,8 @@ - #logging.getLogger().setLevel(INFO) - logging.getLogger('').setLevel(0) - -- LaunchMany(config, d.display, 'launchmany-console') -+ LaunchMany(config, d, 'launchmany-console') -+ -+ if exceptions: -+ print _("\nEXCEPTION:") -+ print exceptions[0] diff --git a/net-p2p/py-bittorrent-devel/files/patch-launchmany-curses.py b/net-p2p/py-bittorrent-devel/files/patch-launchmany-curses.py deleted file mode 100644 index 1a0c612c0e96..000000000000 --- a/net-p2p/py-bittorrent-devel/files/patch-launchmany-curses.py +++ /dev/null @@ -1,65 +0,0 @@ ---- ./launchmany-curses.py.orig Wed Jul 12 02:18:54 2006 -+++ ./launchmany-curses.py Fri Jul 28 23:42:45 2006 -@@ -18,6 +18,7 @@ - - DOWNLOAD_SCROLL_RATE = 1 - -+import logging - import sys, os - from threading import Event - from time import time, localtime, strftime -@@ -101,7 +102,7 @@ - def winch_handler(self, signum, stackframe): - self.changeflag.set() - curses.endwin() -- self.scrwin.refresh() -+ self.scrwin.noutrefresh() - self.scrwin = curses.newwin(0, 0, 0, 0) - self._remake_window() - self._display_messages() -@@ -120,22 +121,26 @@ - self.mainpan = curses.panel.new_panel(self.mainwin) - self.mainwin.scrollok(0) - self.mainwin.nodelay(1) -+ self.mainwin.clearok(1) - - self.headerwin = curses.newwin(1, self.mainwinw+1, - 1, self.mainwinx) - self.headerpan = curses.panel.new_panel(self.headerwin) - self.headerwin.scrollok(0) -+ self.headerwin.clearok(0) - - self.totalwin = curses.newwin(1, self.mainwinw+1, - self.mainwinh+1, self.mainwinx) - self.totalpan = curses.panel.new_panel(self.totalwin) - self.totalwin.scrollok(0) -+ self.totalwin.clearok(0) - - self.statuswinh = self.scrh-4-self.mainwinh - self.statuswin = curses.newwin(self.statuswinh, self.mainwinw+1, - self.mainwinh+3, self.mainwinx) - self.statuspan = curses.panel.new_panel(self.statuswin) - self.statuswin.scrollok(0) -+ self.statuswin.clearok(1) - - try: - self.scrwin.border(ord('|'),ord('|'),ord('-'),ord('-'),ord(' '),ord(' '),ord(' '),ord(' ')) -@@ -277,7 +282,8 @@ - - - def LaunchManyWrapper(scrwin, config): -- LaunchMany(config, CursesDisplayer(scrwin), 'launchmany-curses') -+ d = CursesDisplayer(scrwin) -+ LaunchMany(config, d, 'launchmany-curses') - - - if __name__ == '__main__': -@@ -306,7 +312,7 @@ - platform.decode_from_filesystem(torrent_dir) - else: - torrent_dir = config['torrent_dir'] -- torrent_dir,bad = platform.encode_from_filesystem(torrent_dir) -+ torrent_dir,bad = platform.encode_for_filesystem(torrent_dir) - if bad: - raise BTFailure(_("Warning: ")+config['torrent_dir']+ - _(" is not a directory")) diff --git a/net-p2p/py-bittorrent-devel/pkg-descr b/net-p2p/py-bittorrent-devel/pkg-descr deleted file mode 100644 index b6d48e06685a..000000000000 --- a/net-p2p/py-bittorrent-devel/pkg-descr +++ /dev/null @@ -1,11 +0,0 @@ -[ excerpt from distribution's README.txt ] - -BitTorrent is a tool for distributing files. It's extremely easy -to use - downloads are started by clicking on hyperlinks. Whenever -more than one person is downloading at once they send pieces of the -file(s) to each other, thus relieving the central server's bandwidth -burden. Even with many simultaneous downloads, the upload burden -on the central server remains quite small, since each new downloader -introduces new upload capacity. - -WWW: http://www.bittorrent.com/ diff --git a/net-p2p/py-bittorrent-devel/pkg-plist b/net-p2p/py-bittorrent-devel/pkg-plist deleted file mode 100644 index e7cd0bc757b2..000000000000 --- a/net-p2p/py-bittorrent-devel/pkg-plist +++ /dev/null @@ -1,376 +0,0 @@ -bin/bittorrent-console -bin/bittorrent-curses -bin/bittorrent-tracker -bin/changetracker-console -bin/launchmany-console -bin/launchmany-curses -bin/maketorrent-console -bin/torrentinfo-console -%%PYTHON_SITELIBDIR%%/BitTorrent/AutoUpdateButler.py -%%PYTHON_SITELIBDIR%%/BitTorrent/AutoUpdateButler.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/AutoUpdateButler.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/BandwidthManager.py -%%PYTHON_SITELIBDIR%%/BitTorrent/BandwidthManager.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/BandwidthManager.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/BeautifulSupe.py -%%PYTHON_SITELIBDIR%%/BitTorrent/BeautifulSupe.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/BeautifulSupe.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Choker.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Choker.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Choker.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/ClientIdentifier.py -%%PYTHON_SITELIBDIR%%/BitTorrent/ClientIdentifier.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/ClientIdentifier.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/ConnectionManager.py -%%PYTHON_SITELIBDIR%%/BitTorrent/ConnectionManager.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/ConnectionManager.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/ConnectionRateLimitReactor.py -%%PYTHON_SITELIBDIR%%/BitTorrent/ConnectionRateLimitReactor.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/ConnectionRateLimitReactor.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Connector.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Connector.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Connector.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/ConvertedMetainfo.py -%%PYTHON_SITELIBDIR%%/BitTorrent/ConvertedMetainfo.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/ConvertedMetainfo.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/CurrentRateMeasure.py -%%PYTHON_SITELIBDIR%%/BitTorrent/CurrentRateMeasure.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/CurrentRateMeasure.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/DictWithLists.py -%%PYTHON_SITELIBDIR%%/BitTorrent/DictWithLists.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/DictWithLists.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Download.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Download.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Download.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/FeedManager.py -%%PYTHON_SITELIBDIR%%/BitTorrent/FeedManager.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/FeedManager.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/Bling.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/Bling.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/Bling.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/CustomWidgets.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/CustomWidgets.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/CustomWidgets.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/DownloadManager.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/DownloadManager.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/DownloadManager.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/LanguageSettings.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/LanguageSettings.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/LanguageSettings.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/ListCtrl.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/ListCtrl.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/ListCtrl.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/OpenDialog.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/OpenDialog.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/OpenDialog.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/SettingsWindow.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/SettingsWindow.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/SettingsWindow.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/StatusLight.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/StatusLight.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/StatusLight.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/ToolTip.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/ToolTip.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/ToolTip.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/__init__.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/__init__.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx/__init__.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/GetTorrent.py -%%PYTHON_SITELIBDIR%%/BitTorrent/GetTorrent.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/GetTorrent.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/HTTPConnector.py -%%PYTHON_SITELIBDIR%%/BitTorrent/HTTPConnector.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/HTTPConnector.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/HTTPHandler.py -%%PYTHON_SITELIBDIR%%/BitTorrent/HTTPHandler.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/HTTPHandler.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/HostIP.py -%%PYTHON_SITELIBDIR%%/BitTorrent/HostIP.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/HostIP.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/IPC.py -%%PYTHON_SITELIBDIR%%/BitTorrent/IPC.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/IPC.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/InternetWatcher.py -%%PYTHON_SITELIBDIR%%/BitTorrent/InternetWatcher.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/InternetWatcher.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/LaunchPath.py -%%PYTHON_SITELIBDIR%%/BitTorrent/LaunchPath.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/LaunchPath.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Lists.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Lists.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Lists.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/LocalDiscovery.py -%%PYTHON_SITELIBDIR%%/BitTorrent/LocalDiscovery.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/LocalDiscovery.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/MultiDownload.py -%%PYTHON_SITELIBDIR%%/BitTorrent/MultiDownload.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/MultiDownload.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/MultiTorrent.py -%%PYTHON_SITELIBDIR%%/BitTorrent/MultiTorrent.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/MultiTorrent.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/NamedMutex.py -%%PYTHON_SITELIBDIR%%/BitTorrent/NamedMutex.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/NamedMutex.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/NatCheck.py -%%PYTHON_SITELIBDIR%%/BitTorrent/NatCheck.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/NatCheck.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/NatTraversal.py -%%PYTHON_SITELIBDIR%%/BitTorrent/NatTraversal.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/NatTraversal.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/NewRateLimiter.py -%%PYTHON_SITELIBDIR%%/BitTorrent/NewRateLimiter.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/NewRateLimiter.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/NewVersion.py -%%PYTHON_SITELIBDIR%%/BitTorrent/NewVersion.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/NewVersion.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/OldTorrentQueue.py -%%PYTHON_SITELIBDIR%%/BitTorrent/OldTorrentQueue.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/OldTorrentQueue.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/PeerID.py -%%PYTHON_SITELIBDIR%%/BitTorrent/PeerID.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/PeerID.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/PiecePicker.py -%%PYTHON_SITELIBDIR%%/BitTorrent/PiecePicker.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/PiecePicker.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/PieceSetBuckets.py -%%PYTHON_SITELIBDIR%%/BitTorrent/PieceSetBuckets.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/PieceSetBuckets.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/PluginSupport.py -%%PYTHON_SITELIBDIR%%/BitTorrent/PluginSupport.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/PluginSupport.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/RTTMonitor.py -%%PYTHON_SITELIBDIR%%/BitTorrent/RTTMonitor.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/RTTMonitor.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/RateLimiter.py -%%PYTHON_SITELIBDIR%%/BitTorrent/RateLimiter.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/RateLimiter.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/RateMeasure.py -%%PYTHON_SITELIBDIR%%/BitTorrent/RateMeasure.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/RateMeasure.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/RawServer_twisted.py -%%PYTHON_SITELIBDIR%%/BitTorrent/RawServer_twisted.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/RawServer_twisted.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Rerequester.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Rerequester.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Rerequester.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/StatusLight.py -%%PYTHON_SITELIBDIR%%/BitTorrent/StatusLight.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/StatusLight.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/StorageWrapper.py -%%PYTHON_SITELIBDIR%%/BitTorrent/StorageWrapper.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/StorageWrapper.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_IOCP.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_IOCP.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_IOCP.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_base.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_base.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_base.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_threadpool.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_threadpool.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Storage_threadpool.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/ThreadProxy.py -%%PYTHON_SITELIBDIR%%/BitTorrent/ThreadProxy.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/ThreadProxy.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Torrent.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Torrent.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Torrent.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentButler.py -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentButler.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentButler.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentPolicy.py -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentPolicy.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentPolicy.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentStats.py -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentStats.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/TorrentStats.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/UI.py -%%PYTHON_SITELIBDIR%%/BitTorrent/UI.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/UI.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/Upload.py -%%PYTHON_SITELIBDIR%%/BitTorrent/Upload.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/Upload.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/XMultiTorrent.py -%%PYTHON_SITELIBDIR%%/BitTorrent/XMultiTorrent.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/XMultiTorrent.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/XTorrentQueue.py -%%PYTHON_SITELIBDIR%%/BitTorrent/XTorrentQueue.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/XTorrentQueue.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/__init__.py -%%PYTHON_SITELIBDIR%%/BitTorrent/__init__.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/__init__.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/atexit_threads.py -%%PYTHON_SITELIBDIR%%/BitTorrent/atexit_threads.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/atexit_threads.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/bencode.py -%%PYTHON_SITELIBDIR%%/BitTorrent/bencode.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/bencode.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/bitfield.py -%%PYTHON_SITELIBDIR%%/BitTorrent/bitfield.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/bitfield.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/btformats.py -%%PYTHON_SITELIBDIR%%/BitTorrent/btformats.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/btformats.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/configfile.py -%%PYTHON_SITELIBDIR%%/BitTorrent/configfile.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/configfile.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/defaultargs.py -%%PYTHON_SITELIBDIR%%/BitTorrent/defaultargs.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/defaultargs.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/defer.py -%%PYTHON_SITELIBDIR%%/BitTorrent/defer.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/defer.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/hash.py -%%PYTHON_SITELIBDIR%%/BitTorrent/hash.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/hash.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/ipfree.py -%%PYTHON_SITELIBDIR%%/BitTorrent/ipfree.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/ipfree.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/language.py -%%PYTHON_SITELIBDIR%%/BitTorrent/language.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/language.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/launchmanycore.py -%%PYTHON_SITELIBDIR%%/BitTorrent/launchmanycore.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/launchmanycore.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/makemetafile.py -%%PYTHON_SITELIBDIR%%/BitTorrent/makemetafile.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/makemetafile.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/obsoletepythonsupport.py -%%PYTHON_SITELIBDIR%%/BitTorrent/obsoletepythonsupport.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/obsoletepythonsupport.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/parseargs.py -%%PYTHON_SITELIBDIR%%/BitTorrent/parseargs.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/parseargs.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/parsedir.py -%%PYTHON_SITELIBDIR%%/BitTorrent/parsedir.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/parsedir.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/platform.py -%%PYTHON_SITELIBDIR%%/BitTorrent/platform.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/platform.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/prefs.py -%%PYTHON_SITELIBDIR%%/BitTorrent/prefs.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/prefs.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/pykill.py -%%PYTHON_SITELIBDIR%%/BitTorrent/pykill.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/pykill.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/shortargs.py -%%PYTHON_SITELIBDIR%%/BitTorrent/shortargs.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/shortargs.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/sparse_set.py -%%PYTHON_SITELIBDIR%%/BitTorrent/sparse_set.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/sparse_set.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/stackthreading.py -%%PYTHON_SITELIBDIR%%/BitTorrent/stackthreading.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/stackthreading.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/track.py -%%PYTHON_SITELIBDIR%%/BitTorrent/track.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/track.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/translation.py -%%PYTHON_SITELIBDIR%%/BitTorrent/translation.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/translation.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/yielddefer.py -%%PYTHON_SITELIBDIR%%/BitTorrent/yielddefer.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/yielddefer.pyo -%%PYTHON_SITELIBDIR%%/BitTorrent/zurllib.py -%%PYTHON_SITELIBDIR%%/BitTorrent/zurllib.pyc -%%PYTHON_SITELIBDIR%%/BitTorrent/zurllib.pyo -%%PYTHON_SITELIBDIR%%/Zeroconf.py -%%PYTHON_SITELIBDIR%%/Zeroconf.pyc -%%PYTHON_SITELIBDIR%%/Zeroconf.pyo -%%PYTHON_SITELIBDIR%%/khashmir/KRateLimiter.py -%%PYTHON_SITELIBDIR%%/khashmir/KRateLimiter.pyc -%%PYTHON_SITELIBDIR%%/khashmir/KRateLimiter.pyo -%%PYTHON_SITELIBDIR%%/khashmir/__init__.py -%%PYTHON_SITELIBDIR%%/khashmir/__init__.pyc -%%PYTHON_SITELIBDIR%%/khashmir/__init__.pyo -%%PYTHON_SITELIBDIR%%/khashmir/actions.py -%%PYTHON_SITELIBDIR%%/khashmir/actions.pyc -%%PYTHON_SITELIBDIR%%/khashmir/actions.pyo -%%PYTHON_SITELIBDIR%%/khashmir/cache.py -%%PYTHON_SITELIBDIR%%/khashmir/cache.pyc -%%PYTHON_SITELIBDIR%%/khashmir/cache.pyo -%%PYTHON_SITELIBDIR%%/khashmir/const.py -%%PYTHON_SITELIBDIR%%/khashmir/const.pyc -%%PYTHON_SITELIBDIR%%/khashmir/const.pyo -%%PYTHON_SITELIBDIR%%/khashmir/hammerlock.py -%%PYTHON_SITELIBDIR%%/khashmir/hammerlock.pyc -%%PYTHON_SITELIBDIR%%/khashmir/hammerlock.pyo -%%PYTHON_SITELIBDIR%%/khashmir/inserter.py -%%PYTHON_SITELIBDIR%%/khashmir/inserter.pyc -%%PYTHON_SITELIBDIR%%/khashmir/inserter.pyo -%%PYTHON_SITELIBDIR%%/khashmir/khash.py -%%PYTHON_SITELIBDIR%%/khashmir/khash.pyc -%%PYTHON_SITELIBDIR%%/khashmir/khash.pyo -%%PYTHON_SITELIBDIR%%/khashmir/khashmir.py -%%PYTHON_SITELIBDIR%%/khashmir/khashmir.pyc -%%PYTHON_SITELIBDIR%%/khashmir/khashmir.pyo -%%PYTHON_SITELIBDIR%%/khashmir/knet.py -%%PYTHON_SITELIBDIR%%/khashmir/knet.pyc -%%PYTHON_SITELIBDIR%%/khashmir/knet.pyo -%%PYTHON_SITELIBDIR%%/khashmir/knode.py -%%PYTHON_SITELIBDIR%%/khashmir/knode.pyc -%%PYTHON_SITELIBDIR%%/khashmir/knode.pyo -%%PYTHON_SITELIBDIR%%/khashmir/krpc.py -%%PYTHON_SITELIBDIR%%/khashmir/krpc.pyc -%%PYTHON_SITELIBDIR%%/khashmir/krpc.pyo -%%PYTHON_SITELIBDIR%%/khashmir/kstore.py -%%PYTHON_SITELIBDIR%%/khashmir/kstore.pyc -%%PYTHON_SITELIBDIR%%/khashmir/kstore.pyo -%%PYTHON_SITELIBDIR%%/khashmir/ktable.py -%%PYTHON_SITELIBDIR%%/khashmir/ktable.pyc -%%PYTHON_SITELIBDIR%%/khashmir/ktable.pyo -%%PYTHON_SITELIBDIR%%/khashmir/node.py -%%PYTHON_SITELIBDIR%%/khashmir/node.pyc -%%PYTHON_SITELIBDIR%%/khashmir/node.pyo -%%PYTHON_SITELIBDIR%%/khashmir/setup.py -%%PYTHON_SITELIBDIR%%/khashmir/setup.pyc -%%PYTHON_SITELIBDIR%%/khashmir/setup.pyo -%%PYTHON_SITELIBDIR%%/khashmir/test.py -%%PYTHON_SITELIBDIR%%/khashmir/test.pyc -%%PYTHON_SITELIBDIR%%/khashmir/test.pyo -%%PYTHON_SITELIBDIR%%/khashmir/test_khashmir.py -%%PYTHON_SITELIBDIR%%/khashmir/test_khashmir.pyc -%%PYTHON_SITELIBDIR%%/khashmir/test_khashmir.pyo -%%PYTHON_SITELIBDIR%%/khashmir/test_krpc.py -%%PYTHON_SITELIBDIR%%/khashmir/test_krpc.pyc -%%PYTHON_SITELIBDIR%%/khashmir/test_krpc.pyo -%%PYTHON_SITELIBDIR%%/khashmir/test_kstore.py -%%PYTHON_SITELIBDIR%%/khashmir/test_kstore.pyc -%%PYTHON_SITELIBDIR%%/khashmir/test_kstore.pyo -%%PYTHON_SITELIBDIR%%/khashmir/unet.py -%%PYTHON_SITELIBDIR%%/khashmir/unet.pyc -%%PYTHON_SITELIBDIR%%/khashmir/unet.pyo -%%PYTHON_SITELIBDIR%%/khashmir/util.py -%%PYTHON_SITELIBDIR%%/khashmir/util.pyc -%%PYTHON_SITELIBDIR%%/khashmir/util.pyo -%%PYTHON_SITELIBDIR%%/khashmir/utkhashmir.py -%%PYTHON_SITELIBDIR%%/khashmir/utkhashmir.pyc -%%PYTHON_SITELIBDIR%%/khashmir/utkhashmir.pyo -share/locale/de/LC_MESSAGES/bittorrent.mo -share/locale/en/LC_MESSAGES/bittorrent.mo -share/locale/es/LC_MESSAGES/bittorrent.mo -share/locale/es_MX/LC_MESSAGES/bittorrent.mo -share/locale/fr/LC_MESSAGES/bittorrent.mo -share/locale/it/LC_MESSAGES/bittorrent.mo -share/locale/ja/LC_MESSAGES/bittorrent.mo -share/locale/ko/LC_MESSAGES/bittorrent.mo -share/locale/pt/LC_MESSAGES/bittorrent.mo -share/locale/pt_BR/LC_MESSAGES/bittorrent.mo -share/locale/zh_CN/LC_MESSAGES/bittorrent.mo -share/locale/zh_TW/LC_MESSAGES/bittorrent.mo -%%GUI%%@dirrm share/pixmaps/BitTorrent/themes/default/torrentstate -%%GUI%%@dirrm share/pixmaps/BitTorrent/themes/default/torrentops -%%GUI%%@dirrm share/pixmaps/BitTorrent/themes/default/statuslight -%%GUI%%@dirrm share/pixmaps/BitTorrent/themes/default/fileops -%%GUI%%@dirrm share/pixmaps/BitTorrent/themes/default -%%GUI%%@dirrm share/pixmaps/BitTorrent/themes -%%GUI%%@dirrm share/pixmaps/BitTorrent/logo -%%GUI%%@dirrm share/pixmaps/BitTorrent/flags -%%GUI%%@dirrm share/pixmaps/BitTorrent -@dirrm %%PYTHON_SITELIBDIR%%/khashmir -@dirrm %%PYTHON_SITELIBDIR%%/BitTorrent/GUI_wx -@dirrm %%PYTHON_SITELIBDIR%%/BitTorrent -@dirrmtry %%PYTHON_SITELIBDIR%% -@dirrmtry %%PYTHON_LIBDIR%% |