From 7287aefaac323af9b02b4110697d941089b01ee9 Mon Sep 17 00:00:00 2001
From: Pavel Korshunov <pavel.korshunov@idiap.ch>
Date: Thu, 1 Jun 2017 18:40:16 +0200
Subject: [PATCH] updated installations instructions

---
 doc/extra-intersphinx.txt |   4 +-
 doc/installation.rst      | 102 ++++++++++++++------------------------
 doc/links.rst             |   2 +
 3 files changed, 43 insertions(+), 65 deletions(-)

diff --git a/doc/extra-intersphinx.txt b/doc/extra-intersphinx.txt
index 8adfb67..ccc45f5 100644
--- a/doc/extra-intersphinx.txt
+++ b/doc/extra-intersphinx.txt
@@ -4,4 +4,6 @@ bob.bio.spear
 gridtk
 bob.db.base
 bob.db.avspoof
-bob.bio.base
\ No newline at end of file
+bob.bio.base
+bob.pad.voice
+bob.db.voicepa
\ No newline at end of file
diff --git a/doc/installation.rst b/doc/installation.rst
index 28d4c15..867d687 100644
--- a/doc/installation.rst
+++ b/doc/installation.rst
@@ -5,47 +5,59 @@
 
 .. _bob.pad.base.installation:
 
-=========================
-Installation Instructions
-=========================
+===========================
+ Installation Instructions
+===========================
 
-As noted before, this package is part of the ``bob.pad`` packages, which in turn are part of the signal-processing and machine learning toolbox Bob_.
-To install `Packages of Bob <https://github.com/idiap/bob/wiki/Packages>`_, please read the `Installation Instructions <https://github.com/idiap/bob/wiki/Installation>`_.
-For Bob_ to be able to work properly, some dependent packages are required to be installed.
-Please make sure that you have read the `Dependencies <https://github.com/idiap/bob/wiki/Dependencies>`_ for your operating system.
+As noted before, this package is part of the ``bob.pad`` packages, which in
+turn are part of the signal-processing and machine learning toolbox Bob_. To
+install Bob_, please read the `Installation Instructions <bobinstall_>`_.
 
-.. note::
-  Currently, running Bob_ under MS Windows in not supported.
-  However, we found that running Bob_ in a virtual Unix environment such as the one provided by VirtualBox_ is a good alternative.
-
-The most simple and most convenient way to use the ``bob.pad`` tools is to use a ``zc.buildout`` package, as explained in more detail `here <https://github.com/idiap/bob/wiki/Installation#using-zcbuildout-for-production>`__.
-There, in the ``eggs`` section of the ``buildout.cfg`` file, simply list the ``bob.pad`` packages that you want, like:
+Then, to install the ``bob.pad`` packages and in turn maybe the database
+packages that you want to use, use conda_ to install them:
 
-.. code-block:: python
+.. code-block:: sh
 
-   eggs = bob.pad.base
-          bob.pad.voice
-          bob.db.avspoof
-          gridtk
+    $ conda search bob.pad # searching
+    $ conda search bob.db  # searching
+    $ conda install bob.pad.base bob.pad.<padname> bob.db.<dbname>
 
-in order to download and install all packages that are required for your experiments.
-Running the simple command line:
+where you would replace ``<padname>`` and ``<dbname>`` with the name of
+packages that you want to use.
 
-.. code-block:: sh
+An example installation
+-----------------------
 
-   $ python bootstrap-buildout.py
-   $ ./bin/buildout
+For example, to run a speech presentation attack detection experiments,
+you need preprocessor, extractor, classifier, and
+a database. Preprocessors and extractors can be reused from ``bob.bio`` packages, while classifier is normally
+provided in ``bob.pad``. Hence for speech PAD, you can take
+the :py:class:`bob.bio.spear.preprocessor.Energy_2Gauss` and the
+:py:class:`bob.bio.spear.extractor.Cepstral` feature extractor defined in
+:ref:`bob.bio.spear <bob.bio.spear>`, and the
+:py:class:`bob.pad.voice.algorithm.GmmAlgorithm` algorithm defined in
+:ref:`bob.pad.voice <bob.pad.voice>`, using voicePA database (contains speech presentation attacks)
+interface defined in :ref:`bob.db.voicepa <bob.db.voicepa>`. Running the
+command line below will install all the required packages:
 
-will the download and install all dependent packages locally (relative to your current working directory), and create a ``./bin`` directory containing all the necessary scripts to run the experiments.
+.. code-block:: sh
 
+    $ source activate <bob_conda_environment>
+    $ conda install bob.bio.base \
+                    bob.bio.spear \
+                    bob.pad.base \
+                    bob.pad.voice \
+                    bob.db.voicepa \
+                    gridtk
 
 Databases
-~~~~~~~~~
+---------
 
 With ``bob.pad`` you will run biometric recognition experiments using databases that contain presentation attacks.
 Though the PAD protocols are implemented in ``bob.pad``, the original data are **not included**.
 To download the original data of the databases, please refer to the according Web-pages.
-For a list of supported databases including their download URLs, please refer to the `spoofing_databases <https://gitlab.idiap.ch/bob/bob/wikis/Packages>`_.
+For a list of supported databases including their download URLs,
+please refer to the `spoofing_databases <https://gitlab.idiap.ch/bob/bob/wikis/Packages>`_.
 
 After downloading the original data for the databases, you will need to tell ``bob.pad``, where these databases can be found.
 For this purpose, we have decided to implement a special file, where you can set your directories.
@@ -66,42 +78,4 @@ Please use ``./bin/databases.py`` for a list of known databases, where you can s
    If you have installed only ``bob.pad.base``, there is no database listed -- as all databases are included in other extension packages, such as ``bob.pad.voice``.
 
 
-Test your Installation
-~~~~~~~~~~~~~~~~~~~~~~
-
-One of the scripts that were generated during the bootstrap/buildout step is a test script.
-To verify your installation, you should run the script running the nose tests for each of the ``bob.pad`` packages:
-
-.. code-block:: sh
-
-  $ ./bin/nosetests -vs bob.pad.base
-  $ ./bin/nosetests -vs bob.pad.voice
-  ...
-
-In case any of the tests fail for unexplainable reasons, please file a bug report through the `GitHub bug reporting system`_.
-
-.. note::
-  Usually, all tests should pass with the latest stable versions of the Bob_ packages.
-  In other versions, some of the tests may fail.
-
-
-Generate this documentation
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Generally, the documentation of this package is `available online <http://pythonhosted.org/bob.pad.base>`__, and this should be your preferred resource.
-However, to generate this documentation locally, you call:
-
-.. code-block:: sh
-
-  $ ./bin/sphinx-build doc sphinx
-
-Afterward, the documentation is available and you can read it, e.g., by using:
-
-.. code-block:: sh
-
-  $ firefox sphinx/index.html
-
-
-.. _buildout.cfg: file:../buildout.cfg
-
 .. include:: links.rst
diff --git a/doc/links.rst b/doc/links.rst
index 46644ae..379f55d 100644
--- a/doc/links.rst
+++ b/doc/links.rst
@@ -19,3 +19,5 @@
 .. _sge: http://wiki.idiap.ch/linux/SunGridEngine
 .. _virtualbox: https://www.virtualbox.org
 .. _hdf5: http://www.hdfgroup.org/HDF5
+.. _bobinstall: https://www.idiap.ch/software/bob/install
+.. _conda: https://conda.io
-- 
GitLab