Skip to content

Commit e6c0c46

Browse files
authored
Merge pull request #325 from bigchaindb/minor-change-dep-bdb-driver
Minor changes in the quickstart guide for installation of bdb-driver
2 parents 977e1c6 + 041c5da commit e6c0c46

File tree

1 file changed

+34
-55
lines changed

1 file changed

+34
-55
lines changed

docs/quickstart.rst

Lines changed: 34 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,10 @@ Quickstart / Installation
44

55
The BigchainDB Python Driver depends on:
66

7-
1. ``libffi/ffi.h``
8-
2. ``libssl-dev``
9-
3. Python 3.5+
10-
4. A recent Python 3 version of ``pip``
11-
5. A recent Python 3 version of ``setuptools``
7+
1. Python 3.5+
8+
2. A recent Python 3 version of ``pip``
9+
3. A recent Python 3 version of ``setuptools``
10+
4. cryptography and cryptoconditions
1211

1312
If you're missing one of those, then see below. Otherwise, you can install the BigchainDB Python Driver (``bigchaindb_driver``) using:
1413

@@ -22,55 +21,8 @@ Next: :doc:`determine the BigchainDB Root URL of the BigchainDB node or cluster
2221
How to Install the Dependencies
2322
-------------------------------
2423

25-
Dependency 1: ffi.h
26-
^^^^^^^^^^^^^^^^^^^
2724

28-
BigchainDB (server and driver) depends on `cryptoconditions`_,
29-
which depends on `PyNaCl`_ (`Networking and Cryptography library`_),
30-
which depends on ``ffi.h``.
31-
Hence, depending on your setup, you may need to install the
32-
development files for ``libffi``.
33-
34-
On Ubuntu 14.04 and 16.04, this works:
35-
36-
.. code-block:: bash
37-
38-
$ sudo apt-get update
39-
40-
$ sudo apt-get install libffi-dev
41-
42-
On Fedora 23 and 24, this works:
43-
44-
.. code-block:: bash
45-
46-
$ sudo dnf update
47-
48-
$ sudo dnf install libffi-devel
49-
50-
For other operating systems, just do some web searches for "ffi.h" with the name of your OS.
51-
52-
Dependency 2: libssl-dev
53-
^^^^^^^^^^^^^^^^^^^^^^^^
54-
BigchainDB (server and driver) also depends on `cryptography`_,
55-
which in turn depends on `libssl`_ AND `libcrypto`_.
56-
Hence, depending on your setup you need to install the `libssl-dev`_ (Ubuntu)
57-
OR `openssl-devel`_ (RHEL) package, which installs the development
58-
libraries and header files for `libssl`_ and `libcrypto`_.
59-
60-
On Ubuntu 14.04 and 16.04:
61-
62-
.. code-block:: bash
63-
64-
$ sudo apt-get install libssl-dev
65-
66-
On Fedora 23 and 24:
67-
68-
.. code-block:: bash
69-
70-
$ sudo dnf install openssl-devel
71-
72-
73-
Dependency 3: Python 3.5+
25+
Dependency 1: Python 3.5+
7426
^^^^^^^^^^^^^^^^^^^^^^^^^
7527

7628
The BigchainDB Python Driver uses Python 3.5+. You can check your version of Python using:
@@ -86,7 +38,7 @@ The BigchainDB Python Driver uses Python 3.5+. You can check your version of Pyt
8638
An easy way to install a specific version of Python, and to switch between versions of Python, is to use `virtualenv <https://virtualenv.pypa.io/en/latest/>`_. Another option is `conda <http://conda.pydata.org/docs/>`_.
8739

8840

89-
Dependency 4: pip
41+
Dependency 2: pip
9042
^^^^^^^^^^^^^^^^^
9143

9244
You also need to get a recent, Python 3 version of ``pip``, the Python package manager.
@@ -109,7 +61,7 @@ then see `the pip documentation <https://pip.pypa.io/en/stable/installing/>`_
10961
or our page about that in the `BigchainDB Server docs <https://docs.bigchaindb.com/projects/server/en/latest/appendices/install-latest-pip.html>`_.
11062

11163

112-
Dependency 5: setuptools
64+
Dependency 3: setuptools
11365
^^^^^^^^^^^^^^^^^^^^^^^^
11466

11567
Once you have a recent Python 3 version of ``pip``, you should be able to upgrade ``setuptools`` using:
@@ -123,6 +75,32 @@ Once you have a recent Python 3 version of ``pip``, you should be able to upgrad
12375
$ pip3 install --upgrade setuptools
12476
12577
78+
Dependency 4: cryptography and cryptoconditions
79+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
80+
81+
BigchainDB(server and driver) also depends on `cryptography`_ and `cryptoconditions`_.
82+
83+
* `cryptography`_ depends on `libssl`_, `libcrypto`_ which also depends on (`Python development library and header files`_).
84+
* `cryptoconditions`_ depends on `PyNaCl`_ (`Networking and Cryptography library`_) which depends on ``ffi.h``.
85+
86+
On Ubuntu 14.04 and 16.04, this works:
87+
88+
.. code-block:: bash
89+
90+
$ sudo apt-get update
91+
92+
$ sudo apt-get install python3-dev libssl-dev libffi-dev
93+
94+
On Fedora 23 and 24, this works:
95+
96+
.. code-block:: bash
97+
98+
$ sudo dnf update
99+
100+
$ sudo dnf install python-devel openssl-devel libffi-devel
101+
102+
For other operating systems, please refer to `the cryptography installation guide <https://cryptography.io/en/latest/installation/#installation>`_.
103+
126104

127105
Installing the Driver
128106
---------------------
@@ -154,6 +132,7 @@ See the :doc:`Advanced Installation Options <advanced-installation>` page.
154132
.. _openssl-devel: https://rpmfind.net/linux/rpm2html/search.php?query=openssl-devel
155133
.. _libssl: https://github.com/openssl/openssl
156134
.. _libcrypto: https://github.com/openssl/openssl
135+
.. _Python development library and header files: https://github.com/python/cpython
157136

158137

159138
Installation Guide for Developers

0 commit comments

Comments
 (0)