source: trunk/docs/build/build-on-linux.rst

Last change on this file was f67c75c, checked in by Florian Sesser <florian@…>, at 2024-08-22T17:08:51Z

Merge moving build docs to developer documentation

  • Property mode set to 100644
File size: 2.8 KB
Line 
1****************************
2Building Tahoe-LAFS on Linux
3****************************
4
5Tahoe-LAFS has made packages available for installing on many linux and BSD distributions.
6Debian and Ubuntu users can use ``apt-get install tahoe-lafs``.
7If 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
9Prerequisites
10=============
11
12Make 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
33Install the Latest Tahoe-LAFS Release
34=====================================
35
36If 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
381. Clone the Tahoe-LAFS repository::
39   
40    git clone https://github.com/tahoe-lafs/tahoe-lafs.git
41
422. Move into the tahoe-lafs directory::
43     
44    cd tahoe-lafs
45
463. 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
534. Upgrade ``pip`` and ``setuptools`` on the newly created virtual environment::
54   
55    venv/bin/pip install -U pip setuptools
56
575. 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
646. Verify installation by checking for the version::
65   
66    venv/bin/tahoe --version
67
68If 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
Note: See TracBrowser for help on using the repository browser.