pub mod protocol; use std::{ os::unix::prelude::MetadataExt, path::{Path, PathBuf}, }; pub use protocol::*; pub fn socket_path() -> PathBuf { Path::new("/run/user") .join(format!("{}", getuid())) .join("calendar") } fn getuid() -> u32 { std::fs::metadata("/proc/self").unwrap().uid() } #[macro_export] macro_rules! version { () => { format!( "{} {} (lib{})", env!("CARGO_PKG_NAME"), env!("CARGO_PKG_VERSION"), karlcommon::own_version() ) }; } pub fn own_version() -> String { format!("{} {}", env!("CARGO_PKG_NAME"), env!("CARGO_PKG_VERSION")) }