The previous content was a placeholder from 2020 stating that
OVN packages needed to be split from OVS.  The split has long
been completed and the debian/ packaging infrastructure is
fully functional.

Replace the stub with complete documentation covering both
installation from distribution repositories (apt-get) and
building .deb packages from source.  The build dependencies
are aligned with the Build-Depends in debian/control and the
build instructions reflect the actual debian/rules process
which requires OVSDIR to point to a built OVS source tree.

Cover both Debian and Ubuntu since the steps are the same.

Assisted-by: Claude Opus 4.6, OpenCode
Signed-off-by: Ales Musil <[email protected]>
---
 Documentation/intro/install/debian.rst | 121 ++++++++++++++++++++++++-
 1 file changed, 116 insertions(+), 5 deletions(-)

diff --git a/Documentation/intro/install/debian.rst 
b/Documentation/intro/install/debian.rst
index fa22b370c..2e0fbaff0 100644
--- a/Documentation/intro/install/debian.rst
+++ b/Documentation/intro/install/debian.rst
@@ -21,9 +21,120 @@
 
       Avoid deeper levels because they do not render well.
 
-=================================
-Debian Packaging for OVN
-=================================
+============================================
+Debian/Ubuntu Packaging for OVN
+============================================
 
-OVN packages needs to be split from OVS. This section will be
-updated once it is done.
+This document provides instructions for installing OVN on Debian and
+Ubuntu, either from distribution packages or by building ``.deb``
+packages from source.  Instructions for installing OVN from source
+without packaging can be found in the :doc:`general`.
+
+The steps below are practically the same for Debian and Ubuntu.
+
+Installing from Packages
+------------------------
+
+Debian and Ubuntu provide pre-built OVN packages.  You can install them
+using ``apt-get`` as superuser.
+
+For a central node (runs OVN databases and ovn-northd)::
+
+    $ sudo apt-get install ovn-central
+
+For each host/hypervisor (runs ovn-controller)::
+
+    $ sudo apt-get install ovn-host
+
+Additional packages::
+
+    $ sudo apt-get install ovn-common              # shared components
+    $ sudo apt-get install ovn-controller-vtep     # VTEP gateway support
+
+.. note::
+  The packaged version available in distributions may not be the latest
+  OVN release.
+
+Building .deb Packages from Source
+----------------------------------
+
+Build Requirements
+~~~~~~~~~~~~~~~~~~
+
+Install the standard Debian packaging tools and the OVN build
+dependencies.  On Debian/Ubuntu::
+
+    $ sudo apt-get install build-essential fakeroot devscripts
+    $ sudo apt-get install graphviz autoconf automake bzip2 \
+        debhelper dh-autoreconf dh-python libssl-dev libtool \
+        openssl procps python3-all python3-sphinx \
+        python3-twisted python3-zope.interface \
+        libunbound-dev libunwind-dev
+
+The second set of packages corresponds to the ``Build-Depends``
+list in the ``debian/control`` file of the OVN source tree.
+
+Bootstrapping
+~~~~~~~~~~~~~
+
+Refer to :ref:`general-bootstrapping`.
+
+Configuring
+~~~~~~~~~~~
+
+Refer to :ref:`general-configuring`.
+
+The Debian build rules configure OVN with ``--enable-ssl``,
+``--enable-shared``, and ``--with-ovs-source``.  If you are building
+manually, make sure to prepare the OVS sources first as described in the
+bootstrapping section.
+
+Building
+~~~~~~~~
+
+The ``OVSDIR`` environment variable must point to a fully configured
+and built OVS source tree (i.e., one where ``./boot.sh``,
+``./configure``, and ``make`` have been run) before building the
+packages::
+
+    $ export OVSDIR=/path/to/built/ovs
+
+You can then build the ``.deb`` packages using ``dpkg-buildpackage``::
+
+    $ dpkg-buildpackage -us -uc
+
+Or using debuild::
+
+    $ debuild -us -uc
+
+Both methods use the ``debian/rules`` file which takes care of
+configuring, building, and packaging.
+
+This produces the following ``.deb`` packages:
+
+- ``ovn-common``: Shared OVN components (ovn-nbctl, ovn-sbctl,
+  ovn-trace, ovn-appctl, ovn-detrace, ovn-ctl, man pages).
+- ``ovn-central``: OVN DB servers and ovn-northd for the central
+  node.
+- ``ovn-host``: ovn-controller for each host/hypervisor.
+- ``ovn-controller-vtep``: ovn-controller-vtep for VTEP gateways.
+
+Installing
+~~~~~~~~~~
+
+Install the packages using ``dpkg``::
+
+    $ sudo dpkg -i ovn-common_*.deb
+    $ sudo dpkg -i ovn-central_*.deb     # on central node
+    $ sudo dpkg -i ovn-host_*.deb        # on each host
+
+.. note::
+  ``dpkg`` does not automatically resolve dependencies.  If you
+  encounter dependency errors, run ``sudo apt-get install -f``
+  to install the missing dependencies.
+
+Reporting Bugs
+--------------
+
+Report problems to https://github.com/ovn-org/ovn/issues or
[email protected].
-- 
2.54.0

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to