Installation#

Isaac Sim 6.0.0 Python 3.12 Ubuntu 24.04 Windows 11

Choose the path that matches what you want to install and how you want to run it. Start with the automatic uv setup unless you need to manage your own environment, use a downloaded Isaac Sim package, or deploy to Docker or the cloud. Each card jumps to complete instructions on this page.

Choose an installation path#

Automatic setup with uv

Run from the Isaac Lab checkout while uv creates and manages the environment. Recommended for most users.

Automatic setup with uv (recommended)
isaaclab.sh installer (legacy)

Use the legacy installer script to select packages in a virtual environment.

isaaclab.sh installer (legacy)
Python environment with Isaac Sim

Manage a uv, venv, or conda environment and install Isaac Sim with pip.

Python environment with Isaac Sim
Isaac Lab Python package

Install the released Isaac Lab package as a dependency of your own project.

Isaac Lab Python package
Downloaded Isaac Sim package

Download Isaac Sim and use the Python interpreter included with it.

Downloaded Isaac Sim package
Build Isaac Sim from source

Build or modify Isaac Sim itself. This is an advanced workflow.

Build Isaac Sim from source
Docker and HPC clusters

Develop in a container or submit containerized jobs to an HPC cluster.

Docker and HPC clusters
Cloud workstations

Provision a remote GPU workstation on a supported cloud provider.

Cloud workstations

System requirements#

Full Isaac Sim workflows require Python 3.12 on Ubuntu 22.04+ or Windows 11. Use a recent NVIDIA production driver and a workstation with at least 32 GB RAM and 16 GB GPU VRAM. Rendering can require additional VRAM. Confirm your machine against the Isaac Sim system requirements and Omniverse technical requirements.

Isaac Sim 5.1 and older are not supported. Use Isaac Sim 6.0 with Python 3.12.

Use the latest NVIDIA production branch driver. Version 580.95.05 or later is recommended on Linux x86_64 and aarch64, 580.142 on DGX Spark, and 581.42.00 on Windows. If a new GPU or driver issue requires a newer release, use the production driver from the Unix Driver Archive. On Linux, the Isaac Sim Compatibility Checker and Linux troubleshooting guide can identify unsupported host configurations.

Linux aarch64 and DGX Spark requirements

DGX Spark requires CUDA 13 or newer and the corresponding PyTorch build. Install the build prerequisites before installing Isaac Lab:

sudo apt install python3.12-dev libgl1-mesa-dev libx11-dev libxcursor-dev \
   libxi-dev libxinerama-dev libxrandr-dev

SkillGen, XR teleoperation, livestream, Hub Workstation Cache, Cosmos Transfer1, and RLinf are not currently supported or validated on DGX Spark. SkillGen depends on native CUDA/C++ extensions whose toolchain has not been validated on DGX Spark, while XR remains limited by unvalidated encoding performance.

isaaclab.sh installer (legacy)#

Kit-less installation uses a Python 3.12 environment and does not install Isaac Sim. Clone Isaac Lab, create and activate an environment, then install the default source packages and dependencies. Install uv or conda before starting:

git clone git@github.com:isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
git clone https://github.com/isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
uv venv --python 3.12 --seed env_isaaclab
source env_isaaclab/bin/activate
uv pip install --upgrade pip
./isaaclab.sh -i
uv venv --python 3.12 --seed env_isaaclab
env_isaaclab\Scripts\activate
uv pip install --upgrade pip
isaaclab.bat -i
conda create -n env_isaaclab python=3.12
conda activate env_isaaclab
python -m pip install --upgrade pip
./isaaclab.sh -i
conda create -n env_isaaclab python=3.12
conda activate env_isaaclab
python -m pip install --upgrade pip
isaaclab.bat -i

-i always installs the core source packages. With no value, it also installs the optional mimic and teleop submodules plus the default Newton, RL, and visualizer dependencies. It does not install tetrahedralization, contrib, ov, or Isaac Sim; request those explicitly when needed.

Use -i core for core packages only. Otherwise, pass a comma-separated list of selectors:

Selector

Installs

mimic

