diff options
Diffstat (limited to 'doc/source')
-rw-r--r-- | doc/source/install.rst | 102 |
1 files changed, 43 insertions, 59 deletions
diff --git a/doc/source/install.rst b/doc/source/install.rst index dbe5ddfa..0ffa9883 100644 --- a/doc/source/install.rst +++ b/doc/source/install.rst @@ -1,9 +1,7 @@ Installing poezio ================= -.. important:: Python 3.3 or better is **required**, as we do not - officially support python 3.1 or 3.2 (although we do try to keep - things running), and python 3.2 has some unfixable issues. +.. important:: Python 3.4 or above is **required** poezio in the GNU/Linux distributions ------------------------------------- @@ -26,20 +24,15 @@ add it to the list) Install from source ------------------- -.. note:: The ``make`` command is always required, because while we could provide - the compiled file into the archive, the ABI changes and platform variety would - make it sure that the list of archives is either incomplete or wrong. - - Packagers are of course welcome to compile the file and include it in their - architecture-specific and fixed-python packages. - - Stable version ~~~~~~~~~~~~~~ -`Stable version`_ packages are available in standalone (included dependencies) +`Stable version`_ packages are available in standalone (dependencies provided) and poezio-only packages (both with prebuilt html doc for convenience). +Those versions are also available on pypi_ (using pip3, for example), and it is +recommended to install them this way if you absolutely want to **install** poezio +and your distribution provides no package. Development version ~~~~~~~~~~~~~~~~~~~ @@ -54,69 +47,62 @@ support. Therefore, you might want to use the git version. git clone git://git.poez.io/poezio cd poezio -Dependencies -~~~~~~~~~~~~ - """"""" General """"""" -Poezio is a python3-only application, so you will first need that, preferably -in the latest available version, down to 3.3. - -.. note:: Python 3.1 is not officially supported and tested, but should - work (if it doesn’t, we can fix it if the fix does not require ugly - modifications). In this case, you will want to install the - python3-argparse package if it exists, or use pip3/virtualenvs to - install it. +Poezio is a python3.4 (and above)-only application, so you will first need that. -You will first need python3-devel, or whatever your distribution named it, along -with standard utilities such as make. Once you have them, you can run ``make`` -to build the only part of poezio that needs it. If you downloaded the standalone -stable package, you are finished here and can skip to :ref:`running poezio <poezio-run-label>`. +You will also need the python3-devel package or equivalent, and make, in order +to compile the poezio C module. Then you can run ``make`` to build it. +If you downloaded the standalone stable package, you are finished here and can skip +to :ref:`running poezio <poezio-run-label>`. Poezio depends on two libraries: -- DNSPython_ (the python3 version, often called dnspython3) -- SleekXMPP_ +- aiodns_ +- slixmpp_ + +.. versionchanged:: 0.9 -Additionally, it needs *python3-setuptools* to install an executable file. -If you do not want to install those libraries, you can skip directly to -the :ref:`installation part <poezio-install-label>` +Additionally, it needs *python3-setuptools*, which is required for proper python +packaging management. +.. note:: We provide a script ``update.sh`` that creates a virtualenv and + downloads all the required and optional dependencies inside it. + we recommend using it with the git version of poezio, in order + to keep everything up-to-date. -""""""""" -DNSPython -""""""""" +If you don’t want to use the update script for whatever reason, install the +following dependencies by hand; otherwise, skip to the +`installation part <poezio-install-label>`. -It should be available right now in most software repositories, under the name -``python3-dnspython`` or ``python3-dnspython3``. Any stable version should fit. -For a manual install: +"""""""" +slixmpp +"""""""" + +Poezio depends on slixmpp, a non-thread fork of the SleekXMPP library. .. code-block:: bash - wget -O dnspython.tar.gz http://www.dnspython.org/kits3/1.11.1/dnspython3-1.11.1.tar.gz - tar xvf dnspython.tar.gz - cd dnspython3-1.11.1 - python3 setup.py build + git clone git://git.louiz.org/slixmpp python3 setup.py install --user -""""""""" -SleekXMPP -""""""""" -Poezio now depends on SleekXMPP 1.2. if your distribution does not provide it yet, -you can install it this way: +"""""" +aiodns +"""""" + +The aiodns is required in order to properly resolve XMPP domains (with SRV records). + .. code-block:: bash - wget https://github.com/fritzy/SleekXMPP/archive/1.2.0.tar.gz - tar xvf 1.2.0.tar.gz - SleekXMPP-1.2.0 - python3 setup.py build - python3 setup.py install --user + pip install --user aiodns + +This will also install pycares, which aiodns uses. .. _poezio-install-label: @@ -128,6 +114,7 @@ Installation The update.sh + launch.sh method is the recommended way of using and upgrading the devel version of poezio. Installing should only be done with stable versions. + And preferably using your distribution’s package manager. If you skipped the installation of the dependencies and you only want to run @@ -137,12 +124,8 @@ poezio without a system-wide install, do, in the :file:`poezio` directory: ./update.sh -If you have git installed, it will download and update locally the -libraries for you. (and if you don’t have git installed, install it) - -If you really want to install it, first install the *python3-setuptools* package -in your distribution, then run as root (or sudo in ubuntu or whatever): +If you really want to install it, run as root (or sudo in ubuntu or whatever): .. code-block:: bash @@ -170,8 +153,9 @@ If you did, it should be in he ``$PATH`` as ``poezio``, so run: .. _Sekh’s overlay: https://github.com/sekh/sekh_overlay .. _stable sources: https://dev.louiz.org/project/poezio/download -.. _SleekXMPP: https://github.com/fritzy/SleekXMPP/ -.. _DNSPython: http://www.dnspython.org/ +.. _slixmpp: https://dev.louiz.org/projects/slixmpp +.. _aiodns: https://github.com/saghul/aiodns .. _poezio: https://aur.archlinux.org/packages/poezio/ .. _poezio-git: https://aur.archlinux.org/packages/poezio-git/ .. _up-to-date package: https://apps.fedoraproject.org/packages/poezio +.. _pypi: https://pypi.python.org/pypi/poezio |