daps
Display APT package dependencies
TLDR
Check if a DocBook XML file is valid
Convert a DocBook XML file into PDF
Convert a DocBook XML file into a single HTML file
Display help
Display version
SYNOPSIS
daps [OPTIONS] [FORMATS...]
PARAMETERS
FORMATS...
One or more desired output formats to generate. Common formats include html, html-single, pdf, epub, man, and txt.
-i FILE, --input FILE
Specifies the main DocBook XML input file (e.g., book.xml or set.xml). If omitted, daps typically searches for a default file in the current directory.
-o DIR, --output DIR
Specifies the directory where the generated output files will be placed. Defaults to a 'build' directory within the project.
-B DIR, --build-dir DIR
Specifies the temporary build directory where intermediate files are stored during the transformation process.
-c, --clean
Cleans (removes) the build and output directories for the specified formats, or all if no formats are specified.
-k, --keep-tmp
Keeps temporary files generated during the build process, which can be useful for debugging.
-v, --verbose
Enables verbose output, displaying more details about the build steps as they are executed.
--debug
Enables debug output, providing even more granular information for troubleshooting build issues.
--version
Displays the daps version information and exits.
--help
Displays a help message detailing available options and usage, then exits.
DESCRIPTION
The daps command (DocBook Authoring and Publishing Suite) is a specialized command-line utility primarily used in openSUSE and SUSE Linux distributions to automate the process of building DocBook XML documentation. It acts as a high-level wrapper, orchestrating underlying tools like xsltproc, Apache FOP, and dblatex to transform DocBook XML source files into a wide array of output formats, including HTML, PDF, EPUB, and man pages.
Its main purpose is to simplify complex DocBook build workflows, allowing authors to generate documentation without needing to manually execute multiple low-level transformation commands. It handles stylesheet application, dependency management, and output directory structuring based on the project's configuration, making the documentation generation process efficient and repeatable.
CAVEATS
The daps command is not a universally available standard Linux command. It is primarily developed and integrated within the openSUSE/SUSE ecosystem for their DocBook documentation toolchain. Its successful operation relies on a correctly structured DocBook XML project and the prior installation and configuration of underlying DocBook processing tools and stylesheets (e.g., xsltproc, Apache FOP, dblatex). Command-line options and behaviors might show minor variations across different versions or specific distribution implementations.
CONFIGURATION
daps allows for project-specific customization through a configuration file, typically named daps.conf or _daps_config. This file, usually located in the DocBook project's root directory, enables users to define output paths, specify custom stylesheet parameters, and fine-tune the invocation of underlying processing tools.
TYPICAL USAGE
Typically, daps is executed from the root directory of a DocBook project, where the main book.xml or set.xml file resides. For example, to generate HTML output for the entire project, one might simply run:
daps html
To clean previously built PDF artifacts:
daps --clean pdf
HISTORY
The daps command emerged as a core component of the DocBook Authoring and Publishing Suite, developed primarily within the SUSE Linux environment, and later becoming integral to openSUSE's documentation efforts. Its inception addressed the challenges and complexities of manually managing DocBook XML transformations, offering a more automated and user-friendly approach to generate diverse output formats from a single DocBook source. Over time, it has evolved to support a wider array of formats and configuration options, solidifying its role as an essential tool for DocBook-based documentation projects within the SUSE ecosystem.
SEE ALSO
xsltproc(1), xmlstarlet(1), make(1)