Imitation-learning tools.

teleop

Teleoperation tools (Linux x86_64).

newton

Newton interactive-viewer dependencies.

rl[<framework>]

RL framework dependencies. Select rsl-rl, skrl, sb3, or rl-games.

visualizer[<backend>]

Visualizer dependencies. Select rerun, viser, newton, or kit.

tetrahedralization

Dependencies for automatic tetrahedral mesh generation.

contrib[rlinf]

Contrib runtime dependencies for RLinF.

ov[<runtime>]

OV runtime wheels. Select ovrtx, ovphysx, or all.

isaacsim

The Isaac Sim pip package.

For example:

# Core packages only
./isaaclab.sh -i core

# Newton, RSL-RL, and the Newton visualizer
./isaaclab.sh -i 'newton,rl[rsl-rl],visualizer[newton]'

# OVRTX runtime dependencies
./isaaclab.sh -i 'ov[ovrtx]'
:: Core packages only
isaaclab.bat -i core

:: Newton, RSL-RL, and the Newton visualizer
isaaclab.bat -i "newton,rl[rsl-rl],visualizer[newton]"

:: OVRTX runtime dependencies
isaaclab.bat -i "ov[ovrtx]"

Python environment with Isaac Sim#

Use this path when you want an editable Isaac Lab checkout with full Isaac Sim support and a Python environment you manage yourself. Create and activate the environment before installing Isaac Sim or Isaac Lab. Isaac Sim’s pip packages require GLIBC 2.35 or newer on Linux. Enable Windows long-path support before installing on Windows.

Note

If you plan to set up Visual Studio Code, use the downloaded Isaac Sim package instead.

Create and activate a Python 3.12 environment:

uv venv --python 3.12 --seed env_isaaclab
source env_isaaclab/bin/activate
uv venv --python 3.12 --seed env_isaaclab
env_isaaclab\Scripts\activate
conda create -n env_isaaclab python=3.12
conda activate env_isaaclab

Install Isaac Sim and the CUDA-enabled PyTorch build for your platform:

uv pip install "isaacsim[all,extscache]==6.0.1.0" --extra-index-url https://pypi.nvidia.com --index-strategy unsafe-best-match --prerelease=allow
uv pip install -U torch==2.11.0 torchvision==0.26.0 --index-url https://download.pytorch.org/whl/cu128
uv pip install -U torch==2.11.0 torchvision==0.26.0 --index-url https://download.pytorch.org/whl/cu128

Note

On aarch64 systems such as DGX Spark, install the required development packages before installing Isaac Sim:

sudo apt install python3.12-dev libgl1-mesa-dev libx11-dev libxcursor-dev libxi-dev \
   libxinerama-dev libxrandr-dev
uv pip install -U torch==2.11.0 torchvision==0.26.0 --index-url https://download.pytorch.org/whl/cu130

Note

If the system and PyTorch GNU OpenMP libraries are both preloaded, Isaac Sim can emit libgomp warnings. Use the system OpenMP library:

unset LD_PRELOAD
export LD_PRELOAD=/lib/aarch64-linux-gnu/libgomp.so.1

Note

If importing omni.client or torch fails because libcarb.so cannot allocate a static TLS block, preload libcarb.so before launching Python:

export LD_PRELOAD=$(python -c "import sys,os;[print(os.path.join(p,'omni','client','libcarb.so')) for p in sys.path if os.path.isfile(os.path.join(p,'omni','client','libcarb.so'))]" 2>/dev/null | head -1)${LD_PRELOAD:+:$LD_PRELOAD}

./isaaclab.sh -p configures this automatically, as does the conda activation hook.

The first launch asks you to accept the NVIDIA Omniverse EULA. For non-interactive environments, set OMNI_KIT_ACCEPT_EULA=yes. Verify Isaac Sim with isaacsim.

With the environment still active, clone, install, and verify Isaac Lab:

git clone git@github.com:isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
git clone https://github.com/isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
sudo apt install cmake build-essential
./isaaclab.sh -i
./isaaclab.sh -p scripts/tutorials/00_sim/create_empty.py --viz kit
isaaclab.bat -i
isaaclab.bat -p scripts\tutorials\00_sim\create_empty.py --viz kit

