Supported Platform
Ubuntu and ROS2 are paired — each ROS2 release targets exactly one Ubuntu LTS:
Support for additional ROS distributions is on the roadmap.
Dependencies
Drift CLI works with the simulator + framework combinations below. You need at least one path installed — most users have both.ROS2 + Gazebo Harmonic path
For traditional ROS2 workflows: URDF / SDF, launch files, controllers, RViz, bridge to Gazebo Harmonic. Install ROS2 Humble on Ubuntu: official install guide — or ask Drift to install it after first launch:MuJoCo path
For fast headless / scriptable simulation: MJCF, Python control loops, contact-rich tasks, RL training.mujoco.viewer.launch_passive) works on Linux with a working display.
Isaac Sim path (optional)
For RTX-quality rendering, USD assets, and Omniverse pipelines. Unlike the two paths above, this one has a hard GPU requirement:
Datacenter cards without RT cores (A100, H100), CPU-only machines, and VMs or containers without GPU passthrough can’t render Isaac Sim. Drift can still author and validate the scene on those machines.
Ask Drift to walk you through the install if you don’t have it:
Additional Tools
Drift works in any terminal, including the integrated terminal in VS Code or Cursor with no extra setup.
colcon— build tool for ROS2 workspacesrosdep— dependency management for ROS2 packages
Verifying Your Setup
After installing, verify everything is reachable:Resource Protection
Simulators can exhaust GPU memory, thrash RAM, or hang a GPU driver — and freeze the machine with them. Drift guards every simulator launch so that can’t take your session down:- Before launch — if GPU memory or system RAM is already heavily used, Drift warns and lets you continue or cancel. Only one on-screen simulator runs at a time.
- While running — Drift watches the resource the render actually uses (GPU memory for a viewer, RAM for headless and software-rendered sims). On a sustained overload or a GPU stall it stops the simulator’s processes only; Drift itself and your other work are never touched.
- After a stop — an on-screen sim is relaunched headless once so the task can still finish.
DRIFT_GPU_GUARD_ENABLED=0.