doc/book/admin/setup.rst
author Arthur Lutz <arthur.lutz@logilab.fr>
Fri, 31 Jan 2020 16:51:48 +0100
branch3.27
changeset 12860 b09a3adb37be
parent 12859 5dacd3ac9584
child 12861 1983923e51cc
permissions -rw-r--r--
[doc/book/admin/setup] fix pip / virtualenv links
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
93
9c919a47e140 [doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff changeset
     1
.. -*- coding: utf-8 -*-
9c919a47e140 [doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff changeset
     2
1224
a9da8a8f0b19 [doc] Change id to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 221
diff changeset
     3
.. _SetUpEnv:
93
9c919a47e140 [doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff changeset
     4
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
     5
Installation of a *CubicWeb* environment
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
     6
========================================
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
     7
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
     8
Official releases are available from the `CubicWeb.org forge`_ and from
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
     9
`PyPI`_. Since CubicWeb is developed using `Agile software development
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    10
<http://en.wikipedia.org/wiki/Agile_software_development>`_ techniques, releases
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    11
happen frequently. In a version numbered X.Y.Z, X changes after a few years when
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    12
the API breaks, Y changes after a few weeks when features are added and Z
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    13
changes after a few days when bugs are fixed.
93
9c919a47e140 [doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff changeset
    14
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    15
Depending on your needs, you will chose a different way to install CubicWeb on
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    16
your system:
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    17
12858
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    18
- `Installation using docker`_
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    19
- `Installation on Debian/Ubuntu`_
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    20
- `Installation in a virtualenv`_
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    21
- `Installation with pip`_
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    22
- `Installation with easy_install`_
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    23
- `Installation from tarball`_
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
    24
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    25
If you are a power-user and need the very latest features, you will
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    26
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    27
- `Install from version control`_
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    28
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    29
Once the software is installed, move on to :ref:`ConfigEnv` for better control
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    30
and advanced features of |cubicweb|.
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
    31
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    32
.. _`Installation on Debian/Ubuntu`: DebianInstallation_
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    33
.. _`Installation in a virtualenv`: VirtualenvInstallation_
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    34
.. _`Installation with pip`: PipInstallation_
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    35
.. _`Installation with easy_install`: EasyInstallInstallation_
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    36
.. _`Installation from tarball`: TarballInstallation_
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    37
.. _`Install from version control`: MercurialInstallation_
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
    38
5135
f15286235aef [doc] enhanced setup section: fix sections'level, more postgres tips, merge environment doc with cwconfig.py module docstring using custom autodocstring directive
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4747
diff changeset
    39
12858
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    40
.. _DockerInstallation:
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    41
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    42
Docker install
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    43
--------------
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    44
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    45
Detailed instructions on how to deploy CubicWeb using docker can be found
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    46
on the `docker hub <https://hub.docker.com/r/logilab/cubicweb>`_.
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    47
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    48
The images there are built using the following source code :
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    49
`docker-cubicweb <https://hg.logilab.org/master/docker-cubicweb/>`_,
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    50
see it's `README <https://hg.logilab.org/master/docker-cubicweb/file/tip/README.rst>`_
f021b9b887a9 [doc/book/admin/setup] add section about docker install
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12857
diff changeset
    51
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    52
.. _DebianInstallation:
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    53
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    54
Debian/Ubuntu install
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    55
---------------------
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    56
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    57
|cubicweb| is packaged for Debian/Ubuntu (and derived
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    58
distributions). Their integrated package-management system make
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    59
installation and upgrade much easier for users since
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    60
dependencies (like databases) are automatically installed.
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    61
5135
f15286235aef [doc] enhanced setup section: fix sections'level, more postgres tips, merge environment doc with cwconfig.py module docstring using custom autodocstring directive
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4747
diff changeset
    62
Depending on the distribution you are using, add the appropriate line to your
10543
94af55569598 [doc] generalize info about debian/ubuntu repositories
Julien Cristau <julien.cristau@logilab.fr>
parents: 10542
diff changeset
    63
`list of sources` (for example by editing ``/etc/apt/sources.list``), replacing
12859
5dacd3ac9584 [doc/book/admin/setup] update apt sources
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12858
diff changeset
    64
``<release>`` with e.g. ``buster`` or ``bionic``::
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    65
12859
5dacd3ac9584 [doc/book/admin/setup] update apt sources
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12858
diff changeset
    66
  deb http://apt.logilab.fr <release> main  # all cubicweb & cubes
5dacd3ac9584 [doc/book/admin/setup] update apt sources
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12858
diff changeset
    67
  deb http://apt.logilab.fr <release> cubicweb-3.26  # latest cubicweb 3.26 & cubes
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    68
10543
94af55569598 [doc] generalize info about debian/ubuntu repositories
Julien Cristau <julien.cristau@logilab.fr>
parents: 10542
diff changeset
    69
The repositories are signed with `Logilab's gnupg key`_. You can download
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    70
and register the key to avoid warnings::
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    71
10542
53a2b00b6758 [doc] fix link to setup info in README
Julien Cristau <julien.cristau@logilab.fr>
parents: 10523
diff changeset
    72
  wget -O/etc/apt/trusted.gpg.d/logilab.gpg https://www.logilab.fr/logilab-debian-keyring.gpg
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    73
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    74
Update your list of packages and perform the installation::
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    75
2172
cf8f9180e63e delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 1714
diff changeset
    76
  apt-get update
12658
fdd7165fe1f3 [doc] Update documentation to match current Debian packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr>
parents: 12530
diff changeset
    77
  apt-get install python3-cubicweb --install-recommends
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    78
12658
fdd7165fe1f3 [doc] Update documentation to match current Debian packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr>
parents: 12530
diff changeset
    79
``python3-cubicweb`` installs the framework itself, allowing you to create new
fdd7165fe1f3 [doc] Update documentation to match current Debian packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr>
parents: 12530
diff changeset
    80
instances. Installing recommended packages will install the development
fdd7165fe1f3 [doc] Update documentation to match current Debian packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr>
parents: 12530
diff changeset
    81
environment allowing you to develop new cubes.
5135
f15286235aef [doc] enhanced setup section: fix sections'level, more postgres tips, merge environment doc with cwconfig.py module docstring using custom autodocstring directive
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4747
diff changeset
    82
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    83
There is also a wide variety of :ref:`cubes <AvailableCubes>`. You can access a
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    84
list of available cubes using ``apt-cache search cubicweb`` or at the
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    85
`CubicWeb.org forge`_.
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    86
6716
494d4465f032 [doc/book] Add a note about <database>-support virtual package.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6310
diff changeset
    87
.. note::
494d4465f032 [doc/book] Add a note about <database>-support virtual package.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6310
diff changeset
    88
12658
fdd7165fe1f3 [doc] Update documentation to match current Debian packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr>
parents: 12530
diff changeset
    89
  `python3-cubicweb` will install basic sqlite support. You can easily setup
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    90
  :ref:`cubicweb with other database <DatabaseInstallation>` using the following
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
    91
  virtual packages :
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    92
12658
fdd7165fe1f3 [doc] Update documentation to match current Debian packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr>
parents: 12530
diff changeset
    93
  * `python3-cubicweb-postgresql-support` contains the necessary dependencies for
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    94
    using :ref:`cubicweb with postgresql datatabase <PostgresqlConfiguration>`
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
    95
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    96
.. _`list of sources`: http://wiki.debian.org/SourcesList
10542
53a2b00b6758 [doc] fix link to setup info in README
Julien Cristau <julien.cristau@logilab.fr>
parents: 10523
diff changeset
    97
.. _`Logilab's gnupg key`: https://www.logilab.fr/logilab-debian-keyring.gpg
5135
f15286235aef [doc] enhanced setup section: fix sections'level, more postgres tips, merge environment doc with cwconfig.py module docstring using custom autodocstring directive
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4747
diff changeset
    98
.. _`CubicWeb.org Forge`: http://www.cubicweb.org/project/
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
    99
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   100
.. _VirtualenvInstallation:
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   101
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   102
`Virtualenv` install
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   103
--------------------
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   104
9257
ce338133c92c remove cw 3.9 bw compat (bw compat other than the interface -> adapter changes)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 8597
diff changeset
   105
|cubicweb| can be safely installed, used and contained inside a
ce338133c92c remove cw 3.9 bw compat (bw compat other than the interface -> adapter changes)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 8597
diff changeset
   106
`virtualenv`_. You can use either :ref:`pip <PipInstallation>` or
ce338133c92c remove cw 3.9 bw compat (bw compat other than the interface -> adapter changes)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 8597
diff changeset
   107
:ref:`easy_install <EasyInstallInstallation>` to install |cubicweb|
ce338133c92c remove cw 3.9 bw compat (bw compat other than the interface -> adapter changes)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 8597
diff changeset
   108
inside an activated virtual environment.
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
   109
6192
80388edf4e88 [doc] improve doc thanks to user feedback
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 5314
diff changeset
   110
.. _PipInstallation:
80388edf4e88 [doc] improve doc thanks to user feedback
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 5314
diff changeset
   111
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   112
`pip` install
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   113
-------------
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   114
12860
b09a3adb37be [doc/book/admin/setup] fix pip / virtualenv links
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12859
diff changeset
   115
`pip <https://pip.pypa.io/>`_ is a python tool that helps downloading,
9268
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   116
building, installing, and managing Python packages and their dependencies. It
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   117
is fully compatible with `virtualenv`_ and installs the packages from sources
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   118
published on the `The Python Package Index`_.
6192
80388edf4e88 [doc] improve doc thanks to user feedback
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 5314
diff changeset
   119
12860
b09a3adb37be [doc/book/admin/setup] fix pip / virtualenv links
Arthur Lutz <arthur.lutz@logilab.fr>
parents: 12859
diff changeset
   120
.. _`virtualenv`: https://virtualenv.pypa.io
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   121
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   122
A working compilation chain is needed to build the modules that include C
10022
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   123
extensions. If you really do not want to compile anything, installing `lxml <http://lxml.de/>`_,
12530
9d88e1177c35 Remove Twisted web server
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12362
diff changeset
   124
and `libgecode <http://www.gecode.org/>`_ will help.
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   125
9268
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   126
For Debian, these minimal dependencies can be obtained by doing::
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   127
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   128
  apt-get install gcc python-pip python-dev python-lxml
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   129
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   130
or, if you prefer to get as much as possible from pip::
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   131
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   132
  apt-get install gcc python-pip python-dev libxslt1-dev libxml2-dev
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   133
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   134
For Windows, you can install pre-built packages (possible `source
10022
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   135
<http://www.lfd.uci.edu/~gohlke/pythonlibs/>`_). For a minimal setup, install:
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   136
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   137
- pip http://www.lfd.uci.edu/~gohlke/pythonlibs/#pip
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   138
- setuptools http://www.lfd.uci.edu/~gohlke/pythonlibs/#setuptools
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   139
- libxml-python http://www.lfd.uci.edu/~gohlke/pythonlibs/#libxml-python>
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   140
- lxml http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml and
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   141
927a795bb380 [book] several fixes in the rst files
David Douard <david.douard@logilab.fr>
parents: 9440
diff changeset
   142
Make sure to choose the correct architecture and version of Python.
9268
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   143
fc24e783dca5 [doc] additional documentation about pip install
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 8597
diff changeset
   144
Finally, install |cubicweb| and its dependencies, by running::
6192
80388edf4e88 [doc] improve doc thanks to user feedback
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 5314
diff changeset
   145
12362
aa3581fc685c [doc] how to install pyramid or twisted application server
Laurent Peuch <cortex@worlddomination.be>
parents: 10543
diff changeset
   146
  pip install cubicweb[pyramid]
aa3581fc685c [doc] how to install pyramid or twisted application server
Laurent Peuch <cortex@worlddomination.be>
parents: 10543
diff changeset
   147
9269
7aa57201b0cd [doc] typos and reformulation
Paul Tonelli <paul.tonelli@logilab.fr>
parents: 9268
diff changeset
   148
Many other :ref:`cubes <AvailableCubes>` are available. A list is available at
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   149
`PyPI <http://pypi.python.org/pypi?%3Aaction=search&term=cubicweb&submit=search>`_
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   150
or at the `CubicWeb.org forge`_.
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   151
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   152
For example, installing the *blog cube* is achieved by::
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   153
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   154
  pip install cubicweb-blog
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   155
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   156
.. _EasyInstallInstallation:
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   157
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   158
`easy_install` install
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   159
----------------------
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   160
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   161
.. note::
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   162
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   163
   If you are not a Windows user and you have a compilation environment, we
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   164
   recommend you to use the PipInstallation_.
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   165
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   166
`easy_install`_ is a python utility that helps downloading, installing, and
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   167
managing python packages and their dependencies.
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   168
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   169
Install |cubicweb| and its dependencies, run::
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   170
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   171
  easy_install cubicweb
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   172
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   173
There is also a wide variety of :ref:`cubes <AvailableCubes>`. You can access a
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   174
list of available cubes on `PyPI
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   175
<http://pypi.python.org/pypi?%3Aaction=search&term=cubicweb&submit=search>`_
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   176
or at the `CubicWeb.org Forge`_.
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   177
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   178
For example, installing the *blog cube* is achieved by::
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   179
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   180
  easy_install cubicweb-blog
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   181
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   182
.. note::
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   183
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   184
  If you encounter problem with :ref:`cubes <AvailableCubes>` installation,
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   185
  consider using :ref:`PipInstallation` which is more stable
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   186
  but can not installed pre-compiled binaries.
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   187
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   188
.. _`easy_install`: http://packages.python.org/distribute/easy_install.html
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   189
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   190
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   191
.. _SourceInstallation:
6310
554da7585fba [doc/book] more notes on setup
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 6305
diff changeset
   192
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
   193
Install from source
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   194
-------------------
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
   195
6718
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   196
.. _TarballInstallation:
b741578ce7c9 [doc/book] Improve installation doc mostly about pip ans easy_install
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6717
diff changeset
   197
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   198
You can download the archive containing the sources from
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   199
`http://download.logilab.org/pub/cubicweb/ <http://download.logilab.org/pub/cubicweb/>`_.
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
   200
6212
73565b770559 [doc] fix link to appendix
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 6192
diff changeset
   201
Make sure you also have all the :ref:`InstallDependencies`.
5135
f15286235aef [doc] enhanced setup section: fix sections'level, more postgres tips, merge environment doc with cwconfig.py module docstring using custom autodocstring directive
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4747
diff changeset
   202
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   203
Once uncompressed, you can install the framework from inside the uncompressed
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   204
folder with::
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   205
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   206
  python setup.py install
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   207
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   208
Or you can run |cubicweb| directly from the source directory by
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   209
setting the :ref:`resource mode <RessourcesConfiguration>` to `user`. This will
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   210
ease the development with the framework.
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   211
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   212
There is also a wide variety of :ref:`cubes <AvailableCubes>`. You can access a
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   213
list of availble cubes at the `CubicWeb.org Forge`_.
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   214
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   215
6192
80388edf4e88 [doc] improve doc thanks to user feedback
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 5314
diff changeset
   216
.. _MercurialInstallation:
5135
f15286235aef [doc] enhanced setup section: fix sections'level, more postgres tips, merge environment doc with cwconfig.py module docstring using custom autodocstring directive
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4747
diff changeset
   217
3488
ab9e7bcfc764 [doc] add missing dependencies in annexes. explain more precisely source install.
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 3138
diff changeset
   218
Install from version control system
7226
e88c57c10b34 [doc] major update of the install documentation
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 7099
diff changeset
   219
-----------------------------------
3488
ab9e7bcfc764 [doc] add missing dependencies in annexes. explain more precisely source install.
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 3138
diff changeset
   220
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   221
To keep-up with on-going development, clone the :ref:`Mercurial
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   222
<MercurialPresentation>` repository::
1460
6520efef1824 [doc] C011 content moved to C010
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents: 1444
diff changeset
   223
10523
f245d865821e delete unmaintained clone_deps script
Julien Cristau <julien.cristau@logilab.fr>
parents: 10491
diff changeset
   224
  hg clone -u 'last(tag())' http://hg.logilab.org/cubicweb # stable version
7230
edd2a575a8e7 [doc] update of the update
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 7226
diff changeset
   225
  hg clone http://hg.logilab.org/cubicweb # development branch
3488
ab9e7bcfc764 [doc] add missing dependencies in annexes. explain more precisely source install.
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 3138
diff changeset
   226
6212
73565b770559 [doc] fix link to appendix
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 6192
diff changeset
   227
Make sure you also have all the :ref:`InstallDependencies`.