The verification command should open a black simulator viewport. The initial launch can take over ten minutes while Isaac Sim downloads extensions.

Isaac Lab Python package#

Use this path when Isaac Lab is a dependency of an external Python project. The released isaaclab package does not include the repository’s training, inference, demo, or example scripts, so your project must provide its own runner scripts.

To create a project built on Isaac Lab, see Create new project or task.

Note

Isaac Lab wheels are published for major releases, not every patch release.

Choose how you want uv to manage the dependency. Both workflows start with the base isaaclab package; add optional capabilities only when your project needs them.

uv init --python 3.12 my_isaaclab_project
cd my_isaaclab_project
uv add isaaclab
uv venv --python 3.12 env_isaaclab
source env_isaaclab/bin/activate
uv pip install isaaclab
uv venv --python 3.12 env_isaaclab
env_isaaclab\Scripts\activate
uv pip install isaaclab
uv venv --python 3.12 env_isaaclab
source env_isaaclab/bin/activate
uv pip install isaaclab

The project workflow records the dependency in pyproject.toml and updates uv.lock. Use it when Isaac Lab is part of an application you maintain; use a standalone environment for exploratory or temporary work.

Optional extras#

Add extras to the package requirement when your project needs them. For a standalone environment, use uv pip install "isaaclab[<extra>]"; for a uv project, use uv add "isaaclab[<extra>]".

Extra

What it installs

isaacsim

Isaac Sim (isaacsim[all,extscache] version 6.0.1.0) from pypi.nvidia.com.

ov

Both OV backends: OV PhysX and OV RTX.

ovphysx / ovrtx

OV PhysX only / OV RTX only.

rl-games / sb3 / skrl / rsl-rl / rlinf

The corresponding RL framework.

rerun / viser

The corresponding visualizer.

mimic / teleop

Imitation learning / XR teleoperation.

tetrahedralization / video

Mesh tetrahedralization / video recording.

leapp

LEAP model export support.

all

Every backend, RL library, and visualizer: isaacsim, ov, rl-games, sb3, skrl, rsl-rl, rerun, and viser.

test

Developer test and documentation tooling.

Extras can be combined freely: none of them conflict, so any set of extras – including the Isaac Sim and OV backend stacks together – resolves into a single environment. Use all to get every backend, RL library, and visualizer in one flag. The specialized extras (rlinf, mimic, teleop, tetrahedralization, video, leapp) and the developer test tooling are not part of all; request them by name.

uv pip install "isaaclab[all]" \
  --overrides "https://raw.githubusercontent.com/isaac-sim/IsaacLab/develop/tools/wheel_builder/uv-overrides.txt" \
  --extra-index-url https://pypi.nvidia.com \
  --index-strategy unsafe-best-match --prerelease=allow

Install the CUDA-enabled PyTorch build appropriate for your system architecture:

pip install -U torch==2.11.0 torchvision==0.26.0 --index-url https://download.pytorch.org/whl/cu128
pip install -U torch==2.11.0 torchvision==0.26.0 --index-url https://download.pytorch.org/whl/cu128

Note

Install the required Python, OpenGL, and X11 development packages before installing Isaac Lab:

sudo apt install python3.12-dev libgl1-mesa-dev libx11-dev libxcursor-dev libxi-dev \
   libxinerama-dev libxrandr-dev
pip install -U torch==2.11.0 torchvision==0.26.0 --index-url https://download.pytorch.org/whl/cu130

Note

If Isaac Sim reports OpenMP preload warnings, use the system GNU OpenMP library:

unset LD_PRELOAD
export LD_PRELOAD=/lib/aarch64-linux-gnu/libgomp.so.1

Note

If importing omni.client or torch fails because libcarb.so cannot allocate a static TLS block, preload libcarb.so before launching Python:

export LD_PRELOAD=$(python -c "import sys,os;[print(os.path.join(p,'omni','client','libcarb.so')) for p in sys.path if os.path.isfile(os.path.join(p,'omni','client','libcarb.so'))]" 2>/dev/null | head -1)${LD_PRELOAD:+:$LD_PRELOAD}

