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 [global-options] command [command-options] [args]
PARAMETERS
-s, --srcdir=DIR
Source directory containing control.xml (default: .)
-d, --builddir=DIR
Build output directory (default: _build)
-l, --logdir=DIR
Directory for log files (default: ./logs)
-v, --verbose
Increase verbosity (repeatable for more output)
--clean
Clean build directory before processing
--force
Force overwrite of existing files
-p, --profile=PROFILE
Select build profile (e.g., product/language)
--version
Display DAPS version
-h, --help
Show help
DESCRIPTION
DAPS (Documentation Automation and Processing System) is a powerful command-line toolset for SUSE/openSUSE and Linux documentation workflows.
It streamlines the creation, validation, building, and publishing of technical documentation written in DocBook XML 5 or Markdown. DAPS supports numerous output formats, including single-page/multi-page HTML, PDF (via fo or LaTeX), EPUB, man pages, plain text, and Word/PowerPoint.
Key features include XML validation against DocBook schemas, XSLT transformations, automated linking, branding customization, and integration with version control systems like Git. It uses standardized tools like xsltproc, XEP, fop, and dblatex under the hood.
DAPS is ideal for large-scale doc projects, enforcing consistency via templates and profiles. Users define build configurations in a control.xml file, specifying products, languages, and revisions. Subcommands handle specific tasks, from initialization (daps init) to full builds (daps build). It's extensible via plugins and integrates with CI/CD pipelines.
CAVEATS
Requires dependencies like xsltproc, libxml2, libxslt, DocBook XSL stylesheets; PDF needs fop or XEP. Markdown support via md2man. Not for non-technical docs.
COMMON SUBCOMMANDS
init: Initialize project.
build: Full build (add --pdf, --html).
validate: Check XML.
check: Lint and profile checks.
single-html: Single-page HTML.
CONFIGURATION
Uses control.xml for builds: define <product>, <languages>, <formats>.
HISTORY
Developed by SUSE Linux Products GmbH since 2013 for openSUSE/SLE documentation. Evolved from custom Makefiles; version 1.0 in 2014, now at 2.x with Markdown/HTML5 support. Actively maintained in openSUSE Factory.


