commit b83b504594a1de3359aea4afceb80837408bc99f Author: Georg Koppen gk@torproject.org Date: Thu May 8 09:57:49 2014 +0000
Bug 11535: Add txsocksx dependency.
We not only add the txsocksx dependency but Parsley as well as it is needed by txsocksx. We further avoid downloading vcversioner during build time (that is during running the gitian-pluggable-transport build script) pretending we already have it locally. --- .../linux/gitian-pluggable-transports.yml | 23 ++++++++++++++++++++ .../mac/gitian-pluggable-transports.yml | 23 ++++++++++++++++++++ .../windows/gitian-pluggable-transports.yml | 19 ++++++++++++++++ gitian/fetch-inputs.sh | 6 +++-- gitian/mkbundle-linux.sh | 2 +- gitian/mkbundle-mac.sh | 2 +- gitian/mkbundle-windows.sh | 2 +- gitian/verify-tags.sh | 3 ++- gitian/versions.beta | 13 +++++++---- gitian/versions.nightly | 14 +++++++----- 10 files changed, 92 insertions(+), 15 deletions(-)
diff --git a/gitian/descriptors/linux/gitian-pluggable-transports.yml b/gitian/descriptors/linux/gitian-pluggable-transports.yml index 4423b50..25109b8 100644 --- a/gitian/descriptors/linux/gitian-pluggable-transports.yml +++ b/gitian/descriptors/linux/gitian-pluggable-transports.yml @@ -25,6 +25,8 @@ remotes: "dir": "flashproxy" - "url": "https://github.com/kpdyer/fteproxy.git" "dir": "fteproxy" +- "url": "https://github.com/habnabit/txsocksx.git" + "dir": "txsocksx" files: - "openssl.tar.gz" - "gmp.tar.bz2" @@ -34,6 +36,7 @@ files: - "zope.interface.zip" - "twisted.tar.bz2" - "m2crypto.tar.gz" +- "parsley.tar.gz" - "dzip.sh" script: | INSTDIR="$HOME/install" @@ -106,6 +109,26 @@ script: | cp -a build/twisted $PTDIR/ cd .. # + tar xzf parsley.tar.gz + cd Parsley-* + find -type f | xargs touch --date="$REFERENCE_DATETIME" + $PYTHON setup.py build --build-lib build + cp -a build/parsley.py $PTDIR/ + cp -a build/ometa $PTDIR/ + cp -a build/terml $PTDIR/ + cd .. + # + cd txsocksx + find -type f | xargs touch --date="$REFERENCE_DATETIME" + # Let's pretend we have the setup dependency already as we don't want to get + # it downloaded during building. Just pretending and thus avoiding another + # dependency should be fine here as txsocksx catches the exception due to + # missing __version__ and __sha__ . + mkdir vcversioner-1.14.1.1-py2.6.egg + $PYTHON setup.py build --build-lib build + cp -a build/txsocksx $PTDIR/ + cd .. + # cd obfsproxy find -type f | xargs touch --date="$REFERENCE_DATETIME" $PYTHON setup.py build --build-lib build diff --git a/gitian/descriptors/mac/gitian-pluggable-transports.yml b/gitian/descriptors/mac/gitian-pluggable-transports.yml index 920b231..df73197 100644 --- a/gitian/descriptors/mac/gitian-pluggable-transports.yml +++ b/gitian/descriptors/mac/gitian-pluggable-transports.yml @@ -25,6 +25,8 @@ remotes: "dir": "flashproxy" - "url": "https://github.com/kpdyer/fteproxy.git" "dir": "fteproxy" +- "url": "https://github.com/habnabit/txsocksx.git" + "dir": "txsocksx" files: - "openssl.tar.gz" - "gmp.tar.bz2" @@ -34,6 +36,7 @@ files: - "zope.interface.zip" - "twisted.tar.bz2" - "m2crypto.tar.gz" +- "parsley.tar.gz" - "apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb" - "multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz" - "dzip.sh" @@ -126,6 +129,26 @@ script: | cp -a build/twisted $PTDIR/ cd .. # + tar xzf parsley.tar.gz + cd Parsley-* + find -type f | xargs touch --date="$REFERENCE_DATETIME" + python setup.py build --build-lib build + cp -a build/parsley.py $PTDIR/ + cp -a build/ometa $PTDIR/ + cp -a build/terml $PTDIR/ + cd .. + # + cd txsocksx + find -type f | xargs touch --date="$REFERENCE_DATETIME" + # Let's pretend we have the setup dependency already as we don't want to get + # it downloaded during building. Just pretending and thus avoiding another + # dependency should be fine here as txsocksx catches the exception due to + # missing __version__ and __sha__ . + mkdir vcversioner-1.14.1.1-py2.7.egg + python setup.py build --build-lib build + cp -a build/txsocksx $PTDIR/ + cd .. + # cd obfsproxy find -type f | xargs touch --date="$REFERENCE_DATETIME" python setup.py build --build-lib build diff --git a/gitian/descriptors/windows/gitian-pluggable-transports.yml b/gitian/descriptors/windows/gitian-pluggable-transports.yml index 3624d04..cf7595e 100644 --- a/gitian/descriptors/windows/gitian-pluggable-transports.yml +++ b/gitian/descriptors/windows/gitian-pluggable-transports.yml @@ -26,6 +26,8 @@ remotes: "dir": "flashproxy" - "url": "https://github.com/kpdyer/fteproxy.git" "dir": "fteproxy" +- "url": "https://github.com/habnabit/txsocksx.git" + "dir": "txsocksx" files: - "openssl.tar.gz" - "gmp.tar.bz2" @@ -36,6 +38,7 @@ files: - "zope.interface.zip" - "twisted.tar.bz2" - "m2crypto.tar.gz" +- "parsley.tar.gz" - "ubuntu-wine.gpg" - "wine-wrappers" - "python.msi" @@ -193,6 +196,22 @@ script: | LD_PRELOAD= $INSTPYTHON setup.py install --single-version-externally-managed --record /dev/null cd .. # + tar xzf parsley.tar.gz + cd Parsley-* + find -type f | xargs touch --date="$REFERENCE_DATETIME" + LD_PRELOAD= $INSTPYTHON setup.py install + cd .. + # + cd txsocksx + find -type f | xargs touch --date="$REFERENCE_DATETIME" + # Let's pretend we have the setup dependency already as we don't want to get + # it downloaded during building. Just pretending and thus avoiding another + # dependency should be fine here as txsocksx catches the exception due to + # missing __version__ and __sha__ . + mkdir vcversioner-1.14.1.1-py2.7.egg + LD_PRELOAD= $INSTPYTHON setup.py install + cd .. + # # py2exe byte-compiles to .pyc files, which embed the mtime of the parent .py file. find $INSTDIR/python -type f | xargs touch --date="$REFERENCE_DATETIME" # diff --git a/gitian/fetch-inputs.sh b/gitian/fetch-inputs.sh index 03827b6..c89d340 100755 --- a/gitian/fetch-inputs.sh +++ b/gitian/fetch-inputs.sh @@ -178,7 +178,7 @@ do get "${!PACKAGE}" "${MIRROR_URL_ASN}${!PACKAGE}" done
-for i in ZOPEINTERFACE TWISTED PY2EXE SETUPTOOLS +for i in ZOPEINTERFACE TWISTED PY2EXE SETUPTOOLS PARSLEY do URL="${i}_URL" PACKAGE="${i}_PACKAGE" @@ -229,7 +229,7 @@ fi
# Verify packages with weak or no signatures via direct sha256 check # (OpenSSL is signed with MD5, and OSXSDK is not signed at all) -for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT HTTPSE MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP +for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT HTTPSE MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP PARSLEY do PACKAGE="${i}_PACKAGE" HASH="${i}_HASH" @@ -281,6 +281,7 @@ ln -sf "$PY2EXE_PACKAGE" py2exe.exe ln -sf "$SETUPTOOLS_PACKAGE" setuptools.tar.gz ln -sf "$GMP_PACKAGE" gmp.tar.bz2 ln -sf "$LXML_PACKAGE" lxml.tar.gz +ln -sf "$PARSLEY_PACKAGE" parsley.tar.gz
# Fetch latest gitian-builder itself # XXX - this is broken if a non-standard inputs dir is selected using the command line flag. @@ -308,6 +309,7 @@ obfsproxy https://git.torproject.org/pluggable-transports/obfsproxy.git $OBFSPRO flashproxy https://git.torproject.org/flashproxy.git $FLASHPROXY_TAG fteproxy https://github.com/kpdyer/fteproxy.git $FTEPROXY_TAG libdmg-hfsplus https://github.com/vasi/libdmg-hfsplus.git $LIBDMG_TAG +txsocksx https://github.com/habnabit/txsocksx.git $TXSOCKSX_TAG EOF
exit 0 diff --git a/gitian/mkbundle-linux.sh b/gitian/mkbundle-linux.sh index fc88092..d6186d2 100755 --- a/gitian/mkbundle-linux.sh +++ b/gitian/mkbundle-linux.sh @@ -204,7 +204,7 @@ then echo "****** Starting Pluggable Transports Component of Linux Bundle (4/5 for Linux) ******" echo
- ./bin/gbuild -j $NUM_PROCS -m $VM_MEMORY --commit pyptlib=$PYPTLIB_TAG,obfsproxy=$OBFSPROXY_TAG,flashproxy=$FLASHPROXY_TAG,fteproxy=$FTEPROXY_TAG $DESCRIPTOR_DIR/linux/gitian-pluggable-transports.yml + ./bin/gbuild -j $NUM_PROCS -m $VM_MEMORY --commit pyptlib=$PYPTLIB_TAG,obfsproxy=$OBFSPROXY_TAG,flashproxy=$FLASHPROXY_TAG,fteproxy=$FTEPROXY_TAG,txsocksx=$TXSOCKSX_TAG $DESCRIPTOR_DIR/linux/gitian-pluggable-transports.yml if [ $? -ne 0 ]; then #mv var/build.log ./pluggable-transports-fail-linux.log.`date +%Y%m%d%H%M%S` diff --git a/gitian/mkbundle-mac.sh b/gitian/mkbundle-mac.sh index 8d3c73e..a7752a9 100755 --- a/gitian/mkbundle-mac.sh +++ b/gitian/mkbundle-mac.sh @@ -148,7 +148,7 @@ then echo "****** Starting Pluggable Transports Component of Mac Bundle (3/4 for Mac) ******" echo
- ./bin/gbuild -j $NUM_PROCS -m $VM_MEMORY --commit pyptlib=$PYPTLIB_TAG,obfsproxy=$OBFSPROXY_TAG,flashproxy=$FLASHPROXY_TAG,fteproxy=$FTEPROXY_TAG $DESCRIPTOR_DIR/mac/gitian-pluggable-transports.yml + ./bin/gbuild -j $NUM_PROCS -m $VM_MEMORY --commit pyptlib=$PYPTLIB_TAG,obfsproxy=$OBFSPROXY_TAG,flashproxy=$FLASHPROXY_TAG,fteproxy=$FTEPROXY_TAG,txsocksx=$TXSOCKSX_TAG $DESCRIPTOR_DIR/mac/gitian-pluggable-transports.yml if [ $? -ne 0 ]; then #mv var/build.log ./firefox-fail-mac.log.`date +%Y%m%d%H%M%S` diff --git a/gitian/mkbundle-windows.sh b/gitian/mkbundle-windows.sh index 4a176bf..f93fb57 100755 --- a/gitian/mkbundle-windows.sh +++ b/gitian/mkbundle-windows.sh @@ -143,7 +143,7 @@ then echo "****** Starting Pluggable Transports Component of Windows Bundle (3/4 for Windows) ******" echo
- ./bin/gbuild -j $NUM_PROCS -m $VM_MEMORY --commit pyptlib=$PYPTLIB_TAG,obfsproxy=$OBFSPROXY_TAG,flashproxy=$FLASHPROXY_TAG,fteproxy=$FTEPROXY_TAG $DESCRIPTOR_DIR/windows/gitian-pluggable-transports.yml + ./bin/gbuild -j $NUM_PROCS -m $VM_MEMORY --commit pyptlib=$PYPTLIB_TAG,obfsproxy=$OBFSPROXY_TAG,flashproxy=$FLASHPROXY_TAG,fteproxy=$FTEPROXY_TAG,txsocksx=$TXSOCKSX_TAG $DESCRIPTOR_DIR/windows/gitian-pluggable-transports.yml if [ $? -ne 0 ]; then #mv var/build.log ./pluggable-transports-fail-win32.log.`date +%Y%m%d%H%M%S` diff --git a/gitian/verify-tags.sh b/gitian/verify-tags.sh index 8829b9d..e5e9f3f 100755 --- a/gitian/verify-tags.sh +++ b/gitian/verify-tags.sh @@ -107,6 +107,7 @@ while read dir commit; do done << EOF libdmg-hfsplus $LIBDMG_TAG fteproxy $FTEPROXY_TAG +txsocksx $TXSOCKSX_TAG EOF
# Verify signatures on signed packages @@ -130,7 +131,7 @@ done
# Verify packages with weak or no signatures via direct sha256 check # (OpenSSL is signed with MD5, and OSXSDK is not signed at all) -for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT HTTPSE MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP +for i in OSXSDK TOOLCHAIN4 TOOLCHAIN4_OLD NOSCRIPT HTTPSE MINGW MSVCR100 PYCRYPTO ARGPARSE PYYAML ZOPEINTERFACE TWISTED M2CRYPTO SETUPTOOLS OPENSSL GMP PARSLEY do PACKAGE="${i}_PACKAGE" HASH="${i}_HASH" diff --git a/gitian/versions.beta b/gitian/versions.beta index c3faa7b..d10c87a 100755 --- a/gitian/versions.beta +++ b/gitian/versions.beta @@ -15,11 +15,12 @@ NSIS_TAG=v0.1 ZLIB_TAG=v1.2.8 LIBEVENT_TAG=release-2.0.21-stable MINGW_REV=6184 -PYPTLIB_TAG=pyptlib-0.0.5 -OBFSPROXY_TAG=obfsproxy-0.2.4 +PYPTLIB_TAG=pyptlib-0.0.6 +OBFSPROXY_TAG=obfsproxy-0.2.9 FLASHPROXY_TAG=1.6 FTEPROXY_TAG=55d81d2f0a4fab759c1ed8aca78dd3a5db6e75c6 # unsigned 0.2.13 LIBDMG_TAG=dfd5e5cc3dc1191e37d3c3a6118975afdd1d7014 +TXSOCKSX_TAG=216eb0894a1755872f4789f9458aa6cf543b8433
GITIAN_TAG=tor-browser-builder-3.x-5
@@ -33,11 +34,12 @@ PYCRYPTO_VER=2.6.1 ARGPARSE_VER=1.2.1 PYYAML_VER=3.11 ZOPEINTERFACE_VER=4.0.5 -TWISTED_VER=13.1.0 +TWISTED_VER=13.2.0 M2CRYPTO_VER=0.21.1 PY2EXE_VER=0.6.9 SETUPTOOLS_VER=1.4 LXML_VER=3.3.5 +PARSLEY_VER=1.2 HTTPSE_VER=3.5.1
## File names for the source packages @@ -63,6 +65,7 @@ M2CRYPTO_PACKAGE=M2Crypto-${M2CRYPTO_VER}.tar.gz PY2EXE_PACKAGE=py2exe-${PY2EXE_VER}.win32-py2.7.exe SETUPTOOLS_PACKAGE=setuptools-${SETUPTOOLS_VER}.tar.gz LXML_PACKAGE=lxml-${LXML_VER}.tar.gz +PARSLEY_PACKAGE=Parsley-${PARSLEY_VER}.tar.gz
# Hashes for packages with weak sigs or no sigs OPENSSL_HASH=53cb818c3b90e507a8348f4f5eaedb05d8bfe5358aabb508b7263cc670c3e028 @@ -78,10 +81,11 @@ PYCRYPTO_HASH=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c ARGPARSE_HASH=ddaf4b0a618335a32b6664d4ae038a1de8fbada3b25033f9021510ed2b3941a4 PYYAML_HASH=c36c938a872e5ff494938b33b14aaa156cb439ec67548fcab3535bb78b0846e8 ZOPEINTERFACE_HASH=1a7c84716bbd9981915b64a81d8a3f076a5934a8c8df4224655469b3564940cc -TWISTED_HASH=110e957dd8fc4c6eaba8abe4f0477e60b2873e3cf1c260325863fd2ef69341c6 +TWISTED_HASH=095175638c019ac7c0604f4c291724a16ff1acd062e181b01293bf4dcbc62cf3 M2CRYPTO_HASH=25b94498505c2d800ee465db0cc1aff097b1615adc3ac042a1c85ceca264fc0a PY2EXE_HASH=610a8800de3d973ed5ed4ac505ab42ad058add18a68609ac09e6cf3598ef056c SETUPTOOLS_HASH=75d288687066ed124311d6ca5f40ffa92a0e81adcd7fff318c6e84082713cf39 +PARSLEY_HASH=50d30cee70770fd44db7cea421cb2fb75af247c3a1cd54885c06b30a7c85dd23
## Non-git package URLs OPENSSL_URL=https://www.openssl.org/source/$%7BOPENSSL_PACKAGE%7D @@ -105,3 +109,4 @@ M2CRYPTO_URL=https://pypi.python.org/packages/source/M/M2Crypto/$%7BM2CRYPTO_PACKA PY2EXE_URL=http://softlayer-dal.dl.sourceforge.net/project/py2exe/py2exe/$%7BPY2EXE_VER... SETUPTOOLS_URL=https://pypi.python.org/packages/source/s/setuptools/$%7BSETUPTOOLS_PACKAGE%... LXML_URL=https://pypi.python.org/packages/source/l/lxml/$%7BLXML_PACKAGE%7D +PARSLEY_URL=https://pypi.python.org/packages/source/P/Parsley/$%7BPARSLEY_PACKAGE%7D diff --git a/gitian/versions.nightly b/gitian/versions.nightly index 355b68a..635fa70 100755 --- a/gitian/versions.nightly +++ b/gitian/versions.nightly @@ -16,11 +16,11 @@ ZLIB_TAG=v1.2.8 LIBEVENT_TAG=release-2.0.21-stable MINGW_REV=6184 PYPTLIB_TAG=master -# Hardcoding this commit until #11535 is fixed -OBFSPROXY_TAG=b58fd9e1ef264796b6bddbde5db117472fb674a0 +OBFSPROXY_TAG=master FLASHPROXY_TAG=master -FTEPROXY_TAG=0.2.13 +FTEPROXY_TAG=master LIBDMG_TAG=dfd5e5cc3dc1191e37d3c3a6118975afdd1d7014 +TXSOCKSX_TAG=216eb0894a1755872f4789f9458aa6cf543b8433
GITIAN_TAG=tor-browser-builder-3.x-5
@@ -34,12 +34,13 @@ PYCRYPTO_VER=2.6.1 ARGPARSE_VER=1.2.1 PYYAML_VER=3.11 ZOPEINTERFACE_VER=4.0.5 -TWISTED_VER=13.1.0 +TWISTED_VER=13.2.0 M2CRYPTO_VER=0.21.1 PY2EXE_VER=0.6.9 SETUPTOOLS_VER=1.4 LXML_VER=3.3.5 HTTPSE_VER=3.5.1 +PARSLEY_VER=1.2
## File names for the source packages OPENSSL_PACKAGE=openssl-${OPENSSL_VER}.tar.gz @@ -64,6 +65,7 @@ M2CRYPTO_PACKAGE=M2Crypto-${M2CRYPTO_VER}.tar.gz PY2EXE_PACKAGE=py2exe-${PY2EXE_VER}.win32-py2.7.exe SETUPTOOLS_PACKAGE=setuptools-${SETUPTOOLS_VER}.tar.gz LXML_PACKAGE=lxml-${LXML_VER}.tar.gz +PARSLEY_PACKAGE=Parsley-${PARSLEY_VER}.tar.gz
# Hashes for packages with weak sigs or no sigs OPENSSL_HASH=53cb818c3b90e507a8348f4f5eaedb05d8bfe5358aabb508b7263cc670c3e028 @@ -79,10 +81,11 @@ PYCRYPTO_HASH=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c ARGPARSE_HASH=ddaf4b0a618335a32b6664d4ae038a1de8fbada3b25033f9021510ed2b3941a4 PYYAML_HASH=c36c938a872e5ff494938b33b14aaa156cb439ec67548fcab3535bb78b0846e8 ZOPEINTERFACE_HASH=1a7c84716bbd9981915b64a81d8a3f076a5934a8c8df4224655469b3564940cc -TWISTED_HASH=110e957dd8fc4c6eaba8abe4f0477e60b2873e3cf1c260325863fd2ef69341c6 +TWISTED_HASH=095175638c019ac7c0604f4c291724a16ff1acd062e181b01293bf4dcbc62cf3 M2CRYPTO_HASH=25b94498505c2d800ee465db0cc1aff097b1615adc3ac042a1c85ceca264fc0a PY2EXE_HASH=610a8800de3d973ed5ed4ac505ab42ad058add18a68609ac09e6cf3598ef056c SETUPTOOLS_HASH=75d288687066ed124311d6ca5f40ffa92a0e81adcd7fff318c6e84082713cf39 +PARSLEY_HASH=50d30cee70770fd44db7cea421cb2fb75af247c3a1cd54885c06b30a7c85dd23
## Non-git package URLs OPENSSL_URL=https://www.openssl.org/source/$%7BOPENSSL_PACKAGE%7D @@ -106,3 +109,4 @@ M2CRYPTO_URL=https://pypi.python.org/packages/source/M/M2Crypto/$%7BM2CRYPTO_PACKA PY2EXE_URL=http://softlayer-dal.dl.sourceforge.net/project/py2exe/py2exe/$%7BPY2EXE_VER... SETUPTOOLS_URL=https://pypi.python.org/packages/source/s/setuptools/$%7BSETUPTOOLS_PACKAGE%... LXML_URL=https://pypi.python.org/packages/source/l/lxml/$%7BLXML_PACKAGE%7D +PARSLEY_URL=https://pypi.python.org/packages/source/P/Parsley/$%7BPARSLEY_PACKAGE%7D