=============================== Docutils_ Distributor's Guide =============================== :Author: Felix Wiemann :Contact: Felix.Wiemann@ososo.de :Revision: $Revision: 4163 $ :Date: $Date: 2005-12-09 05:21:34 +0100 (Fri, 09 Dec 2005) $ :Copyright: This document has been placed in the public domain. .. _Docutils: http://docutils.sourceforge.net/ .. contents:: This document describes how to create packages of Docutils (e.g. for shipping with a Linux distribution). If you have any questions, please direct them to the Docutils-develop_ mailing list. First, please download the most current `release tarball`_ and unpack it. .. _Docutils-develop: ../user/mailing-lists.html#docutils-develop .. _release tarball: http://docutils.sourceforge.net/#download Dependencies ============ Docutils has the following dependencies: * Python 2.1 or later is required. While the compiler package from the Tools/ directory of Python's source distribution must be installed for the test suite to pass with Python 2.1, the functionality available to end users should be available without the compiler package as well. So just use ">= Python 2.1" in the dependencies. * Docutils may optionally make use of the PIL (`Python Imaging Library`_). If PIL is present, it is automatically detected by Docutils. * There are three files in the ``extras/`` directory of the Docutils distribution, ``optparse.py``, ``textwrap.py``, and ``roman.py``. For Python 2.1/2.2, all of them must be installed (into the ``site-packages/`` directory). Python 2.3 and later versions have ``textwrap`` and ``optparse`` included in the standard library, so only ``roman.py`` is required here; installing the other files won't hurt, though. These files are automatically installed by the setup script (when calling "python setup.py install"). .. _Python Imaging Library: http://www.pythonware.com/products/pil/ Python Files ============ The Docutils Python files must be installed into the ``site-packages/`` directory of Python. Running ``python setup.py install`` should do the trick, but if you want to place the files yourself, you can just install the ``docutils/`` directory of the Docutils tarball to ``/usr/lib/python/site-packages/docutils/``. In this case you should also compile the Python files to ``.pyc`` and/or ``.pyo`` files so that Docutils doesn't need to be recompiled every time it's executed. Executables =========== The executable front-end tools are located in the ``tools/`` directory of the Docutils tarball. The ``rst2*.py`` tools (except ``rst2newlatex.py``) are intended for end-users. You should install them to ``/usr/bin/``. You do not need to change the names (e.g. to ``docutils-rst2html.py``) because the ``rst2`` prefix is unique. Documentation ============= The documentation should be generated using ``buildhtml.py``. To generate HTML for all documentation files, go to the ``tools/`` directory and run:: # Place html4css1.css in base directory. cp ../docutils/writers/html4css1/html4css1.css .. ./buildhtml.py --stylesheet-path=../html4css1.css .. Then install the following files to ``/usr/share/doc/docutils/`` (or wherever you install documentation): * All ``.html`` and ``.txt`` files in the base directory. * The ``docs/`` directory. Do not install the contents of the ``docs/`` directory directly to ``/usr/share/doc/docutils/``; it's incomplete and would contain invalid references! * The ``licenses/`` directory. * ``html4css1.css`` in the base directory. Removing the ``.txt`` Files --------------------------- If you are tight with disk space, you can remove all ``.txt`` files in the tree except for: * those in the ``licenses/`` directory because they have not been processed to HTML and * ``user/rst/cheatsheet.txt`` and ``user/rst/demo.txt``, which should be readable in source form. Before you remove the ``.txt`` files you should rerun ``buildhtml.py`` with the ``--no-source-link`` switch to avoid broken references to the source files. Other Files =========== You may want to install the Emacs-Lisp files ``tools/editors/emacs/*.el`` into the appropriate directory. Configuration File ================== It is possible to have a system-wide configuration file at ``/etc/docutils.conf``. However, this is usually not necessary. You should *not* install ``tools/docutils.conf`` into ``/etc/``. Tests ===== While you probably do not need to ship the tests with your distribution, you can test your package by installing it and then running ``alltests.py`` from the ``tests/`` directory of the Docutils tarball.