About Tahoe

Welcome to the Tahoe project, a secure, decentralized, fault-tolerant filesystem. All of the source code is available under a Free Software, Open Source licence.

This filesystem is encrypted and spread over multiple peers in such a way that it remains available even when some of the peers are unavailable, malfunctioning, or malicious.

See the web site for information, news, and discussion: http://allmydata.org

How To Install Tahoe

This is the default procedure to install from source. It has been verified to work on Windows (but see also "install-win32.html"), Cygwin (see "install-cygwin.html"), Mac, Linux, and Solaris. It's likely to work on other platforms. For more details and for alternative installation procedures, please see install-details.html.

Satisfy the Dependencies

Prior to installing Tahoe the following must be installed:

  1. gcc including g++ -- the Cygwin version of gcc works for Cygwin and for Windows
  2. GNU make
  3. Python including development headers i.e. "Python.h"
  4. zope.interface -- not the entire Zope package, merely the much smaller zope.interface component
  5. Twisted -- from the Twisted "sumo" source tarball
  6. OpenSSL, including development headers
  7. PyOpenSSL
  8. Crypto++, including development headers
  9. pywin32 -- required only for Windows (and not for Cygwin)

Get the Source Code

Tarballs of the source code are available at:

http://allmydata.org/source/tahoe/

Install

Unpack the tarball and cd into the top-level directory.

Run make check-deps which verifies that all of the dependencies listed above are installed.

Run make to build Tahoe and some included libraries and install the tahoe executable into a subdirectory of the current directory named bin.

Run make test to verify that it built correctly and passes all tests.

Run bin/tahoe --version to verify that the executable tool runs and prints out the right version number (the "allmydata" version number is the version number of the Tahoe package).

Run

Now you have the Tahoe source code installed and are ready to use it to form a decentralized filesystem. See running.html for instructions.