Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / libraries / wayland / protocols.nix
blob0fadb103ce33d54fd3e5a6e3c7180d0ca7144011
1 { lib, stdenv, fetchurl
2 , pkg-config
3 , meson, ninja, wayland-scanner
4 , python3, wayland
5 }:
7 stdenv.mkDerivation rec {
8   pname = "wayland-protocols";
9   version = "1.32";
11   # https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/48
12   doCheck = stdenv.hostPlatform == stdenv.buildPlatform && stdenv.hostPlatform.linker == "bfd" && wayland.withLibraries;
14   src = fetchurl {
15     url = "https://gitlab.freedesktop.org/wayland/${pname}/-/releases/${version}/downloads/${pname}-${version}.tar.xz";
16     hash = "sha256-dFl5nTQMgpa2le+FfAfd7yTFoJsJq2p097kmQNKxuhE=";
17   };
19   postPatch = lib.optionalString doCheck ''
20     patchShebangs tests/
21   '';
23   depsBuildBuild = [ pkg-config ];
24   nativeBuildInputs = [ meson ninja wayland-scanner ];
25   nativeCheckInputs = [ python3 wayland ];
27   mesonFlags = [ "-Dtests=${lib.boolToString doCheck}" ];
29   meta = {
30     description = "Wayland protocol extensions";
31     longDescription = ''
32       wayland-protocols contains Wayland protocols that add functionality not
33       available in the Wayland core protocol. Such protocols either add
34       completely new functionality, or extend the functionality of some other
35       protocol either in Wayland core, or some other protocol in
36       wayland-protocols.
37     '';
38     homepage    = "https://gitlab.freedesktop.org/wayland/wayland-protocols";
39     license     = lib.licenses.mit; # Expat version
40     platforms   = lib.platforms.all;
41     maintainers = with lib.maintainers; [ primeos ];
42   };
44   passthru.version = version;