Adds quick installation and supporting doc pages#5002
Adds quick installation and supporting doc pages#5002ooctipus merged 4 commits intoisaac-sim:developfrom
Conversation
Add a concise Quick Installation guide alongside the existing Quickstart Guide, plus installation_guide, configurations, and robots reference pages in the Getting Started toctree.
Greptile SummaryThis docs-only PR adds five new reference pages to the Isaac Lab documentation — Key issues found:
Confidence Score: 3/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[docs/index.rst\nGetting Started toctree] --> B[quickstart.rst\nexisting]
A --> C[quick_installation.rst\nnew — install + run steps]
A --> D[installation_guide.rst\nnew — optional add-ons,\nselective install, troubleshooting]
A --> E[configurations.rst\nnew — RL concepts,\nenvironments, configclass]
A --> F[robots.rst\nnew — robot config reference]
A --> G[own-project/index ...]
C -->|references| D
E -->|cross-ref :ref:| F
D2[installation.md\northan: true\nnot in toctree] -.->|direct URL only| D
Last reviewed commit: 6a27e95 |
docs/source/setup/robots.rst
Outdated
| are what informs vectorization, and it's the ``InitialStateCfg`` that describes the state of the joints of our robot when it gets created in each environment. The | ||
| ``ImplicitActuatorCfg`` defines the joints of the robot using the default actuation model determined by the joint time. Not all joints need to be actuated, but you |
There was a problem hiding this comment.
Typo: "joint time" should be "joint type"
The sentence reads "the default actuation model determined by the joint time", but the correct phrase here is "joint type". The ImplicitActuatorCfg uses the joint's physics properties (its type), not a time value, to determine how actuation is modeled.
| are what informs vectorization, and it's the ``InitialStateCfg`` that describes the state of the joints of our robot when it gets created in each environment. The | |
| ``ImplicitActuatorCfg`` defines the joints of the robot using the default actuation model determined by the joint time. Not all joints need to be actuated, but you | |
| The | |
| ``ImplicitActuatorCfg`` defines the joints of the robot using the default actuation model determined by the joint type. Not all joints need to be actuated, but you |
docs/source/setup/configurations.rst
Outdated
| The various backends of Isaac Lab are accessed through their corresponding ``train.py`` and ``play.py`` scripts located in the ``isaaclab/scripts/reinforcement_learning`` directory. | ||
| Invoking these scripts will require a **Task Name** and a corresponding **Entry Point** to the gymnasium API. For example |
There was a problem hiding this comment.
Incorrect script path in prose description
The text says scripts are located in the isaaclab/scripts/reinforcement_learning directory, but the actual repository path (confirmed from the codebase structure) is scripts/reinforcement_learning. The isaaclab/ prefix does not exist and would mislead users trying to find the scripts.
| The various backends of Isaac Lab are accessed through their corresponding ``train.py`` and ``play.py`` scripts located in the ``isaaclab/scripts/reinforcement_learning`` directory. | |
| Invoking these scripts will require a **Task Name** and a corresponding **Entry Point** to the gymnasium API. For example | |
| The various backends of Isaac Lab are accessed through their corresponding ``train.py`` and ``play.py`` scripts located in the ``scripts/reinforcement_learning`` directory. |
| Selective Install | ||
| ------------------- | ||
|
|
There was a problem hiding this comment.
RST heading hierarchy creates incorrect TOC structure
Because ^ was introduced first (for the three "Isaac Sim" / "OVRTX" sections) and establishes heading level 2, any subsequent use of - becomes heading level 3. This means:
Selective Install(line 55,-) is rendered as a subsection of "OVRTX Rendering", not as a sibling.Running Installation Tests(line 120,-) andTroubleshooting(line 128,-) are rendered as subsections of "Conda Alternative", not as top-level sections.
The sections Selective Install, Conda Alternative, Running Installation Tests, and Troubleshooting all appear to be intended as level-2 siblings of the Isaac Sim sections. To achieve this, change their underlines from --- to ^^^:
Selective Install
^^^^^^^^^^^^^^^^^Running Installation Tests
^^^^^^^^^^^^^^^^^^^^^^^^^^Troubleshooting
^^^^^^^^^^^^^^^| .. code-block:: bash | ||
|
|
||
| # Install uv | ||
| curl -LsSf https://astral.sh/uv/install.sh | sh | ||
|
|
||
| .. code-block:: bash | ||
|
|
||
| # Clone Isaac Lab | ||
| git clone https://github.com/isaac-sim/IsaacLab.git | ||
| cd IsaacLab | ||
|
|
||
| .. code-block:: bash | ||
|
|
||
| # Create environment and install | ||
| uv venv .venv --python 3.12 | ||
| source .venv/bin/activate | ||
| ./isaaclab.sh -i | ||
|
|
||
| .. code-block:: bash | ||
|
|
||
| # Run training | ||
| ./isaaclab.sh -p scripts/benchmarks/benchmark_rlgames.py \ | ||
| --task=Isaac-Repose-Cube-Shadow-Vision-Benchmark-Direct-v0 \ | ||
| --headless --enable_cameras --num_envs=1225 --max_iterations=10 \ | ||
| presets=newton,newton_renderer,depth |
There was a problem hiding this comment.
Fragmented install steps hinder one-shot copy-paste
The four sequential installation steps are split across four separate .. code-block:: bash directives. Users following a quick-start guide typically expect to copy and run a single block. Consolidating these into one block (as done in installation.md) avoids confusion about ordering and makes it easier to automate:
.. code-block:: bash
# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone Isaac Lab
git clone https://github.com/isaac-sim/IsaacLab.git
cd IsaacLab
# Create environment and install
uv venv .venv --python 3.12
source .venv/bin/activate
./isaaclab.sh -i
# Run training
./isaaclab.sh -p scripts/benchmarks/benchmark_rlgames.py \
--task=Isaac-Repose-Cube-Shadow-Vision-Benchmark-Direct-v0 \
--headless --enable_cameras --num_envs=1225 --max_iterations=10 \
presets=newton,newton_renderer,depthNote: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
AntoineRichard
left a comment
There was a problem hiding this comment.
Need to fix:
/home/runner/work/IsaacLab/IsaacLab/docs/source/setup/installation_guide.rst:4: WARNING: Title underline too short.
Rather than doing:
.. note::
**Isaac Lab 3.0 supports kit-less installation.** You can install and use Isaac Lab with the
Newton physics backend *without* installing Isaac Sim. Simply clone Isaac Lab and run:
.. code-block:: bash
./isaaclab.sh --install # or ./isaaclab.sh -i
This installs the core Isaac Lab packages and the Newton physics backend. Isaac Sim is **not**
required for this mode. See `Kit-less Installation`_ below for which features are available
without Isaac Sim.
When you need full simulation features — including PhysX, ROS, URDF/MJCF
importers — install Isaac Sim via pip (see the
:doc:`pip_installation` guide).
In docs/source/setup/installation/index.rst we could link the quick installation guide.
There was a problem hiding this comment.
docs/source/how-to
docs/source/setup/installation.md
Outdated
There was a problem hiding this comment.
Remove the md file
|
|
||
| - **OS:** Ubuntu 22.04+ (Linux x86_64) or Windows 11 (x86_64) | ||
| - **RAM:** 32 GB or more | ||
| - **GPU:** NVIDIA GPU with 16 GB+ VRAM (for Kit/RTX rendering) |
There was a problem hiding this comment.
GPU: NVIDIA GPU with 16 GB+ VRAM recommended for Kit/RTX rendering
| - **RAM:** 32 GB or more | ||
| - **GPU:** NVIDIA GPU with 16 GB+ VRAM (for Kit/RTX rendering) | ||
| - **Drivers:** NVIDIA driver 580.65.06+ (Linux), 580.88+ (Windows) | ||
| - **Python:** 3.11 (Isaac Sim 5.x) or 3.12 (Isaac Sim 6.x, when available) |
There was a problem hiding this comment.
Python: 3.12 (Isaac Sim 6.x, when available)
| Isaac Sim (Kit/RTX rendering) | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| .. code-block:: bash | ||
|
|
||
| ./isaaclab.sh -i isaacsim |
There was a problem hiding this comment.
Could have a bit more text to introduce what the user needs to do. And then point to the complete doc if they want to do something more complex.
| Conda Alternative (Kit Path Only) | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| .. code-block:: bash | ||
|
|
||
| conda create -n env_isaaclab python=3.12 | ||
| conda activate env_isaaclab | ||
| pip install "isaacsim[all,extscache]==6.0.0" --extra-index-url https://pypi.nvidia.com | ||
| pip install -U torch==2.10.0 torchvision==0.25.0 --index-url https://download.pytorch.org/whl/cu128 | ||
| git clone https://github.com/isaac-sim/IsaacLab.git && cd IsaacLab | ||
| ./isaaclab.sh -i |
| Troubleshooting | ||
| ------------------- | ||
|
|
||
| ``ModuleNotFoundError: No module named 'pip'`` | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Your venv was created without pip. The install system auto-detects and uses | ||
| ``uv pip`` when pip is absent, so this error should no longer occur with the | ||
| latest Isaac Lab. | ||
|
|
||
| ``ModuleNotFoundError: No module named 'isaacsim'`` | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| You are running a script that requires Isaac Sim, but it is not installed. | ||
| Either: | ||
|
|
||
| - Install Isaac Sim: ``./isaaclab.sh -i isaacsim``, or | ||
| - Use a Newton-based task with ``presets=newton --visualizer newton`` (Kit-less path) | ||
|
|
||
| ``ModuleNotFoundError: No module named 'isaaclab_physx'`` or ``'isaaclab_ov'`` | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| These config packages are auto-installed by ``./isaaclab.sh -i``. If using a | ||
| selective install, re-run with the default ``./isaaclab.sh -i`` to get all | ||
| packages. | ||
|
|
||
| ``ModuleNotFoundError: No module named 'isaaclab_assets'`` | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Include ``assets`` in your install command, or use ``./isaaclab.sh -i`` to install | ||
| everything. | ||
|
|
||
| ``ModuleNotFoundError: No module named 'rsl_rl'`` | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Include the RL framework: ``./isaaclab.sh -i rsl_rl``, or use | ||
| ``./isaaclab.sh -i`` to install all frameworks. | ||
|
|
||
| Crash in ``libusd_tf`` / USD Symbol Collision with OVRTX | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| If you see a crash involving ``libusd_tf-*.so`` and conflicting USD versions | ||
| (e.g. ``pxrInternal_v0_25_5`` vs ``pxrInternal_v0_25_11``): | ||
|
|
||
| 1. Ensure ``LD_PRELOAD`` is set to ovrtx's ``libcarb.so`` (see OVRTX section) | ||
| 2. Ensure ``isaacsim`` / ``omniverse-kit`` is **not** installed in the same | ||
| environment — their bundled USD libraries conflict with ovrtx's | ||
|
|
||
| Visualizer Not Appearing | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| If ``--visualizer newton`` shows no window, you may be missing ``imgui-bundle``: | ||
|
|
||
| .. code-block:: bash | ||
|
|
||
| uv pip install imgui-bundle | ||
|
|
||
| For ``viser``, check the terminal for a URL (e.g. ``http://localhost:8012``). | ||
|
|
||
| ``GLIBC Version Too Old`` | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Isaac Sim pip packages require GLIBC 2.35+. Check with ``ldd --version``. | ||
| Ubuntu 22.04+ satisfies this. For older distributions, use the | ||
| `binary installation <https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_workstation.html>`_ | ||
| method for Isaac Sim. |
There was a problem hiding this comment.
move the troubleshooting. And link troubleshooting instead.
|
|
||
| The ``presets=`` Hydra override selects the physics backend and renderer at runtime: | ||
|
|
||
| .. code-block:: bash | ||
|
|
||
| # Newton (Kit-less) | ||
| ./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py \ | ||
| --task Isaac-Cartpole-Direct-v0 \ | ||
| --num_envs 4096 \ | ||
| presets=newton \ | ||
| --visualizer newton | ||
|
|
||
| # PhysX (Kit — requires Isaac Sim) | ||
| ./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py \ | ||
| --task Isaac-Cartpole-Direct-v0 \ | ||
| --num_envs 4096 \ | ||
| presets=physx | ||
|
|
||
| # Newton with a specific visualizer | ||
| ./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py \ | ||
| --task Isaac-Cartpole-Direct-v0 \ | ||
| --num_envs 4096 \ | ||
| presets=newton \ | ||
| --visualizer viser | ||
|
|
||
| Kit-less visualizer options: ``newton``, ``rerun``, ``viser``. Multiple can be | ||
| combined: ``--visualizer newton,rerun``. |
There was a problem hiding this comment.
Link the hydra preset doc.
There was a problem hiding this comment.
Might be good to link do to explain how the backend switching works, and how the maybe some other doc about env training, and the visualizer doc + render as well.
There was a problem hiding this comment.
THis one we need to check what's the gap between it and the other installation files/guidelines that already exists, and modify these, rather than keeping this file.
There was a problem hiding this comment.
This will need to be adjusted.
looks like all changes requested is applied
## Summary - Adds a concise **Quick Installation** page (`quick_installation.rst`) with copy-paste install + run steps - Adds `installation_guide.rst`, `configurations.rst`, and `robots.rst` reference pages - Registers all new pages in the Getting Started toctree Split from isaac-sim#4966 per reviewer feedback (docs-only changes). ## Test plan - [ ] Build docs with `./isaaclab.sh -d` and verify new pages render correctly - [ ] Verify toctree links resolve without warnings - [ ] Confirm `quickstart.rst` (upstream) is unchanged --------- Co-authored-by: Antoine Richard <antoiner@nvidia.com>
Summary
quick_installation.rst) with copy-paste install + run stepsinstallation_guide.rst,configurations.rst, androbots.rstreference pagesSplit from #4966 per reviewer feedback (docs-only changes).
Test plan
./isaaclab.sh -dand verify new pages render correctlyquickstart.rst(upstream) is unchanged