39 lines
1.7 KiB
Markdown
39 lines
1.7 KiB
Markdown
# SNot: Simple NOTification
|
|
|
|
A simple [desktop notification](https://wiki.archlinux.org/title/Desktop_notifications) server/daemon using the [`dbus`](https://dbus.freedesktop.org/doc/dbus-tutorial.html) protocol. SNot listens for notifications on the [`org.freedesktop.Notifications`](https://specifications.freedesktop.org/notification-spec/latest/basic-design.html) interface, and prints them to the console.
|
|
Inspired by [`tiramisu`](https://github.com/Sweets/tiramisu)
|
|
|
|
## Features
|
|
- Prints desktop notifications to the console(or a file, if you redirect it) as text
|
|
- Do one thing and do it well([DOTADIW](https://en.wikipedia.org/w/index.php?title=Unix_philosophy&useskin=vector#Do_One_Thing_and_Do_It_Well)) & [KISS](https://en.wikipedia.org/wiki/KISS_Principle) principle: no extra complicated features
|
|
- (Not really a feature) Written in [`rust`](https://www.rust-lang.org/) using the [`zbus`](https://docs.rs/zbus/latest/zbus/) crate
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
snot --help
|
|
Usage: snot [-f <format>] [-v]
|
|
|
|
Print desktop notifications
|
|
|
|
Options:
|
|
-f, --format select output format: r(rson), j(json, default), p(plain)
|
|
-v, --verbose verbose mode
|
|
--help display usage information
|
|
```
|
|
|
|
## Supported formats
|
|
|
|
- Plain text - Print the output text. (✓ Just print it)
|
|
- [`json`](https://json.org) - This output can be parsed by other programs
|
|
- [`rson`](https://github.com/rson-rs/rson) - A more sensible alternative to json
|
|
|
|
## Upcoming feature
|
|
|
|
- Better handling of `json` and `rson` data
|
|
- Better ways to work with other programs
|
|
|
|
## Why this project?
|
|
|
|
- Something simple to work with [`EWW`](https://github.com/elkowar/eww) widgets
|
|
- I'm learning Rust |