1 | .. -*- coding: utf-8-with-signature -*- |
---|
2 | |
---|
3 | ========================= |
---|
4 | Debian and Ubuntu Support |
---|
5 | ========================= |
---|
6 | |
---|
7 | 1. `Overview`_ |
---|
8 | 2. `Dependency Packages`_ |
---|
9 | |
---|
10 | |
---|
11 | Overview |
---|
12 | ======== |
---|
13 | |
---|
14 | Tahoe-LAFS is provided as a ``.deb`` package in current Debian (>= `stretch <https://packages.debian.org/source/stretch/tahoe-lafs>`_) and Ubuntu (>= lucid) releases. Before official packages were added, the Tahoe |
---|
15 | source tree provided support for building unofficial packages for a variety |
---|
16 | of popular Debian/Ubuntu versions. The project also ran buildbots to create |
---|
17 | ``.debs`` of current trunk for ease of testing. |
---|
18 | |
---|
19 | As of version 1.9, the source tree no longer provides these tools. To |
---|
20 | construct a ``.deb`` from current trunk, your best bet is to apply the current |
---|
21 | Debian diff from the latest upstream package and invoke the ``debian/rules`` |
---|
22 | as usual. Debian's standard ``apt-get`` tool can be used to fetch the current |
---|
23 | source package (including the Debian-specific diff): run |
---|
24 | "``apt-get source tahoe-lafs``". That will fetch three files: the ``.dsc`` |
---|
25 | control file, the main Tahoe tarball, and the Debian-specific |
---|
26 | ``.debian.tar.gz`` file. Just unpack the ``.debian.tar.gz`` file inside |
---|
27 | your Tahoe source tree, modify the version number in ``debian/changelog``, |
---|
28 | then run "``fakeroot ./debian/rules binary``", and a new ``.deb`` will be |
---|
29 | placed in the parent directory. |
---|
30 | |
---|
31 | |
---|
32 | Dependency Packages |
---|
33 | =================== |
---|
34 | |
---|
35 | Tahoe depends upon a number of additional libraries. When building Tahoe from |
---|
36 | source, any dependencies that are not already present in the environment will |
---|
37 | be downloaded (via ``pip`` and ``easy_install``) and installed in the |
---|
38 | virtualenv. |
---|
39 | |
---|
40 | The ``.deb`` packages, of course, rely solely upon other ``.deb`` packages. |
---|
41 | For reference, here is a list of the debian package names that provide Tahoe's |
---|
42 | dependencies as of the 1.14.0 release: |
---|
43 | |
---|
44 | * python |
---|
45 | * python-zfec |
---|
46 | * python-foolscap |
---|
47 | * python-openssl (needed by foolscap) |
---|
48 | * python-twisted |
---|
49 | * python-nevow |
---|
50 | * python-mock |
---|
51 | * python-cryptography |
---|
52 | * python-simplejson |
---|
53 | * python-setuptools |
---|
54 | * python-support (for Debian-specific install-time tools) |
---|
55 | |
---|
56 | When building your own Debian packages, a convenient way to get all these |
---|
57 | dependencies installed is to first install the official "tahoe-lafs" package, |
---|
58 | then uninstall it, leaving the dependencies behind. You may also find it |
---|
59 | useful to run "``apt-get build-dep tahoe-lafs``" to make sure all the usual |
---|
60 | build-essential tools are installed. |
---|