diff options
Diffstat (limited to 'pkgs/development/libraries/wlroots/default.nix')
-rw-r--r-- | pkgs/development/libraries/wlroots/default.nix | 36 |
1 files changed, 28 insertions, 8 deletions
diff --git a/pkgs/development/libraries/wlroots/default.nix b/pkgs/development/libraries/wlroots/default.nix index 789625f2f9f37..8b4abf7d5d12f 100644 --- a/pkgs/development/libraries/wlroots/default.nix +++ b/pkgs/development/libraries/wlroots/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitLab +, fetchpatch , meson , ninja , pkg-config @@ -20,6 +21,8 @@ , seatd , vulkan-loader , glslang +, libliftoff +, libdisplay-info , nixosTests , enableXWayland ? true @@ -27,7 +30,7 @@ }: let - generic = { version, hash, extraBuildInputs ? [ ], extraNativeBuildInputs ? [ ], extraPatch ? "" }: + generic = { version, hash, extraBuildInputs ? [ ], extraNativeBuildInputs ? [ ], patches ? [ ], postPatch ? "" }: stdenv.mkDerivation (finalAttrs: { pname = "wlroots"; inherit version; @@ -42,7 +45,7 @@ let inherit hash; }; - postPatch = extraPatch; + inherit patches postPatch; # $out for the library and $examples for the example programs (in examples): outputs = [ "out" "examples" ]; @@ -94,7 +97,7 @@ let # Test via TinyWL (the "minimum viable product" Wayland compositor based on wlroots): passthru.tests.tinywl = nixosTests.tinywl; - meta = with lib; { + meta = { description = "A modular Wayland compositor library"; longDescription = '' Pluggable, composable, unopinionated modules for building a Wayland @@ -102,9 +105,9 @@ let ''; inherit (finalAttrs.src.meta) homepage; changelog = "https://gitlab.freedesktop.org/wlroots/wlroots/-/tags/${version}"; - license = licenses.mit; - platforms = platforms.linux; - maintainers = with maintainers; [ primeos synthetica ]; + license = lib.licenses.mit; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ primeos synthetica rewine ]; }; }); @@ -118,11 +121,28 @@ rec { wlroots_0_16 = generic { version = "0.16.2"; hash = "sha256-JeDDYinio14BOl6CbzAPnJDOnrk4vgGNMN++rcy2ItQ="; - extraPatch = '' + postPatch = '' substituteInPlace backend/drm/meson.build \ --replace /usr/share/hwdata/ ${hwdata}/share/hwdata/ ''; }; - wlroots = wlroots_0_16; + wlroots_0_17 = generic { + version = "0.17.0"; + hash = "sha256-VUrnSG4UAAH0cBy15lG0w8RernwegD6lkOdLvWU3a4c="; + extraBuildInputs = [ + hwdata + libliftoff + libdisplay-info + ]; + patches = [ + (fetchpatch { + name = "tinywl-fix-wlroots-dependency-constraint-in-Makefile.patch"; + url = "https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/fe53ec693789afb44c899cad8c2df70c8f9f9023.patch"; + hash = "sha256-wU62hXgmsAyT5j/bWeCFBkvM9cYjUntdCycQt5HAhb8="; + }) + ]; + }; + + wlroots = wlroots_0_17; } |