If you installed the isaacsim extra, verify it before running your project:

isaacsim

The first launch downloads Isaac Sim extensions and can take more than ten minutes. It also asks you to accept the NVIDIA Omniverse EULA; set OMNI_KIT_ACCEPT_EULA=yes for a non-interactive environment. Run a project script with python my_script.py.

Generate VS Code settings for the current workspace with:

python -m isaaclab --generate-vscode-settings

Warning

This command generates .vscode/settings.json in the workspace. If the file already exists, it asks before overwriting it.

Downloaded Isaac Sim package#

Use this path when you prefer a downloaded Isaac Sim package instead of pip. Download and extract the Isaac Sim pre-built package. Binary installs must use Isaac Sim’s bundled Python; combining them with conda, uv, or venv is unsupported. If you need a dedicated Python environment, use Python environment with Isaac Sim instead.

The commands below assume the package was extracted to ${HOME}/isaacsim on Linux or C:\isaacsim on Windows. Set the installation paths and verify the simulator:

export ISAACSIM_PATH="${HOME}/isaacsim"
export ISAACSIM_PYTHON_EXE="${ISAACSIM_PATH}/python.sh"
${ISAACSIM_PATH}/isaac-sim.sh
${ISAACSIM_PYTHON_EXE} -c "print('Isaac Sim configuration is now complete.')"
${ISAACSIM_PYTHON_EXE} ${ISAACSIM_PATH}/standalone_examples/api/isaacsim.core.experimental.api/add_cubes.py
set ISAACSIM_PATH="C:\isaacsim"
set ISAACSIM_PYTHON_EXE="%ISAACSIM_PATH:"=%\python.bat"
%ISAACSIM_PATH%\isaac-sim.bat
%ISAACSIM_PYTHON_EXE% -c "print('Isaac Sim configuration is now complete.')"
%ISAACSIM_PYTHON_EXE% %ISAACSIM_PATH%\standalone_examples\api\isaacsim.core.experimental.api\add_cubes.py

Caution

If you used an earlier Isaac Sim version, reset its user data and cached variables before the first launch: ${ISAACSIM_PATH}/isaac-sim.sh --reset-user on Linux or %ISAACSIM_PATH%\isaac-sim.bat --reset-user on Windows.

Clone Isaac Lab, create the _isaac_sim link, install, and verify:

git clone git@github.com:isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
git clone https://github.com/isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
cd IsaacLab
ln -s ${ISAACSIM_PATH} _isaac_sim
sudo apt install cmake build-essential
./isaaclab.sh -i
./isaaclab.sh -p scripts/tutorials/00_sim/create_empty.py --viz kit
cd IsaacLab
mklink /D _isaac_sim %ISAACSIM_PATH%
isaaclab.bat -i
isaaclab.bat -p scripts\tutorials\00_sim\create_empty.py --viz kit

The tutorial command should open a black simulator viewport. If either verification command fails, consult the Isaac Sim Linux troubleshooting guide or the Isaac Sim forums.

Build Isaac Sim from source#

Build Isaac Sim from source only when you need to modify it or test a nightly revision. Building requires Ubuntu 22.04 or newer on Linux. For driver requirements, see the technical requirements. On Windows, enable long-path support before building.

