biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / applications / window-managers / wayfire / default.nix
blob39dbac8b5289b045cb5eb5a6507761e3745542f4
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , nixosTests
5 , cmake
6 , meson
7 , ninja
8 , pkg-config
9 , wf-config
10 , cairo
11 , doctest
12 , libGL
13 , libdrm
14 , libexecinfo
15 , libevdev
16 , libinput
17 , libjpeg
18 , libxkbcommon
19 , wayland
20 , wayland-protocols
21 , wayland-scanner
22 , wlroots
23 , pango
24 , nlohmann_json
25 , xorg
28 stdenv.mkDerivation (finalAttrs: {
29   pname = "wayfire";
30   version = "0.9.0";
32   src = fetchFromGitHub {
33     owner = "WayfireWM";
34     repo = "wayfire";
35     rev = "v${finalAttrs.version}";
36     fetchSubmodules = true;
37     hash = "sha256-xQZ4/UE66IISZQLl702OQXAAr8XmEsA4hJwB7aXua+E=";
38   };
40   nativeBuildInputs = [
41     meson
42     ninja
43     pkg-config
44     wayland-scanner
45   ];
47   buildInputs = [
48     libGL
49     libdrm
50     libexecinfo
51     libevdev
52     libinput
53     libjpeg
54     libxkbcommon
55     wayland-protocols
56     xorg.xcbutilwm
57     nlohmann_json
58   ];
60   propagatedBuildInputs = [
61     wf-config
62     wlroots
63     wayland
64     cairo
65     pango
66   ];
68   nativeCheckInputs = [
69     cmake
70     doctest
71   ];
73   # CMake is just used for finding doctest.
74   dontUseCmakeConfigure = true;
76   doCheck = true;
78   mesonFlags = [
79     "--sysconfdir /etc"
80     "-Duse_system_wlroots=enabled"
81     "-Duse_system_wfconfig=enabled"
82     (lib.mesonEnable "wf-touch:tests" (stdenv.buildPlatform.canExecute stdenv.hostPlatform))
83   ];
85   passthru.providedSessions = [ "wayfire" ];
87   passthru.tests.mate = nixosTests.mate-wayland;
89   meta = {
90     homepage = "https://wayfire.org/";
91     description = "3D Wayland compositor";
92     license = lib.licenses.mit;
93     maintainers = with lib.maintainers; [ wucke13 rewine ];
94     platforms = lib.platforms.unix;
95     mainProgram = "wayfire";
96   };