commit 9c2af792e2fc2c6a0b42bbeb86b7dcb28f2b85b0 Author: David Fifield david@bamsoftware.com Date: Sun Jan 6 18:48:19 2013 -0800
Update and tweak bundle-gnulinux.txt. --- doc/bundle-gnulinux.txt | 63 +++++++++++++++++++++++++--------------------- 1 files changed, 34 insertions(+), 29 deletions(-)
diff --git a/doc/bundle-gnulinux.txt b/doc/bundle-gnulinux.txt index 848aecb..0c00e28 100644 --- a/doc/bundle-gnulinux.txt +++ b/doc/bundle-gnulinux.txt @@ -62,17 +62,18 @@ Choose "Install" when it boots. Here are settings:
Packages to install:
- sudo apt-get update - sudo apt-get upgrade - sudo apt-get install git make python-m2crypto zip - sudo apt-get install python-setuptools python-crypto python-twisted python-argparse + $ sudo apt-get update + $ sudo apt-get upgrade + $ sudo apt-get install --no-install-recommends git make python-m2crypto zip + $ sudo apt-get install --no-install-recommends python-setuptools python-crypto python-twisted python-argparse
== Dependencies
=== pyptlib
$ git clone https://git.torproject.org/user/asn/pyptlib.git - $ cd pyptlib && python setup.py install + $ cd pyptlib + $ sudo python setup.py install --single-version-externally-managed --root=/
== Browser bundle
@@ -84,42 +85,46 @@ Clone and build the flashproxy source.
Clone pyobfsproxy.
- $ git clone https://git.torproject.org/user/asn/pyobfsproxy.git + $ git clone https://git.torproject.org/user/asn/pyobfsproxy.git -b obfs3_take2
Within the VM, download the 32-bit or 64-bit obfsproxy bundle from https://www.torproject.org/projects/obfsproxy. The instructions below are for the 32-bit (i686) version.
-https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l... -https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l... +https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l... +https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l...
-https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l... -https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l... +https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l... +https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-l...
Extract the bundle.
- $ gpg --verify tor-obfsproxy-browser-gnu-linux-i686-2.4.6-alpha-2-dev-en-US.tar.gz.asc - $ tar xzvf tor-obfsproxy-browser-gnu-linux-i686-2.4.6-alpha-2-dev-en-US.tar.gz - $ cd tor-browser_en-US + $ gpg --verify tor-obfsproxy-browser-gnu-linux-i686-2.4.7-alpha-1-dev-en-US.tar.gz.asc + $ rm -r tor-browser_en-US + $ tar xzvf tor-obfsproxy-browser-gnu-linux-i686-2.4.7-alpha-1-dev-en-US.tar.gz
Copy files into the bundle.
+ $ cd tor-browser_en-US + $ rm -f App/obfsproxy $ cp ~/flashproxy/dist/flashproxy-client-VERSION/{flashproxy-client,flashproxy-reg-email,flashproxy-reg-http} App - $ cp -r /usr/lib/pymodules/python2.6/M2Crypto App + $ cp -rL /usr/lib/pymodules/python2.6/M2Crypto App $ mkdir -p Docs/FlashProxy $ cp ~/flashproxy/dist/flashproxy-client-VERSION/{doc/*,README,LICENSE,ChangeLog} Docs/FlashProxy - - $ rm App/obfsproxy - $ cp -r ~/pyobfsproxy/{obfsproxy,obfsproxy.py} App - $ cp -r /usr/lib/python2.6/dist-packages/{Crypto,twisted} App - $ cp /usr/lib/pymodules/python2.6/argparse.pyc App - -Make the second half of Data/Tor/torrc look like this (i.e., keep -the generic configuration, but change the obfsproxy-specific stuff). + $ cp -rL ~/pyobfsproxy/{obfsproxy,obfsproxy.py} App + $ cp /usr/lib/python2.6/dist-packages/{Crypto,twisted,zope} App + $ cp -rL /usr/lib/pymodules/python2.6/argparse.py App + $ cp -rL /usr/local/lib/python2.6/dist-packages/pyptlib App + $ mkdir -p Docs/PyObfsproxy + $ cp ~/pyobfsproxy/{LICENSE,README} Docs/PyObfsproxy + $ find App -name '*.pyc' | xargs rm -f + +Make the second half of Data/Tor/torrc look like this (i.e., keep the +generic configuration, but change the obfsproxy-specific stuff). Basically you are concatenating the normal flashproxy-client torrc, but -changing "./flashproxy-client" to "./App/flashproxy-client". You are also -changing the obfsproxy ClientTransportPlugin line to match what pyobfsproxy -expects. +changing "./flashproxy-client" to "./App/flashproxy-client". You are +also changing "--managed" to "managed" in the obfsproxy +ClientTransportPlugin line.
UseBridges 1 # The address and port are ignored by the client transport plugin. @@ -134,20 +139,20 @@ CircuitBuildTimeout 60 # receive connections from the Internet (the port for which you # configured port forwarding). ClientTransportPlugin websocket exec ./App/flashproxy-client --register :0 :9000 -ClientTransportPlugin obfs2 exec ./App/obfsproxy.py managed +ClientTransportPlugin obfs2,obfs3 exec ./App/obfsproxy.py managed
Re-zip the bundle. The "alpha" number should be independent of the obfsproxy bundle's alpha.
$ cd .. - $ tar czvf tor-flashproxy-browser-gnu-linux-i686-2.4.6-alpha-1-dev-en-US.tar.gz tor-browser_en-US + $ tar czvf tor-flashproxy-pyobfsproxy-browser-gnu-linux-i686-2.4.6-alpha-1-dev-en-US.tar.gz tor-browser_en-US
Test running the bundle. Extract into a separate directory, double-click the icon to unzip, and run TorBrowser_en-US.app.
$ mkdir tmp - $ cp tor-flashproxy-browser-gnu-linux-i686-2.4.6-alpha-1-dev-en-US.tar.gz tmp + $ cp tor-flashproxy-pyobfsproxy-browser-gnu-linux-i686-2.4.7-alpha-1-dev-en-US.tar.gz tmp $ cd tmp - $ tar xzvf tor-flashproxy-browser-gnu-linux-i686-2.4.6-alpha-1-dev-en-US.tar.gz + $ tar xzvf tor-flashproxy-pyobfsproxy-browser-gnu-linux-i686-2.4.7-alpha-1-dev-en-US.tar.gz $ cd tor-browser_en-US $ ./start-tor-browser
tor-commits@lists.torproject.org