Isaac Apt Repository

Overview

NVIDIA Isaac Apt Repository built on our CDN (Content Distribution Network) hosts the following categories of packages for all users.

  1. All Isaac ROS packages pre-built for the currently supported platforms.

  2. ROS 2 Humble packages for Jetson users running JetPack 5.x

    For those users interested in running third-party, community-contributed ROS packages other than Isaac ROS packages on JetPack 5.x (based on Ubuntu 20.04 Focal), NVIDIA runs an instance of the official ROS Buildfarm to produce ROS 2 Humble packages back-ported for Ubuntu 20.04 Focal.

  3. Auxiliary packages to improve developer experience or to support a legacy OS.

Isaac ROS Buildfarm

The Isaac ROS Buildfarm is a fork of the official ROS Buildfarm with several modifications to build nearly all ROS 2 packages for Ubuntu 20.04 Focal and make them available on the Isaac Apt Repository.

Setting up Isaac Apt Repository

The Isaac Apt Repository is already configured in the Isaac ROS Dev Docker containers, but if you want to setup the Isaac Apt Repository as an apt source in a different environment or for the China CDN, perform the following steps:

Set Locale

locale  # check for UTF-8

sudo apt update && sudo apt install locales
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

locale  # verify settings

Install Dependencies

sudo apt update && sudo apt install gnupg wget
sudo apt install software-properties-common
sudo add-apt-repository universe

Setup Source

Register the GPG key with apt. Two options are listed below, one for .com (US CDN) and one for .cn (China CDN) - choose whichever you prefer.

Add the repository to your apt sources.

wget -qO - https://isaac.download.nvidia.com/isaac-ros/repos.key | sudo apt-key add -
grep -qxF "deb https://isaac.download.nvidia.com/isaac-ros/release-3 $(lsb_release -cs) legacy-release-3.1" /etc/apt/sources.list || \
echo "deb https://isaac.download.nvidia.com/isaac-ros/release-3 $(lsb_release -cs) legacy-release-3.1" | sudo tee -a /etc/apt/sources.list
sudo apt-get update

Next, for all other ROS 2 packages, ensure you have the official ROS apt repository sourced.

sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

This should allow for normal installation of all ROS 2 packages.

Install core ROS 2 Packages

sudo apt update

Per ROS 2 documentation:

Desktop Install (Recommended): ROS, RViz, demos, tutorials.

sudo apt install ros-humble-desktop

and/or

sudo apt install ros-humble-desktop-full

ROS-Base Install (Bare Bones): Communication libraries, message packages, command line tools. No GUI tools.

sudo apt install ros-humble-ros-base

Development tools: Compilers and other tools to build ROS packages

sudo apt install ros-dev-tools