Topics
Quick Start for Contributors
-
Clone the repository
-
Build the project
-
Run the test suite
-
Check formatting and lints
Development Environment
Prerequisites
- Rust (stable toolchain)
- Platform-specific dependencies:
- Linux:
libdbus-1-dev,pkg-config - macOS:
dbus,pkg-config(via Homebrew)
- Linux:
Building
Code Standards
- Error Handling: Use
NonoErrorfor all errors; propagate with? - Unwrap Policy: Never use
.unwrap()or.expect()- enforced by clippy - Unsafe Code: Restricted to FFI; must include
// SAFETY:documentation - Path Security: All paths must be validated and canonicalized