zbus_systemd 0.25901.0

A pure-Rust library to interact with systemd DBus services
Documentation
# How to contribute

This document provides an overview and some general notes about all the code
in this repository.

## Motivations and trade-offs

The `zbus_systemd` library tries to achieve the following goals:

 * provide coverage for all systemd DBus services in a single crate
 * build on top of a Rust-native DBus stack, thanks to `zbus`
 * statically generate library code directly from systemd definitions
 * directly rely on generated interfaces

## Code generation

This project uses [just](https://github.com/casey/just) to perform code-generation.
To refresh all interfaces after making some changes, you can directly run `just` in the top directory.

All modules are generated from the corresponding systemd doc-page.
The code-generator source lives under `codegen/`, and it can be configured through the `codegen.toml` file.

The interfaces are re-generated on each major systemd release, in a process that involves:

 * updating the git submodule at `codegen/systemd/` to the latest version
 * parsing all the relevant XML files `codegen/systemd/man/`
 * writing a `generated.rs` for each service module
 * running `cargo fmt` on the whole crate