1. Linux binary installation

Debian packages for Vulcanexus Iron Imagination are currently available for Ubuntu Jammy. Since Vulcanexus is a ROS 2 all-in-one tool set, certain ROS 2 prerequisites need to be met before installing.

1.1. ROS 2 prerequisites

First of all, set up a UTF-8 locale as required by ROS 2. Locale settings can be checked and set up with the following commands:

locale  # check for UTF-8

sudo apt update && sudo apt install -y locales
# Any UTF-8 locale will work. Using en_US as an example
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

ROS 2 also requires that the Ubuntu Universe repository is enabled. This can be checked and enabled with the following commands:

apt-cache policy | grep universe

# This should print something similar to:
#  500 http://us.archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
# release v=22.04,o=Ubuntu,a=jammy,n=jammy,l=Ubuntu,c=universe,b=amd64
# Otherwise run

sudo apt install -y software-properties-common
sudo add-apt-repository universe -y

Now download ROS 2 GPG key into the keystore.

sudo apt update && sudo apt install -y curl gnupg lsb-release
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

And finally add ROS 2 repository to the repository manager sources list.

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

1.2. Setup Vulcanexus sources

Once all ROS 2 prerequisites have been met, it is time to set up Vulcanexus.

Add Vulcanexus GPG key so apt can retrieve the packages:

sudo curl -sSL https://raw.githubusercontent.com/eProsima/vulcanexus/main/vulcanexus.key -o /usr/share/keyrings/vulcanexus-archive-keyring.gpg

Next, add the eProsima Vulcanexus repository to the repository manager sources list:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/vulcanexus-archive-keyring.gpg] http://repo.vulcanexus.org/debian $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/vulcanexus.list > /dev/null

1.3. Install eProsima Vulcanexus packages

Remember to update the apt repository caches after setting up the repositories:

sudo apt update -y

Desktop install (Recommended): includes all the simulation tools, demos, and tutorials.

sudo apt install -y vulcanexus-iron-desktop

Base Install: basic installation without simulation tools, demos, and tutorials.

sudo apt install -y vulcanexus-iron-base

For other Vulcanexus packages, please refer to Vulcanexus Metapackages for more information.

1.4. Environment setup

In order to use the Vulcanexus installation, the environment must be set up sourcing the following file:

source /opt/vulcanexus/iron/setup.bash

1.5. Try some examples

In one terminal, source the setup file and then run a C++ talker:

. ~/vulcanexus_iron/install/local_setup.bash
ros2 run demo_nodes_cpp talker

In another terminal source the setup file and then run a Python listener:

. ~/vulcanexus_iron/install/local_setup.bash
ros2 run demo_nodes_py listener

At this point, the talker should prompt Publishing: Hello World: <id> messages while the listener echoes I heard: [Hello World: <id>]. This verifies both the C++ and Python APIs are working properly. Hooray!

1.6. Uninstall eProsima Vulcanexus packages

To uninstall Vulcanexus, it is enough to run the following command :

sudo apt autoremove vulcanexus-iron-desktop