= SkyTools - tools for PostgreSQL =

== Building ==

Skytools modules use some other code to run, so you need to install the
following dependencies on the system where you want to build and run
skytools based applications.

=== Build dependencies ===

  postgresql libpq-dev postgresql-server-dev
  python python-dev

When building code from GIT:

  git autoconf automake asciidoc xmlto libtool

=== Runtime dependencies ===

  python  psycopg2  rsync

== Building from source tarball ==

  $ ./configure --prefix=...
  $ make
  $ make install

== Building from GIT ==

Fetch git tree:

  $ git clone git://github.com/markokr/skytools.git

Fetch libusual submodule:

  $ git submodule init
  $ git submodule update

Generate ./configure script:

  $ ./autogen.sh

Now build as usual:

  $ ./configure --prefix=...
  $ make

== Building a debian package ==

The main Makefile provides a target for building a +.deb+ package
suitable for installation.  The following additional packages are needed
to build the debian package:

  devscripts autotools-dev python-all-dev python-support xmlto asciidoc
  libevent-dev libpq-dev postgresql-server-dev-all

Then build:

  $ make deb

== Optional arguments to ./configure ==

The following configure options are available:

--prefix::
  Path prefix where to install skytools files (default: /usr/local)

--with-python::
  Name or full path of the Python executable to use. (default: python)

--with-pgconfig::
  Name or full path to pg_config (default: pg_config)

--with-asciidoc::
  If asciidoc should be used to re-generate manpages.  Required when
  building from GIT as the generated pages are not in repo.

== Building without Makefile ==

It is possible to build and install Python part of Skytools only.
This is useful when no required build / devel tools (dependencies)
are available (typically on Windows platform).

Commands to run vary across platforms but usually go like this:

  $ [sudo] python setup_pkgloader.py install
  $ [sudo] python setup_skytools.py install [--sk3-subdir]

== Documentation ==

Skytools documentation consists of text files, some of them in the
asciidoc format, from which you can produce man and html outputs:

  $ cd doc
  $ make man
  $ make html

You need asciidoc and xmlto packages for this to work.

== Installation ==

=== Skytools ===

You have to install skytools on the machines where you want to run it,
obviously. The installation of the skytools provides PgQ, Londiste and
walmgr.

=== Londiste ===

In the londiste case, as the replication process will run on only one
machine (either provider, subscriber or a tier box), things are not
that simple anymore.

But simple nonetheless: install PgQ on the machine where you want to
run it, provider being the straightforward choice. Then install
londiste only on the box from where you want to launch the replication
process, a good default being the subscriber box this time.

You can then install londiste on provider from the subscriber box with
the +londiste.py+ command line tool.

== Usage ==

Please refer to the documentation.
