Files
nixpkgs/pkgs/servers/x11/xorg/xwayland.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

147 lines
2.6 KiB
Nix

{
dri-pkgconfig-stub,
egl-wayland,
bash,
libepoxy,
fetchurl,
fontutil,
lib,
libdecor,
libgbm,
libei,
libGL,
libGLU,
libX11,
libXau,
libXaw,
libXdmcp,
libXext,
libXfixes,
libXfont2,
libXmu,
libXpm,
libXrender,
libXres,
libXt,
libdrm,
libtirpc,
# Disable withLibunwind as LLVM's libunwind will conflict and does not support the right symbols.
withLibunwind ? !(stdenv.hostPlatform.useLLVM or false),
libunwind,
libxcb,
libxkbfile,
libxshmfence,
libxcvt,
mesa-gl-headers,
meson,
ninja,
openssl,
pkg-config,
pixman,
stdenv,
systemd,
wayland,
wayland-protocols,
wayland-scanner,
xkbcomp,
xkeyboard_config,
xorgproto,
xtrans,
zlib,
defaultFontPath ? "",
gitUpdater,
}:
stdenv.mkDerivation rec {
pname = "xwayland";
version = "24.1.8";
src = fetchurl {
url = "mirror://xorg/individual/xserver/${pname}-${version}.tar.xz";
hash = "sha256-yJCNV8jtnOuCk8Frp61a9SLvrxun5R+eTPPAd00ZmQc=";
};
postPatch = ''
substituteInPlace os/utils.c \
--replace-fail '/bin/sh' '${lib.getExe' bash "sh"}'
'';
depsBuildBuild = [
pkg-config
];
nativeBuildInputs = [
pkg-config
meson
ninja
wayland-scanner
];
buildInputs = [
dri-pkgconfig-stub
egl-wayland
libdecor
libgbm
libepoxy
libei
fontutil
libGL
libGLU
libX11
libXau
libXaw
libXdmcp
libXext
libXfixes
libXfont2
libXmu
libXpm
libXrender
libXres
libXt
libdrm
libtirpc
libxcb
libxkbfile
libxshmfence
libxcvt
mesa-gl-headers
openssl
pixman
systemd
wayland
wayland-protocols
xkbcomp
xorgproto
xtrans
zlib
]
++ lib.optionals withLibunwind [
libunwind
];
mesonFlags = [
(lib.mesonBool "xcsecurity" true)
(lib.mesonOption "default_font_path" defaultFontPath)
(lib.mesonOption "xkb_bin_dir" "${xkbcomp}/bin")
(lib.mesonOption "xkb_dir" "${xkeyboard_config}/etc/X11/xkb")
(lib.mesonOption "xkb_output_dir" "${placeholder "out"}/share/X11/xkb/compiled")
(lib.mesonBool "libunwind" withLibunwind)
];
passthru.updateScript = gitUpdater {
# No nicer place to find latest release.
url = "https://gitlab.freedesktop.org/xorg/xserver.git";
rev-prefix = "xwayland-";
};
meta = with lib; {
description = "X server for interfacing X11 apps with the Wayland protocol";
homepage = "https://wayland.freedesktop.org/xserver.html";
license = licenses.mit;
mainProgram = "Xwayland";
maintainers = with maintainers; [
emantor
k900
];
platforms = platforms.linux;
};
}