#os #os-version #version

os-ver

Detect version number of operating system (Windows, macOS, iOS, Linux)

3 unstable releases

0.2.1 Oct 21, 2024
0.2.0 Oct 21, 2024
0.1.1 Jun 20, 2024
0.1.0 May 16, 2024

#6 in #os-version

Download history 11/week @ 2025-05-26 1/week @ 2025-06-02 6/week @ 2025-06-09 20/week @ 2025-06-16 25/week @ 2025-06-23 17/week @ 2025-06-30 23/week @ 2025-07-07 26/week @ 2025-07-14 39/week @ 2025-07-21 23/week @ 2025-07-28 25/week @ 2025-08-04 23/week @ 2025-08-11 34/week @ 2025-08-18 71/week @ 2025-08-25 107/week @ 2025-09-01 42/week @ 2025-09-08

258 downloads per month
Used in 12 crates (7 directly)

MIT/Apache

12KB
202 lines

os-ver

Version Documentation License License

This library can be used to detect version number of operating system, such as Windows, macOS, iOS and Linux.

Example

[dependencies]
os-ver = "0.2"
use os_ver::*;

#[cfg(target_os = "windows")]
if_greater_than!{windows::WIN11 => {
    // Code for Windows 11 or newer
} else {
    // Code for older versions
}};

#[cfg(target_os = "macos")]
if_greater_than!{macos::SONOMA => {
    // Code for macOS Sonoma or newer
} else {
    // Code for older versions
}};

if_greater_than!{(10, 0, 0, 1) => {
    // Code for OS version >= 10.0.0.1
}};
let version = os_version();

// Print OS version
println!("OS version: {:?}", version);

#[cfg(target_os = "windows")]
if version >= &windows::WIN11 {
    // Code for Windows 11 or newer 
} else if version >= &windows::WIN10 {
    // Code for Windows 10 or newer
} else if version >= &Version::new(10, 0, 0, 10586) {
    // Code for Windows 10 TH2 or newer
}

Dependencies

~0–1MB
~18K SLoC