libmacchina

A library providing access to all sorts of system information. Linux • macOS • Windows • NetBSD • Android • OpenWrt version docs

Usage

Add the following to your project's Cargo.toml file:

toml libmacchina = "3"

Examples

```rust // Let's import two of the several available types. use libmacchina::{GeneralReadout, MemoryReadout};

fn main() { // Let's import the GeneralReadout trait so we // can fetch some general information about the host. use libmacchina::traits::GeneralReadout as _;

let general_readout = GeneralReadout::new();

// There are many more metrics we can query
// i.e. username, distribution, terminal, shell, etc.
let cpu_cores = general_readout.cpu_cores().unwrap(); // 8 [logical cores]
let cpu = general_readout.cpu_model_name().unwrap();  // Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz
let uptime = general_readout.uptime().unwrap();       // 1500 [in seconds]

// Now we'll import the MemoryReadout trait to get an
// idea of what the host's memory usage looks like.
use libmacchina::traits::MemoryReadout as _;

let memory_readout = MemoryReadout::new();

let total_mem = memory_readout.total(); // 20242204 [in kB]
let used_mem = memory_readout.used();   // 3894880 [in kB]

}

```