Revert unintentional change of daemon log file names
[ganeti-local] / INSTALL
diff --git a/INSTALL b/INSTALL
index db29b26..70f7056 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -46,7 +46,7 @@ Before installing, please verify that you have the following programs:
 - `affinity Python module <http://pypi.python.org/pypi/affinity/0.1.0>`_,
   optional python package for supporting CPU pinning under KVM
 - `ElementTree Python module <http://effbot.org/zone/element-index.htm>`_,
-  if running python 2.4 (optional, used by the ``ovfconverter`` tool)
+  if running on python 2.4 (optional, used by the ``ovfconverter`` tool)
 - `qemu-img <http://qemu.org/>`_, if you want to use ``ovfconverter``
 - `fping <http://fping.sourceforge.net/>`_
 
@@ -59,15 +59,30 @@ packages, except for RBD, DRBD and Xen::
   $ apt-get install lvm2 ssh bridge-utils iproute iputils-arping \
                     ndisc6 python python-pyopenssl openssl \
                     python-pyparsing python-simplejson \
-                    python-pyinotify python-pycurl socat \
-                    python-elementtree qemu
+                    python-pyinotify python-pycurl socat fping
+
+Note that this does not install optional packages::
+
+  $ apt-get install python-paramiko python-affinity qemu-img
+
+If some of the python packages are not available in your system,
+you can try installing them using ``easy_install`` command.
+For example::
+
+  $ apt-get install python-setuptools
+  $ cd / && sudo easy_install \
+            affinity
+
 
 On Fedora to install all required packages except RBD, DRBD and Xen::
 
   $ yum install openssh openssh-clients bridge-utils iproute ndisc6 \
                 pyOpenSSL pyparsing python-simplejson python-inotify \
-                python-lxml python-paramiko socat qemu-img
+                python-lxm socat fping
+
+For optional packages use the command::
 
+  $ yum install python-paramiko python-affinity qemu-img
 
 If you want to build from source, please see doc/devnotes.rst for more
 dependencies.
@@ -88,7 +103,7 @@ dependencies.
   distributions need to apply the patches on their own.
 
   Ganeti will use the option if it's detected by the ``configure``
-  script; auto-detection can be disabled by explicitely passing
+  script; auto-detection can be disabled by explicitly passing
   ``--enable-socat-compress`` (use the option to disable compression) or
   ``--disable-socat-compress`` (don't use the option).
 
@@ -116,8 +131,13 @@ just going to run Ganeti). More specifically:
 - `curl <http://hackage.haskell.org/package/curl>`_, bindings for the
   curl library, only needed if you want these tools to connect to remote
   clusters (as opposed to the local one)
+- `bytestring <http://hackage.haskell.org/package/bytestring>`_ and
+  `utf8-string <http://hackage.haskell.org/package/utf8-string>`_
+  libraries; these usually come with the GHC compiler
+- `regex-pcre <http://hackage.haskell.org/package/regex-pcre>`_,
+  bindings for the ``pcre`` library
 
-All of these are also available as package in Debian/Ubuntu::
+Some of these are also available as package in Debian/Ubuntu::
 
   $ apt-get install ghc6 libghc6-json-dev libghc6-network-dev \
                     libghc6-parallel-dev libghc6-curl-dev
@@ -134,13 +154,18 @@ Note that more recent version have switched to GHC 7.x and the packages
 were renamed::
 
   $ apt-get install ghc libghc-json-dev libghc-network-dev \
-                    libghc-parallel-dev libghc-curl-dev
+                    libghc-parallel-dev libghc-curl-dev \
+                    libghc-regex-pcre-dev
 
-If using a distribution which does not provide them, the first install
-the Haskell platform and then install the additional libraries via
+If using a distribution which does not provide them, first install
+the Haskell platform. You can also install ``cabal`` manualy::
+
+  $ apt-get install cabal-install
+
+Then install the additional libraries via
 ``cabal``::
 
-  $ cabal install json network parallel curl
+  $ cabal install json network parallel curl regex-pcre
 
 The compilation of the htools components is automatically enabled when
 the compiler and the requisite libraries are found. You can use the
@@ -158,19 +183,28 @@ and a few has extra dependencies:
 - `Crypto <http://hackage.haskell.org/package/Crypto>`_, tested with
   version 4.2.4
 - `text <http://hackage.haskell.org/package/text>`_
-- ``bytestring``, which usually comes with the compiler
+- `hinotify <http://hackage.haskell.org/package/hinotify>`_
 
 These libraries are available in Debian Wheezy (but not in Squeeze), so
 you can use either apt::
 
-  $ apt-get install libghc-hslogger-dev libghc-crypto-dev libghc-text-dev
+  $ apt-get install libghc-hslogger-dev libghc-crypto-dev libghc-text-dev \
+                    libghc-hinotify-dev
 
 or ``cabal``::
 
-  $ cabal install hslogger Crypto text
+  $ cabal install hslogger Crypto text hinotify
 
 to install them.
 
+.. _cabal-note:
+.. note::
+  If one of the cabal packages fails to install due to unfulfilled
+  dependencies, you can try enabling symlinks in ``~/.cabal/config``.
+
+  Make sure that your ``~/.cabal/bin`` directory (or whatever else
+  is defined as ``bindir``) is in your ``PATH``.
+
 Installation of the software
 ----------------------------