• Stars
    star
    189
  • Rank 204,649 (Top 5 %)
  • Language
    Rust
  • License
    Apache License 2.0
  • Created over 7 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Rust crate to get the current user and environment.

WhoAmI Logo

Changelog | Source | Getting Started

tests GitHub commit activity GitHub contributors
Crates.io Crates.io Crates.io (recent)
Crates.io Docs.rs

Retrieve the current user and environment through simple functions.

Check out the documentation for examples.

Features

  • Get the user's full name
  • Get the user's username
  • Get the user's preferred language(s)
  • Get the devices's hostname
  • Get the devices's "pretty" or "fancy" name
  • Get the devices's desktop environment
  • Get the devices's OS name and version
  • Get the devices's platform name
  • Get the devices's CPU architecture and its width

Supported Platforms

WhoAmI targets all platforms that can run Rust, including:

  • Linux
  • Windows
  • Mac OS
  • BSD variants (FreeBSD, others)
  • Web Assembly
    • Mock implementation
    • Web Browser - DOM
    • WASI (Wasite/Quantii, others) mock implementation, full implementation planned later
    • Daku (Ardaku/Quantii, others) mock implementation, full implementation planned later
  • Illumos variants (SmartOS, OmniOS, others) may partially or fully work - but untested
  • Android may partially or fully work - but untested, planned later
  • iOS planned later
  • Redox planned later
  • Fuchsia planned later
  • Various game consoles planned later
  • Others? (make a PR or open an issue)

MSRV

WhoAmI 1.x.y targets Rust 1.40.0 stable and later, and the 1.x.y track will be maintained at least until the release of the Rust 2024 edition.

The MSRV will only be updated on major version bumps, and version 2.0.0 will target Rust 1.65.0 and later to make use of the let else syntax.

Binary

whome: whoami command RiR (Re-written in Rust) that depends on this crate.

License

Copyright © 2017-2023 The WhoAmI Contributors.

Licensed under any of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as described above, without any additional terms or conditions.

Help

If you want help using or contributing to this library, feel free to send me an email at [email protected].

More Repositories

1

pasts

Minimal asynchronous runtime for Rust
Rust
119
star
2

wavy

Asynchronous cross-platform real-time audio recording & playback.
Rust
84
star
3

stick

Rust library for platform-agnostic asynchronous gamepad, joystick, and flightstick interaction
Rust
76
star
4

fon

Rust audio types, resampling, converting, and mixing library.
Rust
42
star
5

fonterator

Load fonts as vector graphics in pure Rust with advanced text layout.
Rust
40
star
6

window

Minimal Rust code for creating a window with native headerbars.
Rust
19
star
7

ardaku

General-purpose application engine for WebAssembly. Implementation of the Daku API.
Rust
17
star
8

alloy

A fast and minimalistic image viewer forked from the now discontinued emulsion.
Rust
16
star
9

quantii

An operating system running the Ardaku engine.
Rust
14
star
10

whisk

Simple and fast async channels
Rust
14
star
11

smelling_salts

Start a thread to wake an async executor when the OS's I/O event notifier gathers that the hardware is ready.
Rust
10
star
12

caved

Codecs for Audio and Video Encoding and Decoding for Rust.
C
8
star
13

wari

Experimental WebAssembly Runtime for RISC processors.
Rust
6
star
14

audio

A collection of safe Rust audio encoder/decoder crates designed for usage with fon.
C
4
star
15

qiish

Builtin terminal for Quantii. Short for QuantII SHELL (note capitals)
Rust
3
star
16

dimi

Cross-Platform Async MIDI Instrument Library for Rust.
Rust
3
star
17

async_main

Runtime-agnostic async main proc macro
Rust
3
star
18

scour

Fuzzy search implementation in Rust
Rust
3
star
19

daku

Asynchronous host interface abstraction API for WebAssembly plugins, drivers, applications, and more!
Rust
2
star
20

dive

Dive Application Launcher / Desktop Environment For Ardaku
Rust
2
star
21

lookit

Rust crate to asynchronously get device connection events.
Rust
2
star
22

ember

Semantic filesystem implemented in Rust
Rust
2
star
23

nucleic

The Nucleic Desktop Environment
Rust
2
star
24

rvg

Resizable Vector Graphics (RVG) format.
Rust
2
star
25

sprengui

Rust Native-ish GUI Toolkit - Designed for use with Cala, but not limited to Cala.
Rust
2
star
26

traitful

A collection of helper attribute macros for trait patterns
Rust
1
star
27

human

Human interface devices abstraction
Rust
1
star
28

quantii-pack

Create a quantii installer toml
Rust
1
star
29

cruith

Cruith Maximum Contrast Theme; designed for usage with Sprengui.
1
star
30

mali-simulator

Scala
1
star
31

qiish-argparse

Argument parser for Quantii Shell (Qiish)
Rust
1
star
32

kbrd

Keyboard input
Rust
1
star
33

quantii-docs

Documentation for Quantii
1
star
34

wasite

WASI Terminal Environment API
Rust
1
star
35

clot

An opinionated mini argument parsing library that doesn't use macros.
Rust
1
star