# Install urdfdom with Homebrew, Nix, apt

Unified Robot Description Format (URDF) parser. Version 6.0.1 via Homebrew; verified 2026-07-30. Also installable with debian: sudo apt install liburdfdom-dev.

## Install

```sh
sudo av install brew:urdfdom
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install urdfdom
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#urdfdom
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ur/urdfdom/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- Debian apt (92%):

```sh
sudo apt install liburdfdom-dev
```

  Evidence: Debian stable package indexes: liburdfdom-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

## Package facts

- **Package key:** brew:urdfdom
- **Package manager:** Homebrew
- **Version:** 6.0.1
- **Source summary:** Unified Robot Description Format (URDF) parser
- **Homepage:** <https://wiki.ros.org/urdf/>
- **Repository:** <https://github.com/ros/urdfdom>
- **Last updated:** 2026-07-30T11:25:01Z
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- check_urdf (alias)
- urdf_mem_test (alias)
- urdf_to_graphviz (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 6.0.1
## Project history and usage

urdfdom is the ROS ecosystem's standalone C++ parser and data-model library for the Unified Robot Description Format. Its README describes it as providing core data structures and XML parsing for populating those structures from URDF robot files.

### Project history

The public GitHub repository was created in 2013, and the README reflects its role as a library that can be built independently but is also released through the ROS packaging process. The README's ROS section explains that ROS release packaging supplies a `package.xml` during release, with examples from the ROS Hydro era.

### Adoption history

urdfdom's adoption is tied to ROS and robot-description workflows: robot models, links, joints, materials, visual and collision geometry, transmissions, and Gazebo extensions. The official ROS docs publish generated package documentation and changelogs, while the batch input lists Homebrew, Debian, Ubuntu, and Nix packages, including Debian/Ubuntu's `liburdfdom-dev` naming.

### How it is used

Package users encounter urdfdom as both a development library and a set of small validation/conversion tools such as `check_urdf` and `urdf_to_graphviz`. Maintainers often care about ABI compatibility because the README warns that installing from source over ROS Debian packages can break future `/opt/ros` updates.

### Why package nerds care

urdfdom is important in package-manager niches because it is a small library with a large robotics dependency footprint. It bridges ROS release tooling, Debian-style development packages, Homebrew robotics stacks, CMake consumers, and the evolving URDF file format.

### Timeline

- 2013: Public GitHub repository metadata records the urdfdom repository creation.
- ROS Hydro era: README documented pulling ROS release `package.xml` metadata for source builds.
- 2025: 4.0.3 removed deprecated code and ROS 1 workflows.
- 2026: 5.1.0 added URDF specification 1.1 support.
- 2026: 6.0.0 added URDF specification 1.2 support.

### Related projects

- The official docs link urdfdom with urdfdom_headers. The README points to the ROS URDF specification and to ROS release repositories used for distribution metadata.

### Sources

- <https://docs.ros.org/en/rolling/p/urdfdom/>
- <https://github.com/ros/urdfdom/blob/rolling/CHANGELOG.rst>
- <https://github.com/ros/urdfdom/blob/rolling/README.md>
- input source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- Debian apt - liburdfdom-dev - 4.0.0-3+b1: normalized package name match | Debian stable package indexes: liburdfdom-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | URDF DOM - development files | https://github.com/ros/urdfdom
- Debian apt - liburdfdom-model-state4.0 - 4.0.0-3+b1: normalized package name match | Debian stable package indexes: liburdfdom-model-state4.0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | URDF DOM - model state library | https://github.com/ros/urdfdom
- Debian apt - liburdfdom-model4.0 - 4.0.0-3+b1: normalized package name match | Debian stable package indexes: liburdfdom-model4.0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | URDF DOM - model library | https://github.com/ros/urdfdom
- Debian apt - liburdfdom-sensor4.0 - 4.0.0-3+b1: normalized package name match | Debian stable package indexes: liburdfdom-sensor4.0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | URDF DOM - sensor library | https://github.com/ros/urdfdom
- Debian apt - liburdfdom-tools - 4.0.0-3+b1: normalized package name match | Debian stable package indexes: liburdfdom-tools from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | URDF DOM - tools | https://github.com/ros/urdfdom
- Debian apt - liburdfdom-world4.0 - 4.0.0-3+b1: normalized package name match | Debian stable package indexes: liburdfdom-world4.0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | URDF DOM - world library | https://github.com/ros/urdfdom
- Nix - urdfdom: normalized package name match | nixpkgs package indexes: pkgs/by-name/ur/urdfdom/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - liburdfdom-dev - 4.0.0-0ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: liburdfdom-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | URDF DOM - development files | https://github.com/ros/urdfdom
- Ubuntu apt - liburdfdom-model-state4.0 - 4.0.0-0ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: liburdfdom-model-state4.0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | URDF DOM - model state library | https://github.com/ros/urdfdom
- Ubuntu apt - liburdfdom-model4.0 - 4.0.0-0ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: liburdfdom-model4.0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | URDF DOM - model library | https://github.com/ros/urdfdom
- Ubuntu apt - liburdfdom-sensor4.0 - 4.0.0-0ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: liburdfdom-sensor4.0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | URDF DOM - sensor library | https://github.com/ros/urdfdom
- Ubuntu apt - liburdfdom-tools - 4.0.0-0ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: liburdfdom-tools from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | URDF DOM - tools | https://github.com/ros/urdfdom
- Ubuntu apt - liburdfdom-world4.0 - 4.0.0-0ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: liburdfdom-world4.0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | URDF DOM - world library | https://github.com/ros/urdfdom


## Combined YAML source

View the package source record on GitHub. [combined/urdfdom.yml](https://github.com/mxcl/pkgdb/blob/main/combined/urdfdom.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