git clone https://github.com/isaac-sim/IsaacSim.git
cd IsaacSim
./build.sh
export ISAACSIM_PATH="${PWD}/_build/linux-x86_64/release"
export ISAACSIM_PYTHON_EXE="${ISAACSIM_PATH}/python.sh"
${ISAACSIM_PATH}/isaac-sim.sh
${ISAACSIM_PYTHON_EXE} -c "print('Isaac Sim configuration is now complete.')"
${ISAACSIM_PYTHON_EXE} ${ISAACSIM_PATH}/standalone_examples/api/isaacsim.core.experimental.api/add_cubes.py
git clone https://github.com/isaac-sim/IsaacSim.git
cd IsaacSim
./build.sh
export ISAACSIM_PATH="${PWD}/_build/linux-aarch64/release"
export ISAACSIM_PYTHON_EXE="${ISAACSIM_PATH}/python.sh"
${ISAACSIM_PATH}/isaac-sim.sh
${ISAACSIM_PYTHON_EXE} -c "print('Isaac Sim configuration is now complete.')"
${ISAACSIM_PYTHON_EXE} ${ISAACSIM_PATH}/standalone_examples/api/isaacsim.core.experimental.api/add_cubes.py
git clone https://github.com/isaac-sim/IsaacSim.git
cd IsaacSim
build.bat
set ISAACSIM_PATH="%cd%\_build\windows-x86_64\release"
set ISAACSIM_PYTHON_EXE="%ISAACSIM_PATH:"=%\python.bat"
%ISAACSIM_PATH%\isaac-sim.bat
%ISAACSIM_PYTHON_EXE% -c "print('Isaac Sim configuration is now complete.')"
%ISAACSIM_PYTHON_EXE% %ISAACSIM_PATH%\standalone_examples\api\isaacsim.core.experimental.api\add_cubes.py

Return to the workspace containing the IsaacSim checkout, then clone Isaac Lab, link it to the source build, install, and verify:

cd ..
git clone git@github.com:isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
git clone https://github.com/isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
cd IsaacLab
ln -s ${ISAACSIM_PATH} _isaac_sim
sudo apt install cmake build-essential
./isaaclab.sh -i
./isaaclab.sh -p scripts/tutorials/00_sim/create_empty.py --viz kit
cd IsaacLab
ln -s ${ISAACSIM_PATH} _isaac_sim
sudo apt install cmake build-essential python3.12-dev libgl1-mesa-dev libx11-dev \
   libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev
./isaaclab.sh -i
./isaaclab.sh -p scripts/tutorials/00_sim/create_empty.py --viz kit
cd IsaacLab
mklink /D _isaac_sim %ISAACSIM_PATH%
isaaclab.bat -i
isaaclab.bat -p scripts\tutorials\00_sim\create_empty.py --viz kit

The tutorial command should open a black simulator viewport. Use the binary-installation troubleshooting links above if the source build does not launch.

Docker and HPC clusters#

Install Docker Engine, Docker Compose, and the NVIDIA Container Toolkit. Place the Isaac Lab checkout under /home when Docker was installed with Snap.

Clone Isaac Lab, then build, start, and enter the development container:

git clone git@github.com:isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
git clone https://github.com/isaac-sim/IsaacLab.git --branch develop
cd IsaacLab
./docker/container.py start
./docker/container.py enter base

The container uses /isaac-sim/python.sh and mounts the repository’s source and docs directories for live editing. Use ./docker/container.py stop to stop it and ./docker/container.py copy to retrieve logs, data, and documentation artifacts.

For HPC, build the image on a machine with Docker, convert it to an Apptainer/Singularity image, and submit it with the cluster’s SLURM or PBS workflow. Keep cluster-specific paths and scheduler settings outside the base image.

See Docker/Cloud for volume management, X11, image extensions, pre-built containers, worked examples, and complete cluster instructions.

Cloud workstations#

Isaac Automator provisions GPU workstations on AWS, GCP, Azure, and Alibaba Cloud. Install Docker, then clone and build Isaac Automator:

git clone https://github.com/isaac-sim/IsaacAutomator.git
cd IsaacAutomator
./build
./run ./deploy-aws

Replace deploy-aws with deploy-gcp, deploy-azure, or deploy-alicloud. Use --isaaclab and --isaacsim to select Git revisions. Connection details for SSH, noVNC, and NoMachine are stored in state/<deployment-name>/info.txt.

Manage the workstation from the Automator container:

./stop <deployment-name>
./start <deployment-name>
./upload <deployment-name>
./download <deployment-name>
./destroy <deployment-name>

Preserve the state directory because it contains the deployment metadata.

See Cloud workstations for credentials, provider options, connection methods, data transfer, and the complete workstation lifecycle.

Asset caching#

