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 Open vSwitch Documentation Style

Build Requirements

As described in the Open vSwitch 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 python-sphinx

Similarly, on RHEL/Fedora run:

$ sudo dnf install python-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 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 succint 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.