62 stable releases
new 2.1.4 | Nov 18, 2024 |
---|---|
2.0.9 | Sep 26, 2024 |
2.0.2 | Jun 22, 2024 |
1.9.2 | Feb 22, 2024 |
0.5.0 |
|
#191 in Operating systems
366 downloads per month
10KB
200 lines
This library is a work in progress
A simple Rust crate for host discovery
Basic Usage
use host_discovery::{OSProfile, gpu};
fn main() {
// linux example
//let profile = OSProfile::new().distro().build();
// and/or
//let profile = OSProfile::new().is_wsl().build();
let profile = OSProfile::new().win_edition().build();
let arch = profile.arch;
let os = profile.os;
let edition = profile.win_edition;
let gpu = gpu().expect("Unreachable");
println!(
" Architecture: {}\n OS: {}\n Edition: {}\n GPU: {}",
arch,
os,
edition.unwrap(),
gpu,
)
}
Roadmap
- Reduce dependency load by implementing a smaller utility crate for enumerating devices.
- The implementation should be flexible and cross-platform
Current Features
- OS
- Architecture
- Hostname
- Windows Edition
- WSL Detection
- Linux Distro
- GPU Enumeration (Crossplatform via Wgpu)
- CPU Detection (x86/64)
Dependencies
~4–35MB
~534K SLoC