Sylvestre Ledru fa1c4fec53 Use README.md as crate documentation via include_str!
Replace the duplicated inline doc comment with #![doc = include_str!("../README.md")]
to keep documentation DRY. This resolves the TODO from 2023-05-28.
2026-03-30 19:14:24 +02:00
2024-04-09 23:15:11 +02:00
2026-03-30 16:15:01 +02:00
2023-02-13 22:16:00 -06:00
2026-03-30 15:38:27 +02:00

platform-info

Crates.io License CodeCov

A simple cross-platform way to get information about the currently running system.

Examples

This simple example:

// examples/ex.rs
// * use `cargo run --example ex` to execute this example

// spell-checker:ignore (API) nodename osname sysname

use platform_info::*;

fn main() {
    let info = PlatformInfo::new().expect("Unable to determine platform info");
    // println!("info={:#?}", info);

    println!("{}", info.sysname().to_string_lossy());
    println!("{}", info.nodename().to_string_lossy());
    println!("{}", info.release().to_string_lossy());
    println!("{}", info.version().to_string_lossy());
    println!("{}", info.machine().to_string_lossy());
    println!("{}", info.processor().to_string_lossy());
    println!("{}", info.osname().to_string_lossy());
}

should display something like:

Linux
hostname
5.10.0-8-amd64
#1 SMP Debian 5.10.46-4 (2021-08-03)
x86_64
x86_64
GNU/Linux

Using cargo run --example ex will build and execute this example code.

WASI

To cross-compile and run the example under WASI, first install wasmtime:

curl https://wasmtime.dev/install.sh -sSf | bash

Then build and run:

cargo build --target wasm32-wasip1 --example ex
wasmtime target/wasm32-wasip1/debug/examples/ex.wasm

This should display:

wasi
localhost
0.0.0
0.0.0
wasm32
wasm32
WASI

Other examples can be found in the examples directory.

License

platform-info is licensed under the MIT License.

S
Description
Languages
Rust 100%