summaryrefslogtreecommitdiff
path: root/doc/installation.rst
blob: 7854f3daac1cb22ff5d326cb11e948357eb4d589 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
.. _installation:

Installation
============

Requirements
------------

Python 2.6 or later.

Installation
------------

Many free operating system distributions have dnspython packaged for
you, so you should check there first.

The next easiest option is to use ``pip``::

        pip install dnspython

If ``pip`` is not available, you can download the latest zip file from
`PyPI <https://pypi.python.org/pypi/dnspython/>`_, unzip it.

On a UNIX-like system, you then run::

        sudo python setup.py install

while on a Windows system you would run::

        python setup.py install
        
Finally, you have the option of cloning the dnspython source from github
and building it::

        git clone https://github.com/rthalley/dnspython.git

And then run ``setup.py`` as above.

Please be aware that the master branch of dnspython on github is under
active development and may not always be stable.


Optional Modules
----------------

The following modules are optional, but recommended for full functionality.

If ``pycryptodome`` is installed, then dnspython will be able to do low-level
DNSSEC RSA and DSA signature validation.

If ``ecdsa`` is installed, then Elliptic Curve signature algorithms will
be available for low-level DNSSEC signature validation.

If ``idna`` is installed, then IDNA 2008 will be available.