1{ stdenv
2, lib
3, fetchFromGitea
4, pkg-config
5, meson
6, ninja
7, pixman
8, tllist
9, wayland
10, wayland-scanner
11, wayland-protocols
12, enablePNG ? true
13, enableJPEG ? true
14, enableWebp ? true
15# Optional dependencies
16, libpng
17, libjpeg
18, libwebp
19}:
20
21stdenv.mkDerivation rec {
22 pname = "wbg";
23 version = "1.1.0";
24
25 src = fetchFromGitea {
26 domain = "codeberg.org";
27 owner = "dnkl";
28 repo = "wbg";
29 rev = version;
30 sha256 = "sha256-JJIIqSc0qHgjtpGKai8p6vihXg16unsO7vW91pioAmc=";
31 };
32
33 nativeBuildInputs = [
34 pkg-config
35 meson
36 ninja
37 wayland-scanner
38 ];
39
40 buildInputs = [
41 pixman
42 tllist
43 wayland
44 wayland-protocols
45 ] ++ lib.optional enablePNG libpng
46 ++ lib.optional enableJPEG libjpeg
47 ++ lib.optional enableWebp libwebp;
48
49 mesonBuildType = "release";
50
51 mesonFlags = [
52 (lib.mesonEnable "png" enablePNG)
53 (lib.mesonEnable "jpeg" enableJPEG)
54 (lib.mesonEnable "webp" enableWebp)
55 ];
56
57 meta = with lib; {
58 description = "Wallpaper application for Wayland compositors";
59 homepage = "https://codeberg.org/dnkl/wbg";
60 changelog = "https://codeberg.org/dnkl/wbg/releases/tag/${version}";
61 license = licenses.isc;
62 maintainers = with maintainers; [ AndersonTorres ];
63 platforms = with platforms; linux;
64 };
65}