57 lines
1.7 KiB
Markdown
57 lines
1.7 KiB
Markdown
# hostname
|
|
|
|
[](https://crates.io/crates/hostname)
|
|
[](https://docs.rs/hostname)
|
|
[](https://github.com/djc/hostname/actions)
|
|

|
|

|
|

|
|
|
|
> Cross-platform system's host name functions in Rust
|
|
|
|
## Supported platforms
|
|
|
|
- [POSIX-compliant](https://en.wikipedia.org/wiki/POSIX#POSIX-oriented_operating_systems) systems\
|
|
(Linux, macOS, Android, FreeBSD, OpenBSD, NetBSD, Solaris, Redox, and so on)
|
|
- Windows
|
|
|
|
## Rust version requirements
|
|
|
|
Since version `0.4.0` this crate requires Rust version `1.74` or greater.
|
|
|
|
This version is explicitly tested in CI
|
|
and may be bumped in any major or minor release as needed.\
|
|
Maintaining compatibility with older compilers is a priority though,
|
|
so the bar for bumping the minimum supported version is set very high.
|
|
Any changes to the supported minimum version will be called out in the release notes.
|
|
|
|
## Usage
|
|
|
|
Add the following dependency to your Cargo manifest:
|
|
|
|
```toml
|
|
[dependencies]
|
|
hostname = "^0.4"
|
|
```
|
|
|
|
Crate API provides two simple functions for retrieving and setting the system's host name:
|
|
|
|
```rust
|
|
use std::io;
|
|
|
|
fn main() -> io::Result<()> {
|
|
// Retrieve the hostname
|
|
dbg!(hostname::get()?);
|
|
|
|
// And set a new one
|
|
hostname::set("potato")?;
|
|
|
|
Ok(())
|
|
}
|
|
```
|
|
|
|
## License
|
|
|
|
hostname is primarily distributed under the terms of the MIT license
|
|
([LICENSE](LICENSE) or https://opensource.org/license/mit).
|