# HG changeset patch # User Pierre-Yves David # Date 1291218775 -3600 # Node ID b741578ce7c9d8a105de850a373505a3c1e1171e # Parent a81cf7e7ffa259225c5363c45a37a9aa2f4083d8 [doc/book] Improve installation doc mostly about pip ans easy_install the documentation now informs about compatibility and recommendation for pip and easy_install. diff -r a81cf7e7ffa2 -r b741578ce7c9 doc/book/en/admin/setup.rst --- a/doc/book/en/admin/setup.rst Wed Dec 01 16:52:30 2010 +0100 +++ b/doc/book/en/admin/setup.rst Wed Dec 01 16:52:55 2010 +0100 @@ -8,9 +8,25 @@ Installation of `Cubicweb` and its dependencies ----------------------------------------------- -|cubicweb| is packaged for Debian and Ubuntu, but can be installed from source -using a tarball or the Mercurial version control system. +|cubicweb| is packaged for `Debian and Ubuntu`_, is `pip installable`_ and +`easy_install installable`_. It can be installed from source using a tarball_ +or the `Mercurial version control system`_ . Windows user may want to check the +`Windows Installation`_ section. + +Since version 3.9, |cubicweb| is virtualenv friendly and can be safely +installed, used and contained inside a `virtualenv`_. + +.. _`Debian and Ubuntu` : DebianInstallation_ +.. _`pip installable`: PipInstallation_ +.. _`easy_install installable`: EasyInstallInstallation_ +.. _tarball: TarballInstallation_ +.. _`Mercurial version control system`: MercurialInstallation_ +.. _`Windows Installation`: WindowsInstallation_ +.. _`virtualenv`: http://pypi.python.org/pypi/virtualenv + + +.. file:///home/pyves/tmp/cwdoc/html/admin/setup.html#pipinstallation .. _DebianInstallation: @@ -36,7 +52,7 @@ You can now install the required packages with the following command:: apt-get update - apt-get install cubicweb cubicweb-dev + apt-get install cubicweb cubicweb-dev. `cubicweb` installs the framework itself, allowing you to create new instances. @@ -47,12 +63,12 @@ .. note:: `cubicweb-dev` will install basic sqlite support. You can easily setup - `cubicweb with other database`_ with the following virtual packages : + `cubicweb with other database`_ using the following virtual packages : `cubicweb-postgresql-support` contains necessary dependency for using `cubicweb with postgresql datatabase`_ and `cubicweb-mysql-support` contains necessary dependency for using `cubicweb with mysql database`_ . -There is also a wide variety of cubes listed on the `CubicWeb.org Forge`_ +There is also a wide variety of :ref:`cubes ` listed on the `CubicWeb.org Forge`_ available as debian packages and tarball. The repositories are signed with `Logilab's gnupg key`_. To avoid warning on @@ -75,25 +91,84 @@ Installation with pip ````````````````````` -|cubicweb| and its cubes have been pip_ installable since version 3.8. Search +pip_ is a smart python utility that lets you automatically download, build, +install, and manage python packages and their dependencies. + +|cubicweb| and its cubes have been pip_ installable since version 3.9. Search for them on pypi_:: pip install cubicweb + pip install cubicweb-blog + +.. note:: + + Pip is the recommended way to install |cubicweb| if there is no binary + package available on your system or you want to install it inside a + `virtualenv`_. However pip doesn't install binary package and may require + several compilation steps while installing |cubicweb| dependencies. If you + don't have a compilation environment you should use `easy_install + installation`_ to install |cubicweb|. + + Once, |cubicweb| is installed, this limitation doesn't apply when installing + cubes. + .. _pip: http://pypi.python.org/pypi/pip .. _pypi: http://pypi.python.org/pypi?%3Aaction=search&term=cubicweb +.. _`easy_install installation`: EasyInstallInstallation_ -.. _SourceInstallation: .. warning:: - This method may still have hiccups. If it does not work for you, - please consider installing from version control system - (:ref:`MercurialInstallation`). + |cubicweb| depends upon the `lxml` python module. This module contains ``C`` + code that must be compiled. To successfully install |cubicweb| with pip, you + must either have an environment ables to compile Python ``C`` extensions or + preinstall lxml from a binary package. + +.. note:: + + For better performance the setup processor will compile a ``C`` extension for + the :ref:`RQL ` language if you have an environment ables to compile + Python ``C`` extensions and the `gecode library`_. Otherwise, a pure python + alternative will be used for degraded performance. + +.. _`gecode library`: http://www.gecode.org/ +.. _`easy_install`: http://packages.python.org/distribute/easy_install.html + + +.. _EasyInstallInstallation: + +Installation with EasyInstall +`````````````````````````````` + +.. note:: + + We don't recommend the use of `easy_install` and setuptools in the generic + case. However as easy_install is currently the sole pure python package + system that support binary installation. Using `easy_install` is currently + the easiest way to install |cubicweb| when you don't have a compilation + environment set-up or Debian based distribution. + + +|cubicweb| is easy_install_ installable for version 3.9:: + + easy_install cubicweb + +.. warning:: + + Cubes are **not** is easy_install_ installable. But they are + `pip installable`_ + + + + +.. _SourceInstallation: Install from source ``````````````````` +.. _TarballInstallation: + You can download the archive containing the sources from our `ftp site`_ at:: http://ftp.logilab.org/pub/cubicweb/ @@ -428,7 +503,7 @@ MySql configuration ``````````````````` -Yout must add the following lines in ``/etc/mysql/my.cnf`` file:: +You must add the following lines in ``/etc/mysql/my.cnf`` file:: transaction-isolation=READ-COMMITTED default-storage-engine=INNODB @@ -482,7 +557,7 @@ Pyro configuration ------------------ -If you want to use Pyro to access your instance remotly, or to have multi-source +If you want to use Pyro to access your instance remotely, or to have multi-source or distributed configuration, it is required to have a Pyro name server running on your network. By default it is detected by a broadcast request, but you can specify a location in the instance's configuration file. diff -r a81cf7e7ffa2 -r b741578ce7c9 doc/book/en/annexes/rql/index.rst --- a/doc/book/en/annexes/rql/index.rst Wed Dec 01 16:52:30 2010 +0100 +++ b/doc/book/en/annexes/rql/index.rst Wed Dec 01 16:52:55 2010 +0100 @@ -1,3 +1,5 @@ +.. _RQLChapter + Relation Query Language (RQL) =============================