Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@
'sphinx_rtd_theme',
'sphinx_sitemap_ros',
'sphinxcontrib.mermaid',
'sphinx_design',
]

# Intersphinx mapping
Expand Down
1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,4 @@ sphinx-rtd-theme
sphinx-tabs
sphinxcontrib-mermaid
sphinx-tamer
sphinx-design
2 changes: 1 addition & 1 deletion source/Releases.rst
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ As the name implies, Rolling is continuously updated and **can have in-place upd
We recommend that most people use the most recent stable distribution instead (see :ref:`list_of_distributions`).

Packages released into the Rolling distribution will be automatically released into future stable distributions of ROS 2.
:doc:`Releasing a ROS 2 package <../How-To-Guides/Releasing/Releasing-a-Package>` into the Rolling distribution follows the same procedures as all other ROS 2 distributions.
:doc:`Releasing a ROS 2 package <./How-To-Guides/Releasing/Releasing-a-Package>` into the Rolling distribution follows the same procedures as all other ROS 2 distributions.

Cross-Distribution Communications
---------------------------------
Expand Down
4 changes: 0 additions & 4 deletions source/Releases/Release-Lyrical-Luth.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,6 @@
Lyrical Luth (codename 'lyrical'; May, 2026)
============================================

.. contents:: Table of Contents
:depth: 2
:local:

*Lyrical Luth* is the twelfth release of ROS 2.
What follows is highlights of the important changes and features in Lyrical Luth since the last release.

Expand Down
26 changes: 14 additions & 12 deletions source/Tutorials/Advanced/Reading-From-A-Bag-File-Python.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,6 @@ Reading from a bag file (Python)

**Time:** 10 minutes

.. contents:: Contents
:depth: 2
:local:

Background
----------

Expand Down Expand Up @@ -193,43 +189,49 @@ Open the ``setup.py`` file in the ``bag_reader_node_py`` package and add an entr

Navigate back to the root of your workspace, ``ros2_ws``, and build your new package.

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: console

$ colcon build --packages-select bag_reader_node_py

.. group-tab:: macOS
.. tab-item:: macOS
:sync: macOS

.. code-block:: console

$ colcon build --packages-select bag_reader_node_py

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: console

$ colcon build --merge-install --packages-select bag_reader_node_py

Open a new terminal, navigate to ``ros2_ws``, and source the setup files.

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: console

$ source install/setup.bash

.. group-tab:: macOS
.. tab-item:: macOS
:sync: macOS

.. code-block:: console

$ source install/setup.bash

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: console

Expand Down
22 changes: 14 additions & 8 deletions source/Tutorials/Advanced/Security/Introducing-ros2-security.rst
Original file line number Diff line number Diff line change
Expand Up @@ -188,21 +188,24 @@ This command uses the ``create_enclave`` feature which is covered in more detail

If the selected RMW implementation is Zenoh, then the Zenoh router also requires its own keys and certificates:

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: bash

ros2 security create_enclave demo_keystore /zenohd

.. group-tab:: MacOS
.. tab-item:: MacOS
:sync: MacOS

.. code-block:: bash

ros2 security create_enclave demo_keystore /zenohd

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: bat

Expand Down Expand Up @@ -280,23 +283,26 @@ The environment variables in this terminal must be properly set as described in

If the RMW implementation is ``rmw_zenoh_cpp``, in another terminal:

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: bash

export ZENOH_ROUTER_CONFIG_URI=~/sros2_demo/zenohd
ros2 run rmw_zenoh_cpp zenohd

.. group-tab:: MacOS
.. tab-item:: MacOS
:sync: MacOS

.. code-block:: bash

export ZENOH_ROUTER_CONFIG_URI=<path to route config with keys and certificates>
ros2 run rmw_zenoh_cpp zenohd

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: bat

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,6 @@ Topic Keys Subscription Filtering Tutorial

This tutorial aims to demonstrate how to receive data only from certain topic instances by combining the use of topic keys and topic content filtering.

.. contents::
:depth: 2
:local:
:backlinks: none

Background
----------

Expand Down Expand Up @@ -71,9 +66,10 @@ For this, there are two possible options:

Source the following file to setup the ROS 2 environment:

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: console

Expand All @@ -82,13 +78,15 @@ Source the following file to setup the ROS 2 environment:
Replace ``.bash`` with your shell if you're not using bash.
Possible values are: ``setup.bash``, ``setup.sh``, ``setup.zsh``.

.. group-tab:: macOS
.. tab-item:: macOS
:sync: macOS

.. code-block:: console

$ . ~/ros2_install/ros2-osx/setup.bash

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: console

Expand All @@ -100,9 +98,10 @@ Retrieving the sources

Create a new workspace and download the demo package sources as indicated below:

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: console

