Merge pull request #453 from darko-poljak/improve-docs-build

Improve docs build
This commit is contained in:
Nico Schottelius 2016-07-07 21:49:38 +09:00 committed by GitHub
commit 9b2800b614
90 changed files with 163 additions and 242 deletions

13
.gitignore vendored
View file

@ -2,14 +2,11 @@
.*.swp
# Ignore generated manpages
docs/man/.marker
docs/man/man1/*.1
docs/man/man7/*.7
docs/man/man*/*.html
docs/man/man*/*.xml
docs/man/man*/docbook-xsl.css
docs/man/man7/cdist-type__*.rst
docs/man/cdist-reference.rst
docs/src/.marker
docs/src/man1/*.1
docs/src/man7/*.7
docs/src/man7/cdist-type__*.rst
docs/src/cdist-reference.rst
# Ignore cdist cache for version control
/cache/

View file

@ -20,7 +20,7 @@
helper=./bin/build-helper
MANDIR=docs/man
DOCS_SRC_DIR=docs/src
SPEECHDIR=docs/speeches
TYPEDIR=cdist/conf/type
@ -36,13 +36,13 @@ CHANGELOG_FILE=docs/changelog
PYTHON_VERSION=cdist/version.py
SPHINXM=make -C $(MANDIR) man
SPHINXH=make -C $(MANDIR) html
SPHINXM=make -C $(DOCS_SRC_DIR) man
SPHINXH=make -C $(DOCS_SRC_DIR) html
################################################################################
# Manpages
#
MAN1DSTDIR=$(MANDIR)/man1
MAN7DSTDIR=$(MANDIR)/man7
MAN1DSTDIR=$(DOCS_SRC_DIR)/man1
MAN7DSTDIR=$(DOCS_SRC_DIR)/man7
# Manpages #1: Types
# Use shell / ls to get complete list - $(TYPEDIR)/*/man.rst does not work
@ -56,32 +56,32 @@ $(MAN7DSTDIR)/cdist-type%.rst: $(TYPEDIR)/%/man.rst
ln -sf "../../../$^" $@
# Manpages #2: reference
MANREF=$(MAN7DSTDIR)/cdist-reference.rst
MANREFSH=$(MANDIR)/cdist-reference.rst.sh
DOCSREF=$(MAN7DSTDIR)/cdist-reference.rst
DOCSREFSH=$(DOCS_SRC_DIR)/cdist-reference.rst.sh
$(MANREF): $(MANREFSH)
$(MANREFSH)
$(DOCSREF): $(DOCSREFSH)
$(DOCSREFSH)
# Manpages #3: generic part
mansphinxman: $(MANTYPES) $(MANREF) $(PYTHON_VERSION)
man: $(MANTYPES) $(DOCSREF) $(PYTHON_VERSION)
$(SPHINXM)
mansphinxhtml: $(MANTYPES) $(MANREF) $(PYTHON_VERSION)
html: $(MANTYPES) $(DOCSREF) $(PYTHON_VERSION)
$(SPHINXH)
man: mansphinxman mansphinxhtml
docs: man html
# Manpages #5: release part
MANWEBDIR=$(WEBBASE)/man/$(CHANGELOG_VERSION)
MANBUILDDIR=docs/dist/html
HTMLBUILDDIR=docs/dist/html
man-dist: man
docs-dist: html
rm -rf "${MANWEBDIR}"
mkdir -p "${MANWEBDIR}"
# mkdir -p "${MANWEBDIR}/man1" "${MANWEBDIR}/man7"
# cp ${MAN1DSTDIR}/*.html ${MAN1DSTDIR}/*.css ${MANWEBDIR}/man1
# cp ${MAN7DSTDIR}/*.html ${MAN7DSTDIR}/*.css ${MANWEBDIR}/man7
cp -R ${MANBUILDDIR}/* ${MANWEBDIR}
cp -R ${HTMLBUILDDIR}/* ${MANWEBDIR}
cd ${MANWEBDIR} && git add . && git commit -m "cdist manpages update: $(CHANGELOG_VERSION)" || true
man-latest-link: web-pub
@ -102,12 +102,9 @@ $(DOTMAN7DSTDIR)/cdist-type%.rst: $(DOTTYPEDIR)/%/man.rst
ln -sf "$^" $@
# Manpages #3: generic part
dotmansphinxman: $(DOTMANTYPES)
dotman: $(DOTMANTYPES)
$(SPHINXM)
dotman: dotmansphinxman
################################################################################
# Speeches
#
@ -147,7 +144,7 @@ web-doc:
web-dist: web-blog web-doc
web-pub: web-dist man-dist speeches-dist
web-pub: web-dist docs-dist speeches-dist
cd "${WEBDIR}" && make pub
web-release-all: man-latest-link
@ -212,12 +209,12 @@ release:
#
clean:
rm -f $(MANDIR)/cdist-reference.rst
rm -f $(DOCS_SRC_DIR)/cdist-reference.rst
find "$(MANDIR)" -mindepth 2 -type l \
find "$(DOCS_SRC_DIR)" -mindepth 2 -type l \
| xargs rm -f
make -C $(MANDIR) clean
make -C $(DOCS_SRC_DIR) clean
find * -name __pycache__ | xargs rm -rf

View file

@ -206,8 +206,8 @@ eof
"$0" check-date
"$0" check-unittest
# Generate man pages (indirect check if they build)
make man
# Generate documentation (man and html)
make docs
# Generate speeches (indirect check if they build)
make speeches

View file

@ -241,8 +241,8 @@ eof
"$0" check-date
"$0" check-unittest
# Generate man pages (indirect check if they build)
make helper=${helper} WEBDIR=${WEBDIR} man
# Generate documentation (man and html)
make helper=${helper} WEBDIR=${WEBDIR} docs
# Generate speeches (indirect check if they build)
make helper=${helper} WEBDIR=${WEBDIR} speeches

View file

@ -53,7 +53,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`ccollect`\ (1)
:strong:`ccollect`\ (1)
AUTHORS

View file

@ -48,7 +48,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__file`\ (7)
:strong:`cdist-type__file`\ (7)
AUTHORS

View file

@ -62,7 +62,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
AUTHORS

View file

@ -66,7 +66,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
AUTHORS

View file

@ -59,7 +59,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_template`\ (7), :manpage:`cdist-type__consul_template_config`\ (7)
:strong:`cdist-type__consul_template`\ (7), :strong:`cdist-type__consul_template_config`\ (7)
AUTHORS

View file

@ -55,7 +55,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
consul documentation at: <http://www.consul.io/docs/agent/watches.html>.

View file

@ -48,7 +48,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
consul documentation at: <http://www.consul.io/docs/agent/watches.html>.

View file

@ -45,7 +45,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
consul documentation at: <http://www.consul.io/docs/agent/watches.html>.

View file

@ -45,7 +45,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
consul documentation at: <http://www.consul.io/docs/agent/watches.html>.

View file

@ -41,7 +41,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
consul documentation at: <http://www.consul.io/docs/agent/watches.html>.

View file

@ -65,7 +65,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
consul documentation at: <http://www.consul.io/docs/agent/watches.html>.

View file

@ -41,7 +41,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__consul_agent`\ (7)
:strong:`cdist-type__consul_agent`\ (7)
consul documentation at: <http://www.consul.io/docs/agent/watches.html>.

View file

@ -68,7 +68,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`crontab`\ (5)
:strong:`crontab`\ (5)
AUTHORS

View file

@ -37,7 +37,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`debconf-set-selections`\ (1), :manpage:`cdist-type__update_alternatives`\ (7)
:strong:`debconf-set-selections`\ (1), :strong:`cdist-type__update_alternatives`\ (7)
AUTHORS

View file

@ -43,7 +43,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`qemu`\ (1), :manpage:`dog`\ (8)
:strong:`qemu`\ (1), :strong:`dog`\ (8)
AUTHORS

View file

@ -65,7 +65,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__iptables_rule`\ (7), :manpage:`firewalld`\ (8)
:strong:`cdist-type__iptables_rule`\ (7), :strong:`firewalld`\ (8)
AUTHORS

View file

@ -29,7 +29,7 @@ None (__iptables_apply is used by __iptables_rule)
SEE ALSO
--------
:manpage:`cdist-type__iptables_rule`\ (7), :manpage:`iptables`\ (8)
:strong:`cdist-type__iptables_rule`\ (7), :strong:`iptables`\ (8)
AUTHORS

View file

@ -50,7 +50,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__iptables_apply`\ (7), :manpage:`iptables`\ (8)
:strong:`cdist-type__iptables_apply`\ (7), :strong:`iptables`\ (8)
AUTHORS

View file

@ -108,7 +108,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`jail`\ (8)
:strong:`jail`\ (8)
AUTHORS

View file

@ -107,7 +107,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`jail`\ (8)
:strong:`jail`\ (8)
AUTHORS

View file

@ -108,7 +108,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`jail`\ (8)
:strong:`jail`\ (8)
AUTHORS

View file

@ -61,7 +61,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`grep`\ (1)
:strong:`grep`\ (1)
AUTHORS

View file

@ -34,7 +34,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`locale`\ (1), :manpage:`localedef`\ (1)
:strong:`locale`\ (1), :strong:`localedef`\ (1)
AUTHORS

View file

@ -46,7 +46,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -47,7 +47,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7), :manpage:`cdist-type__package_emerge_dependencies`\ (7)
:strong:`cdist-type__package`\ (7), :strong:`cdist-type__package_emerge_dependencies`\ (7)
AUTHORS

View file

@ -36,7 +36,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7), :manpage:`cdist-type__package_emerge`\ (7)
:strong:`cdist-type__package`\ (7), :strong:`cdist-type__package_emerge`\ (7)
AUTHORS

View file

@ -39,7 +39,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -39,7 +39,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -42,7 +42,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -49,7 +49,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -54,7 +54,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -54,7 +54,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -85,7 +85,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -39,7 +39,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -49,7 +49,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -56,7 +56,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__package`\ (7)
:strong:`cdist-type__package`\ (7)
AUTHORS

View file

@ -59,7 +59,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`grep`\ (1)
:strong:`grep`\ (1)
AUTHORS

View file

@ -35,7 +35,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`grep`\ (1)
:strong:`grep`\ (1)
AUTHORS

View file

@ -39,7 +39,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`pf`\ (4), :manpage:`cdist-type__pf_ruleset`\ (7)
:strong:`pf`\ (4), :strong:`cdist-type__pf_ruleset`\ (7)
AUTHORS

View file

@ -39,7 +39,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`pf`\ (4)
:strong:`pf`\ (4)
AUTHORS

View file

@ -68,7 +68,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`master`\ (5)
:strong:`master`\ (5)
AUTHORS

View file

@ -38,7 +38,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`postconf`\ (5)
:strong:`postconf`\ (5)
AUTHORS

View file

@ -30,7 +30,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__postgres_role`\ (7)
:strong:`cdist-type__postgres_role`\ (7)
AUTHORS

View file

@ -48,7 +48,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__postgres_database`\ (7)
:strong:`cdist-type__postgres_database`\ (7)
postgresql documentation at:
<http://www.postgresql.org/docs/current/static/sql-createrole.html>.

View file

@ -58,7 +58,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__start_on_boot`\ (7)
:strong:`cdist-type__start_on_boot`\ (7)
AUTHORS

View file

@ -37,7 +37,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`qemu-img`\ (1)
:strong:`qemu-img`\ (1)
AUTHORS

View file

@ -98,7 +98,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`rsync`\ (1)
:strong:`rsync`\ (1)
AUTHORS

View file

@ -31,8 +31,8 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__rvm_gem`\ (7), :manpage:`cdist-type__rvm_gemset`\ (7),
:manpage:`cdist-type__rvm_ruby`\ (7)
:strong:`cdist-type__rvm_gem`\ (7), :strong:`cdist-type__rvm_gemset`\ (7),
:strong:`cdist-type__rvm_ruby`\ (7)
AUTHORS

View file

@ -43,8 +43,8 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__rvm`\ (7), :manpage:`cdist-type__rvm_gemset`\ (7),
:manpage:`cdist-type__rvm_ruby`\ (7)
:strong:`cdist-type__rvm`\ (7), :strong:`cdist-type__rvm_gemset`\ (7),
:strong:`cdist-type__rvm_ruby`\ (7)
AUTHORS

View file

@ -41,8 +41,8 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__rvm`\ (7), :manpage:`cdist-type__rvm_gem`\ (7),
:manpage:`cdist-type__rvm_ruby`\ (7)
:strong:`cdist-type__rvm`\ (7), :strong:`cdist-type__rvm_gem`\ (7),
:strong:`cdist-type__rvm_ruby`\ (7)
AUTHORS

View file

@ -42,8 +42,8 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__rvm`\ (7), :manpage:`cdist-type__rvm_gem`\ (7),
:manpage:`cdist-type__rvm_gemset`\ (7)
:strong:`cdist-type__rvm`\ (7), :strong:`cdist-type__rvm_gem`\ (7),
:strong:`cdist-type__rvm_gemset`\ (7)
AUTHORS

View file

@ -55,7 +55,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist__ssh_authorized_keys`\ (7), :manpage:`sshd`\ (8)
:strong:`cdist__ssh_authorized_keys`\ (7), :strong:`sshd`\ (8)
AUTHORS

View file

@ -105,7 +105,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`sshd`\ (8)
:strong:`sshd`\ (8)
AUTHORS

View file

@ -33,7 +33,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__ssh_authorized_keys`\ (7)
:strong:`cdist-type__ssh_authorized_keys`\ (7)
AUTHORS

View file

@ -99,7 +99,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__file`\ (7)
:strong:`cdist-type__file`\ (7)
AUTHORS

View file

@ -45,7 +45,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__process`\ (7)
:strong:`cdist-type__process`\ (7)
AUTHORS

View file

@ -30,7 +30,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`cdist-type__debconf_set_selections`\ (7), :manpage:`update-alternatives`\ (8)
:strong:`cdist-type__debconf_set_selections`\ (7), :strong:`update-alternatives`\ (8)
AUTHORS

View file

@ -84,7 +84,7 @@ EXAMPLES
SEE ALSO
--------
:manpage:`pw`\ (8), :manpage:`usermod`\ (8)
:strong:`pw`\ (8), :strong:`usermod`\ (8)
AUTHORS

View file

@ -12,7 +12,7 @@ This is the machine you use to configure the target hosts.
* /bin/sh: A posix like shell (for instance bash, dash, zsh)
* Python >= 3.2
* SSH client
* sphinx (for building html docs and/or the manpages)
* sphinx (for building html docs and/or the man pages)
Target Hosts
~~~~~~~~~~~~
@ -68,42 +68,56 @@ If the main site is down, you can acquire cdist from one of the following sites:
* git://github.com/telmich/cdist.git `github <https://github.com/telmich/cdist>`_
* git://git.code.sf.net/p/cdist/code `sourceforge <https://sourceforge.net/p/cdist/code>`_
Building and using manpages
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Building and using documentation (man and html)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
If you want to build and use the manpages, run:
If you want to build and use the documentation, run:
.. code-block:: sh
make docs
Documentation comes in two formats, man pages and full HTML
documentation. Documentation is built into distribution's
docs/dist directory. man pages are in docs/dist/man and
HTML documentation in docs/dist/html.
If you want to use man pages, run:
.. code-block:: sh
export MANPATH=$MANPATH:$(pwd -P)/docs/dist/man
Or you can move man pages from docs/dist/man directory to some
other directory and add it to MANPATH.
Full HTML documentation can be accessed at docs/dist/html/index.html.
You can also build only man pages or only html documentation, for
only man pages run:
.. code-block:: sh
make man
export MANPATH=$MANPATH:$(pwd -P)/docs/dist/man
Or you can move manpages from docs/dist/man directory to some
other directory and add it to MANPATH.
You can also build manpages for types in your ~/.cdist directory:
.. code-block:: sh
make dotman
Built manpages are now in docs/dist/man directory. If you have
some other custom .cdist directory, e.g. /opt/cdist then use:
.. code-block:: sh
DOT_CDIST_PATH=/opt/cdist make dotman
Building and using HTML documentation
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
If you want to build and use HTML documentation, run:
for only html documentation run:
.. code-block:: sh
make html
Now you can access docs/dist/html/index.html.
You can also build man pages for types in your ~/.cdist directory:
.. code-block:: sh
make dotman
Built man pages are now in docs/dist/man directory. If you have
some other custom .cdist directory, e.g. /opt/cdist then use:
.. code-block:: sh
DOT_CDIST_PATH=/opt/cdist make dotman
Python package
~~~~~~~~~~~~~~

View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View file

@ -56,10 +56,6 @@ CONFIG
------
Configure one or more hosts
.. option:: -h, --help
Show the help screen
.. option:: -c CONF_DIR, --conf-dir CONF_DIR
Add a configuration directory. Can be specified multiple times.

View file

@ -1,7 +1,7 @@
[[!meta title="Documentation"]]
You can browse the latest
[latest version of the manpages](/software/cdist/man/latest) or
You can browse the
[latest version of the documentation](/software/cdist/man/latest) or
have a look at [all versions](/software/cdist/man).
You can also view [speeches about cdist](/software/cdist/speeches).

View file

@ -17,114 +17,6 @@ This is the machine you use to configure the target hosts.
* /bin/sh: A posix like shell (for instance bash, dash, zsh)
* SSH server
## Requirement Installation: Python >= 3.2
Ensure you have at least Python 3.2 or newer installed on
the **source host**.
You can check this by running **python -V**:
% python -V
Python 3.3.0
### Archlinux
Archlinux includes a recent python in the extra repository.
You can install it using
pacman -S python
### CentOS
See the "From source" section
### Debian
For Debian **wheezy** or newer:
aptitude install python3
On **squeeze** you can add following line in **/etc/apt/sources.list**
deb http://ftp.debian.org/debian wheezy main
And add pinning entry in **/etc/apt/preferences.d/wheezy**:
Package: *
Pin: release n=wheezy
Pin-Priority: 1
Please be aware that both **openssh-server** and **openssh-client** might be
removed on **python3.2** installation. You surely want to reinstall them:
apt-get install -t wheezy openssh-server openssh-client
For older Debian versions, installing python 3.2 from source is required.
If you want to build the cdist manpages:
aptitude install --without-recommends asciidoc xsltproc
### Fedora
Fedora 15 and newer includes a recent python.
You can install it using
yum install python3
### FreeBSD
For the port:
cd /usr/ports/lang/python32/ && make install clean
For the package:
pkg_add -r python32
You can also use any newer version, but at least python 3.2 is required.
### Gentoo
Gentoo only provides python 3.2 in testing packages (http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3&chap=3).
If you want to ensure nothing breaks you must set back the python version to what was default before.
emerge -av =python-3.2.2 --autounmask-write
emerge -av =python-3.2.2
eselect python list
eselect python list set python3.2
### Max OS X
You can choose between Homebrew and Macports, either way works:
[Homebrew](http://mxcl.github.com/homebrew/) variant:
brew install python3
[Macports](http://www.macports.org/install.php) variant:
port install python32
ln -s /opt/local/bin/python3.2 /opt/local/bin/python3
### Redhat
See the "From source" section
### From Source
For those operating systems not yet supporting Python 3.2:
pyversion=3.2.3
wget http://www.python.org/ftp/python/$pyversion/Python-${pyversion}.tar.bz2
tar xvfj Python-${pyversion}.tar.bz2
cd Python-${pyversion}
./configure
make
sudo make install
This installs python 3.2 to /usr/local/bin.
Ensure this directory is in your PATH environment variable.
## Install cdist
You can install cdist either from git or as a python package.
@ -141,11 +33,6 @@ To install cdist, execute the following commands:
cd cdist
export PATH=$PATH:$(pwd -P)/bin
If you want to build and use the manpages, run:
make man
export MANPATH=$MANPATH:$(pwd -P)/doc/man
#### Available versions in git
* The active development takes place in the **master** branch
@ -169,6 +56,36 @@ If the main site is down, you can acquire cdist from one of the following sites:
* git://github.com/telmich/cdist.git ([github](https://github.com/telmich/cdist))
* git://git.code.sf.net/p/cdist/code ([sourceforge](https://sourceforge.net/p/cdist/code))
#### Building and using documentation (man and html)
If you want to build and use the documentation, run:
make docs
Documentation comes in two formats, man pages and full HTML
documentation. Documentation is built into distribution's
docs/dist directory. man pages are in docs/dist/man and
HTML documentation in docs/dist/html.
If you want to use man pages, run:
export MANPATH=$MANPATH:$(pwd -P)/docs/dist/man
Or you can move manpages from docs/dist/man directory to some
other directory and add it to MANPATH.
Full HTML documentation can be accessed at docs/dist/html/index.html.
You can also build manpages for types in your ~/.cdist directory:
make dotman
Built manpages are now in docs/dist/man directory. If you have
some other custom .cdist directory, e.g. /opt/cdist then use:
DOT_CDIST_PATH=/opt/cdist make dotman
### Python Package
Cdist is available as a python package at