1{
2 lib,
3 fetchFromGitHub,
4 fetchpatch2,
5 freetype,
6 gitUpdater,
7 libglvnd,
8 libxkbcommon,
9 meson,
10 ninja,
11 pkg-config,
12 stdenv,
13 wayland,
14 wayland-protocols,
15 wayland-scanner,
16}:
17
18stdenv.mkDerivation (finalAttrs: {
19 pname = "sov";
20 version = "0.94";
21
22 src = fetchFromGitHub {
23 owner = "milgra";
24 repo = "sov";
25 rev = finalAttrs.version;
26 hash = "sha256-JgLah21ye3G9jE3UTZu8r+nanwBDIQXmqv9iP1C+aUw=";
27 };
28
29 patches = [
30 # mark wayland-scanner as build-time dependency
31 # https://github.com/milgra/sov/pull/45
32 (fetchpatch2 {
33 url = "https://github.com/milgra/sov/commit/8677dcfc47e440157388a8f15bdda9419d84db04.patch";
34 hash = "sha256-P1k1zosHcVO7hyhD1JWbj07h7pQ7ybgDHfoufBinEys=";
35 })
36 ];
37
38 depsBuildBuild = [ pkg-config ];
39
40 nativeBuildInputs = [
41 meson
42 ninja
43 pkg-config
44 wayland-scanner
45 ];
46
47 buildInputs = [
48 freetype
49 libglvnd
50 libxkbcommon
51 wayland
52 wayland-protocols
53 ];
54
55 strictDeps = true;
56
57 passthru.updateScript = gitUpdater { };
58
59 meta = {
60 homepage = "https://github.com/milgra/sov";
61 description = "Workspace overview app for sway";
62 license = lib.licenses.gpl3Only;
63 mainProgram = "sov";
64 maintainers = with lib.maintainers; [ ];
65 inherit (wayland.meta) platforms;
66 # sys/timerfd.h header inexistent
67 broken = stdenv.hostPlatform.isDarwin;
68 };
69})