18 unstable releases (7 breaking)

✓ Uses Rust 2018 edition

0.8.1 Feb 22, 2020
0.7.0 Dec 21, 2019
0.6.0 Oct 26, 2019
0.5.3 Jul 19, 2019
0.1.1 Aug 4, 2017

#8 in Operating systems

Download history 3295/week @ 2020-01-25 3722/week @ 2020-02-01 3864/week @ 2020-02-08 3183/week @ 2020-02-15 3352/week @ 2020-02-22 3733/week @ 2020-02-29 4999/week @ 2020-03-07 5202/week @ 2020-03-14 6651/week @ 2020-03-21 5628/week @ 2020-03-28 5303/week @ 2020-04-04 5474/week @ 2020-04-11 4705/week @ 2020-04-18 5076/week @ 2020-04-25 5201/week @ 2020-05-02 4088/week @ 2020-05-09

18,873 downloads per month
Used in 29 crates (24 directly)

MIT OR BSL-1.0

25KB
630 lines

whoami

docs.rs build status crates.io discord

About | Source | Changelog

WhoAmI

Retrieve the current user and environment.

Getting Started

Using the whoami crate is super easy! All of the exported items are simple functions with no parameters that return either a String or enum. The following example shows how to use all of the functions:

fn main() {
    print!(
        "user's full name     whoami::user():      {}\n\
         username             whoami::username():  {}\n\
         host's fancy name    whoami::host():      {}\n\
         hostname             whoami::hostname():  {}\n\
         platform             whoami::platform():  {}\n\
         operating system     whoami::os():        {}\n\
         desktop environment  whoami::env():       {}\n\
         ",
        whoami::user(),
        whoami::username(),
        whoami::host(),
        whoami::hostname(),
        whoami::platform(),
        whoami::os(),
        whoami::env(),
    );
}

Features

  • Get the user's full name
  • Get the user's username
  • Get the computer's hostname
  • Get the computer's fancy name
  • Get the computer's desktop environment
  • Get the computer's OS name and version
  • Get the computer's platform name
  • Works on Linux, Windows, Mac OS, and Web Assembly

Binary

whome: replacement of the whoami command that depends on this crate.

TODO

  • Support iOS / Android / Nintendo Switch (and other consoles) / other OS's.

Contributing

Contributors are always welcome! Whether it is a bug report, bug fix, feature request, feature implementation or whatever. Don't be shy about getting involved. I always make time to fix bugs, so usually a patched version of the library will be out soon after a report. Features take me longer, though. I'll also always listen to any design critiques you have. If you have any questions you can email me at jeronlau@plopgrizzly.com. Otherwise, here's a link to the issues on GitHub.

And, as always, make sure to always follow the code of conduct. Happy coding!

License

This repository is licensed under either of the following:

at your option.

Contribution Licensing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above without any additional terms or conditions.

No runtime deps