December 15, 2025
Ken Suzuki
Technology

[December 2025] NVIDIA Isaac Sim Environment Setup Record (Isaac Sim 5.1.0 + ROS2 w/ Ubuntu 24.04)

A record of NVIDIA Isaac Sim environment setup on Ubuntu 24.04 conducted in December 2025. While I initially set it up on Windows, I switched to Ubuntu due to DLL issues.

Isaac SimROS2OmniverseEnvironment Setup
[December 2025] NVIDIA Isaac Sim Environment Setup Record (Isaac Sim 5.1.0 + ROS2 w/ Ubuntu 24.04)

Ubuntu NVIDIA Isaac Sim Development Environment Setup Guide (December 2025 Edition)

1. Introduction

After setting up Isaac Sim on Windows 11 Pro, I encountered issues with Docker-based Ubuntu/ROS 2 environment integration. Isaac Sim consistently crashed when trying to load the ROS 2 Bridge Python module rclpy, and I couldn't resolve this problem.

Eventually, I decided to perform a clean dual-boot installation of Ubuntu and configure Isaac Sim and ROS 2 to coexist natively. Below is a record of that procedure.


2. System Overview

  • OS: Ubuntu 24.04
  • Main Software: NVIDIA Isaac Sim 5.1.0, ROS2 Jazzy
  • Purpose: Robot arm simulation, PoC development for sales support

3. Environment Setup Procedure

For basic setup, I referred to https://docs.isaacsim.omniverse.nvidia.com/5.1.0/installation/install_python.html.

3.1. Initial OS Setup

For creating Ubuntu dual-boot environments, numerous detailed references exist, so please refer to those.

During installation, when the Install third-party software for graphics and Wi-Fi hardware option appears, be sure to check it and install NVIDIA proprietary drivers.

After installation completion, verify NVIDIA driver and CUDA versions with the following command.

$ nvidia-smi

nvidia-smi command execution result showing NVIDIA driver version 580.95.05, CUDA version 13.0, and GeForce RTX 5090 GPU detailed information

About libnvidia-egl-gbm1 Error
While configuring `xrdp`, I edited X11 settings, which caused the following dependency error during Isaac Sim installation: > The following packages have unmet dependancies: > libnvidia-gl-580 : Conflicts: libnvidia-egl-gbm1 > E: Unable to correct problems, you have held broken packages.

This is due to conflicts between the new driver (libnvidia-gl-580) provided by NVIDIA package repositories and existing compatibility packages (libnvidia-egl-gbm1). Unable to resolve this issue, I eventually had to perform a clean OS reinstallation. Please be careful when making X11-related configuration changes.

3.2. Miniconda Installation and Python Environment Setup

Directly modifying Ubuntu's default Python risks breaking the OS system itself. By using Conda to create 'virtual environments', if configuration fails, you can simply delete that environment and start over, allowing for safe development.

$ mkdir ~/dev/
$ cd ~/dev/
$ sudo apt update
$ sudo apt upgrade
$ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
$ bash Miniconda3-latest-Linux-x86_64.sh
$ source ~/.bashrc

Miniconda installation execution screen showing license agreement, installation path confirmation, conda initialization settings, etc.

This enables the conda command (conda environments are displayed at the beginning of the prompt, like (base)). Next, since Isaac Sim 5.1.0 requires Python version 3.11, create a Python environment for Isaac Sim.

(base) $ conda create -n env_isaacsim python=3.11
(base) $ conda activate env_isaacsim
(env_isaacsim) $ pip install --upgrade pip

Conda environment creation and activation execution screen showing env_isaacsim environment creation, Python package installation confirmation, and prompt change to (env_isaacsim) after environment activation

3.3. Isaac Sim Installation

Install Isaac Sim within the created conda environment.

(env_isaacsim) $ pip install isaacsim[all,extscache]==5.1.0 --extra-index-url https://pypi.nvidia.com

Isaac Sim installation start screen showing isaacsim package download initiation and dependency package list Isaac Sim installation completion screen showing successful installation of all packages with installation size and execution time statistics

