DocBookWiki is built using the phpWebApp framework
(htpp://phpwebapp.sourceforge.net) . It runs with apache and php > 4.3
. For keeping the history of the modifications of the documents it
uses subversion (which can also be used to update the application to
the latest version). Some other tools/programs/packages that are
required or needed are listed below.
* It requires the php command line interface (debian package php4-cli
or php5-cli ) for running some shell scripts written in php
(pre-processing, post-processing, etc.)
* It requires xsltproc for explode/implode and other processing and
transformations of XML content.
* Requires xmllint (debian package libxml2-utils ) for XML checking
and DocBook validation.
* Requires mailx or any other program that can send emails (called by
the php function mail() ).
Tip: If the box of docbookwiki has no connection to internet and the
mails are send to the local users, then I use dnsmasq as well,
so that MX queries to the local domain are resolved quickly.
Otherwise there are delays while sending emails, which slow down
the work of the application.
* Requires sed and gawk , which are used in some shell scripts.
* Requires openssl for encrypting passwords (the command openssl
* Needs sudo so that apache can run commands with the permissions of
* Needs swish-e for indexing the content and for searching.
* Needs xmlto , docbook-utils , and dblatex for converting DocBook to
other formats: HTML, LaTeX, PDF, TXT, etc. ( dblatex requires python
* Needs mysql for installing and using webnotes.
* Needs msgfmt (package gettext ) to convert l10n files from *.po to
*.mo . However this can be done in another system as well and the
files can be transfered to the docbookwiki system.
* Needs doxygen and phpDocumentor for generating codedocs; doxygen
needs graphviz for generating UML diagrams. phpDocumentor can be
If you compile SWISH-E (http://swish-e.org) form the source, then keep
in mind that DocBookWiki requires the XML2 parser of swish-e (in order
to index the XML content). For this reason, the libraries libxml2 and
libxml2-devel must be installed in the system before compiling
In RedHat/Fedora xsltproc is in the package libxslt . Also these RPM
packages are required, in order to make the content: docbook-dtds ,
xml-common , sgml-common . In order to generate the formats, these
packages are needed as well: xmlto , xmltex , docbook-style-xsl ,
docbook-utils , docbook-utils-pdf , docbook-style-dsssl (and their
dependencies as well: openjade , perl-SGMLSpm , passivetex , jadetex ,
tetex , tetex-fonts , tetex-latex , tetex-dvips , psutils , netpbm ,
netpbm-progs , libtiff , etc.).
In general, 'Applications/Authoring and Publishing' group of packages
should be installed in order to include the neccessary tools about
SGML, XML, XSL, DocBook, etc. in RedHat/Fedora.