nixinfo
A lib crate for gathering system info such as cpu, distro, environment, kernel, etc in Rust.
To use: nixinfo = "0.2.8" in your Cargo.toml.
Currently supported
- CPU model and temperature (Celsius)
nixinfo::cpu()->Result<String>nixinfo::temp()->Result<String>
- Device name
nixinfo::device()->Result<String>
- Distro name
nixinfo::distro()->Result<String>
- Environment (e.g. DE or WM)
nixinfo::environment()->Result<String>
- env variables
nixinfo::env("VARIABLE")->Option<String>
- GPU info (requires
lspciandgrepto be installed for now until I find a pure rust solution)nixinfo::gpu()->Result<String>
- Hostname
nixinfo::hostname()->Result<String>
- Kernel
nixinfo::kernel()->Result<String>
- Total memory in MBs
nixinfo::memory()->Result<String>
- Music info (only mpd is supported, requires
musicfeature to be enabled)nixinfo::music()->String
- Package counts (managers supported are apk, apt, dnf, dpkg, eopkg, pacman, pip, portage, rpm, and xbps)
nixinfo::packages("manager")->Result<String>
- Terminal being used (unless tmux is used, in which case N/A will be outputted because reasons)
nixnfo::terminal()->Result<String>
- Uptime of device
nixinfo::uptime()->Result<String>
TODO
- Obtain used memory in addition to total memory
- Support *BSD