Files @ r5917:8075ec3d0233
Branch filter:

Location: public/kallithea/docs/installation.rst - annotation

Søren Løvborg
docs: restructure Kallithea upgrade instructions

This creates a separate "Upgrading Kallithea" section, instead of trying
(and failing) to repeat the same information for each installation page.
Trying to maintain upgrade instructions for each installation method was
perhaps overly ambitious. In practice, only the Linux instructions were
up-to-date.

(Incidentally, this is kind of a throwback to Kallithea 0.1, which also
had a separate upgrade section.)
r568:5f481e4e888b
r568:5f481e4e888b
r4814:d95ea48af67b
r4814:d95ea48af67b
r4814:d95ea48af67b
r568:5f481e4e888b
r5425:5ae8e644aa88
r4902:03bbd33bc084
r5081:154becd92f40
r5425:5ae8e644aa88
r5425:5ae8e644aa88
r5425:5ae8e644aa88
r568:5f481e4e888b
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4922:5e66d3ec9880
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4955:4e6dfdb3fa01
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r5433:fbbe80e3322b
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r5425:5ae8e644aa88
r4989:8927a1ac8d41
r4922:5e66d3ec9880
r4989:8927a1ac8d41
r4922:5e66d3ec9880
r4922:5e66d3ec9880
r4922:5e66d3ec9880
r5519:8c234ae2c258
r5726:250f8150c4bb
r5502:ae9ab4c92d46
r4922:5e66d3ec9880
r4922:5e66d3ec9880
r4922:5e66d3ec9880
r4924:7c952ea3d7b3
r568:5f481e4e888b
r5433:fbbe80e3322b
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r2358:69df04ee1e2b
r4902:03bbd33bc084
r4902:03bbd33bc084
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4955:4e6dfdb3fa01
r568:5f481e4e888b
r4902:03bbd33bc084
r4955:4e6dfdb3fa01
r572:a60cd29ba7e2
r4902:03bbd33bc084
r572:a60cd29ba7e2
r5519:8c234ae2c258
r5519:8c234ae2c258
r1092:8af52e1224ff
r4902:03bbd33bc084
r5519:8c234ae2c258
r1092:8af52e1224ff
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r3224:8b8edfc25856
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r5520:4e9f5ef98dc4
r4192:e73a69cb98dc
r1309:61a6a7bf2cbd
r572:a60cd29ba7e2
r4902:03bbd33bc084
r3224:8b8edfc25856
r4955:4e6dfdb3fa01
r572:a60cd29ba7e2
r4192:e73a69cb98dc
r3224:8b8edfc25856
r4902:03bbd33bc084
r4902:03bbd33bc084
r4902:03bbd33bc084
r5726:250f8150c4bb
r4902:03bbd33bc084
r4955:4e6dfdb3fa01
r4902:03bbd33bc084
r4902:03bbd33bc084
r4924:7c952ea3d7b3
r572:a60cd29ba7e2
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r5433:fbbe80e3322b
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r4924:7c952ea3d7b3
r5433:fbbe80e3322b
r3224:8b8edfc25856
r4955:4e6dfdb3fa01
.. _installation:

==========================
Installation on Unix/Linux
==========================

The following describes three different ways of installing Kallithea:

- :ref:`installation-source`: The simplest way to keep the installation
  up-to-date and track any local customizations is to run directly from
  source in a Kallithea repository clone, preferably inside a virtualenv
  virtual Python environment.

- :ref:`installation-virtualenv`: If you prefer to only use released versions
  of Kallithea, the recommended method is to install Kallithea in a virtual
  Python environment using `virtualenv`. The advantages of this method over
  direct installation is that Kallithea and its dependencies are completely
  contained inside the virtualenv (which also means you can have multiple
  installations side by side or remove it entirely by just removing the
  virtualenv directory) and does not require root privileges.

- :ref:`installation-without-virtualenv`: The alternative method of installing
  a Kallithea release is using standard pip. The package will be installed in
  the same location as all other Python packages you have ever installed. As a
  result, removing it is not as straightforward as with a virtualenv, as you'd
  have to remove its dependencies manually and make sure that they are not
  needed by other packages.

.. _installation-source:


Installation from repository source
-----------------------------------

To install Kallithea in a virtualenv_ using the stable branch of the development
repository, follow the instructions below::

        hg clone https://kallithea-scm.org/repos/kallithea -u stable
        cd kallithea
        virtualenv ../kallithea-venv
        source ../kallithea-venv/bin/activate
        pip install --upgrade pip setuptools
        pip install -e .
        python2 setup.py compile_catalog   # for translation of the UI

You can now proceed to :ref:`setup`.

.. _installation-virtualenv:


Installing a released version in a virtualenv
---------------------------------------------

It is highly recommended to use a separate virtualenv_ for installing Kallithea.
This way, all libraries required by Kallithea will be installed separately from your
main Python installation and other applications and things will be less
problematic when upgrading the system or Kallithea.
An additional benefit of virtualenv_ is that it doesn't require root privileges.

- Assuming you have installed virtualenv_, create a new virtual environment
  for example, in `/srv/kallithea/venv`, using the virtualenv command::

    virtualenv /srv/kallithea/venv

- Activate the virtualenv_ in your current shell session and make sure the
  basic requirements are up-to-date by running::

    source /srv/kallithea/venv/bin/activate
    pip install --upgrade pip setuptools

.. note:: You can't use UNIX ``sudo`` to source the ``virtualenv`` script; it
   will "activate" a shell that terminates immediately. It is also perfectly
   acceptable (and desirable) to create a virtualenv as a normal user.

.. note:: Some dependencies are optional. If you need them, install them in
   the virtualenv too::

     pip install psycopg2
     pip install python-ldap

   This might require installation of development packages using your
   distribution's package manager.

- Make a folder for Kallithea data files, and configuration somewhere on the
  filesystem. For example::

    mkdir /srv/kallithea

- Go into the created directory and run this command to install Kallithea::

    pip install kallithea

  Alternatively, download a .tar.gz from http://pypi.python.org/pypi/Kallithea,
  extract it and run::

    pip install .

- This will install Kallithea together with pylons_ and all other required
  python libraries into the activated virtualenv.

You can now proceed to :ref:`setup`.

.. _installation-without-virtualenv:


Installing a released version without virtualenv
------------------------------------------------

For installation without virtualenv, 'just' use::

    pip install kallithea

Note that this method requires root privileges and will install packages
globally without using the system's package manager.

To install as a regular user in ``~/.local``, you can use::

    pip install --user kallithea

You can now proceed to :ref:`setup`.


.. _virtualenv: http://pypi.python.org/pypi/virtualenv
.. _pylons: http://www.pylonsproject.org/