3.4. Environment Verification

Run compatibility checks to verify that installation completed correctly.

(env_isaacsim) $ isaacsim isaacsim.exp.compatibility_check

Isaac Sim compatibility check execution result showing successful completion of compatibility tests for system requirements, GPU drivers, Python version, dependencies, etc.

3.5. Isaac Sim Startup

(env_isaacsim) $ isaacsim

Isaac Sim startup screen showing the main application window with Omniverse library, scene creation options, extension settings, and other initial setup screens

3.6. ROS 2 Jazzy Installation

Refer to the official documentation (https://docs.ros.org/en/jazzy/Installation/Ubuntu-Install-Debs.html) to install ROS 2.

1. Locale Verification

$ locale

Verify that en_US.UTF-8 is configured.

Locale command execution result showing that all locale settings including LANG, LC_ALL, LC_TIME are correctly set to en_US.UTF-8

2. Repository Setup and Installation

Register the official repository for installing ROS2 Jazzy and proceed with actual package installation.

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

ROS2 repository registration execution screen showing software-properties-common package installation confirmation and universe repository addition processing

$ 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

ROS2 authentication key and repository setup execution screen showing successful completion of GPG key download and ROS2 repository addition to apt source list

$ sudo apt update && sudo apt install ros2-dev-tools

ROS2 development tools installation start screen showing ros2-dev-tools package download and dependency resolution processing ROS2 development tools installation completion screen showing successful installation of all packages with package count and processing time statistics

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install ros-jazzy-desktop

ROS2 Jazzy Desktop installation start screen showing initiation of ros-jazzy-desktop package and its extensive dependency package download and installation processing ROS2 Jazzy Desktop installation completion screen showing successful installation of all packages with installation size and execution time statistics

The final command installs ROS2 Jazzy's "desktop version" in one batch. This includes ROS basic functionality plus RViz (3D visualization tool) and demo packages—everything needed for GUI development.

3. Operation Verification

Open two terminals and launch Talker and Listener respectively to confirm message communication occurs.

# Terminal 1
$ source /opt/ros/jazzy/setup.bash
$ ros2 run demo_nodes_cpp talker
# Terminal 2
$ source /opt/ros/jazzy/setup.bash
$ ros2 run demo_nodes_py listener

ROS2 operation verification demo execution screen showing talker and listener running in two terminals with successful message communication confirmation

3.7. Isaac Sim and ROS 2 Integration

Install necessary ROS 2 packages for integration and launch Isaac Sim. I referenced (https://docs.isaacsim.omniverse.nvidia.com/5.1.0/installation/install_ros.html#install-ros-2).

$ sudo apt install ros-jazzy-vision-msgs
$ sudo apt install ros-jazzy-ackermann-msgs

Isaac Sim integration ROS2 additional package installation screen showing successful installation of ros-jazzy-vision-msgs and ros-jazzy-ackermann-msgs packages

# Load ROS 2 environment then launch Isaac Sim
$ source /opt/ros/jazzy/setup.bash
$ isaacsim

Isaac Sim ROS 2 Bridge extension activation confirmation screen showing successful activation of "ROS 2 Bridge" extension in Extensions window with Isaac Sim and ROS 2 integration ready

After Isaac Sim startup, confirm that ROS 2 Bridge is enabled in the Extensions window to complete the integration setup.


4. Summary

This completes the procedure for reconstructing the NVIDIA Isaac Sim environment in a dual-boot Ubuntu environment.

The ROS2 and Isaac Sim bridge in Windows environment faced very complex and delicate DLL conflict issues that I continued to encounter, so rather than resolving each error one by one, I switched to Ubuntu. So far it's very stable, so I plan to continue development on the Ubuntu side for the time being.

[December 2025] NVIDIA Isaac Sim Environment Setup Record (Isaac Sim 5.1.0 + ROS2 w/ Ubuntu 24.04) | Shirokuma.online