ttaenc: init at 3.4.1 (#238757)
[NixPkgs.git] / pkgs / servers / x11 / xorg / xwayland.nix
blobeb46bb349a43357e24119306d41312427335a1c7
2   egl-wayland,
3   bash,
4   libepoxy,
5   fetchurl,
6   fontutil,
7   lib,
8   libdecor,
9   libei,
10   libGL,
11   libGLU,
12   libX11,
13   libXau,
14   libXaw,
15   libXdmcp,
16   libXext,
17   libXfixes,
18   libXfont2,
19   libXmu,
20   libXpm,
21   libXrender,
22   libXres,
23   libXt,
24   libdrm,
25   libtirpc,
26   withLibunwind ? true,
27   libunwind,
28   libxcb,
29   libxkbfile,
30   libxshmfence,
31   libxcvt,
32   mesa,
33   meson,
34   ninja,
35   openssl,
36   pkg-config,
37   pixman,
38   stdenv,
39   systemd,
40   wayland,
41   wayland-protocols,
42   wayland-scanner,
43   xkbcomp,
44   xkeyboard_config,
45   xorgproto,
46   xtrans,
47   zlib,
48   defaultFontPath ? "",
49   gitUpdater,
52 stdenv.mkDerivation rec {
53   pname = "xwayland";
54   version = "24.1.4";
56   src = fetchurl {
57     url = "mirror://xorg/individual/xserver/${pname}-${version}.tar.xz";
58     hash = "sha256-2Wp426uBn1V1AXNERESZW1Ax69zBW3ev672NvAKvNPQ=";
59   };
61   postPatch = ''
62     substituteInPlace os/utils.c \
63       --replace-fail '/bin/sh' '${lib.getExe' bash "sh"}'
64   '';
66   depsBuildBuild = [
67     pkg-config
68   ];
69   nativeBuildInputs = [
70     pkg-config
71     meson
72     ninja
73     wayland-scanner
74   ];
75   buildInputs =
76     [
77       egl-wayland
78       libdecor
79       libepoxy
80       libei
81       fontutil
82       libGL
83       libGLU
84       libX11
85       libXau
86       libXaw
87       libXdmcp
88       libXext
89       libXfixes
90       libXfont2
91       libXmu
92       libXpm
93       libXrender
94       libXres
95       libXt
96       libdrm
97       libtirpc
98       libxcb
99       libxkbfile
100       libxshmfence
101       libxcvt
102       mesa
103       openssl
104       pixman
105       systemd
106       wayland
107       wayland-protocols
108       xkbcomp
109       xorgproto
110       xtrans
111       zlib
112     ]
113     ++ lib.optionals withLibunwind [
114       libunwind
115     ];
116   mesonFlags = [
117     (lib.mesonBool "xcsecurity" true)
118     (lib.mesonOption "default_font_path" defaultFontPath)
119     (lib.mesonOption "xkb_bin_dir" "${xkbcomp}/bin")
120     (lib.mesonOption "xkb_dir" "${xkeyboard_config}/etc/X11/xkb")
121     (lib.mesonOption "xkb_output_dir" "${placeholder "out"}/share/X11/xkb/compiled")
122     (lib.mesonBool "libunwind" withLibunwind)
123   ];
125   passthru.updateScript = gitUpdater {
126     # No nicer place to find latest release.
127     url = "https://gitlab.freedesktop.org/xorg/xserver.git";
128     rev-prefix = "xwayland-";
129   };
131   meta = with lib; {
132     description = "X server for interfacing X11 apps with the Wayland protocol";
133     homepage = "https://wayland.freedesktop.org/xserver.html";
134     license = licenses.mit;
135     mainProgram = "Xwayland";
136     maintainers = with maintainers; [
137       emantor
138       k900
139     ];
140     platforms = platforms.linux;
141   };