Skip to main content

shrub_core/sys/
unix.rs

1pub mod async_pipe;
2pub mod commands;
3pub(crate) mod env;
4pub mod fd;
5pub mod fs;
6pub mod input;
7pub(crate) use crate::sys::os_pipes as pipes;
8pub(crate) mod network;
9pub mod poll;
10use crate::error;
11pub use crate::sys::tokio_process as process;
12pub mod resource;
13pub mod signal;
14pub(crate) use crate::sys::tokio_tasks as tasks;
15pub mod terminal;
16pub(crate) mod users;
17
18/// Platform-specific errors.
19#[derive(Debug, thiserror::Error)]
20pub enum PlatformError {
21    /// A system error occurred.
22    #[error("system error: {0}")]
23    ErrnoError(#[from] nix::errno::Errno),
24}
25
26impl From<nix::errno::Errno> for error::ErrorKind {
27    fn from(err: nix::errno::Errno) -> Self {
28        PlatformError::ErrnoError(err).into()
29    }
30}