docs: update README with 'new' features
Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: Ic45f39e98b73a0ec2e2ec8cbdcc2f5d66a6a6964
This commit is contained in:
parent
d402e6e300
commit
55012e16f9
1 changed files with 27 additions and 10 deletions
37
README.md
37
README.md
|
|
@ -1,24 +1,39 @@
|
||||||
# Chroma
|
# Chroma
|
||||||
|
|
||||||
A simple, lightweight and efficientt wallpaper daeemon for Wayland compositors
|
Super-fast, lightweight and efficient wallpaper daemon for Wayland compositors
|
||||||
with multi-monitor & automatic hotplugging support. Born from my woes with
|
with multi-monitor & hotplugging support. Born from my woes with Hyprpaper,
|
||||||
Hyprpaper, swaybg and most ironically SWWW, which turned out to be NOT a
|
swaybg and most ironically _SWWW_ (now called AWWW for some awful reason), which
|
||||||
solution to my Wayland wallpaper woes.
|
turned out to be NOT a solution to my Wayland wallpaper woes. Smaller, faster,
|
||||||
|
cleaner and somehow still more feature-rich...
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
I did not expect to be writing something too feature-rich, but I still ended up
|
Chroma combines simplicity with powerful performance optimizations and
|
||||||
with something relatively convoluted. Chroma (mostly) reliably supports:
|
comprehensive monitor management. Here's what makes Chroma stand out:
|
||||||
|
|
||||||
- **Multi-monitors**: Automatically detects and manages wallpapers for all
|
### Core Functionality
|
||||||
connected displays
|
|
||||||
|
- **Memory-efficient**: Smart caching and resource management
|
||||||
|
- **Optimized rendering**: VBO dirty flagging and reduced GPU overhead
|
||||||
|
- **Multi-monitor support**: Automatically detects and manages wallpapers for
|
||||||
|
all connected displays
|
||||||
|
- **Configurable scaling modes**: Fill, fit, stretch, and center options per
|
||||||
|
monitor
|
||||||
- **Hotplugging**: Dynamically handles monitor connection/disconnection events
|
- **Hotplugging**: Dynamically handles monitor connection/disconnection events
|
||||||
- **Per-output configuration**: Set different wallpapers for each monitor
|
- **Per-output configuration**: Set different wallpapers and settings for each
|
||||||
|
monitor
|
||||||
|
- **Global and per-output settings**: Override defaults for specific monitors
|
||||||
|
- **Performance tuning**: Adjustable downsampling limits and quality
|
||||||
|
thresholds
|
||||||
- **Multiple image formats**: Supports JPEG, PNG, BMP, TGA, PSD, GIF, HDR, PIC,
|
- **Multiple image formats**: Supports JPEG, PNG, BMP, TGA, PSD, GIF, HDR, PIC,
|
||||||
PPM, PGM
|
PPM, PGM
|
||||||
- **EGL/OpenGL rendering**: Hardware-accelerated wallpaper rendering
|
- **EGL/OpenGL rendering**: Hardware-accelerated wallpaper rendering
|
||||||
- **Configuration file support**: Easy setup with INI-style config files
|
- **Configuration file support**: Easy setup with INI-style config files
|
||||||
- **Signal handling**: Graceful shutdown and configuration reload (SIGHUP)
|
- **Signal handling**: Graceful shutdown and configuration reload (SIGHUP)
|
||||||
|
- **Intelligent downsampling**: Automatically reduces large image resolution to
|
||||||
|
save memory (up to 94% memory savings for 8K images)
|
||||||
|
- **Advanced filtering**: Nearest, linear, bilinear, and trilinear filtering
|
||||||
|
options
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
|
|
@ -198,7 +213,7 @@ make analyze # requires cppcheck
|
||||||
|
|
||||||
- C11 standard
|
- C11 standard
|
||||||
- 2-space indentation
|
- 2-space indentation
|
||||||
- No tabs
|
- No tabs (except for the Makefile, obviously)
|
||||||
- Function names: `chroma_function_name`
|
- Function names: `chroma_function_name`
|
||||||
- Constants: `CHROMA_CONSTANT_NAME`
|
- Constants: `CHROMA_CONSTANT_NAME`
|
||||||
|
|
||||||
|
|
@ -209,3 +224,5 @@ make analyze # requires cppcheck
|
||||||
This project is made available under Mozilla Public License (MPL) version 2.0.
|
This project is made available under Mozilla Public License (MPL) version 2.0.
|
||||||
See [LICENSE](LICENSE) for more details on the exact conditions. An online copy
|
See [LICENSE](LICENSE) for more details on the exact conditions. An online copy
|
||||||
is provided [here](https://www.mozilla.org/en-US/MPL/2.0/).
|
is provided [here](https://www.mozilla.org/en-US/MPL/2.0/).
|
||||||
|
|
||||||
|
<!--markdownlint-enable MD059 -->
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue