# qsu
_qsu_ ("kazoo") is a crate for wrapping applications in service
subsystems such as
[Windows Service](https://en.wikipedia.org/wiki/Windows_service),
[systemd](https://en.wikipedia.org/wiki/Systemd) or
[launchd](https://en.wikipedia.org/wiki/Launchd).
The primary objective is to allow service subsystem integration without the
need to to get bogged down in platform-specific details. Beyond that its goal
is to offer "batteries included" service-related utilities.
## Features
- Supports `sync` and `async` (using tokio) service applications.
- Includes service registration helpers, which can:
- generate systemd unit files.
- generate launchd plist files.
- register/deregister the services on Windows.
- Includes an optional argument parser, built on clap:
- Provides a common interface for running, installing and uninstallating
services.
- Allows running a service application either as a foreground process (useful
for development) or with proper service subsystem integration (for
production).
## Limitations
qsu is opinionated, and is specifically designed for some kind of "normal
service application".