Super simple wallpaper application for Wayland compositors implementing the layer-shell protocol
Find a file
2025-01-24 07:02:40 +01:00
3rd-party/nanosvg nanosvg: update to ea6a6aca009422bba0dbad4c80df6e6ba0c82183 2025-01-24 07:02:40 +01:00
external wlr-layer-shell: bump 2021-06-27 10:52:58 +02:00
nanosvg meson/nanosvg: add support for linking against system's nanosvg 2024-07-18 18:21:43 +02:00
.gitignore Initial commit 2020-08-01 15:32:48 +02:00
CHANGELOG.md nanosvg: update to ea6a6aca009422bba0dbad4c80df6e6ba0c82183 2025-01-24 07:02:40 +01:00
generate-version.sh generate-version.sh: fuzzel -> wbg (oops!) 2022-10-24 16:44:08 +02:00
jpg.c use LOG_DBG if the verification of the format failed 2024-06-11 14:21:42 -06:00
jpg.h main: open file once, in main, and log an error when we fail 2020-10-01 20:03:23 +02:00
jxl.c jxl: do alpha pre-multiplication manually 2024-06-15 11:53:41 -06:00
jxl.h jxl: add initial support for JPEG XL using libjxl 2024-06-12 20:13:43 +02:00
LICENSE license: fix year 2020-08-01 15:34:26 +02:00
log.c log: respect the NO_COLOR environment variable 2024-07-18 08:39:53 +02:00
log.h Initial commit 2020-08-01 15:32:48 +02:00
main.c main: exclude svg only code when svg is not enabled 2024-08-02 15:56:58 +02:00
meson.build wbg: use getopt() for option parsing, add help and version options 2024-08-02 15:36:38 +02:00
meson_options.txt meson/nanosvg: add support for linking against system's nanosvg 2024-07-18 18:21:43 +02:00
nanosvg.c meson/nanosvg: add support for linking against system's nanosvg 2024-07-18 18:21:43 +02:00
nanosvgrast.c meson/nanosvg: add support for linking against system's nanosvg 2024-07-18 18:21:43 +02:00
PKGBUILD meson/nanosvg: add support for linking against system's nanosvg 2024-07-18 18:21:43 +02:00
png-wbg.h main: open file once, in main, and log an error when we fail 2020-10-01 20:03:23 +02:00
png.c use LOG_DBG if the verification of the format failed 2024-06-11 14:21:42 -06:00
README.md readme: repology: use four columns 2024-08-20 09:12:18 +02:00
shm.c shm: MFD_NOEXEC_SEAL is not defined by musl libc 2024-04-30 08:47:19 +02:00
shm.h shm: don’t cache buffers 2020-10-06 20:05:44 +02:00
stride.h Initial commit 2020-08-01 15:32:48 +02:00
svg.c svg: honor --stretch option 2024-08-02 15:56:58 +02:00
svg.h svg: honor --stretch option 2024-08-02 15:56:58 +02:00
wbg-features.h wbg: use getopt() for option parsing, add help and version options 2024-08-02 15:36:38 +02:00
webp.c webp: do alpha pre-multiplication 2024-06-14 14:14:34 -06:00
webp.h webp: intial support for WebP images, using libwebp 2022-10-04 22:28:29 -05:00

Wbg

Super simple wallpaper application for Wayland compositors implementing the layer-shell protocol.

Wbg takes a single command line argument: a path to an image file. This image is displayed scaled-to-fit on all monitors.

More display options, and/or the ability to set a per-monitor wallpaper may be added in the future.

Packaging status

Requirements

Runtime

  • pixman
  • wayland (client and cursor libraries)
  • libpng (optional)
  • libjpeg (optional)
  • libwebp (optional)
  • libjxl (optional)
  • libjxl_threads (optional)

Note that if SVG support is disabled at least one of libpng, libjpeg, libwebp and libjxl is required.

libjxl_threads is recommended for better performance decoding JPEG XL images

Compile time

  • Development packages for all the libraries listed under runtime.
  • wayland-protocols
  • tllist

Building

meson --buildtype=release build
ninja -C build
sudo ninja -C build install

By default, PNG, JPEG, JPEG XL and WebP support is auto-detected. You can force disable/enable them with the meson command line options -Dpng=disabled|enabled, -Djpeg=disabled|enabled and -Dwebp=disabled|enabled -Djxl=disabled|enabled. SVG support is enabled by default (as it does not require additional dependencies). You can disable it with the meson command line option -Dsvg=false

Derivative work

License

Wbg is released under the MIT license.

Wbg (optionally) uses nanosvg, released under the Zlib license.