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