Skip to content

Latest commit

 

History

History
72 lines (49 loc) · 2.76 KB

File metadata and controls

72 lines (49 loc) · 2.76 KB

Rust Nix Linux

Hardware Report

Automated infrastructure discovery tool built with hexagonal architecture.

Generates structured hardware inventory reports in TOML/JSON format. Designed for CMDB population, infrastructure auditing, and bare-metal server management at scale.

Platforms: Linux, macOS | Architectures: x86_64, ARM64 | GPUs: NVIDIA (including Blackwell)

Table of Contents

What Does This Do?

  • CPU Discovery - Model, sockets, cores, threads, NUMA topology, cache hierarchy
  • Memory Detection - Total capacity, module details, DDR type, speed, slot mapping
  • Storage Enumeration - NVMe/SSD/HDD detection, capacity, serial numbers, SMART status
  • GPU Detection - NVIDIA via nvidia-smi, memory, PCI topology, UUIDs
  • Network Interfaces - MAC/IP, speed (1G-400G+), InfiniBand, driver info
  • System Information - BIOS, BMC/IPMI, chassis serial, motherboard specs

Quick Start

Recommended: Nix build (automatically handles all dependencies)

# Install Nix (if not already installed)
curl -L https://install.determinate.systems/nix | sh -s -- install
. /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh

# Clone, build, and run
git clone https://github.com/sfcompute/hardware_report.git
cd hardware_report
nix build
sudo ./result/bin/hardware_report

Output: <chassis_serial>_hardware_report.toml

Pre-built binaries: Linux x86_64 and aarch64 tarballs on GitHub Releases

Other installation methods: See docs/INSTALLATION.md

Documentation

Document Description
docs/INSTALLATION.md All installation methods (Nix, Cargo, pre-built releases)
docs/ARCHITECTURE.md Hexagonal architecture overview
docs/API.md Library API reference
docs/DEPLOYMENT.md Production deployment guide

Contributing

nix develop
cargo test && cargo clippy && cargo fmt

License

MIT


Built for infrastructure management at scale | Issues | Releases