Installation

The Easy Way

Requirements for this method are few:

  • Windows XP, 2003, Vista, 7, 8, 8.1
  • An installation of I2P

Tahoe-LAFS for I2P is offered as an installer that includes Python 2.7.

Please use the torrent if you can. If not, go for the direct Download (9.6MB) (sig). If you're already running Tahoe, you can also get the installer for Windows from URI:DIR2-RO:facjvcq6zovf3cs3itv6kdoryq:jzsmkvfwaxybc7gjkp5vjspccspxeqmoebvhwxrzxezlpty4zxnq.

The installer will add tahoe to the PATH, so you'll be able to use the command-line client without changing to the installation directory.

After the installation, test the installation by opening a Command Prompt (Start -> Run; cmd [enter]) then typing tahoe --version. You should see output like the following:

C:\>tahoe --version
allmydata-tahoe: 1.10.0
foolscap: 0.6.4
pycryptopp: 0.6.0.1206569328141510525648634803928199668821045408958
zfec: 1.4.22
Twisted: 11.0.0
Nevow: 0.10.0
zope.interface: unknown
python: 2.7.7
platform: Windows-XP-5.1.2600-SP3
pyOpenSSL: 0.13.1
simplejson: 3.5.2
pycrypto: 2.4.1
pyasn1: 0.1.7
mock: 1.0.1

If so, congrats! You should now have a copy of Tahoe working in Windows. :)

Read on to see how to configure tahoe for safe operation on I2P. (The configuration instructions will also be available from the Start Menu).

Known quirks on Windows

  • twistd does not detach and go into the background in Windows.
  • tahoe start has the same behaviour as tahoe run since twistd only detaches in *NIX. (Note that I2P doesn't detach in Windows either).

The Hard Way

If you don't want to use the pre-patched bundle above--or it didn't work for you--tahoe can be installed and patched manually. Requirements include:

  • Python v2.6 or v2.7. (Python 3 is not supported)
  • An app to apply unified diffs with such as MSYS, cygwin, or a win32 port of patch. This guide will cover MSYS since it's small and its version of patch isn't utterly broken (as I've read some of the win32 (non-cygwin) ports are).
  • tahoe-lafs 1.10.0
  • patches for tahoe and foolscap

Install Python

The path to Python should not contain spaces (recommended locations are c:\python26 for Python 2.6 and c:\python27 for Python 2.7). Tahoe's upstream recommends Python 2.6 but 2.7 works as well.

Set-up Tahoe-LAFS

Unpack the zip file (suggested location is c:\tahoe but any path without spaces would be acceptable). Open a command prompt and cd into the top-level directory. From there run either

c:\python26\python setup.py build

or

c:\python27\python setup.py build

depending on your python version. Tahoe's dependencies will be downloaded and installed. If you haven't done so yet, download the patches mentioned above.

Install MSYS (or cygwin)

Choose the defaults when installing MSYS. After the installation completes there will be an icon for MSYS on your desktop. Double-click it to open the shell.

Once in the MSYS shell, type the following commands

cd /c/tahoe/support/lib/site-packages/foolscap-0.6.4-py2.7.egg/foolscap
patch -p2 < /c/path/to/foolscap-i2p-0.6.4-r0.patch
cd /c/tahoe
patch -p1 < /c/path/to/tahoe-lafs-i2p-1.10.0-r0.patch

The patches should apply cleanly. You can close MSYS (and you can uninstall it if you wish).

Go back to the command prompt, into the top-level tahoe directory (c:\tahoe if following this guide). Enter bin\tahoe --version.

C:\allmydata-tahoe-1.10.0>bin\tahoe --version
allmydata-tahoe: 1.10.0
foolscap: 0.6.4
pycryptopp: 0.6.0.1206569328141510525648634803928199668821045408958
zfec: 1.4.22
Twisted: 11.0.0
Nevow: 0.10.0
zope.interface: unknown
python: 2.7.7
platform: Windows-XP-5.1.2600-SP3
pyOpenSSL: 0.13.1
simplejson: 3.5.2
pycrypto: 2.4.1
pyasn1: 0.1.7
mock: 1.0.1

If so, congrats! You should now have a copy of Tahoe working in Windows. :) You may wish to add the tahoe folder to your system path so that you that you won't need to use the full path (or change to the tahoe folder to use tahoe).

Read on to see how to configure tahoe for safe operation on I2P.