Isaac Lab assets are hosted on AWS S3. Enable Hub Workstation Cache when repeated downloads are slow or the workstation has intermittent network access.

Launch Isaac Sim:

./isaaclab.sh -s
isaaclab.bat -s

Select the CACHE: message in the upper-right corner and enable Hub Workstation Cache. The first load still downloads each asset; later runs use the local cache.

Isaac Sim cache status message.
Detailed asset caching and Nucleus migration notes

Asset Caching

Assets used in Isaac Lab are hosted on AWS S3 buckets on the cloud. Asset loading time can depend on your network connection and geographical location. In some cases, it is possible that asset loading times can be long when assets are pulled from the AWS servers.

If you run into cases where assets take a few minutes to load for each run, we recommend enabling asset caching following the below steps.

First, launch the Isaac Sim application:

./isaaclab.sh -s
isaaclab.bat -s

On the top right of the Isaac Lab or Isaac Sim app, look for the icon labeled CACHE:. You may see a message such as HUB NOT DETECTED or NEW VERSION DETECTED.

Click the message to enable Hub. Hub automatically manages local caching for Isaac Lab assets, so subsequent runs will use cached files instead of downloading from AWS each time.

Simulator with cache messaging.

Hub provides better control and management of cached assets, making workflows faster and more reliable, especially in environments with limited or intermittent internet access.

Note

The first time you run Isaac Lab, assets will still need to be pulled from the cloud, which could lead to longer loading times. Once cached, loading times will be significantly reduced on subsequent runs.

Using a Local Asset Root

Machines that are air-gapped or otherwise unable to reach the AWS S3 buckets can point Isaac Lab at a local or self-hosted copy of the assets. Set the ISAACSIM_ASSET_ROOT environment variable before launching:

export ISAACSIM_ASSET_ROOT=/path/to/Assets/Isaac/6.0
set ISAACSIM_ASSET_ROOT=C:\path\to\Assets\Isaac\6.0

The variable must point at the versioned asset root, that is the directory containing Isaac and NVIDIA. It takes precedence over the value shipped in the experience files, and it always applies to the Isaac Lab asset paths such as ISAAC_NUCLEUS_DIR. The Isaac Sim asset root resolves to the same value when you use one of the provided Isaac Lab experiences, because those load isaacsim.storage.native. A custom experience that does not build on one of them may leave the Isaac Sim asset root pointing at the cloud.

The environment variable is the only supported runtime override for the Isaac Lab asset paths. Isaac Lab resolves them once, when isaaclab.utils.assets is imported, so setting persistent.isaac.asset_root.default on the command line or changing it at runtime does not move them, even though Isaac Sim itself honors those forms. Editing persistent.isaac.asset_root.default in the experience file does work, because that is the value Isaac Lab reads when the variable is unset.

Note

If you previously redirected Isaac Lab assets by editing persistent.isaac.asset_root.cloud in an experience file, that edit no longer has any effect. Isaac Lab now reads persistent.isaac.asset_root.default first, and the shipped experiences leave it pointing at the cloud. Set ISAACSIM_ASSET_ROOT instead, or edit persistent.isaac.asset_root.default.

For instructions on downloading the asset pack, see the Isaac Sim asset documentation.

Nucleus

Before Isaac Sim 4.5, assets were accessed via the Omniverse Nucleus server, including setups with local Nucleus instances.

Warning

Starting with Isaac Sim 4.5, the Omniverse Nucleus server and Omniverse Launcher are deprecated. Existing Nucleus setups will continue to work, so if you have a local Nucleus server already configured, you may continue to use it.

Omniverse Nucleus and Omniverse Launcher are deprecated starting with Isaac Sim 4.5. Existing local Nucleus installations continue to work.

Troubleshooting#

If Isaac Sim fails to launch, use the Isaac Sim compatibility checker, review the Linux troubleshooting guide, or report the issue through the Isaac Sim forums.

See also

Installation docs are the source of truth for the isaaclab-setup-troubleshooting agent skill (skills/user/setup-troubleshooting/). When you change this page, update the skill so agent guidance stays in sync. See Agent Skills.