Expand All @@ -122,7 +121,8 @@ Create a new workspace and download the demo package sources as indicated below:
$ wget -O src/filtered_keyed_controller.cpp https://raw.githubusercontent.com/ros2/ros2_documentation/{DISTRO}/source/Tutorials/Advanced/Topic-Keys/resources/Filtered/src/filtered_keyed_controller.cpp
$ wget -O launch/keyed_sensors_launch.py https://raw.githubusercontent.com/ros2/ros2_documentation/{DISTRO}/source/Tutorials/Advanced/Topic-Keys/resources/Filtered/launch/keyed_sensors_launch.py

.. group-tab:: macOS
.. tab-item:: macOS
:sync: macOS

.. code-block:: console

Expand All @@ -142,7 +142,8 @@ Create a new workspace and download the demo package sources as indicated below:
$ wget -O src/filtered_keyed_controller.cpp https://raw.githubusercontent.com/ros2/ros2_documentation/{DISTRO}/source/Tutorials/Advanced/Topic-Keys/resources/Filtered/src/filtered_keyed_controller.cpp
$ wget -O launch/keyed_sensors_launch.py https://raw.githubusercontent.com/ros2/ros2_documentation/{DISTRO}/source/Tutorials/Advanced/Topic-Keys/resources/Filtered/launch/keyed_sensors_launch.py

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: console

Expand Down Expand Up @@ -227,25 +228,28 @@ Generating the IDL files

Generate the corresponding IDL definition from the provided ``KeyedSensorDataMsg.msg`` file, using the ``msg2idl.py`` script from the ``rosidl_adapter`` package.

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: console

$ cd ~/tutorial_ws/src/demo_keys_filtering_cpp/msg
$ ros2 run rosidl_adapter msg2idl.py KeyedSensorDataMsg.msg
$ rm KeyedSensorDataMsg.msg

.. group-tab:: macOS
.. tab-item:: macOS
:sync: macOS

.. code-block:: console

$ cd ~/tutorial_ws/src/demo_keys_filtering_cpp/msg
$ ros2 run rosidl_adapter msg2idl.py KeyedSensorDataMsg.msg
$ rm KeyedSensorDataMsg.msg

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: console

Expand Down Expand Up @@ -275,23 +279,26 @@ Building the demo package
Once the environment has been setup and the demo package sources are available, the demo package can be built.
Get into the root of the workspace and build it with the following commands:

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. code-block:: console

$ cd ~/tutorial_ws
$ colcon build

.. group-tab:: macOS
.. tab-item:: macOS
:sync: macOS

.. code-block:: console

$ cd ~/tutorial_ws
$ colcon build

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. code-block:: console

Expand All @@ -315,56 +322,59 @@ Run the demo by executing the following commands in separate terminals:
If a docker deployment was preferred, it would be necessary to attach the other two terminals to the running docker container before executing the above commands.
This can be done by running ``docker exec -it <container_name> /bin/bash``.

.. tabs::
.. tab-set::

.. group-tab:: Linux
.. tab-item:: Linux
:sync: Linux

.. tabs::
.. tab-set::

.. tab:: Shell 1 (Sensors)
.. tab-item:: Shell 1 (Sensors)

.. code-block:: console

$ source ~/tutorial_ws/install/setup.bash
$ ros2 launch demo_keys_filtering_cpp keyed_sensors_launch.py

.. tab:: Shell 2 (Controller)
.. tab-item:: Shell 2 (Controller)

.. code-block:: console

$ source ~/tutorial_ws/install/setup.bash
$ ros2 run demo_keys_filtering_cpp filtered_keyed_controller

.. group-tab:: macOS
.. tab-item:: macOS
:sync: macOS

.. tabs::
.. tab-set::

.. tab:: Shell 1 (Sensors)
.. tab-item:: Shell 1 (Sensors)

.. code-block:: console

$ source ~/tutorial_ws/install/setup.bash
$ ros2 launch demo_keys_filtering_cpp keyed_sensors_launch.py

.. tab:: Shell 2 (Controller)
.. tab-item:: Shell 2 (Controller)

.. code-block:: console

$ source ~/tutorial_ws/install/setup.bash
$ ros2 run demo_keys_filtering_cpp filtered_keyed_controller

.. group-tab:: Windows
.. tab-item:: Windows
:sync: Windows

.. tabs::
.. tab-set::

.. tab:: Shell 1 (Sensors)
.. tab-item:: Shell 1 (Sensors)

.. code-block:: console

$ call C:\tutorial_ws\install\setup.bat
$ ros2 launch demo_keys_filtering_cpp keyed_sensors_launch.py

.. tab:: Shell 2 (Controller)
.. tab-item:: Shell 2 (Controller)

.. code-block:: console

Expand Down
Loading
Loading