---
name: "dh_sphinxdoc"
section: "1"
platform: "linux"
package: "sphinx-common"
version: "8.1.3-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/dh_sphinxdoc"
---

# dh\_sphinxdoc(1)

helps with packaging Sphinx-generated documentation

## NAME

dh\_sphinxdoc - helps with packaging Sphinx-generated documentation

## SYNOPSIS

dh\_sphinxdoc \[*debhelper options*\] \[**-X***item*\] \[*directory*...\]

## DESCRIPTION

**dh\_sphinxdoc** is a debhelper program that prepares Sphinx-generated documentation for inclusion in a Debian package. More specifically:

- •

  It checks if all the files referenced by *searchindex.js* exist.

- •

  It replaces known *\*.js* files with symlinks to */usr/share/javascript/sphinxdoc/* and generates **${sphinxdoc:Depends}** substitution variable.

- •

  If the Sphinx RTD theme is used, it replaces known files from this theme with symlinks to */usr/share/sphinx\_rtd\_theme/*, and adds **sphinx-rtd-theme-common** to **${sphinxdoc:Depends}**.

- •

  It provides a **${sphinxdoc:Built-Using}** substitution variable, for tracking files which could not be symlinked. Examples of such files are *\*.js* and *\*.css* files that are generated from corresponding *\*.js.jinja* and *\*.css.jinja* templates, and can vary depending on the used theme options (for instance, *basic.css* file is generated from *basic.css.jinja* and is included in almost every Sphinx-generated documentation). Currently, this variable will contain **sphinx** and, if the default theme is used, **alabaster**, with their versions (other themes are not supported).

- •

  It removes the *.doctrees* directory.

- •

  It removes the *.buildinfo* file.

- •

  It removes the *websupport.js* file.

Note that **dh\_sphinxdoc** does not build the documentation, it only performs the above operations when the documentation is already installed into the package build path. To build the docs, please use [**sphinx-build**(1)](/sphinx-build/1.md) command or **python3 -m sphinx** syntax.

You can pass **--with sphinxdoc** to [**dh**(1)](/dh/1.md) to make it automatically call **dh\_sphinxdoc** after **dh\_installdocs**.

## OPTIONS

- *directory*

  By default, **dh\_sphinxdoc** scans your package looking for directories looking like they contain Sphinx-generated documentation. However, if you explicitly provide one or more directories, only they will be processed. If documentation is not found at *directory*, an error is raised.

- **-X***item*, **--exclude=***item*

  Exclude files that contain *item* anywhere in their filename from being symlinked, removed or checked for existence.

## BUGS

Symlinking translations.js is not supported.

## SEE ALSO

[**debhelper**(7)](/debhelper/7.md), [**dh**(1)](/dh/1.md).

This program is meant to be used together with debhelper.

## AUTHOR

Jakub Wilk \<jwilk@debian.org\>
