1 | **************************** |
---|
2 | Building Tahoe-LAFS on Linux |
---|
3 | **************************** |
---|
4 | |
---|
5 | Tahoe-LAFS has made packages available for installing on many linux and BSD distributions. |
---|
6 | Debian and Ubuntu users can use ``apt-get install tahoe-lafs``. |
---|
7 | If you are working on a Linux distribution which does not have Tahoe-LAFS or are looking to hack on the source code, you can build Tahoe-LAFS yourself: |
---|
8 | |
---|
9 | Prerequisites |
---|
10 | ============= |
---|
11 | |
---|
12 | Make sure the following are installed: |
---|
13 | |
---|
14 | * **Python 3's latest version**: Check for the version by running ``python --version``. |
---|
15 | * **pip**: Most python installations already include ``pip``. However, if your installation does not, see `pip installation <https://pip.pypa.io/en/stable/installing/>`_. |
---|
16 | * **virtualenv**: Use ``pip`` to install virtualenv:: |
---|
17 | |
---|
18 | pip install --user virtualenv |
---|
19 | |
---|
20 | * **C compiler and libraries**: |
---|
21 | |
---|
22 | * ``python-dev``: Python development headers. |
---|
23 | * ``libffi-dev``: Foreign Functions Interface library. |
---|
24 | * ``libssl-dev``: SSL library, Tahoe-LAFS needs OpenSSL version 1.1.1c or greater. |
---|
25 | |
---|
26 | .. note:: |
---|
27 | If you are working on Debian or Ubuntu, you can install the necessary libraries using ``apt-get``:: |
---|
28 | |
---|
29 | apt-get install python-dev libffi-dev libssl-dev |
---|
30 | |
---|
31 | On an RPM-based system such as Fedora, you can install the necessary libraries using ``yum`` or ``rpm``. However, the packages may be named differently. |
---|
32 | |
---|
33 | Install the Latest Tahoe-LAFS Release |
---|
34 | ===================================== |
---|
35 | |
---|
36 | If you are looking to hack on the source code or run pre-release code, we recommend you install Tahoe-LAFS directly from source by creating a ``virtualenv`` instance: |
---|
37 | |
---|
38 | 1. Clone the Tahoe-LAFS repository:: |
---|
39 | |
---|
40 | git clone https://github.com/tahoe-lafs/tahoe-lafs.git |
---|
41 | |
---|
42 | 2. Move into the tahoe-lafs directory:: |
---|
43 | |
---|
44 | cd tahoe-lafs |
---|
45 | |
---|
46 | 3. Create a fresh virtualenv for your Tahoe-LAFS install:: |
---|
47 | |
---|
48 | virtualenv venv |
---|
49 | |
---|
50 | .. note:: |
---|
51 | venv is the name of the virtual environment in this example. Use any name for your environment. |
---|
52 | |
---|
53 | 4. Upgrade ``pip`` and ``setuptools`` on the newly created virtual environment:: |
---|
54 | |
---|
55 | venv/bin/pip install -U pip setuptools |
---|
56 | |
---|
57 | 5. If you'd like to modify the Tahoe source code, you need to install Tahoe-LAFS with the ``--editable`` flag with the ``test`` extra:: |
---|
58 | |
---|
59 | venv/bin/pip install --editable .[test] |
---|
60 | |
---|
61 | .. note:: |
---|
62 | Tahoe-LAFS provides extra functionality when requested explicitly at installation using the "extras" feature of setuptools. To learn more about the extras which Tahoe supports, see Tahoe extras. |
---|
63 | |
---|
64 | 6. Verify installation by checking for the version:: |
---|
65 | |
---|
66 | venv/bin/tahoe --version |
---|
67 | |
---|
68 | If you do not want to use the full path, i.e., ``venv/bin/tahoe`` everytime you want to run tahoe, you can activate the ``virtualenv``:: |
---|
69 | |
---|
70 | . venv/bin/activate |
---|
71 | |
---|
72 | This will generate a subshell with a ``$PATH`` that includes the ``venv/bin/`` directory. |
---|
73 | |
---|
74 | |
---|
75 | |
---|