kylemanna
12/22/2014 - 7:35 AM

0001-auto_deps-Workaround-dep-resolution-issue.patch

--- src/allmydata/scripts/startstop_node.py	2011-10-30 22:54:34.000000000 +0100
+++ src/allmydata/scripts/startstop_node.py	2011-11-10 15:22:21.432711365 +0100
@@ -10,6 +10,7 @@
     optFlags = [
         ["profile", "p", "Run under the Python profiler, putting results in 'profiling_results.prof'."],
         ["syslog", None, "Tell the node to log to syslog, not a file."],
+        ["nodaemon", "n", "Do not daemonize."],
         ]
 
     def getSynopsis(self):
@@ -70,6 +71,8 @@
         args.extend(["--logfile", os.path.join("logs", "twistd.log")])
     if opts["profile"]:
         args.extend(["--profile=profiling_results.prof", "--savestats",])
+    if opts["nodaemon"]:
+        args.extend(["--nodaemon", "--umask=0077"])
     # now we're committed
     os.chdir(basedir)
     from twisted.scripts import twistd
# Contributor: Peter Simons <simons@cryp.to>
# Contributor: Nicolas Pouillard <nicolas.pouillard@gmail.com>
pkgname=tahoe-lafs
pkgver=1.10.0
pkgrel=2
pkgdesc="a secure, decentralized, fault-tolerant filesystem"
arch=('any')
url='http://tahoe-lafs.org/'
license=('GPL')
# net-tools is needed because Tahoe-LAFS uses /sbin/ifconfig
depends=('net-tools' 'python2' 'python2-zope-interface>=3.6.5'
         'twisted' 'python2-pyasn1' 'python2-crypto' 'pycryptopp' 'nevow'
         'python2-foolscap' 'python2-simplejson' 'zfec' 'python2-pyopenssl'
         'pyutil' 'python2-argparse' 'zbase32' 'python2-mock>=0.8.0')
source=(nodaemon.patch
        https://tahoe-lafs.org/source/tahoe-lafs/releases/allmydata-tahoe-$pkgver.tar.bz2
        0001-auto_deps-Workaround-dep-resolution-issue.patch)
sha256sums=('7fb13a50bdca729b9c78f12369e56fccf55594b646bddb270d55c08c83ce3449'
            '9c5516700fe95fdf8c57eca1e2a7b4aebf2de9a4d327d50afd684ebf833ccfe2'
            '055079c36e58a604765312eeb98df4133c77634bdb9a88da5a8c0142ea9e4e10')

build(){
  cd "$srcdir/allmydata-tahoe-$pkgver"
  patch -p0 < ../nodaemon.patch
  patch -p1 < ../0001-auto_deps-Workaround-dep-resolution-issue.patch
  python2 setup.py build
  # disabled due to the nodaemon patch and the test_filesystem* tests
  #python2 setup.py test || return 1
}

package(){
  cd "$srcdir/allmydata-tahoe-$pkgver"
  python2 setup.py install --root="$pkgdir"
}
From 8899e10098990adb688433f3209e277391aad5f3 Mon Sep 17 00:00:00 2001
From: Kyle Manna <kyle@kylemanna.com>
Date: Sun, 21 Dec 2014 23:32:59 -0800
Subject: [PATCH] auto_deps: Workaround dep resolution issue

Errors:

    tahoe[5580]: Traceback (most recent call last):
    tahoe[5580]: File "/usr/bin/tahoe", line 6, in <module>
    tahoe[5580]: from pkg_resources import load_entry_point
    tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2951, in <module>
    tahoe[5580]: working_set = WorkingSet._build_master()
    tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 563, in _build_master
    tahoe[5580]: return cls._build_from_requirements(__requires__)
    tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 576, in _build_from_requirements
    tahoe[5580]: dists = ws.resolve(reqs, Environment())
    tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 755, in resolve
    tahoe[5580]: raise DistributionNotFound(req)
    tahoe[5580]: pkg_resources.DistributionNotFound: pycrypto==2.1.0,==2.3,>=2.4.1
---
 src/allmydata/_auto_deps.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/allmydata/_auto_deps.py b/src/allmydata/_auto_deps.py
index b7be321..3e93134 100644
--- a/src/allmydata/_auto_deps.py
+++ b/src/allmydata/_auto_deps.py
@@ -16,7 +16,7 @@ install_requires = [
 
     # zope.interface >= 3.6.0 is required for Twisted >= 12.1.0.
     # zope.interface 3.6.3 and 3.6.4 are incompatible with Nevow (#1435).
-    "zope.interface == 3.6.0, == 3.6.1, == 3.6.2, >= 3.6.5",
+    "zope.interface >= 3.6.5",
 
     # * On Windows we need at least Twisted 9.0 to avoid an indirect
     #   dependency on pywin32.
@@ -55,7 +55,7 @@ install_requires = [
     # Needed for SFTP. pyasn1 is needed by twisted.conch in Twisted >= 9.0.
     # pycrypto 2.2 doesn't work due to https://bugs.launchpad.net/pycrypto/+bug/620253
     # pycrypto 2.4 doesn't work due to https://bugs.launchpad.net/pycrypto/+bug/881130
-    "pycrypto == 2.1.0, == 2.3, >= 2.4.1",
+    "pycrypto >= 2.4.1",
     "pyasn1 >= 0.0.8a",
 
     # http://www.voidspace.org.uk/python/mock/ , 0.8.0 provides "call"
-- 
2.2.1