OpenDMI
OpenDMI reads DMI/SMBIOS data and gives it back as structured data instead of text to parse: a C library, command line tools, machine-readable output and bindings for Go, Python and Rust. Every field has a code, a type and a unit, so the same data reads the same way in the terminal, in JSON and through the API.
Reference manual
The reference manual covers OpenDMI as a whole, and is available as a PDF too:
- Introduction
-
What OpenDMI is, what DMI/SMBIOS data is made of, and how to read the manual.
- Getting started
-
Building OpenDMI from sources, and the first steps with the tool and the library.
- Command line tool
-
The
opendmitool, its commands and the extension modules. - C library
-
Functions and types of the
libopendmilibrary, grouped by the headers declaring them. - Behind the scenes
-
How the library works inside, and how it is extended with structure types of its own.
- File formats
-
Layout of the YAML, JSON and XML documents the tool exports, and the schemas describing them.
- Specifications
-
Layout of the structures OpenDMI decodes, field by field, including the ones the vendors define.