Update dependencies
Increase minimum supported Rust version to 1.82
Add script to check on msrv including aarch64 and FreeBSD targets
Fix incompatibilities with Rust 1.82, aarch64 and FreeBSD
Add handling for the Linux DMA-BUF Wayland protocol
Refactor Wayland code for image loading and image equivalence
Add Vulkan code using the ash crate dependency targeting Vulkan 1.1
For image DMA-BUF exporting use EXT_image_drm_format_modifier if available,
fall back to linear images otherwise
Add --gpu command line option
Add Vulkan packages as optional dependencies to Arch Linux PKGBUILD
Load and keep around wallpaper images as a reference counted object
usable by multiple outputs and workspaces to reduce memory use
Equality of wallpapers are determined by
equal wallpaper image file and equal output width, height and transform
Equality of wallpaper image files are determined by
equal canonical path and equal modification time
Change wl_shm based wl_buffers to use per-wallpaper raw shm pools
instead of per-output slot pools of the smithay_client_toolkit dependency
This allows freeing memory when a reference counted wallpaper is destroyed
at the expense of having to keep open a file descriptor for every wallpaper
Tries to address the suggestions from issue:
https://github.com/gergo-salyi/multibg-sway/issues/13
Start separating image loading logic from wl_shm buffer handling
Add fast path decoding directly to wl_shm buffers if possible
Add auto-vectorized RGB to BGRA swizzling
Implement unix signal handling using a basic self pipe
Shutdown gracefully on termination signals TERM, INT or HUP
Reserve signals USR1 and USR2 for future use
Implement niri support
Try to autodetect running compositor based on environment variables
XDG_SESSION_DESKTOP, XDG_CURRENT_DESKTOP, SWAYSOCK, NIRI_SOCKET in this order
Add the --compositor command line option
Add niri as optional dependency to the Arch Linux PKGBUILD
Update README and --help to include niri support
Merges the changes from
https://github.com/gergo-salyi/multibg-sway/pull/12
Thanks to the co-author for the contribution
Co-authored-by: Florian Finkernagel <finkernagel@imt.uni-marburg.de>