Open vSwitch Documentation

This document describes how to build the OVS documentation for use offline. A continuously updated, online version can be found at


These instructions provide information on building the documentation locally. For information on writing documentation, refer to Documentation Style

Build Requirements

As described in the Documentation Style, the Open vSwitch documentation is written in reStructuredText and built with Sphinx. A detailed guide on installing Sphinx in many environments is available on the Sphinx website but, for most Linux distributions, you can install with your package manager. For example, on Debian/Ubuntu run:

$ sudo apt-get install python3-sphinx

Similarly, on RHEL/Fedora run:

$ sudo dnf install python3-sphinx

A requirements.txt is also provided in the /Documentation, should you wish to install using pip:

$ virtualenv .venv
$ source .venv/bin/activate
$ pip install -r Documentation/requirements.txt


It’s unlikely that you’ll need to customize any aspect of the configuration. However, the Documentation/ is the go-to place for all configuration. This file is well documented and further information is available on the Sphinx website.


Once Sphinx is installed, the documentation can be built using the provided Makefile targets:

$ make docs-check


The docs-check target will fail if there are any syntax errors. However, it won’t catch more succinct issues such as style or grammar issues. As a result, you should always inspect changes visually to ensure the result is as intended.

Once built, documentation is available in the /Documentation/_build folder. Open the root index.html to browse the documentation.